mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-08-27 22:17:03 +00:00
1 line
344 KiB
JavaScript
1 line
344 KiB
JavaScript
var ObjectiveJ={};(function(global,exports){Object.create||(Object.create=function(e){if(arguments.length>1)throw new Error("Object.create implementation only accepts the first parameter.");function t(){}return t.prototype=e,new t}),Object.keys||(Object.keys=function(){var e=Object.prototype.hasOwnProperty,t=!{toString:null}.propertyIsEnumerable("toString"),r=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],n=r.length;return function(s){if("object"!=typeof s&&"function"!=typeof s||null===s)throw new TypeError("Object.keys called on non-object");var i=[];for(var o in s)e.call(s,o)&&i.push(o);if(t)for(var a=0;a<n;a++)e.call(s,r[a])&&i.push(r[a]);return i}}()),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){"use strict";if(null===this)throw new TypeError;var t=new Object(this),r=t.length>>>0;if(0===r)return-1;var n=0;if(arguments.length>1&&((n=Number(arguments[1]))!=n?n=0:0!==n&&n!=1/0&&n!=-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n)))),n>=r)return-1;for(var s=n>=0?n:Math.max(r-Math.abs(n),0);s<r;s++)if(s in t&&t[s]===e)return s;return-1}),Array.prototype.findIndex||Object.defineProperty(Array.prototype,"findIndex",{value:function(e){if(null==this)throw new TypeError('"this" is null or not defined');var t=Object(this),r=t.length>>>0;if("function"!=typeof e)throw new TypeError("predicate must be a function");for(var n=arguments[1],s=0;s<r;){var i=t[s];if(e.call(n,i,s,t))return s;s++}return-1},configurable:!0,writable:!0}),String.prototype.startsWith||(String.prototype.startsWith=function(e,t){return t=t||0,this.substr(t,e.length)===e}),String.prototype.endsWith||(String.prototype.endsWith=function(e,t){var r=this.toString();("number"!=typeof t||!isFinite(t)||Math.floor(t)!==t||t>r.length)&&(t=r.length),t-=e.length;var n=r.indexOf(e,t);return-1!==n&&n===t}),Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{value:function(e,t){if(null==this)throw new TypeError('"this" is null or not defined');var r=Object(this),n=r.length>>>0;if(0===n)return!1;for(var s=0|t,i=Math.max(s>=0?s:n-Math.abs(s),0);i<n;){if(r[i]===e)return!0;i++}return!1}}),Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(e){if(null==this)throw TypeError('"this" is null or not defined');var t=Object(this),r=t.length>>>0;if("function"!=typeof e)throw TypeError("predicate must be a function");for(var n=arguments[1],s=0;s<r;){var i=t[s];if(e.call(n,i,s,t))return i;s++}return undefined},configurable:!0,writable:!0}),this.JSON||(JSON={}),function(){function f(e){return e<10?"0"+e:e}"function"!=typeof Date.prototype.toJSON&&(Date.prototype.toJSON=function(e){return this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z"},String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(e){return this.valueOf()});var cx=new RegExp("[\\u0000\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]","g"),escapable=new RegExp('[\\\\\\"\\x00-\\x1f\\x7f-\\x9f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]',"g"),gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(e){return escapable.lastIndex=0,escapable.test(e)?'"'+e.replace(escapable,function(e){var t=meta[e];return"string"==typeof t?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+e+'"'}function str(e,t){var r,n,s,i,o,a=gap,c=t[e];switch(c&&"object"==typeof c&&"function"==typeof c.toJSON&&(c=c.toJSON(e)),"function"==typeof rep&&(c=rep.call(t,e,c)),typeof c){case"string":return quote(c);case"number":return isFinite(c)?String(c):"null";case"boolean":case"null":return String(c);case"object":if(!c)return"null";if(gap+=indent,o=[],"[object Array]"===Object.prototype.toString.apply(c)){for(i=c.length,r=0;r<i;r+=1)o[r]=str(r,c)||"null";return s=0===o.length?"[]":gap?"[\n"+gap+o.join(",\n"+gap)+"\n"+a+"]":"["+o.join(",")+"]",gap=a,s}if(rep&&"object"==typeof rep)for(i=rep.length,r=0;r<i;r+=1)"string"==typeof(n=rep[r])&&(s=str(n,c))&&o.push(quote(n)+(gap?": ":":")+s);else for(n in c)Object.hasOwnProperty.call(c,n)&&(s=str(n,c))&&o.push(quote(n)+(gap?": ":":")+s);return s=0===o.length?"{}":gap?"{\n"+gap+o.join(",\n"+gap)+"\n"+a+"}":"{"+o.join(",")+"}",gap=a,s}}"function"!=typeof JSON.stringify&&(JSON.stringify=function(e,t,r){var n;if(gap="",indent="","number"==typeof r)for(n=0;n<r;n+=1)indent+=" ";else"string"==typeof r&&(indent=r);if(rep=t,t&&"function"!=typeof t&&("object"!=typeof t||"number"!=typeof t.length))throw new Error("JSON.stringify");return str("",{"":e})}),"function"!=typeof JSON.parse&&(JSON.parse=function(text,reviver){var j;function walk(e,t){var r,n,s=e[t];if(s&&"object"==typeof s)for(r in s)Object.hasOwnProperty.call(s,r)&&((n=walk(s,r))!==undefined?s[r]=n:delete s[r]);return reviver.call(e,t,s)}if(cx.lastIndex=0,cx.test(text)&&(text=text.replace(cx,function(e){return"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})),/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return j=eval("("+text+")"),"function"==typeof reviver?walk({"":j},""):j;throw new SyntaxError("JSON.parse")})}();var formatRegex=/([^%]+|%(?:\d+\$)?[\+\-\ \#0]*[0-9\*]*(.[0-9\*]+)?[hlL]?[cbBdieEfgGosuxXpn%@])/g,tagRegex=/(%)(?:(\d+)\$)?([\+\-\ \#0]*)([0-9\*]*)((?:.[0-9\*]+)?)([hlL]?)([cbBdieEfgGosuxXpn%@])/;function justify(e,t,r,n,s,i,o){var a=e.length+t.length+r.length+n.length;return i?e+t+r+n+pad(s-a," "):o?e+t+pad(s-a,"0")+r+n:pad(s-a," ")+e+t+r+n}function pad(e,t){return Array(MAX(0,e)+1).join(t)}exports.sprintf=function(e){for(var t=(e=arguments[0]).match(formatRegex),r=0,n="",s=1,i=0;i<t.length;i++){var o=t[i];if(e.substring(r,r+o.length)!==o)return n;if(r+=o.length,"%"!==o.charAt(0))n+=o;else if("%%"===o)n+="%";else{var a=o.match(tagRegex);if(8!==a.length||a[0]!==o)return n;a[1];var c=a[2],l=a[3],p=a[4],u=a[5],h=(a[6],a[7]);c=c===undefined||null===c||""===c?s++:Number(c);var d=null;"*"==p?d=arguments[c]:""!==p&&(d=Number(p));var f=null;".*"===u?f=arguments[c]:""!==u&&(f=Number(u.substring(1)));var m=l.indexOf("-")>=0,g=l.indexOf("0")>=0,_="";if(/[bBdiufeExXo]/.test(h)){var y=Number(arguments[c]),v="";if(y<0?v="-":l.indexOf("+")>=0?v="+":l.indexOf(" ")>=0&&(v=" "),"d"===h||"i"===h||"u"===h)_=justify(v,"",S=String(Math.abs(Math.floor(y))),"",d,m,g);if("f"==h){var S=String(null!==f?Math.abs(y).toFixed(f):Math.abs(y)),b=l.indexOf("#")>=0&&S.indexOf(".")<0?".":"";_=justify(v,"",S,b,d,m,g)}if("e"===h||"E"===h){S=String(Math.abs(y).toExponential(null!==f?f:21)),b=l.indexOf("#")>=0&&S.indexOf(".")<0?".":"";_=justify(v,"",S,b,d,m,g)}if("x"==h||"X"==h){S=String(Math.abs(y).toString(16));_=justify(v,l.indexOf("#")>=0&&0!=y?"0x":"",S,"",d,m,g)}if("b"==h||"B"==h){S=String(Math.abs(y).toString(2));_=justify(v,l.indexOf("#")>=0&&0!=y?"0b":"",S,"",d,m,g)}if("o"==h){S=String(Math.abs(y).toString(8));_=justify(v,l.indexOf("#")>=0&&0!=y?"0":"",S,"",d,m,g)}_=/[A-Z]/.test(h)?_.toUpperCase():_.toLowerCase()}else{_="";"%"===h?_="%":"c"===h?_=String(arguments[c]).charAt(0):"s"===h||"@"===h?_=String(arguments[c]):"p"!==h&&"n"!==h||(_=""),_=justify("","",_,"",d,m,!1)}n+=_}}return n},CPLogDisable=!1;for(var CPLogDefaultTitle="Cappuccino",CPLogLevels=["fatal","error","warn","info","debug","trace"],CPLogDefaultLevel=CPLogLevels[3],_CPLogLevelsInverted={},i=0;i<CPLogLevels.length;i++)_CPLogLevelsInverted[CPLogLevels[i]]=i;var _CPLogRegistrations={};function _CPLogDispatch(e,t,r){r==undefined&&(r=CPLogDefaultTitle),t==undefined&&(t=CPLogDefaultLevel);var n="string"==typeof e[0]&&e.length>1?exports.sprintf.apply(null,e):String(e[0]);if(_CPLogRegistrations[t])for(var s=0;s<_CPLogRegistrations[t].length;s++){var i=_CPLogRegistrations[t][s];i[0](n,t,r,i[1])}}CPLogRegister=function(e,t,r){CPLogRegisterRange(e,CPLogLevels[0],t||CPLogLevels[CPLogLevels.length-1],r)},CPLogRegisterRange=function(e,t,r,n){var s=_CPLogLevelsInverted[t],i=_CPLogLevelsInverted[r];if(s!==undefined&&i!==undefined&&s<=i)for(var o=s;o<=i;o++)CPLogRegisterSingle(e,CPLogLevels[o],n)},CPLogRegisterSingle=function(e,t,r){_CPLogRegistrations[t]||(_CPLogRegistrations[t]=[]);for(var n=0;n<_CPLogRegistrations[t].length;n++)if(_CPLogRegistrations[t][n][0]===e)return void(_CPLogRegistrations[t][n][1]=r);_CPLogRegistrations[t].push([e,r])},CPLogUnregister=function(e){for(var t in _CPLogRegistrations)for(var r=0;r<_CPLogRegistrations[t].length;r++)_CPLogRegistrations[t][r][0]===e&&_CPLogRegistrations[t].splice(r--,1)},CPLog=function(){_CPLogDispatch(arguments)};for(var i=0;i<CPLogLevels.length;i++)CPLog[CPLogLevels[i]]=function(e){return function(){_CPLogDispatch(arguments,e)}}(CPLogLevels[i]);var _CPFormatLogMessage=function(e,t,r){var n,s=new Date;return null===t?t="":(t=t||"info",t="["+CPLogColorize(t,t)+"]"),(r=r||"")&&t&&(r+=" "),(n=r+t)&&(n+=": "),"function"==typeof exports.sprintf?exports.sprintf("%4d-%02d-%02d %02d:%02d:%02d.%03d %s%s",s.getFullYear(),s.getMonth()+1,s.getDate(),s.getHours(),s.getMinutes(),s.getSeconds(),s.getMilliseconds(),n,e):s+" "+n+": "+e};CPLogConsole=function(e,t,r,n){if("undefined"!=typeof console){var s=(n||_CPFormatLogMessage)(e,t,r),i={fatal:"error",error:"error",warn:"warn",info:"info",debug:"debug",trace:"debug"}[t];i&&console[i]?console[i](s):console.log&&console.log(s)}},CPLogColorize=function(e,t){return e},CPLogAlert=function(e,t,r,n){if("undefined"!=typeof alert&&!CPLogDisable){var s=(n||_CPFormatLogMessage)(e,t,r);CPLogDisable=!confirm(s+"\n\n(Click cancel to stop log alerts)")}};var CPLogWindow=null;CPLogPopup=function(e,t,r,n){try{if(CPLogDisable||window.open==undefined)return;if(!CPLogWindow||!CPLogWindow.document){if(!(CPLogWindow=window.open("","_blank","width=600,height=400,status=no,resizable=yes,scrollbars=yes")))return void(CPLogDisable=!confirm(e+"\n\n(Disable pop-up blocking for CPLog window; Click cancel to stop log alerts)"));_CPLogInitPopup(CPLogWindow)}var s=CPLogWindow.document.createElement("div");s.setAttribute("class",t||"fatal");var i=(n||_CPFormatLogMessage)(e,n?t:null,r);s.appendChild(CPLogWindow.document.createTextNode(i)),CPLogWindow.log.appendChild(s),CPLogWindow.focusEnabled.checked&&CPLogWindow.focus(),CPLogWindow.blockEnabled.checked&&(CPLogWindow.blockEnabled.checked=CPLogWindow.confirm(i+"\nContinue blocking?")),CPLogWindow.scrollEnabled.checked&&CPLogWindow.scrollToBottom()}catch(e){}};var CPLogPopupStyle='<style type="text/css" media="screen"> body{font:10px Monaco,Courier,"Courier New",monospace,mono;padding-top:15px;} div > .fatal,div > .error,div > .warn,div > .info,div > .debug,div > .trace{display:none;overflow:hidden;white-space:pre;padding:0px 5px 0px 5px;margin-top:2px;-moz-border-radius:5px;-webkit-border-radius:5px;} div[wrap="yes"] > div{white-space:normal;} .fatal{background-color:#ffb2b3;} .error{background-color:#ffe2b2;} .warn{background-color:#fdffb2;} .info{background-color:#e4ffb2;} .debug{background-color:#a0e5a0;} .trace{background-color:#99b9ff;} .enfatal .fatal,.enerror .error,.enwarn .warn,.eninfo .info,.endebug .debug,.entrace .trace{display:block;} div#header{background-color:rgba(240,240,240,0.82);position:fixed;top:0px;left:0px;width:100%;border-bottom:1px solid rgba(0,0,0,0.33);text-align:center;} ul#enablers{display:inline-block;margin:1px 15px 0 15px;padding:2px 0 2px 0;} ul#enablers li{display:inline;padding:0px 5px 0px 5px;margin-left:4px;-moz-border-radius:5px;-webkit-border-radius:5px;} [enabled="no"]{opacity:0.25;} ul#options{display:inline-block;margin:0 15px 0px 15px;padding:0 0px;} ul#options li{margin:0 0 0 0;padding:0 0 0 0;display:inline;} </style>',undefined;function _CPLogInitPopup(e){var t=e.document;t.writeln("<html><head><title></title>"+CPLogPopupStyle+"</head><body></body></html>"),t.title=CPLogDefaultTitle+" Run Log";t.getElementsByTagName("head")[0];var r=t.getElementsByTagName("body")[0],n=window.location.protocol+"//"+window.location.host+window.location.pathname;n=n.substring(0,n.lastIndexOf("/")+1);var s,i=t.createElement("div");i.setAttribute("id","header"),r.appendChild(i),(s=t.createElement("ul")).setAttribute("id","enablers"),i.appendChild(s);for(var a=0;a<CPLogLevels.length;a++){(l=t.createElement("li")).setAttribute("id","en"+CPLogLevels[a]),l.setAttribute("class",CPLogLevels[a]),l.setAttribute("onclick","toggle(this);"),l.setAttribute("enabled","yes"),l.appendChild(t.createTextNode(CPLogLevels[a])),s.appendChild(l)}(s=t.createElement("ul")).setAttribute("id","options"),i.appendChild(s);var c={focus:["Focus",!1],block:["Block",!1],wrap:["Wrap",!1],scroll:["Scroll",!0],close:["Close",!0]};for(o in c){var l=t.createElement("li");s.appendChild(l),e[o+"Enabled"]=t.createElement("input"),e[o+"Enabled"].setAttribute("id",o),e[o+"Enabled"].setAttribute("type","checkbox"),c[o][1]&&e[o+"Enabled"].setAttribute("checked","checked"),l.appendChild(e[o+"Enabled"]);var p=t.createElement("label");p.setAttribute("for",o),p.appendChild(t.createTextNode(c[o][0])),l.appendChild(p)}e.log=t.createElement("div"),e.log.setAttribute("class","enerror endebug enwarn eninfo enfatal entrace"),r.appendChild(e.log),e.toggle=function(t){var r="yes"==t.getAttribute("enabled")?"no":"yes";t.setAttribute("enabled",r),"yes"==r?e.log.className+=" "+t.id:e.log.className=e.log.className.replace(new RegExp("[\\s]*"+t.id,"g"),"")},e.scrollToBottom=function(){e.scrollTo(0,r.offsetHeight)},e.wrapEnabled.addEventListener("click",function(){e.log.setAttribute("wrap",e.wrapEnabled.checked?"yes":"no")},!1),e.addEventListener("keydown",function(t){if(75==(t=t||e.event).keyCode&&(t.ctrlKey||t.metaKey)){for(;e.log.firstChild;)e.log.removeChild(e.log.firstChild);t.preventDefault()}},"false"),window.addEventListener("unload",function(){e&&e.closeEnabled&&e.closeEnabled.checked&&(CPLogDisable=!0,e.close())},!1),e.addEventListener("unload",function(){CPLogDisable||(CPLogDisable=!confirm("Click cancel to stop logging"))},!1)}function EventDispatcher(e){this._eventListenersForEventNames={},this._owner=e}CPLogDefault="object"==typeof window&&window.console?CPLogConsole:CPLogPopup,"undefined"!=typeof window&&(window.setNativeTimeout=window.setTimeout||setTimeout,window.clearNativeTimeout=window.clearTimeout||clearTimeout,window.setNativeInterval=window.setInterval||setInterval,window.clearNativeInterval=window.clearInterval||clearInterval),NO=!1,YES=!0,nil=null,Nil=null,NULL=null,ABS=Math.abs,ASIN=Math.asin,ACOS=Math.acos,ATAN=Math.atan,ATAN2=Math.atan2,SIN=Math.sin,COS=Math.cos,TAN=Math.tan,EXP=Math.exp,POW=Math.pow,CEIL=Math.ceil,FLOOR=Math.floor,ROUND=Math.round,MIN=Math.min,MAX=Math.max,RAND=Math.random,SQRT=Math.sqrt,E=Math.E,LN2=Math.LN2,LN10=Math.LN10,LOG=Math.log,LOG2E=Math.LOG2E,LOG10E=Math.LOG10E,PI=Math.PI,PI2=2*Math.PI,PI_2=Math.PI/2,SQRT1_2=Math.SQRT1_2,SQRT2=Math.SQRT2,EventDispatcher.prototype.addEventListener=function(e,t){var r=this._eventListenersForEventNames;if(hasOwnProperty.call(r,e))n=r[e];else{var n=[];r[e]=n}for(var s=n.length;s--;)if(n[s]===t)return;n.push(t)},EventDispatcher.prototype.removeEventListener=function(e,t){var r=this._eventListenersForEventNames;if(hasOwnProperty.call(r,e))for(var n=r[e],s=n.length;s--;)if(n[s]===t)return n.splice(s,1)},EventDispatcher.prototype.dispatchEvent=function(e){var t=e.type,r=this._eventListenersForEventNames;if(hasOwnProperty.call(r,t))for(var n=this._eventListenersForEventNames[t],s=0,i=n.length;s<i;++s)n[s](e);var o=(this._owner||this)["on"+t];o&&o(e)};var asynchronousTimeoutCount=0,asynchronousTimeoutId=null,asynchronousFunctionQueue=[];function Asynchronous(e){var t=asynchronousTimeoutCount;return null===asynchronousTimeoutId&&window.setNativeTimeout(function(){var e=asynchronousFunctionQueue,t=0,r=asynchronousFunctionQueue.length;for(++asynchronousTimeoutCount,asynchronousTimeoutId=null,asynchronousFunctionQueue=[];t<r;++t)e[t]()},0),function(){var r=arguments;asynchronousTimeoutCount>t?e.apply(this,r):asynchronousFunctionQueue.push(function(){e.apply(this,r)})}}var NativeRequest=null;if(window.XMLHttpRequest)NativeRequest=window.XMLHttpRequest;else if(window.ActiveXObject!==undefined)for(var MSXML_XMLHTTP_OBJECTS=["Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP.6.0"],index=MSXML_XMLHTTP_OBJECTS.length;index--;)try{var MSXML_XMLHTTP=MSXML_XMLHTTP_OBJECTS[index];new ActiveXObject(MSXML_XMLHTTP),NativeRequest=function(){return new ActiveXObject(MSXML_XMLHTTP)};break}catch(e){}function dispatchTimeoutHTTPRequestEvents(e){e._eventDispatcher.dispatchEvent({type:"timeout",request:e})}function determineAndDispatchHTTPRequestEvents(e){var t=e._eventDispatcher,r=["uninitialized","loading","loaded","interactive","complete"];if(t.dispatchEvent({type:"readystatechange",request:e}),"complete"===r[e.readyState()]){var n="HTTP"+e.status();t.dispatchEvent({type:n,request:e});var s=e.success()?"success":"failure";t.dispatchEvent({type:s,request:e}),t.dispatchEvent({type:r[e.readyState()],request:e})}else t.dispatchEvent({type:r[e.readyState()],request:e})}function FileRequest(e,t,r,n){var s=new CFHTTPRequest;"plist"===e.pathExtension()&&s.overrideMimeType("text/xml");var i=0,o=null;function a(e){n(e.loaded-i),i=e.loaded}function c(e){n&&null===o&&n(e.request.responseText().length),t(e)}if(exports.asyncLoader?(s.onsuccess=Asynchronous(c),s.onfailure=Asynchronous(r)):(s.onsuccess=c,s.onfailure=r),n){var l=!0;if(document.all&&(l=!!window.atob),l)try{o=exports.asyncLoader?Asynchronous(a):a,s._nativeRequest.onprogress=o}catch(e){o=null}}s.open("GET",e.absoluteString(),exports.asyncLoader),s.send("")}CFHTTPRequest=function(){this._isOpen=!1,this._requestHeaders={},this._mimeType=null,this._eventDispatcher=new EventDispatcher(this),this._nativeRequest=new NativeRequest,this._withCredentials=!1,this._timeout=6e4;var e=this;this._stateChangeHandler=function(){determineAndDispatchHTTPRequestEvents(e)},this._timeoutHandler=function(){dispatchTimeoutHTTPRequestEvents(e)},this._nativeRequest.onreadystatechange=this._stateChangeHandler,this._nativeRequest.ontimeout=this._timeoutHandler,CFHTTPRequest.AuthenticationDelegate!==nil&&this._eventDispatcher.addEventListener("HTTP403",function(){CFHTTPRequest.AuthenticationDelegate(e)})},CFHTTPRequest.UninitializedState=0,CFHTTPRequest.LoadingState=1,CFHTTPRequest.LoadedState=2,CFHTTPRequest.InteractiveState=3,CFHTTPRequest.CompleteState=4,CFHTTPRequest.AuthenticationDelegate=nil,CFHTTPRequest.prototype.status=function(){try{return this._nativeRequest.status||0}catch(e){return 0}},CFHTTPRequest.prototype.statusText=function(){try{return this._nativeRequest.statusText||""}catch(e){return""}},CFHTTPRequest.prototype.readyState=function(){return this._nativeRequest.readyState},CFHTTPRequest.prototype.success=function(){var e=this.status();return e>=200&&e<300?YES:0===e&&this.responseText()&&this.responseText().length},CFHTTPRequest.prototype.responseXML=function(){var e=this._nativeRequest.responseXML;return e&&NativeRequest===window.XMLHttpRequest&&e.documentRoot?e:parseXML(this.responseText())},CFHTTPRequest.prototype.responsePropertyList=function(){var e=this.responseText();return CFPropertyList.sniffedFormatOfString(e)===CFPropertyList.FormatXML_v1_0?CFPropertyList.propertyListFromXML(this.responseXML()):CFPropertyList.propertyListFromString(e)},CFHTTPRequest.prototype.responseText=function(){return this._nativeRequest.responseText},CFHTTPRequest.prototype.setRequestHeader=function(e,t){this._requestHeaders[e]=t},CFHTTPRequest.prototype.getResponseHeader=function(e){return this._nativeRequest.getResponseHeader(e)},CFHTTPRequest.prototype.setTimeout=function(e){this._timeout=e,this._isOpen&&(this._nativeRequest.timeout=e)},CFHTTPRequest.prototype.getTimeout=function(e){return this._timeout},CFHTTPRequest.prototype.getAllResponseHeaders=function(){return this._nativeRequest.getAllResponseHeaders()},CFHTTPRequest.prototype.overrideMimeType=function(e){this._mimeType=e},CFHTTPRequest.prototype.open=function(e,t,r,n,s){return this._isOpen=!0,this._URL=t,this._async=r,this._method=e,this._user=n,this._password=s,requestReturnValue=this._nativeRequest.open(e,t,r,n,s),this._async&&(this._nativeRequest.withCredentials=this._withCredentials,this._nativeRequest.timeout=this._timeout),requestReturnValue},CFHTTPRequest.prototype.send=function(e){for(var t in this._isOpen||(delete this._nativeRequest.onreadystatechange,delete this._nativeRequest.ontimeout,this._nativeRequest.open(this._method,this._URL,this._async,this._user,this._password),this._nativeRequest.ontimeout=this._timeoutHandler,this._nativeRequest.onreadystatechange=this._stateChangeHandler),this._requestHeaders)this._requestHeaders.hasOwnProperty(t)&&this._nativeRequest.setRequestHeader(t,this._requestHeaders[t]);this._mimeType&&"overrideMimeType"in this._nativeRequest&&this._nativeRequest.overrideMimeType(this._mimeType),this._isOpen=!1;try{return this._nativeRequest.send(e)}catch(e){this._eventDispatcher.dispatchEvent({type:"failure",request:this})}},CFHTTPRequest.prototype.abort=function(){return this._isOpen=!1,this._nativeRequest.abort()},CFHTTPRequest.prototype.addEventListener=function(e,t){this._eventDispatcher.addEventListener(e,t)},CFHTTPRequest.prototype.removeEventListener=function(e,t){this._eventDispatcher.removeEventListener(e,t)},CFHTTPRequest.prototype.setWithCredentials=function(e){this._withCredentials=e,this._isOpen&&this._async&&(this._nativeRequest.withCredentials=e)},CFHTTPRequest.prototype.withCredentials=function(){return this._withCredentials},CFHTTPRequest.prototype.isTimeoutRequest=function(){return!(this.success()||this._nativeRequest.response||this._nativeRequest.responseText||this._nativeRequest.responseType||this._nativeRequest.responseURL||this._nativeRequest.responseXML)},exports.asyncLoader=YES,exports.Asynchronous=Asynchronous,exports.determineAndDispatchHTTPRequestEvents=determineAndDispatchHTTPRequestEvents;var OBJECT_COUNT=0;function serializePropertyList(e,t){var r=typeof e,n=e.valueOf(),s=typeof n;return r!==s&&(r=s,e=n),e===YES||e===NO?r="boolean":"number"===r?r=FLOOR(e)===e&&-1==(""+e).indexOf("e")?"integer":"real":"string"!==r&&(r=e.slice?"array":"dictionary"),t[r](e,t)}objj_generateObjectUID=function(){return OBJECT_COUNT++},CFPropertyList=function(){this._UID=objj_generateObjectUID()},CFPropertyList.DTDRE=/^\s*(?:<\?\s*xml\s+version\s*=\s*\"1.0\"[^>]*\?>\s*)?(?:<\!DOCTYPE[^>]*>\s*)?/i,CFPropertyList.XMLRE=/^\s*(?:<\?\s*xml\s+version\s*=\s*\"1.0\"[^>]*\?>\s*)?(?:<\!DOCTYPE[^>]*>\s*)?<\s*plist[^>]*\>/i,CFPropertyList.FormatXMLDTD='<?xml version="1.0" encoding="UTF-8"?>\n<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">',CFPropertyList.Format280NorthMagicNumber="280NPLIST",CFPropertyList.FormatOpenStep=1,CFPropertyList.FormatXML_v1_0=100,CFPropertyList.FormatBinary_v1_0=200,CFPropertyList.Format280North_v1_0=-1e3,CFPropertyList.sniffedFormatOfString=function(e){return e.match(CFPropertyList.XMLRE)?CFPropertyList.FormatXML_v1_0:e.substr(0,CFPropertyList.Format280NorthMagicNumber.length)===CFPropertyList.Format280NorthMagicNumber?CFPropertyList.Format280North_v1_0:NULL},CFPropertyList.dataFromPropertyList=function(e,t){var r=new CFMutableData;return r.setRawString(CFPropertyList.stringFromPropertyList(e,t)),r},CFPropertyList.stringFromPropertyList=function(e,t){t||(t=CFPropertyList.Format280North_v1_0);var r=CFPropertyListSerializers[t];return r.start()+serializePropertyList(e,r)+r.finish()};var CFPropertyListSerializers={};CFPropertyListSerializers[CFPropertyList.FormatXML_v1_0]={start:function(){return CFPropertyList.FormatXMLDTD+'<plist version = "1.0">'},finish:function(){return"</plist>"},string:function(e){return"<string>"+encodeHTMLComponent(e)+"</string>"},boolean:function(e){return e?"<true/>":"<false/>"},integer:function(e){return"<integer>"+e+"</integer>"},real:function(e){return"<real>"+e+"</real>"},array:function(e,t){for(var r=0,n=e.length,s="<array>";r<n;++r)s+=serializePropertyList(e[r],t);return s+"</array>"},dictionary:function(e,t){for(var r=e._keys,n=0,s=r.length,i="<dict>";n<s;++n){var o=r[n];i+="<key>"+o+"</key>",i+=serializePropertyList(e.valueForKey(o),t)}return i+"</dict>"}};var ARRAY_MARKER="A",DICTIONARY_MARKER="D",FLOAT_MARKER="f",INTEGER_MARKER="d",STRING_MARKER="S",TRUE_MARKER="T",FALSE_MARKER="F",KEY_MARKER="K",END_MARKER="E";CFPropertyListSerializers[CFPropertyList.Format280North_v1_0]={start:function(){return CFPropertyList.Format280NorthMagicNumber+";1.0;"},finish:function(){return""},string:function(e){return STRING_MARKER+";"+e.length+";"+e},boolean:function(e){return(e?TRUE_MARKER:FALSE_MARKER)+";"},integer:function(e){var t=""+e;return INTEGER_MARKER+";"+t.length+";"+t},real:function(e){var t=""+e;return FLOAT_MARKER+";"+t.length+";"+t},array:function(e,t){for(var r=0,n=e.length,s=ARRAY_MARKER+";";r<n;++r)s+=serializePropertyList(e[r],t);return s+END_MARKER+";"},dictionary:function(e,t){for(var r=e._keys,n=0,s=r.length,i=DICTIONARY_MARKER+";";n<s;++n){var o=r[n];i+=KEY_MARKER+";"+o.length+";"+o,i+=serializePropertyList(e.valueForKey(o),t)}return i+END_MARKER+";"}};var XML_XML="xml",XML_DOCUMENT="#document",PLIST_PLIST="plist",PLIST_KEY="key",PLIST_DICTIONARY="dict",PLIST_ARRAY="array",PLIST_STRING="string",PLIST_DATE="date",PLIST_BOOLEAN_TRUE="true",PLIST_BOOLEAN_FALSE="false",PLIST_NUMBER_REAL="real",PLIST_NUMBER_INTEGER="integer",PLIST_DATA="data",textContent=function(e){for(var t="",r=0,n=e.length;r<n;++r){var s=e[r];3===s.nodeType||4===s.nodeType?t+=s.nodeValue:8!==s.nodeType&&(t+=textContent(s.childNodes))}return t},_plist_traverseNextNode=function(e,t,r){if((s=(s=e).firstChild)!=NULL&&(8===s.nodeType||3===s.nodeType||7===s.nodeType))for(;(s=s.nextSibling)&&(8===s.nodeType||3===s.nodeType||7===s.nodeType););if(s)return s;if(String(e.nodeName)===PLIST_ARRAY||String(e.nodeName)===PLIST_DICTIONARY)r.pop();else{if(s===t)return NULL;for(s=e;(s=s.nextSibling)&&(8===s.nodeType||3===s.nodeType||7===s.nodeType););if(s)return s}for(s=e;s;){for(var n=s;(n=n.nextSibling)&&(8===n.nodeType||3===n.nodeType||7===n.nodeType););if(n)return n;var s=s.parentNode;if(t&&s===t)return NULL;r.pop()}return NULL};CFPropertyList.propertyListFromData=function(e,t){return CFPropertyList.propertyListFromString(e.rawString(),t)},CFPropertyList.propertyListFromString=function(e,t){return t||(t=CFPropertyList.sniffedFormatOfString(e)),t===CFPropertyList.FormatXML_v1_0?CFPropertyList.propertyListFromXML(e):t===CFPropertyList.Format280North_v1_0?propertyListFrom280NorthString(e):NULL};var ARRAY_MARKER="A",DICTIONARY_MARKER="D",FLOAT_MARKER="f",INTEGER_MARKER="d",STRING_MARKER="S",TRUE_MARKER="T",FALSE_MARKER="F",KEY_MARKER="K",END_MARKER="E";function propertyListFrom280NorthString(e){for(var t=new MarkedStream(e),r=NULL,n="",s=NULL,i=NULL,o=[],a=NULL;r=t.getMarker();)if(r!==END_MARKER){var c=o.length;switch(c&&(a=o[c-1]),r===KEY_MARKER&&(n=t.getString(),r=t.getMarker()),r){case ARRAY_MARKER:s=[],o.push(s);break;case DICTIONARY_MARKER:s=new CFMutableDictionary,o.push(s);break;case FLOAT_MARKER:s=parseFloat(t.getString());break;case INTEGER_MARKER:s=parseInt(t.getString(),10);break;case STRING_MARKER:s=t.getString();break;case TRUE_MARKER:s=YES;break;case FALSE_MARKER:s=NO;break;default:throw new Error("*** "+r+" marker not recognized in Plist.")}i?a&&(a.slice?a.push(s):a.setValueForKey(n,s)):i=s}else o.pop();return i}function encodeHTMLComponent(e){return e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function decodeHTMLComponent(e){return e.replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}function parseXML(e){if(window.DOMParser)return(new window.DOMParser).parseFromString(e,"text/xml")&&(new window.DOMParser).parseFromString(e,"text/xml").documentElement;if(window.ActiveXObject){XMLNode=new ActiveXObject("Microsoft.XMLDOM");var t=e.match(CFPropertyList.DTDRE);return t&&(e=e.substr(t[0].length)),XMLNode.loadXML(e),XMLNode}return NULL}CFPropertyList.propertyListFromXML=function(e){var t=e;for(e.valueOf&&"string"==typeof e.valueOf()&&(t=parseXML(e));t&&(String(t.nodeName)===XML_DOCUMENT||String(t.nodeName)===XML_XML);)if((t=t.firstChild)!=NULL&&(8===t.nodeType||3===t.nodeType||7===t.nodeType))for(;(t=t.nextSibling)&&(8===t.nodeType||3===t.nodeType||7===t.nodeType););if(t&&10===t.nodeType)for(;(t=t.nextSibling)&&(8===t.nodeType||3===t.nodeType||7===t.nodeType););if(!t||String(t.nodeName)!==PLIST_PLIST)return NULL;for(var r="",n=NULL,s=NULL,i=t,o=[],a=NULL;t=_plist_traverseNextNode(t,i,o);){var c=o.length;if(c&&(a=o[c-1]),String(t.nodeName)===PLIST_KEY)for(r=t.textContent||""!==t.textContent&&textContent([t]);(t=t.nextSibling)&&(8===t.nodeType||3===t.nodeType||7===t.nodeType););switch(String(String(t.nodeName))){case PLIST_ARRAY:n=[],o.push(n);break;case PLIST_DICTIONARY:n=new CFMutableDictionary,o.push(n);break;case PLIST_NUMBER_REAL:n=parseFloat(t.textContent||""!==t.textContent&&textContent([t]));break;case PLIST_NUMBER_INTEGER:n=parseInt(t.textContent||""!==t.textContent&&textContent([t]),10);break;case PLIST_STRING:n="base64"===t.getAttribute("type")?t.firstChild?CFData.decodeBase64ToString(t.textContent||""!==t.textContent&&textContent([t])):"":decodeHTMLComponent(t.firstChild?t.textContent||""!==t.textContent&&textContent([t]):"");break;case PLIST_DATE:var l=Date.parseISO8601(t.textContent||""!==t.textContent&&textContent([t]));n=isNaN(l)?new Date:new Date(l);break;case PLIST_BOOLEAN_TRUE:n=YES;break;case PLIST_BOOLEAN_FALSE:n=NO;break;case PLIST_DATA:n=new CFMutableData;var p=t.firstChild?CFData.decodeBase64ToArray(t.textContent||""!==t.textContent&&textContent([t]),YES):[];n.setBytes(p);break;default:throw new Error("*** "+String(t.nodeName)+" tag not recognized in Plist.")}s?a&&(a.slice?a.push(n):a.setValueForKey(r,n)):s=n}return s},kCFPropertyListOpenStepFormat=CFPropertyList.FormatOpenStep,kCFPropertyListXMLFormat_v1_0=CFPropertyList.FormatXML_v1_0,kCFPropertyListBinaryFormat_v1_0=CFPropertyList.FormatBinary_v1_0,kCFPropertyList280NorthFormat_v1_0=CFPropertyList.Format280North_v1_0,CFPropertyListCreate=function(){return new CFPropertyList},CFPropertyListCreateFromXMLData=function(e){return CFPropertyList.propertyListFromData(e,CFPropertyList.FormatXML_v1_0)},CFPropertyListCreateXMLData=function(e){return CFPropertyList.dataFromPropertyList(e,CFPropertyList.FormatXML_v1_0)},CFPropertyListCreateFrom280NorthData=function(e){return CFPropertyList.propertyListFromData(e,CFPropertyList.Format280North_v1_0)},CFPropertyListCreate280NorthData=function(e){return CFPropertyList.dataFromPropertyList(e,CFPropertyList.Format280North_v1_0)},CPPropertyListCreateFromData=function(e,t){return CFPropertyList.propertyListFromData(e,t)},CPPropertyListCreateData=function(e,t){return CFPropertyList.dataFromPropertyList(e,t)},CFDictionary=function(e){this._keys=[],this._count=0,this._buckets={},this._UID=objj_generateObjectUID()};var indexOf=Array.prototype.indexOf,hasOwnProperty=Object.prototype.hasOwnProperty;function clearMutableData(e){this._rawString=NULL,this._propertyList=NULL,this._propertyListFormat=NULL,this._JSONObject=NULL,this._bytes=NULL,this._base64=NULL}CFDictionary.prototype.copy=function(){return this},CFDictionary.prototype.mutableCopy=function(){var e=new CFMutableDictionary,t=this._keys,r=this._count;e._keys=t.slice(),e._count=r;for(var n=0,s=this._buckets,i=e._buckets;n<r;++n){var o=t[n];i[o]=s[o]}return e},CFDictionary.prototype.containsKey=function(e){return hasOwnProperty.apply(this._buckets,[e])},CFDictionary.prototype.containsValue=function(e){for(var t=this._keys,r=this._buckets,n=0,s=t.length;n<s;++n)if(r[t[n]]===e)return YES;return NO},CFDictionary.prototype.count=function(){return this._count},CFDictionary.prototype.countOfKey=function(e){return this.containsKey(e)?1:0},CFDictionary.prototype.countOfValue=function(e){for(var t=this._keys,r=this._buckets,n=0,s=t.length,i=0;n<s;++n)r[t[n]]===e&&++i;return i},CFDictionary.prototype.keys=function(){return this._keys.slice()},CFDictionary.prototype.valueForKey=function(e){var t=this._buckets;return hasOwnProperty.apply(t,[e])?t[e]:nil},CFDictionary.prototype[Symbol.iterator]=function*(){const e=this._keys,t=this._buckets;for(const r of e)yield[r,t[r]]},CFDictionary.prototype.toString=function(){for(var e="{\n",t=this._keys,r=0,n=this._count;r<n;++r){var s=t[r];e+="\t"+s+' = "'+String(this.valueForKey(s)).split("\n").join("\n\t")+'"\n'}return e+"}"},CFMutableDictionary=function(e){CFDictionary.apply(this,[])},CFMutableDictionary.prototype=new CFDictionary,CFMutableDictionary.prototype.copy=function(){return this.mutableCopy()},CFMutableDictionary.prototype.addValueForKey=function(e,t){this.containsKey(e)||(++this._count,this._keys.push(e),this._buckets[e]=t)},CFMutableDictionary.prototype.removeValueForKey=function(e){var t=-1;if(indexOf)t=indexOf.call(this._keys,e);else for(var r=this._keys,n=0,s=r.length;n<s;++n)if(r[n]===e){t=n;break}-1!==t&&(--this._count,this._keys.splice(t,1),delete this._buckets[e])},CFMutableDictionary.prototype.removeAllValues=function(){this._count=0,this._keys=[],this._buckets={}},CFMutableDictionary.prototype.replaceValueForKey=function(e,t){this.containsKey(e)&&(this._buckets[e]=t)},CFMutableDictionary.prototype.setValueForKey=function(e,t){t==nil?this.removeValueForKey(e):this.containsKey(e)?this.replaceValueForKey(e,t):this.addValueForKey(e,t)},kCFErrorLocalizedDescriptionKey="CPLocalizedDescription",kCFErrorLocalizedFailureReasonKey="CPLocalizedFailureReason",kCFErrorLocalizedRecoverySuggestionKey="CPLocalizedRecoverySuggestion",kCFErrorDescriptionKey="CPDescription",kCFErrorUnderlyingErrorKey="CPUnderlyingError",kCFErrorURLKey="CPURL",kCFErrorFilePathKey="CPFilePath",kCFErrorDomainCappuccino="CPCappuccinoErrorDomain",kCFErrorDomainCocoa=kCFErrorDomainCappuccino,CFError=function(e,t,r){this._domain=e||NULL,this._code=t||0,this._userInfo=r||new CFDictionary,this._UID=objj_generateObjectUID()},CFError.prototype.domain=function(){return this._domain},CFError.prototype.code=function(){return this._code},CFError.prototype.description=function(){var e=this._userInfo.valueForKey(kCFErrorLocalizedDescriptionKey);if(e)return e;var t=this._userInfo.valueForKey(kCFErrorLocalizedFailureReasonKey);if(t)return"The operation couldn’t be completed. "+t;var r="",n=this._userInfo.valueForKey(kCFErrorDescriptionKey);if(n)r="The operation couldn’t be completed. (error "+this._code+" - "+n+")";else r="The operation couldn’t be completed. (error "+this._code+")";return r},CFError.prototype.failureReason=function(){return this._userInfo.valueForKey(kCFErrorLocalizedFailureReasonKey)},CFError.prototype.recoverySuggestion=function(){return this._userInfo.valueForKey(kCFErrorLocalizedRecoverySuggestionKey)},CFError.prototype.userInfo=function(){return this._userInfo},CFErrorCreate=function(e,t,r){return new CFError(e,t,r)},CFErrorCreateWithUserInfoKeysAndValues=function(e,t,r,n,s){for(var i=new CFMutableDictionary;s--;)i.setValueForKey(r[s],n[s]);return new CFError(e,t,i)},CFErrorGetCode=function(e){return e.code()},CFErrorGetDomain=function(e){return e.domain()},CFErrorCopyDescription=function(e){return e.description()},CFErrorCopyUserInfo=function(e){return e.userInfo()},CFErrorCopyFailureReason=function(e){return e.failureReason()},CFErrorCopyRecoverySuggestion=function(e){return e.recoverySuggestion()},kCFURLErrorUnknown=-998,kCFURLErrorCancelled=-999,kCFURLErrorBadURL=-1e3,kCFURLErrorTimedOut=-1001,kCFURLErrorUnsupportedURL=-1002,kCFURLErrorCannotFindHost=-1003,kCFURLErrorCannotConnectToHost=-1004,kCFURLErrorNetworkConnectionLost=-1005,kCFURLErrorDNSLookupFailed=-1006,kCFURLErrorHTTPTooManyRedirects=-1007,kCFURLErrorResourceUnavailable=-1008,kCFURLErrorNotConnectedToInternet=-1009,kCFURLErrorRedirectToNonExistentLocation=-1010,kCFURLErrorBadServerResponse=-1011,kCFURLErrorUserCancelledAuthentication=-1012,kCFURLErrorUserAuthenticationRequired=-1013,kCFURLErrorZeroByteResource=-1014,kCFURLErrorCannotDecodeRawData=-1015,kCFURLErrorCannotDecodeContentData=-1016,kCFURLErrorCannotParseResponse=-1017,kCFURLErrorRequestBodyStreamExhausted=-1021,kCFURLErrorFileDoesNotExist=-1100,kCFURLErrorFileIsDirectory=-1101,kCFURLErrorNoPermissionsToReadFile=-1102,kCFURLErrorDataLengthExceedsMaximum=-1103,CFData=function(){this._rawString=NULL,this._propertyList=NULL,this._propertyListFormat=NULL,this._JSONObject=NULL,this._bytes=NULL,this._base64=NULL},CFData.prototype.propertyList=function(){return this._propertyList||(this._propertyList=CFPropertyList.propertyListFromString(this.rawString())),this._propertyList},CFData.prototype.JSONObject=function(){if(!this._JSONObject)try{this._JSONObject=JSON.parse(this.rawString())}catch(e){}return this._JSONObject},CFData.prototype.rawString=function(){if(this._rawString===NULL)if(this._propertyList)this._rawString=CFPropertyList.stringFromPropertyList(this._propertyList,this._propertyListFormat);else if(this._JSONObject)this._rawString=JSON.stringify(this._JSONObject);else if(this._bytes)this._rawString=CFData.bytesToString(this._bytes);else{if(!this._base64)throw new Error("Can't convert data to string.");this._rawString=CFData.decodeBase64ToString(this._base64,!0)}return this._rawString},CFData.prototype.bytes=function(){if(this._bytes===NULL){var e=CFData.stringToBytes(this.rawString());this.setBytes(e)}return this._bytes},CFData.prototype.base64=function(){var e;this._base64===NULL&&(e=this._bytes?CFData.encodeBase64Array(this._bytes):CFData.encodeBase64String(this.rawString()),this.setBase64String(e));return this._base64},CFMutableData=function(){CFData.call(this)},CFMutableData.prototype=new CFData,CFMutableData.prototype.setPropertyList=function(e,t){clearMutableData(this),this._propertyList=e,this._propertyListFormat=t},CFMutableData.prototype.setJSONObject=function(e){clearMutableData(this),this._JSONObject=e},CFMutableData.prototype.setRawString=function(e){clearMutableData(this),this._rawString=e},CFMutableData.prototype.setBytes=function(e){clearMutableData(this),this._bytes=e},CFMutableData.prototype.setBase64String=function(e){clearMutableData(this),this._base64=e};for(var base64_map_to=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9","+","/","="],base64_map_from=[],i=0;i<base64_map_to.length;i++)base64_map_from[base64_map_to[i].charCodeAt(0)]=i;CFData.decodeBase64ToArray=function(e,t){t&&(e=e.replace(/[^A-Za-z0-9\+\/\=]/g,""));for(var r=("="==e[e.length-1]?1:0)+("="==e[e.length-2]?1:0),n=e.length,s=[],i=0;i<n;){var o=base64_map_from[e.charCodeAt(i++)]<<18|base64_map_from[e.charCodeAt(i++)]<<12|base64_map_from[e.charCodeAt(i++)]<<6|base64_map_from[e.charCodeAt(i++)];s.push((16711680&o)>>16),s.push((65280&o)>>8),s.push(255&o)}return r>0?s.slice(0,-1*r):s},CFData.encodeBase64Array=function(e){var t=(3-e.length%3)%3,r=e.length+t,n=[];t>0&&e.push(0),t>1&&e.push(0);for(var s=0;s<r;){var i=e[s++]<<16|e[s++]<<8|e[s++];n.push(base64_map_to[(16515072&i)>>18]),n.push(base64_map_to[(258048&i)>>12]),n.push(base64_map_to[(4032&i)>>6]),n.push(base64_map_to[63&i])}return t>0&&(n[n.length-1]="=",e.pop()),t>1&&(n[n.length-2]="=",e.pop()),n.join("")},CFData.decodeBase64ToString=function(e,t){return CFData.bytesToString(CFData.decodeBase64ToArray(e,t))},CFData.decodeBase64ToUtf16String=function(e,t){return CFData.bytesToUtf16String(CFData.decodeBase64ToArray(e,t))},CFData.bytesToString=function(e){return String.fromCharCode.apply(NULL,e)},CFData.stringToBytes=function(e){for(var t=[],r=0;r<e.length;r++)t.push(e.charCodeAt(r));return t},CFData.encodeBase64String=function(e){for(var t=[],r=0;r<e.length;r++)t.push(e.charCodeAt(r));return CFData.encodeBase64Array(t)},CFData.bytesToUtf16String=function(e){for(var t=[],r=0;r<e.length;r+=2)t.push(e[r+1]<<8|e[r]);return String.fromCharCode.apply(NULL,t)},CFData.encodeBase64Utf16String=function(e){for(var t=[],r=0;r<e.length;r++){var n=e.charCodeAt(r);t.push(255&n),t.push((65280&n)>>8)}return CFData.encodeBase64Array(t)};var CFURLsForCachedUIDs,CFURLPartsForURLStrings,CFURLCachingEnableCount=0;function enableCFURLCaching(){1===++CFURLCachingEnableCount&&(CFURLsForCachedUIDs={},CFURLPartsForURLStrings={})}function disableCFURLCaching(){0===(CFURLCachingEnableCount=MAX(CFURLCachingEnableCount-1,0))&&(delete CFURLsForCachedUIDs,delete CFURLPartsForURLStrings)}var URL_RE=new RegExp("^(?:([^:/?#]+):)?(?:(//)((?:(([^:@]*):?([^:@]*))?@)?([^:/?#]*)(?::(\\d*))?))?([^?#]*)(?:\\?([^#]*))?(?:#(.*))?"),URI_KEYS=["url","scheme","authorityRoot","authority","userInfo","user","password","domain","portNumber","path","queryString","fragment"];function CFURLGetParts(e){if(e._parts)return e._parts;var t=e.string(),r=t.match(/^mhtml:/);if(r&&(t=t.substr(6)),CFURLCachingEnableCount>0&&hasOwnProperty.call(CFURLPartsForURLStrings,t))return e._parts=CFURLPartsForURLStrings[t],e._parts;e._parts={};for(var n=e._parts,s=URL_RE.exec(t),i=s.length;i--;)n[URI_KEYS[i]]=s[i]||NULL;if(n.portNumber=parseInt(n.portNumber,10),isNaN(n.portNumber)&&(n.portNumber=-1),n.pathComponents=[],n.path){var o=n.path.split("/"),a=n.pathComponents,c=o.length;for(i=0;i<c;++i){var l=o[i];l?a.push(l):0===i&&a.push("/")}n.pathComponents=a}return r&&(n.url="mhtml:"+n.url,n.scheme="mhtml:"+n.scheme),CFURLCachingEnableCount>0&&(CFURLPartsForURLStrings[t]=n),n}CFURL=function(e,t){if((e=e||"")instanceof CFURL){if(!t)return new CFURL(e.absoluteString());var r=e.baseURL();r&&(t=new CFURL(r.absoluteURL(),t)),e=e.string()}if(CFURLCachingEnableCount>0){var n=e+" "+(t&&t.UID()||"");if(hasOwnProperty.call(CFURLsForCachedUIDs,n))return CFURLsForCachedUIDs[n];CFURLsForCachedUIDs[n]=this}if(e.match(/^data:/)){for(var s={},i=URI_KEYS.length;i--;)s[URI_KEYS[i]]="";s.url=e,s.scheme="data",s.pathComponents=[],this._parts=s,this._standardizedURL=this,this._absoluteURL=this}this._UID=objj_generateObjectUID(),this._string=e,this._baseURL=t},CFURL.prototype.UID=function(){return this._UID};var URLMap={};function resolveURL(e){var t=(e=e.standardizedURL()).baseURL();if(!t)return e;var r,n=e._parts||CFURLGetParts(e),s=t.absoluteURL(),i=s._parts||CFURLGetParts(s);if(!n.scheme&&n.authorityRoot)(r=CFURLPartsCreateCopy(n)).scheme=t.scheme();else if(n.scheme||n.authority)r=n;else{(r={}).scheme=i.scheme,r.authority=i.authority,r.userInfo=i.userInfo,r.user=i.user,r.password=i.password,r.domain=i.domain,r.portNumber=i.portNumber,r.queryString=n.queryString,r.fragment=n.fragment;var o=n.pathComponents;if(o.length&&"/"===o[0])r.path=n.path,r.pathComponents=o;else{var a=i.pathComponents,c=a.concat(o);!t.hasDirectoryPath()&&a.length&&c.splice(a.length-1,1),!o.length||".."!==o[0]&&"."!==o[0]||standardizePathComponents(c,YES),r.pathComponents=c,r.path=pathFromPathComponents(c,o.length<=0||e.hasDirectoryPath())}}var l=URLStringFromParts(r),p=new CFURL(l);return p._parts=r,p._standardizedURL=p,p._standardizedString=l,p._absoluteURL=p,p._absoluteString=l,p}function pathFromPathComponents(e,t){var r=e.join("/");return r.length&&"/"===r.charAt(0)&&(r=r.substr(1)),t&&(r+="/"),r}function standardizePathComponents(e,t){for(var r=0,n=0,s=e.length,i=t?e:[],o=NO;r<s;++r){var a=e[r];""!==a&&("."!==a?".."===a&&0!==n&&".."!==i[n-1]?n>0&&"/"!==i[n-1]&&--n:(i[n]=a,n++):o=0===n)}return o&&0===n&&(i[n++]="."),i.length=n,i}function URLStringFromParts(e){var t="",r=e.scheme;r&&(t+=r+":");var n=e.authority;n&&(t+="//"+n),t+=e.path;var s=e.queryString;s&&(t+="?"+s);var i=e.fragment;return i&&(t+="#"+i),t}function CFURLPartsCreateCopy(e){for(var t={},r=URI_KEYS.length;r--;){var n=URI_KEYS[r];t[n]=e[n]}return t}function CFURLGetResourcePropertiesForKeys(e){return e._resourcePropertiesForKeys||(e._resourcePropertiesForKeys=new CFMutableDictionary),e._resourcePropertiesForKeys}function MarkedStream(e){this._string=e;var t=e.indexOf(";");this._magicNumber=e.substr(0,t),this._location=e.indexOf(";",++t),this._version=e.substring(t,this._location++)}CFURL.prototype.mappedURL=function(){return URLMap[this.absoluteString()]||this},CFURL.setMappedURLForURL=function(e,t){URLMap[e.absoluteString()]=t},CFURL.prototype.schemeAndAuthority=function(){var e="",t=this.scheme();t&&(e+=t+":");var r=this.authority();return r&&(e+="//"+r),e},CFURL.prototype.absoluteString=function(){return this._absoluteString===undefined&&(this._absoluteString=this.absoluteURL().string()),this._absoluteString},CFURL.prototype.toString=function(){return this.absoluteString()},CFURL.prototype.absoluteURL=function(){return this._absoluteURL===undefined&&(this._absoluteURL=resolveURL(this)),this._absoluteURL},CFURL.prototype.standardizedURL=function(){if(this._standardizedURL===undefined){var e=this._parts||CFURLGetParts(this),t=standardizePathComponents(e.pathComponents,NO),r=pathFromPathComponents(t,this.hasDirectoryPath());if(e.path===r)this._standardizedURL=this;else{var n=CFURLPartsCreateCopy(e);n.pathComponents=t,n.path=r;var s=new CFURL(URLStringFromParts(n),this.baseURL());s._parts=n,s._standardizedURL=s,this._standardizedURL=s}}return this._standardizedURL},CFURL.prototype.string=function(){return this._string},CFURL.prototype.authority=function(){var e=(this._parts||CFURLGetParts(this)).authority;if(e)return e;var t=this.baseURL();return t&&t.authority()||""},CFURL.prototype.hasDirectoryPath=function(){var e=this._hasDirectoryPath;if(e===undefined){var t=this.path();if(!t)return NO;if("/"===t.charAt(t.length-1))return YES;var r=this.lastPathComponent();e="."===r||".."===r,this._hasDirectoryPath=e}return e},CFURL.prototype.hostName=function(){return this.authority()},CFURL.prototype.fragment=function(){return(this._parts||CFURLGetParts(this)).fragment},CFURL.prototype.lastPathComponent=function(){if(this._lastPathComponent===undefined){var e=this.pathComponents(),t=e.length;this._lastPathComponent=t?e[t-1]:""}return this._lastPathComponent},CFURL.prototype.path=function(){return(this._parts||CFURLGetParts(this)).path},CFURL.prototype.createCopyDeletingLastPathComponent=function(){var e=this._parts||CFURLGetParts(this),t=standardizePathComponents(e.pathComponents,NO);t.length>0&&(t.length>1||"/"!==t[0])&&t.pop();var r=1===t.length&&"/"===t[0];return e.pathComponents=t,e.path=r?"/":pathFromPathComponents(t,NO),new CFURL(URLStringFromParts(e))},CFURL.prototype.pathComponents=function(){return(this._parts||CFURLGetParts(this)).pathComponents},CFURL.prototype.pathExtension=function(){var e=this.lastPathComponent();if(!e)return NULL;var t=(e=e.replace(/^\.*/,"")).lastIndexOf(".");return t<=0?"":e.substring(t+1)},CFURL.prototype.queryString=function(){return(this._parts||CFURLGetParts(this)).queryString},CFURL.prototype.scheme=function(){var e=this._scheme;if(e===undefined){if(!(e=(this._parts||CFURLGetParts(this)).scheme)){var t=this.baseURL();e=t&&t.scheme()}this._scheme=e}return e},CFURL.prototype.user=function(){return(this._parts||CFURLGetParts(this)).user},CFURL.prototype.password=function(){return(this._parts||CFURLGetParts(this)).password},CFURL.prototype.portNumber=function(){return(this._parts||CFURLGetParts(this)).portNumber},CFURL.prototype.domain=function(){return(this._parts||CFURLGetParts(this)).domain},CFURL.prototype.baseURL=function(){return this._baseURL},CFURL.prototype.asDirectoryPathURL=function(){if(this.hasDirectoryPath())return this;var e=this.lastPathComponent();return"/"!==e&&(e="./"+e),new CFURL(e+"/",this)},CFURL.prototype.resourcePropertyForKey=function(e){return CFURLGetResourcePropertiesForKeys(this).valueForKey(e)},CFURL.prototype.setResourcePropertyForKey=function(e,t){CFURLGetResourcePropertiesForKeys(this).setValueForKey(e,t)},CFURL.prototype.staticResourceData=function(){var e=new CFMutableData;return e.setRawString(StaticResource.resourceAtURL(this).contents()),e},MarkedStream.prototype.magicNumber=function(){return this._magicNumber},MarkedStream.prototype.version=function(){return this._version},MarkedStream.prototype.getMarker=function(){var e=this._string,t=this._location;if(t>=e.length)return null;var r=e.indexOf(";",t);if(r<0)return null;var n=e.substring(t,r);return"e"===n?null:(this._location=r+1,n)},MarkedStream.prototype.getString=function(){var e=this._string,t=this._location;if(t>=e.length)return null;var r=e.indexOf(";",t);if(r<0)return null;var n=parseInt(e.substring(t,r),10),s=e.substr(r+1,n);return this._location=r+1+n,s};var CFBundleUnloaded=0,CFBundleLoading=1,CFBundleLoadingInfoPlist=2,CFBundleLoadingExecutable=4,CFBundleLoadingSpritedImages=8,CFBundleLoadingLocalizableStrings=16,CFBundleLoaded=32,CFBundlesForURLStrings={},CFBundlesForClasses={},CFBundlesWithIdentifiers={},CFCacheBuster=(new Date).getTime(),CFTotalBytesLoaded=0,CPApplicationSizeInBytes=0,CPBundleDefaultBrowserLanguage="CPBundleDefaultBrowserLanguage",CPBundleDefaultLanguage="CPBundleDefaultLanguage";function addClassToBundle(e,t){t&&(CFBundlesForClasses[e.name]=t)}function resetBundle(){CFBundlesForURLStrings={},CFBundlesForClasses={},CFBundlesWithIdentifiers={},CFTotalBytesLoaded=0,CPApplicationSizeInBytes=0}function finishBundleLoadingWithError(e,t){resolveStaticResource(e._staticResource),e._eventDispatcher.dispatchEvent({type:"error",error:t,bundle:e})}function loadExecutableAndResources(e,t){if(!e.mostEligibleEnvironment())return r();if(loadExecutableForBundle(e,s,r,n),loadSpritedImagesForBundle(e,s,r,n),loadLocalizableStringsForBundle(e,s,r,n),e._loadStatus===CFBundleLoading)return s();function r(t){for(var r=e._loadRequests,n=r.length;n--;)r[n].abort();this._loadRequests=[],e._loadStatus=CFBundleUnloaded,finishBundleLoadingWithError(e,t||new Error("Could not recognize executable code format in Bundle "+e))}function n(t){if(!("undefined"!=typeof CPApp&&CPApp&&CPApp._finishedLaunching||"function"!=typeof OBJJ_PROGRESS_CALLBACK)){CFTotalBytesLoaded+=t;var r=CPApplicationSizeInBytes?MAX(MIN(1,CFTotalBytesLoaded/CPApplicationSizeInBytes),0):0;OBJJ_PROGRESS_CALLBACK(r,CPApplicationSizeInBytes,e.bundlePath())}}function s(){function r(){e._eventDispatcher.dispatchEvent({type:"load",bundle:e})}e._loadStatus===CFBundleLoading&&(e._loadStatus=CFBundleLoaded,resolveStaticResource(e._staticResource),t?executeBundle(e,r):r())}}function loadExecutableForBundle(e,t,r,n){var s=e.executableURL();s&&(e._loadStatus|=CFBundleLoadingExecutable,new FileRequest(s,function(n){try{decompileStaticFile(e,n.request.responseText(),s),e._loadStatus&=~CFBundleLoadingExecutable,t()}catch(e){r(e)}},r,n))}function spritedImagesTestURLStringForBundle(e){return"mhtml:"+new CFURL("MHTMLTest.txt",e.mostEligibleEnvironmentURL())}function spritedImagesURLForBundle(e){return CFBundleSupportedSpriteType===CFBundleDataURLSpriteType?new CFURL("dataURLs.txt",e.mostEligibleEnvironmentURL()):CFBundleSupportedSpriteType===CFBundleMHTMLSpriteType||CFBundleSupportedSpriteType===CFBundleMHTMLUncachedSpriteType?new CFURL("MHTMLPaths.txt",e.mostEligibleEnvironmentURL()):NULL}function loadSpritedImagesForBundle(e,t,r,n){if(e.hasSpritedImages()){if(e._loadStatus|=CFBundleLoadingSpritedImages,!CFBundleHasTestedSpriteSupport())return CFBundleTestSpriteSupport(spritedImagesTestURLStringForBundle(e),function(){loadSpritedImagesForBundle(e,t,r,n)});var s=spritedImagesURLForBundle(e);if(!s)return e._loadStatus&=~CFBundleLoadingSpritedImages,t();new FileRequest(s,function(n){try{decompileStaticFile(e,n.request.responseText(),s),e._loadStatus&=~CFBundleLoadingSpritedImages,t()}catch(e){r(e)}},r,n)}}function loadLocalizableStringsForBundle(e,t,r,n){var s=e._loadedLanguage;if(s){var i=e.valueForInfoDictionaryKey("CPBundleLocalizableStrings");if(i)for(var o=e,a=i.length,c=new CFURL(s+".lproj/",o.resourcesDirectoryURL()),l=0,p=0;p<a;p++){var u=i[p];function h(n){var s=n.request.responseText(),i=new CFURL(n.request._URL).lastPathComponent();try{loadLocalizableContentForFileInBundle(o,s,i),++l==a&&(e._loadStatus&=~CFBundleLoadingLocalizableStrings,t())}catch(e){r(new Error("Error when parsing the localizable file "+i))}}e._loadStatus|=CFBundleLoadingLocalizableStrings,new FileRequest(new CFURL(u,c),h,r,n)}}}function loadLocalizableContentForFileInBundle(e,t,r){var n,s={},i=t.split("\n");e._localizableStrings[r]=s;for(var o=0;o<i.length;o++){var a=i[o];if("/"!=a[0])if('"'!=a[0]);else{var c=a.split('"'),l=c[1];l in s||(s[l]=c[3]),(l+=n)in s||(s[l]=c[3])}else n=a.substring(2,a.length-2).trim()}}function loadLanguageForBundle(e){if(!e._loadedLanguage){var t=e.valueForInfoDictionaryKey(CPBundleDefaultLanguage);if(t!=CPBundleDefaultBrowserLanguage&&t)e._loadedLanguage=t;else if("undefined"!=typeof navigator){var r=void 0!==navigator.language?navigator.language:navigator.userLanguage;r&&(e._loadedLanguage=r.substring(0,2))}}}CFBundle=function(e){var t=(e=makeAbsoluteURL(e).asDirectoryPathURL()).absoluteString(),r=CFBundlesForURLStrings[t];if(r)return r;CFBundlesForURLStrings[t]=this,this._bundleURL=e,this._resourcesDirectoryURL=new CFURL("Resources/",e),this._staticResource=NULL,this._isValid=NO,this._loadStatus=CFBundleUnloaded,this._loadRequests=[],this._infoDictionary=new CFDictionary,this._eventDispatcher=new EventDispatcher(this),this._localizableStrings=[],this._loadedLanguage=NULL},CFBundle.environments=function(){return["Browser","ObjJ"]},CFBundle.bundleContainingURL=function(e){for(var t,r=(e=new CFURL(".",makeAbsoluteURL(e))).absoluteString();!t||t!==r;){var n=CFBundlesForURLStrings[r];if(n&&n._isValid)return n;t=r,r=(e=new CFURL("..",e)).absoluteString()}return NULL},CFBundle.mainBundle=function(){return new CFBundle(mainBundleURL)},CFBundle.bundleForClass=function(e){return CFBundlesForClasses[e.name]||CFBundle.mainBundle()},CFBundle.bundleWithIdentifier=function(e){return CFBundlesWithIdentifiers[e]||NULL},CFBundle.prototype.bundleURL=function(){return this._bundleURL.absoluteURL()},CFBundle.prototype.resourcesDirectoryURL=function(){return this._resourcesDirectoryURL},CFBundle.prototype.resourceURL=function(e,t,r,n){return t&&(e=e+"."+t),n&&(e=n+e),r&&(e=r+"/"+e),new CFURL(e,this.resourcesDirectoryURL()).mappedURL().absoluteURL()},CFBundle.prototype.mostEligibleEnvironmentURL=function(){return this._mostEligibleEnvironmentURL===undefined&&(this._mostEligibleEnvironmentURL=new CFURL(this.mostEligibleEnvironment()+".environment/",this.bundleURL())),this._mostEligibleEnvironmentURL},CFBundle.prototype.executableURL=function(){if(this._executableURL===undefined){var e=this.valueForInfoDictionaryKey("CPBundleExecutable");this._executableURL=e?new CFURL(e,this.mostEligibleEnvironmentURL()):NULL}return this._executableURL},CFBundle.prototype.infoDictionary=function(){return this._infoDictionary},CFBundle.prototype.loadedLanguage=function(){return this._loadedLanguage},CFBundle.prototype.valueForInfoDictionaryKey=function(e){return this._infoDictionary.valueForKey(e)},CFBundle.prototype.identifier=function(){return this._infoDictionary.valueForKey("CPBundleIdentifier")},CFBundle.prototype.hasSpritedImages=function(){for(var e=this._infoDictionary.valueForKey("CPBundleEnvironmentsWithImageSprites")||[],t=e.length,r=this.mostEligibleEnvironment();t--;)if(e[t]===r)return YES;return NO},CFBundle.prototype.environments=function(){return this._infoDictionary.valueForKey("CPBundleEnvironments")||["ObjJ"]},CFBundle.prototype.mostEligibleEnvironment=function(e){e=e||this.environments();for(var t=CFBundle.environments(),r=0,n=t.length,s=e.length;r<n;++r)for(var i=0,o=t[r];i<s;++i)if(o===e[i])return o;return NULL},CFBundle.prototype.isLoading=function(){return this._loadStatus&CFBundleLoading},CFBundle.prototype.isLoaded=function(){return!!(this._loadStatus&CFBundleLoaded)},CFBundle.prototype.load=function(e){if(this._loadStatus===CFBundleUnloaded){this._loadStatus=CFBundleLoading|CFBundleLoadingInfoPlist;var t=this,r=this.bundleURL(),n=new CFURL("..",r);n.absoluteString()===r.absoluteString()&&(n=n.schemeAndAuthority()),StaticResource.resolveResourceAtURL(n,YES,function(n){var s=r.lastPathComponent();t._staticResource=n._children[s]||new StaticResource(r,n,YES,NO),new FileRequest(new CFURL("Info.plist",t.bundleURL()),function(r){t._loadStatus&=~CFBundleLoadingInfoPlist;var n=r.request.responsePropertyList();if(t._isValid=!!n||CFBundle.mainBundle()===t,n){t._infoDictionary=n;var s=t._infoDictionary.valueForKey("CPBundleIdentifier");s&&(CFBundlesWithIdentifiers[s]=t)}t._infoDictionary?(t===CFBundle.mainBundle()&&t.valueForInfoDictionaryKey("CPApplicationSize")&&(CPApplicationSizeInBytes=t.valueForInfoDictionaryKey("CPApplicationSize").valueForKey("executable")||0),loadLanguageForBundle(t),loadExecutableAndResources(t,e)):finishBundleLoadingWithError(t,new Error('Could not load bundle at "'+path+'"'))},function(){t._isValid=CFBundle.mainBundle()===t,t._loadStatus=CFBundleUnloaded,finishBundleLoadingWithError(t,new Error('Could not load bundle at "'+t.bundleURL()+'"'))})})}};var CFBundleSpriteSupportListeners=[],CFBundleSupportedSpriteType=-1,CFBundleNoSpriteType=0,CFBundleDataURLSpriteType=1,CFBundleMHTMLSpriteType=2,CFBundleMHTMLUncachedSpriteType=3;function CFBundleHasTestedSpriteSupport(){return-1!==CFBundleSupportedSpriteType}function CFBundleTestSpriteSupport(e,t){CFBundleHasTestedSpriteSupport()||(CFBundleSpriteSupportListeners.push(t),CFBundleSpriteSupportListeners.length>1||(CFBundleSpriteSupportListeners.push(function(){var e=0,t=CFBundle.mainBundle().valueForInfoDictionaryKey("CPApplicationSize");if(t){switch(CFBundleSupportedSpriteType){case CFBundleDataURLSpriteType:e=t.valueForKey("data");break;case CFBundleMHTMLSpriteType:case CFBundleMHTMLUncachedSpriteType:e=t.valueForKey("mhtml")}CPApplicationSizeInBytes+=e}}),CFBundleTestSpriteTypes([CFBundleDataURLSpriteType,"data:image/gif;base64,R0lGODlhAQABAIAAAMc9BQAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==",CFBundleMHTMLSpriteType,e+"!test",CFBundleMHTMLUncachedSpriteType,e+"?"+CFCacheBuster+"!test"])))}function CFBundleNotifySpriteSupportListeners(){for(var e=CFBundleSpriteSupportListeners.length;e--;)CFBundleSpriteSupportListeners[e]()}function CFBundleTestSpriteTypes(e){if(!("Image"in global)||e.length<2)return CFBundleSupportedSpriteType=CFBundleNoSpriteType,void CFBundleNotifySpriteSupportListeners();var t=new Image;t.onload=function(){1===t.width&&1===t.height?(CFBundleSupportedSpriteType=e[0],CFBundleNotifySpriteSupportListeners()):t.onerror()},t.onerror=function(){CFBundleTestSpriteTypes(e.slice(2))},t.src=e[1]}function executeBundle(e,t){var r=[e._staticResource];!function n(s){for(;s<r.length;++s){var i=r[s];if(!i.isNotFound())if(i.isFile()){var o=new FileExecutable(i.URL());if(!o.hasLoadedFileDependencies())return void o.loadFileDependencies(function(){n(s)});o.execute()}else{if(i.URL().absoluteString()===e.resourcesDirectoryURL().absoluteString())continue;var a=i.children();for(var c in a)hasOwnProperty.call(a,c)&&r.push(a[c])}}t()}(0)}var STATIC_MAGIC_NUMBER="@STATIC",MARKER_PATH="p",MARKER_URI="u",MARKER_CODE="c",MARKER_TEXT="t",MARKER_IMPORT_STD="I",MARKER_IMPORT_LOCAL="i";function decompileStaticFile(e,t,r){var n=new MarkedStream(t);if(n.magicNumber()!==STATIC_MAGIC_NUMBER)throw new Error("Could not read static file: "+r);if("1.0"!==n.version())throw new Error("Could not read static file: "+r);for(var s,i=e.bundleURL(),o=NULL;s=n.getMarker();){var a=n.getString();if(s===MARKER_PATH){var c=new CFURL(a,i),l=StaticResource.resourceAtURL(new CFURL(".",c),YES);o=new StaticResource(c,l,NO,YES)}else if(s===MARKER_URI){var p=new CFURL(a,i),u=n.getString();if(0===u.indexOf("mhtml:")&&(u="mhtml:"+new CFURL(u.substr(6),i),CFBundleSupportedSpriteType===CFBundleMHTMLUncachedSpriteType)){var h=u.indexOf("!"),d=u.substring(0,h),f=u.substring(h);u=d+"?"+CFCacheBuster+f}CFURL.setMappedURLForURL(p,new CFURL(u));l=StaticResource.resourceAtURL(new CFURL(".",p),YES);new StaticResource(p,l,NO,YES)}else s===MARKER_TEXT&&o.write(a)}}MARKER_SOURCE_MAP="S",CFBundle.prototype.addEventListener=function(e,t){this._eventDispatcher.addEventListener(e,t)},CFBundle.prototype.removeEventListener=function(e,t){this._eventDispatcher.removeEventListener(e,t)},CFBundle.prototype.onerror=function(e){throw e.error},CFBundle.prototype.bundlePath=function(){return this.bundleURL().path()},CFBundle.prototype.path=function(){return CPLog.warn("CFBundle.prototype.path is deprecated, use CFBundle.prototype.bundlePath instead."),this.bundlePath.apply(this,arguments)},CFBundle.prototype.pathForResource=function(e,t,r,n){return this.resourceURL(e,t,r,n).absoluteString()},CFBundleCopyLocalizedString=function(e,t,r,n){return CFCopyLocalizedStringWithDefaultValue(t,n,e,r,"")},CFBundleCopyBundleLocalizations=function(e){return[this._loadedLanguage]},CFCopyLocalizedString=function(e,t){return CFCopyLocalizedStringFromTable(e,"Localizable",t)},CFCopyLocalizedStringFromTable=function(e,t,r){return CFCopyLocalizedStringFromTableInBundle(e,t,CFBundleGetMainBundle(),r)},CFCopyLocalizedStringFromTableInBundle=function(e,t,r,n){return CFCopyLocalizedStringWithDefaultValue(e,t,r,null,n)},CFCopyLocalizedStringWithDefaultValue=function(e,t,r,n,s){t||(t="Localizable"),t+=".strings";var i=r._localizableStrings[t];return(i?i[e+s]:null)||n||e},CFBundleGetMainBundle=function(){return CFBundle.mainBundle()};var rootResources={};function StaticResource(e,t,r,n,s){this._parent=t,this._eventDispatcher=new EventDispatcher(this);var i=e.absoluteURL().lastPathComponent()||e.schemeAndAuthority();this._name=i,this._URL=e,this._isResolved=!!n,this._filenameTranslateDictionary=s,r&&(this._URL=this._URL.asDirectoryPathURL()),t||(rootResources[i]=this),this._isDirectory=!!r,this._isNotFound=NO,t&&(t._children[i]=this),r?this._children={}:this._contents=""}function countProp(e){var t=0;for(var r in e)e.hasOwnProperty(r)&&++t;return t}function resolveStaticResource(e){e._isResolved=YES,e._eventDispatcher.dispatchEvent({type:"resolve",staticResource:e})}function rootResourceForAbsoluteURL(e){var t=e.schemeAndAuthority(),r=rootResources[t];return r||(r=new StaticResource(new CFURL(t),NULL,YES,YES)),r}function resolveResourceComponents(e,t,r,n,s,i){for(var o=r.length;n<o;++n){var a=r[n],c=hasOwnProperty.call(e._children,a)&&e._children[a];if(c||(c=new StaticResource(new CFURL(a,e.URL()),e,n+1<o||t,NO,i)).resolve(),!c.isResolved())return c.addEventListener("resolve",function(){resolveResourceComponents(e,t,r,n,s,i)});if(c.isNotFound())return s(null,new Error("File not found: "+r.join("/")));if(n+1<o&&c.isFile())return s(null,new Error("File is not a directory: "+r.join("/")));e=c}s(e)}function resolveResourceAtURLSearchingIncludeURLs(e,t,r){var n=StaticResource.includeURLs(),s=new CFURL(e,n[t]).absoluteURL();StaticResource.resolveResourceAtURL(s,NO,function(s){s?r(s):t+1<n.length?resolveResourceAtURLSearchingIncludeURLs(e,t+1,r):r(NULL)})}StaticResource.rootResources=function(){return rootResources},StaticResource.resetRootResources=function(){rootResources={}},StaticResource.prototype.filenameTranslateDictionary=function(){return this._filenameTranslateDictionary||{}},exports.StaticResource=StaticResource,StaticResource.prototype.resolve=function(){if(this.isDirectory()){var e=new CFBundle(this.URL());e.onerror=function(){},e.load(NO)}else{var t=this;var r=this.URL(),n=this.filenameTranslateDictionary();if(n){var s=r.toString(),i=r.lastPathComponent(),o=s.substring(0,s.length-i.length),a=n[i];a&&s.slice(-a.length)!==a&&(r=new CFURL(o+a))}new FileRequest(r,function(e){t._contents=e.request.responseText(),resolveStaticResource(t)},function(){t._isNotFound=YES,resolveStaticResource(t)})}},StaticResource.prototype.name=function(){return this._name},StaticResource.prototype.URL=function(){return this._URL},StaticResource.prototype.contents=function(){return this._contents},StaticResource.prototype.children=function(){return this._children},StaticResource.prototype.parent=function(){return this._parent},StaticResource.prototype.isResolved=function(){return this._isResolved},StaticResource.prototype.write=function(e){this._contents+=e},StaticResource.resourceAtURL=function(e,t){for(var r=rootResourceForAbsoluteURL(e=makeAbsoluteURL(e).absoluteURL()),n=e.pathComponents(),s=0,i=n.length;s<i;++s){var o=n[s];if(hasOwnProperty.call(r._children,o))r=r._children[o];else{if(!t)throw new Error("Static Resource at "+e+' is not resolved ("'+o+'")');"/"!==o&&(o="./"+o),r=new StaticResource(new CFURL(o,r.URL()),r,YES,YES)}}return r},StaticResource.prototype.resourceAtURL=function(e,t){return StaticResource.resourceAtURL(new CFURL(e,this.URL()),t)},StaticResource.resolveResourcesAtURLs=function(e,t){for(var r=e.length,n={},s=0,i=r;s<i;s++){var o=e[s];StaticResource.resolveResourceAtURL(o,NO,function(e){n[o]=e,0===--r&&t(n)})}},StaticResource.resolveResourceAtURL=function(e,t,r,n){resolveResourceComponents(rootResourceForAbsoluteURL(e=makeAbsoluteURL(e).absoluteURL()),t,e.pathComponents(),0,r,n)},StaticResource.prototype.resolveResourceAtURL=function(e,t,r){StaticResource.resolveResourceAtURL(new CFURL(e,this.URL()).absoluteURL(),t,r)},StaticResource.resolveResourceAtURLSearchingIncludeURLs=function(e,t){resolveResourceAtURLSearchingIncludeURLs(e,0,t)},StaticResource.prototype.addEventListener=function(e,t){this._eventDispatcher.addEventListener(e,t)},StaticResource.prototype.removeEventListener=function(e,t){this._eventDispatcher.removeEventListener(e,t)},StaticResource.prototype.isNotFound=function(){return this._isNotFound},StaticResource.prototype.isFile=function(){return!this._isDirectory},StaticResource.prototype.isDirectory=function(){return this._isDirectory},StaticResource.prototype.toString=function(e){if(this.isNotFound())return"<file not found: "+this.name()+">";var t=this.name();if(this.isDirectory()){var r=this._children;for(var n in r)if(r.hasOwnProperty(n)){var s=r[n];!e&&s.isNotFound()||(t+="\n\t"+r[n].toString(e).split("\n").join("\n\t"))}}return t};var includeURLs=NULL;StaticResource.includeURLs=function(){if(includeURLs!==NULL)return includeURLs;includeURLs=[];for(var e=(includeURLs=global.OBJJ_INCLUDE_PATHS||global.OBJJ_INCLUDE_URLS?(global.OBJJ_INCLUDE_PATHS||[]).concat(global.OBJJ_INCLUDE_URLS||[]):["Frameworks","Frameworks/Debug"]).length;e--;)includeURLs[e]=new CFURL(includeURLs[e]).asDirectoryPathURL();return includeURLs};var TOKEN_ACCESSORS="accessors",TOKEN_CLASS="class",TOKEN_END="end",TOKEN_FUNCTION="function",TOKEN_IMPLEMENTATION="implementation",TOKEN_IMPORT="import",TOKEN_EACH="each",TOKEN_OUTLET="outlet",TOKEN_ACTION="action",TOKEN_NEW="new",TOKEN_SELECTOR="selector",TOKEN_SUPER="super",TOKEN_VAR="var",TOKEN_IN="in",TOKEN_PRAGMA="pragma",TOKEN_MARK="mark",TOKEN_EQUAL="=",TOKEN_PLUS="+",TOKEN_MINUS="-",TOKEN_COLON=":",TOKEN_COMMA=",",TOKEN_PERIOD=".",TOKEN_ASTERISK="*",TOKEN_SEMICOLON=";",TOKEN_LESS_THAN="<",TOKEN_OPEN_BRACE="{",TOKEN_CLOSE_BRACE="}",TOKEN_GREATER_THAN=">",TOKEN_OPEN_BRACKET="[",TOKEN_DOUBLE_QUOTE='"',TOKEN_PREPROCESSOR="@",TOKEN_HASH="#",TOKEN_CLOSE_BRACKET="]",TOKEN_QUESTION_MARK="?",TOKEN_OPEN_PARENTHESIS="(",TOKEN_CLOSE_PARENTHESIS=")",TOKEN_WHITESPACE=/^(?:(?:\s+$)|(?:\/(?:\/|\*)))/,TOKEN_NUMBER=/^[+-]?\d+(([.]\d+)*([eE][+-]?\d+))?$/,TOKEN_IDENTIFIER=/^[a-zA-Z_$](\w|$)*$/;function Lexer(e){return this._index=-1,this._tokens=(e+"\n").match(/\/\/.*(\r|\n)?|\/\*(?:.|\n|\r)*?\*\/|\w+\b|[+-]?\d+(([.]\d+)*([eE][+-]?\d+))?|"[^"\\]*(\\[\s\S][^"\\]*)*"|'[^'\\]*(\\[\s\S][^'\\]*)*'|\s+|./g),this._context=[],this}function StringBuffer(){this.atoms=[]}Lexer.prototype.push=function(){this._context.push(this._index)},Lexer.prototype.pop=function(){this._index=this._context.pop()},Lexer.prototype.peek=function(e){if(e){this.push();var t=this.skip_whitespace();return this.pop(),t}return this._tokens[this._index+1]},Lexer.prototype.next=function(){return this._tokens[++this._index]},Lexer.prototype.previous=function(){return this._tokens[--this._index]},Lexer.prototype.last=function(){return this._index<0?NULL:this._tokens[this._index-1]},Lexer.prototype.skip_whitespace=function(e){var t;if(e)for(;(t=this.previous())&&TOKEN_WHITESPACE.test(t););else for(;(t=this.next())&&TOKEN_WHITESPACE.test(t););return t},exports.Lexer=Lexer,StringBuffer.prototype.toString=function(){return this.atoms.join("")},exports.preprocess=function(e,t,r){return new Preprocessor(e,t,r).executable()},exports.eval=function(aString){return eval(exports.preprocess(aString).code())};var Preprocessor=function(e,t,r){this._URL=new CFURL(t),e=e.replace(/^#[^\n]+\n/,"\n"),this._currentSelector="",this._currentClass="",this._currentSuperClass="",this._currentSuperMetaClass="",this._buffer=new StringBuffer,this._preprocessed=NULL,this._dependencies=[],this._tokens=new Lexer(e),this._flags=r,this._classMethod=!1,this._executable=NULL,this._classLookupTable={},this._classVars={};var n=new objj_class;for(var s in n)this._classVars[s]=1;this.preprocess(this._tokens,this._buffer)},root,factory;function FileDependency(e,t){this._URL=e,this._isLocal=t}Preprocessor.prototype.setClassInfo=function(e,t,r){this._classLookupTable[e]={superClassName:t,ivars:r}},Preprocessor.prototype.getClassInfo=function(e){return this._classLookupTable[e]},Preprocessor.prototype.allIvarNamesForClassName=function(e){for(var t={},r=this.getClassInfo(e);r;){for(var n in r.ivars)t[n]=1;r=this.getClassInfo(r.superClassName)}return t},exports.Preprocessor=Preprocessor,Preprocessor.Flags={},Preprocessor.Flags.IncludeDebugSymbols=1,Preprocessor.Flags.IncludeTypeSignatures=2,Preprocessor.prototype.executable=function(){return this._executable||(this._executable=new Executable(this._buffer.toString(),this._dependencies,this._URL)),this._executable},Preprocessor.prototype.accessors=function(e){var t=e.skip_whitespace(),r={};if(t!=TOKEN_OPEN_PARENTHESIS)return e.previous(),r;for(;(t=e.skip_whitespace())!=TOKEN_CLOSE_PARENTHESIS;){var n=t,s=!0;if(!/^\w+$/.test(n))throw new SyntaxError(this.error_message("*** @accessors attribute name not valid."));if((t=e.skip_whitespace())==TOKEN_EQUAL){if(s=e.skip_whitespace(),!/^\w+$/.test(s))throw new SyntaxError(this.error_message("*** @accessors attribute value not valid."));if("setter"==n){if((t=e.next())!=TOKEN_COLON)throw new SyntaxError(this.error_message('*** @accessors setter attribute requires argument with ":" at end of selector name.'));s+=":"}t=e.skip_whitespace()}if(r[n]=s,t==TOKEN_CLOSE_PARENTHESIS)break;if(t!=TOKEN_COMMA)throw new SyntaxError(this.error_message("*** Expected ',' or ')' in @accessors attribute list."))}return r},Preprocessor.prototype.brackets=function(e,t){for(var r=[];this.preprocess(e,NULL,NULL,NULL,r[r.length]=[]););if(1===r[0].length)t.atoms[t.atoms.length]="[",t.atoms[t.atoms.length]=r[0][0],t.atoms[t.atoms.length]="]";else{var n=new StringBuffer;r[0][0].atoms[0]==TOKEN_SUPER?(t.atoms[t.atoms.length]="objj_msgSendSuper(",t.atoms[t.atoms.length]="{ receiver:self, super_class:"+(this._classMethod?this._currentSuperMetaClass:this._currentSuperClass)+" }"):(t.atoms[t.atoms.length]="objj_msgSend(",t.atoms[t.atoms.length]=r[0][0]),n.atoms[n.atoms.length]=r[0][1];for(var s=1,i=r.length,o=new StringBuffer;s<i;++s){var a=r[s];n.atoms[n.atoms.length]=a[1],o.atoms[o.atoms.length]=", "+a[0]}t.atoms[t.atoms.length]=', "',t.atoms[t.atoms.length]=n,t.atoms[t.atoms.length]='"',t.atoms[t.atoms.length]=o,t.atoms[t.atoms.length]=")"}},Preprocessor.prototype.directive=function(e,t,r){var n=t||new StringBuffer,s=e.next();if(s.charAt(0)==TOKEN_DOUBLE_QUOTE)n.atoms[n.atoms.length]=s;else{if(s===TOKEN_CLASS)return void e.skip_whitespace();s===TOKEN_IMPLEMENTATION?this.implementation(e,n):s===TOKEN_IMPORT?this._import(e):s===TOKEN_SELECTOR&&this.selector(e,n)}if(!t)return n},Preprocessor.prototype.hash=function(e,t){t||new StringBuffer;var r=e.next();if(r!==TOKEN_PRAGMA)throw new SyntaxError(this.error_message('*** Expected "pragma" to follow # but instead saw "'+r+'".'));if((r=e.skip_whitespace())===TOKEN_MARK)for(;(r=e.next()).indexOf("\n")<0;);},Preprocessor.prototype.implementation=function(e,t){var r=t,n="",s=(NO,e.skip_whitespace()),i="Nil",o=new StringBuffer,a=new StringBuffer;if(!/^\w/.test(s))throw new Error(this.error_message('*** Expected class name, found "'+s+'".'));if(this._currentSuperClass='objj_getClass("'+s+'").super_class',this._currentSuperMetaClass='objj_getMetaClass("'+s+'").super_class',this._currentClass=s,this._currentSelector="",(n=e.skip_whitespace())==TOKEN_OPEN_PARENTHESIS){if((n=e.skip_whitespace())==TOKEN_CLOSE_PARENTHESIS)throw new SyntaxError(this.error_message("*** Can't Have Empty Category Name for class \""+s+'".'));if(e.skip_whitespace()!=TOKEN_CLOSE_PARENTHESIS)throw new SyntaxError(this.error_message('*** Improper Category Definition for class "'+s+'".'));r.atoms[r.atoms.length]='{\nvar the_class = objj_getClass("'+s+'")\n',r.atoms[r.atoms.length]='if(!the_class) throw new SyntaxError("*** Could not find definition for class \\"'+s+'\\"");\n',r.atoms[r.atoms.length]="var meta_class = the_class.isa;"}else{if(n==TOKEN_COLON){if(n=e.skip_whitespace(),!TOKEN_IDENTIFIER.test(n))throw new SyntaxError(this.error_message('*** Expected class name, found "'+n+'".'));i=n,n=e.skip_whitespace()}if(r.atoms[r.atoms.length]="{var the_class = objj_allocateClassPair("+i+', "'+s+'"),\nmeta_class = the_class.isa;',n==TOKEN_OPEN_BRACE){for(var c,l={},p=0,u=[],h={},d=[];(n=e.skip_whitespace())&&n!=TOKEN_CLOSE_BRACE;)if(n===TOKEN_PREPROCESSOR)if((n=e.next())===TOKEN_ACCESSORS)c=this.accessors(e);else{if(n!==TOKEN_OUTLET)throw new SyntaxError(this.error_message("*** Unexpected '@' token in ivar declaration ('@"+n+"')."));d.push("@"+n)}else if(n==TOKEN_SEMICOLON){0===p++?r.atoms[r.atoms.length]="class_addIvars(the_class, [":r.atoms[r.atoms.length]=", ";var f=u[u.length-1];this._flags&Preprocessor.Flags.IncludeTypeSignatures?r.atoms[r.atoms.length]='new objj_ivar("'+f+'", "'+d.slice(0,d.length-1).join(" ")+'")':r.atoms[r.atoms.length]='new objj_ivar("'+f+'")',l[f]=1,u=[],d=[],c&&(h[f]=c,c=NULL)}else u.push(n),d.push(n);if(u.length)throw new SyntaxError(this.error_message("*** Expected ';' in ivar declaration, found '}'."));if(p&&(r.atoms[r.atoms.length]="]);\n"),!n)throw new SyntaxError(this.error_message("*** Expected '}'"));this.setClassInfo(s,"Nil"===i?null:i,l);l=this.allIvarNamesForClassName(s);for(ivar_name in h){var m=h[ivar_name],g=m.property||ivar_name,_="(id)"+(m.getter||g)+"\n{\nreturn "+ivar_name+";\n}";if(0!==o.atoms.length&&(o.atoms[o.atoms.length]=",\n"),o.atoms[o.atoms.length]=this.method(new Lexer(_),l),!m.readonly){var y=m.setter;if(!y){var v="_"==g.charAt(0)?1:0;y=(v?"_":"")+"set"+g.substr(v,1).toUpperCase()+g.substring(v+1)+":"}var S="(void)"+y+"(id)newValue\n{\n";m.copy?S+="if ("+ivar_name+" !== newValue)\n"+ivar_name+" = [newValue copy];\n}":S+=ivar_name+" = newValue;\n}",0!==o.atoms.length&&(o.atoms[o.atoms.length]=",\n"),o.atoms[o.atoms.length]=this.method(new Lexer(S),l)}}}else e.previous();r.atoms[r.atoms.length]="objj_registerClassPair(the_class);\n"}if(!l)l=this.allIvarNamesForClassName(s);for(;n=e.skip_whitespace();)if(n==TOKEN_PLUS)this._classMethod=!0,0!==a.atoms.length&&(a.atoms[a.atoms.length]=", "),a.atoms[a.atoms.length]=this.method(e,this._classVars);else if(n==TOKEN_MINUS)this._classMethod=!1,0!==o.atoms.length&&(o.atoms[o.atoms.length]=", "),o.atoms[o.atoms.length]=this.method(e,l);else if(n==TOKEN_HASH)this.hash(e,r);else if(n==TOKEN_PREPROCESSOR){if((n=e.next())==TOKEN_END)break;throw new SyntaxError(this.error_message('*** Expected "@end", found "@'+n+'".'))}0!==o.atoms.length&&(r.atoms[r.atoms.length]="class_addMethods(the_class, [",r.atoms[r.atoms.length]=o,r.atoms[r.atoms.length]="]);\n"),0!==a.atoms.length&&(r.atoms[r.atoms.length]="class_addMethods(meta_class, [",r.atoms[r.atoms.length]=a,r.atoms[r.atoms.length]="]);\n"),r.atoms[r.atoms.length]="}",this._currentClass=""},Preprocessor.prototype._import=function(e){var t="",r=e.skip_whitespace(),n=r!==TOKEN_LESS_THAN;if(r===TOKEN_LESS_THAN){for(;(r=e.next())&&r!==TOKEN_GREATER_THAN;)t+=r;if(!r)throw new SyntaxError(this.error_message("*** Unterminated import statement."))}else{if(r.charAt(0)!==TOKEN_DOUBLE_QUOTE)throw new SyntaxError(this.error_message("*** Expecting '<' or '\"', found \""+r+'".'));t=r.substr(1,r.length-2)}this._buffer.atoms[this._buffer.atoms.length]='objj_executeFile("',this._buffer.atoms[this._buffer.atoms.length]=t,this._buffer.atoms[this._buffer.atoms.length]=n?'", YES);':'", NO);',this._dependencies.push(new FileDependency(new CFURL(t),n))},Preprocessor.prototype.method=function(e,t){var r,n=new StringBuffer,s="",i=[],o=[null];for(t=t||{};(r=e.skip_whitespace())&&r!==TOKEN_OPEN_BRACE&&r!==TOKEN_SEMICOLON;)if(r==TOKEN_COLON){var a="";if(s+=r,(r=e.skip_whitespace())==TOKEN_OPEN_PARENTHESIS){for(;(r=e.skip_whitespace())&&r!=TOKEN_CLOSE_PARENTHESIS;)a+=r;r=e.skip_whitespace()}o[i.length+1]=a||null,i[i.length]=r,r in t&&CPLog.warn(this.error_message("*** Warning: Method ( "+s+" ) uses a parameter name that is already in use ( "+r+" )"))}else if(r==TOKEN_OPEN_PARENTHESIS){for(a="";(r=e.skip_whitespace())&&r!=TOKEN_CLOSE_PARENTHESIS;)a+=r;o[0]=a||null}else if(r==TOKEN_COMMA){if((r=e.skip_whitespace())!=TOKEN_PERIOD||e.next()!=TOKEN_PERIOD||e.next()!=TOKEN_PERIOD)throw new SyntaxError(this.error_message("*** Argument list expected after ','."))}else s+=r;if(r===TOKEN_SEMICOLON&&(r=e.skip_whitespace())!==TOKEN_OPEN_BRACE)throw new SyntaxError(this.error_message("Invalid semi-colon in method declaration. Semi-colons are allowed only to terminate the method signature, before the open brace."));var c=0,l=i.length;for(n.atoms[n.atoms.length]='new objj_method(sel_getUid("',n.atoms[n.atoms.length]=s,n.atoms[n.atoms.length]='"), function',this._currentSelector=s,this._flags&Preprocessor.Flags.IncludeDebugSymbols&&(n.atoms[n.atoms.length]=" $"+this._currentClass+"__"+s.replace(/:/g,"_")),n.atoms[n.atoms.length]="(self, _cmd";c<l;++c)n.atoms[n.atoms.length]=", ",n.atoms[n.atoms.length]=i[c];return n.atoms[n.atoms.length]=")\n{ with(self)\n{",n.atoms[n.atoms.length]=this.preprocess(e,NULL,TOKEN_CLOSE_BRACE,TOKEN_OPEN_BRACE),n.atoms[n.atoms.length]="}\n}",this._flags&Preprocessor.Flags.IncludeDebugSymbols&&(n.atoms[n.atoms.length]=","+JSON.stringify(o)),n.atoms[n.atoms.length]=")",this._currentSelector="",n},Preprocessor.prototype.preprocess=function(e,t,r,n,s){var i=t||new StringBuffer,o=0,a="";if(s){s[0]=i;var c=!1,l=[0,0,0]}for(;(a=e.next())&&(a!==r||o);){if(s){if(a===TOKEN_QUESTION_MARK)++l[2];else if(a===TOKEN_OPEN_BRACE)++l[0];else if(a===TOKEN_CLOSE_BRACE)--l[0];else if(a===TOKEN_OPEN_PARENTHESIS)++l[1];else if(a===TOKEN_CLOSE_PARENTHESIS)--l[1];else if((a===TOKEN_COLON&&0===l[2]--||(c=a===TOKEN_CLOSE_BRACKET))&&0===l[0]&&0===l[1]){e.push();var p=c?e.skip_whitespace(!0):e.previous(),u=TOKEN_WHITESPACE.test(p);if(u||TOKEN_IDENTIFIER.test(p)&&TOKEN_WHITESPACE.test(e.previous())){e.push();var h=e.skip_whitespace(!0),d=!0,f=!1;if("+"!==h&&"-"!==h||(e.previous()!==h?d=!1:(h=e.skip_whitespace(!0),f=!0)),e.pop(),e.pop(),d&&(!f&&h===TOKEN_CLOSE_BRACE||h===TOKEN_CLOSE_PARENTHESIS||h===TOKEN_CLOSE_BRACKET||h===TOKEN_PERIOD||TOKEN_NUMBER.test(h)||'"'===h.charAt(h.length-1)||"'"===h.charAt(h.length-1)||TOKEN_IDENTIFIER.test(h)&&!/^(new|return|case|var)$/.test(h))){if(u)s[1]=":";else{s[1]=p,c||(s[1]+=":");for(o=i.atoms.length;i.atoms[o--]!==p;);i.atoms.length=o}return!c}if(c)return NO}if(e.pop(),c)return NO}l[2]=MAX(l[2],0)}if(n&&(a===n?++o:a===r&&--o),a===TOKEN_FUNCTION){for(var m="";(a=e.next())&&a!==TOKEN_OPEN_PARENTHESIS&&!/^\w/.test(a);)m+=a;a===TOKEN_OPEN_PARENTHESIS?(n===TOKEN_OPEN_PARENTHESIS&&++o,i.atoms[i.atoms.length]="function"+m+"(",s&&++l[1]):i.atoms[i.atoms.length]=a+" = function"}else a==TOKEN_PREPROCESSOR?this.directive(e,i):a==TOKEN_HASH?this.hash(e,i):a==TOKEN_OPEN_BRACKET?this.brackets(e,i):i.atoms[i.atoms.length]=a}if(s)throw new SyntaxError(this.error_message("*** Expected ']' - Unterminated message send or array."));if(!t)return i},Preprocessor.prototype.selector=function(e,t){var r=t||new StringBuffer;if(r.atoms[r.atoms.length]='sel_getUid("',e.skip_whitespace()!=TOKEN_OPEN_PARENTHESIS)throw new SyntaxError(this.error_message("*** Expected '('"));var n=e.skip_whitespace();if(n==TOKEN_CLOSE_PARENTHESIS)throw new SyntaxError(this.error_message("*** Unexpected ')', can't have empty @selector()"));t.atoms[t.atoms.length]=n;for(var s,i=!0;(s=e.next())&&s!=TOKEN_CLOSE_PARENTHESIS;){if(i&&/^\d+$/.test(s)||!/^(\w|$|\:)/.test(s)){if(/\S/.test(s))throw new SyntaxError(this.error_message("*** Illegal character '"+s+"' in @selector()."));if(e.skip_whitespace()==TOKEN_CLOSE_PARENTHESIS)break;throw new SyntaxError(this.error_message("*** Unexpected whitespace in @selector()."))}r.atoms[r.atoms.length]=s,i=s==TOKEN_COLON}if(r.atoms[r.atoms.length]='")',!t)return r},Preprocessor.prototype.error_message=function(e){return e+" <Context File: "+this._URL+(this._currentClass?" Class: "+this._currentClass:"")+(this._currentSelector?" Method: "+this._currentSelector:"")+">"},root=this,factory=function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var s=t[n]={exports:{},id:n,loaded:!1};return e[n].call(s.exports,s,s.exports,r),s.loaded=!0,s.exports}return r.m=e,r.c=t,r.p="",r(0)}([function(e,t,r){t.SourceMapGenerator=r(1).SourceMapGenerator,t.SourceMapConsumer=r(7).SourceMapConsumer,t.SourceNode=r(10).SourceNode},function(e,t,r){var n=r(2),s=r(4),i=r(5).ArraySet,o=r(6).MappingList;function a(e){e||(e={}),this._file=s.getArg(e,"file",null),this._sourceRoot=s.getArg(e,"sourceRoot",null),this._skipValidation=s.getArg(e,"skipValidation",!1),this._sources=new i,this._names=new i,this._mappings=new o,this._sourcesContents=null}a.prototype._version=3,a.fromSourceMap=function(e){var t=e.sourceRoot,r=new a({file:e.file,sourceRoot:t});return e.eachMapping(function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(n.source=e.source,null!=t&&(n.source=s.relative(t,n.source)),n.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(n.name=e.name)),r.addMapping(n)}),e.sources.forEach(function(t){var n=e.sourceContentFor(t);null!=n&&r.setSourceContent(t,n)}),r},a.prototype.addMapping=function(e){var t=s.getArg(e,"generated"),r=s.getArg(e,"original",null),n=s.getArg(e,"source",null),i=s.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,r,n,i),null!=n&&(n=String(n),this._sources.has(n)||this._sources.add(n)),null!=i&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=r&&r.line,originalColumn:null!=r&&r.column,source:n,name:i})},a.prototype.setSourceContent=function(e,t){var r=e;null!=this._sourceRoot&&(r=s.relative(this._sourceRoot,r)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[s.toSetString(r)]=t):this._sourcesContents&&(delete this._sourcesContents[s.toSetString(r)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},a.prototype.applySourceMap=function(e,t,r){var n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}var o=this._sourceRoot;null!=o&&(n=s.relative(o,n));var a=new i,c=new i;this._mappings.unsortedForEach(function(t){if(t.source===n&&null!=t.originalLine){var i=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=i.source&&(t.source=i.source,null!=r&&(t.source=s.join(r,t.source)),null!=o&&(t.source=s.relative(o,t.source)),t.originalLine=i.line,t.originalColumn=i.column,null!=i.name&&(t.name=i.name))}var l=t.source;null==l||a.has(l)||a.add(l);var p=t.name;null==p||c.has(p)||c.add(p)},this),this._sources=a,this._names=c,e.sources.forEach(function(t){var n=e.sourceContentFor(t);null!=n&&(null!=r&&(t=s.join(r,t)),null!=o&&(t=s.relative(o,t)),this.setSourceContent(t,n))},this)},a.prototype._validateMapping=function(e,t,r,n){if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||r||n)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))},a.prototype._serializeMappings=function(){for(var e,t,r,i,o=0,a=1,c=0,l=0,p=0,u=0,h="",d=this._mappings.toArray(),f=0,m=d.length;f<m;f++){if(e="",(t=d[f]).generatedLine!==a)for(o=0;t.generatedLine!==a;)e+=";",a++;else if(f>0){if(!s.compareByGeneratedPositionsInflated(t,d[f-1]))continue;e+=","}e+=n.encode(t.generatedColumn-o),o=t.generatedColumn,null!=t.source&&(i=this._sources.indexOf(t.source),e+=n.encode(i-u),u=i,e+=n.encode(t.originalLine-1-l),l=t.originalLine-1,e+=n.encode(t.originalColumn-c),c=t.originalColumn,null!=t.name&&(r=this._names.indexOf(t.name),e+=n.encode(r-p),p=r)),h+=e}return h},a.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;null!=t&&(e=s.relative(t,e));var r=s.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null},this)},a.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},a.prototype.toString=function(){return JSON.stringify(this.toJSON())},t.SourceMapGenerator=a},function(e,t,r){var n=r(3);t.encode=function(e){var t,r="",s=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&s,(s>>>=5)>0&&(t|=32),r+=n.encode(t)}while(s>0);return r},t.decode=function(e,t,r){var s,i,o,a,c=e.length,l=0,p=0;do{if(t>=c)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(i=n.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));s=!!(32&i),l+=(i&=31)<<p,p+=5}while(s);r.value=(a=(o=l)>>1,1&~o?a:-a),r.rest=t}},function(e,t){var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&e<r.length)return r[e];throw new TypeError("Must be between 0 and 63: "+e)},t.decode=function(e){return 65<=e&&e<=90?e-65:97<=e&&e<=122?e-97+26:48<=e&&e<=57?e-48+52:43==e?62:47==e?63:-1}},function(e,t){t.getArg=function(e,t,r){if(t in e)return e[t];if(3===arguments.length)return r;throw new Error('"'+t+'" is a required argument.')};var r=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,n=/^data:.+\,.+$/;function s(e){var t=e.match(r);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 o(e){var r=e,n=s(e);if(n){if(!n.path)return e;r=n.path}for(var o,a=t.isAbsolute(r),c=r.split(/\/+/),l=0,p=c.length-1;p>=0;p--)"."===(o=c[p])?c.splice(p,1):".."===o?l++:l>0&&(""===o?(c.splice(p+1,l),l=0):(c.splice(p,2),l--));return""===(r=c.join("/"))&&(r=a?"/":"."),n?(n.path=r,i(n)):r}t.urlParse=s,t.urlGenerate=i,t.normalize=o,t.join=function(e,t){""===e&&(e="."),""===t&&(t=".");var r=s(t),a=s(e);if(a&&(e=a.path||"/"),r&&!r.scheme)return a&&(r.scheme=a.scheme),i(r);if(r||t.match(n))return t;if(a&&!a.host&&!a.path)return a.host=t,i(a);var c="/"===t.charAt(0)?t:o(e.replace(/\/+$/,"")+"/"+t);return a?(a.path=c,i(a)):c},t.isAbsolute=function(e){return"/"===e.charAt(0)||!!e.match(r)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var r=0;0!==t.indexOf(e+"/");){var n=e.lastIndexOf("/");if(n<0)return t;if((e=e.slice(0,n)).match(/^([^\/]+:\/)?\/*$/))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)};var a=!("__proto__"in Object.create(null));function c(e){return e}function l(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var r=t-10;r>=0;r--)if(36!==e.charCodeAt(r))return!1;return!0}function p(e,t){return e===t?0:e>t?1:-1}t.toSetString=a?c:function(e){return l(e)?"$"+e:e},t.fromSetString=a?c:function(e){return l(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,r){var n=e.source-t.source;return 0!==n||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)||r||0!==(n=e.generatedColumn-t.generatedColumn)||0!==(n=e.generatedLine-t.generatedLine)?n:e.name-t.name},t.compareByGeneratedPositionsDeflated=function(e,t,r){var n=e.generatedLine-t.generatedLine;return 0!==n||0!==(n=e.generatedColumn-t.generatedColumn)||r||0!==(n=e.source-t.source)||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:e.name-t.name},t.compareByGeneratedPositionsInflated=function(e,t){var r=e.generatedLine-t.generatedLine;return 0!==r||0!==(r=e.generatedColumn-t.generatedColumn)||0!==(r=p(e.source,t.source))||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)?r:p(e.name,t.name)}},function(e,t,r){var n=r(4),s=Object.prototype.hasOwnProperty;function i(){this._array=[],this._set=Object.create(null)}i.fromArray=function(e,t){for(var r=new i,n=0,s=e.length;n<s;n++)r.add(e[n],t);return r},i.prototype.size=function(){return Object.getOwnPropertyNames(this._set).length},i.prototype.add=function(e,t){var r=n.toSetString(e),i=s.call(this._set,r),o=this._array.length;i&&!t||this._array.push(e),i||(this._set[r]=o)},i.prototype.has=function(e){var t=n.toSetString(e);return s.call(this._set,t)},i.prototype.indexOf=function(e){var t=n.toSetString(e);if(s.call(this._set,t))return this._set[t];throw new Error('"'+e+'" is not in the set.')},i.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},i.prototype.toArray=function(){return this._array.slice()},t.ArraySet=i},function(e,t,r){var n=r(4);function s(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}s.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},s.prototype.add=function(e){var t,r,s,i,o,a;t=this._last,r=e,s=t.generatedLine,i=r.generatedLine,o=t.generatedColumn,a=r.generatedColumn,i>s||i==s&&a>=o||n.compareByGeneratedPositionsInflated(t,r)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},s.prototype.toArray=function(){return this._sorted||(this._array.sort(n.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},t.MappingList=s},function(e,t,r){var n=r(4),s=r(8),i=r(5).ArraySet,o=r(2),a=r(9).quickSort;function c(e){var t=e;return"string"==typeof e&&(t=JSON.parse(e.replace(/^\)\]\}'/,""))),null!=t.sections?new u(t):new l(t)}function l(e){var t=e;"string"==typeof e&&(t=JSON.parse(e.replace(/^\)\]\}'/,"")));var r=n.getArg(t,"version"),s=n.getArg(t,"sources"),o=n.getArg(t,"names",[]),a=n.getArg(t,"sourceRoot",null),c=n.getArg(t,"sourcesContent",null),l=n.getArg(t,"mappings"),p=n.getArg(t,"file",null);if(r!=this._version)throw new Error("Unsupported version: "+r);s=s.map(String).map(n.normalize).map(function(e){return a&&n.isAbsolute(a)&&n.isAbsolute(e)?n.relative(a,e):e}),this._names=i.fromArray(o.map(String),!0),this._sources=i.fromArray(s,!0),this.sourceRoot=a,this.sourcesContent=c,this._mappings=l,this.file=p}function p(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function u(e){var t=e;"string"==typeof e&&(t=JSON.parse(e.replace(/^\)\]\}'/,"")));var r=n.getArg(t,"version"),s=n.getArg(t,"sections");if(r!=this._version)throw new Error("Unsupported version: "+r);this._sources=new i,this._names=new i;var o={line:-1,column:0};this._sections=s.map(function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var t=n.getArg(e,"offset"),r=n.getArg(t,"line"),s=n.getArg(t,"column");if(r<o.line||r===o.line&&s<o.column)throw new Error("Section offsets must be ordered and non-overlapping.");return o=t,{generatedOffset:{generatedLine:r+1,generatedColumn:s+1},consumer:new c(n.getArg(e,"map"))}})}c.fromSourceMap=function(e){return l.fromSourceMap(e)},c.prototype._version=3,c.prototype.__generatedMappings=null,Object.defineProperty(c.prototype,"_generatedMappings",{get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),c.prototype.__originalMappings=null,Object.defineProperty(c.prototype,"_originalMappings",{get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),c.prototype._charIsMappingSeparator=function(e,t){var r=e.charAt(t);return";"===r||","===r},c.prototype._parseMappings=function(e,t){throw new Error("Subclasses must implement _parseMappings")},c.GENERATED_ORDER=1,c.ORIGINAL_ORDER=2,c.GREATEST_LOWER_BOUND=1,c.LEAST_UPPER_BOUND=2,c.prototype.eachMapping=function(e,t,r){var s,i=t||null;switch(r||c.GENERATED_ORDER){case c.GENERATED_ORDER:s=this._generatedMappings;break;case c.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var o=this.sourceRoot;s.map(function(e){var t=null===e.source?null:this._sources.at(e.source);return null!=t&&null!=o&&(t=n.join(o,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:null===e.name?null:this._names.at(e.name)}},this).forEach(e,i)},c.prototype.allGeneratedPositionsFor=function(e){var t=n.getArg(e,"line"),r={source:n.getArg(e,"source"),originalLine:t,originalColumn:n.getArg(e,"column",0)};if(null!=this.sourceRoot&&(r.source=n.relative(this.sourceRoot,r.source)),!this._sources.has(r.source))return[];r.source=this._sources.indexOf(r.source);var i=[],o=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",n.compareByOriginalPositions,s.LEAST_UPPER_BOUND);if(o>=0){var a=this._originalMappings[o];if(e.column===undefined)for(var c=a.originalLine;a&&a.originalLine===c;)i.push({line:n.getArg(a,"generatedLine",null),column:n.getArg(a,"generatedColumn",null),lastColumn:n.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++o];else for(var l=a.originalColumn;a&&a.originalLine===t&&a.originalColumn==l;)i.push({line:n.getArg(a,"generatedLine",null),column:n.getArg(a,"generatedColumn",null),lastColumn:n.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++o]}return i},t.SourceMapConsumer=c,l.prototype=Object.create(c.prototype),l.prototype.consumer=c,l.fromSourceMap=function(e){var t=Object.create(l.prototype),r=t._names=i.fromArray(e._names.toArray(),!0),s=t._sources=i.fromArray(e._sources.toArray(),!0);t.sourceRoot=e._sourceRoot,t.sourcesContent=e._generateSourcesContent(t._sources.toArray(),t.sourceRoot),t.file=e._file;for(var o=e._mappings.toArray().slice(),c=t.__generatedMappings=[],u=t.__originalMappings=[],h=0,d=o.length;h<d;h++){var f=o[h],m=new p;m.generatedLine=f.generatedLine,m.generatedColumn=f.generatedColumn,f.source&&(m.source=s.indexOf(f.source),m.originalLine=f.originalLine,m.originalColumn=f.originalColumn,f.name&&(m.name=r.indexOf(f.name)),u.push(m)),c.push(m)}return a(t.__originalMappings,n.compareByOriginalPositions),t},l.prototype._version=3,Object.defineProperty(l.prototype,"sources",{get:function(){return this._sources.toArray().map(function(e){return null!=this.sourceRoot?n.join(this.sourceRoot,e):e},this)}}),l.prototype._parseMappings=function(e,t){for(var r,s,i,c,l,u=1,h=0,d=0,f=0,m=0,g=0,_=e.length,y=0,v={},S={},b=[],E=[];y<_;)if(";"===e.charAt(y))u++,y++,h=0;else if(","===e.charAt(y))y++;else{for((r=new p).generatedLine=u,c=y;c<_&&!this._charIsMappingSeparator(e,c);c++);if(i=v[s=e.slice(y,c)])y+=s.length;else{for(i=[];y<c;)o.decode(e,y,S),l=S.value,y=S.rest,i.push(l);if(2===i.length)throw new Error("Found a source, but no line and column");if(3===i.length)throw new Error("Found a source and line, but no column");v[s]=i}r.generatedColumn=h+i[0],h=r.generatedColumn,i.length>1&&(r.source=m+i[1],m+=i[1],r.originalLine=d+i[2],d=r.originalLine,r.originalLine+=1,r.originalColumn=f+i[3],f=r.originalColumn,i.length>4&&(r.name=g+i[4],g+=i[4])),E.push(r),"number"==typeof r.originalLine&&b.push(r)}a(E,n.compareByGeneratedPositionsDeflated),this.__generatedMappings=E,a(b,n.compareByOriginalPositions),this.__originalMappings=b},l.prototype._findMapping=function(e,t,r,n,i,o){if(e[r]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[r]);if(e[n]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[n]);return s.search(e,t,i,o)},l.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var r=this._generatedMappings[e+1];if(t.generatedLine===r.generatedLine){t.lastGeneratedColumn=r.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},l.prototype.originalPositionFor=function(e){var t={generatedLine:n.getArg(e,"line"),generatedColumn:n.getArg(e,"column")},r=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",n.compareByGeneratedPositionsDeflated,n.getArg(e,"bias",c.GREATEST_LOWER_BOUND));if(r>=0){var s=this._generatedMappings[r];if(s.generatedLine===t.generatedLine){var i=n.getArg(s,"source",null);null!==i&&(i=this._sources.at(i),null!=this.sourceRoot&&(i=n.join(this.sourceRoot,i)));var o=n.getArg(s,"name",null);return null!==o&&(o=this._names.at(o)),{source:i,line:n.getArg(s,"originalLine",null),column:n.getArg(s,"originalColumn",null),name:o}}}return{source:null,line:null,column:null,name:null}},l.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return null==e})},l.prototype.sourceContentFor=function(e,t){if(!this.sourcesContent)return null;if(null!=this.sourceRoot&&(e=n.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var r;if(null!=this.sourceRoot&&(r=n.urlParse(this.sourceRoot))){var s=e.replace(/^file:\/\//,"");if("file"==r.scheme&&this._sources.has(s))return this.sourcesContent[this._sources.indexOf(s)];if((!r.path||"/"==r.path)&&this._sources.has("/"+e))return this.sourcesContent[this._sources.indexOf("/"+e)]}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')},l.prototype.generatedPositionFor=function(e){var t=n.getArg(e,"source");if(null!=this.sourceRoot&&(t=n.relative(this.sourceRoot,t)),!this._sources.has(t))return{line:null,column:null,lastColumn:null};var r={source:t=this._sources.indexOf(t),originalLine:n.getArg(e,"line"),originalColumn:n.getArg(e,"column")},s=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",n.compareByOriginalPositions,n.getArg(e,"bias",c.GREATEST_LOWER_BOUND));if(s>=0){var i=this._originalMappings[s];if(i.source===r.source)return{line:n.getArg(i,"generatedLine",null),column:n.getArg(i,"generatedColumn",null),lastColumn:n.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},t.BasicSourceMapConsumer=l,u.prototype=Object.create(c.prototype),u.prototype.constructor=c,u.prototype._version=3,Object.defineProperty(u.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}}),u.prototype.originalPositionFor=function(e){var t={generatedLine:n.getArg(e,"line"),generatedColumn:n.getArg(e,"column")},r=s.search(t,this._sections,function(e,t){var r=e.generatedLine-t.generatedOffset.generatedLine;return r||e.generatedColumn-t.generatedOffset.generatedColumn}),i=this._sections[r];return i?i.consumer.originalPositionFor({line:t.generatedLine-(i.generatedOffset.generatedLine-1),column:t.generatedColumn-(i.generatedOffset.generatedLine===t.generatedLine?i.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},u.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(e){return e.consumer.hasContentsOfAllSources()})},u.prototype.sourceContentFor=function(e,t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r].consumer.sourceContentFor(e,!0);if(n)return n}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')},u.prototype.generatedPositionFor=function(e){for(var t=0;t<this._sections.length;t++){var r=this._sections[t];if(-1!==r.consumer.sources.indexOf(n.getArg(e,"source"))){var s=r.consumer.generatedPositionFor(e);if(s)return{line:s.line+(r.generatedOffset.generatedLine-1),column:s.column+(r.generatedOffset.generatedLine===s.line?r.generatedOffset.generatedColumn-1:0)}}}return{line:null,column:null}},u.prototype._parseMappings=function(e,t){this.__generatedMappings=[],this.__originalMappings=[];for(var r=0;r<this._sections.length;r++)for(var s=this._sections[r],i=s.consumer._generatedMappings,o=0;o<i.length;o++){var c=i[o],l=s.consumer._sources.at(c.source);null!==s.consumer.sourceRoot&&(l=n.join(s.consumer.sourceRoot,l)),this._sources.add(l),l=this._sources.indexOf(l);var p=s.consumer._names.at(c.name);this._names.add(p),p=this._names.indexOf(p);var u={source:l,generatedLine:c.generatedLine+(s.generatedOffset.generatedLine-1),generatedColumn:c.generatedColumn+(s.generatedOffset.generatedLine===c.generatedLine?s.generatedOffset.generatedColumn-1:0),originalLine:c.originalLine,originalColumn:c.originalColumn,name:p};this.__generatedMappings.push(u),"number"==typeof u.originalLine&&this.__originalMappings.push(u)}a(this.__generatedMappings,n.compareByGeneratedPositionsDeflated),a(this.__originalMappings,n.compareByOriginalPositions)},t.IndexedSourceMapConsumer=u},function(e,t){function r(e,n,s,i,o,a){var c=Math.floor((n-e)/2)+e,l=o(s,i[c],!0);return 0===l?c:l>0?n-c>1?r(c,n,s,i,o,a):a==t.LEAST_UPPER_BOUND?n<i.length?n:-1:c:c-e>1?r(e,c,s,i,o,a):a==t.LEAST_UPPER_BOUND?c:e<0?-1:e}t.GREATEST_LOWER_BOUND=1,t.LEAST_UPPER_BOUND=2,t.search=function(e,n,s,i){if(0===n.length)return-1;var o=r(-1,n.length,e,n,s,i||t.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&0===s(n[o],n[o-1],!0);)--o;return o}},function(e,t){function r(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function n(e,t,s,i){if(s<i){var o=s-1;r(e,(p=s,u=i,Math.round(p+Math.random()*(u-p))),i);for(var a=e[i],c=s;c<i;c++)t(e[c],a)<=0&&r(e,o+=1,c);r(e,o+1,c);var l=o+1;n(e,t,s,l-1),n(e,t,l+1,i)}var p,u}t.quickSort=function(e,t){n(e,t,0,e.length-1)}},function(e,t,r){var n=r(1).SourceMapGenerator,s=r(4),i=/(\r?\n)/,o="$$$isSourceNode$$$";function a(e,t,r,n,s){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==r?null:r,this.name=null==s?null:s,this[o]=!0,null!=n&&this.add(n)}a.fromStringWithSourceMap=function(e,t,r){var n=new a,o=e.split(i),c=function(){return o.shift()+(o.shift()||"")},l=1,p=0,u=null;return t.eachMapping(function(e){if(null!==u){if(!(l<e.generatedLine)){var t=(r=o[0]).substr(0,e.generatedColumn-p);return o[0]=r.substr(e.generatedColumn-p),p=e.generatedColumn,h(u,t),void(u=e)}h(u,c()),l++,p=0}for(;l<e.generatedLine;)n.add(c()),l++;if(p<e.generatedColumn){var r=o[0];n.add(r.substr(0,e.generatedColumn)),o[0]=r.substr(e.generatedColumn),p=e.generatedColumn}u=e},this),o.length>0&&(u&&h(u,c()),n.add(o.join(""))),t.sources.forEach(function(e){var i=t.sourceContentFor(e);null!=i&&(null!=r&&(e=s.join(r,e)),n.setSourceContent(e,i))}),n;function h(e,t){if(null===e||e.source===undefined)n.add(t);else{var i=r?s.join(r,e.source):e.source;n.add(new a(e.originalLine,e.originalColumn,i,t,e.name))}}},a.prototype.add=function(e){if(Array.isArray(e))e.forEach(function(e){this.add(e)},this);else{if(!e[o]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this},a.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[o]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},a.prototype.walk=function(e){for(var t,r=0,n=this.children.length;r<n;r++)(t=this.children[r])[o]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},a.prototype.join=function(e){var t,r,n=this.children.length;if(n>0){for(t=[],r=0;r<n-1;r++)t.push(this.children[r]),t.push(e);t.push(this.children[r]),this.children=t}return this},a.prototype.replaceRight=function(e,t){var r=this.children[this.children.length-1];return r[o]?r.replaceRight(e,t):"string"==typeof r?this.children[this.children.length-1]=r.replace(e,t):this.children.push("".replace(e,t)),this},a.prototype.setSourceContent=function(e,t){this.sourceContents[s.toSetString(e)]=t},a.prototype.walkSourceContents=function(e){for(var t=0,r=this.children.length;t<r;t++)this.children[t][o]&&this.children[t].walkSourceContents(e);var n=Object.keys(this.sourceContents);for(t=0,r=n.length;t<r;t++)e(s.fromSetString(n[t]),this.sourceContents[n[t]])},a.prototype.toString=function(){var e="";return this.walk(function(t){e+=t}),e},a.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},r=new n(e),s=!1,i=null,o=null,a=null,c=null;return this.walk(function(e,n){t.code+=e,null!==n.source&&null!==n.line&&null!==n.column?(i===n.source&&o===n.line&&a===n.column&&c===n.name||r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name}),i=n.source,o=n.line,a=n.column,c=n.name,s=!0):s&&(r.addMapping({generated:{line:t.line,column:t.column}}),i=null,s=!1);for(var l=0,p=e.length;l<p;l++)10===e.charCodeAt(l)?(t.line++,t.column=0,l+1===p?(i=null,s=!1):s&&r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name})):t.column++}),this.walkSourceContents(function(e,t){r.setSourceContent(e,t)}),{code:t.code,map:r}},t.SourceNode=a}])},"object"==typeof exports&&"object"==typeof module?module.exports=factory():"function"==typeof define&&define.amd?define([],factory):"object"==typeof exports?exports.sourceMap=factory():root.sourceMap=factory(),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).acorn=e.acorn||{},e.acorn.walk={}))}(this,function(e){"use strict";function t(e){return"string"==typeof e?function(t){return t===e}:e||function(){return!0}}var r=function(e,t){this.node=e,this.state=t};function n(e,t){var r=Object.create(t||a);for(var n in e)r[n]=e[n];return r}function s(e,t,r){r(e,t)}function i(e,t,r){}function o(e,t,r,n,s){if(null==e[t])throw new Error("No walker function defined for node type "+t);e[t](r,n,s)}var a={};a.Program=a.BlockStatement=a.StaticBlock=function(e,t,r){for(var n=0,s=e.body;n<s.length;n+=1){r(s[n],t,"Statement")}},a.Statement=s,a.EmptyStatement=i,a.ExpressionStatement=a.ParenthesizedExpression=a.ChainExpression=function(e,t,r){return r(e.expression,t,"Expression")},a.IfStatement=function(e,t,r){r(e.test,t,"Expression"),r(e.consequent,t,"Statement"),e.alternate&&r(e.alternate,t,"Statement")},a.LabeledStatement=function(e,t,r){return r(e.body,t,"Statement")},a.BreakStatement=a.ContinueStatement=i,a.WithStatement=function(e,t,r){r(e.object,t,"Expression"),r(e.body,t,"Statement")},a.SwitchStatement=function(e,t,r){r(e.discriminant,t,"Expression");for(var n=0,s=e.cases;n<s.length;n+=1){r(s[n],t)}},a.SwitchCase=function(e,t,r){e.test&&r(e.test,t,"Expression");for(var n=0,s=e.consequent;n<s.length;n+=1){r(s[n],t,"Statement")}},a.ReturnStatement=a.YieldExpression=a.AwaitExpression=function(e,t,r){e.argument&&r(e.argument,t,"Expression")},a.ThrowStatement=a.SpreadElement=function(e,t,r){return r(e.argument,t,"Expression")},a.TryStatement=function(e,t,r){r(e.block,t,"Statement"),e.handler&&r(e.handler,t),e.finalizer&&r(e.finalizer,t,"Statement")},a.CatchClause=function(e,t,r){e.param&&r(e.param,t,"Pattern"),r(e.body,t,"Statement")},a.WhileStatement=a.DoWhileStatement=function(e,t,r){r(e.test,t,"Expression"),r(e.body,t,"Statement")},a.ForStatement=function(e,t,r){e.init&&r(e.init,t,"ForInit"),e.test&&r(e.test,t,"Expression"),e.update&&r(e.update,t,"Expression"),r(e.body,t,"Statement")},a.ForInStatement=a.ForOfStatement=function(e,t,r){r(e.left,t,"ForInit"),r(e.right,t,"Expression"),r(e.body,t,"Statement")},a.ForInit=function(e,t,r){"VariableDeclaration"===e.type?r(e,t):r(e,t,"Expression")},a.DebuggerStatement=i,a.FunctionDeclaration=function(e,t,r){return r(e,t,"Function")},a.VariableDeclaration=function(e,t,r){for(var n=0,s=e.declarations;n<s.length;n+=1){r(s[n],t)}},a.VariableDeclarator=function(e,t,r){r(e.id,t,"Pattern"),e.init&&r(e.init,t,"Expression")},a.Function=function(e,t,r){e.id&&r(e.id,t,"Pattern");for(var n=0,s=e.params;n<s.length;n+=1){r(s[n],t,"Pattern")}r(e.body,t,e.expression?"Expression":"Statement")},a.Pattern=function(e,t,r){"Identifier"===e.type?r(e,t,"VariablePattern"):"MemberExpression"===e.type?r(e,t,"MemberPattern"):r(e,t)},a.VariablePattern=i,a.MemberPattern=s,a.RestElement=function(e,t,r){return r(e.argument,t,"Pattern")},a.ArrayPattern=function(e,t,r){for(var n=0,s=e.elements;n<s.length;n+=1){var i=s[n];i&&r(i,t,"Pattern")}},a.ObjectPattern=function(e,t,r){for(var n=0,s=e.properties;n<s.length;n+=1){var i=s[n];"Property"===i.type?(i.computed&&r(i.key,t,"Expression"),r(i.value,t,"Pattern")):"RestElement"===i.type&&r(i.argument,t,"Pattern")}},a.Expression=s,a.ThisExpression=a.Super=a.MetaProperty=i,a.ArrayExpression=function(e,t,r){for(var n=0,s=e.elements;n<s.length;n+=1){var i=s[n];i&&r(i,t,"Expression")}},a.ObjectExpression=function(e,t,r){for(var n=0,s=e.properties;n<s.length;n+=1){r(s[n],t)}},a.FunctionExpression=a.ArrowFunctionExpression=a.FunctionDeclaration,a.SequenceExpression=function(e,t,r){for(var n=0,s=e.expressions;n<s.length;n+=1){r(s[n],t,"Expression")}},a.TemplateLiteral=function(e,t,r){for(var n=0,s=e.quasis;n<s.length;n+=1){r(s[n],t)}for(var i=0,o=e.expressions;i<o.length;i+=1){r(o[i],t,"Expression")}},a.TemplateElement=i,a.UnaryExpression=a.UpdateExpression=function(e,t,r){r(e.argument,t,"Expression")},a.BinaryExpression=a.LogicalExpression=function(e,t,r){r(e.left,t,"Expression"),r(e.right,t,"Expression")},a.AssignmentExpression=a.AssignmentPattern=function(e,t,r){r(e.left,t,"Pattern"),r(e.right,t,"Expression")},a.ConditionalExpression=function(e,t,r){r(e.test,t,"Expression"),r(e.consequent,t,"Expression"),r(e.alternate,t,"Expression")},a.NewExpression=a.CallExpression=function(e,t,r){if(r(e.callee,t,"Expression"),e.arguments)for(var n=0,s=e.arguments;n<s.length;n+=1){r(s[n],t,"Expression")}},a.MemberExpression=function(e,t,r){r(e.object,t,"Expression"),e.computed&&r(e.property,t,"Expression")},a.ExportNamedDeclaration=a.ExportDefaultDeclaration=function(e,t,r){if(e.declaration&&r(e.declaration,t,"ExportNamedDeclaration"===e.type||e.declaration.id?"Statement":"Expression"),e.source&&r(e.source,t,"Expression"),e.attributes)for(var n=0,s=e.attributes;n<s.length;n+=1){r(s[n],t)}},a.ExportAllDeclaration=function(e,t,r){if(e.exported&&r(e.exported,t),r(e.source,t,"Expression"),e.attributes)for(var n=0,s=e.attributes;n<s.length;n+=1){r(s[n],t)}},a.ImportAttribute=function(e,t,r){r(e.value,t,"Expression")},a.ImportDeclaration=function(e,t,r){for(var n=0,s=e.specifiers;n<s.length;n+=1){r(s[n],t)}if(r(e.source,t,"Expression"),e.attributes)for(var i=0,o=e.attributes;i<o.length;i+=1){r(o[i],t)}},a.ImportExpression=function(e,t,r){r(e.source,t,"Expression"),e.options&&r(e.options,t,"Expression")},a.ImportSpecifier=a.ImportDefaultSpecifier=a.ImportNamespaceSpecifier=a.Identifier=a.PrivateIdentifier=a.Literal=i,a.TaggedTemplateExpression=function(e,t,r){r(e.tag,t,"Expression"),r(e.quasi,t,"Expression")},a.ClassDeclaration=a.ClassExpression=function(e,t,r){return r(e,t,"Class")},a.Class=function(e,t,r){e.id&&r(e.id,t,"Pattern"),e.superClass&&r(e.superClass,t,"Expression"),r(e.body,t)},a.ClassBody=function(e,t,r){for(var n=0,s=e.body;n<s.length;n+=1){r(s[n],t)}},a.MethodDefinition=a.PropertyDefinition=a.Property=function(e,t,r){e.computed&&r(e.key,t,"Expression"),e.value&&r(e.value,t,"Expression")},e.ancestor=function(e,t,r,n,s){var i=[];r||(r=a),function e(n,s,a){var c=a||n.type,l=n!==i[i.length-1];l&&i.push(n),o(r,c,n,s,e),t[c]&&t[c](n,s||i,i),l&&i.pop()}(e,n,s)},e.base=a,e.findNodeAfter=function(e,n,s,i,c){s=t(s),i||(i=a);try{!function e(t,a,c){if(!(t.end<n)){var l=c||t.type;if(t.start>=n&&s(l,t))throw new r(t,a);o(i,l,t,a,e)}}(e,c)}catch(e){if(e instanceof r)return e;throw e}},e.findNodeAround=function(e,n,s,i,c){s=t(s),i||(i=a);try{!function e(t,a,c){var l=c||t.type;if(!(t.start>n||t.end<n)&&(o(i,l,t,a,e),s(l,t)))throw new r(t,a)}(e,c)}catch(e){if(e instanceof r)return e;throw e}},e.findNodeAt=function(e,n,s,i,c,l){c||(c=a),i=t(i);try{!function e(t,a,l){var p=l||t.type;if((null==n||t.start<=n)&&(null==s||t.end>=s)&&o(c,p,t,a,e),(null==n||t.start===n)&&(null==s||t.end===s)&&i(p,t))throw new r(t,a)}(e,l)}catch(e){if(e instanceof r)return e;throw e}},e.findNodeBefore=function(e,n,s,i,c){var l;return s=t(s),i||(i=a),function e(t,a,c){if(!(t.start>n)){var p=c||t.type;t.end<=n&&(!l||l.node.end<t.end)&&s(p,t)&&(l=new r(t,a)),o(i,p,t,a,e)}}(e,c),l},e.full=function(e,t,r,n,s){var i;r||(r=a),function e(n,s,a){var c=a||n.type;o(r,c,n,s,e),i!==n&&(t(n,s,c),i=n)}(e,n,s)},e.fullAncestor=function(e,t,r,n){r||(r=a);var s,i=[];!function e(n,a,c){var l=c||n.type,p=n!==i[i.length-1];p&&i.push(n),o(r,l,n,a,e),s!==n&&(t(n,a||i,i,l),s=n),p&&i.pop()}(e,n)},e.make=n,e.recursive=function(e,t,r,s,i){var o=r?n(r,s||undefined):s;!function e(t,r,n){o[n||t.type](t,r,e)}(e,t,i)},e.simple=function(e,t,r,n,s){r||(r=a),function e(n,s,i){var a=i||n.type;o(r,a,n,s,e),t[a]&&t[a](n,s)}(e,n,s)}}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).objjParser={})}(this,function(e){"use strict";var t=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,154,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,262,6,10,9,357,0,62,13,1495,6,110,6,6,9,4759,9,787719,239],r=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,190,0,80,921,103,110,18,195,2637,96,16,1070,4050,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,46,2,18,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,482,44,11,6,17,0,322,29,19,43,1269,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4152,8,221,3,5761,15,7472,3104,541,1507,4938],n="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",s={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},i="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",o={5:i,"5module":i+" export import",6:i+" const class extends export import super"},a=/^in(stanceof)?$/,c=new RegExp("["+n+"]"),l=new RegExp("["+n+"·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_]");function p(e,t){for(var r=65536,n=0;n<t.length;n+=2){if((r+=t[n])>e)return!1;if((r+=t[n+1])>=e)return!0}}function u(e,t){return e<65?36===e:e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&c.test(String.fromCharCode(e)):!1!==t&&p(e,r)))}function h(e,n){return e<48?36===e:e<58||!(e<65)&&(e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&l.test(String.fromCharCode(e)):!1!==n&&(p(e,r)||p(e,t)))))}var d=Object.prototype,f=d.hasOwnProperty,m=d.toString,g=Object.hasOwn||function(e,t){return f.call(e,t)},_=Array.isArray||function(e){return"[object Array]"===m.call(e)};function y(e){return new RegExp("^(?:"+e.replace(/ /g,"|")+")$")}function v(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10),56320+(1023&e)))}var S=/(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/,b=function(e,t){void 0===t&&(t={}),this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=t.binop||null,this.updateContext=null,this.preprocess=!!t.preprocess};function E(e,t){return new b(e,{beforeExpr:!0,binop:t,preprocess:!0})}var C={beforeExpr:!0},L={startsExpr:!0},x={};function R(e,t){return void 0===t&&(t={}),t.keyword=e,x[e]=new b(e,t)}var w={num:new b("num",L),regexp:new b("regexp",L),string:new b("string",L),name:new b("name",L),privateId:new b("privateId",L),eof:new b("eof"),eol:new b("eol"),bracketL:new b("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new b("]"),braceL:new b("{",{beforeExpr:!0,startsExpr:!0}),braceR:new b("}"),parenL:new b("(",{beforeExpr:!0,startsExpr:!0}),parenR:new b(")"),comma:new b(",",C),semi:new b(";",C),colon:new b(":",C),dot:new b("."),question:new b("?",C),questionDot:new b("?."),arrow:new b("=>",C),template:new b("template"),invalidTemplate:new b("invalidTemplate"),ellipsis:new b("...",C),backQuote:new b("`",L),dollarBraceL:new b("${",{beforeExpr:!0,startsExpr:!0}),eq:new b("=",{beforeExpr:!0,isAssign:!0}),assign:new b("_=",{beforeExpr:!0,isAssign:!0}),incDec:new b("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new b("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0,preprocess:!0}),logicalOR:E("||",1),logicalAND:E("&&",2),bitwiseOR:E("|",3),bitwiseXOR:E("^",4),bitwiseAND:E("&",5),equality:E("==/!=/===/!==",6),relational:E("</>/<=/>=",7),bitShift:E("<</>>/>>>",8),plusMin:new b("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0,preprocess:!0}),modulo:E("%",10),star:E("*",10),slash:E("/",10),starstar:new b("**",{beforeExpr:!0}),coalesce:E("??",1),_break:R("break"),_case:R("case",C),_catch:R("catch"),_continue:R("continue"),_debugger:R("debugger"),_default:R("default",C),_do:R("do",{isLoop:!0,beforeExpr:!0}),_else:R("else",C),_finally:R("finally"),_for:R("for",{isLoop:!0}),_function:R("function",L),_if:R("if"),_return:R("return",C),_switch:R("switch"),_throw:R("throw",C),_try:R("try"),_var:R("var"),_const:R("const"),_while:R("while",{isLoop:!0}),_with:R("with"),_new:R("new",{beforeExpr:!0,startsExpr:!0}),_this:R("this",L),_super:R("super",L),_class:R("class",L),_extends:R("extends",C),_export:R("export"),_import:R("import",L),_null:R("null",L),_true:R("true",L),_false:R("false",L),_in:R("in",{beforeExpr:!0,binop:7}),_instanceof:R("instanceof",{beforeExpr:!0,binop:7}),_typeof:R("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:R("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:R("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},F={};function T(e,t){return void 0===t&&(t={}),t.keyword=e,F[e]=new b(e,t)}var P={_preDefine:T("define"),_preUndef:T("undef"),_preIfdef:T("ifdef"),_preIfndef:T("ifndef"),_preIf:T("if"),_preElse:T("else"),_preEndif:T("endif"),_preElseIf:T("elif"),_preElseIfTrue:new b("elif (True)"),_preElseIfFalse:new b("elif (false)"),_prePragma:T("pragma"),_preDefined:T("defined"),_preBackslash:new b("\\"),_preError:T("error"),_preWarning:T("warning"),_preprocessParamItem:new b("preprocessParamItem",{type:"preprocessParamItem"}),_preprocessSkipLine:new b("skipLine",{type:"skipLine"}),_preInclude:T("include")},k=y(Object.keys(F).join(" ")),I={};function A(e,t){return void 0===t&&(t={}),t.keyword=e,I[e]=new b(e,t)}var N={_filename:new b("filename"),_action:A("IBAction"),_outlet:A("IBOutlet"),_unsigned:A("unsigned"),_signed:A("signed"),_byte:A("byte"),_char:A("char"),_short:A("short"),_int:A("int"),_long:A("long"),_id:A("id"),_float:A("float"),_boolean:A("BOOL"),_SEL:A("SEL"),_double:A("double")},O={};function j(e,t){return void 0===t&&(t={}),t.keyword=e,O[e]=new b(e,t)}var M={_implementation:j("implementation"),_outlet:j("outlet"),_accessors:j("accessors"),_end:j("end"),_import:j("import"),_action:j("action"),_selector:j("selector"),_class:j("class"),_global:j("global"),_ref:j("ref"),_deref:j("deref"),_protocol:j("protocol"),_optional:j("optional"),_required:j("required"),_interface:j("interface"),_typedef:j("typedef"),_dictionaryLiteral:A("{"),_arrayLiteral:A("[")},D=/\r\n?|\n|\u2028|\u2029/,U=new RegExp(D.source,"g");function B(e){return 10===e||13===e||8232===e||8233===e}function V(e,t,r){void 0===r&&(r=e.length);for(var n=t;n<r;n++){var s=e.charCodeAt(n);if(B(s))return n<r-1&&13===s&&10===e.charCodeAt(n+1)?n+2:n+1}return-1}var K=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/,q=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,H=function(e,t){this.line=e,this.column=t};H.prototype.offset=function(e){return new H(this.line,this.column+e)};var G=function(e,t,r){this.start=t,this.end=r,null!==e.sourceFile&&(this.source=e.sourceFile)};function z(e,t){for(var r=1,n=0;;){var s=V(e,n,t);if(s<0)return new H(r,t-n);++r,n=s}}var W={ecmaVersion:null,sourceType:"script",onInsertedSemicolon:null,onTrailingComma:null,allowReserved:null,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowAwaitOutsideFunction:null,allowSuperOutsideMethod:null,allowHashBang:!0,locations:!1,onToken:null,onComment:null,ranges:!1,program:null,sourceFile:null,directSourceFile:null,preserveParens:!1,objj:!0,preprocess:!0,preprocessGetIncludeFile:function(e){return{include:"#define FOO(x) x\n",sourceFile:e}},preprocessAddMacro:null,preprocessGetMacro:null,preprocessUndefineMacro:null,preprocessIsMacro:null,macros:null,preIncludeFiles:null};var J=!1;function Y(e){var t={};for(var r in W)t[r]=e&&g(e,r)?e[r]:W[r];if("latest"===t.ecmaVersion?t.ecmaVersion=1e8:null==t.ecmaVersion?(!J&&"object"==typeof console&&console.warn&&(J=!0,console.warn("Since Acorn 8.0.0, options.ecmaVersion is required.\nDefaulting to 2020, but this will stop working in the future.")),t.ecmaVersion=11):t.ecmaVersion>=2015&&(t.ecmaVersion-=2009),null==t.allowReserved&&(t.allowReserved=t.ecmaVersion<5),null==e.allowHashBang&&(t.allowHashBang=t.allowHashBang||t.ecmaVersion>=14),_(t.onToken)){var n=t.onToken;t.onToken=function(e){return n.push(e)}}return _(t.onComment)&&(t.onComment=function(e,t){return function(r,n,s,i,o,a){var c={type:r?"Block":"Line",value:n,start:s,end:i};e.locations&&(c.loc=new G(this,o,a)),e.ranges&&(c.range=[s,i]),t.push(c)}}(t,t.onComment)),t}var X=256;function Q(e,t){return 2|(e?4:0)|(t?8:0)}var $=function(e,t,r,n,s,i,o,a,c){this.identifier=e,null!=t&&(this.macro=t),r&&(this.parameters=r),null!=n&&(this.start=n),s&&(this.isArgument=!0),i&&(this.parameterScope=i),o&&(this.variadicName=o),a&&(this.locationOffset=a),c&&(this.sourceFile=c)};$.prototype.isParameterFunction=function(){return this.isParameterFunctionVar||(this.isParameterFunctionVar=y((this.parameters||[]).join(" ")))};var Z=function(e,t,r){this.options=e=Y(e),this.sourceFile=e.sourceFile,this.keywords=y(o[e.ecmaVersion>=6?6:"module"===e.sourceType?"5module":5]);var n="";!0!==e.allowReserved&&(n=s[e.ecmaVersion>=6?6:5===e.ecmaVersion?5:3],"module"===e.sourceType&&(n+=" await")),this.reservedWords=y(n);var i=(n?n+" ":"")+s.strict;function a(e,t,r){return new $(e,t,null,r-e.length)}if(this.reservedWordsStrict=y(i),this.reservedWordsStrictBind=y(i+" "+s.strictBind),this.input=String(t),this.containsEsc=!1,r?(this.pos=r,this.lineStart=this.input.lastIndexOf("\n",r-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(D).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=w.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule="module"===e.sourceType,this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.potentialArrowInForAwait=!1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports=Object.create(null),0===this.pos&&e.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(1),this.regexpState=null,this.privateNameStack=[],this.preprocessParameterScope=null,this.preTokParameterScope=null,this.preprocessMacroParameterListMode=!1,this.preprocessIsParsingPreprocess=!1,this.preprocessStack=[],this.preprocessStackLastItem=null,this.preprocessOnlyTransformArgumentsForLastToken=null,this.preprocessDontConcatenate=!1,this.preNotSkipping=!0,this.preConcatenating=!1,this.preIfLevel=[],this.preType=null,this.preVal=null,this.preStart=null,this.preEnd=null,this.preLastStart=null,this.preLastEnd=null,this.localLastEnd=null,this.firstEnd=null,this.preInput=null,this.objjInFunction=null,this.objjLabels=null,this.objjFunctionIsAsync=null,this.objjStrict=null,this.nodeMessageSendObjectExpression=null,this.tokFirstStart=null,this.firstTokEnd=null,this.tokMacroOffset=null,this.tokPosMacroOffset=null,this.lastTokMacroOffset=null,this.options.preprocess){var c,l=this,p=Object.create(null);null==this.options.preprocessAddMacro&&(this.options.preprocessAddMacro=function(e){p[e.identifier]=e,c=null}),null==this.options.preprocessGetMacro&&(this.options.preprocessGetMacro=function(e){return p[e]}),null==this.options.preprocessUndefineMacro&&(this.options.preprocessUndefineMacro=function(e){delete p[e],c=null}),null==this.options.preprocessIsMacro&&(this.options.preprocessIsMacro=function(e){return(c||(c=y(Object.keys(p).concat(Object.keys(l.macrosBuiltinMacros).filter(function(e){return null!=this[e]().macro},l.macrosBuiltinMacros)).join(" ")))).test(e)}),this.macrosBuiltinMacros={1:function(){return a("__OBJJ__",l.options.objj?"1":null,l.pos)}},this.macrosBuiltinMacros.__BROWSER__=function(){return a("__BROWSER__","undefined"!=typeof window?"1":null,l.pos)},this.macrosBuiltinMacros.__LINE__=function(){return a("__LINE__",String(l.options.locations?l.curLine:z(l.input,l.pos).line),l.pos)},this.macrosBuiltinMacros.__DATE__=function(){var e,t;return a("__DATE__",(e=new Date,t=String(e.getDate()),["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][e.getMonth()]+(t.length>1?" ":" ")+t+" "+e.getFullYear()),l.pos)},this.macrosBuiltinMacros.__TIME__=function(){var e;return a("__TIME__",("0"+(e=new Date).getHours()).slice(-2)+":"+("0"+e.getMinutes()).slice(-2)+":"+("0"+e.getSeconds()).slice(-2),l.pos)},this.options.macros&&this.defineMacros(this.options.macros);var u=this.options.preIncludeFiles;if(u&&u.length)for(var h=u.length-1;h>=0;h--){var d=u[h],f=new $(null,d.include,null,0,!1,null,!1,null,d.sourceFile);this.pushMacroToStack(f,f.macro,0,null,null,this.pos,null,!0),this.skipSpace()}}},ee={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},canAwait:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0},allowNewDotTarget:{configurable:!0},inClassStaticBlock:{configurable:!0}};Z.prototype.parse=function(){var e=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(e)},ee.inFunction.get=function(){return(2&this.currentVarScope().flags)>0},ee.inGenerator.get=function(){return(8&this.currentVarScope().flags)>0&&!this.currentVarScope().inClassFieldInit},ee.inAsync.get=function(){return(4&this.currentVarScope().flags)>0&&!this.currentVarScope().inClassFieldInit},ee.canAwait.get=function(){for(var e=this.scopeStack.length-1;e>=0;e--){var t=this.scopeStack[e];if(t.inClassFieldInit||t.flags&X)return!1;if(2&t.flags)return(4&t.flags)>0}return this.inModule&&this.options.ecmaVersion>=13||this.options.allowAwaitOutsideFunction},ee.allowSuper.get=function(){var e=this.currentThisScope(),t=e.flags,r=e.inClassFieldInit;return(64&t)>0||r||this.options.allowSuperOutsideMethod||this.options.objj&&(512&this.currentObjJMethodScope().flags)>0},ee.allowDirectSuper.get=function(){return(128&this.currentThisScope().flags)>0},ee.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},ee.allowNewDotTarget.get=function(){var e=this.currentThisScope(),t=e.flags,r=e.inClassFieldInit;return(258&t)>0||r},ee.inClassStaticBlock.get=function(){return(this.currentVarScope().flags&X)>0},Z.extend=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];for(var r=this,n=0;n<e.length;n++)r=e[n](r);return r},Z.parse=function(e,t){return new this(t,e).parse()},Z.parseExpressionAt=function(e,t,r){var n=new this(r,e,t);return n.nextToken(),n.parseExpression()},Z.tokenizer=function(e,t){return new this(t,e)},Object.defineProperties(Z.prototype,ee);var te=Z.prototype,re=/^(?:'((?:\\.|[^'\\])*?)'|"((?:\\.|[^"\\])*?)")/;te.strictDirective=function(e){if(this.options.ecmaVersion<5)return!1;for(;;){q.lastIndex=e,e+=q.exec(this.input)[0].length;var t=re.exec(this.input.slice(e));if(!t)return!1;if("use strict"===(t[1]||t[2])){q.lastIndex=e+t[0].length;var r=q.exec(this.input),n=r.index+r[0].length,s=this.input.charAt(n);return";"===s||"}"===s||D.test(r[0])&&!(/[(`.[+\-/*%<>=,?^&]/.test(s)||"!"===s&&"="===this.input.charAt(n+1))}e+=t[0].length,q.lastIndex=e,e+=q.exec(this.input)[0].length,";"===this.input[e]&&e++}},te.eat=function(e){return this.type===e&&(this.next(),!0)},te.isContextual=function(e){return this.type===w.name&&this.value===e&&!this.containsEsc},te.eatContextual=function(e){return!!this.isContextual(e)&&(this.next(),!0)},te.expectContextual=function(e){this.eatContextual(e)||this.unexpected()},te.canInsertSemicolon=function(){return this.type===w.eof||this.type===w.braceR||D.test(this.lastEndInput.slice(this.lastTokEnd,this.lastEndOfFile||this.tokFirstStart))||null!=this.lastEndOfFile||this.nodeMessageSendObjectExpression&&this.nodeMessageSendObjectExpression.canInsertSemicolonBefore&&this.options.objj},te.insertSemicolon=function(){if(this.canInsertSemicolon())return this.options.onInsertedSemicolon&&this.options.onInsertedSemicolon(this.lastTokEnd,this.lastTokEndLoc),!0},te.semicolon=function(){this.eat(w.semi)||this.insertSemicolon()||(this.nodeMessageSendObjectExpression?this.raise(this.options.objj&&this.nodeMessageSendObjectExpression.start||this.start,"Expected a semicolon"):this.unexpected())},te.afterTrailingComma=function(e,t){if(this.type===e)return this.options.onTrailingComma&&this.options.onTrailingComma(this.lastTokStart,this.lastTokStartLoc),t||this.next(),!0},te.expect=function(e){this.eat(e)||this.unexpected()},te.unexpected=function(e){this.raise(null!=e?e:this.start,"Unexpected token")};var ne=function(){this.shorthandAssign=this.trailingComma=this.parenthesizedAssign=this.parenthesizedBind=this.doubleProto=-1};te.checkPatternErrors=function(e,t){if(e){e.trailingComma>-1&&this.raiseRecoverable(e.trailingComma,"Comma is not permitted after the rest element");var r=t?e.parenthesizedAssign:e.parenthesizedBind;r>-1&&this.raiseRecoverable(r,t?"Assigning to rvalue":"Parenthesized pattern")}},te.checkExpressionErrors=function(e,t){if(!e)return!1;var r=e.shorthandAssign,n=e.doubleProto;if(!t)return r>=0||n>=0;r>=0&&this.raise(r,"Shorthand property assignments are valid only in destructuring patterns"),n>=0&&this.raiseRecoverable(n,"Redefinition of __proto__ property")},te.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos<this.awaitPos)&&this.raise(this.yieldPos,"Yield expression cannot be a default value"),this.awaitPos&&this.raise(this.awaitPos,"Await expression cannot be a default value")},te.isSimpleAssignTarget=function(e){return"ParenthesizedExpression"===e.type?this.isSimpleAssignTarget(e.expression):"Identifier"===e.type||"MemberExpression"===e.type};var se=Z.prototype;se.parseTopLevel=function(e){var t=Object.create(null);for(e.body||(e.body=[]);this.type!==w.eof;){var r=this.parseStatement(null,!0,t);e.body.push(r)}if(this.inModule)for(var n=0,s=Object.keys(this.undefinedExports);n<s.length;n+=1){var i=s[n];this.raiseRecoverable(this.undefinedExports[i].start,"Export '"+i+"' is not defined")}return this.adaptDirectivePrologue(e.body),this.next(),e.sourceType=this.options.sourceType,this.finishNode(e,"Program")};var ie={kind:"loop"},oe={kind:"switch"};se.isLet=function(e){if(this.options.ecmaVersion<6||!this.isContextual("let"))return!1;q.lastIndex=this.pos;var t=q.exec(this.input),r=this.pos+t[0].length,n=this.input.charCodeAt(r);if(91===n||92===n||n>55295&&n<56320)return!0;if(e)return!1;if(123===n)return!0;if(u(n,!0)){for(var s=r+1;h(n=this.input.charCodeAt(s),!0);)++s;if(92===n||n>55295&&n<56320)return!0;var i=this.input.slice(r,s);if(!a.test(i))return!0}return!1},se.isAsyncFunction=function(){if(this.options.ecmaVersion<8||!this.isContextual("async"))return!1;q.lastIndex=this.pos;var e,t=q.exec(this.input),r=this.pos+t[0].length;return!(D.test(this.input.slice(this.pos,r))||"function"!==this.input.slice(r,r+8)||r+8!==this.input.length&&(h(e=this.input.charCodeAt(r+8))||e>55295&&e<56320))},se.parseStatement=function(e,t,r){var n,s=this.type,i=this.startNode();if(this.nodeMessageSendObjectExpression)return i.expression=this.parseObjjMessageSendExpression(this.nodeMessageSendObjectExpression,this.nodeMessageSendObjectExpression.object),this.nodeMessageSendObjectExpression=null,this.semicolon(),this.finishNode(i,"ExpressionStatement");if(this.isLet(e)&&(s=w._var,n="let"),this.options.objj)switch(s){case M._implementation:return this.parseObjjImplementation(i);case M._interface:return this.parseObjjInterface(i);case M._protocol:if(40!==this.input.charCodeAt(this.pos))return this.parseObjjProtocol(i);break;case M._import:return this.parseObjjImport(i);case M._preprocess:return this.parseObjjPreprocess(i);case M._class:return this.parseObjjClass(i);case M._global:return this.parseObjjGlobal(i);case M._typedef:return this.parseObjjTypedef(i)}switch(s){case w._break:case w._continue:return this.parseBreakContinueStatement(i,s.keyword);case w._debugger:return this.parseDebuggerStatement(i);case w._do:return this.parseDoStatement(i);case w._for:return this.parseForStatement(i);case w._function:return e&&(this.strict||"if"!==e&&"label"!==e)&&this.options.ecmaVersion>=6&&this.unexpected(),this.parseFunctionStatement(i,!1,!e);case w._class:return e&&this.unexpected(),this.parseClass(i,!0);case w._if:return this.parseIfStatement(i);case w._return:return this.parseReturnStatement(i);case w._switch:return this.parseSwitchStatement(i);case w._throw:return this.parseThrowStatement(i);case w._try:return this.parseTryStatement(i);case w._const:case w._var:return n=n||this.value,e&&"var"!==n&&this.unexpected(),this.parseVarStatement(i,n);case w._while:return this.parseWhileStatement(i);case w._with:return this.parseWithStatement(i);case w.braceL:return this.parseBlock(!0,i);case w.semi:return this.parseEmptyStatement(i);case w._export:case w._import:if(this.options.ecmaVersion>10&&s===w._import){q.lastIndex=this.pos;var o=q.exec(this.input),a=this.pos+o[0].length,c=this.input.charCodeAt(a);if(40===c||46===c)return this.parseExpressionStatement(i,this.parseExpression())}return this.options.allowImportExportEverywhere||(t||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),s===w._import?this.parseImport(i):this.parseExport(i,r);default:if(this.isAsyncFunction())return e&&this.unexpected(),this.next(),this.parseFunctionStatement(i,!0,!e);var l=this.value,p=this.parseExpression();return s===w.name&&"Identifier"===p.type&&this.eat(w.colon)?this.parseLabeledStatement(i,l,p,e):this.parseExpressionStatement(i,p)}},se.parseBreakContinueStatement=function(e,t){var r="break"===t;this.next(),this.eat(w.semi)||this.insertSemicolon()?e.label=null:this.type!==w.name?this.unexpected():(e.label=this.parseIdent(),this.semicolon());for(var n=0;n<this.labels.length;++n){var s=this.labels[n];if(null==e.label||s.name===e.label.name){if(null!=s.kind&&(r||"loop"===s.kind))break;if(e.label&&r)break}}return n===this.labels.length&&this.raise(e.start,"Unsyntactic "+t),this.finishNode(e,r?"BreakStatement":"ContinueStatement")},se.parseDebuggerStatement=function(e){return this.next(),this.semicolon(),this.finishNode(e,"DebuggerStatement")},se.parseDoStatement=function(e){return this.next(),this.labels.push(ie),e.body=this.parseStatement("do"),this.labels.pop(),this.expect(w._while),e.test=this.parseParenExpression(),this.options.ecmaVersion>=6?this.eat(w.semi):this.semicolon(),this.finishNode(e,"DoWhileStatement")},se.parseForStatement=function(e){this.next();var t=this.options.ecmaVersion>=9&&this.canAwait&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(ie),this.enterScope(0),this.expect(w.parenL),this.type===w.semi)return t>-1&&this.unexpected(t),this.parseFor(e,null);var r=this.isLet();if(this.type===w._var||this.type===w._const||r){var n=this.startNode(),s=r?"let":this.value;return this.next(),this.parseVar(n,!0,s),this.finishNode(n,"VariableDeclaration"),(this.type===w._in||this.options.ecmaVersion>=6&&this.isContextual("of"))&&1===n.declarations.length?(this.options.ecmaVersion>=9&&(this.type===w._in?t>-1&&this.unexpected(t):e.await=t>-1),this.parseForIn(e,n)):(t>-1&&this.unexpected(t),this.parseFor(e,n))}var i=this.isContextual("let"),o=!1,a=new ne,c=this.parseExpression(!(t>-1)||"await",a);return this.type===w._in||(o=this.options.ecmaVersion>=6&&this.isContextual("of"))?(this.options.ecmaVersion>=9&&(this.type===w._in?t>-1&&this.unexpected(t):e.await=t>-1),i&&o&&this.raise(c.start,"The left-hand side of a for-of loop may not start with 'let'."),this.toAssignable(c,!1,a),this.checkLValPattern(c),this.parseForIn(e,c)):(this.checkExpressionErrors(a,!0),t>-1&&this.unexpected(t),this.parseFor(e,c))},se.parseFunctionStatement=function(e,t,r){return this.next(),this.parseFunction(e,ce|(r?0:le),!1,t)},se.parseIfStatement=function(e){return this.next(),e.test=this.parseParenExpression(),e.consequent=this.parseStatement("if"),e.alternate=this.eat(w._else)?this.parseStatement("if"):null,this.finishNode(e,"IfStatement")},se.parseReturnStatement=function(e){return this.inFunction||this.options.allowReturnOutsideFunction||this.objjInFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(w.semi)||this.insertSemicolon()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")},se.parseSwitchStatement=function(e){var t;this.next(),e.discriminant=this.parseParenExpression(),e.cases=[],this.expect(w.braceL),this.labels.push(oe),this.enterScope(0);for(var r=!1;this.type!==w.braceR;)if(this.type===w._case||this.type===w._default){var n=this.type===w._case;t&&this.finishNode(t,"SwitchCase"),e.cases.push(t=this.startNode()),t.consequent=[],this.next(),n?t.test=this.parseExpression():(r&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),r=!0,t.test=null),this.expect(w.colon)}else t||this.unexpected(),t.consequent.push(this.parseStatement(null));return this.exitScope(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(e,"SwitchStatement")},se.parseThrowStatement=function(e){return this.next(),D.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")};var ae=[];se.parseTryStatement=function(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.type===w._catch){var t=this.startNode();if(this.next(),this.eat(w.parenL)){t.param=this.parseBindingAtom();var r="Identifier"===t.param.type;this.enterScope(r?32:0),this.checkLValPattern(t.param,r?4:2),this.expect(w.parenR)}else this.options.ecmaVersion<10&&this.unexpected(),t.param=null,this.enterScope(0);t.body=this.parseBlock(!1),this.exitScope(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(w._finally)?this.parseBlock():null,e.handler||e.finalizer||this.raise(e.start,"Missing catch or finally clause"),this.finishNode(e,"TryStatement")},se.parseVarStatement=function(e,t){return this.next(),this.parseVar(e,!1,t),this.semicolon(),this.finishNode(e,"VariableDeclaration")},se.parseWhileStatement=function(e){return this.next(),e.test=this.parseParenExpression(),this.labels.push(ie),e.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(e,"WhileStatement")},se.parseWithStatement=function(e){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),e.object=this.parseParenExpression(),e.body=this.parseStatement("with"),this.finishNode(e,"WithStatement")},se.parseEmptyStatement=function(e){return this.next(),this.finishNode(e,"EmptyStatement")},se.parseLabeledStatement=function(e,t,r,n){for(var s=0,i=this.labels;s<i.length;s+=1){i[s].name===t&&this.raise(r.start,"Label '"+t+"' is already declared")}for(var o=this.type.isLoop?"loop":this.type===w._switch?"switch":null,a=this.labels.length-1;a>=0;a--){var c=this.labels[a];if(c.statementStart!==e.start)break;c.statementStart=this.start,c.kind=o}return this.labels.push({name:t,kind:o,statementStart:this.start}),e.body=this.parseStatement(n?-1===n.indexOf("label")?n+"label":n:"label"),this.labels.pop(),e.label=r,this.finishNode(e,"LabeledStatement")},se.parseExpressionStatement=function(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")},se.parseBlock=function(e,t,r){for(void 0===e&&(e=!0),void 0===t&&(t=this.startNode()),t.body=[],this.expect(w.braceL),e&&this.enterScope(0);this.type!==w.braceR;){var n=this.parseStatement(null);t.body.push(n)}return r&&(this.strict=!1),this.next(),e&&this.exitScope(),this.finishNode(t,"BlockStatement")},se.parseFor=function(e,t){return e.init=t,this.expect(w.semi),e.test=this.type===w.semi?null:this.parseExpression(),this.expect(w.semi),e.update=this.type===w.parenR?null:this.parseExpression(),this.expect(w.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,"ForStatement")},se.parseForIn=function(e,t){var r=this.type===w._in;return this.next(),"VariableDeclaration"===t.type&&null!=t.declarations[0].init&&(!r||this.options.ecmaVersion<8||this.strict||"var"!==t.kind||"Identifier"!==t.declarations[0].id.type)&&this.raise(t.start,(r?"for-in":"for-of")+" loop variable declaration may not have an initializer"),e.left=t,e.right=r?this.parseExpression():this.parseMaybeAssign(),this.expect(w.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,r?"ForInStatement":"ForOfStatement")},se.parseVar=function(e,t,r){for(e.declarations=[],e.kind=r;;){var n=this.startNode();if(this.parseVarId(n,r),this.eat(w.eq)?n.init=this.parseMaybeAssign(t):"const"!==r||this.type===w._in||this.options.ecmaVersion>=6&&this.isContextual("of")?"Identifier"===n.id.type||t&&(this.type===w._in||this.isContextual("of"))?n.init=null:this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),e.declarations.push(this.finishNode(n,"VariableDeclarator")),!this.eat(w.comma))break}return e},se.parseVarId=function(e,t){e.id=this.parseBindingAtom(),this.checkLValPattern(e.id,"var"===t?1:2,!1)};var ce=1,le=2;function pe(e,t){var r=t.key.name,n=e[r],s="true";return"MethodDefinition"!==t.type||"get"!==t.kind&&"set"!==t.kind||(s=(t.static?"s":"i")+t.kind),"iget"===n&&"iset"===s||"iset"===n&&"iget"===s||"sget"===n&&"sset"===s||"sset"===n&&"sget"===s?(e[r]="true",!1):!!n||(e[r]=s,!1)}function ue(e,t){var r=e.computed,n=e.key;return!r&&("Identifier"===n.type&&n.name===t||"Literal"===n.type&&n.value===t)}se.parseFunction=function(e,t,r,n,s){this.initFunction(e),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!n)&&(this.type===w.star&&t&le&&this.unexpected(),e.generator=this.eat(w.star)),this.options.ecmaVersion>=8&&(e.async=!!n),t&ce&&(e.id=4&t&&this.type!==w.name?null:this.parseIdent(),!e.id||t&le||this.checkLValSimple(e.id,this.strict||e.generator||e.async?this.treatFunctionsAsVar?1:2:3));var i=this.yieldPos,o=this.awaitPos,a=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(Q(e.async,e.generator)),t&ce||(e.id=this.type===w.name?this.parseIdent():null),this.parseFunctionParams(e),this.parseFunctionBody(e,r,!1,s),this.yieldPos=i,this.awaitPos=o,this.awaitIdentPos=a,this.finishNode(e,t&ce?"FunctionDeclaration":"FunctionExpression")},se.parseFunctionParams=function(e){this.expect(w.parenL),e.params=this.parseBindingList(w.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},se.parseClass=function(e,t){this.next();var r=this.strict;this.strict=!0,this.parseClassId(e,t),this.parseClassSuper(e);var n=this.enterClassBody(),s=this.startNode(),i=!1;for(s.body=[],this.expect(w.braceL);this.type!==w.braceR;){var o=this.parseClassElement(null!==e.superClass);o&&(s.body.push(o),"MethodDefinition"===o.type&&"constructor"===o.kind?(i&&this.raise(o.start,"Duplicate constructor in the same class"),i=!0):o.key&&"PrivateIdentifier"===o.key.type&&pe(n,o)&&this.raiseRecoverable(o.key.start,"Identifier '#"+o.key.name+"' has already been declared"))}return this.strict=r,this.next(),e.body=this.finishNode(s,"ClassBody"),this.exitClassBody(),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")},se.parseClassElement=function(e){if(this.eat(w.semi))return null;var t=this.options.ecmaVersion,r=this.startNode(),n="",s=!1,i=!1,o="method",a=!1;if(this.eatContextual("static")){if(t>=13&&this.eat(w.braceL))return this.parseClassStaticBlock(r),r;this.isClassElementNameStart()||this.type===w.star?a=!0:n="static"}if(r.static=a,!n&&t>=8&&this.eatContextual("async")&&(!this.isClassElementNameStart()&&this.type!==w.star||this.canInsertSemicolon()?n="async":i=!0),!n&&(t>=9||!i)&&this.eat(w.star)&&(s=!0),!n&&!i&&!s){var c=this.value;(this.eatContextual("get")||this.eatContextual("set"))&&(this.isClassElementNameStart()?o=c:n=c)}if(n?(r.computed=!1,r.key=this.startNodeAt(this.lastTokStart,this.lastTokStartLoc),r.key.name=n,this.finishNode(r.key,"Identifier")):this.parseClassElementName(r),t<13||this.type===w.parenL||"method"!==o||s||i){var l=!r.static&&ue(r,"constructor"),p=l&&e;l&&"method"!==o&&this.raise(r.key.start,"Constructor can't have get/set modifier"),r.kind=l?"constructor":o,this.parseClassMethod(r,s,i,p)}else this.parseClassField(r);return r},se.isClassElementNameStart=function(){return this.type===w.name||this.type===w.privateId||this.type===w.num||this.type===w.string||this.type===w.bracketL||this.type.keyword},se.parseClassElementName=function(e){this.type===w.privateId?("constructor"===this.value&&this.raise(this.start,"Classes can't have an element named '#constructor'"),e.computed=!1,e.key=this.parsePrivateIdent()):this.parsePropertyName(e)},se.parseClassMethod=function(e,t,r,n){var s=e.key;"constructor"===e.kind?(t&&this.raise(s.start,"Constructor can't be a generator"),r&&this.raise(s.start,"Constructor can't be an async method")):e.static&&ue(e,"prototype")&&this.raise(s.start,"Classes may not have a static property named prototype");var i=e.value=this.parseMethod(t,r,n);return"get"===e.kind&&0!==i.params.length&&this.raiseRecoverable(i.start,"getter should have no params"),"set"===e.kind&&1!==i.params.length&&this.raiseRecoverable(i.start,"setter should have exactly one param"),"set"===e.kind&&"RestElement"===i.params[0].type&&this.raiseRecoverable(i.params[0].start,"Setter cannot use rest params"),this.finishNode(e,"MethodDefinition")},se.parseClassField=function(e){if(ue(e,"constructor")?this.raise(e.key.start,"Classes can't have a field named 'constructor'"):e.static&&ue(e,"prototype")&&this.raise(e.key.start,"Classes can't have a static field named 'prototype'"),this.eat(w.eq)){var t=this.currentThisScope(),r=t.inClassFieldInit;t.inClassFieldInit=!0,e.value=this.parseMaybeAssign(),t.inClassFieldInit=r}else e.value=null;return this.semicolon(),this.finishNode(e,"PropertyDefinition")},se.parseClassStaticBlock=function(e){e.body=[];var t=this.labels;for(this.labels=[],this.enterScope(320);this.type!==w.braceR;){var r=this.parseStatement(null);e.body.push(r)}return this.next(),this.exitScope(),this.labels=t,this.finishNode(e,"StaticBlock")},se.parseClassId=function(e,t){this.type===w.name?(e.id=this.parseIdent(),t&&this.checkLValSimple(e.id,2,!1)):(!0===t&&this.unexpected(),e.id=null)},se.parseClassSuper=function(e){e.superClass=this.eat(w._extends)?this.parseExprSubscripts(!1):null},se.enterClassBody=function(){var e={declared:Object.create(null),used:[]};return this.privateNameStack.push(e),e.declared},se.exitClassBody=function(){for(var e=this.privateNameStack.pop(),t=e.declared,r=e.used,n=this.privateNameStack.length,s=0===n?null:this.privateNameStack[n-1],i=0;i<r.length;++i){var o=r[i];g(t,o.name)||(s?s.used.push(o):this.raiseRecoverable(o.start,"Private field '#"+o.name+"' must be declared in an enclosing class"))}},se.parseExport=function(e,t){if(this.next(),this.eat(w.star))return this.options.ecmaVersion>=11&&(this.eatContextual("as")?(e.exported=this.parseModuleExportName(),this.checkExport(t,e.exported,this.lastTokStart)):e.exported=null),this.expectContextual("from"),this.type!==w.string&&this.unexpected(),e.source=this.parseExprAtom(),this.semicolon(),this.finishNode(e,"ExportAllDeclaration");if(this.eat(w._default)){var r;if(this.checkExport(t,"default",this.lastTokStart),this.type===w._function||(r=this.isAsyncFunction())){var n=this.startNode();this.next(),r&&this.next(),e.declaration=this.parseFunction(n,4|ce,!1,r)}else if(this.type===w._class){var s=this.startNode();e.declaration=this.parseClass(s,"nullableID")}else e.declaration=this.parseMaybeAssign(),this.semicolon();return this.finishNode(e,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement())e.declaration=this.parseStatement(null),"VariableDeclaration"===e.declaration.type?this.checkVariableExport(t,e.declaration.declarations):this.checkExport(t,e.declaration.id,e.declaration.id.start),e.specifiers=[],e.source=null;else{if(e.declaration=null,e.specifiers=this.parseExportSpecifiers(t),this.eatContextual("from"))this.type!==w.string&&this.unexpected(),e.source=this.parseExprAtom();else{for(var i=0,o=e.specifiers;i<o.length;i+=1){var a=o[i];this.checkUnreserved(a.local),this.checkLocalExport(a.local),"Literal"===a.local.type&&this.raise(a.local.start,"A string literal cannot be used as an exported binding without `from`.")}e.source=null}this.semicolon()}return this.finishNode(e,"ExportNamedDeclaration")},se.checkExport=function(e,t,r){e&&("string"!=typeof t&&(t="Identifier"===t.type?t.name:t.value),g(e,t)&&this.raiseRecoverable(r,"Duplicate export '"+t+"'"),e[t]=!0)},se.checkPatternExport=function(e,t){var r=t.type;if("Identifier"===r)this.checkExport(e,t,t.start);else if("ObjectPattern"===r)for(var n=0,s=t.properties;n<s.length;n+=1){var i=s[n];this.checkPatternExport(e,i)}else if("ArrayPattern"===r)for(var o=0,a=t.elements;o<a.length;o+=1){var c=a[o];c&&this.checkPatternExport(e,c)}else"Property"===r?this.checkPatternExport(e,t.value):"AssignmentPattern"===r?this.checkPatternExport(e,t.left):"RestElement"===r?this.checkPatternExport(e,t.argument):"ParenthesizedExpression"===r&&this.checkPatternExport(e,t.expression)},se.checkVariableExport=function(e,t){if(e)for(var r=0,n=t;r<n.length;r+=1){var s=n[r];this.checkPatternExport(e,s.id)}},se.shouldParseExportStatement=function(){return"var"===this.type.keyword||"const"===this.type.keyword||"class"===this.type.keyword||"function"===this.type.keyword||this.isLet()||this.isAsyncFunction()},se.parseExportSpecifiers=function(e){var t=[],r=!0;for(this.expect(w.braceL);!this.eat(w.braceR);){if(r)r=!1;else if(this.expect(w.comma),this.afterTrailingComma(w.braceR))break;var n=this.startNode();n.local=this.parseModuleExportName(),n.exported=this.eatContextual("as")?this.parseModuleExportName():n.local,this.checkExport(e,n.exported,n.exported.start),t.push(this.finishNode(n,"ExportSpecifier"))}return t},se.parseImport=function(e){return this.next(),this.type===w.string?(e.specifiers=ae,e.source=this.parseExprAtom()):(e.specifiers=this.parseImportSpecifiers(),this.expectContextual("from"),e.source=this.type===w.string?this.parseExprAtom():this.unexpected()),this.semicolon(),this.finishNode(e,"ImportDeclaration")},se.parseImportSpecifiers=function(){var e=[],t=!0;if(this.type===w.name){var r=this.startNode();if(r.local=this.parseIdent(),this.checkLValSimple(r.local,2),e.push(this.finishNode(r,"ImportDefaultSpecifier")),!this.eat(w.comma))return e}if(this.type===w.star){var n=this.startNode();return this.next(),this.expectContextual("as"),n.local=this.parseIdent(),this.checkLValSimple(n.local,2),e.push(this.finishNode(n,"ImportNamespaceSpecifier")),e}for(this.expect(w.braceL);!this.eat(w.braceR);){if(t)t=!1;else if(this.expect(w.comma),this.afterTrailingComma(w.braceR))break;var s=this.startNode();s.imported=this.parseModuleExportName(),this.eatContextual("as")?s.local=this.parseIdent():(this.checkUnreserved(s.imported),s.local=s.imported),this.checkLValSimple(s.local,2),e.push(this.finishNode(s,"ImportSpecifier"))}return e},se.parseModuleExportName=function(){if(this.options.ecmaVersion>=13&&this.type===w.string){var e=this.parseLiteral(this.value);return S.test(e.value)&&this.raise(e.start,"An export name cannot include a lone surrogate."),e}return this.parseIdent(!0)},se.adaptDirectivePrologue=function(e){for(var t=0;t<e.length&&this.isDirectiveCandidate(e[t]);++t)e[t].directive=e[t].expression.raw.slice(1,-1)},se.isDirectiveCandidate=function(e){return this.options.ecmaVersion>=5&&"ExpressionStatement"===e.type&&"Literal"===e.expression.type&&"string"==typeof e.expression.value&&('"'===this.input[e.start]||"'"===this.input[e.start])};var he=Z.prototype;he.toAssignable=function(e,t,r){if(this.options.ecmaVersion>=6&&e)switch(e.type){case"Identifier":this.inAsync&&"await"===e.name&&this.raise(e.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"Dereference":break;case"ObjectExpression":e.type="ObjectPattern",r&&this.checkPatternErrors(r,!0);for(var n=0,s=e.properties;n<s.length;n+=1){var i=s[n];this.toAssignable(i,t),"RestElement"!==i.type||"ArrayPattern"!==i.argument.type&&"ObjectPattern"!==i.argument.type||this.raise(i.argument.start,"Unexpected token")}break;case"Property":"init"!==e.kind&&this.raise(e.key.start,"Object pattern can't contain getter or setter"),this.toAssignable(e.value,t);break;case"ArrayExpression":e.type="ArrayPattern",r&&this.checkPatternErrors(r,!0),this.toAssignableList(e.elements,t);break;case"SpreadElement":e.type="RestElement",this.toAssignable(e.argument,t),"AssignmentPattern"===e.argument.type&&this.raise(e.argument.start,"Rest elements cannot have a default value");break;case"AssignmentExpression":"="!==e.operator&&this.raise(e.left.end,"Only '=' operator can be used for specifying default value."),e.type="AssignmentPattern",delete e.operator,this.toAssignable(e.left,t);break;case"ParenthesizedExpression":this.toAssignable(e.expression,t,r);break;case"ChainExpression":this.raiseRecoverable(e.start,"Optional chaining cannot appear in left-hand side");break;case"MemberExpression":if(!t)break;default:this.raise(e.start,"Assigning to rvalue")}else r&&this.checkPatternErrors(r,!0);return e},he.toAssignableList=function(e,t){for(var r=e.length,n=0;n<r;n++){var s=e[n];s&&this.toAssignable(s,t)}if(r){var i=e[r-1];6===this.options.ecmaVersion&&t&&i&&"RestElement"===i.type&&"Identifier"!==i.argument.type&&this.unexpected(i.argument.start)}return e},he.parseSpread=function(e){var t=this.startNode();return this.next(),t.argument=this.parseMaybeAssign(!1,e),this.finishNode(t,"SpreadElement")},he.parseRestBinding=function(){var e=this.startNode();return this.next(),6===this.options.ecmaVersion&&this.type!==w.name&&this.unexpected(),e.argument=this.parseBindingAtom(),this.finishNode(e,"RestElement")},he.parseBindingAtom=function(){if(this.options.ecmaVersion>=6)switch(this.type){case w.bracketL:var e=this.startNode();return this.next(),e.elements=this.parseBindingList(w.bracketR,!0,!0),this.finishNode(e,"ArrayPattern");case w.braceL:return this.parseObj(!0)}return this.parseIdent()},he.parseBindingList=function(e,t,r){for(var n=[],s=!0;!this.eat(e);)if(s?s=!1:this.expect(w.comma),t&&this.type===w.comma)n.push(null);else{if(r&&this.afterTrailingComma(e))break;if(this.type===w.ellipsis){var i=this.parseRestBinding();this.parseBindingListItem(i),n.push(i),this.type===w.comma&&this.raise(this.start,"Comma is not permitted after the rest element"),this.expect(e);break}var o=this.parseMaybeDefault(this.start,this.startLoc);this.parseBindingListItem(o),n.push(o)}return n},he.parseBindingListItem=function(e){return e},he.parseMaybeDefault=function(e,t,r){if(r=r||this.parseBindingAtom(),this.options.ecmaVersion<6||!this.eat(w.eq))return r;var n=this.startNodeAt(e,t);return n.left=r,n.right=this.parseMaybeAssign(),this.finishNode(n,"AssignmentPattern")},he.checkLValSimple=function(e,t,r){void 0===t&&(t=0);var n=0!==t;switch(e.type){case"Dereference":case"Identifier":this.strict&&this.reservedWordsStrictBind.test(e.name)&&this.raiseRecoverable(e.start,(n?"Binding ":"Assigning to ")+e.name+" in strict mode"),n&&(2===t&&"let"===e.name&&this.raiseRecoverable(e.start,"let is disallowed as a lexically bound name"),r&&(g(r,e.name)&&this.raiseRecoverable(e.start,"Argument name clash"),r[e.name]=!0),5!==t&&this.declareName(e.name,t,e.start));break;case"ChainExpression":this.raiseRecoverable(e.start,"Optional chaining cannot appear in left-hand side");break;case"MemberExpression":n&&this.raiseRecoverable(e.start,"Binding member expression");break;case"ParenthesizedExpression":return n&&this.raiseRecoverable(e.start,"Binding parenthesized expression"),this.checkLValSimple(e.expression,t,r);default:this.raise(e.start,(n?"Binding":"Assigning to")+" rvalue")}},he.checkLValPattern=function(e,t,r){switch(void 0===t&&(t=0),e.type){case"ObjectPattern":for(var n=0,s=e.properties;n<s.length;n+=1){var i=s[n];this.checkLValInnerPattern(i,t,r)}break;case"ArrayPattern":for(var o=0,a=e.elements;o<a.length;o+=1){var c=a[o];c&&this.checkLValInnerPattern(c,t,r)}break;default:this.checkLValSimple(e,t,r)}},he.checkLValInnerPattern=function(e,t,r){switch(void 0===t&&(t=0),e.type){case"Property":this.checkLValInnerPattern(e.value,t,r);break;case"AssignmentPattern":this.checkLValPattern(e.left,t,r);break;case"RestElement":this.checkLValPattern(e.argument,t,r);break;default:this.checkLValPattern(e,t,r)}};var de=function(e,t,r,n,s){this.token=e,this.isExpr=!!t,this.preserveSpace=!!r,this.override=n,this.generator=!!s},fe={b_stat:new de("{",!1),b_expr:new de("{",!0),b_tmpl:new de("${",!1),p_stat:new de("(",!1),p_expr:new de("(",!0),q_tmpl:new de("`",!0,!0,function(e){return e.tryReadTemplateToken()}),f_stat:new de("function",!1),f_expr:new de("function",!0),f_expr_gen:new de("function",!0,!1,null,!0),f_gen:new de("function",!1,!1,null,!0)},me=Z.prototype;me.initialContext=function(){return[fe.b_stat]},me.curContext=function(){return this.context[this.context.length-1]},me.braceIsBlock=function(e){var t=this.curContext();return t===fe.f_expr||t===fe.f_stat||(e!==w.colon||t!==fe.b_stat&&t!==fe.b_expr?e===w._return||e===w.name&&this.exprAllowed?D.test(this.input.slice(this.lastTokEnd,this.start)):e===w._else||e===w.semi||e===w.eof||e===w.parenR||e===w.arrow||(e===w.braceL?t===fe.b_stat:e!==w._var&&e!==w._const&&e!==w.name&&!this.exprAllowed):!t.isExpr)},me.inGeneratorContext=function(){for(var e=this.context.length-1;e>=1;e--){var t=this.context[e];if("function"===t.token)return t.generator}return!1},me.updateContext=function(e){var t,r=this.type;this.type.keyword&&e===w.dot?this.exprAllowed=!1:(t=r.updateContext)?t.call(this,e):this.exprAllowed=r.beforeExpr},me.overrideContext=function(e){this.curContext()!==e&&(this.context[this.context.length-1]=e)},w.parenR.updateContext=w.braceR.updateContext=function(){if(1!==this.context.length){var e=this.context.pop();e===fe.b_stat&&"function"===this.curContext().token&&(e=this.context.pop()),this.exprAllowed=!e.isExpr}else this.exprAllowed=!0},w.braceL.updateContext=function(e){this.context.push(this.braceIsBlock(e)?fe.b_stat:fe.b_expr),this.exprAllowed=!0},w.dollarBraceL.updateContext=function(){this.context.push(fe.b_tmpl),this.exprAllowed=!0},w.parenL.updateContext=function(e){var t=e===w._if||e===w._for||e===w._with||e===w._while;this.context.push(t?fe.p_stat:fe.p_expr),this.exprAllowed=!0},w.incDec.updateContext=function(){},w._function.updateContext=w._class.updateContext=function(e){!e.beforeExpr||e===w._else||e===w.semi&&this.curContext()!==fe.p_stat||e===w._return&&D.test(this.input.slice(this.lastTokEnd,this.start))||(e===w.colon||e===w.braceL)&&this.curContext()===fe.b_stat?this.context.push(fe.f_stat):this.context.push(fe.f_expr),this.exprAllowed=!1},w.backQuote.updateContext=function(){this.curContext()===fe.q_tmpl?this.context.pop():this.context.push(fe.q_tmpl),this.exprAllowed=!1},w.star.updateContext=function(e){if(e===w._function){var t=this.context.length-1;this.context[t]===fe.f_expr?this.context[t]=fe.f_expr_gen:this.context[t]=fe.f_gen}this.exprAllowed=!0},w.name.updateContext=function(e){var t=!1;this.options.ecmaVersion>=6&&e!==w.dot&&("of"===this.value&&!this.exprAllowed||"yield"===this.value&&this.inGeneratorContext())&&(t=!0),this.exprAllowed=t};var ge=Z.prototype;function _e(e){return"MemberExpression"===e.type&&"PrivateIdentifier"===e.property.type||"ChainExpression"===e.type&&_e(e.expression)}ge.checkPropClash=function(e,t,r){if(!(this.options.ecmaVersion>=9&&"SpreadElement"===e.type||this.options.ecmaVersion>=6&&(e.computed||e.method||e.shorthand))){var n,s=e.key;switch(s.type){case"Identifier":n=s.name;break;case"Literal":n=String(s.value);break;default:return}var i=e.kind;if(this.options.ecmaVersion>=6)"__proto__"===n&&"init"===i&&(t.proto&&(r?r.doubleProto<0&&(r.doubleProto=s.start):this.raiseRecoverable(s.start,"Redefinition of __proto__ property")),t.proto=!0);else{var o=t[n="$"+n];if(o)("init"===i?this.strict&&o.init||o.get||o.set:o.init||o[i])&&this.raiseRecoverable(s.start,"Redefinition of property");else o=t[n]={init:!1,get:!1,set:!1};o[i]=!0}}},ge.parseExpression=function(e,t,r,n){var s=this.start+this.tokMacroOffset,i=this.startLoc,o=this.parseMaybeAssign(e,t);if(!r&&this.type===w.comma){var a=this.startNodeAt(s,i);for(a.expressions=[o];this.eat(w.comma);)a.expressions.push(this.parseMaybeAssign(e,t));return this.finishNode(a,"SequenceExpression")}return o},ge.parseMaybeAssign=function(e,t,r){if(this.isContextual("yield")){if(this.inGenerator)return this.parseYield(e);this.exprAllowed=!1}var n=!1,s=-1,i=-1,o=-1;t?(s=t.parenthesizedAssign,i=t.trailingComma,o=t.doubleProto,t.parenthesizedAssign=t.trailingComma=-1):(t=new ne,n=!0);var a=this.start+this.tokMacroOffset,c=this.startLoc;this.type!==w.parenL&&this.type!==w.name||(this.potentialArrowAt=this.start,this.potentialArrowInForAwait="await"===e);var l=this.parseMaybeConditional(e,t);if(r&&(l=r.call(this,l,a,c)),this.type.isAssign){var p=this.startNodeAt(a,c);return p.operator=this.value,this.type===w.eq&&(l=this.toAssignable(l,!1,t)),n||(t.parenthesizedAssign=t.trailingComma=t.doubleProto=-1),t.shorthandAssign>=l.start&&(t.shorthandAssign=-1),this.type===w.eq?this.checkLValPattern(l):this.checkLValSimple(l),p.left=l,this.next(),p.right=this.parseMaybeAssign(e),o>-1&&(t.doubleProto=o),this.finishNode(p,"AssignmentExpression")}return n&&this.checkExpressionErrors(t,!0),s>-1&&(t.parenthesizedAssign=s),i>-1&&(t.trailingComma=i),l},ge.parseMaybeConditional=function(e,t){var r=this.start+this.tokMacroOffset,n=this.startLoc,s=this.parseExprOps(e,t);if(this.checkExpressionErrors(t))return s;if(this.eat(w.question)){var i=this.startNodeAt(r,n);return i.test=s,i.consequent=this.parseMaybeAssign(),this.expect(w.colon),i.alternate=this.parseMaybeAssign(e),this.finishNode(i,"ConditionalExpression")}return s},ge.parseExprOps=function(e,t){var r=this.start+this.tokMacroOffset,n=this.startLoc,s=this.parseMaybeUnary(t,!1,!1,e);return this.checkExpressionErrors(t)||s.start===r&&"ArrowFunctionExpression"===s.type?s:this.parseExprOp(s,r,n,-1,e)},ge.parseExprOp=function(e,t,r,n,s){var i=this.type.binop;if(null!=i&&(!s||this.type!==w._in)&&i>n){var o=this.type===w.logicalOR||this.type===w.logicalAND,a=this.type===w.coalesce;a&&(i=w.logicalAND.binop);var c=this.value,l=this.type===w._in;if(this.next(),l&&this.type===w.colon)return this.inIsIdentifier=!0,e;var p=this.start+this.tokMacroOffset,u=this.startLoc,h=this.parseExprOp(this.parseMaybeUnary(null,!1,!1,s),p,u,i,s),d=this.buildBinary(t,r,e,h,c,o||a);return(o&&this.type===w.coalesce||a&&(this.type===w.logicalOR||this.type===w.logicalAND))&&this.raiseRecoverable(this.start,"Logical expressions and coalesce expressions cannot be mixed. Wrap either by parentheses"),this.parseExprOp(d,t,r,n,s)}return e},ge.buildBinary=function(e,t,r,n,s,i){"PrivateIdentifier"===n.type&&this.raise(n.start,"Private identifier can only be left side of binary expression");var o=this.startNodeAt(e,t);return o.left=r,o.operator=s,o.right=n,this.finishNode(o,i?"LogicalExpression":"BinaryExpression")},ge.parseMaybeUnary=function(e,t,r,n){var s,i=this.start+this.tokMacroOffset,o=this.startLoc;if(this.isContextual("await")&&this.canAwait)s=this.parseAwait(n),t=!0;else if(this.type.prefix){var a=this.startNode(),c=this.type===w.incDec;a.operator=this.value,a.prefix=!0,this.next(),a.argument=this.parseMaybeUnary(null,!0,c,n),this.checkExpressionErrors(e,!0),c?this.checkLValSimple(a.argument):this.strict&&"delete"===a.operator&&"Identifier"===a.argument.type?this.raiseRecoverable(a.start,"Deleting local variable in strict mode"):"delete"===a.operator&&_e(a.argument)?this.raiseRecoverable(a.start,"Private fields can not be deleted"):t=!0,s=this.finishNode(a,c?"UpdateExpression":"UnaryExpression")}else if(t||this.type!==w.privateId){if(s=this.parseExprSubscripts(e,n),this.checkExpressionErrors(e))return s;for(;this.type.postfix&&!this.canInsertSemicolon();){var l=this.startNodeAt(i,o);l.operator=this.value,l.prefix=!1,l.argument=s,this.checkLValSimple(s),this.next(),s=this.finishNode(l,"UpdateExpression")}}else(n||0===this.privateNameStack.length)&&this.unexpected(),s=this.parsePrivateIdent(),this.type!==w._in&&this.unexpected();return r||!this.eat(w.starstar)?s:t?void this.unexpected(this.lastTokStart):this.buildBinary(i,o,s,this.parseMaybeUnary(null,!1,!1,n),"**",!1)},ge.parseExprSubscripts=function(e,t){var r=this.start+this.tokMacroOffset,n=this.startLoc,s=this.parseExprAtom(e,t);if("ArrowFunctionExpression"===s.type&&")"!==this.input.slice(this.lastTokStart,this.lastTokEnd))return s;var i=this.parseSubscripts(s,r,n,!1,t);return e&&"MemberExpression"===i.type&&(e.parenthesizedAssign>=i.start&&(e.parenthesizedAssign=-1),e.parenthesizedBind>=i.start&&(e.parenthesizedBind=-1),e.trailingComma>=i.start&&(e.trailingComma=-1)),i},ge.parseSubscripts=function(e,t,r,n,s){for(var i=this.options.ecmaVersion>=8&&"Identifier"===e.type&&"async"===e.name&&this.lastTokEnd===e.end&&!this.canInsertSemicolon()&&e.end-e.start===5&&this.potentialArrowAt===e.start,o=!1;;){var a=this.parseSubscript(e,t,r,n,i,o,s);if(a.optional&&(o=!0),a===e||"ArrowFunctionExpression"===a.type){if(o){var c=this.startNodeAt(t,r);c.expression=a,a=this.finishNode(c,"ChainExpression")}return a}e=a}},ge.parseSubscript=function(e,t,r,n,s,i,o){var a,c,l=this.options.ecmaVersion>=11,p=l&&this.eat(w.questionDot);n&&p&&this.raise(this.lastTokStart,"Optional chaining cannot appear in the callee of new expressions"),this.options.objj&&(a=this.startNode(),c=this.canInsertSemicolon());var u=this.eat(w.bracketL);if(u||p&&this.type!==w.parenL&&this.type!==w.backQuote||this.eat(w.dot)){var h=this.startNodeAt(t,r);if(h.object=e,u){if(h.property=this.parseExpression(),this.options.objj&&this.type!==w.bracketR)return a.object=h.property,a.canInsertSemicolonBefore=c,this.nodeMessageSendObjectExpression=a,e;this.expect(w.bracketR)}else this.type===w.privateId&&"Super"!==e.type?h.property=this.parsePrivateIdent():h.property=this.parseIdent("never"!==this.options.allowReserved);h.computed=!!u,l&&(h.optional=p),e=this.finishNode(h,"MemberExpression")}else if(!n&&this.eat(w.parenL)){var d=new ne,f=this.yieldPos,m=this.awaitPos,g=this.awaitIdentPos;this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0;var _=this.parseExprList(w.parenR,this.options.ecmaVersion>=8,!1,d);if(s&&!p&&!this.canInsertSemicolon()&&this.eat(w.arrow))return this.checkPatternErrors(d,!1),this.checkYieldAwaitInDefaultParams(),this.awaitIdentPos>0&&this.raise(this.awaitIdentPos,"Cannot use 'await' as identifier inside an async function"),this.yieldPos=f,this.awaitPos=m,this.awaitIdentPos=g,this.parseArrowExpression(this.startNodeAt(t,r),_,!0,o);this.checkExpressionErrors(d,!0),this.yieldPos=f||this.yieldPos,this.awaitPos=m||this.awaitPos,this.awaitIdentPos=g||this.awaitIdentPos;var y=this.startNodeAt(t,r);y.callee=e,y.arguments=_,l&&(y.optional=p),e=this.finishNode(y,"CallExpression")}else if(this.type===w.backQuote){(p||i)&&this.raise(this.start,"Optional chaining cannot appear in the tag of tagged template expressions");var v=this.startNodeAt(t,r);v.tag=e,v.quasi=this.parseTemplate({isTagged:!0}),e=this.finishNode(v,"TaggedTemplateExpression")}return e},ge.parseExprAtom=function(e,t){this.type===w.slash&&this.readRegexp();var r,n=this.potentialArrowAt===this.start;switch(this.type){case w._super:return this.allowSuper||this.raise(this.start,"'super' keyword outside a method"),r=this.startNode(),this.next(),this.type!==w.parenL||this.allowDirectSuper||this.raise(r.start,"super() call outside constructor of a subclass"),this.type===w.dot||this.type===w.bracketL||this.type===w.parenL||this.options.objj&&this.type===w.name||this.unexpected(),this.finishNode(r,"Super");case w._this:return r=this.startNode(),this.next(),this.finishNode(r,"ThisExpression");case w.name:case N._id:case N._char:case N._long:case N._short:var s=this.start+this.tokMacroOffset,i=this.startLoc,o=this.containsEsc,a=this.parseIdent(!1);if(this.options.ecmaVersion>=8&&!o&&"async"===a.name&&!this.canInsertSemicolon()&&this.eat(w._function))return this.overrideContext(fe.f_expr),this.parseFunction(this.startNodeAt(s,i),0,!1,!0,t);if(n&&!this.canInsertSemicolon()){if(this.eat(w.arrow))return this.parseArrowExpression(this.startNodeAt(s,i),[a],!1,t);if(this.options.ecmaVersion>=8&&"async"===a.name&&this.type===w.name&&!o&&(!this.potentialArrowInForAwait||"of"!==this.value||this.containsEsc))return a=this.parseIdent(!1),!this.canInsertSemicolon()&&this.eat(w.arrow)||this.unexpected(),this.parseArrowExpression(this.startNodeAt(s,i),[a],!0,t)}return a;case w.regexp:var c=this.value;return(r=this.parseLiteral(c.value)).regex={pattern:c.pattern,flags:c.flags},r;case w.num:case w.string:return this.parseLiteral(this.value);case w._null:case w._true:case w._false:return(r=this.startNode()).value=this.type===w._null?null:this.type===w._true,r.raw=this.type.keyword,this.next(),this.finishNode(r,"Literal");case w.parenL:var l=this.start,p=this.parseParenAndDistinguishExpression(n,t);return e&&(e.parenthesizedAssign<0&&!this.isSimpleAssignTarget(p)&&(e.parenthesizedAssign=l),e.parenthesizedBind<0&&(e.parenthesizedBind=l)),p;case w.bracketL:r=this.startNode(),this.next();var u=null;if(this.type===w.ellipsis)u=this.parseSpread(e),e&&this.type===w.comma&&e.trailingComma<0&&(e.trailingComma=this.start);else if(this.type!==w.comma&&this.type!==w.bracketR&&(u=this.parseExpression(!1,e,!0,!0),this.type!==w.comma&&this.type!==w.bracketR))return this.parseObjjMessageSendExpression(r,u);return r.elements=this.parseExprList(w.bracketR,!0,!0,e,u),this.finishNode(r,"ArrayExpression");case w.braceL:return this.overrideContext(fe.b_expr),this.parseObj(!1,e);case w._function:return r=this.startNode(),this.next(),this.parseFunction(r,0);case w._class:return this.parseClass(this.startNode(),!1);case w._new:return this.parseNew();case w.backQuote:return this.parseTemplate();case w._import:return this.options.ecmaVersion>=11?this.parseExprImport():this.unexpected();case M._selector:return r=this.startNode(),this.next(),this.expect(w.parenL,"Expected '(' after '@selector'"),this.parseObjjSelector(r,w.parenR),this.expect(w.parenR,"Expected closing ')' after selector"),this.finishNode(r,"SelectorLiteralExpression");case M._ref:return r=this.startNode(),this.next(),this.expect(w.parenL,"Expected '(' after '@ref'"),r.element=this.parseIdent(r,w.parenR),this.expect(w.parenR,"Expected closing ')' after ref"),this.finishNode(r,"Reference");case M._deref:return r=this.startNode(),this.next(),this.expect(w.parenL,"Expected '(' after '@deref'"),r.expr=this.parseExpression(!0,e,!0,!0),this.expect(w.parenR,"Expected closing ')' after deref"),this.finishNode(r,"Dereference");case M._dictionaryLiteral:r=this.startNode(),this.next();var h=this.parseObjjDictionary();return r.keys=h[0],r.values=h[1],this.finishNode(r,"DictionaryLiteral");case M._arrayLiteral:return r=this.startNode(),u=null,this.next(),this.expect(w.bracketL,"Expected '[' at beginning of array literal"),this.type!==w.bracketR&&(u=this.parseExpression(!0,e,!0,!0)),r.elements=this.parseExprList(w.bracketR,!0,!0,e,u),this.finishNode(r,"ArrayLiteral");case M._protocol:return r=this.startNode(),this.next(),this.expect(w.parenL,"Expected '(' after '@protocol'"),r.id=this.parseIdent(!0),this.expect(w.parenR,"Expected closing ')' after protocol name"),this.finishNode(r,"ProtocolLiteralExpression");default:this.unexpected()}},ge.parseExprImport=function(){var e=this.startNode();this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword import");var t=this.parseIdent(!0);switch(this.type){case w.parenL:return this.parseDynamicImport(e);case w.dot:return e.meta=t,this.parseImportMeta(e);default:this.unexpected()}},ge.parseDynamicImport=function(e){if(this.next(),e.source=this.parseMaybeAssign(),!this.eat(w.parenR)){var t=this.start;this.eat(w.comma)&&this.eat(w.parenR)?this.raiseRecoverable(t,"Trailing comma is not allowed in import()"):this.unexpected(t)}return this.finishNode(e,"ImportExpression")},ge.parseImportMeta=function(e){this.next();var t=this.containsEsc;return e.property=this.parseIdent(!0),"meta"!==e.property.name&&this.raiseRecoverable(e.property.start,"The only valid meta property for import is 'import.meta'"),t&&this.raiseRecoverable(e.start,"'import.meta' must not contain escaped characters"),"module"===this.options.sourceType||this.options.allowImportExportEverywhere||this.raiseRecoverable(e.start,"Cannot use 'import.meta' outside a module"),this.finishNode(e,"MetaProperty")},ge.parseLiteral=function(e){var t=this.startNode();return t.value=e,t.raw=this.tokInput.slice(this.start,this.end),110===t.raw.charCodeAt(t.raw.length-1)&&(t.bigint=t.raw.slice(0,-1).replace(/_/g,"")),this.next(),this.finishNode(t,"Literal")},ge.parseParenExpression=function(){this.expect(w.parenL);var e=this.parseExpression();return this.expect(w.parenR),e},ge.parseParenAndDistinguishExpression=function(e,t){var r,n=this.start+this.tokMacroOffset,s=this.startLoc,i=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var o,a=this.start+this.tokMacroOffset,c=this.startLoc,l=[],p=!0,u=!1,h=new ne,d=this.yieldPos,f=this.awaitPos;for(this.yieldPos=0,this.awaitPos=0;this.type!==w.parenR;){if(p?p=!1:this.expect(w.comma),i&&this.afterTrailingComma(w.parenR,!0)){u=!0;break}if(this.type===w.ellipsis){o=this.start,l.push(this.parseParenItem(this.parseRestBinding())),this.type===w.comma&&this.raise(this.start,"Comma is not permitted after the rest element");break}l.push(this.parseMaybeAssign(!1,h,this.parseParenItem))}var m=this.lastTokEnd+this.lastTokMacroOffset,g=this.lastTokEndLoc;if(this.expect(w.parenR),e&&!this.canInsertSemicolon()&&this.eat(w.arrow))return this.checkPatternErrors(h,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=d,this.awaitPos=f,this.parseParenArrowList(n,s,l,t);l.length&&!u||this.unexpected(this.lastTokStart),o&&this.unexpected(o),this.checkExpressionErrors(h,!0),this.yieldPos=d||this.yieldPos,this.awaitPos=f||this.awaitPos,l.length>1?((r=this.startNodeAt(a,c)).expressions=l,this.finishNodeAt(r,"SequenceExpression",m,g)):r=l[0]}else r=this.parseParenExpression();if(this.options.preserveParens){var _=this.startNodeAt(n,s);return _.expression=r,this.finishNode(_,"ParenthesizedExpression")}return r},ge.parseParenItem=function(e){return e},ge.parseParenArrowList=function(e,t,r,n){return this.parseArrowExpression(this.startNodeAt(e,t),r,!1,n)};var ye=[];ge.parseNew=function(){this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword new");var e=this.startNode(),t=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(w.dot)){e.meta=t;var r=this.containsEsc;return e.property=this.parseIdent(!0),"target"!==e.property.name&&this.raiseRecoverable(e.property.start,"The only valid meta property for new is 'new.target'"),r&&this.raiseRecoverable(e.start,"'new.target' must not contain escaped characters"),this.allowNewDotTarget||this.raiseRecoverable(e.start,"'new.target' can only be used in functions and class static block"),this.finishNode(e,"MetaProperty")}var n=this.start+this.tokMacroOffset,s=this.startLoc,i=this.type===w._import;return e.callee=this.parseSubscripts(this.parseExprAtom(),n,s,!0,!1),i&&"ImportExpression"===e.callee.type&&this.raise(n,"Cannot use new with import()"),this.eat(w.parenL)?e.arguments=this.parseExprList(w.parenR,this.options.ecmaVersion>=8,!1):e.arguments=ye,this.finishNode(e,"NewExpression")},ge.parseTemplateElement=function(e){var t=e.isTagged,r=this.startNode();return this.type===w.invalidTemplate?(t||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),r.value={raw:this.value,cooked:null}):r.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,"\n"),cooked:this.value},this.next(),r.tail=this.type===w.backQuote,this.finishNode(r,"TemplateElement")},ge.parseTemplate=function(e){void 0===e&&(e={});var t=e.isTagged;void 0===t&&(t=!1);var r=this.startNode();this.next(),r.expressions=[];var n=this.parseTemplateElement({isTagged:t});for(r.quasis=[n];!n.tail;)this.type===w.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(w.dollarBraceL),r.expressions.push(this.parseExpression()),this.expect(w.braceR),r.quasis.push(n=this.parseTemplateElement({isTagged:t}));return this.next(),this.finishNode(r,"TemplateLiteral")},ge.isAsyncProp=function(e){return!e.computed&&"Identifier"===e.key.type&&"async"===e.key.name&&(this.type===w.name||this.type===w.num||this.type===w.string||this.type===w.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===w.star)&&!D.test(this.input.slice(this.lastTokEnd,this.start))},ge.parseObj=function(e,t){var r=this.startNode(),n=!0,s={};for(r.properties=[],this.next();!this.eat(w.braceR);){if(n)n=!1;else if(this.expect(w.comma),this.options.ecmaVersion>=5&&this.afterTrailingComma(w.braceR))break;var i=this.parseProperty(e,t);e||this.checkPropClash(i,s,t),r.properties.push(i)}return this.finishNode(r,e?"ObjectPattern":"ObjectExpression")},ge.parseProperty=function(e,t){var r,n,s,i,o=this.startNode();if(this.options.ecmaVersion>=9&&this.eat(w.ellipsis))return e?(o.argument=this.parseIdent(!1),this.type===w.comma&&this.raise(this.start,"Comma is not permitted after the rest element"),this.finishNode(o,"RestElement")):(o.argument=this.parseMaybeAssign(!1,t),this.type===w.comma&&t&&t.trailingComma<0&&(t.trailingComma=this.start),this.finishNode(o,"SpreadElement"));this.options.ecmaVersion>=6&&(o.method=!1,o.shorthand=!1,(e||t)&&(s=this.start+this.tokMacroOffset,i=this.startLoc),e||(r=this.eat(w.star)));var a=this.containsEsc;return this.parsePropertyName(o),!e&&!a&&this.options.ecmaVersion>=8&&!r&&this.isAsyncProp(o)?(n=!0,r=this.options.ecmaVersion>=9&&this.eat(w.star),this.parsePropertyName(o,t)):n=!1,this.parsePropertyValue(o,e,r,n,s,i,t,a),this.finishNode(o,"Property")},ge.parsePropertyValue=function(e,t,r,n,s,i,o,a){if((r||n)&&this.type===w.colon&&this.unexpected(),this.eat(w.colon))e.value=t?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,o),e.kind="init";else if(this.options.ecmaVersion>=6&&this.type===w.parenL)t&&this.unexpected(),e.kind="init",e.method=!0,e.value=this.parseMethod(r,n);else if(t||a||!(this.options.ecmaVersion>=5)||e.computed||"Identifier"!==e.key.type||"get"!==e.key.name&&"set"!==e.key.name||this.type===w.comma||this.type===w.braceR||this.type===w.eq)this.options.ecmaVersion>=6&&!e.computed&&"Identifier"===e.key.type?((r||n)&&this.unexpected(),this.checkUnreserved(e.key),"await"!==e.key.name||this.awaitIdentPos||(this.awaitIdentPos=s),e.kind="init",t?e.value=this.parseMaybeDefault(s,i,this.copyNode(e.key)):this.type===w.eq&&o?(o.shorthandAssign<0&&(o.shorthandAssign=this.start),e.value=this.parseMaybeDefault(s,i,this.copyNode(e.key))):e.value=this.copyNode(e.key),e.shorthand=!0):this.unexpected();else{(r||n)&&this.unexpected(),e.kind=e.key.name,this.parsePropertyName(e),e.value=this.parseMethod(!1);var c="get"===e.kind?0:1;if(e.value.params.length!==c){var l=e.value.start;"get"===e.kind?this.raiseRecoverable(l,"getter should have no params"):this.raiseRecoverable(l,"setter should have exactly one param")}else"set"===e.kind&&"RestElement"===e.value.params[0].type&&this.raiseRecoverable(e.value.params[0].start,"Setter cannot use rest params")}},ge.parsePropertyName=function(e){if(this.options.ecmaVersion>=6){if(this.eat(w.bracketL))return e.computed=!0,e.key=this.parseMaybeAssign(),this.expect(w.bracketR),e.key;e.computed=!1}return e.key=this.type===w.num||this.type===w.string?this.parseExprAtom():this.parseIdent("never"!==this.options.allowReserved)},ge.initFunction=function(e){e.id=null,this.options.ecmaVersion>=6&&(e.generator=e.expression=!1),this.options.ecmaVersion>=8&&(e.async=!1)},ge.parseMethod=function(e,t,r){var n=this.startNode(),s=this.yieldPos,i=this.awaitPos,o=this.awaitIdentPos;return this.initFunction(n),this.options.ecmaVersion>=6&&(n.generator=e),this.options.ecmaVersion>=8&&(n.async=!!t),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(64|Q(t,n.generator)|(r?128:0)),this.expect(w.parenL),n.params=this.parseBindingList(w.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(n,!1,!0,!1),this.yieldPos=s,this.awaitPos=i,this.awaitIdentPos=o,this.finishNode(n,"FunctionExpression")},ge.parseArrowExpression=function(e,t,r,n){var s=this.yieldPos,i=this.awaitPos,o=this.awaitIdentPos;return this.enterScope(16|Q(r,!1)),this.initFunction(e),this.options.ecmaVersion>=8&&(e.async=!!r),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,e.params=this.toAssignableList(t,!0),this.parseFunctionBody(e,!0,!1,n),this.yieldPos=s,this.awaitPos=i,this.awaitIdentPos=o,this.finishNode(e,"ArrowFunctionExpression")},ge.parseFunctionBody=function(e,t,r,n){var s=t&&this.type!==w.braceL,i=this.strict,o=!1;if(s)e.body=this.parseMaybeAssign(n),e.expression=!0,this.checkParams(e,!1);else{var a=this.options.ecmaVersion>=7&&!this.isSimpleParamList(e.params);i&&!a||(o=this.strictDirective(this.end))&&a&&this.raiseRecoverable(e.start,"Illegal 'use strict' directive in function with non-simple parameter list");var c=this.labels;this.labels=[],o&&(this.strict=!0),this.checkParams(e,!i&&!o&&!t&&!r&&this.isSimpleParamList(e.params)),this.strict&&e.id&&this.checkLValSimple(e.id,5),e.body=this.parseBlock(!1,undefined,o&&!i),e.expression=!1,this.adaptDirectivePrologue(e.body.body),this.labels=c}this.exitScope()},ge.isSimpleParamList=function(e){for(var t=0,r=e;t<r.length;t+=1){if("Identifier"!==r[t].type)return!1}return!0},ge.checkParams=function(e,t){for(var r=Object.create(null),n=0,s=e.params;n<s.length;n+=1){var i=s[n];this.checkLValInnerPattern(i,1,t?null:r)}},ge.parseExprList=function(e,t,r,n,s){var i=[],o=!0;if(s&&this.eat(e))return[s];for(;!this.eat(e)&&(o||(this.expect(w.comma),!t||!this.afterTrailingComma(e)));){var a=void 0;o&&s?a=s:r&&this.type===w.comma?a=null:this.type===w.ellipsis?(a=this.parseSpread(n),n&&this.type===w.comma&&n.trailingComma<0&&(n.trailingComma=this.start)):a=this.parseMaybeAssign(!1,n),o&&(o=!1),i.push(a)}return i},ge.checkUnreserved=function(e){var t=e.start,r=e.end,n=e.name;if((this.inGenerator&&"yield"===n&&this.raiseRecoverable(t,"Cannot use 'yield' as identifier inside a generator"),this.inAsync&&"await"===n&&this.raiseRecoverable(t,"Cannot use 'await' as identifier inside an async function"),this.currentThisScope().inClassFieldInit&&"arguments"===n&&this.raiseRecoverable(t,"Cannot use 'arguments' in class field initializer"),!this.inClassStaticBlock||"arguments"!==n&&"await"!==n||this.raise(t,"Cannot use "+n+" in class static initialization block"),this.keywords.test(n)&&this.raise(t,"Unexpected keyword '"+n+"'"),!(this.options.ecmaVersion<6&&-1!==this.input.slice(t,r).indexOf("\\")))&&(this.strict?this.reservedWordsStrict:this.reservedWords).test(n)){if(this.inAsync||"await"!==n||this.raiseRecoverable(t,"Cannot use keyword 'await' outside an async function"),this.options.objj&&"super"===n)return;this.raiseRecoverable(t,"The keyword '"+n+"' is reserved")}},ge.parseIdent=function(e,t){var r=this.startNode();return this.type===w.name?r.name=this.value:this.type.keyword?(r.name=this.type.keyword,"class"!==r.name&&"function"!==r.name||this.lastTokEnd===this.lastTokStart+1&&46===this.input.charCodeAt(this.lastTokStart)||this.context.pop()):this.unexpected(),this.next(!!e),this.finishNode(r,"Identifier"),e||(this.checkUnreserved(r),"await"!==r.name||this.awaitIdentPos||(this.awaitIdentPos=r.start)),r},ge.parsePrivateIdent=function(){var e=this.startNode();return this.type===w.privateId?e.name=this.value:this.unexpected(),this.next(),this.finishNode(e,"PrivateIdentifier"),0===this.privateNameStack.length?this.raise(e.start,"Private field '#"+e.name+"' must be declared in an enclosing class"):this.privateNameStack[this.privateNameStack.length-1].used.push(e),e},ge.parseYield=function(e){this.yieldPos||(this.yieldPos=this.start);var t=this.startNode();return this.next(),this.type===w.semi||this.canInsertSemicolon()||this.type!==w.star&&!this.type.startsExpr?(t.delegate=!1,t.argument=null):(t.delegate=this.eat(w.star),t.argument=this.parseMaybeAssign(e)),this.finishNode(t,"YieldExpression")},ge.parseAwait=function(e){this.awaitPos||(this.awaitPos=this.start);var t=this.startNode();return this.next(),t.argument=this.parseMaybeUnary(null,!0,!1,e),this.finishNode(t,"AwaitExpression")};var ve=Z.prototype;ve.raise=function(e,t){var r=z(this.input,e);t+=" ("+r.line+":"+r.column+")";var n=new SyntaxError(t);throw n.pos=e,n.loc=r,n.raisedAt=this.pos,n},ve.raiseRecoverable=ve.raise,ve.curPosition=function(){if(this.options.locations){var e=this.curLine,t=this.pos-this.lineStart;if(this.preprocessStackLastItem){var r=this.preprocessStackLastItem.macro.locationOffset;if(r){var n=r.line;n&&(e+=n);var s=r.column;s&&(t+=this.tokPosMacroOffset-(1===this.curLine?s:0))}}return new H(e,t)}};var Se=Z.prototype,be=function(e){this.flags=e,this.var=[],this.lexical=[],this.functions=[],this.inClassFieldInit=!1};Se.enterScope=function(e){this.scopeStack.push(new be(e))},Se.exitScope=function(){this.scopeStack.pop()},Se.treatFunctionsAsVarInScope=function(e){return 2&e.flags||!this.inModule&&1&e.flags},Se.declareName=function(e,t,r){var n=!1;if(2===t){var s=this.currentScope();n=s.lexical.indexOf(e)>-1||s.functions.indexOf(e)>-1||s.var.indexOf(e)>-1,s.lexical.push(e),this.inModule&&1&s.flags&&delete this.undefinedExports[e]}else if(4===t){this.currentScope().lexical.push(e)}else if(3===t){var i=this.currentScope();n=this.treatFunctionsAsVar?i.lexical.indexOf(e)>-1:i.lexical.indexOf(e)>-1||i.var.indexOf(e)>-1,i.functions.push(e)}else for(var o=this.scopeStack.length-1;o>=0;--o){var a=this.scopeStack[o];if(a.lexical.indexOf(e)>-1&&!(32&a.flags&&a.lexical[0]===e)||!this.treatFunctionsAsVarInScope(a)&&a.functions.indexOf(e)>-1){n=!0;break}if(a.var.push(e),this.inModule&&1&a.flags&&delete this.undefinedExports[e],259&a.flags)break}n&&this.raiseRecoverable(r,"Identifier '"+e+"' has already been declared")},Se.checkLocalExport=function(e){-1===this.scopeStack[0].lexical.indexOf(e.name)&&-1===this.scopeStack[0].var.indexOf(e.name)&&(this.undefinedExports[e.name]=e)},Se.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},Se.currentVarScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(259&t.flags)return t}},Se.currentThisScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(259&t.flags&&!(16&t.flags))return t}},Se.currentObjJMethodScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(512&t.flags||1&t.flags)return t}};var Ee=Z.prototype,Ce=function(e,t,r){if(this.line=e-1,this.column=t,r){var n=r.macro.locationOffset;if(n){var s=n.line;s&&(this.line+=s);var i=n.column;i&&(this.column+=i)}}};Ee.preprocesSkipRestOfLine=function(){for(var e,t=this.input.charCodeAt(this.pos);this.pos<this.input.length&&(10!==t&&13!==t&&8232!==t&&8233!==t||92===e);)32!==t&&9!==t&&160!==t&&(t<5760||!K.test(String.fromCharCode(t)))&&(e=t),t=this.input.charCodeAt(++this.pos)},Ee.preprocessReadToken=function(e,t,r,n){if(this.skipSpace(!0),this.preStart=this.pos,this.preInput=this.input,this.preParameterScope=this.preprocessParameterScope,this.pos>=this.input.length)return this.preprocessFinishToken(w.eof);var s=this.input.charCodeAt(this.pos);if(!t&&!this.preNotSkipping&&35!==s)return this.preprocesSkipRestOfLine(),this.preprocessFinishToken(P._preprocessSkipLine,this.input.slice(this.preStart,this.pos)),void this.preprocessSkipSpace(!0,!0);if(this.preprocessMacroParameterListMode&&41!==s&&44!==s){for(var i=0;this.pos<this.input.length&&(i||41!==s&&44!==s);){if(40===s&&i++,41===s&&i--,34===s||39===s){var o=s;for(s=this.input.charCodeAt(++this.pos);this.pos<this.input.length&&s!==o;)92===s&&(s=this.input.charCodeAt(++this.pos))!==o||(s=this.input.charCodeAt(++this.pos))}s=this.input.charCodeAt(++this.pos)}return this.preprocessFinishToken(w._preprocessParamItem,this.input.slice(this.preStart,this.pos))}if(u(s,this.options.ecmaVersion>=6)||92===s&&117===this.input.charCodeAt(this.pos+1))return this.preprocessReadWord(r);if(!1===this.getTokenFromCode(s,e?this.preprocessFinishTokenSkipComments:this.preprocessFinishToken,!0)){var a=String.fromCharCode(s);if("\\"===a||c.test(a))return this.preprocessReadWord(r);this.raise(this.pos,"Unexpected character '"+a+"'")}},Ee.preprocessReadWord=function(e,t){var r,n=this.readWord1(),s=w.name;if(e&&this.options.preprocess&&!0===(r=this.readMacroWord(n,this.preprocessNext,t)))return!0;!this.containsEsc&&k.test(n)&&(s=F[n]),this.preprocessFinishToken(s,n,r,!1,e)},Ee.readMacroWord=function(e,t,r){var n,s=this.preprocessStackLastItem,i=this.preprocessParameterScope;if(s){var o=this.preTokParameterScope||this.preprocessStackLastItem;if(o.parameterDict&&o.macro.isParameterFunction().test(e)){if(!(n=o.parameterDict[e])&&o.macro.variadicName===e)return this.preConcatenating?(this.finishToken(w.name,""),!0):(this.skipSpace(),t.call(this,!1,!0,r,!0),!0);this.preprocessPrescanFor(35,35)&&(r=2),this.preprocessParameterScope=n&&n.parameterScope,r--}}if(!n&&(!r&&!this.preprocessOnlyTransformArgumentsForLastToken||this.pos<this.input.length)&&this.options.preprocessIsMacro(e))if(this.preprocessParameterScope=null,n=this.options.preprocessGetMacro(e)){if(!this.preprocessStackLastItem||!this.preprocessStackLastItem.macro.isArgument)for(var a,c=this.preprocessStack.length;c>0;){var l=this.preprocessStack[--c].macro;l.identifier!==e||a&&a.isArgument||(n=null),a=l}}else n=this.preprocessBuiltinMacro(e);if(n){var p,u,h=n.parameters;if(h){var d=this.pos;if(!this.preprocessPrescanFor(40))return d;u=!0}if(!h||u){if(u){var f=n.variadicName,m=!0,g=0;p=Object.create(null),this.skipSpace(!0),40!==this.input.charCodeAt(this.pos++)&&this.raise(this.pos-1,"Expected '(' before macro prarameters"),this.skipSpace(!0,!0,!0);for(var _=this.input.charCodeAt(this.pos++);this.pos<this.input.length&&41!==_;){m?m=!1:44===_?(this.skipSpace(!0,!0,!0),_=this.input.charCodeAt(this.pos++)):this.raise(this.pos-1,"Expected ',' between macro parameters");for(var y=h[g++],v=f&&h.length===g,S=this.pos-1,b=0,E=this.options.locations&&new Ce(this.curLine,this.tokLineStart);this.pos<this.input.length&&(b||41!==_&&(44!==_||v));){if(40===_&&b++,41===_&&b--,34===_||39===_){var C=_;for(_=this.input.charCodeAt(this.pos++);this.pos<this.input.length&&_!==C;)92===_&&(_=this.input.charCodeAt(this.pos++))!==C||(_=this.input.charCodeAt(this.pos++))}_=this.input.charCodeAt(this.pos++)}var L=this.input.slice(S,this.pos-1),x=L.trimStart(),R=x.trimEnd(),F=L.length-x.length;p[y]=new $(y,R,null,S+this.tokMacroOffset+F,!0,this.preTokParameterScope||this.preprocessStackLastItem,!1,E)}41!==_&&this.raise(this.pos,"Expected ')' after macro prarameters"),this.skipSpace(!0,!0)}return this.readTokenFromMacro(n,this.tokPosMacroOffset,p,i,this.pos,t,r)}}},Ee.preprocessPrescanFor=function(e,t){var r=this.preprocessStack.length,n=this.input,s=this.pos;e:for(;null!=n;){t:for(;;){var i=n.charCodeAt(s);if(32===i)++s;else if(13===i){++s,10===n.charCodeAt(s)&&++s}else if(10===i)++s;else if(9===i)++s;else if(47===i){var o=n.charCodeAt(s+1);if(42===o){var a=n.indexOf("*/",s+=2);-1===a&&this.raise(s-2,"Unterminated comment"),s=a+2}else{if(47!==o)break e;for(i=n.charCodeAt(s+=2);s<n.length&&10!==i&&13!==i&&8232!==i&&8233!==i;)++s,i=n.charCodeAt(s)}}else if(160===i||11===i||12===i||i>=5760&&K.test(String.fromCharCode(i)))++s;else{if(s>=n.length)break t;if(92!==i)break e;var c=s+1;for(i=n.charCodeAt(c);c<n.length&&(32===i||9===i||11===i||12===i||i>=5760&&K.test(String.fromCharCode(i)));)i=n.charCodeAt(++c);D.lastIndex=0;var l=D.exec(n.slice(c,c+2));if(!l||0!==l.index)break e;s=c+l[0].length}}var p=this.preprocessStack[--r];if(null==p)return!1;s=p.end,n=p.input}return n&&n.charCodeAt(s)===e&&(null==t||n.charCodeAt(s+1)===t)},Ee.readTokenFromMacro=function(e,t,r,n,s,i,o){var a=e.macro;if(a||i!==this.preprocessNext||(a="1"),a)this.pushMacroToStack(e,a,t,r,n,s,o);else if(this.preConcatenating)return(i===this.next?this.finishToken:this.preprocessFinishToken).call(this,w.name,""),!0;return this.skipSpace(),i.call(this,!1,!0,o,!0),!0},Ee.preprocessBuiltinMacro=function(e){var t=this.macrosBuiltinMacros[e];return t?t(this):null},Ee.defineMacros=function(e){for(var t={preprocess:!0,ecmaVersion:this.options.ecmaVersion,preprocessAddMacro:this.options.preprocessAddMacro,preprocessGetMacro:this.options.preprocessGetMacro,preprocessUndefineMacro:this.options.preprocessUndefineMacro,preprocessIsMacro:this.options.preprocessIsMacro},r=0,n=e.length;r<n;r++){var s=e[r].trim(),i=s.indexOf("=");0===i&&this.raise(0,"Invalid macro definition: '"+s+"'");var o=void 0,a=void 0;i>0?(o=s.slice(0,i),a=s.slice(i+1)):o=s,Object.prototype.hasOwnProperty.call(this.macrosBuiltinMacros,o)&&this.raise(0,"'"+o+"' is a predefined macro name"),new Z(t,o+(null!=a?" "+a:"")).preprocessParseDefine()}},Ee.pushMacroToStack=function(e,t,r,n,s,i,o,a){this.preprocessStackLastItem={macro:e,macroOffset:r,parameterDict:n,end:i,lastEnd:this.localLastEnd,tokStart:this.start,onlyTransformArgumentsForLastToken:this.preprocessOnlyTransformArgumentsForLastToken,currentLine:this.curLine,currentLineStart:this.lineStart,sourceFile:this.sourceFile},s&&(this.preprocessStackLastItem.parameterScope=s),a&&(this.preprocessStackLastItem.isIncludeFile=a),this.preprocessStackLastItem.input=this.input,this.preprocessStack.push(this.preprocessStackLastItem),this.preprocessOnlyTransformArgumentsForLastToken=o,this.input=t,this.tokPosMacroOffset=e.start,this.pos=0,this.curLine=1,this.lineStart=0,this.firstEnd=0,this.localLastEnd=0,e.sourceFile&&(this.sourceFile=e.sourceFile)},Ee.preprocessFinishTokenSkipComments=function(e,t){this.preType=e,this.preVal=t,this.firstEnd=this.preEnd=this.pos,this.preprocessSkipSpace(!0)},Ee.preprocessNext=function(e,t,r,n){return t||(this.preLastStart=this.preStart,this.preLastEnd=this.preEnd),this.localLastEnd=this.firstEnd,this.preprocessReadToken(!1,!1,n,r)},Ee.preprocessSkipSpace=function(e,t){return this.skipSpace(!t,!1,e)},Ee.preprocessEat=function(e,t){if(this.preType===e)return this.preprocessNext(!1,!1,!1,t),!0},Ee.preprocessExpect=function(e,t,r){this.preType===e?this.preprocessNext(!1,!1,undefined,null,r):this.raise(this.preStart,t||"Unexpected token")},Ee.preprocessGetIdent=function(e){var t=this.preType===w.name?this.preVal:(!this.options.forbidReserved||this.preType.okAsIdent)&&this.preType.keyword||void 0;return this.exprAllowed=!1,this.preprocessNext(!1,!1,!1,e),t},Ee.preprocessFinishToken=function(e,t,r,n,s){if(this.preType=e,this.preVal=t,this.preEnd=r||this.pos,e!==w.eol&&(this.firstEnd=this.preEnd),35===this.preprocessSkipSpace(!1,n)&&this.options.preprocess&&!this.preprocessDontConcatenate&&35===this.input.charCodeAt(this.pos+1)){var i=null!=t?t:e.keyword||e.type;if(this.pos+=2,null!=i){var o=this.options.locations&&new Ce(this.curLine,this.lineStart,this.preprocessStackLastItem),a=this.input,c=this.preEnd,l=this.preStart,p=this.preStart+this.tokMacroOffset,u=this.preprocessStackLastItem&&this.preprocessStackLastItem.macro&&this.preprocessStackLastItem.macro.variadicName;this.skipSpace();var h=null;u&&u===this.input.slice(this.pos,this.pos+u.length)&&(h=!0),this.preConcatenating=!0,this.preprocessReadToken(null,null,s,2),this.preConcatenating=!1;var d=null!=this.preVal?this.preVal:this.preType.keyword||this.preType.type;if(null!=d){if(h&&","===i&&""===d)return this.preprocessReadToken();var f=""+i+d,m=this.preStart+this.tokPosMacroOffset,g=new $(null,f,null,p,!1,null,!1,o),_=this.readTokenFromMacro(g,this.tokPosMacroOffset,this.preprocessStackLastItem?this.preprocessStackLastItem.parameterDict:null,null,this.pos,this.preprocessNext,null);if(!this.preprocessStackLastItem||this.preprocessStackLastItem.macro!==g)return _;this.preType=e,this.preStart=l,this.preEnd=c,this.input=a,this.tokPosMacroOffset=m-i.length,h||console.warn("Warning: pasting formed '"+f+"', an invalid preprocessing token")}}}};var Le=Z.prototype;Le.preprocessParseDefine=function(){this.preprocessIsParsingPreprocess=!0,this.preprocessReadToken();var e=this.preEnd;this.preprocessDontConcatenate=!0;var t,r,n=this.options.locations&&new Ce(this.curLine,this.lineStart,this.preprocessStackLastItem),s=this.preVal,i=40===this.input.charCodeAt(e);if(this.preprocessExpect(w.name,"Preprocessor #define expects identifier"),i){this.preprocessExpect(w.parenL),t=[],r=!1;for(var o=!0;!this.preprocessEat(w.parenR);)r&&this.raise(this.preStart,"Variadic parameter must be last"),o?o=!1:this.preprocessExpect(w.comma,"Expected ',' between macro parameters"),t.push(this.preprocessEat(w.ellipsis)?r="__VA_ARGS__":this.preprocessGetIdent()),this.preprocessEat(w.ellipsis)&&(r=!0),n=this.options.locations&&new Ce(this.curLine,this.lineStart,this.preprocessStackLastItem)}for(var a=this.preStart;this.preType!==w.eol&&this.preType!==w.eof;)this.preprocessReadToken();this.preprocessDontConcatenate=!1;var c=this.preInput.slice(a,this.preStart);c=c.replace(/\\\n/g," \n"),this.options.preprocessAddMacro(new $(s,c,t,a,!1,null,r&&t[t.length-1],n)),this.preprocessIsParsingPreprocess=!1},Le.preprocessSkipToElseOrEndif=function(e){for(var t=[];t.length>0||this.preType!==P._preEndif&&(this.preType!==P._preElse&&this.preType!==P._preElseIfTrue||e);){switch(this.preType){case P._preIf:case P._preIfdef:case P._preIfndef:t.push(P._preIf);break;case P._preElse:t[t.length-1]!==P._preIf?this.raise(this.preStart,"#else after #else"):t[t.length-1]=P._preElse;break;case P._preElseIf:t[t.length-1]!==P._preIf&&this.raise(this.preStart,"#elif after #else");break;case P._preEndif:t.pop();break;case w.eof:this.preNotSkipping=!0,this.raise(this.preStart,"Missing #endif")}this.preprocessReadToken(!0)}this.preNotSkipping=!0,this.preType===P._preEndif&&this.preIfLevel.pop()},Le.preprocessParseExpression=function(e){return this.preprocessParseExprOps(e)},Le.preprocessParseExprOps=function(e){return this.preprocessParseExprOp(this.preprocessParseMaybeUnary(e),-1,e)},Le.preprocessParseExprOp=function(e,t,r){var n=this.preType.binop;if(n&&(this.preType.preprocess||this.raise(this.preStart,"Unsupported macro operator"),n>t)){var s=this.startNodeFrom(e);return s.left=e,s.operator=this.preVal,this.preprocessNext(!1,!1,!1,r),s.right=this.preprocessParseExprOp(this.preprocessParseMaybeUnary(r),n,r),s=this.preprocessFinishNode(s,/&&|\|\|/.test(s.operator)?"LogicalExpression":"BinaryExpression"),this.preprocessParseExprOp(s,t,r)}return e},Le.preprocessParseMaybeUnary=function(e){if(this.preType.preprocess&&this.preType.prefix){var t=this.startNode();return t.operator=this.preVal,t.prefix=!0,this.preprocessNext(!1,!1,!1,e),t.argument=this.preprocessParseMaybeUnary(e),this.preprocessFinishNode(t,"UnaryExpression")}return this.preprocessParseExprAtom(e)},Le.preprocessParseExprAtom=function(e){switch(this.preType){case w.name:return this.preprocessParseIdent(e);case w.num:case w.string:return this.preprocessParseStringNumLiteral(e);case w.parenL:var t=this.preStart;this.preprocessNext(!1,!1,!1,e);var r=this.preprocessParseExpression(e);return r.start=t,r.end=this.preEnd,this.preprocessExpect(w.parenR,"Expected closing ')' in macro expression",e),r;case P._preDefined:var n=this.startNode();return this.preprocessNext(!1,!1,!1,e),n.object=this.preprocessParseDefinedExpression(e),this.preprocessFinishNode(n,"DefinedExpression");default:this.unexpected()}},Le.preprocessParseIdent=function(e){var t=this.startNode();return t.name=this.preprocessGetIdent(e),this.preprocessFinishNode(t,"Identifier")},Le.preprocessParseDefinedExpression=function(e){switch(this.preType){case w.name:return this.preprocessParseIdent(e);case w.num:case w.string:return this.preprocessParseStringNumLiteral(e);case w.parenL:var t=this.preStart;this.preprocessNext(!1,!1,!1,e);var r=this.preprocessParseDefinedExpression(e);return r.start=t,r.end=this.preEnd,this.preprocessExpect(w.parenR,"Expected closing ')' in macro expression",e),r;default:this.unexpected()}},Le.preprocessParseStringNumLiteral=function(e){var t=this.startNode();return t.value=this.preVal,t.raw=this.preInput.slice(this.preStart,this.preEnd),this.preprocessNext(!1,!1,!1,e),this.preprocessFinishNode(t,"Literal")},Le.preprocessFinishNode=function(e,t){return e.type=t,e.end=this.preEnd,e},Le.preprocessEvalExpression=function(e){var t,r,n=this;return t={LogicalExpression:function(e,t,r){var n=e.left,s=e.right;switch(e.operator){case"||":return r(n,t)||r(s,t);case"&&":return r(n,t)&&r(s,t)}},BinaryExpression:function(e,t,r){var n=e.left,s=e.right;switch(e.operator){case"+":return r(n,t)+r(s,t);case"-":return r(n,t)-r(s,t);case"*":return r(n,t)*r(s,t);case"/":return r(n,t)/r(s,t);case"%":return r(n,t)%r(s,t);case"<":return r(n,t)<r(s,t);case">":return r(n,t)>r(s,t);case"^":return r(n,t)^r(s,t);case"&":return r(n,t)&r(s,t);case"|":return r(n,t)|r(s,t);case"==":return r(n,t)==r(s,t);case"===":return r(n,t)===r(s,t);case"!=":return r(n,t)!=r(s,t);case"!==":return r(n,t)!==r(s,t);case"<=":return r(n,t)<=r(s,t);case">=":return r(n,t)>=r(s,t);case">>":return r(n,t)>>r(s,t);case">>>":return r(n,t)>>>r(s,t);case"<<":return r(n,t)<<r(s,t)}},UnaryExpression:function(e,t,r){var n=e.argument;switch(e.operator){case"-":return-r(n,t);case"+":return+r(n,t);case"!":return!r(n,t);case"~":return~r(n,t)}},Literal:function(e,t,r){return e.value},Identifier:function(e,t,r){return 0},DefinedExpression:function(e,t,r){var s=e.object;if("Identifier"===s.type){var i=s.name;return n.options.preprocessGetMacro(i)||n.preprocessBuiltinMacro(i)||0}return r(s,t)}},r=t,function e(t,n,s){return r[s||t.type](t,n,e)}(e,{})};var xe=Z.prototype;xe.parseObjjImplementation=function(e){if(this.next(),e.classname=this.parseIdent(!0),this.eat(w.colon)?e.superclassname=this.parseIdent(!0):this.eat(w.parenL)&&(e.categoryname=this.parseIdent(!0),this.expect(w.parenR,"Expected closing ')' after category name")),"<"===this.value){this.next();var t=[],r=!0;for(e.protocols=t;">"!==this.value;)r?r=!1:this.expect(w.comma,"Expected ',' between protocol names"),t.push(this.parseIdent(!0));this.next()}if(this.eat(w.braceL)){for(e.ivardeclarations=[];!this.eat(w.braceR);)this.parseObjjIvarDeclaration(e);e.endOfIvars=this.start}for(e.body=[];!this.eat(M._end);)this.type===w.eof&&this.raise(this.pos,"Expected '@end' after '@implementation'"),e.body.push(this.parseObjjClassElement());return this.finishNode(e,"ClassDeclarationStatement")},xe.parseObjjInterface=function(e){if(this.next(),e.classname=this.parseIdent(!0),this.eat(w.colon)?e.superclassname=this.parseIdent(!0):this.eat(w.parenL)&&(e.categoryname=this.parseIdent(!0),this.expect(w.parenR,"Expected closing ')' after category name")),"<"===this.value){this.next();var t=[],r=!0;for(e.protocols=t;">"!==this.value;)r?r=!1:this.expect(w.comma,"Expected ',' between protocol names"),t.push(this.parseIdent(!0));this.next()}if(this.eat(w.braceL)){for(e.ivardeclarations=[];!this.eat(w.braceR);)this.parseObjjIvarDeclaration(e);e.endOfIvars=this.start}for(e.body=[];!this.eat(M._end);)this.type===w.eof&&this.raise(this.pos,"Expected '@end' after '@interface'"),e.body.push(this.parseClassElement());return this.finishNode(e,"InterfaceDeclarationStatement")},xe.parseObjjProtocol=function(e){if(this.next(),e.protocolname=this.parseIdent(!0),"<"===this.value){this.next();var t=[],r=!0;for(e.protocols=t;">"!==this.value;)r?r=!1:this.expect(w.comma,"Expected ',' between protocol names"),t.push(this.parseIdent(!0));this.next()}for(;!this.eat(M._end);)if(this.type===w.eof&&this.raise(this.pos,"Expected '@end' after '@protocol'"),!this.eat(M._required))if(this.eat(M._optional))for(;!this.eat(M._required)&&this.type!==M._end;)(e.optional||(e.optional=[])).push(this.parseObjjProtocolClassElement());else(e.required||(e.required=[])).push(this.parseObjjProtocolClassElement());return this.finishNode(e,"ProtocolDeclarationStatement")},xe.parseObjjProtocolClassElement=function(){var e=this.startNode();return this.parseObjjMethodDeclaration(e),this.semicolon(),this.finishNode(e,"MethodDeclarationStatement")},xe.parseObjjMethodDeclaration=function(e){if(e.methodtype=this.value,this.expect(w.plusMin,"Method declaration must start with '+' or '-'"),this.eat(w.parenL)){var t=this.startNode();this.options.ecmaVersion>=8&&this.eatContextual("async")&&(e.async=!0),(this.eat(M._action)||this.eat(N._action))&&(e.action=this.finishNode(t,"ObjectiveJActionType"),t=this.startNode()),this.eat(w.parenR)||(e.returntype=this.parseObjectiveJType(t),this.expect(w.parenR,"Expected closing ')' after method return type"))}var r=!0,n=[],s=[];for(e.selectors=n,e.arguments=s;;){if(this.type!==w.colon){if(n.push(this.parseIdent(!0)),r&&this.type!==w.colon)break}else n.push(null);this.expect(w.colon,"Expected ':' in selector");var i={};if(s.push(i),this.eat(w.parenL)&&(i.type=this.parseObjectiveJType(),this.expect(w.parenR,"Expected closing ')' after method argument type")),i.identifier=this.parseIdent(!1),this.type===w.braceL||this.type===w.semi)break;if(this.eat(w.comma)){this.expect(w.ellipsis,"Expected '...' after ',' in method declaration"),e.parameters=!0;break}r=!1}},xe.parseObjjImport=function(e){return this.next(),this.type===w.string?e.localfilepath=!0:this.type===N._filename?e.localfilepath=!1:this.unexpected(),e.filename=this.parseObjjStringNumRegExpLiteral(),this.finishNode(e,"ImportStatement")},xe.parseObjjStringNumRegExpLiteral=function(){var e=this.startNode();return e.value=this.value,e.raw=this.tokInput.slice(this.start,this.end),this.next(),this.finishNode(e,"Literal")},xe.parseObjjIvarDeclaration=function(e){var t;this.eat(M._outlet)&&(t=!0);var r=this.parseObjectiveJType();for(this.strict&&this.reservedWordsStrictBind.test(r.name)&&this.raise(r.start,"Binding "+r.name+" in strict mode");;){var n=this.startNode();if(t&&(n.outlet=t),n.ivartype=r,n.id=this.parseIdent(),this.strict&&this.reservedWordsStrictBind.test(n.id.name)&&this.raise(n.id.start,"Binding "+n.id.name+" in strict mode"),this.eat(M._accessors)&&(n.accessors={},this.eat(w.parenL)&&!this.eat(w.parenR))){for(;;){var s=this.parseIdent(!0);switch(s.name){case"property":case"getter":this.expect(w.eq,"Expected '=' after 'getter' accessor attribute"),n.accessors[s.name]=this.parseIdent(!0);break;case"setter":this.expect(w.eq,"Expected '=' after 'setter' accessor attribute");var i=this.parseIdent(!0);n.accessors[s.name]=i,this.eat(w.colon)&&(i.end=this.start),i.name+=":";break;case"readwrite":case"readonly":case"copy":n.accessors[s.name]=!0;break;default:this.raise(s.start,"Unknown accessors attribute '"+s.name+"'")}if(!this.eat(w.comma))break}this.expect(w.parenR,"Expected closing ')' after accessor attributes")}if(this.finishNode(n,"IvarDeclaration"),e.ivardeclarations.push(n),!this.eat(w.comma))break}this.semicolon()},xe.parseObjjClassElement=function(){var e=this.startNode();if("+"===this.value||"-"===this.value){this.parseObjjMethodDeclaration(e),this.eat(w.semi),e.startOfBody=this.lastTokEnd;var t=this.objjInFunction,r=this.objjLabels,n=this.objjFunctionIsAsync;return this.objjInFunction=!0,this.objjLabels=[],this.objjFunctionIsAsync=!!e.async,this.enterScope(576|Q(this.objjFunctionIsAsync,!1)),e.body=this.parseBlock(!0),this.exitScope(),this.objjInFunction=t,this.objjLabels=r,this.objjFunctionIsAsync=n,this.finishNode(e,"MethodDeclarationStatement")}return this.parseStatement()},xe.parseObjectiveJType=function(e){var t,r=e?this.startNodeFrom(e):this.startNode(),n=!1;this.type===w.name?(r.name=this.value,r.typeisclass=!0,n=!0,this.next()):(r.typeisclass=!1,r.name=this.type.keyword,this.eat(w._void)||(this.eat(N._id)?n=!0:this.eat(N._float)||this.eat(N._boolean)||this.eat(N._SEL)||this.eat(N._double)?t=this.type.keyword:((this.eat(N._signed)||this.eat(N._unsigned))&&(t=this.type.keyword||!0),this.eat(N._char)||this.eat(N._byte)||this.eat(N._short)?(t&&(r.name+=" "+t),t=this.type.keyword||!0):(this.eat(N._int)&&(t&&(r.name+=" "+t),t=this.type.keyword||!0),this.eat(N._long)&&(t&&(r.name+=" "+t),t=this.type.keyword||!0,this.eat(N._long)&&(r.name+=" "+t))),t||(r.name=!this.options.forbidReserved&&this.type.label||this.unexpected(),r.typeisclass=!0,n=!0,this.next()))));if(n&&"<"===this.value){var s=!0,i=[];r.protocols=i;do{this.next(),s?s=!1:this.eat(w.comma),i.push(this.parseIdent(!0))}while(">"!==this.value);this.next()}return this.finishNode(r,"ObjectiveJType")},xe.parseObjjPreprocess=function(e){return this.next(),this.finishNode(e,"PreprocessStatement")},xe.parseObjjClass=function(e){return this.next(),e.id=this.parseIdent(!1),this.finishNode(e,"ClassStatement")},xe.parseObjjGlobal=function(e){return this.next(),e.id=this.parseIdent(!1),this.finishNode(e,"GlobalStatement")},xe.parseObjjTypedef=function(e){return this.next(),e.typedefname=this.parseIdent(!0),this.finishNode(e,"TypeDefStatement")},xe.parseObjjDictionary=function(){this.expect(w.braceL,"Expected '{' before dictionary");for(var e=[],t=[],r=!0;!this.eat(w.braceR)&&(r||(this.expect(w.comma,"Expected ',' between expressions"),!this.eat(w.braceR)));)e.push(this.parseExpression(!0,null,!0,!0)),this.expect(w.colon,"Expected ':' between dictionary key and value"),t.push(this.parseExpression(!0,null,!0,!0)),r=!1;return[e,t]},xe.parseObjjSelector=function(e,t){for(var r=!0,n=[];(this.type===w.colon||(n.push(this.parseIdent(!0).name),!r||this.type!==t))&&(this.expect(w.colon,"Expected ':' in selector"),n.push(":"),this.type!==t);)r=!1;e.selector=n.join("")},xe.parseObjjMessageSendExpression=function(e,t){return this.parseObjjSelectorWithArguments(e,w.bracketR),"Super"===t.type?e.superObject=!0:e.object=t,this.finishNode(e,"MessageSendExpression")},xe.parseObjjSelectorWithArguments=function(e,t){var r=!0,n=[],s=[];for(e.selectors=n,e.arguments=s;;){if(this.type!==w.colon||this.inIsIdentifier&&this.type===w.colon){if(this.inIsIdentifier){var i=this.finishNode(this.startNode(),"Identifier");i.name="in",n.push(i),this.inIsIdentifier=!1}else n.push(this.parseIdent(!0));if(r&&this.eat(t))break}else n.push(null);if(this.expect(w.colon,"Expected ':' in selector"),s.push(this.parseExpression(!0,null,!0,!0)),this.eat(t))break;if(this.type===w.comma){for(e.parameters=[];this.eat(w.comma);)e.parameters.push(this.parseExpression(!0,null,!0,!0));this.eat(t);break}r=!1}};var Re=function(e,t,r){this.type="",this.start=t,this.end=0,e.options.locations&&(this.loc=new G(e,r)),e.options.directSourceFile&&(this.sourceFile=e.options.directSourceFile),e.options.ranges&&(this.range=[t,0])},we=Z.prototype;function Fe(e,t,r,n){return e.type=t,e.end=r,this.options.locations&&(e.loc.end=n),this.options.ranges&&(e.range[1]=r),e}we.startNode=function(){return new Re(this,this.start+this.tokMacroOffset,this.startLoc)},we.startNodeAt=function(e,t){return new Re(this,e,t)},we.startNodeFrom=function(e){var t=new Re(this);return t.start=e.start,e.commentsBefore&&(t.commentsBefore=e.commentsBefore,delete e.commentsBefore),e.spacesBefore&&(t.spacesBefore=e.spacesBefore,delete e.spacesBefore),this.options.locations&&(t.loc=new G(this,t.start,t.end),t.loc.start=e.loc.start),this.options.ranges&&(t.range=[e.range[0],0]),t},we.finishNode=function(e,t){return Fe.call(this,e,t,this.lastTokEnd+this.lastTokMacroOffset,this.lastTokEndLoc)},we.finishNodeAt=function(e,t,r,n){return Fe.call(this,e,t,r,n)},we.copyNode=function(e){var t=new Re(this,e.start,this.startLoc);for(var r in e)t[r]=e[r];return t};var Te="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",Pe=Te+" Extended_Pictographic",ke=Pe+" EBase EComp EMod EPres ExtPict",Ie={9:Te,10:Pe,11:Pe,12:ke,13:ke},Ae="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",Ne="Adlam Adlm Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",Oe=Ne+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd",je=Oe+" Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho",Me=je+" Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi",De={9:Ne,10:Oe,11:je,12:Me,13:Me+" Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith"},Ue={};function Be(e){var t=Ue[e]={binary:y(Ie[e]+" "+Ae),nonBinary:{General_Category:y(Ae),Script:y(De[e])}};t.nonBinary.Script_Extensions=t.nonBinary.Script,t.nonBinary.gc=t.nonBinary.General_Category,t.nonBinary.sc=t.nonBinary.Script,t.nonBinary.scx=t.nonBinary.Script_Extensions}for(var Ve=0,Ke=[9,10,11,12,13];Ve<Ke.length;Ve+=1){Be(Ke[Ve])}var qe=Z.prototype,He=function(e){this.parser=e,this.validFlags="gim"+(e.options.ecmaVersion>=6?"uy":"")+(e.options.ecmaVersion>=9?"s":"")+(e.options.ecmaVersion>=13?"d":""),this.unicodeProperties=Ue[e.options.ecmaVersion>=13?13:e.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]};function Ge(e){return 36===e||e>=40&&e<=43||46===e||63===e||e>=91&&e<=94||e>=123&&e<=125}function ze(e){return e>=65&&e<=90||e>=97&&e<=122}function We(e){return ze(e)||95===e}function Je(e){return We(e)||Ye(e)}function Ye(e){return e>=48&&e<=57}function Xe(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function Qe(e){return e>=65&&e<=70?e-65+10:e>=97&&e<=102?e-97+10:e-48}function $e(e){return e>=48&&e<=55}He.prototype.reset=function(e,t,r){var n=-1!==r.indexOf("u");this.start=0|e,this.source=t+"",this.flags=r,this.switchU=n&&this.parser.options.ecmaVersion>=6,this.switchN=n&&this.parser.options.ecmaVersion>=9},He.prototype.raise=function(e){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+e)},He.prototype.at=function(e,t){void 0===t&&(t=!1);var r=this.source,n=r.length;if(e>=n)return-1;var s=r.charCodeAt(e);if(!t&&!this.switchU||s<=55295||s>=57344||e+1>=n)return s;var i=r.charCodeAt(e+1);return i>=56320&&i<=57343?(s<<10)+i-56613888:s},He.prototype.nextIndex=function(e,t){void 0===t&&(t=!1);var r=this.source,n=r.length;if(e>=n)return n;var s,i=r.charCodeAt(e);return!t&&!this.switchU||i<=55295||i>=57344||e+1>=n||(s=r.charCodeAt(e+1))<56320||s>57343?e+1:e+2},He.prototype.current=function(e){return void 0===e&&(e=!1),this.at(this.pos,e)},He.prototype.lookahead=function(e){return void 0===e&&(e=!1),this.at(this.nextIndex(this.pos,e),e)},He.prototype.advance=function(e){void 0===e&&(e=!1),this.pos=this.nextIndex(this.pos,e)},He.prototype.eat=function(e,t){return void 0===t&&(t=!1),this.current(t)===e&&(this.advance(t),!0)},qe.validateRegExpFlags=function(e){for(var t=e.validFlags,r=e.flags,n=0;n<r.length;n++){var s=r.charAt(n);-1===t.indexOf(s)&&this.raise(e.start,"Invalid regular expression flag"),r.indexOf(s,n+1)>-1&&this.raise(e.start,"Duplicate regular expression flag")}},qe.validateRegExpPattern=function(e){this.regexp_pattern(e),!e.switchN&&this.options.ecmaVersion>=9&&e.groupNames.length>0&&(e.switchN=!0,this.regexp_pattern(e))},qe.regexp_pattern=function(e){e.pos=0,e.lastIntValue=0,e.lastStringValue="",e.lastAssertionIsQuantifiable=!1,e.numCapturingParens=0,e.maxBackReference=0,e.groupNames.length=0,e.backReferenceNames.length=0,this.regexp_disjunction(e),e.pos!==e.source.length&&(e.eat(41)&&e.raise("Unmatched ')'"),(e.eat(93)||e.eat(125))&&e.raise("Lone quantifier brackets")),e.maxBackReference>e.numCapturingParens&&e.raise("Invalid escape");for(var t=0,r=e.backReferenceNames;t<r.length;t+=1){var n=r[t];-1===e.groupNames.indexOf(n)&&e.raise("Invalid named capture referenced")}},qe.regexp_disjunction=function(e){for(this.regexp_alternative(e);e.eat(124);)this.regexp_alternative(e);this.regexp_eatQuantifier(e,!0)&&e.raise("Nothing to repeat"),e.eat(123)&&e.raise("Lone quantifier brackets")},qe.regexp_alternative=function(e){for(;e.pos<e.source.length&&this.regexp_eatTerm(e););},qe.regexp_eatTerm=function(e){return this.regexp_eatAssertion(e)?(e.lastAssertionIsQuantifiable&&this.regexp_eatQuantifier(e)&&e.switchU&&e.raise("Invalid quantifier"),!0):!!(e.switchU?this.regexp_eatAtom(e):this.regexp_eatExtendedAtom(e))&&(this.regexp_eatQuantifier(e),!0)},qe.regexp_eatAssertion=function(e){var t=e.pos;if(e.lastAssertionIsQuantifiable=!1,e.eat(94)||e.eat(36))return!0;if(e.eat(92)){if(e.eat(66)||e.eat(98))return!0;e.pos=t}if(e.eat(40)&&e.eat(63)){var r=!1;if(this.options.ecmaVersion>=9&&(r=e.eat(60)),e.eat(61)||e.eat(33))return this.regexp_disjunction(e),e.eat(41)||e.raise("Unterminated group"),e.lastAssertionIsQuantifiable=!r,!0}return e.pos=t,!1},qe.regexp_eatQuantifier=function(e,t){return void 0===t&&(t=!1),!!this.regexp_eatQuantifierPrefix(e,t)&&(e.eat(63),!0)},qe.regexp_eatQuantifierPrefix=function(e,t){return e.eat(42)||e.eat(43)||e.eat(63)||this.regexp_eatBracedQuantifier(e,t)},qe.regexp_eatBracedQuantifier=function(e,t){var r=e.pos;if(e.eat(123)){var n=0,s=-1;if(this.regexp_eatDecimalDigits(e)&&(n=e.lastIntValue,e.eat(44)&&this.regexp_eatDecimalDigits(e)&&(s=e.lastIntValue),e.eat(125)))return-1!==s&&s<n&&!t&&e.raise("numbers out of order in {} quantifier"),!0;e.switchU&&!t&&e.raise("Incomplete quantifier"),e.pos=r}return!1},qe.regexp_eatAtom=function(e){return this.regexp_eatPatternCharacters(e)||e.eat(46)||this.regexp_eatReverseSolidusAtomEscape(e)||this.regexp_eatCharacterClass(e)||this.regexp_eatUncapturingGroup(e)||this.regexp_eatCapturingGroup(e)},qe.regexp_eatReverseSolidusAtomEscape=function(e){var t=e.pos;if(e.eat(92)){if(this.regexp_eatAtomEscape(e))return!0;e.pos=t}return!1},qe.regexp_eatUncapturingGroup=function(e){var t=e.pos;if(e.eat(40)){if(e.eat(63)&&e.eat(58)){if(this.regexp_disjunction(e),e.eat(41))return!0;e.raise("Unterminated group")}e.pos=t}return!1},qe.regexp_eatCapturingGroup=function(e){if(e.eat(40)){if(this.options.ecmaVersion>=9?this.regexp_groupSpecifier(e):63===e.current()&&e.raise("Invalid group"),this.regexp_disjunction(e),e.eat(41))return e.numCapturingParens+=1,!0;e.raise("Unterminated group")}return!1},qe.regexp_eatExtendedAtom=function(e){return e.eat(46)||this.regexp_eatReverseSolidusAtomEscape(e)||this.regexp_eatCharacterClass(e)||this.regexp_eatUncapturingGroup(e)||this.regexp_eatCapturingGroup(e)||this.regexp_eatInvalidBracedQuantifier(e)||this.regexp_eatExtendedPatternCharacter(e)},qe.regexp_eatInvalidBracedQuantifier=function(e){return this.regexp_eatBracedQuantifier(e,!0)&&e.raise("Nothing to repeat"),!1},qe.regexp_eatSyntaxCharacter=function(e){var t=e.current();return!!Ge(t)&&(e.lastIntValue=t,e.advance(),!0)},qe.regexp_eatPatternCharacters=function(e){for(var t=e.pos,r=0;-1!==(r=e.current())&&!Ge(r);)e.advance();return e.pos!==t},qe.regexp_eatExtendedPatternCharacter=function(e){var t=e.current();return!(-1===t||36===t||t>=40&&t<=43||46===t||63===t||91===t||94===t||124===t)&&(e.advance(),!0)},qe.regexp_groupSpecifier=function(e){if(e.eat(63)){if(this.regexp_eatGroupName(e))return-1!==e.groupNames.indexOf(e.lastStringValue)&&e.raise("Duplicate capture group name"),void e.groupNames.push(e.lastStringValue);e.raise("Invalid group")}},qe.regexp_eatGroupName=function(e){if(e.lastStringValue="",e.eat(60)){if(this.regexp_eatRegExpIdentifierName(e)&&e.eat(62))return!0;e.raise("Invalid capture group name")}return!1},qe.regexp_eatRegExpIdentifierName=function(e){if(e.lastStringValue="",this.regexp_eatRegExpIdentifierStart(e)){for(e.lastStringValue+=v(e.lastIntValue);this.regexp_eatRegExpIdentifierPart(e);)e.lastStringValue+=v(e.lastIntValue);return!0}return!1},qe.regexp_eatRegExpIdentifierStart=function(e){var t=e.pos,r=this.options.ecmaVersion>=11,n=e.current(r);return e.advance(r),92===n&&this.regexp_eatRegExpUnicodeEscapeSequence(e,r)&&(n=e.lastIntValue),function(e){return u(e,!0)||36===e||95===e}(n)?(e.lastIntValue=n,!0):(e.pos=t,!1)},qe.regexp_eatRegExpIdentifierPart=function(e){var t=e.pos,r=this.options.ecmaVersion>=11,n=e.current(r);return e.advance(r),92===n&&this.regexp_eatRegExpUnicodeEscapeSequence(e,r)&&(n=e.lastIntValue),function(e){return h(e,!0)||36===e||95===e||8204===e||8205===e}(n)?(e.lastIntValue=n,!0):(e.pos=t,!1)},qe.regexp_eatAtomEscape=function(e){return!!(this.regexp_eatBackReference(e)||this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)||e.switchN&&this.regexp_eatKGroupName(e))||(e.switchU&&(99===e.current()&&e.raise("Invalid unicode escape"),e.raise("Invalid escape")),!1)},qe.regexp_eatBackReference=function(e){var t=e.pos;if(this.regexp_eatDecimalEscape(e)){var r=e.lastIntValue;if(e.switchU)return r>e.maxBackReference&&(e.maxBackReference=r),!0;if(r<=e.numCapturingParens)return!0;e.pos=t}return!1},qe.regexp_eatKGroupName=function(e){if(e.eat(107)){if(this.regexp_eatGroupName(e))return e.backReferenceNames.push(e.lastStringValue),!0;e.raise("Invalid named reference")}return!1},qe.regexp_eatCharacterEscape=function(e){return this.regexp_eatControlEscape(e)||this.regexp_eatCControlLetter(e)||this.regexp_eatZero(e)||this.regexp_eatHexEscapeSequence(e)||this.regexp_eatRegExpUnicodeEscapeSequence(e,!1)||!e.switchU&&this.regexp_eatLegacyOctalEscapeSequence(e)||this.regexp_eatIdentityEscape(e)},qe.regexp_eatCControlLetter=function(e){var t=e.pos;if(e.eat(99)){if(this.regexp_eatControlLetter(e))return!0;e.pos=t}return!1},qe.regexp_eatZero=function(e){return 48===e.current()&&!Ye(e.lookahead())&&(e.lastIntValue=0,e.advance(),!0)},qe.regexp_eatControlEscape=function(e){var t=e.current();return 116===t?(e.lastIntValue=9,e.advance(),!0):110===t?(e.lastIntValue=10,e.advance(),!0):118===t?(e.lastIntValue=11,e.advance(),!0):102===t?(e.lastIntValue=12,e.advance(),!0):114===t&&(e.lastIntValue=13,e.advance(),!0)},qe.regexp_eatControlLetter=function(e){var t=e.current();return!!ze(t)&&(e.lastIntValue=t%32,e.advance(),!0)},qe.regexp_eatRegExpUnicodeEscapeSequence=function(e,t){void 0===t&&(t=!1);var r,n=e.pos,s=t||e.switchU;if(e.eat(117)){if(this.regexp_eatFixedHexDigits(e,4)){var i=e.lastIntValue;if(s&&i>=55296&&i<=56319){var o=e.pos;if(e.eat(92)&&e.eat(117)&&this.regexp_eatFixedHexDigits(e,4)){var a=e.lastIntValue;if(a>=56320&&a<=57343)return e.lastIntValue=1024*(i-55296)+(a-56320)+65536,!0}e.pos=o,e.lastIntValue=i}return!0}if(s&&e.eat(123)&&this.regexp_eatHexDigits(e)&&e.eat(125)&&((r=e.lastIntValue)>=0&&r<=1114111))return!0;s&&e.raise("Invalid unicode escape"),e.pos=n}return!1},qe.regexp_eatIdentityEscape=function(e){if(e.switchU)return!!this.regexp_eatSyntaxCharacter(e)||!!e.eat(47)&&(e.lastIntValue=47,!0);var t=e.current();return!(99===t||e.switchN&&107===t)&&(e.lastIntValue=t,e.advance(),!0)},qe.regexp_eatDecimalEscape=function(e){e.lastIntValue=0;var t=e.current();if(t>=49&&t<=57){do{e.lastIntValue=10*e.lastIntValue+(t-48),e.advance()}while((t=e.current())>=48&&t<=57);return!0}return!1},qe.regexp_eatCharacterClassEscape=function(e){var t=e.current();if(function(e){return 100===e||68===e||115===e||83===e||119===e||87===e}(t))return e.lastIntValue=-1,e.advance(),!0;if(e.switchU&&this.options.ecmaVersion>=9&&(80===t||112===t)){if(e.lastIntValue=-1,e.advance(),e.eat(123)&&this.regexp_eatUnicodePropertyValueExpression(e)&&e.eat(125))return!0;e.raise("Invalid property name")}return!1},qe.regexp_eatUnicodePropertyValueExpression=function(e){var t=e.pos;if(this.regexp_eatUnicodePropertyName(e)&&e.eat(61)){var r=e.lastStringValue;if(this.regexp_eatUnicodePropertyValue(e)){var n=e.lastStringValue;return this.regexp_validateUnicodePropertyNameAndValue(e,r,n),!0}}if(e.pos=t,this.regexp_eatLoneUnicodePropertyNameOrValue(e)){var s=e.lastStringValue;return this.regexp_validateUnicodePropertyNameOrValue(e,s),!0}return!1},qe.regexp_validateUnicodePropertyNameAndValue=function(e,t,r){g(e.unicodeProperties.nonBinary,t)||e.raise("Invalid property name"),e.unicodeProperties.nonBinary[t].test(r)||e.raise("Invalid property value")},qe.regexp_validateUnicodePropertyNameOrValue=function(e,t){e.unicodeProperties.binary.test(t)||e.raise("Invalid property name")},qe.regexp_eatUnicodePropertyName=function(e){var t=0;for(e.lastStringValue="";We(t=e.current());)e.lastStringValue+=v(t),e.advance();return""!==e.lastStringValue},qe.regexp_eatUnicodePropertyValue=function(e){var t=0;for(e.lastStringValue="";Je(t=e.current());)e.lastStringValue+=v(t),e.advance();return""!==e.lastStringValue},qe.regexp_eatLoneUnicodePropertyNameOrValue=function(e){return this.regexp_eatUnicodePropertyValue(e)},qe.regexp_eatCharacterClass=function(e){if(e.eat(91)){if(e.eat(94),this.regexp_classRanges(e),e.eat(93))return!0;e.raise("Unterminated character class")}return!1},qe.regexp_classRanges=function(e){for(;this.regexp_eatClassAtom(e);){var t=e.lastIntValue;if(e.eat(45)&&this.regexp_eatClassAtom(e)){var r=e.lastIntValue;!e.switchU||-1!==t&&-1!==r||e.raise("Invalid character class"),-1!==t&&-1!==r&&t>r&&e.raise("Range out of order in character class")}}},qe.regexp_eatClassAtom=function(e){var t=e.pos;if(e.eat(92)){if(this.regexp_eatClassEscape(e))return!0;if(e.switchU){var r=e.current();(99===r||$e(r))&&e.raise("Invalid class escape"),e.raise("Invalid escape")}e.pos=t}var n=e.current();return 93!==n&&(e.lastIntValue=n,e.advance(),!0)},qe.regexp_eatClassEscape=function(e){var t=e.pos;if(e.eat(98))return e.lastIntValue=8,!0;if(e.switchU&&e.eat(45))return e.lastIntValue=45,!0;if(!e.switchU&&e.eat(99)){if(this.regexp_eatClassControlLetter(e))return!0;e.pos=t}return this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)},qe.regexp_eatClassControlLetter=function(e){var t=e.current();return!(!Ye(t)&&95!==t)&&(e.lastIntValue=t%32,e.advance(),!0)},qe.regexp_eatHexEscapeSequence=function(e){var t=e.pos;if(e.eat(120)){if(this.regexp_eatFixedHexDigits(e,2))return!0;e.switchU&&e.raise("Invalid escape"),e.pos=t}return!1},qe.regexp_eatDecimalDigits=function(e){var t=e.pos,r=0;for(e.lastIntValue=0;Ye(r=e.current());)e.lastIntValue=10*e.lastIntValue+(r-48),e.advance();return e.pos!==t},qe.regexp_eatHexDigits=function(e){var t=e.pos,r=0;for(e.lastIntValue=0;Xe(r=e.current());)e.lastIntValue=16*e.lastIntValue+Qe(r),e.advance();return e.pos!==t},qe.regexp_eatLegacyOctalEscapeSequence=function(e){if(this.regexp_eatOctalDigit(e)){var t=e.lastIntValue;if(this.regexp_eatOctalDigit(e)){var r=e.lastIntValue;t<=3&&this.regexp_eatOctalDigit(e)?e.lastIntValue=64*t+8*r+e.lastIntValue:e.lastIntValue=8*t+r}else e.lastIntValue=t;return!0}return!1},qe.regexp_eatOctalDigit=function(e){var t=e.current();return $e(t)?(e.lastIntValue=t-48,e.advance(),!0):(e.lastIntValue=0,!1)},qe.regexp_eatFixedHexDigits=function(e,t){var r=e.pos;e.lastIntValue=0;for(var n=0;n<t;++n){var s=e.current();if(!Xe(s))return e.pos=r,!1;e.lastIntValue=16*e.lastIntValue+Qe(s),e.advance()}return!0};var Ze=function(e){this.type=e.type,this.value=e.value,this.start=e.start,this.end=e.end,e.tokMacroOffset&&(this.tokMacroOffset=e.tokMacroOffset),e.options.locations&&(this.loc=new G(e,e.startLoc,e.endLoc)),e.options.ranges&&(this.range=[e.start,e.end])},et=Z.prototype;function tt(e){var t,r,n,s;for(t="",r=0,n=e.length,s=e.charCodeAt(r);r<n;s=e.charCodeAt(++r))switch(s){case 34:t+='\\\\\\"';break;case 10:t+="\\\\n";break;case 13:t+="\\\\r";break;case 9:t+="\\\\t";break;case 8:t+="\\\\b";break;case 11:t+="\\\\v";break;case 160:t+="\\\\u00A0";break;case 8232:t+="\\\\u2028";break;case 8233:t+="\\\\u2029";break;case 92:t+="\\\\";break;default:t+=e.charAt(r)}return t}function rt(e){return"function"!=typeof BigInt?null:BigInt(e.replace(/_/g,""))}et.next=function(e,t,r){!e&&this.type.keyword&&this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword "+this.type.keyword),this.options.onToken&&this.options.onToken(new Ze(this)),t||(this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.lastEndOfFile=this.firstEndOfFile,this.lastTokMacroOffset=this.tokMacroOffset),this.firstEndOfFile=null,this.nodeMessageSendObjectExpression=null,this.nextToken(t,r)},et.getToken=function(){return this.next(),new Ze(this)},"undefined"!=typeof Symbol&&(et[Symbol.iterator]=function(){var e=this;return{next:function(){var t=e.getToken();return{done:t.type===w.eof,value:t}}}}),et.nextToken=function(e,t){var r=this.curContext();return r&&r.preserveSpace||this.skipSpace(),this.start=this.pos,this.tokInput=this.input,e||(this.lastEndInput=this.tokInput,this.tokFirstStart=this.start),this.localLastEnd=this.firstEnd,this.tokMacroOffset=this.tokPosMacroOffset,this.preTokParameterScope=this.preprocessParameterScope,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(w.eof):r.override?r.override(this):void this.readToken(this.fullCharCodeAtPos(),e,t)},et.readToken=function(e,t,r){return u(e,this.options.ecmaVersion>=6)||92===e?this.readWord(null,r):this.getTokenFromCode(e)},et.fullCharCodeAtPos=function(){var e=this.input.charCodeAt(this.pos);if(e<=55295||e>=56320)return e;var t=this.input.charCodeAt(this.pos+1);return t<=56319||t>=57344?e:(e<<10)+t-56613888},et.skipBlockComment=function(){var e=this.options.onComment&&this.curPosition(),t=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(-1===r&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations)for(var n=void 0,s=t;(n=V(this.input,s,this.pos))>-1;)++this.curLine,s=this.lineStart=n;this.options.onComment&&this.options.onComment(!0,this.input.slice(t+2,r),t,this.pos,e,this.curPosition())},et.skipLineComment=function(e){for(var t=this.pos,r=this.options.onComment&&this.curPosition(),n=this.input.charCodeAt(this.pos+=e);this.pos<this.input.length&&!B(n);)n=this.input.charCodeAt(++this.pos);this.options.onComment&&this.options.onComment(!1,this.input.slice(t+e,this.pos),t,this.pos,r,this.curPosition())},et.skipSpace=function(e,t){var r;e:for(;;){if(this.pos>=this.input.length){if(this.options.preprocess){if(t)return!0;if(!this.preprocessStack.length)break;null==this.firstEndOfFile&&(this.firstEndOfFile=this.pos);var n=this.preprocessStack.pop();this.pos=n.end,this.input=n.input,this.curLine=n.currentLine,this.lineStart=n.currentLineStart,this.preprocessOnlyTransformArgumentsForLastToken=n.onlyTransformArgumentsForLastToken,this.preprocessParameterScope=n.parameterScope,this.tokPosMacroOffset=n.macroOffset,this.sourceFile=n.sourceFile,this.firstEnd=n.lastEnd;var s=this.preprocessStack.length;return this.preprocessStackLastItem=s?this.preprocessStack[s-1]:null,this.skipSpace(e)}break}switch(r=this.input.charCodeAt(this.pos)){case 32:case 160:++this.pos;break;case 13:if(e)break e;10===this.input.charCodeAt(this.pos+1)&&++this.pos;case 10:case 8232:case 8233:if(e)break e;++this.pos,this.options.locations&&(++this.curLine,this.lineStart=this.pos);break;case 47:switch(this.input.charCodeAt(this.pos+1)){case 42:this.skipBlockComment();break;case 47:this.skipLineComment(2);break;default:break e}break;case 92:if(!this.options.preprocess)break e;var i=this.pos+1;for(r=this.input.charCodeAt(i);i<this.input.length&&(32===r||9===r||11===r||12===r||r>=5760&&K.test(String.fromCharCode(r)));)r=this.input.charCodeAt(++i);D.lastIndex=0;var o=D.exec(this.input.slice(i,i+2));if(!o||0!==o.index)break e;this.pos=i+o[0].length,this.options.locations&&(++this.curLine,this.lineStart=this.pos);break;default:if(!(r>8&&r<14||r>=5760&&K.test(String.fromCharCode(r))))break e;++this.pos}}return r},et.finishToken=function(e,t){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var r=this.type;if(this.type=e,this.value=t,this.updateContext(r),this.options.preprocess&&this.preprocessPrescanFor(35,35)){this.skipSpace();var n=null!=t?t:e.label||e.type;if(this.pos+=2,null!=n){var s,i=this.options.locations&&new Ce(this.curLine,this.lineStart),o=this.tokInput,a=this.end,c=this.start,l=this.start+this.tokMacroOffset,p=this.preprocessStackLastItem&&this.preprocessStackLastItem.macro&&this.preprocessStackLastItem.macro.variadicName;this.skipSpace(),p&&p===this.input.slice(this.pos,this.pos+p.length)&&(s=!0),this.preConcatenating=!0,this.nextToken(!1,2),this.preConcatenating=!1;var u=null!=this.value?this.value:this.type.keyword||this.type.label;if(null!=u){if(s&&","===n&&""===u)return this.nextToken();var h=""+n+u,d=this.start+this.tokPosMacroOffset;this.skipSpace();var f=new $(null,h,null,l,!1,null,!1,i),m=this.readTokenFromMacro(f,this.tokPosMacroOffset,this.preprocessStackLastItem?this.preprocessStackLastItem.parameterDict:null,null,this.pos,this.next,null);if(!this.preprocessStackLastItem||this.preprocessStackLastItem.macro!==f||this.pos===this.input.length)return m;this.type=e,this.start=c,this.end=a,this.tokInput=o,this.tokPosMacroOffset=d-n.length,s||console.warn("Warning: pasting formed '"+h+"', an invalid preprocessing token")}}}},et.readToken_dot=function(e){var t=this.input.charCodeAt(this.pos+1);if(t>=48&&t<=57)return this.readNumber(!0,et.finishToken);var r=this.input.charCodeAt(this.pos+2);return(this.options.ecmaVersion>=6||this.preprocessIsParsingPreprocess)&&46===t&&46===r?(this.pos+=3,e.call(this,w.ellipsis)):(++this.pos,e.call(this,w.dot))},et.readToken_slash=function(e){var t=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===t?this.finishOp(w.assign,2,e):this.finishOp(w.slash,1,e)},et.readToken_mult_modulo_exp=function(e,t){var r=this.input.charCodeAt(this.pos+1),n=1,s=42===e?w.star:w.modulo;return this.options.ecmaVersion>=7&&42===e&&42===r&&(++n,s=w.starstar,r=this.input.charCodeAt(this.pos+2)),61===r?this.finishOp(w.assign,n+1,t):this.finishOp(s,n,t)},et.readToken_pipe_amp=function(e,t){var r=this.input.charCodeAt(this.pos+1);if(r===e){if(this.options.ecmaVersion>=12)if(61===this.input.charCodeAt(this.pos+2))return this.finishOp(w.assign,3,t);return this.finishOp(124===e?w.logicalOR:w.logicalAND,2,t)}return 61===r?this.finishOp(w.assign,2,t):this.finishOp(124===e?w.bitwiseOR:w.bitwiseAND,1,t)},et.readToken_caret=function(e){return 61===this.input.charCodeAt(this.pos+1)?this.finishOp(w.assign,2,e):this.finishOp(w.bitwiseXOR,1,e)},et.readToken_plus_min=function(e,t){var r=this.input.charCodeAt(this.pos+1);return r===e?45!==r||this.inModule||62!==this.input.charCodeAt(this.pos+2)||0!==this.lastTokEnd&&!D.test(this.input.slice(this.lastTokEnd,this.pos))?this.finishOp(w.incDec,2,t):(this.skipLineComment(3),this.skipSpace(),this.nextToken()):61===r?this.finishOp(w.assign,2,t):this.finishOp(w.plusMin,1,t)},et.readToken_lt_gt=function(e,t){if(60===e&&(this.type===M._import||this.preType===P._preInclude)&&this.options.objj)for(var r=this.pos+1;;){var n=this.input.charCodeAt(++this.pos);if(62===n)return t.call(this,N._filename,this.input.slice(r,this.pos++));(this.pos>=this.input.length||13===n||10===n||8232===n||8233===n)&&this.raise(this.start,"Unterminated import statement")}var s=this.input.charCodeAt(this.pos+1),i=1;return s===e?(i=62===e&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+i)?this.finishOp(w.assign,i+1,t):this.finishOp(w.bitShift,i,t)):33!==s||60!==e||this.inModule||45!==this.input.charCodeAt(this.pos+2)||45!==this.input.charCodeAt(this.pos+3)?(61===s&&(i=2),this.finishOp(w.relational,i,t)):(this.skipLineComment(4),this.skipSpace(),this.nextToken())},et.readToken_eq_excl=function(e,t){var r=this.input.charCodeAt(this.pos+1);return 61===r?this.finishOp(w.equality,61===this.input.charCodeAt(this.pos+2)?3:2,t):61===e&&62===r&&this.options.ecmaVersion>=6?(this.pos+=2,t.call(this,w.arrow)):this.finishOp(61===e?w.eq:w.prefix,1,t)},et.readToken_question=function(){var e=this.options.ecmaVersion;if(e>=11){var t=this.input.charCodeAt(this.pos+1);if(46===t){var r=this.input.charCodeAt(this.pos+2);if(r<48||r>57)return this.finishOp(w.questionDot,2)}if(63===t){if(e>=12)if(61===this.input.charCodeAt(this.pos+2))return this.finishOp(w.assign,3);return this.finishOp(w.coalesce,2)}}return this.finishOp(w.question,1)},et.readToken_numberSign=function(e){if(this.preprocessIsParsingPreprocess)return++this.pos,e.call(this,P._preprocess);D.lastIndex=0;var t=D.exec(this.input.slice(this.localLastEnd,this.pos));if(0!==this.lastEnd&&this.lastEnd!==this.pos&&!t&&(this.preprocessStackLastItem&&!this.preprocessStackLastItem.isIncludeFile||0!==this.pos)&&this.preprocessStackLastItem)return this.preprocessStringify();var r=this.options.ecmaVersion,n=35,s=this.pos++,i=this.pos,o=this.fullCharCodeAtPos(),a=s,c=this.readWord1();e:if(this.options.preprocess){0===c.length&&(this.skipSpace(),c=this.readWord1()),D.lastIndex=0;var l=D.exec(this.input.slice(this.localLastEnd,s));if(0===this.lastTokEnd||this.lastTokEnd===s||l||(!this.preprocessStackLastItem||this.preprocessStackLastItem.isIncludeFile)&&0===s){switch(c){case"pragma":this.preStart=this.start,this.preprocesSkipRestOfLine();break;case"define":if(this.preStart=this.start,!this.preNotSkipping)return e.call(this,P._preDefine);this.preprocessParseDefine();break;case"undef":this.preprocessReadToken(),this.options.preprocessUndefineMacro(this.preprocessGetIdent());break;case"if":if(this.preStart=this.start,!this.preNotSkipping)return e.call(this,P._preIf);var p=this.exprAllowed;this.exprAllowed=!1,this.preIfLevel.push(P._preIf),this.preprocessReadToken(!1,!1,!0);var h=this.preprocessParseExpression(!0);this.preprocessEvalExpression(h)||(this.preNotSkipping=!1,this.preprocessSkipToElseOrEndif()),this.exprAllowed=p;break;case"ifdef":if(this.preStart=this.start,!this.preNotSkipping)return e.call(this,P._preIfdef);this.preIfLevel.push(P._preIf),this.preprocessReadToken();var d=this.preprocessGetIdent();this.options.preprocessIsMacro(d)||(this.preNotSkipping=!1,this.preprocessSkipToElseOrEndif());break;case"ifndef":if(this.preStart=this.start,!this.preNotSkipping)return e.call(this,P._preIfdef);this.preIfLevel.push(P._preIf),this.preprocessReadToken();var f=this.preprocessGetIdent();this.options.preprocessIsMacro(f)&&(this.preNotSkipping=!1,this.preprocessSkipToElseOrEndif());break;case"elif":if(this.preStart=this.start,this.preIfLevel.length){if(!this.preNotSkipping){var m=this.exprAllowed;this.exprAllowed=!1,this.preNotSkipping=!0,this.preprocessReadToken(!1,!1,!0);var g=this.preprocessParseExpression(!0);this.preNotSkipping=!1,this.tokRegexpAllowed=m;var _=this.preprocessEvalExpression(g);return e.call(this,_?P._preElseIfTrue:P._preElseIfFalse)}this.preIfLevel[this.preIfLevel.length-1]===P._preIf?(this.preNotSkipping=!1,e.call(this,P._preElseIf),this.preprocessReadToken(),this.preprocessSkipToElseOrEndif(!0)):this.raise(this.preStart,"#elsif after #else")}else this.raise(this.preStart,"#elif without #if");break;case"else":if(this.preStart=this.start,this.preIfLevel.length){if(!this.preNotSkipping)return this.preIfLevel[this.preIfLevel.length-1]=P._preElse,e.call(this,P._preElse);this.preIfLevel[this.preIfLevel.length-1]===P._preIf?(this.preIfLevel[this.preIfLevel.length-1]=P._preElse,this.preNotSkipping=!1,e.call(this,P._preElse),this.preprocessReadToken(),this.preprocessSkipToElseOrEndif(!0)):this.raise(this.preStart,"#else after #else")}else this.raise(this.preStart,"#else without #if");break;case"endif":if(this.preStart=this.start,this.preIfLevel.length){if(this.preNotSkipping){this.preIfLevel.pop();break}}else this.raise(this.preStart,"#endif without #if");return e.call(this,P._preEndif);case"include":if(!this.preNotSkipping)return e.call(this,P._preInclude);var y;this.preprocessReadToken(),this.preType===w.string?y=!0:this.preType===P._filename?y=!1:this.raise(this.preStart,'Expected "FILENAME" or <FILENAME>: '+(this.preType.keyword||this.preType.type));var S=this.preVal,b=this.options.preprocessGetIncludeFile(this.preVal,y)||this.raise(this.preStart,"'"+S+"' file not found"),E=b.include,C=new $(null,E,null,0,!1,null,!1,null,b.sourceFile);return this.preprocessFinishToken(P._preprocess,null,null,!0),this.pushMacroToStack(C,C.macro,this.tokPosMacroOffset,null,null,this.pos,null,!0),this.skipSpace(),void this.nextToken(!0);case"error":var L=this.preStart;this.preprocessReadToken(!1,!1,!0),this.raise(L,"Error: "+String(this.preprocessEvalExpression(this.preprocessParseExpression())));break;case"warning":this.preprocessReadToken(!1,!1,!0),console.warn("Warning: "+String(this.preprocessEvalExpression(this.preprocessParseExpression())));break;default:break e}return this.preprocessFinishToken(this.preType,null,null,!0),this.next(!1,!0)}k.test(c)&&this.raise(a,"Preprocessor directives may only be used at the beginning of a line")}if(r>=13&&(a=i,n=o,u(o,!0)||92===o))return this.finishToken(w.privateId,c);this.raise(a,"Unexpected character '"+v(n)+"'")},et.readToken_at=function(e,t){var r=this.input.charCodeAt(++this.pos);if(34===r||39===r)return this.readString(r,t);if(123===r)return t.call(this,M._dictionaryLiteral);if(91===r)return t.call(this,M._arrayLiteral);var n=this.readWord1(),s=O[n];return s||this.raise(this.tokStart,"Unrecognized Objective-J keyword '@"+n+"'"),t.call(this,s)},et.getTokenFromCode=function(e,t,r){switch(void 0===t&&(t=this.finishToken),e){case 46:return this.readToken_dot(t);case 40:return++this.pos,t.call(this,w.parenL);case 41:return++this.pos,t.call(this,w.parenR);case 59:return++this.pos,t.call(this,w.semi);case 44:return++this.pos,t.call(this,w.comma);case 91:return++this.pos,t.call(this,w.bracketL);case 93:return++this.pos,t.call(this,w.bracketR);case 123:return++this.pos,t.call(this,w.braceL);case 125:return++this.pos,t.call(this,w.braceR);case 58:return++this.pos,t.call(this,w.colon);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,t.call(this,w.backQuote);case 48:var n=this.input.charCodeAt(this.pos+1);if(120===n||88===n)return this.readRadixNumber(16,t);if(this.options.ecmaVersion>=6){if(111===n||79===n)return this.readRadixNumber(8,t);if(98===n||66===n)return this.readRadixNumber(2,t)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1,t);case 34:case 39:return this.readString(e,t);case 47:return this.readToken_slash(t);case 37:case 42:return this.readToken_mult_modulo_exp(e,t);case 124:case 38:return this.readToken_pipe_amp(e,t);case 94:return this.readToken_caret(t);case 43:case 45:return this.readToken_plus_min(e,t);case 60:case 62:return this.readToken_lt_gt(e,t);case 61:case 33:return this.readToken_eq_excl(e,t);case 63:return this.readToken_question();case 126:return this.finishOp(w.prefix,1,t);case 35:return this.readToken_numberSign(t);case 92:if(this.options.preprocess)return this.finishOp(P._preBackslash,1,t);case 64:return!!this.options.objj&&this.readToken_at(e,t)}if(r&&(13===e||10===e||8232===e||8233===e)){var s=13===e&&10===this.input.charCodeAt(this.pos+1)?2:1;return this.options.locations&&(this.lineStart=this.pos+s,++this.curLine),this.finishOp(w.eol,s,t)}this.raise(this.pos,"Unexpected character '"+v(e)+"'")},et.preprocessStringify=function(){var e=this.preprocessStack.length,t=this.preprocessStackLastItem;this.pos++,this.preConcatenating=!0,this.next(!1,!1,2),this.preConcatenating=!1;var r,n=this.start+this.tokMacroOffset,s=this.options.locations&&new Ce(this.curLine,this.lineStart);if(this.type===w.string){var i='"'===this.tokInput.slice(this.start,this.start+1)?'\\"':"'";r=i,r+=tt(this.value),r+=i}else r=null!=this.value?this.value:this.type.keyword||this.type.label;for(;this.preprocessStack.length>e&&t===this.preprocessStack[e-1]&&this.pos!==this.input.length;)if(this.preConcatenating=!0,this.next(!1,!1,2),this.preConcatenating=!1,this.lastEnd!==this.start&&(r+=" "),this.type===w.string){var o='"'===this.tokInput.slice(this.start,this.start+1)?'\\"':"'";r+=o,r+=tt(this.value),r+=o}else r+=null!=this.value?this.value:this.type.keyword||this.type.label;var a=new $(null,'"'+r+'"',null,n,!1,null,!1,s);return this.readTokenFromMacro(a,this.tokPosMacroOffset,null,null,this.pos,this.next)},et.finishOp=function(e,t,r){void 0===r&&(r=this.finishToken);var n=this.input.slice(this.pos,this.pos+t);return this.pos+=t,r.call(this,e,n)},et.readRegexp=function(){for(var e,t,r=this.pos;;){this.pos>=this.input.length&&this.raise(r,"Unterminated regular expression");var n=this.input.charAt(this.pos);if(D.test(n)&&this.raise(r,"Unterminated regular expression"),e)e=!1;else{if("["===n)t=!0;else if("]"===n&&t)t=!1;else if("/"===n&&!t)break;e="\\"===n}++this.pos}var s=this.input.slice(r,this.pos);++this.pos;var i=this.pos,o=this.readWord1();this.containsEsc&&this.unexpected(i);var a=this.regexpState||(this.regexpState=new He(this));a.reset(r,s,o),this.validateRegExpFlags(a),this.validateRegExpPattern(a);var c=null;try{c=new RegExp(s,o)}catch(e){}return this.finishToken(w.regexp,{pattern:s,flags:o,value:c})},et.readInt=function(e,t,r){for(var n=this.options.ecmaVersion>=12&&t===undefined,s=r&&48===this.input.charCodeAt(this.pos),i=this.pos,o=0,a=0,c=0,l=null==t?1/0:t;c<l;++c,++this.pos){var p=this.input.charCodeAt(this.pos),u=void 0;if(n&&95===p)s&&this.raiseRecoverable(this.pos,"Numeric separator is not allowed in legacy octal numeric literals"),95===a&&this.raiseRecoverable(this.pos,"Numeric separator must be exactly one underscore"),0===c&&this.raiseRecoverable(this.pos,"Numeric separator is not allowed at the first of digits"),a=p;else{if((u=p>=97?p-97+10:p>=65?p-65+10:p>=48&&p<=57?p-48:1/0)>=e)break;a=p,o=o*e+u}}return n&&95===a&&this.raiseRecoverable(this.pos-1,"Numeric separator is not allowed at the last of digits"),this.pos===i||null!=t&&this.pos-i!==t?null:o},et.readRadixNumber=function(e,t){var r=this.pos;this.pos+=2;var n=this.readInt(e);return null==n&&this.raise(this.start+2,"Expected number in radix "+e),this.options.ecmaVersion>=11&&110===this.input.charCodeAt(this.pos)?(n=rt(this.input.slice(r,this.pos)),++this.pos):u(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),t.call(this,w.num,n)},et.readNumber=function(e,t){var r=this.pos;e||null!==this.readInt(10,undefined,!0)||this.raise(r,"Invalid number");var n=this.pos-r>=2&&48===this.input.charCodeAt(r);n&&this.strict&&this.raise(r,"Invalid number");var s=this.input.charCodeAt(this.pos);if(!n&&!e&&this.options.ecmaVersion>=11&&110===s){var i=rt(this.input.slice(r,this.pos));return++this.pos,u(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),t.call(this,w.num,i)}n&&/[89]/.test(this.input.slice(r,this.pos))&&(n=!1),46!==s||n||(++this.pos,this.readInt(10),s=this.input.charCodeAt(this.pos)),69!==s&&101!==s||n||(43!==(s=this.input.charCodeAt(++this.pos))&&45!==s||++this.pos,null===this.readInt(10)&&this.raise(r,"Invalid number")),u(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var o,a=(o=this.input.slice(r,this.pos),n?parseInt(o,8):parseFloat(o.replace(/_/g,"")));return t.call(this,w.num,a)},et.readCodePoint=function(){var e;if(123===this.input.charCodeAt(this.pos)){this.options.ecmaVersion<6&&this.unexpected();var t=++this.pos;e=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,e>1114111&&this.invalidStringToken(t,"Code point out of bounds")}else e=this.readHexChar(4);return e},et.readString=function(e,t){for(var r="",n=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var s=this.input.charCodeAt(this.pos);if(s===e)break;92===s?(r+=this.input.slice(n,this.pos),r+=this.readEscapedChar(!1),n=this.pos):8232===s||8233===s?(this.options.ecmaVersion<10&&this.raise(this.start,"Unterminated string constant"),++this.pos,this.options.locations&&(this.curLine++,this.lineStart=this.pos)):(B(s)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return r+=this.input.slice(n,this.pos++),t.call(this,w.string,r)};var nt={};et.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(e){if(e!==nt)throw e;this.readInvalidTemplateToken()}this.inTemplateElement=!1},et.invalidStringToken=function(e,t){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw nt;this.raise(e,t)},et.readTmplToken=function(){for(var e="",t=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var r=this.input.charCodeAt(this.pos);if(96===r||36===r&&123===this.input.charCodeAt(this.pos+1))return this.pos!==this.start||this.type!==w.template&&this.type!==w.invalidTemplate?(e+=this.input.slice(t,this.pos),this.finishToken(w.template,e)):36===r?(this.pos+=2,this.finishToken(w.dollarBraceL)):(++this.pos,this.finishToken(w.backQuote));if(92===r)e+=this.input.slice(t,this.pos),e+=this.readEscapedChar(!0),t=this.pos;else if(B(r)){switch(e+=this.input.slice(t,this.pos),++this.pos,r){case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:e+="\n";break;default:e+=String.fromCharCode(r)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),t=this.pos}else++this.pos}},et.readInvalidTemplateToken=function(){for(;this.pos<this.input.length;this.pos++)switch(this.input[this.pos]){case"\\":++this.pos;break;case"$":if("{"!==this.input[this.pos+1])break;case"`":return this.finishToken(w.invalidTemplate,this.input.slice(this.start,this.pos))}this.raise(this.start,"Unterminated template")},et.readEscapedChar=function(e){var t=this.input.charCodeAt(++this.pos);switch(++this.pos,t){case 110:return"\n";case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return v(this.readCodePoint());case 116:return"\t";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),"";case 56:case 57:if(this.strict&&this.invalidStringToken(this.pos-1,"Invalid escape sequence"),e){var r=this.pos-1;return this.invalidStringToken(r,"Invalid escape sequence in template string"),null}default:if(t>=48&&t<=55){var n=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],s=parseInt(n,8);return s>255&&(n=n.slice(0,-1),s=parseInt(n,8)),this.pos+=n.length-1,t=this.input.charCodeAt(this.pos),"0"===n&&56!==t&&57!==t||!this.strict&&!e||this.invalidStringToken(this.pos-1-n.length,e?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(s)}return B(t)?"":String.fromCharCode(t)}},et.readHexChar=function(e){var t=this.pos,r=this.readInt(16,e);return null===r&&this.invalidStringToken(t,"Bad character escape sequence"),r},et.readWord1=function(){this.containsEsc=!1;for(var e="",t=!0,r=this.pos,n=this.options.ecmaVersion>=6;this.pos<this.input.length;){var s=this.fullCharCodeAtPos();if(h(s,n))this.pos+=s<=65535?1:2;else{if(92!==s)break;this.containsEsc=!0,e+=this.input.slice(r,this.pos);var i=this.pos;117!==this.input.charCodeAt(++this.pos)&&this.invalidStringToken(this.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.pos;var o=this.readCodePoint();(t?u:h)(o,n)||this.invalidStringToken(i,"Invalid Unicode escape"),e+=v(o),r=this.pos}t=!1}return e+this.input.slice(r,this.pos)},et.readWord=function(e,t){var r=e||this.readWord1(),n=w.name;if(this.options.preprocess&&!0===this.readMacroWord(r,this.next,t))return!0;return this.keywords.test(r)?n=x[r]:this.options.objj&&Object.prototype.hasOwnProperty.call(I,r)&&(n=I[r]),this.finishToken(n,r)};var st="8.8.0";Z.acorn={Parser:Z,version:st,defaultOptions:W,Position:H,SourceLocation:G,getLineInfo:z,Node:Re,TokenType:b,tokTypes:w,keywordTypes:x,TokContext:de,tokContexts:fe,isIdentifierChar:h,isIdentifierStart:u,Token:Ze,isNewLine:B,lineBreak:D,lineBreakG:U,nonASCIIwhitespace:K},e.Node=Re,e.Parser=Z,e.Position=H,e.SourceLocation=G,e.TokContext=de,e.Token=Ze,e.TokenType=b,e.defaultOptions=W,e.getLineInfo=z,e.isIdentifierChar=h,e.isIdentifierStart=u,e.isNewLine=B,e.keywordTypes=x,e.lineBreak=D,e.lineBreakG=U,e.nonASCIIwhitespace=K,e.parse=function(e,t){return Z.parse(e,t)},e.parseExpressionAt=function(e,t,r){return Z.parseExpressionAt(e,t,r)},e.tokContexts=fe,e.tokTypes=w,e.tokenizer=function(e,t){return Z.tokenizer(e,t)},e.version=st,Object.defineProperty(e,"__esModule",{value:!0})}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("objj-parser"),require("source-map"),require("acorn-walk")):"function"==typeof define&&define.amd?define(["exports","objj-parser","source-map","acorn-walk"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).ObjJCompiler={},e.objjParser,e.ObjectiveJ.sourceMap,e.acorn.walk)}(this,function(e,t,r,n){"use strict";var s,i=function(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach(function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}}),t.default=e,Object.freeze(t)}(t),o=(s=n)&&"object"==typeof s&&"default"in s?s:{default:s};class a{constructor(e,t,r){this.message=m(e,t,r),this.node=t}checkIfWarning=function(e){const t=this.node.name;return!(e.getLvar(t)||void 0!==global[t]||"undefined"!=typeof window&&void 0!==window[t]||e.compiler.getClassDef(t))};isEqualTo=function(e){return this.message.message===e.message.message&&(this.node.start===e.node.start&&this.node.end===e.node.end)}}const c={name:"unused-but-set-variable"},l={name:"shadow-ivar"},p={name:"create-global-inside-function-or-method"},u={name:"unknown-class-or-global"},h={name:"unknown-ivar-type"},d=[c,l,p,u,h];function f(e,t){let r=t;for(;r<e.length&&!i.isNewLine(e.charCodeAt(r));)r++;let n=t;for(;n>0;){if(i.isNewLine(e.charCodeAt(n))){n++;break}n--}return{lineStart:n,lineEnd:r}}function m(e,t,r){const n={},{lineStart:s,lineEnd:o}=f(r,t.start),a=i.getLineInfo(r,t.start);return n.loc=a,n.lineStart=s,n.lineEnd=o,n.message=e,n.messageOnLine=a.line,n.messageOnColumn=a.column,n.messageForNode=t,n.messageType="WARNING",n.messageForLine=r.substring(n.lineStart,n.lineEnd),n}class g{constructor(e,t){if(this.vars=Object.create(null),t)for(const e in t)this[e]=t[e];this.prev=e,e?(this.compiler=e.compiler,this.nodeStack=e.nodeStack.slice(0),this.nodePriorStack=e.nodePriorStack.slice(0),this.nodeStackOverrideType=e.nodeStackOverrideType.slice(0)):(this.nodeStack=[],this.nodePriorStack=[],this.nodeStackOverrideType=[])}toString(){return this.ivars?"ivars: "+JSON.stringify(this.ivars):"<No ivars>"}compiler(){return this.compiler}rootScope(){return this.prev?this.prev.rootScope():this}isRootScope(){return!this.prev}currentClassName(){return this.classDef?this.classDef.name:this.prev?this.prev.currentClassName():null}currentProtocolName(){return this.protocolDef?this.protocolDef.name:this.prev?this.prev.currentProtocolName():null}getIvarForCurrentClass(e){if(this.ivars){const t=this.ivars[e];if(t)return t}const t=this.prev;return t&&!this.classDef?t.getIvarForCurrentClass(e):null}getLvarScope(e,t){if(this.vars){if(this.vars[e])return this}const r=this.prev;return!r||t&&this.methodType?this:r.getLvarScope(e,t)}getLvar(e,t){if(this.vars){const t=this.vars[e];if(t)return t}const r=this.prev;return!r||t&&this.methodType?null:r.getLvar(e,t)}getVarScope(){const e=this.prev;return e?e.getVarScope():this}currentMethodType(){return this.methodType?this.methodType:this.prev?this.prev.currentMethodType():null}copyAddedSelfToIvarsToParent(){if(this.prev&&this.addedSelfToIvars)for(const e in this.addedSelfToIvars){const t=this.addedSelfToIvars[e],r=(this.prev.addedSelfToIvars||(this.prev.addedSelfToIvars=Object.create(null)))[e]||(this.prev.addedSelfToIvars[e]=[]);r.push.apply(r,t)}}addMaybeWarning(e){const t=this.rootScope();let r=t._maybeWarnings;if(r){r[r.length-1].isEqualTo(e)||r.push(e)}else t._maybeWarnings=r=[e]}variablesNotReadWarnings(){const e=this.compiler;if(e.options.warnings.includes(c)&&this.prev&&this.vars)for(const t in this.vars){const r=this.vars[t];r.isRead||"var"!==r.type&&"let"!==r.type&&"const"!==r.type||e.addWarning(m("Variable '"+t+"' is never read",r.node,e.source))}}maybeWarnings(){return this.rootScope()._maybeWarnings}pushNode(e,t){const r=this.nodePriorStack,n=r.length,s=n?r[n-1]:null,i=n?this.nodeStack[n-1]:null;s&&i!==e&&s.push(e),r.push(i===e?s:[]),this.nodeStack.push(e),this.nodeStackOverrideType.push(t)}popNode(){return this.nodeStackOverrideType.pop(),this.nodePriorStack.pop(),this.nodeStack.pop()}currentNode(){const e=this.nodeStack;return e[e.length-1]}currentOverrideType(){const e=this.nodeStackOverrideType;return e[e.length-1]}priorNode(){const e=this.nodePriorStack,t=e.length;if(t>1){const r=e[t-2];return r[r.length-2]||null}return null}formatDescription(e,t,r){const n=this.nodeStack,s=n.length;if((e=e||0)>=s)return null;const i=s-e-1,o=n[i],a=t||this.compiler.formatDescription,c=t?t.parent:a;let l;if(c){if(l=c[r===o?this.nodeStackOverrideType[i]:o.type],r===o&&!l)return null}if(l)return this.formatDescription(e+1,l);if(l=this.formatDescription(e+1,t,o),l)return l;{const e=a.prior;if(e){const t=this.priorNode(),r=e[t?t.type:"None"];if(r)return r}return a}}}class _ extends g{variablesNotReadWarnings(){g.prototype.variablesNotReadWarnings.call(this);const e=this.prev;if(e&&this.possibleHoistedVariables)for(const t in this.possibleHoistedVariables){const r=this.possibleHoistedVariables[t];if(r){if(null!=(e.vars&&e.vars[t])){if(null!=(e.possibleHoistedVariables||(e.possibleHoistedVariables=Object.create(null)))[t])throw new Error("Internal inconsistency, previous scope should not have this possible hoisted variable '"+t+"'");e.possibleHoistedVariables[t]=r}}}}}class y extends _{getVarScope(){return this}}class v{constructor(e,t,n){if(e){if(this.rootNode=new r.SourceNode,this.concat=this.concatSourceNode,this.toString=this.toStringSourceNode,this.isEmpty=this.isEmptySourceNode,this.appendStringBuffer=this.appendStringBufferSourceNode,this.length=this.lengthSourceNode,this.removeAtIndex=this.removeAtIndexSourceNode,t){const e=t.toString(),r=e.substr(e.lastIndexOf("/")+1),s=e.substr(0,e.lastIndexOf("/")+1);this.filename=r,s.length>0&&(this.sourceRoot=s),null!=n&&this.rootNode.setSourceContent(r,n)}null!=n&&(this.sourceContent=n)}else this.atoms=[],this.concat=this.concatString,this.toString=this.toStringString,this.isEmpty=this.isEmptyString,this.appendStringBuffer=this.appendStringBufferString,this.length=this.lengthString,this.removeAtIndex=this.removeAtIndexString}toStringString(){return this.atoms.join("")}toStringSourceNode(){return this.rootNode.toStringWithSourceMap({file:this.filename+"s",sourceRoot:this.sourceRoot})}concatString(e){this.atoms.push(e)}concatSourceNode(e,t,n){t?this.rootNode.add(new r.SourceNode(t.loc.start.line,t.loc.start.column,t.loc.source,e,n)):this.rootNode.add(e),this.notEmpty||(this.notEmpty=!0)}concatFormat(e){if(!e)return;const t=e.split("\n"),r=t.length;if(r>1){this.concat(t[0]);for(let e=1;e<r;e++){let n=t[e];if(this.concat("\n"),"\\"===n.slice(0,1)){let e=1,t=n.slice(1,1+e);"-"===t&&(e=2,t=n.slice(1,1+e));const r=parseInt(t);r&&this.concat(r>0?indentation+Array(r*indentationSpaces+1).join(indentType):indentation.substring(indentationSize*-r)),n=n.slice(1+e)}else(n||e===r-1)&&this.concat(this.indentation);n&&this.concat(n)}}else this.concat(e)}isEmptyString(){return 0!==this.atoms.length}isEmptySourceNode(){return this.notEmpty}appendStringBufferString(e){const t=this.atoms,r=t.length,n=e.atoms,s=n.length;t.length=r+s;for(let e=0;e<s;e++)t[r+e]=n[e]}appendStringBufferSourceNode(e){this.rootNode.add(e.rootNode)}lengthString(){return this.atoms.length}lengthSourceNode(){return this.rootNode.children.length}removeAtIndexString(e){this.atoms[e]=""}removeAtIndexSourceNode(e){this.rootNode.children[e]=""}}const S={acornOptions:function(){return Object.create(null)},sourceMap:!1,sourceMapIncludeSource:!1,pass:2,classDefs:function(){return Object.create(null)},protocolDefs:function(){return Object.create(null)},typeDefs:function(){return Object.create(null)},generate:!0,generateObjJ:!1,indentationSpaces:4,indentationType:" ",transformNamedFunctionDeclarationToAssignment:!1,includeMethodFunctionNames:!0,includeMethodArgumentTypeSignatures:!0,includeIvarTypeSignatures:!0,inlineMsgSendFunctions:!0,warnings:[c,l,p,u,h],macros:null};function b(e){const t=Object.create(null);for(const r in S)if(e&&Object.prototype.hasOwnProperty.call(e,r)){const n=e[r];t[r]="function"==typeof n?n():n}else if(Object.prototype.hasOwnProperty.call(S,r)){const e=S[r];t[r]="function"==typeof e?e():e}return t}class E{constructor(e){this.name=e}}class C{constructor(e,t){this.name=e,this.types=t}}class L{constructor(e,t,r,n,s,i,o){this.name=t,r&&(this.superClass=r),n&&(this.ivars=n),e&&(this.instanceMethods=s||Object.create(null),this.classMethods=i||Object.create(null)),o&&(this.protocols=o)}addInstanceMethod(e){this.instanceMethods[e.name]=e}addClassMethod(e){this.classMethods[e.name]=e}listOfNotImplementedMethodsForProtocols(e){let t=[];const r=this.getInstanceMethods(),n=this.getClassMethods();for(let s=0,i=e.length;s<i;s++){const i=e[s],o=i.requiredInstanceMethods,a=i.requiredClassMethods,c=i.protocols;if(o)for(const e in o){const n=o[e];r[e]||t.push({methodDef:n,protocolDef:i})}if(a)for(const e in a){const r=a[e];n[e]||t.push({methodDef:r,protocolDef:i})}c&&(t=t.concat(this.listOfNotImplementedMethodsForProtocols(c)))}return t}getInstanceMethod(e){const t=this.instanceMethods;if(t){const r=t[e];if(r)return r}const r=this.superClass;return r?r.getInstanceMethod(e):null}getClassMethod(e){const t=this.classMethods;if(t){const r=t[e];if(r)return r}const r=this.superClass;return r?r.getClassMethod(e):null}getInstanceMethods(){const e=this.instanceMethods;if(e){const t=this.superClass,r=Object.create(null);if(t){const e=t.getInstanceMethods();for(const t in e)r[t]=e[t]}for(const t in e)r[t]=e[t];return r}return[]}getClassMethods(){const e=this.classMethods;if(e){const t=this.superClass,r=Object.create(null);if(t){const e=t.getClassMethods();for(const t in e)r[t]=e[t]}for(const t in e)r[t]=e[t];return r}return[]}}class x{constructor(e,t,r,n){this.name=e,this.protocols=t,r&&(this.requiredInstanceMethods=r),n&&(this.requiredClassMethods=n)}addInstanceMethod=function(e){(this.requiredInstanceMethods||(this.requiredInstanceMethods=Object.create(null)))[e.name]=e};addClassMethod=function(e){(this.requiredClassMethods||(this.requiredClassMethods=Object.create(null)))[e.name]=e};getInstanceMethod=function(e){const t=this.requiredInstanceMethods;if(t){const r=t[e];if(r)return r}const r=this.protocols;for(let t=0,n=r.length;t<n;t++){const n=r[t].getInstanceMethod(e);if(n)return n}return null};getClassMethod=function(e){const t=this.requiredClassMethods;if(t){const r=t[e];if(r)return r}const r=this.protocols;for(let t=0,n=r.length;t<n;t++){const n=r[t].getClassMethod(e);if(n)return n}return null}}function R(e){return new RegExp("^(?:"+e.replace(/ /g,"|")+")$")}function w(e){switch(e.type){case"Literal":case"Identifier":return!0;case"ArrayExpression":for(let t=0;t<e.elements.length;++t)if(!w(e.elements[t]))return!1;return!0;case"DictionaryLiteral":for(let t=0;t<e.keys.length;++t){if(!w(e.keys[t]))return!1;if(!w(e.values[t]))return!1}return!0;case"ObjectExpression":for(let t=0;t<e.properties.length;++t)if(!w(e.properties[t].value))return!1;return!0;case"FunctionExpression":for(let t=0;t<e.params.length;++t)if(!w(e.params[t]))return!1;return!0;case"SequenceExpression":for(let t=0;t<e.expressions.length;++t)if(!w(e.expressions[t]))return!1;return!0;case"UnaryExpression":return w(e.argument);case"BinaryExpression":return w(e.left)&&w(e.right);case"ConditionalExpression":return w(e.test)&&w(e.consequent)&&w(e.alternate);case"MemberExpression":return w(e.object)&&(!e.computed||w(e.property));case"Dereference":return w(e.expr);case"Reference":return w(e.element);default:return!1}}function F(e,t){if(!w(t))throw e.compiler.error_message("Dereference of expression with side effects",t)}function T(e){return function(t,r,n){r.compiler.jsBuffer.concat("("),e(t,r,n),r.compiler.jsBuffer.concat(")")}}const P={"*":3,"/":3,"%":3,"+":4,"-":4,"<<":5,">>":5,">>>":5,"<":6,"<=":6,">":6,">=":6,in:6,instanceof:6,"==":7,"!=":7,"===":7,"!==":7,"&":8,"^":9,"|":10,"&&":11,"||":12,"??":13},k={MemberExpression:1,CallExpression:1,NewExpression:1,ChainExpression:2,FunctionExpression:3,ArrowFunctionExpression:3,ImportExpression:3,UnaryExpression:4,UpdateExpression:4,BinaryExpression:5,LogicalExpression:6,ConditionalExpression:7,AssignmentExpression:8};function I(e,t,r){}const A=o.default.make({ImportStatement:function(e,t,r){const n=e.filename.value;t.compiler.dependencies.push({url:n,isLocal:e.localfilepath})},TypeDefStatement:I,ClassStatement:I,ClassDeclarationStatement:I,MessageSendExpression:I,GlobalStatement:I,ProtocolDeclarationStatement:I,ArrayLiteral:I,Reference:I,DictionaryLiteral:I,Dereference:I,SelectorLiteralExpression:I});function N(e,t,r){const n=e.type,s=k[n]||-1,i=k[t.type]||-1;let o,a;return s<i||s===i&&M.test(n)&&((o=P[e.operator])<(a=P[t.operator])||r&&o===a)}const O=R("self _cmd __filename undefined localStorage arguments"),j=R("delete in instanceof new typeof void"),M=R("LogicalExpression BinaryExpression"),D=o.default.make({Program:function(e,t,r){for(let n=0;n<e.body.length;++n)r(e.body[n],t,"Statement");const n=t.maybeWarnings();if(n)for(let e=0;e<n.length;e++){const r=n[e];r.checkIfWarning(t)&&t.compiler.addWarning(r.message)}},BlockStatement:function(e,t,r){const n=t.compiler,s=n.jsBuffer,i=t.isDecl;null!=i&&delete t.isDecl;const o=t.endOfScopeBody;o&&delete t.endOfScopeBody;const a=t.skipIndentation;a?delete t.skipIndentation:s.concat(n.indentation.substring(n.indentationSize)),s.concat("{\n",e);const c=o?t:new _(t);for(let t=0;t<e.body.length;++t)"BlockStatement"===e.body[t].type?(n.indentation+=n.indentStep,r(e.body[t],c,"Statement"),n.indentation=n.indentation.substring(n.indentationSize)):r(e.body[t],c,"Statement");!o&&c.variablesNotReadWarnings();const l=t.maxReceiverLevel;if(o&&l){s.concat(n.indentation),s.concat("var ");for(let e=0;e<l;e++)e&&s.concat(", "),s.concat("___r"),s.concat(e+1+"");s.concat(";\n")}s.concat(n.indentation.substring(n.indentationSize)),s.concat("}",e),t.isDefaultExport&&s.concat(";"),a||!1===i||s.concat("\n"),t.indentBlockLevel--},ExpressionStatement:function(e,t,r){const n=t.compiler,s=n.jsBuffer;if(s.concat(t.compiler.indentation),"Reference"===e.expression.type)throw n.error_message("Can't have reference of expression as a statement",e.expression);"AssignmentExpression"===e.expression.type&&"ObjectPattern"===e.expression.left.type||"FunctionExpression"===e.expression.type||"ObjectExpression"===e.expression.type||"BinaryExpression"===e.expression.type&&"FunctionExpression"===e.expression.left.type||"Literal"===e.expression.type&&"use strict"===e.expression.value&&!e.directive?T(r)(e.expression,t,"Expression"):r(e.expression,t,"Expression"),s.concat(";\n",e)},IfStatement:function(e,t,r){const n=t.compiler.jsBuffer;t.superNodeIsElse?delete t.superNodeIsElse:n.concat(t.compiler.indentation),n.concat("if (",e),r(e.test,t,"Expression"),n.concat(")"),"EmptyStatement"!==e.consequent.type&&n.concat("\n"),t.compiler.indentation+=t.compiler.indentStep,r(e.consequent,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize);const s=e.alternate;if(s){const i="IfStatement"!==s.type,o="EmptyStatement"===s.type;n.concat(t.compiler.indentation),n.concat(i?o?"else":"else\n":"else ",e),i?t.compiler.indentation+=t.compiler.indentStep:t.superNodeIsElse=!0,r(s,t,"Statement"),i&&(t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize))}},LabeledStatement:function(e,t,r){const n=t.compiler.jsBuffer;r(e.label,t,"VariablePattern"),n.concat(": ",e),r(e.body,t,"Statement")},BreakStatement:function(e,t,r){const n=t.compiler,s=e.label,i=n.jsBuffer;i.concat(t.compiler.indentation),s?(i.concat("break ",e),r(s,t,"VariablePattern"),i.concat(";\n")):i.concat("break;\n",e)},ContinueStatement:function(e,t,r){const n=t.compiler,s=e.label,i=n.jsBuffer;i.concat(t.compiler.indentation),s?(i.concat("continue ",e),r(s,t,"VariablePattern"),i.concat(";\n")):i.concat("continue;\n",e)},WithStatement:function(e,t,r){const n=t.compiler.jsBuffer;n.concat(t.compiler.indentation),n.concat("with(",e),r(e.object,t,"Expression"),n.concat(")\n",e),t.compiler.indentation+=t.compiler.indentStep,r(e.body,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize)},SwitchStatement:function(e,t,r){const n=t.compiler.jsBuffer;n.concat(t.compiler.indentation),n.concat("switch(",e),r(e.discriminant,t,"Expression"),n.concat(") {\n"),t.compiler.indentation+=t.compiler.indentStep;for(let s=0;s<e.cases.length;++s){const i=e.cases[s];i.test?(n.concat(t.compiler.indentation),n.concat("case "),r(i.test,t,"Expression"),n.concat(":\n")):n.concat("default:\n"),t.compiler.indentation+=t.compiler.indentStep;for(let e=0;e<i.consequent.length;++e)r(i.consequent[e],t,"Statement");t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize)}t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize),n.concat(t.compiler.indentation),n.concat("}\n")},ReturnStatement:function(e,t,r){const n=t.compiler.jsBuffer;n.concat(t.compiler.indentation),n.concat("return",e),e.argument&&(n.concat(" "),r(e.argument,t,"Expression")),n.concat(";\n")},ThrowStatement:function(e,t,r){const n=t.compiler.jsBuffer;n.concat(t.compiler.indentation),n.concat("throw",e),n.concat(" "),r(e.argument,t,"Expression"),n.concat(";\n")},TryStatement:function(e,t,r){const n=t.compiler.jsBuffer;if(n.concat(t.compiler.indentation),n.concat("try",e),n.concat(" "),t.compiler.indentation+=t.compiler.indentStep,t.skipIndentation=!0,r(e.block,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize),e.handler){const s=e.handler,i=new g(t),o=s.param,a=o?.name;a&&(i.vars[a]={type:"catch clause",node:o}),n.concat("\n"),n.concat(t.compiler.indentation),n.concat("catch"),o&&(n.concat("("),r(o,t,"Pattern"),n.concat(") ")),t.compiler.indentation+=t.compiler.indentStep,i.skipIndentation=!0,i.endOfScopeBody=!0,r(s.body,i,"BlockStatement"),i.variablesNotReadWarnings(),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize),i.copyAddedSelfToIvarsToParent()}e.finalizer&&(n.concat("\n"),n.concat(t.compiler.indentation),n.concat("finally "),t.compiler.indentation+=t.compiler.indentStep,t.skipIndentation=!0,r(e.finalizer,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize)),n.concat("\n")},WhileStatement:function(e,t,r){const n=t.compiler,s=e.body,i=n.jsBuffer;i.concat(t.compiler.indentation),i.concat("while (",e),r(e.test,t,"Expression"),i.concat(")"),"EmptyStatement"!==e.body.type&&i.concat("\n"),t.compiler.indentation+=t.compiler.indentStep,r(s,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize)},DoWhileStatement:function(e,t,r){const n=t.compiler.jsBuffer;n.concat(t.compiler.indentation),n.concat("do\n",e),t.compiler.indentation+=t.compiler.indentStep,r(e.body,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize),n.concat(t.compiler.indentation),n.concat("while ("),r(e.test,t,"Expression"),n.concat(");\n")},ForStatement:function(e,t,r){const n=t.compiler,s=e.body,i=n.jsBuffer;i.concat(t.compiler.indentation),i.concat("for (",e),e.init&&r(e.init,t,"ForInit"),i.concat("; "),e.test&&r(e.test,t,"Expression"),i.concat("; "),e.update&&r(e.update,t,"Expression"),i.concat(")"),"EmptyStatement"!==e.body.type&&i.concat("\n"),t.compiler.indentation+=t.compiler.indentStep,r(s,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize)},ForInStatement:function(e,t,r){const n=t.compiler,s=e.body,i=n.jsBuffer;i.concat(t.compiler.indentation),i.concat("for (",e),r(e.left,t,"ForInit"),i.concat(" in "),r(e.right,t,"Expression"),i.concat((s.type,")\n")),t.compiler.indentation+=t.compiler.indentStep,r(s,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize)},ForOfStatement:function(e,t,r){const n=t.compiler,s=e.body,i=n.jsBuffer;i.concat("for",e),e.await&&i.concat(" await "),i.concat("("),r(e.left,t,"ForInit"),i.concat(" of "),r(e.right,t,"Expression"),i.concat((s.type,")\n")),t.compiler.indentation+=t.compiler.indentStep,r(s,t,"Statement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize)},ForInit:function(e,t,r){const n=t.compiler.jsBuffer;"VariableDeclaration"===e.type?(t.isFor=!0,r(e,t),delete t.isFor):"BinaryExpression"===e.type&&"in"===e.operator?(n.concat("("),r(e,t,"Expression"),n.concat(")")):r(e,t,"Expression")},DebuggerStatement:function(e,t,r){const n=t.compiler.jsBuffer;n.concat(t.compiler.indentation),n.concat("debugger;\n",e)},Function:function(e,t,r){const n=t.compiler,s=n.jsBuffer,i=new y(t),o="FunctionDeclaration"===e.type,a=e.id;i.isDecl=o;for(let t=0;t<e.params.length;++t)i.vars[e.params[t].name]={type:"argument",node:e.params[t]};if(s.concat(t.compiler.indentation),a){const e=a.name;(o?t:i).vars[e]={type:o?"function":"function name",node:a},!t.skipFunctionKeyword&&n.transformNamedFunctionDeclarationToAssignment&&(s.concat(e),s.concat(" = "))}t.isDefaultExport&&!o&&s.concat("(");const c=[];t.methodPrefix?.length&&c.push(...t.methodPrefix),e.async&&c.push("async"),t.skipFunctionKeyword||c.push("function"),e.generator&&c.push("*"),s.concat(c.join(" ")),!t.skipFunctionKeyword&&n.transformNamedFunctionDeclarationToAssignment||!a||(s.concat(" "),t.isComputed&&s.concat("["),r(a,t),t.isComputed&&s.concat("]")),s.concat("(");for(let n=0;n<e.params.length;++n)n&&s.concat(", "),"RestElement"===e.params[n].type?r(e.params[n],t,"RestElement"):r(e.params[n],t,"Pattern");s.concat(")\n"),t.compiler.indentation+=t.compiler.indentStep,i.endOfScopeBody=!0,r(e.body,i,"Statement"),t.isDefaultExport&&!o&&s.concat(")"),i.variablesNotReadWarnings(),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize),i.copyAddedSelfToIvarsToParent()},ObjectPattern:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("{",e);let s=!0;for(const i of e.properties)s?s=!1:n.concat(", "),"Property"===i.type?i.shorthand&&"AssignmentPattern"===i.value.type?r(i.value,t):(i.computed&&n.concat("["),r(i.key,t,"Pattern"),i.computed&&n.concat("]"),i.shorthand||(n.concat(": "),r(i.value,t,"Pattern"))):r(i,t);n.concat("}")},RestElement:function(e,t,r){t.compiler.jsBuffer.concat("..."),r(e.argument,t,"Pattern")},RestPattern:function(e,t,r){t.compiler.jsBuffer.concat("..."),r(e.argument,t,"Pattern")},EmptyStatement:function(e,t,r){t.compiler.jsBuffer.concat(";\n")},VariableDeclaration:function(e,t,r){const n=(e,t)=>{switch(e.type){case"Identifier":t.push(e);break;case"ObjectPattern":t.concat(e.properties.reduce((e,r)=>e.concat(n("RestElement"===r.type?r.argument:r.value,t)),[]));break;case"ArrayPattern":t.concat(e.elements.reduce((e,r)=>null!=r?e.concat(n(r,t)):e,[]));break;case"AssignmentPattern":t.concat(n(e.left,t))}return t},s=t.compiler,i=s.jsBuffer,o="var"===e.kind,a=o?t.getVarScope():t;t.isFor||i.concat(s.indentation),i.concat(e.kind+" ",e);let c=!0;for(const p of e.declarations){let u=n(p.id,[]);if(u)for(const t of u){const r=o&&a.possibleHoistedVariables?.[t.name],n={type:e.kind,node:t,isRead:r?r.isRead:0};r&&(r.variable&&(r.variable.isRead-=r.isRead),a.possibleHoistedVariables[t.name]=null),a.vars[t.name]=n}if(c||(t.isFor?i.concat(", "):(i.concat(",\n"),i.concat(s.indentation),i.concat(" "))),r(p.id,t,"Pattern"),p.init&&(i.concat(" = "),r(p.init,t,"Expression")),t.addedSelfToIvars&&u)for(const e of u){const r=t.addedSelfToIvars[e.name];if(r){const n=r.length;for(let t=0;t<n;t++){const n=r[t];i.removeAtIndex(n.index),s.options.warnings.includes(l)&&s.addWarning(m("Local declaration of '"+e.name+"' hides instance variable",n.node,s.source))}a.vars[e.name].isRead+=n,t.addedSelfToIvars[e.name]=[]}}c&&(c=!1)}t.isFor||i.concat(";\n",e)},ThisExpression:function(e,t,r){t.compiler.jsBuffer.concat("this",e)},ArrayExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("[",e);for(let s=0;s<e.elements.length;++s){const i=e.elements[s];0!==s&&n.concat(", "),i&&r(i,t,"Expression")}n.concat("]")},ObjectExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("{",e);let s=!0;for(const i of e.properties)s?s=!1:n.concat(", "),r(i,t);n.concat("}")},Property:function(e,t,r){const n=t.compiler.jsBuffer;"AssignmentPattern"===e.value?.type&&e.shorthand?r(e.value,t,"AssignmentPattern"):"get"===e.kind||"set"===e.kind||e.method?(n.concat((e.method?"":e.kind)+" "),e.value.id=e.key,t.isComputed=e.computed,t.skipFunctionKeyword=!0,r(e.value,t,"Expression"),delete t.skipFunctionKeyword,delete t.isComputed):(e.computed&&n.concat("["),t.isPropertyKey=!0,r(e.key,t,"Expression"),delete t.isPropertyKey,e.computed&&n.concat("]"),e.shorthand||n.concat(": "),e.shorthand||r(e.value,t,"Expression"))},StaticBlock:function(e,t,r){const n=t.compiler.jsBuffer;n.concat(t.compiler.indentation),n.concat("static"),n.concat("{");for(let n=0;n<e.body.length;++n)r(e.body[n],t,"Statement");n.concat("}")},SpreadElement:function(e,t,r){t.compiler.jsBuffer.concat("..."),r(e.argument,t)},SequenceExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("(",e);for(let s=0;s<e.expressions.length;++s)0!==s&&n.concat(", "),r(e.expressions[s],t,"Expression");n.concat(")")},UnaryExpression:function(e,t,r){const n=t.compiler,s=e.argument,i=n.jsBuffer;e.prefix?(i.concat(e.operator,e),j.test(e.operator)&&i.concat(" "),(N(e,s)?T(r):r)(s,t,"Expression")):((N(e,s)?T(r):r)(s,t,"Expression"),i.concat(e.operator))},UpdateExpression:function(e,t,r){const n=t.compiler.jsBuffer;if("Dereference"===e.argument.type)return F(t,e.argument),n.concat((e.prefix?"":"(")+"("),r(e.argument.expr,t,"Expression"),n.concat(")("),r(e.argument,t,"Expression"),void n.concat(" "+e.operator.substring(0,1)+" 1)"+(e.prefix?"":"++"===e.operator?" - 1)":" + 1)"));e.prefix?(n.concat(e.operator,e),j.test(e.operator)&&n.concat(" "),(N(e,e.argument)?T(r):r)(e.argument,t,"Expression")):((N(e,e.argument)?T(r):r)(e.argument,t,"Expression"),n.concat(e.operator))},BinaryExpression:function(e,t,r){const n=t.compiler;"**"===e.operator||"ArrowFunctionExpression"===e.left.type?T(r)(e.left,t,"Expression"):(N(e,e.left)?T(r):r)(e.left,t,"Expression");const s=n.jsBuffer;s.concat(" "),s.concat(e.operator,e),s.concat(" "),(N(e,e.right,!0)?T(r):r)(e.right,t,"Expression")},LogicalExpression:function(e,t,r){const n=t.compiler;"??"===e.operator?T(r)(e.left,t,"Expression"):(N(e,e.left)?T(r):r)(e.left,t,"Expression");const s=n.jsBuffer;s.concat(" "),s.concat(e.operator),s.concat(" "),"??"===e.operator?T(r)(e.right,t,"Expression"):(N(e,e.right,!0)?T(r):r)(e.right,t,"Expression")},ParenthesizedExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("("),r(e.expression,t,"Expression"),n.concat(")")},AssignmentExpression:function(e,t,r){const n=t.compiler;let s=t.assignment;const i=n.jsBuffer;if("Dereference"===e.left.type)return F(t,e.left),i.concat("(",e),r(e.left.expr,t,"Expression"),i.concat(")("),"="!==e.operator&&(r(e.left,t,"Expression"),i.concat(" "+e.operator.substring(0,1)+" ")),r(e.right,t,"Expression"),void i.concat(")");s=t.assignment;const o=e.left;if(t.assignment=!0,"Identifier"===o.type&&"self"===o.name){const e=t.getLvar("self",!0);if(e){const t=e.scope;t&&(t.assignmentToSelf=!0)}}(N(e,o)?T(r):r)(o,t,"Expression"),i.concat(" "),i.concat(e.operator),i.concat(" "),t.assignment=s,(N(e,e.right,!0)?T(r):r)(e.right,t,"Expression");const a=t.getVarScope();a.isRootScope()&&"Identifier"===o.type&&!a.getLvar(o.name)&&(a.vars[o.name]={type:"global",node:o})},AssignmentPattern:function(e,t,r){const n=t.compiler.jsBuffer;r(e.left,t,"Pattern"),n.concat(" = "),r(e.right,t,"Expression")},ArrayPattern:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("[");let s=!0;for(const i of e.elements)s&&null!=i?s=!1:n.concat(", "),null!=i&&r(i,t,"Pattern");n.concat("]")},VariablePattern:function(e,t,r){t.compiler.jsBuffer.concat(e.name)},TemplateLiteral:function(e,t,r){const n=t.compiler.jsBuffer;let s;for(n.concat("`"),s=0;s<e.expressions.length;s++)n.concat(e.quasis[s].value.raw),n.concat("${"),r(e.expressions[s],t),n.concat("}");n.concat(e.quasis[s].value.raw),n.concat("`")},TaggedTemplateExpression:function(e,t,r){const n=t.compiler.jsBuffer;"ChainExpression"===e.tag.type&&n.concat("("),r(e.tag,t,"Expression"),"ChainExpression"===e.tag.type&&n.concat(")"),r(e.quasi,t,"Expression")},ConditionalExpression:function(e,t,r){const n=t.compiler.jsBuffer;(N(e,e.test)?T(r):r)(e.test,t,"Expression"),n.concat(" ? "),r(e.consequent,t,"Expression"),n.concat(" : "),r(e.alternate,t,"Expression")},NewExpression:function(e,t,r){const n=t.compiler.jsBuffer,s=e.arguments;if(n.concat("new ",e),(N(e,e.callee)?T(r):r)(e.callee,t,"Expression"),n.concat("("),s)for(let e=0,i=s.length;e<i;++e)e&&n.concat(", "),r(s[e],t,"Expression");n.concat(")")},CallExpression:function(e,t,r){const n=t.compiler,s=e.arguments,i=e.callee,o=n.jsBuffer;if("Identifier"===i.type&&"eval"===i.name){const e=t.getLvar("self",!0);if(e){const t=e.scope;t&&(t.assignmentToSelf=!0)}}if((N(e,i)?T(r):r)(i,t,"Expression"),e.optional&&o.concat("?."),o.concat("("),s)for(let e=0,n=s.length;e<n;++e)e&&o.concat(", "),r(s[e],t,"Expression");o.concat(")")},MemberExpression:function(e,t,r){const n=t.compiler,s=e.computed;(N(e,e.object)?T(r):r)(e.object,t,"Expression");let i="";i=e.optional&&e.computed?"?.[":e.optional?"?.":e.computed?"[":".",n.jsBuffer.concat(i),t.secondMemberExpression=!s,(!s&&N(e,e.property)?T(r):r)(e.property,t,"Expression"),t.secondMemberExpression=!1,s&&n.jsBuffer.concat("]")},ChainExpression:function(e,t,r){r(e.expression,t)},AwaitExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("await",e),e.argument&&(n.concat(" "),n.concat("("),r(e.argument,t,"Expression"),n.concat(")"))},ArrowFunctionExpression:function(e,t,r){const n=t.compiler.jsBuffer,s=new y(t);s.isDecl=!1;for(let t=0;t<e.params.length;++t)s.vars[e.params[t].name]={type:"argument",node:e.params[t]};e.async&&n.concat("async ");const i=function(e){for(const t of e)if("Identifier"!==t.type)return!0;return e.length>1||0===e.length}(e.params);i&&n.concat("(");let o=!0;for(const s of e.params)o?o=!1:n.concat(", "),r(s,t,"Pattern");i&&n.concat(")"),n.concat(" => "),e.expression?"AssignmentExpression"===e.body.type&&"ObjectPattern"===e.body.left.type||"FunctionExpression"===e.body.type||"ObjectExpression"===e.body.type?T(r)(e.body,s,"Expression"):r(e.body,s,"Expression"):(s.skipIndentation=!0,s.endOfScopeBody=!0,t.compiler.indentation+=t.compiler.indentStep,r(e.body,s,"BlockStatement"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize)),s.variablesNotReadWarnings(),s.copyAddedSelfToIvarsToParent()},Identifier:function(e,t,r){const n=t.compiler,s=n.jsBuffer,i=e.name;if(t.isPropertyKey)return void s.concat(i,e,"self"===i?"self":null);let o=t.getLvarScope(i,!0),c=o.vars?.[i];if(!t.secondMemberExpression&&"-"===t.currentMethodType()){if(n.getIvarForClass(i,t))c?n.options.warnings.includes(l)&&n.addWarning(m("Local declaration of '"+i+"' hides instance variable",e,n.source)):(((t.addedSelfToIvars||(t.addedSelfToIvars=Object.create(null)))[i]||(t.addedSelfToIvars[i]=[])).push({node:e,index:s.length()}),s.concat("self.",e));else if(!O.test(i)){let r;const s=void 0!==global[i]||"undefined"!=typeof window&&void 0!==window[i]||n.getClassDef(i),o=t.getLvar(i);(!s||o&&"class"===o.type)&&(o||(t.assignment&&n.options.warnings.includes(p)?(r=new a("Creating global variable inside function or method '"+i+"'",e,n.source),t.vars[i]={type:"remove global warning",node:e}):n.options.warnings.includes(u)&&(r=new a("Using unknown class or uninitialized global variable '"+i+"'",e,n.source)))),r&&t.addMaybeWarning(r)}}if(!t.assignment||!t.secondMemberExpression)if(c)c.isRead++;else{o=o.getLvarScope(i),c=o.vars&&o.vars[i],c&&c.isRead++;let e=(o.possibleHoistedVariables||(o.possibleHoistedVariables=Object.create(null)))[i];if(null==e?(e={isRead:1},o.possibleHoistedVariables[i]=e):e.isRead++,c){if(e.variable&&e.variable!==c||e.varScope&&e.varScope!==o)throw new Error("Internal inconsistency, var or scope is not the same");e.variable=c,e.varScope=o}}s.concat(i,e,"self"===i?"self":null)},YieldExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("yield",e),e.delegate&&n.concat("*"),e.argument&&(n.concat(" "),r(e.argument,t,"Expression"))},VariablePattern:function(e,t,r){t.compiler.jsBuffer.concat(e.name,e)},Literal:function(e,t,r){const n=t.compiler;if(e.raw)"@"===e.raw.charAt(0)?n.jsBuffer.concat(e.raw.substring(1),e):n.jsBuffer.concat(e.raw,e);else{const t=e.value,r=-1!==t.indexOf('"');n.jsBuffer.concat(r?"'":'"',e),n.jsBuffer.concat(t),n.jsBuffer.concat(r?"'":'"')}},ClassDeclaration:function(e,t,r){const n=t.compiler.jsBuffer;"ClassExpression"===e.type&&n.concat("("),n.concat("class "),e.id&&(t.vars[e.id.name]={type:"JSClass",node:e},r(e.id,t)),e.superClass&&(n.concat(" extends "),r(e.superClass,t)),t.compiler.indentation+=t.compiler.indentStep,r(e.body,t,"ClassBody"),t.compiler.indentation=t.compiler.indentation.substring(t.compiler.indentationSize),"ClassExpression"===e.type&&n.concat(")")},ClassExpression:function(e,t,r){r(e,t,"ClassDeclaration")},ClassBody:function(e,t,r){const n=t.compiler;n.jsBuffer.concat(" {\n");for(const s of e.body)r(s,t),n.jsBuffer.concat("\n");n.jsBuffer.concat("}\n")},PropertyDefinition:function(e,t,r){const n=t.compiler.jsBuffer;n.concat(t.compiler.indentation),e.static&&n.concat("static "),e.computed&&n.concat("["),r(e.key,t),e.computed&&n.concat("]"),e.value&&(n.concat(" = "),r(e.value,t)),n.concat(";")},MethodDefinition:function(e,t,r){const n=[];e.static&&n.push("static"),"get"===e.kind&&n.push("get"),"set"===e.kind&&n.push("set"),e.value.id=e.key,t.skipFunctionKeyword=!0,t.methodPrefix=n,e.computed&&(t.isComputed=!0),r(e.value,t),delete t.methodPrefix,t.isComputed=!1,t.skipFunctionKeyword=!1},PrivateIdentifier:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("#"),n.concat(e.name)},MetaProperty:function(e,t,r){const n=t.compiler.jsBuffer;"import"===e.meta.name?n.concat("import.meta"):n.concat("new.target")},Super:function(e,t,r){t.compiler.jsBuffer.concat("super")},ExportNamedDeclaration:function(e,t,r){const n=t.compiler.jsBuffer;if(n.concat("export "),e.declaration)r(e.declaration,t);else{n.concat("{");let s=!0;for(const i of e.specifiers)s?s=!1:n.concat(", "),r(i,t);n.concat("}"),e.source&&(n.concat(" from "),r(e.source,t))}n.concat("\n")},ExportSpecifier:function(e,t,r){const n=t.compiler.jsBuffer;r(e.local,t),e.local!==e.exported&&(n.concat(" as "),r(e.exported,t))},ExportDefaultDeclaration:function(e,t,r){const n=t.compiler.jsBuffer;t.isDefaultExport=!0,n.concat("export default "),r(e.declaration,t),delete t.isDefaultExport},ExportAllDeclaration:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("export * "),e.exported&&(n.concat("as "),r(e.exported,t)),e.source&&(n.concat(" from "),r(e.source,t)),n.concat("\n")},ImportDeclaration:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("import ");let s=!1,i=!0;for(const o of e.specifiers)switch(i?i=!1:n.concat(", "),o.type){case"ImportSpecifier":s||n.concat("{"),s=!0,r(o.imported,t),o.local!==o.imported&&(n.concat(" as "),r(o.local,t));break;case"ImportDefaultSpecifier":r(o.local,t);break;case"ImportNamespaceSpecifier":n.concat("* as "),r(o.local,t)}s&&n.concat("}"),e.specifiers.length>0&&n.concat(" from "),r(e.source,t),n.concat("\n")},ImportExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("import"),n.concat("("),r(e.source,t),n.concat(")")},ArrayLiteral:function(e,t,r){const n=t.compiler,s=n.jsBuffer,i=e.elements.length,o=t.getVarScope();if(o.receiverLevel||(o.receiverLevel=0),i?(n.options.inlineMsgSendFunctions?(s.concat("(___r",e),s.concat(++o.receiverLevel+""),s.concat(' = (CPArray.isa.method_msgSend["alloc"] || _objj_forward)(CPArray, "alloc"), ___r'),s.concat(o.receiverLevel+""),s.concat(" == null ? ___r"),s.concat(o.receiverLevel+""),s.concat(" : (___r"),s.concat(o.receiverLevel+""),s.concat('.isa.method_msgSend["initWithObjects:count:"] || _objj_forward)(___r'),s.concat(o.receiverLevel+""),s.concat(', "initWithObjects:count:", [')):(s.concat("(___r",e),s.concat(++o.receiverLevel+""),s.concat(' = CPArray.isa.objj_msgSend0(CPArray, "alloc"), ___r'),s.concat(o.receiverLevel+""),s.concat(" == null ? ___r"),s.concat(o.receiverLevel+""),s.concat(" : ___r"),s.concat(o.receiverLevel+""),s.concat(".isa.objj_msgSend2(___r"),s.concat(o.receiverLevel+""),s.concat(', "initWithObjects:count:", [')),o.maxReceiverLevel>=o.receiverLevel||(o.maxReceiverLevel=o.receiverLevel)):(n.options.inlineMsgSendFunctions?(s.concat("(___r",e),s.concat(++o.receiverLevel+""),s.concat(' = (CPArray.isa.method_msgSend["alloc"] || _objj_forward)(CPArray, "alloc"), ___r'),s.concat(o.receiverLevel+""),s.concat(" == null ? ___r"),s.concat(o.receiverLevel+""),s.concat(" : (___r"),s.concat(o.receiverLevel+""),s.concat('.isa.method_msgSend["init"] || _objj_forward)(___r'),s.concat(o.receiverLevel+""),s.concat(', "init"))')):(s.concat("(___r"),s.concat(++o.receiverLevel+""),s.concat(' = CPArray.isa.objj_msgSend0(CPArray, "alloc"), ___r'),s.concat(o.receiverLevel+""),s.concat(" == null ? ___r"),s.concat(o.receiverLevel+""),s.concat(" : ___r"),s.concat(o.receiverLevel+""),s.concat(".isa.objj_msgSend0(___r"),s.concat(o.receiverLevel+""),s.concat(', "init"))')),o.maxReceiverLevel>=o.receiverLevel||(o.maxReceiverLevel=o.receiverLevel)),i){for(let n=0;n<i;n++){const i=e.elements[n];n&&s.concat(", "),r(i,t,"Expression")}s.concat("], "+i+"))")}o.receiverLevel--},DictionaryLiteral:function(e,t,r){const n=t.compiler,s=n.jsBuffer,i=e.keys.length,o=t.getVarScope();if(o.receiverLevel||(o.receiverLevel=0),i){n.options.inlineMsgSendFunctions?(s.concat("(___r",e),s.concat(++o.receiverLevel+""),s.concat(' = (CPDictionary.isa.method_msgSend["alloc"] || _objj_forward)(CPDictionary, "alloc"), ___r'),s.concat(o.receiverLevel+""),s.concat(" == null ? ___r"),s.concat(o.receiverLevel+""),s.concat(" : (___r"),s.concat(o.receiverLevel+""),s.concat('.isa.method_msgSend["initWithObjects:forKeys:"] || _objj_forward)(___r'),s.concat(o.receiverLevel+""),s.concat(', "initWithObjects:forKeys:", [')):(s.concat("(___r",e),s.concat(++o.receiverLevel+""),s.concat(' = CPDictionary.isa.objj_msgSend0(CPDictionary, "alloc"), ___r'),s.concat(o.receiverLevel+""),s.concat(" == null ? ___r"),s.concat(o.receiverLevel+""),s.concat(" : ___r"),s.concat(o.receiverLevel+""),s.concat(".isa.objj_msgSend2(___r"),s.concat(o.receiverLevel+""),s.concat(', "initWithObjects:forKeys:", [')),o.maxReceiverLevel>=o.receiverLevel||(o.maxReceiverLevel=o.receiverLevel);for(let n=0;n<i;n++){const i=e.values[n];n&&s.concat(", "),r(i,t,"Expression")}s.concat("], [");for(let n=0;n<i;n++){const i=e.keys[n];n&&s.concat(", "),r(i,t,"Expression")}s.concat("]))")}else n.options.inlineMsgSendFunctions?(s.concat("(___r",e),s.concat(++o.receiverLevel+""),s.concat(' = (CPDictionary.isa.method_msgSend["alloc"] || _objj_forward)(CPDictionary, "alloc"), ___r'),s.concat(o.receiverLevel+""),s.concat(" == null ? ___r"),s.concat(o.receiverLevel+""),s.concat(" : (___r"),s.concat(o.receiverLevel+""),s.concat('.isa.method_msgSend["init"] || _objj_forward)(___r'),s.concat(o.receiverLevel+""),s.concat(', "init"))')):(s.concat("(___r"),s.concat(++o.receiverLevel+""),s.concat(' = CPDictionary.isa.objj_msgSend0(CPDictionary, "alloc"), ___r'),s.concat(o.receiverLevel+""),s.concat(" == null ? ___r"),s.concat(o.receiverLevel+""),s.concat(" : ___r"),s.concat(o.receiverLevel+""),s.concat(".isa.objj_msgSend0(___r"),s.concat(o.receiverLevel+""),s.concat(', "init"))')),o.maxReceiverLevel>=o.receiverLevel||(o.maxReceiverLevel=o.receiverLevel);o.receiverLevel--},ImportStatement:function(e,t,r){const n=t.compiler.jsBuffer,s=e.localfilepath;n.concat('objj_executeFile("',e),n.concat(e.filename.value),n.concat(s?'", YES);':'", NO);')},ClassDeclarationStatement:function(t,n,s){const i=n.compiler,o=i.jsBuffer,a=t.classname.name;let c=i.getClassDef(a);const l=new g(n),p="InterfaceDeclarationStatement"===t.type,u=t.protocols,d=i.options;if(i.imBuffer=new v(i.createSourceMap,i.URL,d.sourceMap&&d.sourceMapIncludeSource?i.source:null),i.cmBuffer=new v(i.createSourceMap,i.URL),i.classBodyBuffer=new v(i.createSourceMap,i.URL),i.getTypeDef(a))throw i.error_message(a+" is already declared as a type",t.classname);if(t.superclassname){if(c&&c.ivars)throw i.error_message("Duplicate class "+a,t.classname);if(p&&c&&c.instanceMethods&&c.classMethods)throw i.error_message("Duplicate interface definition for class "+a,t.classname);const e=i.getClassDef(t.superclassname.name);if(!e){let e="Can't find superclass "+t.superclassname.name;const r=i.constructor.importStack;if(r)for(let t=i.constructor.importStack.length;--t>=0;)e+="\n"+Array(2*(r.length-t)+1).join(" ")+"Imported by: "+r[t];throw i.error_message(e,t.superclassname)}c=new L(!p,a,e,Object.create(null)),o.concat("\n{var the_class = objj_allocateClassPair("+t.superclassname.name+', "'+a+'"),\nmeta_class = the_class.isa;',t)}else if(t.categoryname){if(c=i.getClassDef(a),!c)throw i.error_message("Class "+a+" not found ",t.classname);o.concat('{\nvar the_class = objj_getClass("'+a+'")\n',t),o.concat('if(!the_class) throw new SyntaxError("*** Could not find definition for class \\"'+a+'\\"");\n'),o.concat("var meta_class = the_class.isa;")}else c=new L(!p,a,null,Object.create(null)),o.concat('{var the_class = objj_allocateClassPair(Nil, "'+a+'"),\nmeta_class = the_class.isa;',t);if(u)for(let e=0,t=u.length;e<t;e++)o.concat('\nvar aProtocol = objj_getProtocol("'+u[e].name+'");',u[e]),o.concat('\nif (!aProtocol) throw new SyntaxError("*** Could not find definition for protocol \\"'+u[e].name+'\\"");'),o.concat("\nclass_addProtocol(the_class, aProtocol);");l.classDef=c,i.currentSuperClass='objj_getClass("'+a+'").super_class',i.currentSuperMetaClass='objj_getMetaClass("'+a+'").super_class';let f=!0;const _=c.ivars,y=[];let S=!1;if(t.ivardeclarations)for(let e=0;e<t.ivardeclarations.length;++e){const r=t.ivardeclarations[e],n=r.ivartype?r.ivartype.name:null,s=!!r.ivartype&&r.ivartype.typeisclass,p=r.id,u=p.name,g={type:n,name:u},_=r.accessors,v=function(e,t){if(e.ivars[u])throw i.error_message("Instance variable '"+u+"' is already declared for class "+a+(e.name!==a?" in superclass "+e.name:""),r.id);e.superClass&&t(e.superClass,t)};v(c,v);if(!(!s||void 0!==global[n]||"undefined"!=typeof window&&void 0!==window[n]||i.getClassDef(n)||i.getTypeDef(n)||n===c.name)&&i.options.warnings.includes(h)&&i.addWarning(m("Unknown type '"+n+"' for ivar '"+u+"'",r.ivartype,i.source)),f?(f=!1,o.concat("class_addIvars(the_class, [")):o.concat(", "),d.includeIvarTypeSignatures?o.concat('new objj_ivar("'+u+'", "'+n+'")',t):o.concat('new objj_ivar("'+u+'")',t),r.outlet&&(g.outlet=!0),y.push(g),l.ivars||(l.ivars=Object.create(null)),l.ivars[u]={type:"ivar",name:u,node:p,ivar:g},_){const e=_.property&&_.property.name||u,t=_.getter&&_.getter.name||e;if(c.addInstanceMethod(new C(t,[n])),!_.readonly){let t=_.setter?_.setter.name:null;if(!t){const r="_"===e.charAt(0)?1:0;t=(r?"_":"")+"set"+e.substr(r,1).toUpperCase()+e.substring(r+1)+":"}c.addInstanceMethod(new C(t,["void",n]))}S=!0}}if(f||o.concat("]);"),!p&&S){const n=new v(!1);n.concat(i.source.substring(t.start,t.endOfIvars).replace(/<.*>/g,"")),n.concat("\n");for(let e=0;e<t.ivardeclarations.length;++e){const r=t.ivardeclarations[e],s=r.ivartype?r.ivartype.name:null,i=r.id.name,o=r.accessors;if(!o)continue;const a=o.property&&o.property.name||i,c="- ("+(s||"id")+")"+(o.getter&&o.getter.name||a)+"\n{\n return "+i+";\n}\n";if(n.concat(c),o.readonly)continue;let l=o.setter?o.setter.name:null;if(!l){const e="_"===a.charAt(0)?1:0;l=(e?"_":"")+"set"+a.substr(e,1).toUpperCase()+a.substring(e+1)+":"}let p="- (void)"+l+"("+(s||"id")+")newValue\n{\n ";o.copy?p+="if ("+i+" !== newValue)\n "+i+" = [newValue copy];\n}\n":p+=i+" = newValue;\n}\n",n.concat(p)}n.concat("\n@end");const s=n.toString().replace(/@accessors(\(.*\))?/g,""),o=b(d);o.sourceMapIncludeSource=!0;const c=i.url&&i.URL.substr(i.URL.lastIndexOf("/")+1),l=c&&c.lastIndexOf("."),p=c&&c.substr(0,-1===l?c.length:l),u=c&&c.substr(-1===l?c.length:l),h=t.categoryname&&t.categoryname.id,f=e.compileToIMBuffer(s,p+"_"+a+(h?"_"+h:"")+"_Accessors"+(u||""),o).toString();i.createSourceMap?i.imBuffer.concat(r.SourceNode.fromStringWithSourceMap(f.code,r.SourceMapConsumer(f.map.toString()))):i.imBuffer.concat(f)}for(let e=y.length,t=0;t<e;t++){const e=y[t];_[e.name]=e}i.classDefs[a]=c;const E=t.body,x=E.length;if(x>0)for(let e=0;e<x;++e){s(E[e],l,"Statement")}if(p||t.categoryname||o.concat("objj_registerClassPair(the_class);\n"),i.imBuffer.isEmpty()&&(o.concat("class_addMethods(the_class, ["),o.appendStringBuffer(i.imBuffer),o.concat("]);\n")),i.cmBuffer.isEmpty()&&(o.concat("class_addMethods(meta_class, ["),o.appendStringBuffer(i.cmBuffer),o.concat("]);\n")),o.concat("}\n"),i.jsBuffer=o,u){const e=[];for(let t=0,r=u.length;t<r;t++){const r=u[t],n=i.getProtocolDef(r.name);if(!n)throw i.error_message("Cannot find protocol declaration for '"+r.name+"'",r);e.push(n)}const r=c.listOfNotImplementedMethodsForProtocols(e);if(r&&r.length>0)for(let e=0,n=r.length;e<n;e++){const n=r[e],s=n.methodDef,o=n.protocolDef;i.addWarning(m("Method '"+s.name+"' in protocol '"+o.name+"' is not implemented",t.classname,i.source))}}},ProtocolDeclarationStatement:function(e,t,r){const n=t.compiler,s=n.jsBuffer,i=e.protocolname.name;let o=n.getProtocolDef(i);const a=e.protocols,c=new g(t),l=[];if(o)throw n.error_message("Duplicate protocol "+i,e.protocolname);if(n.imBuffer=new v(n.createSourceMap,n.URL),n.cmBuffer=new v(n.createSourceMap,n.URL),s.concat('{var the_protocol = objj_allocateProtocol("'+i+'");',e),a)for(let t=0,r=a.length;t<r;t++){const r=a[t],o=r.name,c=n.getProtocolDef(o);if(!c)throw n.error_message("Can't find protocol "+o,r);s.concat('\nvar aProtocol = objj_getProtocol("'+o+'");',e),s.concat('\nif (!aProtocol) throw new SyntaxError("*** Could not find definition for protocol \\"'+i+'\\"");',e),s.concat("\nprotocol_addProtocol(the_protocol, aProtocol);",e),l.push(c)}o=new x(i,l),n.protocolDefs[i]=o,c.protocolDef=o;const p=e.required;if(p){const e=p.length;if(e>0)for(let t=0;t<e;++t){r(p[t],c,"Statement")}}s.concat("\nobjj_registerProtocol(the_protocol);\n"),n.imBuffer.isEmpty()&&(s.concat("protocol_addMethodDescriptions(the_protocol, ["),s.appendStringBuffer(n.imBuffer),s.concat("], true, true);\n")),n.cmBuffer.isEmpty()&&(s.concat("protocol_addMethodDescriptions(the_protocol, ["),s.appendStringBuffer(n.cmBuffer),s.concat("], true, false);\n")),s.concat("}"),n.jsBuffer=s},IvarDeclaration:function(e,t,r){const n=t.compiler.jsBuffer;e.outlet&&n.concat("@outlet "),r(e.ivartype,t,"VariablePattern"),n.concat(" "),r(e.id,t,"VariablePattern"),e.accessors&&n.concat(" @accessors")},MethodDeclarationStatement:function(e,r,n){const s=r.compiler,i=s.jsBuffer,o=new y(r),a="-"===e.methodtype,c=e.selectors,l=e.arguments,p=e.returntype,u=[p?p.name:e.action?"void":"id"],h=p?p.protocols:null;let d=c[0].name;if(h)for(let e=0,t=h.length;e<t;e++){const t=h[e];s.getProtocolDef(t.name)||s.addWarning(m("Cannot find protocol declaration for '"+t.name+"'",t,s.source))}if(s.jsBuffer=a?s.imBuffer:s.cmBuffer,l.length>0)for(let e=0;e<l.length;e++){const t=l[e].type,r=t?t.name:"id",n=t?t.protocols:null;if(u.push(r),d+=0===e?":":(c[e]?c[e].name:"")+":",n)for(let e=0;e<n.length;e++){const t=n[e];s.getProtocolDef(t.name)||s.addWarning(m("Cannot find protocol declaration for '"+t.name+"'",t,s.source))}}if(s.jsBuffer.isEmpty()&&s.jsBuffer.concat(", "),s.jsBuffer.concat('new objj_method(sel_getUid("',e),s.jsBuffer.concat(d),s.jsBuffer.concat('"), '),e.body){if(e.async&&s.jsBuffer.concat("async "),s.jsBuffer.concat("function"),s.options.includeMethodFunctionNames&&s.jsBuffer.concat(" $"+r.currentClassName()+"__"+d.replace(/:/g,"_")),s.jsBuffer.concat("(self, _cmd"),o.methodType=e.methodtype,o.vars.self={type:"method base",scope:o},o.vars._cmd={type:"method base",scope:o},l)for(let e=0;e<l.length;e++){const t=l[e],r=t.identifier.name;s.jsBuffer.concat(", "),s.jsBuffer.concat(r,t.identifier),o.vars[r]={type:"method argument",node:t}}s.jsBuffer.concat(")\n"),r.compiler.indentation+=r.compiler.indentStep,o.endOfScopeBody=!0,n(e.body,o,"Statement"),o.variablesNotReadWarnings(),r.compiler.indentation=r.compiler.indentation.substring(r.compiler.indentationSize),s.jsBuffer.concat("\n")}else s.jsBuffer.concat("Nil\n");s.options.includeMethodArgumentTypeSignatures&&s.jsBuffer.concat(","+JSON.stringify(u)),s.jsBuffer.concat(")"),s.jsBuffer=i;let f,g=r.classDef;if(g?f=a?g.getInstanceMethod(d):g.getClassMethod(d):g=r.protocolDef,!g)throw new Error("InternalError: MethodDeclaration without ClassDeclaration or ProtocolDeclaration at line: "+t.getLineInfo(s.source,e.start).line);if(!f){const e=g.protocols;if(e)for(let t=0;t<e.length;t++){const r=e[t];if(f=a?r.getInstanceMethod(d):r.getClassMethod(d),f)break}}if(f){const t=f.types;if(t){const r=t.length;if(r>0){const n=t[0];n===u[0]||"id"===n&&p&&p.typeisclass||s.addWarning(m("Conflicting return type in implementation of '"+d+"': '"+n+"' vs '"+u[0]+"'",p||e.action||c[0],s.source));for(let e=1;e<r;e++){const r=t[e];r===u[e]||"id"===r&&l[e-1].type.typeisclass||s.addWarning(m("Conflicting parameter types in implementation of '"+d+"': '"+r+"' vs '"+u[e]+"'",l[e-1].type||l[e-1].identifier,s.source))}}}}const _=new C(d,u);a?g.addInstanceMethod(_):g.addClassMethod(_)},MessageSendExpression:function(e,t,r){const n=t.compiler,s=n.options.inlineMsgSendFunctions,i=n.jsBuffer,o=e.object,a=e.selectors,c=e.arguments,l=c.length,p=a[0];let u=p?p.name:"";const h=e.parameters,d=n.options,f=t.getVarScope();for(let e=0;e<l;e++){if(0!==e){const t=a[e];t&&(u+=t.name)}u+=":"}let m,g,_,y,S;if(s||(m=l,h&&(m+=h.length)),e.superObject)s?(i.concat("(",e),i.concat("+"===t.currentMethodType()?n.currentSuperMetaClass:n.currentSuperClass),i.concat('.method_dtable["',e),i.concat(u),i.concat('"] || _objj_forward)(self',e)):(i.concat("objj_msgSendSuper",e),m<4&&i.concat(""+m),i.concat("({ receiver:self, super_class:"+("+"===t.currentMethodType()?n.currentSuperMetaClass:n.currentSuperClass)+" }",e));else{if(g="Identifier"===o.type&&!("-"===t.currentMethodType()&&n.getIvarForClass(o.name,t)&&!t.getLvar(o.name,!0)),g){const a=o.name;y=t.getLvar(a),_="self"===a?!y||!y.scope||y.scope.assignmentToSelf:!!y||!n.getClassDef(a),_&&(i.concat("(",e),r(o,t,"Expression"),i.concat(" == null ? ",e),r(o,t,"Expression"),i.concat(" : ",e)),s&&i.concat("(",e),r(o,t,"Expression")}else _=!0,f.receiverLevel||(f.receiverLevel=0),i.concat("((___r"+ ++f.receiverLevel,e),i.concat(" = ",e),r(o,t,"Expression"),i.concat(")",e),i.concat(", ___r"+f.receiverLevel,e),i.concat(" == null ? ",e),i.concat("___r"+f.receiverLevel,e),i.concat(" : ",e),s&&i.concat("(",e),i.concat("___r"+f.receiverLevel,e),f.maxReceiverLevel>=f.receiverLevel||(f.maxReceiverLevel=f.receiverLevel);s?(i.concat('.isa.method_msgSend["',e),i.concat(u,e),i.concat('"] || _objj_forward)',e)):i.concat(".isa.objj_msgSend",e)}if(!e.superObject&&(s||m<4&&i.concat(""+m,e),g?(i.concat("(",e),r(o,t,"Expression")):i.concat("(___r"+f.receiverLevel,e),d.sourceMap&&"Identifier"===o.type)){n.jsBuffer=new v,r(o,t,"Expression");S=n.jsBuffer.toString()+'.isa.method_dtable["'+u+'"]',n.jsBuffer=i}if(i.concat(", ",e),S){i.concat("(",e);for(let t=0;t<a.length;t++){const r=a[t];r&&(i.concat(S,r),i.concat(", ",e))}}if(i.concat('"',e),i.concat(u,e),i.concat(S?'")':'"',e),c)for(let n=0;n<c.length;n++){const s=c[n];i.concat(", ",e),r(s,t,"Expression")}if(h)for(let n=0;n<h.length;++n){const s=h[n];i.concat(", ",e),r(s,t,"Expression")}e.superObject||(_&&i.concat(")",e),g||f.receiverLevel--),i.concat(")",e)},SelectorLiteralExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat('sel_getUid("',e),n.concat(e.selector),n.concat('")')},ProtocolLiteralExpression:function(e,t,r){const n=t.compiler.jsBuffer;n.concat('objj_getProtocol("',e),r(e.id,t,"VariablePattern"),n.concat('")')},Reference:function(e,t,r){const n=t.compiler.jsBuffer;n.concat("function(__input) { if (arguments.length) return ",e),r(e.element,t,"Expression"),n.concat(" = __input; return "),r(e.element,t,"Expression"),n.concat("; }")},Dereference:function(e,t,r){const n=t.compiler.jsBuffer;F(t,e.expr),r(e.expr,t,"Expression"),n.concat("()")},ClassStatement:function(e,t,r){const n=t.compiler,s=e.id.name;if(n.getTypeDef(s))throw n.error_message(s+" is already declared as a type",e.id);n.getClassDef(s)||(n.classDefs[s]=new L(!1,s)),t.vars[e.id.name]={type:"class",node:e.id}},GlobalStatement:function(e,t,r){t.rootScope().vars[e.id.name]={type:"global",node:e.id}},PreprocessStatement:I,TypeDefStatement:function(e,t,r){const n=t.compiler,s=n.jsBuffer,i=e.typedefname.name;let o=n.getTypeDef(i);const a=new g(t);if(o)throw n.error_message("Duplicate type definition "+i,e.typedefname);if(n.getClassDef(i))throw n.error_message(i+" is already declared as class",e.typedefname);s.concat('{var the_typedef = objj_allocateTypeDef("'+i+'");',e),o=new E(i),n.typeDefs[i]=o,a.typeDef=o,s.concat("\nobjj_registerTypeDef(the_typedef);\n"),s.concat("}")}});class U{constructor(e,t,r){this.source=e,this.URL=t&&t.toString(),r=b(r),this.options=r,this.pass=r.pass,this.classDefs=r.classDefs,this.protocolDefs=r.protocolDefs,this.typeDefs=r.typeDefs,this.generate=r.generate,this.createSourceMap=r.sourceMap,this.formatDescription=r.formatDescription,this.includeComments=r.includeComments,this.transformNamedFunctionDeclarationToAssignment=r.transformNamedFunctionDeclarationToAssignment,this.jsBuffer=new v(this.createSourceMap,t,r.sourceMap&&r.sourceMapIncludeSource?this.source:null),this.imBuffer=null,this.cmBuffer=null,this.dependencies=[],this.warningsAndErrors=[],this.lastPos=0,this.indentType=" ",this.indentationSpaces=4,this.indentationSize=this.indentationSpaces*this.indentType.length,this.indentStep=Array(this.indentationSpaces+1).join(this.indentType),this.indentation="";let n=r.acornOptions;n?(this.URL&&(n.sourceFile=this.URL.substr(this.URL.lastIndexOf("/")+1)),r.sourceMap&&!n.locations&&(n.locations=!0)):(n=r.acornOptions=this.URL&&{sourceFile:this.URL.substr(this.URL.lastIndexOf("/")+1)},r.sourceMap&&(n.locations=!0)),r.macros&&(n.macros?n.macros.concat(r.macros):n.macros=r.macros);try{this.tokens=i.parse(e,r.acornOptions),this.compile(this.tokens,new g(null,{compiler:this}),2===this.pass?D:A)}catch(t){const{lineStart:r,lineEnd:n}=f(this.source,t.pos);return t.messageForLine=e.substring(r,n),void this.addWarning(t)}this.setCompiledCode(this.jsBuffer)}setCompiledCode(e){if(this.createSourceMap){const t=e.toString();this.compiledCode=t.code,this.sourceMap=t.map}else this.compiledCode=e.toString()}compilePass2(){const t=this.options;e.currentCompileFile=this.URL,this.pass=t.pass=2,this.jsBuffer=new v(this.createSourceMap,this.URL,t.sourceMap&&t.sourceMapIncludeSource?this.source:null),this.createSourceMap&&this.jsBuffer.concat("\n\n"),this.warningsAndErrors=[];try{this.compile(this.tokens,new g(null,{compiler:this}),D)}catch(e){return this.addWarning(e),null}return this.setCompiledCode(this.jsBuffer),this.compiledCode}addWarning(e){null==e.path&&(e.path=this.URL),this.warningsAndErrors.push(e)}getIvarForClass(e,t){const r=t.getIvarForCurrentClass(e);if(r)return r;let n=this.getClassDef(t.currentClassName());for(;n;){const t=n.ivars;if(t){const r=t[e];if(r)return r}n=n.superClass}}getClassDef(e){if(!e)return null;let t=this.classDefs[e];if(t)return t;if("function"==typeof objj_getClass){const r=objj_getClass(e);if(r){const n=class_copyIvarList(r),s=n.length,i=Object.create(null),o=class_copyProtocolList(r),a=o.length,c=Object.create(null),l=U.methodDefsFromMethodList(class_copyMethodList(r)),p=U.methodDefsFromMethodList(class_copyMethodList(r.isa)),u=class_getSuperclass(r);for(let e=0;e<s;e++){const t=n[e];i[t.name]={type:t.type,name:t.name}}for(let e=0;e<a;e++){const t=o[e],r=protocol_getName(t),n=this.getProtocolDef(r);c[r]=n}return t=new L(!0,e,u?this.getClassDef(u.name):null,i,l,p,c),this.classDefs[e]=t,t}}return null}getProtocolDef(e){if(!e)return null;let t=this.protocolDefs[e];if(t)return t;if("function"==typeof objj_getProtocol){const r=objj_getProtocol(e);if(r){const n=protocol_getName(r),s=protocol_copyMethodDescriptionList(r,!0,!0),i=U.methodDefsFromMethodList(s),o=protocol_copyMethodDescriptionList(r,!0,!1),a=U.methodDefsFromMethodList(o),c=r.protocols,l=[];if(c)for(let e=0,t=c.length;e<t;e++)l.push(this.getProtocolDef(c[e].name));return t=new x(n,l,i,a),this.protocolDefs[e]=t,t}}return null}getTypeDef(e){if(!e)return null;let t=this.typeDefs[e];if(t)return t;if("function"==typeof objj_getTypeDef){const r=objj_getTypeDef(e);if(r){const e=typeDef_getName(r);return t=new E(e),this.typeDefs[e]=t,t}}return null}executable(){return this._executable||(this._executable=new Executable(this.jsBuffer?this.jsBuffer.toString():null,this.dependencies,this.URL,null,this)),this._executable}IMBuffer(){return this.imBuffer}code(){return this.compiledCode}ast(){return JSON.stringify(this.tokens,null,this.indentationSpaces)}map(){return JSON.stringify(this.sourceMap)}prettifyMessage(e){const t=e.messageForLine;let r="\n"+(t||"");return r.endsWith("\n")||(r+="\n"),t&&(r+=new Array((e.loc.column||0)+1).join(" "),r+=new Array(Math.min(1,t.length||1)+1).join("^")+"\n"),r+=(e.messageType||"ERROR")+" line "+(e.loc?.line||e.line)+" in "+this.URL+(e.loc?":"+e.loc.line:"")+": "+e.message,r}error_message(e,t){const r=i.getLineInfo(this.source,t.start),{lineStart:n,lineEnd:s}=f(this.source,t.start),o=new SyntaxError(e);return o.loc=r,o.path=this.URL,o.messageForNode=t,o.messageType="ERROR",o.messageForLine=this.source.substring(n,s),o}pushImport(e){U.importStack||(U.importStack=[]),U.importStack.push(e)}popImport(){U.importStack.pop()}compile(e,t,r){!function e(t,n,s){"function"!=typeof r[s||t.type]&&(console.log(t.type),console.log(s),console.log(Object.keys(r))),r[s||t.type](t,n,e)}(e,t)}compileWithFormat(e,t,r){let n,s;!function e(t,i,o){const a=i.compiler,c=a.includeComments,l=n===t;if(n=t,c&&!l&&t.commentsBefore&&t.commentsBefore!==s)for(let e=0;e<t.commentsBefore.length;e++)a.jsBuffer.concat(t.commentsBefore[e]);i.pushNode(t,o);const p=i.formatDescription();if(!l&&p&&p.before&&a.jsBuffer.concatFormat(p.before),r[o||t.type](t,i,e,p),!l&&p&&p.after&&a.jsBuffer.concatFormat(p.after),i.popNode(),c&&!l&&t.commentsAfter){for(let e=0;e<t.commentsAfter.length;e++)a.jsBuffer.concat(t.commentsAfter[e]);s=t.commentsAfter}else s=null}(e,t)}}U.methodDefsFromMethodList=function(e){const t=e.length,r=Object.create(null);for(let n=0;n<t;n++){const t=e[n],s=method_getName(t);r[s]=new C(s,t.types)}return r},e.compile=function(e,t,r){return new U(e,t,r)},e.compileFileDependencies=function(t,r,n){return e.currentCompileFile=r,(n||(n={})).pass=1,new U(t,r,n)},e.compileToExecutable=function(t,r,n){return e.currentCompileFile=r,new U(t,r,n).executable()},e.compileToIMBuffer=function(e,t,r){return new U(e,t,r).IMBuffer()},e.numberOfLinesAtTopOfFunction=function(){const e=new Function("x","return x;").toString(),t=e.indexOf("return x;"),r=(e.substring(0,t).match(/\n/g)||[]).length;return U.numberOfLinesAtTopOfFunction=function(){return r},r},e.parseGccCompilerFlags=function(e){const t=(e||"").split(" "),r=t.length,n={};for(let e=0;e<r;++e){const r=t[e];if(0===r.indexOf("-g"))n.includeMethodFunctionNames=!0;else if(0===r.indexOf("-O"))n.compress=!0,r.length>2&&(n.inlineMsgSendFunctions=!0);else if(0===r.indexOf("-T"))n.includeIvarTypeSignatures=!1,n.includeMethodArgumentTypeSignatures=!1;else if(0===r.indexOf("-S"))n.sourceMap=!0,n.sourceMapIncludeSource=!0;else if(0===r.indexOf("--include")){let r=t[++e];const s=r&&r.charCodeAt(0);34!==s&&39!==s||(r=r.substring(1,r.length-1)),(n.includeFiles||(n.includeFiles=[])).push(r)}else if(0===r.indexOf("--inline-msg-send"))n.inlineMsgSendFunctions=!0;else if(0===r.indexOf("-D")){const e=r.substring(2);(n.macros||(n.macros=[])).push(e)}else if(0===r.indexOf("-W")){const e=2===r.indexOf("no-",2),t=r.substring(e?5:2),s=(n.warnings||(n.warnings=S.warnings.slice())).findIndex(function(e){return e.name===t});if(e)-1!==s&&n.warnings.splice(s,1);else if(-1===s){const e=d.find(function(e){return e.name===t});e&&n.warnings.push(e)}}}return n},Object.defineProperty(e,"__esModule",{value:!0})}),exports.FileDependency=FileDependency,FileDependency.prototype.URL=function(){return this._URL},FileDependency.prototype.isLocal=function(){return this._isLocal},FileDependency.prototype.toMarkedString=function(){var e=this.URL().absoluteString();return(this.isLocal()?MARKER_IMPORT_LOCAL:MARKER_IMPORT_STD)+";"+e.length+";"+e},FileDependency.prototype.toString=function(){return(this.isLocal()?"LOCAL: ":"STD: ")+this.URL()};var ExecutableUnloadedFileDependencies=0,ExecutableLoadingFileDependencies=1,ExecutableLoadedFileDependencies=2,ExecutableCantStartLoadYetFileDependencies=3,AnonymousExecutableCount=0;function Executable(e,t,r,n,s,i,o){if(0===arguments.length)return this;this._code=e,this._function=n||null,this._URL=makeAbsoluteURL(r||new CFURL("(Anonymous"+AnonymousExecutableCount+++")")),this._compiler=s||null,this._fileDependencies=t,this._filenameTranslateDictionary=i,o&&(this._base64EncodedSourceMap=o),t?t.length?(this._fileDependencyStatus=ExecutableUnloadedFileDependencies,this._fileDependencyCallbacks=[]):this._fileDependencyStatus=ExecutableLoadedFileDependencies:(this._fileDependencyStatus=ExecutableCantStartLoadYetFileDependencies,this._fileDependencyCallbacks=[]),this._function||s||this.setCode(e)}exports.Executable=Executable,Executable.prototype.path=function(){return this.URL().path()},Executable.prototype.URL=function(){return this._URL},Executable.prototype.functionParameters=function(){return["global","objj_executeFile","objj_importFile"]},Executable.prototype.functionArguments=function(){return[global,this.fileExecuter(),this.fileImporter()]},Executable.prototype.execute=function(){if(this._compiler){var e=this.fileDependencies(),t=0,r=e.length;for(this._compiler.pushImport(this.URL().lastPathComponent());t<r;++t){var n=e[t],s=n.isLocal(),i=n.URL();this.fileExecuter()(i,s)}if(this._compiler.popImport(),this.setCode(this._compiler.compilePass2(),this._compiler.map()),FileExecutable.printWarningsAndErrors(this._compiler,exports.messageOutputFormatInXML))throw"Compilation error";this._compiler=null}var o=CONTEXT_BUNDLE;CONTEXT_BUNDLE=CFBundle.bundleContainingURL(this.URL());var a=this._function.apply(global,this.functionArguments());return CONTEXT_BUNDLE=o,a},Executable.prototype.code=function(){return this._code},Executable.prototype.setCode=function(e,t){this._code=e;var r,n=this.functionParameters().join(",");r=this._base64EncodedSourceMap;var s=this.URL().absoluteString();e+="/**/\n//# sourceURL="+s+"s",t&&("function"==typeof btoa?r=btoa(UTF16ToUTF8(t)):"function"==typeof Buffer&&(r=new Buffer(t).toString("base64"))),r&&(e=e.substring((exports.ObjJCompiler||ObjJCompiler).numberOfLinesAtTopOfFunction()),this._base64EncodedSourceMap=r,e+="\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,"+r),this._function=new Function(n,e),this._function.displayName=s},Executable.prototype.fileDependencies=function(){return this._fileDependencies},Executable.prototype.setFileDependencies=function(e){this._fileDependencies=e},Executable.prototype.hasLoadedFileDependencies=function(){return this._fileDependencyStatus===ExecutableLoadedFileDependencies};var fileDependencyLoadCount=0,fileDependencyExecutables=[],fileDependencyMarkers={};function loadFileDependenciesForExecutable(e){fileDependencyExecutables.push(e),e._fileDependencyStatus=ExecutableLoadingFileDependencies;var t=e.fileDependencies(),r=0,n=t.length,s=e.referenceURL().absoluteString(),i=e.fileExecutableSearcher();for(fileDependencyLoadCount+=n;r<n;++r){var o=t[r],a=o.isLocal(),c=o.URL(),l=(a&&s+" "||"")+c;fileDependencyMarkers[l]?0===--fileDependencyLoadCount&&fileExecutableDependencyLoadFinished():(fileDependencyMarkers[l]=YES,i(c,a,fileExecutableSearchFinished))}}function fileExecutableSearchFinished(e){--fileDependencyLoadCount,e._fileDependencyStatus===ExecutableUnloadedFileDependencies?loadFileDependenciesForExecutable(e):0===fileDependencyLoadCount&&fileExecutableDependencyLoadFinished()}function fileExecutableDependencyLoadFinished(){var e=fileDependencyExecutables,t=0,r=e.length;for(fileDependencyExecutables=[];t<r;++t)e[t]._fileDependencyStatus=ExecutableLoadedFileDependencies;for(t=0;t<r;++t){for(var n=e[t],s=n._fileDependencyCallbacks,i=0,o=s.length;i<o;++i)s[i]();n._fileDependencyCallbacks=[]}}Executable.prototype.loadFileDependencies=function(e){var t=this._fileDependencyStatus;if(e){if(t===ExecutableLoadedFileDependencies)return e();this._fileDependencyCallbacks.push(e)}if(t===ExecutableUnloadedFileDependencies){if(fileDependencyLoadCount)throw"Can't load";loadFileDependenciesForExecutable(this)}},Executable.prototype.setExecutableUnloadedFileDependencies=function(){this._fileDependencyStatus===ExecutableCantStartLoadYetFileDependencies&&(this._fileDependencyStatus=ExecutableUnloadedFileDependencies)},Executable.prototype.isExecutableCantStartLoadYetFileDependencies=function(){return this._fileDependencyStatus===ExecutableCantStartLoadYetFileDependencies},Executable.prototype.referenceURL=function(){return this._referenceURL===undefined&&(this._referenceURL=new CFURL(".",this.URL())),this._referenceURL},Executable.prototype.fileImporter=function(){return Executable.fileImporterForURL(this.referenceURL())},Executable.prototype.fileExecuter=function(){return Executable.fileExecuterForURL(this.referenceURL())},Executable.prototype.fileExecutableSearcher=function(){return Executable.fileExecutableSearcherForURL(this.referenceURL())};var cachedFileExecuters={};Executable.fileExecuterForURL=function(e){var t=makeAbsoluteURL(e),r=t.absoluteString(),n=cachedFileExecuters[r];return n||(n=function(e,r,n){Executable.fileExecutableSearcherForURL(t)(e,r,function(t){if(!t.hasLoadedFileDependencies())throw"No executable loaded for file at URL "+e;t.execute(n)})},cachedFileExecuters[r]=n),n};var cachedFileImporters={};Executable.fileImporterForURL=function(e){var t=makeAbsoluteURL(e),r=t.absoluteString(),n=cachedFileImporters[r];return n||(n=function(e,r,n){enableCFURLCaching(),Executable.fileExecutableSearcherForURL(t)(e,r,function(e){e.loadFileDependencies(function(){e.execute(),disableCFURLCaching(),n&&n()})})},cachedFileImporters[r]=n),n};var cachedFileExecutableSearchers={},cachedFileExecutableSearchResults={};function countProp(e){var t=0;for(var r in e)e.hasOwnProperty(r)&&++t;return t}Executable.resetCachedFileExecutableSearchers=function(){cachedFileExecutableSearchers={},cachedFileExecutableSearchResults={},cachedFileImporters={},cachedFileExecuters={},fileDependencyMarkers={}},Executable.fileExecutableSearcherForURL=function(e){var t=e.absoluteString(),r=cachedFileExecutableSearchers[t];if(!r){var n=Executable.filenameTranslateDictionary?Executable.filenameTranslateDictionary():null;r=function(t,r,s){var i=(r&&e||"")+t,o=cachedFileExecutableSearchResults[i];if(o)return c(o);var a=t instanceof CFURL&&t.scheme();function c(e){if(!e){var r=exports.ObjJCompiler||ObjJCompiler?(exports.ObjJCompiler||ObjJCompiler).currentCompileFile:null;throw new Error("Could not load file at "+t+(r?" when compiling "+r:"")+"\nwith includeURLs: "+StaticResource.includeURLs())}cachedFileExecutableSearchResults[i]=e,s(new FileExecutable(e.URL(),n))}r||a?(a||(t=new CFURL(t,e)),StaticResource.resolveResourceAtURL(t,NO,c,n)):StaticResource.resolveResourceAtURLSearchingIncludeURLs(t,c)},cachedFileExecutableSearchers[t]=r}return r};var SURROGATE_HIGH_START=55296,SURROGATE_HIGH_END=56319,SURROGATE_LOW_START=56320,SURROGATE_LOW_END=57343,REPLACEMENT_CHAR=65533,FIRSTBYTEMARK=[0,192,224,240,248,252];function UTF16ToUTF8(e){for(var t="",r=0,n=0;n<e.length;n++){var s=e.charCodeAt(n);if(!(s<128)){if(n>r&&(t+=e.substring(r,n)),s>=SURROGATE_HIGH_START&&s<=SURROGATE_HIGH_END){if(!(++n<e.length))return null;var i=e.charCodeAt(n);if(!(i>=SURROGATE_LOW_START&&i<=SURROGATE_LOW_END))return null;s=i-SURROGATE_LOW_START+(s-SURROGATE_HIGH_START<<10)+65536}else if(s>=SURROGATE_LOW_START&&s<=SURROGATE_LOW_END)return null;r=n+1,enc=[];var o=s;o>=1114112&&(o=2048,s=REPLACEMENT_CHAR),o>=65536&&(enc.unshift(String.fromCharCode(191&s|128)),s>>=6),o>=2048&&(enc.unshift(String.fromCharCode(191&s|128)),s>>=6),o>=128&&(enc.unshift(String.fromCharCode(191&s|128)),s>>=6),enc.unshift(String.fromCharCode(s|FIRSTBYTEMARK[enc.length])),t+=enc.join("")}}return 0===r?e:(n>r&&(t+=e.substring(r,n)),t)}var FileExecutablesForURLStrings={},currentCompilerFlags={},currentGccCompilerFlags="";function FileExecutable(e,t){var r=(e=makeAbsoluteURL(e)).absoluteString(),n=FileExecutablesForURLStrings[r];if(n)return n;FileExecutablesForURLStrings[r]=this;var s=StaticResource.resourceAtURL(e).contents(),i=NULL,o=e.pathExtension().toLowerCase();if(this._hasExecuted=NO,s.match(/^@STATIC;/))i=decompile(s,e);else{if(!("j"!==o&&o||s.match(/^{/))){var a=currentCompilerFlags||{};return this.cachedIncludeFileSearchResultsContent={},this.cachedIncludeFileSearchResultsURL={},void compile(this,s,e,a,t)}i=new Executable(s,[],e)}Executable.apply(this,[i.code(),i.fileDependencies(),e,i._function,i._compiler,t])}exports.FileExecutable=FileExecutable,FileExecutable.prototype=new Executable;var compile=function(e,t,r,n,s){var i=n.acornOptions||(n.acornOptions={ecmaVersion:2022});i.preprocessGetIncludeFile=function(i,o){var a=new CFURL(".",r),c=new CFURL(i),l=(o&&a||"")+c,p=e.cachedIncludeFileSearchResultsContent[l];if(!p){var u=c instanceof CFURL&&c.scheme(),h=NO;function d(i){var o=i&&i.contents(),a=o&&o.charCodeAt(o.length-1);if(null==o)throw new Error("Can't load file "+c);10!==a&&13!==a&&8232!==a&&8233!==a&&(o+="\n"),e.cachedIncludeFileSearchResultsContent[l]=o,e.cachedIncludeFileSearchResultsURL[l]=i.URL(),h&&compile(e,t,r,n,s)}o||u?(u||(c=new CFURL(c,new CFURL(s[r.lastPathComponent()]||".",a))),StaticResource.resolveResourceAtURL(c,NO,d)):StaticResource.resolveResourceAtURLSearchingIncludeURLs(c,d),p=e.cachedIncludeFileSearchResultsContent[l]}return p?{include:p,sourceFile:e.cachedIncludeFileSearchResultsURL[l]}:(h=YES,null)};var o=currentCompilerFlags&¤tCompilerFlags.includeFiles,a=!0;if(i.preIncludeFiles=[],o)for(var c=0,l=o.length;c<l;c++){var p=makeAbsoluteURL(o[c]);try{var u=StaticResource.resourceAtURL(makeAbsoluteURL(p))}catch(i){StaticResource.resolveResourcesAtURLs(o.map(function(e){return makeAbsoluteURL(e)}),function(){compile(e,t,r,n,s)}),a=!1;break}if(u){if(u.isNotFound())throw new Error("--include file not found "+includeUrl);var h=u.contents(),d=h.charCodeAt(h.length-1);10!==d&&13!==d&&8232!==d&&8233!==d&&(h+="\n"),i.preIncludeFiles.push({include:h,sourceFile:p.toString()})}}if(a){var f=(exports.ObjJCompiler||ObjJCompiler).compileFileDependencies(t,r,n),m=f.warningsAndErrors;if(m&&1===m.length&&m[0].message.indexOf("file not found")>-1)return;if(FileExecutable.printWarningsAndErrors(f,exports.messageOutputFormatInXML))throw"Compilation error";var g=f.dependencies.map(function(e){return new FileDependency(new CFURL(e.url),e.isLocal)})}e.isExecutableCantStartLoadYetFileDependencies()?(e.setFileDependencies(g),e.setExecutableUnloadedFileDependencies(),e.loadFileDependencies()):null==e._fileDependencyStatus&&(executable=new Executable(f&&f.jsBuffer?f.jsBuffer.toString():null,g,r,null,f),Executable.apply(e,[executable.code(),executable.fileDependencies(),r,executable._function,executable._compiler,s]))};function decompile(e,t){for(var r,n=new MarkedStream(e),s=NULL,i="",o=[];s=n.getMarker();){var a=n.getString();s===MARKER_TEXT?i+=a:s===MARKER_IMPORT_STD?o.push(new FileDependency(new CFURL(a),NO)):s===MARKER_IMPORT_LOCAL?o.push(new FileDependency(new CFURL(a),YES)):s===MARKER_SOURCE_MAP&&(r=a)}var c=FileExecutable._lookupCachedFunction(t);return new Executable(i,o,t,c||null,null,null,r)}FileExecutable.resetFileExecutables=function(){FileExecutablesForURLStrings={},FunctionCache={}},FileExecutable.prototype.execute=function(e){this._hasExecuted&&!e||(this._hasExecuted=YES,Executable.prototype.execute.call(this))},FileExecutable.prototype.hasExecuted=function(){return this._hasExecuted};var FunctionCache={};FileExecutable._cacheFunction=function(e,t){e="string"==typeof e?e:e.absoluteString(),FunctionCache[e]=t},FileExecutable._lookupCachedFunction=function(e){return e="string"==typeof e?e:e.absoluteString(),FunctionCache[e]},FileExecutable.setCurrentGccCompilerFlags=function(e){if(currentGccCompilerFlags!==e){currentGccCompilerFlags=e;var t=(exports.ObjJCompiler||ObjJCompiler).parseGccCompilerFlags(e);FileExecutable.setCurrentCompilerFlags(t)}},FileExecutable.currentGccCompilerFlags=function(e){return currentGccCompilerFlags},FileExecutable.setCurrentCompilerFlags=function(e){null==(currentCompilerFlags=e).transformNamedFunctionDeclarationToAssignment&&(currentCompilerFlags.transformNamedFunctionDeclarationToAssignment=!0),null==currentCompilerFlags.sourceMap&&(currentCompilerFlags.sourceMap=!1),null==currentCompilerFlags.inlineMsgSendFunctions&&(currentCompilerFlags.inlineMsgSendFunctions=!1)},FileExecutable.currentCompilerFlags=function(e){return currentCompilerFlags},FileExecutable.printWarningsAndErrors=function(e,t){for(var r=!1,n=0;n<e.warningsAndErrors.length;n++){var s=e.warningsAndErrors[n],i=e.prettifyMessage(s);r=r||"ERROR"===s.messageType,console.log(i)}return r},FileExecutable.setCurrentCompilerFlags({});var CLS_CLASS=1,CLS_META=2,CLS_INITIALIZED=4,CLS_INITIALIZING=8;objj_ivar=function(e,t){this.name=e,this.type=t},objj_method=function(e,t,r){var n=t||function(e,t){CPException.isa.objj_msgSend2(CPException,"raise:reason:",CPInternalInconsistencyException,e.isa.method_msgSend0(self,"className")+" does not have an implementation for selector '"+t+"'")};return n.method_name=e,n.method_imp=t,n.method_types=r,n},objj_class=function(e){this.isa=NULL,this.version=0,this.super_class=NULL,this.name=NULL,this.info=0,this.ivar_list=[],this.ivar_store=function(){},this.ivar_dtable=this.ivar_store.prototype,this.method_list=[],this.method_store=function(){},this.method_dtable=this.method_store.prototype,this.protocol_list=[],this.allocator=function(){},this._UID=-1},objj_protocol=function(e){this.name=e,this.instance_methods={},this.class_methods={}},objj_object=function(){this.isa=NULL,this._UID=-1},objj_typeDef=function(e){this.name=e},class_getName=function(e){return e==Nil?"":e.name},class_isMetaClass=function(e){return e?e.info&CLS_META:NO},class_getSuperclass=function(e){return e==Nil?Nil:e.super_class},class_setSuperclass=function(e,t){e.super_class=t,e.isa.super_class=t.isa},class_addIvar=function(e,t,r){var n=e.allocator.prototype;if(void 0!==n[t])return NO;var s=new objj_ivar(t,r);return e.ivar_list.push(s),e.ivar_dtable[t]=s,n[t]=NULL,YES},class_addIvars=function(e,t){for(var r=0,n=t.length,s=e.allocator.prototype;r<n;++r){var i=t[r],o=i.name;void 0===s[o]&&(e.ivar_list.push(i),e.ivar_dtable[o]=i,s[o]=NULL)}},class_copyIvarList=function(e){return e.ivar_list.slice(0)},class_addMethod=function(e,t,r,n){var s=new objj_method(t,r,n);return e.method_list.push(s),e.method_dtable[t]=s,e.info&CLS_META||(e.info&CLS_META?e:e.isa).isa!==(e.info&CLS_META?e:e.isa)||class_addMethod(e.info&CLS_META?e:e.isa,t,r,n),YES},class_addMethods=function(e,t){for(var r=0,n=t.length,s=e.method_list,i=e.method_dtable;r<n;++r){var o=t[r];s.push(o),i[o.method_name]=o}e.info&CLS_META||(e.info&CLS_META?e:e.isa).isa!==(e.info&CLS_META?e:e.isa)||class_addMethods(e.info&CLS_META?e:e.isa,t)},class_getInstanceMethod=function(e,t){if(!e||!t)return NULL;var r=e.method_dtable[t];return r||NULL},class_getInstanceVariable=function(e,t){return e&&t?e.ivar_dtable[t]:NULL},class_getClassMethod=function(e,t){if(!e||!t)return NULL;var r=(e.info&CLS_META?e:e.isa).method_dtable[t];return r||NULL},class_respondsToSelector=function(e,t){return class_getClassMethod(e,t)!=NULL},class_copyMethodList=function(e){return e.method_list.slice(0)},class_getVersion=function(e){return e.version},class_setVersion=function(e,t){e.version=parseInt(t,10)},class_replaceMethod=function(e,t,r){if(!e||!t)return NULL;var n=e.method_dtable[t],s=n.method_imp,i=new objj_method(n.method_name,r,n.method_types);i.displayName=n.displayName,e.method_dtable[t]=i;var o=e.method_list.indexOf(n);return-1!==o?e.method_list[o]=i:e.method_list.push(i),s},class_addProtocol=function(e,t){if(t&&!class_conformsToProtocol(e,t))return(e.protocol_list||(e.protocol_list=[])).push(t),!0},class_conformsToProtocol=function(e,t){if(!t)return!1;for(;e;){for(var r=e.protocol_list,n=r?r.length:0,s=0;s<n;s++){var i=r[s];if(i.name===t.name)return!0;if(protocol_conformsToProtocol(i,t))return!0}e=class_getSuperclass(e)}return!1},class_copyProtocolList=function(e){var t=e.protocol_list;return t?t.slice(0):[]},protocol_conformsToProtocol=function(e,t){if(!e||!t)return!1;if(e.name===t.name)return!0;for(var r=e.protocol_list,n=r?r.length:0,s=0;s<n;s++){var i=r[s];if(i.name===t.name)return!0;if(protocol_conformsToProtocol(i,t))return!0}return!1};var REGISTERED_PROTOCOLS=Object.create(null);objj_allocateProtocol=function(e){return new objj_protocol(e)},objj_registerProtocol=function(e){REGISTERED_PROTOCOLS[e.name]=e},protocol_getName=function(e){return e.name},protocol_addMethodDescription=function(e,t,r,n,s){e&&t&&n&&((s?e.instance_methods:e.class_methods)[t]=new objj_method(t,null,r))},protocol_addMethodDescriptions=function(e,t,r,n){if(r)for(var s=0,i=t.length,o=n?e.instance_methods:e.class_methods;s<i;++s){var a=t[s];o[a.method_name]=a}},protocol_copyMethodDescriptionList=function(e,t,r){if(!t)return[];var n=r?e.instance_methods:e.class_methods,s=[];for(var i in n)n.hasOwnProperty(i)&&s.push(n[i]);return s},protocol_addProtocol=function(e,t){e&&t&&(e.protocol_list||(e.protocol_list=[])).push(t)};var REGISTERED_TYPEDEFS=Object.create(null);objj_allocateTypeDef=function(e){return new objj_typeDef(e)},objj_registerTypeDef=function(e){REGISTERED_TYPEDEFS[e.name]=e},typeDef_getName=function(e){return e.name};var _class_initialize=function(e){var t=e.info&CLS_META?e:e.isa;if(e.info&CLS_META&&(e=objj_getClass(e.name)),!e.super_class||(e.super_class.info&CLS_META?e.super_class:e.super_class.isa).info&CLS_INITIALIZED||_class_initialize(e.super_class),!(t.info&CLS_INITIALIZED||t.info&CLS_INITIALIZING)){t.info=-1&(t.info|CLS_INITIALIZING),e.objj_msgSend=objj_msgSendFast,e.objj_msgSend0=objj_msgSendFast0,e.objj_msgSend1=objj_msgSendFast1,e.objj_msgSend2=objj_msgSendFast2,e.objj_msgSend3=objj_msgSendFast3,t.objj_msgSend=objj_msgSendFast,t.objj_msgSend0=objj_msgSendFast0,t.objj_msgSend1=objj_msgSendFast1,t.objj_msgSend2=objj_msgSendFast2,t.objj_msgSend3=objj_msgSendFast3,e.method_msgSend=e.method_dtable;var r=(t.method_msgSend=t.method_dtable).initialize;r&&r(e,"initialize"),t.info=(t.info|CLS_INITIALIZED)&~CLS_INITIALIZING}};_objj_forward=function(e,t){var r=e.isa,n=r.info&CLS_META?r:r.isa;n.info&CLS_INITIALIZED||n.info&CLS_INITIALIZING||_class_initialize(r);var s=r.method_msgSend[t];if(s)return s.apply(r,arguments);if(s=r.method_dtable[SEL_forwardingTargetForSelector_]){var i=s(e,SEL_forwardingTargetForSelector_,t);if(i&&i!==e)return arguments[0]=i,i.isa.objj_msgSend.apply(i.isa,arguments)}if(s=r.method_dtable[SEL_methodSignatureForSelector_]){var o=r.method_dtable[SEL_forwardInvocation_];if(o){var a=s(e,SEL_methodSignatureForSelector_,t);if(a){var c=objj_lookUpClass("CPInvocation");if(c){var l=c.isa.objj_msgSend1(c,SEL_invocationWithMethodSignature_,a),p=0,u=arguments.length;if(null!=l)for(var h=l.isa;p<u;++p)h.objj_msgSend2(l,SEL_setArgument_atIndex_,arguments[p],p);return o(e,SEL_forwardInvocation_,l),null==l?null:h.objj_msgSend0(l,SEL_returnValue)}}}}if(s=r.method_dtable[SEL_doesNotRecognizeSelector_])return s(e,SEL_doesNotRecognizeSelector_,t);throw class_getName(r)+" does not implement doesNotRecognizeSelector: when sending "+sel_getName(t)+". Did you forget a superclass for "+class_getName(r)+"?"},class_getMethodImplementation=function(e,t){return(e.info&CLS_META?e:e.isa).info&CLS_INITIALIZED||_class_initialize(e),e.method_dtable[t]||_objj_forward};var REGISTERED_CLASSES=Object.create(null);objj_enumerateClassesUsingBlock=function(e){for(var t in REGISTERED_CLASSES)e(REGISTERED_CLASSES[t])},objj_allocateClassPair=function(e,t){var r=new objj_class(t),n=new objj_class(t),s=r;if(e){for(s=e;s.superclass;)s=s.superclass;r.allocator.prototype=new e.allocator,r.ivar_dtable=r.ivar_store.prototype=new e.ivar_store,r.method_dtable=r.method_store.prototype=new e.method_store,n.method_dtable=n.method_store.prototype=new e.isa.method_store,r.super_class=e,n.super_class=e.isa}else r.allocator.prototype=new objj_object;return r.isa=n,r.name=t,r.info=CLS_CLASS,r._UID=objj_generateObjectUID(),r.init=!0,n.isa=s.isa,n.name=t,n.info=CLS_META,n._UID=objj_generateObjectUID(),n.init=!0,r};var CONTEXT_BUNDLE=nil;objj_registerClassPair=function(e){global[e.name]=e,REGISTERED_CLASSES[e.name]=e,addClassToBundle(e,CONTEXT_BUNDLE)},objj_resetRegisterClasses=function(){for(var e in REGISTERED_CLASSES)delete global[e];REGISTERED_CLASSES=Object.create(null),REGISTERED_PROTOCOLS=Object.create(null),REGISTERED_TYPEDEFS=Object.create(null),resetBundle()},class_createInstance=function(e){if(!e)throw new Error("*** Attempting to create object with Nil class.");var t=new e.allocator;return t.isa=e,t._UID=objj_generateObjectUID(),t};var prototype_bug=function(){};with(prototype_bug.prototype.member=!1,new prototype_bug)member=!0;if((new prototype_bug).member){var fast_class_createInstance=class_createInstance;class_createInstance=function(e){var t=fast_class_createInstance(e);if(t){for(var r=t.isa,n=r;r;){for(var s=r.ivar_list,i=s.length;i--;)t[s[i].name]=NULL;r=r.super_class}t.isa=n}return t}}object_getClassName=function(e){if(!e)return"";var t=e.isa;return t?class_getName(t):""},objj_lookUpClass=function(e){var t=REGISTERED_CLASSES[e];return t||Nil},objj_getClass=function(e){var t=REGISTERED_CLASSES[e];return t||Nil},objj_getClassList=function(e,t){for(var r in REGISTERED_CLASSES)if(e.push(REGISTERED_CLASSES[r]),t&&0===--t)break;return e.length},objj_getMetaClass=function(e){var t=objj_getClass(e);return t.info&CLS_META?t:t.isa},objj_getProtocol=function(e){return REGISTERED_PROTOCOLS[e]},objj_getTypeDef=function(e){return REGISTERED_TYPEDEFS[e]},ivar_getName=function(e){return e.name},ivar_getTypeEncoding=function(e){return e.type},objj_msgSend=function(e,t){if(e==nil)return e;var r=e.isa;r.init&&_class_initialize(r);var n=r.method_dtable[t],s=n?n.method_imp:_objj_forward;switch(arguments.length){case 2:return s(e,t);case 3:return s(e,t,arguments[2]);case 4:return s(e,t,arguments[2],arguments[3]);case 5:return s(e,t,arguments[2],arguments[3],arguments[4]);case 6:return s(e,t,arguments[2],arguments[3],arguments[4],arguments[5]);case 7:return s(e,t,arguments[2],arguments[3],arguments[4],arguments[5],arguments[6])}return s.apply(e,arguments)},objj_msgSendSuper=function(e,t){var r=e.super_class;return arguments[0]=e.receiver,(r.info&CLS_META?r:r.isa).info&CLS_INITIALIZED||_class_initialize(r),(r.method_dtable[t]||_objj_forward).apply(e.receiver,arguments)},objj_msgSendSuper0=function(e,t){return(e.super_class.method_dtable[t]||_objj_forward)(e.receiver,t)},objj_msgSendSuper1=function(e,t,r){return(e.super_class.method_dtable[t]||_objj_forward)(e.receiver,t,r)},objj_msgSendSuper2=function(e,t,r,n){return(e.super_class.method_dtable[t]||_objj_forward)(e.receiver,t,r,n)},objj_msgSendSuper3=function(e,t,r,n,s){return(e.super_class.method_dtable[t]||_objj_forward)(e.receiver,t,r,n,s)},objj_msgSendFast=function(e,t){return(this.method_dtable[t]||_objj_forward).apply(e,arguments)};var objj_msgSendFastInitialize=function(e,t){return _class_initialize(this),this.objj_msgSend.apply(this,arguments)};objj_msgSendFast0=function(e,t){return(this.method_dtable[t]||_objj_forward)(e,t)};var objj_msgSendFast0Initialize=function(e,t){return _class_initialize(this),this.objj_msgSend0(e,t)};objj_msgSendFast1=function(e,t,r){return(this.method_dtable[t]||_objj_forward)(e,t,r)};var objj_msgSendFast1Initialize=function(e,t,r){return _class_initialize(this),this.objj_msgSend1(e,t,r)};objj_msgSendFast2=function(e,t,r,n){return(this.method_dtable[t]||_objj_forward)(e,t,r,n)};var objj_msgSendFast2Initialize=function(e,t,r,n){return _class_initialize(this),this.objj_msgSend2(e,t,r,n)};objj_msgSendFast3=function(e,t,r,n,s){return(this.method_dtable[t]||_objj_forward)(e,t,r,n,s)};var objj_msgSendFast3Initialize=function(e,t,r,n,s){return _class_initialize(this),this.objj_msgSend3(e,t,r,n,s)};method_getName=function(e){return e.method_name},method_copyReturnType=function(e){var t=e.method_types;if(t){var r=t[0];return r!=NULL?r:NULL}return NULL},method_copyArgumentType=function(e,t){switch(t){case 0:return"id";case 1:return"SEL";default:var r=e.method_types;if(r){var n=r[t-1];return n!=NULL?n:NULL}return NULL}},method_getNumberOfArguments=function(e){var t=e.method_types;return t?t.length+1:(e.method_name.match(/:/g)||[]).length+2},method_getImplementation=function(e){return e.method_imp},method_setImplementation=function(e,t){var r=e.method_imp;return e.method_imp=t,r},method_exchangeImplementations=function(e,t){var r=method_getImplementation(e),n=method_getImplementation(t);method_setImplementation(e,n),method_setImplementation(t,r)},sel_getName=function(e){return e||"<null selector>"},sel_getUid=function(e){return e},sel_isEqual=function(e,t){return e===t},sel_registerName=function(e){return e},objj_class.prototype.toString=objj_object.prototype.toString=function(){var e=this.isa;return class_getInstanceMethod(e,SEL_description)?e.objj_msgSend0(this,SEL_description):class_isMetaClass(e)?this.name:"["+e.name+" Object](-description not implemented)"},objj_class.prototype.objj_msgSend=objj_msgSendFastInitialize,objj_class.prototype.objj_msgSend0=objj_msgSendFast0Initialize,objj_class.prototype.objj_msgSend1=objj_msgSendFast1Initialize,objj_class.prototype.objj_msgSend2=objj_msgSendFast2Initialize,objj_class.prototype.objj_msgSend3=objj_msgSendFast3Initialize,objj_class.prototype.method_msgSend=Object.create(null);var SEL_description=sel_getUid("description"),SEL_forwardingTargetForSelector_=sel_getUid("forwardingTargetForSelector:"),SEL_methodSignatureForSelector_=sel_getUid("methodSignatureForSelector:"),SEL_forwardInvocation_=sel_getUid("forwardInvocation:"),SEL_doesNotRecognizeSelector_=sel_getUid("doesNotRecognizeSelector:"),SEL_invocationWithMethodSignature_=sel_getUid("invocationWithMethodSignature:"),SEL_setTarget_=sel_getUid("setTarget:"),SEL_setSelector_=sel_getUid("setSelector:"),SEL_setArgument_atIndex_=sel_getUid("setArgument:atIndex:"),SEL_returnValue=sel_getUid("returnValue");objj_eval=function(aString){var url=exports.pageURL,asyncLoaderSaved=exports.asyncLoader;exports.asyncLoader=NO;var executable=exports.preprocess(aString,url,0);executable.hasLoadedFileDependencies()||executable.loadFileDependencies(),global._objj_eval_scope={},global._objj_eval_scope.objj_executeFile=Executable.fileExecuterForURL(url),global._objj_eval_scope.objj_importFile=Executable.fileImporterForURL(url);var code="with(_objj_eval_scope){"+executable._code+"\n//*/\n}",result;return result=eval(code),exports.asyncLoader=asyncLoaderSaved,result},exports.objj_eval=objj_eval,enableCFURLCaching();var pageURL=new CFURL(window.location.href),DOMBaseElements=document.getElementsByTagName("base"),DOMBaseElementsCount=DOMBaseElements.length;if(DOMBaseElementsCount>0){var DOMBaseElement=DOMBaseElements[DOMBaseElementsCount-1],DOMBaseElementHref=DOMBaseElement&&DOMBaseElement.getAttribute("href");DOMBaseElementHref&&(pageURL=new CFURL(DOMBaseElementHref,pageURL))}if("undefined"!=typeof OBJJ_COMPILER_FLAGS){for(var flags={},i=0;i<OBJJ_COMPILER_FLAGS.length;i++)switch(OBJJ_COMPILER_FLAGS[i]){case"IncludeDebugSymbols":flags.includeMethodFunctionNames=!0;break;case"IncludeTypeSignatures":flags.includeIvarTypeSignatures=!0,flags.includeMethodArgumentTypeSignatures=!0;break;case"InlineMsgSend":flags.inlineMsgSendFunctions=!0;break;case"SourceMap":flags.sourceMap=!0}FileExecutable.setCurrentCompilerFlags(flags)}var mainFileURL=new CFURL(window.OBJJ_MAIN_FILE||"main.j"),mainBundleURL=new CFURL(".",new CFURL(mainFileURL,pageURL)).absoluteURL(),assumedResolvedURL=new CFURL("..",mainBundleURL).absoluteURL();function resolveMainBundleURL(){StaticResource.resolveResourceAtURL(mainBundleURL,YES,function(e){for(var t=StaticResource.includeURLs(),r=0,n=t.length;r<n;++r)e.resourceAtURL(t[r],YES);Executable.fileImporterForURL(mainBundleURL)(mainFileURL.lastPathComponent(),YES,function(){disableCFURLCaching(),afterDocumentLoad(function(){var e=window.location.hash.substring(1),t=[];if(e.length)for(var r=0,n=(t=e.split("/")).length;r<n;r++)t[r]=decodeURIComponent(t[r]);var s=window.location.search.substring(1).split("&"),i=new CFMutableDictionary;for(r=0,n=s.length;r<n;r++){var o=s[r].split("=");o[0]&&(null==o[1]&&(o[1]=!0),i.setValueForKey(decodeURIComponent(o[0]),decodeURIComponent(o[1])))}main(t,i)})})})}mainBundleURL===assumedResolvedURL&&(assumedResolvedURL=new CFURL(assumedResolvedURL.schemeAndAuthority())),StaticResource.resourceAtURL(assumedResolvedURL,YES),exports.pageURL=pageURL,exports.bootstrap=function(){resolveMainBundleURL()};var documentLoaded=NO;function afterDocumentLoad(e){if(documentLoaded||"complete"===document.readyState)return e();window.addEventListener?window.addEventListener("load",e,NO):window.attachEvent&&window.attachEvent("onload",e)}function makeAbsoluteURL(e){return e instanceof CFURL&&e.scheme()?e:new CFURL(e,mainBundleURL)}afterDocumentLoad(function(){documentLoaded=YES}),("undefined"==typeof OBJJ_AUTO_BOOTSTRAP||OBJJ_AUTO_BOOTSTRAP)&&exports.bootstrap(),objj_importFile=Executable.fileImporterForURL(mainBundleURL),objj_executeFile=Executable.fileExecuterForURL(mainBundleURL),objj_import=function(){CPLog.warn("objj_import is deprecated, use objj_importFile instead"),objj_importFile.apply(this,arguments)}})(window,ObjectiveJ); |