This repository has been archived by the owner on Oct 8, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
worker-php.js
1 lines (1 loc) · 66.2 KB
/
worker-php.js
1
!function(t){if(!(void 0!==t.window&&t.document||t.require&&t.define)){t.console||(t.console=function(){var t=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:t})},t.console.error=t.console.warn=t.console.log=t.console.trace=t.console),t.window=t,t.ace=t,t.onerror=function(t,e,n,s,r){postMessage({type:"error",data:{message:t,data:r.data,file:e,line:n,col:s,stack:r.stack}})},t.normalizeModule=function(e,n){if(-1!==n.indexOf("!")){var s=n.split("!");return t.normalizeModule(e,s[0])+"!"+t.normalizeModule(e,s[1])}if("."==n.charAt(0)){var r=e.split("/").slice(0,-1).join("/");for(n=(r?r+"/":"")+n;-1!==n.indexOf(".")&&o!=n;){var o=n;n=n.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return n},t.require=function(e,n){if(n||(n=e,e=null),!n.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");n=t.normalizeModule(e,n);var s=t.require.modules[n];if(s)return s.initialized||(s.initialized=!0,s.exports=s.factory().exports),s.exports;if(!t.require.tlns)return console.log("unable to load "+n);var r=function(t,e){var n=t,s="";for(;n;){var r=e[n];if("string"==typeof r)return r+s;if(r)return r.location.replace(/\/*$/,"/")+(s||r.main||r.name);if(!1===r)return"";var o=n.lastIndexOf("/");if(-1===o)break;s=n.substr(o)+s,n=n.slice(0,o)}return t}(n,t.require.tlns);return".js"!=r.slice(-3)&&(r+=".js"),t.require.id=n,t.require.modules[n]={},importScripts(r),t.require(e,n)},t.require.modules={},t.require.tlns={},t.define=function(e,n,s){if(2==arguments.length?(s=n,"string"!=typeof e&&(n=e,e=t.require.id)):1==arguments.length&&(s=e,n=[],e=t.require.id),"function"==typeof s){n.length||(n=["require","exports","module"]);var r=function(n){return t.require(e,n)};t.require.modules[e]={exports:{},factory:function(){var t=this,e=s.apply(this,n.slice(0,s.length).map((function(e){switch(e){case"require":return r;case"exports":return t.exports;case"module":return t;default:return r(e)}})));return e&&(t.exports=e),t}}}else t.require.modules[e]={exports:s,initialized:!0}},t.define.amd={},require.tlns={},t.initBaseUrls=function(t){for(var e in t)require.tlns[e]=t[e]},t.initSender=function(){var e=t.require("ace/lib/event_emitter").EventEmitter,n=t.require("ace/lib/oop"),s=function(){};return function(){n.implement(this,e),this.callback=function(t,e){postMessage({type:"call",id:e,data:t})},this.emit=function(t,e){postMessage({type:"event",name:t,data:e})}}.call(s.prototype),new s};var e=t.main=null,n=t.sender=null;t.onmessage=function(s){var r=s.data;if(r.event&&n)n._signal(r.event,r.data);else if(r.command)if(e[r.command])e[r.command].apply(e,r.args);else{if(!t[r.command])throw new Error("Unknown command:"+r.command);t[r.command].apply(t,r.args)}else if(r.init){t.initBaseUrls(r.tlns),n=t.sender=t.initSender();var o=require(r.module)[r.classname];e=t.main=new o(n)}}}}(this),ace.define("ace/lib/oop",[],(function(t,e,n){"use strict";e.inherits=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})},e.mixin=function(t,e){for(var n in e)t[n]=e[n];return t},e.implement=function(t,n){e.mixin(t,n)}})),ace.define("ace/range",[],(function(t,e,n){"use strict";var s=function(t,e,n,s){this.start={row:t,column:e},this.end={row:n,column:s}};(function(){this.isEqual=function(t){return this.start.row===t.start.row&&this.end.row===t.end.row&&this.start.column===t.start.column&&this.end.column===t.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(t,e){return 0==this.compare(t,e)},this.compareRange=function(t){var e,n=t.end,s=t.start;return 1==(e=this.compare(n.row,n.column))?1==(e=this.compare(s.row,s.column))?2:0==e?1:0:-1==e?-2:-1==(e=this.compare(s.row,s.column))?-1:1==e?42:0},this.comparePoint=function(t){return this.compare(t.row,t.column)},this.containsRange=function(t){return 0==this.comparePoint(t.start)&&0==this.comparePoint(t.end)},this.intersects=function(t){var e=this.compareRange(t);return-1==e||0==e||1==e},this.isEnd=function(t,e){return this.end.row==t&&this.end.column==e},this.isStart=function(t,e){return this.start.row==t&&this.start.column==e},this.setStart=function(t,e){"object"==typeof t?(this.start.column=t.column,this.start.row=t.row):(this.start.row=t,this.start.column=e)},this.setEnd=function(t,e){"object"==typeof t?(this.end.column=t.column,this.end.row=t.row):(this.end.row=t,this.end.column=e)},this.inside=function(t,e){return 0==this.compare(t,e)&&(!this.isEnd(t,e)&&!this.isStart(t,e))},this.insideStart=function(t,e){return 0==this.compare(t,e)&&!this.isEnd(t,e)},this.insideEnd=function(t,e){return 0==this.compare(t,e)&&!this.isStart(t,e)},this.compare=function(t,e){return this.isMultiLine()||t!==this.start.row?t<this.start.row?-1:t>this.end.row?1:this.start.row===t?e>=this.start.column?0:-1:this.end.row===t?e<=this.end.column?0:1:0:e<this.start.column?-1:e>this.end.column?1:0},this.compareStart=function(t,e){return this.start.row==t&&this.start.column==e?-1:this.compare(t,e)},this.compareEnd=function(t,e){return this.end.row==t&&this.end.column==e?1:this.compare(t,e)},this.compareInside=function(t,e){return this.end.row==t&&this.end.column==e?1:this.start.row==t&&this.start.column==e?-1:this.compare(t,e)},this.clipRows=function(t,e){if(this.end.row>e)var n={row:e+1,column:0};else if(this.end.row<t)n={row:t,column:0};if(this.start.row>e)var r={row:e+1,column:0};else if(this.start.row<t)r={row:t,column:0};return s.fromPoints(r||this.start,n||this.end)},this.extend=function(t,e){var n=this.compare(t,e);if(0==n)return this;if(-1==n)var r={row:t,column:e};else var o={row:t,column:e};return s.fromPoints(r||this.start,o||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return s.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new s(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new s(this.start.row,0,this.end.row,0)},this.toScreenRange=function(t){var e=t.documentToScreenPosition(this.start),n=t.documentToScreenPosition(this.end);return new s(e.row,e.column,n.row,n.column)},this.moveBy=function(t,e){this.start.row+=t,this.start.column+=e,this.end.row+=t,this.end.column+=e}}).call(s.prototype),s.fromPoints=function(t,e){return new s(t.row,t.column,e.row,e.column)},s.comparePoints=function(t,e){return t.row-e.row||t.column-e.column},s.comparePoints=function(t,e){return t.row-e.row||t.column-e.column},e.Range=s})),ace.define("ace/apply_delta",[],(function(t,e,n){"use strict";e.applyDelta=function(t,e,n){var s=e.start.row,r=e.start.column,o=t[s]||"";switch(e.action){case"insert":if(1===e.lines.length)t[s]=o.substring(0,r)+e.lines[0]+o.substring(r);else{var i=[s,1].concat(e.lines);t.splice.apply(t,i),t[s]=o.substring(0,r)+t[s],t[s+e.lines.length-1]+=o.substring(r)}break;case"remove":var a=e.end.column,_=e.end.row;s===_?t[s]=o.substring(0,r)+o.substring(a):t.splice(s,_-s+1,o.substring(0,r)+t[_].substring(a))}}})),ace.define("ace/lib/event_emitter",[],(function(t,e,n){"use strict";var s={},r=function(){this.propagationStopped=!0},o=function(){this.defaultPrevented=!0};s._emit=s._dispatchEvent=function(t,e){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[t]||[],s=this._defaultHandlers[t];if(n.length||s){"object"==typeof e&&e||(e={}),e.type||(e.type=t),e.stopPropagation||(e.stopPropagation=r),e.preventDefault||(e.preventDefault=o),n=n.slice();for(var i=0;i<n.length&&(n[i](e,this),!e.propagationStopped);i++);return s&&!e.defaultPrevented?s(e,this):void 0}},s._signal=function(t,e){var n=(this._eventRegistry||{})[t];if(n){n=n.slice();for(var s=0;s<n.length;s++)n[s](e,this)}},s.once=function(t,e){var n=this;if(this.on(t,(function s(){n.off(t,s),e.apply(null,arguments)})),!e)return new Promise((function(t){e=t}))},s.setDefaultHandler=function(t,e){var n=this._defaultHandlers;if(n||(n=this._defaultHandlers={_disabled_:{}}),n[t]){var s=n[t],r=n._disabled_[t];r||(n._disabled_[t]=r=[]),r.push(s);var o=r.indexOf(e);-1!=o&&r.splice(o,1)}n[t]=e},s.removeDefaultHandler=function(t,e){var n=this._defaultHandlers;if(n){var s=n._disabled_[t];if(n[t]==e)s&&this.setDefaultHandler(t,s.pop());else if(s){var r=s.indexOf(e);-1!=r&&s.splice(r,1)}}},s.on=s.addEventListener=function(t,e,n){this._eventRegistry=this._eventRegistry||{};var s=this._eventRegistry[t];return s||(s=this._eventRegistry[t]=[]),-1==s.indexOf(e)&&s[n?"unshift":"push"](e),e},s.off=s.removeListener=s.removeEventListener=function(t,e){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[t];if(n){var s=n.indexOf(e);-1!==s&&n.splice(s,1)}},s.removeAllListeners=function(t){t||(this._eventRegistry=this._defaultHandlers=void 0),this._eventRegistry&&(this._eventRegistry[t]=void 0),this._defaultHandlers&&(this._defaultHandlers[t]=void 0)},e.EventEmitter=s})),ace.define("ace/anchor",[],(function(t,e,n){"use strict";var s=t("./lib/oop"),r=t("./lib/event_emitter").EventEmitter,o=e.Anchor=function(t,e,n){this.$onChange=this.onChange.bind(this),this.attach(t),void 0===n?this.setPosition(e.row,e.column):this.setPosition(e,n)};(function(){function t(t,e,n){var s=n?t.column<=e.column:t.column<e.column;return t.row<e.row||t.row==e.row&&s}s.implement(this,r),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){if(!(e.start.row==e.end.row&&e.start.row!=this.row||e.start.row>this.row)){var n=function(e,n,s){var r="insert"==e.action,o=(r?1:-1)*(e.end.row-e.start.row),i=(r?1:-1)*(e.end.column-e.start.column),a=e.start,_=r?a:e.end;if(t(n,a,s))return{row:n.row,column:n.column};if(t(_,n,!s))return{row:n.row+o,column:n.column+(n.row==_.row?i:0)};return{row:a.row,column:a.column}}(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(n.row,n.column,!0)}},this.setPosition=function(t,e,n){var s;if(s=n?{row:t,column:e}:this.$clipPositionToDocument(t,e),this.row!=s.row||this.column!=s.column){var r={row:this.row,column:this.column};this.row=s.row,this.column=s.column,this._signal("change",{old:r,value:s})}},this.detach=function(){this.document.off("change",this.$onChange)},this.attach=function(t){this.document=t||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(t,e){var n={};return t>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):t<0?(n.row=0,n.column=0):(n.row=t,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,e))),e<0&&(n.column=0),n}}).call(o.prototype)})),ace.define("ace/document",[],(function(t,e,n){"use strict";var s=t("./lib/oop"),r=t("./apply_delta").applyDelta,o=t("./lib/event_emitter").EventEmitter,i=t("./range").Range,a=t("./anchor").Anchor,_=function(t){this.$lines=[""],0===t.length?this.$lines=[""]:Array.isArray(t)?this.insertMergedLines({row:0,column:0},t):this.insert({row:0,column:0},t)};(function(){s.implement(this,o),this.setValue=function(t){var e=this.getLength()-1;this.remove(new i(0,0,e,this.getLine(e).length)),this.insert({row:0,column:0},t)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(t,e){return new a(this,t,e)},0==="aaa".split(/a/).length?this.$split=function(t){return t.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(t){return t.split(/\r\n|\r|\n/)},this.$detectNewLine=function(t){var e=t.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=e?e[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(t){this.$newLineMode!==t&&(this.$newLineMode=t,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(t){return"\r\n"==t||"\r"==t||"\n"==t},this.getLine=function(t){return this.$lines[t]||""},this.getLines=function(t,e){return this.$lines.slice(t,e+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(t){return this.getLinesForRange(t).join(this.getNewLineCharacter())},this.getLinesForRange=function(t){var e;if(t.start.row===t.end.row)e=[this.getLine(t.start.row).substring(t.start.column,t.end.column)];else{(e=this.getLines(t.start.row,t.end.row))[0]=(e[0]||"").substring(t.start.column);var n=e.length-1;t.end.row-t.start.row==n&&(e[n]=e[n].substring(0,t.end.column))}return e},this.insertLines=function(t,e){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(t,e)},this.removeLines=function(t,e){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(t,e)},this.insertNewLine=function(t){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(t,["",""])},this.insert=function(t,e){return this.getLength()<=1&&this.$detectNewLine(e),this.insertMergedLines(t,this.$split(e))},this.insertInLine=function(t,e){var n=this.clippedPos(t.row,t.column),s=this.pos(t.row,t.column+e.length);return this.applyDelta({start:n,end:s,action:"insert",lines:[e]},!0),this.clonePos(s)},this.clippedPos=function(t,e){var n=this.getLength();void 0===t?t=n:t<0?t=0:t>=n&&(t=n-1,e=void 0);var s=this.getLine(t);return null==e&&(e=s.length),{row:t,column:e=Math.min(Math.max(e,0),s.length)}},this.clonePos=function(t){return{row:t.row,column:t.column}},this.pos=function(t,e){return{row:t,column:e}},this.$clipPosition=function(t){var e=this.getLength();return t.row>=e?(t.row=Math.max(0,e-1),t.column=this.getLine(e-1).length):(t.row=Math.max(0,t.row),t.column=Math.min(Math.max(t.column,0),this.getLine(t.row).length)),t},this.insertFullLines=function(t,e){var n=0;(t=Math.min(Math.max(t,0),this.getLength()))<this.getLength()?(e=e.concat([""]),n=0):(e=[""].concat(e),t--,n=this.$lines[t].length),this.insertMergedLines({row:t,column:n},e)},this.insertMergedLines=function(t,e){var n=this.clippedPos(t.row,t.column),s={row:n.row+e.length-1,column:(1==e.length?n.column:0)+e[e.length-1].length};return this.applyDelta({start:n,end:s,action:"insert",lines:e}),this.clonePos(s)},this.remove=function(t){var e=this.clippedPos(t.start.row,t.start.column),n=this.clippedPos(t.end.row,t.end.column);return this.applyDelta({start:e,end:n,action:"remove",lines:this.getLinesForRange({start:e,end:n})}),this.clonePos(e)},this.removeInLine=function(t,e,n){var s=this.clippedPos(t,e),r=this.clippedPos(t,n);return this.applyDelta({start:s,end:r,action:"remove",lines:this.getLinesForRange({start:s,end:r})},!0),this.clonePos(s)},this.removeFullLines=function(t,e){t=Math.min(Math.max(0,t),this.getLength()-1);var n=(e=Math.min(Math.max(0,e),this.getLength()-1))==this.getLength()-1&&t>0,s=e<this.getLength()-1,r=n?t-1:t,o=n?this.getLine(r).length:0,a=s?e+1:e,_=s?0:this.getLine(a).length,T=new i(r,o,a,_),u=this.$lines.slice(t,e+1);return this.applyDelta({start:T.start,end:T.end,action:"remove",lines:this.getLinesForRange(T)}),u},this.removeNewLine=function(t){t<this.getLength()-1&&t>=0&&this.applyDelta({start:this.pos(t,this.getLine(t).length),end:this.pos(t+1,0),action:"remove",lines:["",""]})},this.replace=function(t,e){return t instanceof i||(t=i.fromPoints(t.start,t.end)),0===e.length&&t.isEmpty()?t.start:e==this.getTextRange(t)?t.end:(this.remove(t),e?this.insert(t.start,e):t.start)},this.applyDeltas=function(t){for(var e=0;e<t.length;e++)this.applyDelta(t[e])},this.revertDeltas=function(t){for(var e=t.length-1;e>=0;e--)this.revertDelta(t[e])},this.applyDelta=function(t,e){var n="insert"==t.action;(n?t.lines.length<=1&&!t.lines[0]:!i.comparePoints(t.start,t.end))||(n&&t.lines.length>2e4?this.$splitAndapplyLargeDelta(t,2e4):(r(this.$lines,t,e),this._signal("change",t)))},this.$safeApplyDelta=function(t){var e=this.$lines.length;("remove"==t.action&&t.start.row<e&&t.end.row<e||"insert"==t.action&&t.start.row<=e)&&this.applyDelta(t)},this.$splitAndapplyLargeDelta=function(t,e){for(var n=t.lines,s=n.length-e+1,r=t.start.row,o=t.start.column,i=0,a=0;i<s;i=a){a+=e-1;var _=n.slice(i,a);_.push(""),this.applyDelta({start:this.pos(r+i,o),end:this.pos(r+a,o=0),action:t.action,lines:_},!0)}t.lines=n.slice(i),t.start.row=r+i,t.start.column=o,this.applyDelta(t,!0)},this.revertDelta=function(t){this.$safeApplyDelta({start:this.clonePos(t.start),end:this.clonePos(t.end),action:"insert"==t.action?"remove":"insert",lines:t.lines.slice()})},this.indexToPosition=function(t,e){for(var n=this.$lines||this.getAllLines(),s=this.getNewLineCharacter().length,r=e||0,o=n.length;r<o;r++)if((t-=n[r].length+s)<0)return{row:r,column:t+n[r].length+s};return{row:o-1,column:t+n[o-1].length+s}},this.positionToIndex=function(t,e){for(var n=this.$lines||this.getAllLines(),s=this.getNewLineCharacter().length,r=0,o=Math.min(t.row,n.length),i=e||0;i<o;++i)r+=n[i].length+s;return r+t.column}}).call(_.prototype),e.Document=_})),ace.define("ace/lib/lang",[],(function(t,e,n){"use strict";e.last=function(t){return t[t.length-1]},e.stringReverse=function(t){return t.split("").reverse().join("")},e.stringRepeat=function(t,e){for(var n="";e>0;)1&e&&(n+=t),(e>>=1)&&(t+=t);return n};var s=/^\s\s*/,r=/\s\s*$/;e.stringTrimLeft=function(t){return t.replace(s,"")},e.stringTrimRight=function(t){return t.replace(r,"")},e.copyObject=function(t){var e={};for(var n in t)e[n]=t[n];return e},e.copyArray=function(t){for(var e=[],n=0,s=t.length;n<s;n++)t[n]&&"object"==typeof t[n]?e[n]=this.copyObject(t[n]):e[n]=t[n];return e},e.deepCopy=function t(e){if("object"!=typeof e||!e)return e;var n;if(Array.isArray(e)){n=[];for(var s=0;s<e.length;s++)n[s]=t(e[s]);return n}if("[object Object]"!==Object.prototype.toString.call(e))return e;for(var s in n={},e)n[s]=t(e[s]);return n},e.arrayToMap=function(t){for(var e={},n=0;n<t.length;n++)e[t[n]]=1;return e},e.createMap=function(t){var e=Object.create(null);for(var n in t)e[n]=t[n];return e},e.arrayRemove=function(t,e){for(var n=0;n<=t.length;n++)e===t[n]&&t.splice(n,1)},e.escapeRegExp=function(t){return t.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},e.escapeHTML=function(t){return(""+t).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<")},e.getMatchOffsets=function(t,e){var n=[];return t.replace(e,(function(t){n.push({offset:arguments[arguments.length-2],length:t.length})})),n},e.deferredCall=function(t){var e=null,n=function(){e=null,t()},s=function(t){return s.cancel(),e=setTimeout(n,t||0),s};return s.schedule=s,s.call=function(){return this.cancel(),t(),s},s.cancel=function(){return clearTimeout(e),e=null,s},s.isPending=function(){return e},s},e.delayedCall=function(t,e){var n=null,s=function(){n=null,t()},r=function(t){null==n&&(n=setTimeout(s,t||e))};return r.delay=function(t){n&&clearTimeout(n),n=setTimeout(s,t||e)},r.schedule=r,r.call=function(){this.cancel(),t()},r.cancel=function(){n&&clearTimeout(n),n=null},r.isPending=function(){return n},r}})),ace.define("ace/worker/mirror",[],(function(t,e,n){"use strict";t("../range").Range;var s=t("../document").Document,r=t("../lib/lang"),o=e.Mirror=function(t){this.sender=t;var e=this.doc=new s(""),n=this.deferredUpdate=r.delayedCall(this.onUpdate.bind(this)),o=this;t.on("change",(function(t){var s=t.data;if(s[0].start)e.applyDeltas(s);else for(var r=0;r<s.length;r+=2){if(Array.isArray(s[r+1]))var i={action:"insert",start:s[r],lines:s[r+1]};else i={action:"remove",start:s[r],end:s[r+1]};e.applyDelta(i,!0)}if(o.$timeout)return n.schedule(o.$timeout);o.onUpdate()}))};(function(){this.$timeout=500,this.setTimeout=function(t){this.$timeout=t},this.setValue=function(t){this.doc.setValue(t),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(t){this.sender.callback(this.doc.getValue(),t)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(o.prototype)})),ace.define("ace/mode/php/php",[],(function(t,e,n){var s={Constants:{}};s.Constants.T_INCLUDE=257,s.Constants.T_INCLUDE_ONCE=258,s.Constants.T_EVAL=259,s.Constants.T_REQUIRE=260,s.Constants.T_REQUIRE_ONCE=261,s.Constants.T_LOGICAL_OR=262,s.Constants.T_LOGICAL_XOR=263,s.Constants.T_LOGICAL_AND=264,s.Constants.T_PRINT=265,s.Constants.T_YIELD=266,s.Constants.T_DOUBLE_ARROW=267,s.Constants.T_YIELD_FROM=268,s.Constants.T_PLUS_EQUAL=269,s.Constants.T_MINUS_EQUAL=270,s.Constants.T_MUL_EQUAL=271,s.Constants.T_DIV_EQUAL=272,s.Constants.T_CONCAT_EQUAL=273,s.Constants.T_MOD_EQUAL=274,s.Constants.T_AND_EQUAL=275,s.Constants.T_OR_EQUAL=276,s.Constants.T_XOR_EQUAL=277,s.Constants.T_SL_EQUAL=278,s.Constants.T_SR_EQUAL=279,s.Constants.T_POW_EQUAL=280,s.Constants.T_COALESCE=281,s.Constants.T_BOOLEAN_OR=282,s.Constants.T_BOOLEAN_AND=283,s.Constants.T_IS_EQUAL=284,s.Constants.T_IS_NOT_EQUAL=285,s.Constants.T_IS_IDENTICAL=286,s.Constants.T_IS_NOT_IDENTICAL=287,s.Constants.T_SPACESHIP=288,s.Constants.T_IS_SMALLER_OR_EQUAL=289,s.Constants.T_IS_GREATER_OR_EQUAL=290,s.Constants.T_SL=291,s.Constants.T_SR=292,s.Constants.T_INSTANCEOF=293,s.Constants.T_INC=294,s.Constants.T_DEC=295,s.Constants.T_INT_CAST=296,s.Constants.T_DOUBLE_CAST=297,s.Constants.T_STRING_CAST=298,s.Constants.T_ARRAY_CAST=299,s.Constants.T_OBJECT_CAST=300,s.Constants.T_BOOL_CAST=301,s.Constants.T_UNSET_CAST=302,s.Constants.T_POW=303,s.Constants.T_NEW=304,s.Constants.T_CLONE=305,s.Constants.T_EXIT=306,s.Constants.T_IF=307,s.Constants.T_ELSEIF=308,s.Constants.T_ELSE=309,s.Constants.T_ENDIF=310,s.Constants.T_LNUMBER=311,s.Constants.T_DNUMBER=312,s.Constants.T_STRING=313,s.Constants.T_STRING_VARNAME=314,s.Constants.T_VARIABLE=315,s.Constants.T_NUM_STRING=316,s.Constants.T_INLINE_HTML=317,s.Constants.T_CHARACTER=318,s.Constants.T_BAD_CHARACTER=319,s.Constants.T_ENCAPSED_AND_WHITESPACE=320,s.Constants.T_CONSTANT_ENCAPSED_STRING=321,s.Constants.T_ECHO=322,s.Constants.T_DO=323,s.Constants.T_WHILE=324,s.Constants.T_ENDWHILE=325,s.Constants.T_FOR=326,s.Constants.T_ENDFOR=327,s.Constants.T_FOREACH=328,s.Constants.T_ENDFOREACH=329,s.Constants.T_DECLARE=330,s.Constants.T_ENDDECLARE=331,s.Constants.T_AS=332,s.Constants.T_SWITCH=333,s.Constants.T_ENDSWITCH=334,s.Constants.T_CASE=335,s.Constants.T_DEFAULT=336,s.Constants.T_BREAK=337,s.Constants.T_CONTINUE=338,s.Constants.T_GOTO=339,s.Constants.T_FUNCTION=340,s.Constants.T_CONST=341,s.Constants.T_RETURN=342,s.Constants.T_TRY=343,s.Constants.T_CATCH=344,s.Constants.T_FINALLY=345,s.Constants.T_THROW=346,s.Constants.T_USE=347,s.Constants.T_INSTEADOF=348,s.Constants.T_GLOBAL=349,s.Constants.T_STATIC=350,s.Constants.T_ABSTRACT=351,s.Constants.T_FINAL=352,s.Constants.T_PRIVATE=353,s.Constants.T_PROTECTED=354,s.Constants.T_PUBLIC=355,s.Constants.T_VAR=356,s.Constants.T_UNSET=357,s.Constants.T_ISSET=358,s.Constants.T_EMPTY=359,s.Constants.T_HALT_COMPILER=360,s.Constants.T_CLASS=361,s.Constants.T_TRAIT=362,s.Constants.T_INTERFACE=363,s.Constants.T_EXTENDS=364,s.Constants.T_IMPLEMENTS=365,s.Constants.T_OBJECT_OPERATOR=366,s.Constants.T_LIST=367,s.Constants.T_ARRAY=368,s.Constants.T_CALLABLE=369,s.Constants.T_CLASS_C=370,s.Constants.T_TRAIT_C=371,s.Constants.T_METHOD_C=372,s.Constants.T_FUNC_C=373,s.Constants.T_LINE=374,s.Constants.T_FILE=375,s.Constants.T_COMMENT=376,s.Constants.T_DOC_COMMENT=377,s.Constants.T_OPEN_TAG=378,s.Constants.T_OPEN_TAG_WITH_ECHO=379,s.Constants.T_CLOSE_TAG=380,s.Constants.T_WHITESPACE=381,s.Constants.T_START_HEREDOC=382,s.Constants.T_END_HEREDOC=383,s.Constants.T_DOLLAR_OPEN_CURLY_BRACES=384,s.Constants.T_CURLY_OPEN=385,s.Constants.T_PAAMAYIM_NEKUDOTAYIM=386,s.Constants.T_NAMESPACE=387,s.Constants.T_NS_C=388,s.Constants.T_DIR=389,s.Constants.T_NS_SEPARATOR=390,s.Constants.T_ELLIPSIS=391,s.Lexer=function(t,e){var n,r,o=["INITIAL"],i=0,a=function(t){o[i]=t},_=function(t){o[++i]=t},T=function(){--i},u=void 0===e||/^(on|true|1)$/i.test(e.short_open_tag),l=u?/^(\<\?php(?:\r\n|[ \t\r\n])|<\?|\<script language\=('|")?php('|")?\>)/i:/^(\<\?php(?:\r\n|[ \t\r\n])|\<script language\=('|")?php('|")?\>)/i,E=u?/[^<]*(?:<(?!\?|script language\=('|")?php('|")?\>)[^<]*)*/i:/[^<]*(?:<(?!\?=|\?php[ \t\r\n]|script language\=('|")?php('|")?\>)[^<]*)*/i,c="[a-zA-Z_\\x7f-\\uffff][a-zA-Z0-9_\\x7f-\\uffff]*",C=function(t){return"[^"+t+"\\\\${]*(?:(?:\\\\[\\s\\S]|\\$(?!\\{|[a-zA-Z_\\x7f-\\uffff])|\\{(?!\\$))[^"+t+"\\\\${]*)*"},h=[{value:s.Constants.T_VARIABLE,re:new RegExp("^\\$"+c+"(?=\\[)"),func:function(){_("VAR_OFFSET")}},{value:s.Constants.T_VARIABLE,re:new RegExp("^\\$"+c+"(?=->"+c+")"),func:function(){_("LOOKING_FOR_PROPERTY")}},{value:s.Constants.T_DOLLAR_OPEN_CURLY_BRACES,re:new RegExp("^\\$\\{(?="+c+"[\\[}])"),func:function(){_("LOOKING_FOR_VARNAME")}},{value:s.Constants.T_VARIABLE,re:new RegExp("^\\$"+c)},{value:s.Constants.T_DOLLAR_OPEN_CURLY_BRACES,re:/^\$\{/,func:function(){_("IN_SCRIPTING")}},{value:s.Constants.T_CURLY_OPEN,re:/^\{(?=\$)/,func:function(){_("IN_SCRIPTING")}}],p={INITIAL:[{value:s.Constants.T_OPEN_TAG_WITH_ECHO,re:/^<\?=/i,func:function(){a("IN_SCRIPTING")}},{value:s.Constants.T_OPEN_TAG,re:l,func:function(){a("IN_SCRIPTING")}},{value:s.Constants.T_INLINE_HTML,re:E}],IN_SCRIPTING:[{value:s.Constants.T_WHITESPACE,re:/^[ \n\r\t]+/},{value:s.Constants.T_ABSTRACT,re:/^abstract\b/i},{value:s.Constants.T_LOGICAL_AND,re:/^and\b/i},{value:s.Constants.T_ARRAY,re:/^array\b/i},{value:s.Constants.T_AS,re:/^as\b/i},{value:s.Constants.T_BREAK,re:/^break\b/i},{value:s.Constants.T_CALLABLE,re:/^callable\b/i},{value:s.Constants.T_CASE,re:/^case\b/i},{value:s.Constants.T_CATCH,re:/^catch\b/i},{value:s.Constants.T_CLASS,re:/^class\b/i},{value:s.Constants.T_CLONE,re:/^clone\b/i},{value:s.Constants.T_CONST,re:/^const\b/i},{value:s.Constants.T_CONTINUE,re:/^continue\b/i},{value:s.Constants.T_DECLARE,re:/^declare\b/i},{value:s.Constants.T_DEFAULT,re:/^default\b/i},{value:s.Constants.T_DO,re:/^do\b/i},{value:s.Constants.T_ECHO,re:/^echo\b/i},{value:s.Constants.T_ELSE,re:/^else\b/i},{value:s.Constants.T_ELSEIF,re:/^elseif\b/i},{value:s.Constants.T_ENDDECLARE,re:/^enddeclare\b/i},{value:s.Constants.T_ENDFOR,re:/^endfor\b/i},{value:s.Constants.T_ENDFOREACH,re:/^endforeach\b/i},{value:s.Constants.T_ENDIF,re:/^endif\b/i},{value:s.Constants.T_ENDSWITCH,re:/^endswitch\b/i},{value:s.Constants.T_ENDWHILE,re:/^endwhile\b/i},{value:s.Constants.T_EMPTY,re:/^empty\b/i},{value:s.Constants.T_EVAL,re:/^eval\b/i},{value:s.Constants.T_EXIT,re:/^(?:exit|die)\b/i},{value:s.Constants.T_EXTENDS,re:/^extends\b/i},{value:s.Constants.T_FINAL,re:/^final\b/i},{value:s.Constants.T_FINALLY,re:/^finally\b/i},{value:s.Constants.T_FOR,re:/^for\b/i},{value:s.Constants.T_FOREACH,re:/^foreach\b/i},{value:s.Constants.T_FUNCTION,re:/^function\b/i},{value:s.Constants.T_GLOBAL,re:/^global\b/i},{value:s.Constants.T_GOTO,re:/^goto\b/i},{value:s.Constants.T_IF,re:/^if\b/i},{value:s.Constants.T_IMPLEMENTS,re:/^implements\b/i},{value:s.Constants.T_INCLUDE,re:/^include\b/i},{value:s.Constants.T_INCLUDE_ONCE,re:/^include_once\b/i},{value:s.Constants.T_INSTANCEOF,re:/^instanceof\b/i},{value:s.Constants.T_INSTEADOF,re:/^insteadof\b/i},{value:s.Constants.T_INTERFACE,re:/^interface\b/i},{value:s.Constants.T_ISSET,re:/^isset\b/i},{value:s.Constants.T_LIST,re:/^list\b/i},{value:s.Constants.T_NAMESPACE,re:/^namespace\b/i},{value:s.Constants.T_NEW,re:/^new\b/i},{value:s.Constants.T_LOGICAL_OR,re:/^or\b/i},{value:s.Constants.T_PRINT,re:/^print\b/i},{value:s.Constants.T_PRIVATE,re:/^private\b/i},{value:s.Constants.T_PROTECTED,re:/^protected\b/i},{value:s.Constants.T_PUBLIC,re:/^public\b/i},{value:s.Constants.T_REQUIRE,re:/^require\b/i},{value:s.Constants.T_REQUIRE_ONCE,re:/^require_once\b/i},{value:s.Constants.T_STATIC,re:/^static\b/i},{value:s.Constants.T_SWITCH,re:/^switch\b/i},{value:s.Constants.T_THROW,re:/^throw\b/i},{value:s.Constants.T_TRAIT,re:/^trait\b/i},{value:s.Constants.T_TRY,re:/^try\b/i},{value:s.Constants.T_UNSET,re:/^unset\b/i},{value:s.Constants.T_USE,re:/^use\b/i},{value:s.Constants.T_VAR,re:/^var\b/i},{value:s.Constants.T_WHILE,re:/^while\b/i},{value:s.Constants.T_LOGICAL_XOR,re:/^xor\b/i},{value:s.Constants.T_YIELD_FROM,re:/^yield\s+from\b/i},{value:s.Constants.T_YIELD,re:/^yield\b/i},{value:s.Constants.T_RETURN,re:/^return\b/i},{value:s.Constants.T_METHOD_C,re:/^__METHOD__\b/i},{value:s.Constants.T_LINE,re:/^__LINE__\b/i},{value:s.Constants.T_FILE,re:/^__FILE__\b/i},{value:s.Constants.T_FUNC_C,re:/^__FUNCTION__\b/i},{value:s.Constants.T_NS_C,re:/^__NAMESPACE__\b/i},{value:s.Constants.T_TRAIT_C,re:/^__TRAIT__\b/i},{value:s.Constants.T_DIR,re:/^__DIR__\b/i},{value:s.Constants.T_CLASS_C,re:/^__CLASS__\b/i},{value:s.Constants.T_AND_EQUAL,re:/^&=/},{value:s.Constants.T_ARRAY_CAST,re:/^\([ \t]*array[ \t]*\)/i},{value:s.Constants.T_BOOL_CAST,re:/^\([ \t]*(?:bool|boolean)[ \t]*\)/i},{value:s.Constants.T_DOUBLE_CAST,re:/^\([ \t]*(?:real|float|double)[ \t]*\)/i},{value:s.Constants.T_INT_CAST,re:/^\([ \t]*(?:int|integer)[ \t]*\)/i},{value:s.Constants.T_OBJECT_CAST,re:/^\([ \t]*object[ \t]*\)/i},{value:s.Constants.T_STRING_CAST,re:/^\([ \t]*(?:binary|string)[ \t]*\)/i},{value:s.Constants.T_UNSET_CAST,re:/^\([ \t]*unset[ \t]*\)/i},{value:s.Constants.T_BOOLEAN_AND,re:/^&&/},{value:s.Constants.T_BOOLEAN_OR,re:/^\|\|/},{value:s.Constants.T_CLOSE_TAG,re:/^(?:\?>|<\/script>)(\r\n|\r|\n)?/i,func:function(){a("INITIAL")}},{value:s.Constants.T_DOUBLE_ARROW,re:/^=>/},{value:s.Constants.T_PAAMAYIM_NEKUDOTAYIM,re:/^::/},{value:s.Constants.T_INC,re:/^\+\+/},{value:s.Constants.T_DEC,re:/^--/},{value:s.Constants.T_CONCAT_EQUAL,re:/^\.=/},{value:s.Constants.T_DIV_EQUAL,re:/^\/=/},{value:s.Constants.T_XOR_EQUAL,re:/^\^=/},{value:s.Constants.T_MUL_EQUAL,re:/^\*=/},{value:s.Constants.T_MOD_EQUAL,re:/^%=/},{value:s.Constants.T_SL_EQUAL,re:/^<<=/},{value:s.Constants.T_START_HEREDOC,re:new RegExp("^[bB]?<<<[ \\t]*'("+c+")'(?:\\r\\n|\\r|\\n)"),func:function(t){n=t[1],a("NOWDOC")}},{value:s.Constants.T_START_HEREDOC,re:new RegExp('^[bB]?<<<[ \\t]*("?)('+c+")\\1(?:\\r\\n|\\r|\\n)"),func:function(t){n=t[2],r=!0,a("HEREDOC")}},{value:s.Constants.T_SL,re:/^<</},{value:s.Constants.T_SPACESHIP,re:/^<=>/},{value:s.Constants.T_IS_SMALLER_OR_EQUAL,re:/^<=/},{value:s.Constants.T_SR_EQUAL,re:/^>>=/},{value:s.Constants.T_SR,re:/^>>/},{value:s.Constants.T_IS_GREATER_OR_EQUAL,re:/^>=/},{value:s.Constants.T_OR_EQUAL,re:/^\|=/},{value:s.Constants.T_PLUS_EQUAL,re:/^\+=/},{value:s.Constants.T_MINUS_EQUAL,re:/^-=/},{value:s.Constants.T_OBJECT_OPERATOR,re:new RegExp("^->(?=[ \n\r\t]*"+c+")"),func:function(){_("LOOKING_FOR_PROPERTY")}},{value:s.Constants.T_OBJECT_OPERATOR,re:/^->/i},{value:s.Constants.T_ELLIPSIS,re:/^\.\.\./},{value:s.Constants.T_POW_EQUAL,re:/^\*\*=/},{value:s.Constants.T_POW,re:/^\*\*/},{value:s.Constants.T_COALESCE,re:/^\?\?/},{value:s.Constants.T_COMMENT,re:/^\/\*([\S\s]*?)(?:\*\/|$)/},{value:s.Constants.T_COMMENT,re:/^(?:\/\/|#)[^\r\n?]*(?:\?(?!>)[^\r\n?]*)*(?:\r\n|\r|\n)?/},{value:s.Constants.T_IS_IDENTICAL,re:/^===/},{value:s.Constants.T_IS_EQUAL,re:/^==/},{value:s.Constants.T_IS_NOT_IDENTICAL,re:/^!==/},{value:s.Constants.T_IS_NOT_EQUAL,re:/^(!=|<>)/},{value:s.Constants.T_DNUMBER,re:/^(?:[0-9]+\.[0-9]*|\.[0-9]+)(?:[eE][+-]?[0-9]+)?/},{value:s.Constants.T_DNUMBER,re:/^[0-9]+[eE][+-]?[0-9]+/},{value:s.Constants.T_LNUMBER,re:/^(?:0x[0-9A-F]+|0b[01]+|[0-9]+)/i},{value:s.Constants.T_VARIABLE,re:new RegExp("^\\$"+c)},{value:s.Constants.T_CONSTANT_ENCAPSED_STRING,re:/^[bB]?'[^'\\]*(?:\\[\s\S][^'\\]*)*'/},{value:s.Constants.T_CONSTANT_ENCAPSED_STRING,re:new RegExp('^[bB]?"'+C('"')+'"')},{value:-1,re:/^[bB]?"/,func:function(){a("DOUBLE_QUOTES")}},{value:-1,re:/^`/,func:function(){a("BACKTICKS")}},{value:s.Constants.T_NS_SEPARATOR,re:/^\\/},{value:s.Constants.T_STRING,re:/^[a-zA-Z_\x7f-\uffff][a-zA-Z0-9_\x7f-\uffff]*/},{value:-1,re:/^\{/,func:function(){_("IN_SCRIPTING")}},{value:-1,re:/^\}/,func:function(){i>0&&T()}},{value:-1,re:/^[\[\];:?()!.,><=+-/*|&@^%"'$~]/}],DOUBLE_QUOTES:h.concat([{value:-1,re:/^"/,func:function(){a("IN_SCRIPTING")}},{value:s.Constants.T_ENCAPSED_AND_WHITESPACE,re:new RegExp("^"+C('"'))}]),BACKTICKS:h.concat([{value:-1,re:/^`/,func:function(){a("IN_SCRIPTING")}},{value:s.Constants.T_ENCAPSED_AND_WHITESPACE,re:new RegExp("^"+C("`"))}]),VAR_OFFSET:[{value:-1,re:/^\]/,func:function(){T()}},{value:s.Constants.T_NUM_STRING,re:/^(?:0x[0-9A-F]+|0b[01]+|[0-9]+)/i},{value:s.Constants.T_VARIABLE,re:new RegExp("^\\$"+c)},{value:s.Constants.T_STRING,re:new RegExp("^"+c)},{value:-1,re:/^[;:,.\[()|^&+-/*=%!~$<>?@{}"`]/}],LOOKING_FOR_PROPERTY:[{value:s.Constants.T_OBJECT_OPERATOR,re:/^->/},{value:s.Constants.T_STRING,re:new RegExp("^"+c),func:function(){T()}},{value:s.Constants.T_WHITESPACE,re:/^[ \n\r\t]+/}],LOOKING_FOR_VARNAME:[{value:s.Constants.T_STRING_VARNAME,re:new RegExp("^"+c+"(?=[\\[}])"),func:function(){a("IN_SCRIPTING")}}],NOWDOC:[{value:s.Constants.T_END_HEREDOC,matchFunc:function(t){var e=new RegExp("^"+n+"(?=;?[\\r\\n])");return t.match(e)?[t.substr(0,n.length)]:null},func:function(){a("IN_SCRIPTING")}},{value:s.Constants.T_ENCAPSED_AND_WHITESPACE,matchFunc:function(t){var e=new RegExp("[\\r\\n]"+n+"(?=;?[\\r\\n])").exec(t),s=e?e.index+1:t.length;return[t.substring(0,s)]}}],HEREDOC:h.concat([{value:s.Constants.T_END_HEREDOC,matchFunc:function(t){if(!r)return null;var e=new RegExp("^"+n+"(?=;?[\\r\\n])");return t.match(e)?[t.substr(0,n.length)]:null},func:function(){a("IN_SCRIPTING")}},{value:s.Constants.T_ENCAPSED_AND_WHITESPACE,matchFunc:function(t){var e=t.length,s=new RegExp("^"+C("")),o=s.exec(t);return o&&(e=o[0].length),(o=(s=new RegExp("([\\r\\n])"+n+"(?=;?[\\r\\n])")).exec(t.substring(0,e)))?(e=o.index+1,r=!0):r=!1,0==e?null:[t.substring(0,e)]}}])},A=[],L=1,N=!0;if(null===t)return A;for("string"!=typeof t&&(t=t.toString());t.length>0&&!0===N;){N=p[o[i]].some((function(e){var n=void 0!==e.matchFunc?e.matchFunc(t):t.match(e.re);if(null!==n){if(0==n[0].length)throw new Error("empty match");if(void 0!==e.func&&e.func(n),-1===e.value)A.push(n[0]);else{var s=n[0];A.push([parseInt(e.value,10),s,L]),L+=s.split("\n").length-1}return t=t.substring(n[0].length),!0}return!1}))}return A},s.Parser=function(t,e){var n=this.yybase,r=this.yydefault,o=this.yycheck,i=this.yyaction,a=this.yylen,_=this.yygbase,T=this.yygcheck,u=this.yyp,l=this.yygoto,E=this.yylhs,c=this.terminals,C=this.translate,h=this.yygdefault;this.pos=-1,this.line=1,this.tokenMap=this.createTokenMap(),this.dropTokens={},this.dropTokens[s.Constants.T_WHITESPACE]=1,this.dropTokens[s.Constants.T_OPEN_TAG]=1;var p=[];t.forEach((function(t,e){"object"==typeof t&&t[0]===s.Constants.T_OPEN_TAG_WITH_ECHO?(p.push([s.Constants.T_OPEN_TAG,t[1],t[2]]),p.push([s.Constants.T_ECHO,t[1],t[2]])):p.push(t)})),this.tokens=p;var A=this.TOKEN_NONE;this.startAttributes={startLine:1},this.endAttributes={};var L,N,f=[this.startAttributes],R=0,O=[R];for(this.yyastk=[],this.stackPos=0;;){if(0===n[R])L=r[R];else if(A===this.TOKEN_NONE&&(A=(N=this.getNextToken())>=0&&N<this.TOKEN_MAP_SIZE?C[N]:this.TOKEN_INVALID,f[this.stackPos]=this.startAttributes),((L=n[R]+A)>=0&&L<this.YYLAST&&o[L]===A||R<this.YY2TBLSTATE&&(L=n[R+this.YYNLSTATES]+A)>=0&&L<this.YYLAST&&o[L]===A)&&(L=i[L])!==this.YYDEFAULT)if(L>0){if(++this.stackPos,O[this.stackPos]=R=L,this.yyastk[this.stackPos]=this.tokenValue,f[this.stackPos]=this.startAttributes,A=this.TOKEN_NONE,L<this.YYNLSTATES)continue;L-=this.YYNLSTATES}else L=-L;else L=r[R];for(;;){if(0===L)return this.yyval;if(L===this.YYUNEXPECTED){if(!0!==e){for(var I=[],S=0;S<this.TOKEN_MAP_SIZE;++S)if(((L=n[R]+S)>=0&&L<this.YYLAST&&o[L]==S||R<this.YY2TBLSTATE&&(L=n[R+this.YYNLSTATES]+S)&&L<this.YYLAST&&o[L]==S)&&i[L]!=this.YYUNEXPECTED){if(4==I.length){I=[];break}I.push(this.terminals[S])}var P="";throw I.length&&(P=", expecting "+I.join(" or ")),new s.ParseError("syntax error, unexpected "+c[A]+P,this.startAttributes.startLine)}return this.startAttributes.startLine}for(var v in this.endAttributes)f[this.stackPos-a[L]][v]=this.endAttributes[v];if(this.stackPos-=a[L],R=(u=_[L=E[L]]+O[this.stackPos])>=0&&u<this.YYGLAST&&T[u]===L?l[u]:h[L],++this.stackPos,O[this.stackPos]=R,this.yyastk[this.stackPos]=this.yyval,f[this.stackPos]=this.startAttributes,R<this.YYNLSTATES)break;L=R-this.YYNLSTATES}}},s.ParseError=function(t,e){this.message=t,this.line=e},s.Parser.prototype.getNextToken=function(){var t,e;for(this.startAttributes={},this.endAttributes={};void 0!==this.tokens[++this.pos];){if("string"==typeof(t=this.tokens[this.pos]))return this.startAttributes.startLine=this.line,this.endAttributes.endLine=this.line,'b"'===t?(this.tokenValue='b"','"'.charCodeAt(0)):(this.tokenValue=t,t.charCodeAt(0));if(this.line+=null===(e=t[1].match(/\n/g))?0:e.length,s.Constants.T_COMMENT===t[0])Array.isArray(this.startAttributes.comments)||(this.startAttributes.comments=[]),this.startAttributes.comments.push({type:"comment",comment:t[1],line:t[2]});else if(s.Constants.T_DOC_COMMENT===t[0])this.startAttributes.comments.push(new PHPParser_Comment_Doc(t[1],t[2]));else if(void 0===this.dropTokens[t[0]])return this.tokenValue=t[1],this.startAttributes.startLine=t[2],this.endAttributes.endLine=this.line,this.tokenMap[t[0]]}return this.startAttributes.startLine=this.line,0},s.Parser.prototype.tokenName=function(t){var e="UNKNOWN";return["T_INCLUDE","T_INCLUDE_ONCE","T_EVAL","T_REQUIRE","T_REQUIRE_ONCE","T_LOGICAL_OR","T_LOGICAL_XOR","T_LOGICAL_AND","T_PRINT","T_YIELD","T_DOUBLE_ARROW","T_YIELD_FROM","T_PLUS_EQUAL","T_MINUS_EQUAL","T_MUL_EQUAL","T_DIV_EQUAL","T_CONCAT_EQUAL","T_MOD_EQUAL","T_AND_EQUAL","T_OR_EQUAL","T_XOR_EQUAL","T_SL_EQUAL","T_SR_EQUAL","T_POW_EQUAL","T_COALESCE","T_BOOLEAN_OR","T_BOOLEAN_AND","T_IS_EQUAL","T_IS_NOT_EQUAL","T_IS_IDENTICAL","T_IS_NOT_IDENTICAL","T_SPACESHIP","T_IS_SMALLER_OR_EQUAL","T_IS_GREATER_OR_EQUAL","T_SL","T_SR","T_INSTANCEOF","T_INC","T_DEC","T_INT_CAST","T_DOUBLE_CAST","T_STRING_CAST","T_ARRAY_CAST","T_OBJECT_CAST","T_BOOL_CAST","T_UNSET_CAST","T_POW","T_NEW","T_CLONE","T_EXIT","T_IF","T_ELSEIF","T_ELSE","T_ENDIF","T_LNUMBER","T_DNUMBER","T_STRING","T_STRING_VARNAME","T_VARIABLE","T_NUM_STRING","T_INLINE_HTML","T_CHARACTER","T_BAD_CHARACTER","T_ENCAPSED_AND_WHITESPACE","T_CONSTANT_ENCAPSED_STRING","T_ECHO","T_DO","T_WHILE","T_ENDWHILE","T_FOR","T_ENDFOR","T_FOREACH","T_ENDFOREACH","T_DECLARE","T_ENDDECLARE","T_AS","T_SWITCH","T_ENDSWITCH","T_CASE","T_DEFAULT","T_BREAK","T_CONTINUE","T_GOTO","T_FUNCTION","T_CONST","T_RETURN","T_TRY","T_CATCH","T_FINALLY","T_THROW","T_USE","T_INSTEADOF","T_GLOBAL","T_STATIC","T_ABSTRACT","T_FINAL","T_PRIVATE","T_PROTECTED","T_PUBLIC","T_VAR","T_UNSET","T_ISSET","T_EMPTY","T_HALT_COMPILER","T_CLASS","T_TRAIT","T_INTERFACE","T_EXTENDS","T_IMPLEMENTS","T_OBJECT_OPERATOR","T_DOUBLE_ARROW","T_LIST","T_ARRAY","T_CALLABLE","T_CLASS_C","T_TRAIT_C","T_METHOD_C","T_FUNC_C","T_LINE","T_FILE","T_COMMENT","T_DOC_COMMENT","T_OPEN_TAG","T_OPEN_TAG_WITH_ECHO","T_CLOSE_TAG","T_WHITESPACE","T_START_HEREDOC","T_END_HEREDOC","T_DOLLAR_OPEN_CURLY_BRACES","T_CURLY_OPEN","T_PAAMAYIM_NEKUDOTAYIM","T_NAMESPACE","T_NS_C","T_DIR","T_NS_SEPARATOR","T_ELLIPSIS"].some((function(n){return s.Constants[n]===t&&(e=n,!0)})),e},s.Parser.prototype.createTokenMap=function(){var t,e,n={};for(e=256;e<1e3;++e)s.Constants.T_OPEN_TAG_WITH_ECHO===e?n[e]=s.Constants.T_ECHO:s.Constants.T_CLOSE_TAG===e?n[e]=59:"UNKNOWN"!==(t=this.tokenName(e))&&(n[e]=this[t]);return n},s.Parser.prototype.TOKEN_NONE=-1,s.Parser.prototype.TOKEN_INVALID=157,s.Parser.prototype.TOKEN_MAP_SIZE=392,s.Parser.prototype.YYLAST=889,s.Parser.prototype.YY2TBLSTATE=337,s.Parser.prototype.YYGLAST=410,s.Parser.prototype.YYNLSTATES=564,s.Parser.prototype.YYUNEXPECTED=32767,s.Parser.prototype.YYDEFAULT=-32766,s.Parser.prototype.YYERRTOK=256,s.Parser.prototype.T_INCLUDE=257,s.Parser.prototype.T_INCLUDE_ONCE=258,s.Parser.prototype.T_EVAL=259,s.Parser.prototype.T_REQUIRE=260,s.Parser.prototype.T_REQUIRE_ONCE=261,s.Parser.prototype.T_LOGICAL_OR=262,s.Parser.prototype.T_LOGICAL_XOR=263,s.Parser.prototype.T_LOGICAL_AND=264,s.Parser.prototype.T_PRINT=265,s.Parser.prototype.T_YIELD=266,s.Parser.prototype.T_DOUBLE_ARROW=267,s.Parser.prototype.T_YIELD_FROM=268,s.Parser.prototype.T_PLUS_EQUAL=269,s.Parser.prototype.T_MINUS_EQUAL=270,s.Parser.prototype.T_MUL_EQUAL=271,s.Parser.prototype.T_DIV_EQUAL=272,s.Parser.prototype.T_CONCAT_EQUAL=273,s.Parser.prototype.T_MOD_EQUAL=274,s.Parser.prototype.T_AND_EQUAL=275,s.Parser.prototype.T_OR_EQUAL=276,s.Parser.prototype.T_XOR_EQUAL=277,s.Parser.prototype.T_SL_EQUAL=278,s.Parser.prototype.T_SR_EQUAL=279,s.Parser.prototype.T_POW_EQUAL=280,s.Parser.prototype.T_COALESCE=281,s.Parser.prototype.T_BOOLEAN_OR=282,s.Parser.prototype.T_BOOLEAN_AND=283,s.Parser.prototype.T_IS_EQUAL=284,s.Parser.prototype.T_IS_NOT_EQUAL=285,s.Parser.prototype.T_IS_IDENTICAL=286,s.Parser.prototype.T_IS_NOT_IDENTICAL=287,s.Parser.prototype.T_SPACESHIP=288,s.Parser.prototype.T_IS_SMALLER_OR_EQUAL=289,s.Parser.prototype.T_IS_GREATER_OR_EQUAL=290,s.Parser.prototype.T_SL=291,s.Parser.prototype.T_SR=292,s.Parser.prototype.T_INSTANCEOF=293,s.Parser.prototype.T_INC=294,s.Parser.prototype.T_DEC=295,s.Parser.prototype.T_INT_CAST=296,s.Parser.prototype.T_DOUBLE_CAST=297,s.Parser.prototype.T_STRING_CAST=298,s.Parser.prototype.T_ARRAY_CAST=299,s.Parser.prototype.T_OBJECT_CAST=300,s.Parser.prototype.T_BOOL_CAST=301,s.Parser.prototype.T_UNSET_CAST=302,s.Parser.prototype.T_POW=303,s.Parser.prototype.T_NEW=304,s.Parser.prototype.T_CLONE=305,s.Parser.prototype.T_EXIT=306,s.Parser.prototype.T_IF=307,s.Parser.prototype.T_ELSEIF=308,s.Parser.prototype.T_ELSE=309,s.Parser.prototype.T_ENDIF=310,s.Parser.prototype.T_LNUMBER=311,s.Parser.prototype.T_DNUMBER=312,s.Parser.prototype.T_STRING=313,s.Parser.prototype.T_STRING_VARNAME=314,s.Parser.prototype.T_VARIABLE=315,s.Parser.prototype.T_NUM_STRING=316,s.Parser.prototype.T_INLINE_HTML=317,s.Parser.prototype.T_CHARACTER=318,s.Parser.prototype.T_BAD_CHARACTER=319,s.Parser.prototype.T_ENCAPSED_AND_WHITESPACE=320,s.Parser.prototype.T_CONSTANT_ENCAPSED_STRING=321,s.Parser.prototype.T_ECHO=322,s.Parser.prototype.T_DO=323,s.Parser.prototype.T_WHILE=324,s.Parser.prototype.T_ENDWHILE=325,s.Parser.prototype.T_FOR=326,s.Parser.prototype.T_ENDFOR=327,s.Parser.prototype.T_FOREACH=328,s.Parser.prototype.T_ENDFOREACH=329,s.Parser.prototype.T_DECLARE=330,s.Parser.prototype.T_ENDDECLARE=331,s.Parser.prototype.T_AS=332,s.Parser.prototype.T_SWITCH=333,s.Parser.prototype.T_ENDSWITCH=334,s.Parser.prototype.T_CASE=335,s.Parser.prototype.T_DEFAULT=336,s.Parser.prototype.T_BREAK=337,s.Parser.prototype.T_CONTINUE=338,s.Parser.prototype.T_GOTO=339,s.Parser.prototype.T_FUNCTION=340,s.Parser.prototype.T_CONST=341,s.Parser.prototype.T_RETURN=342,s.Parser.prototype.T_TRY=343,s.Parser.prototype.T_CATCH=344,s.Parser.prototype.T_FINALLY=345,s.Parser.prototype.T_THROW=346,s.Parser.prototype.T_USE=347,s.Parser.prototype.T_INSTEADOF=348,s.Parser.prototype.T_GLOBAL=349,s.Parser.prototype.T_STATIC=350,s.Parser.prototype.T_ABSTRACT=351,s.Parser.prototype.T_FINAL=352,s.Parser.prototype.T_PRIVATE=353,s.Parser.prototype.T_PROTECTED=354,s.Parser.prototype.T_PUBLIC=355,s.Parser.prototype.T_VAR=356,s.Parser.prototype.T_UNSET=357,s.Parser.prototype.T_ISSET=358,s.Parser.prototype.T_EMPTY=359,s.Parser.prototype.T_HALT_COMPILER=360,s.Parser.prototype.T_CLASS=361,s.Parser.prototype.T_TRAIT=362,s.Parser.prototype.T_INTERFACE=363,s.Parser.prototype.T_EXTENDS=364,s.Parser.prototype.T_IMPLEMENTS=365,s.Parser.prototype.T_OBJECT_OPERATOR=366,s.Parser.prototype.T_LIST=367,s.Parser.prototype.T_ARRAY=368,s.Parser.prototype.T_CALLABLE=369,s.Parser.prototype.T_CLASS_C=370,s.Parser.prototype.T_TRAIT_C=371,s.Parser.prototype.T_METHOD_C=372,s.Parser.prototype.T_FUNC_C=373,s.Parser.prototype.T_LINE=374,s.Parser.prototype.T_FILE=375,s.Parser.prototype.T_COMMENT=376,s.Parser.prototype.T_DOC_COMMENT=377,s.Parser.prototype.T_OPEN_TAG=378,s.Parser.prototype.T_OPEN_TAG_WITH_ECHO=379,s.Parser.prototype.T_CLOSE_TAG=380,s.Parser.prototype.T_WHITESPACE=381,s.Parser.prototype.T_START_HEREDOC=382,s.Parser.prototype.T_END_HEREDOC=383,s.Parser.prototype.T_DOLLAR_OPEN_CURLY_BRACES=384,s.Parser.prototype.T_CURLY_OPEN=385,s.Parser.prototype.T_PAAMAYIM_NEKUDOTAYIM=386,s.Parser.prototype.T_NAMESPACE=387,s.Parser.prototype.T_NS_C=388,s.Parser.prototype.T_DIR=389,s.Parser.prototype.T_NS_SEPARATOR=390,s.Parser.prototype.T_ELLIPSIS=391,s.Parser.prototype.terminals=["$EOF","error","T_INCLUDE","T_INCLUDE_ONCE","T_EVAL","T_REQUIRE","T_REQUIRE_ONCE","','","T_LOGICAL_OR","T_LOGICAL_XOR","T_LOGICAL_AND","T_PRINT","T_YIELD","T_DOUBLE_ARROW","T_YIELD_FROM","'='","T_PLUS_EQUAL","T_MINUS_EQUAL","T_MUL_EQUAL","T_DIV_EQUAL","T_CONCAT_EQUAL","T_MOD_EQUAL","T_AND_EQUAL","T_OR_EQUAL","T_XOR_EQUAL","T_SL_EQUAL","T_SR_EQUAL","T_POW_EQUAL","'?'","':'","T_COALESCE","T_BOOLEAN_OR","T_BOOLEAN_AND","'|'","'^'","'&'","T_IS_EQUAL","T_IS_NOT_EQUAL","T_IS_IDENTICAL","T_IS_NOT_IDENTICAL","T_SPACESHIP","'<'","T_IS_SMALLER_OR_EQUAL","'>'","T_IS_GREATER_OR_EQUAL","T_SL","T_SR","'+'","'-'","'.'","'*'","'/'","'%'","'!'","T_INSTANCEOF","'~'","T_INC","T_DEC","T_INT_CAST","T_DOUBLE_CAST","T_STRING_CAST","T_ARRAY_CAST","T_OBJECT_CAST","T_BOOL_CAST","T_UNSET_CAST","'@'","T_POW","'['","T_NEW","T_CLONE","T_EXIT","T_IF","T_ELSEIF","T_ELSE","T_ENDIF","T_LNUMBER","T_DNUMBER","T_STRING","T_STRING_VARNAME","T_VARIABLE","T_NUM_STRING","T_INLINE_HTML","T_ENCAPSED_AND_WHITESPACE","T_CONSTANT_ENCAPSED_STRING","T_ECHO","T_DO","T_WHILE","T_ENDWHILE","T_FOR","T_ENDFOR","T_FOREACH","T_ENDFOREACH","T_DECLARE","T_ENDDECLARE","T_AS","T_SWITCH","T_ENDSWITCH","T_CASE","T_DEFAULT","T_BREAK","T_CONTINUE","T_GOTO","T_FUNCTION","T_CONST","T_RETURN","T_TRY","T_CATCH","T_FINALLY","T_THROW","T_USE","T_INSTEADOF","T_GLOBAL","T_STATIC","T_ABSTRACT","T_FINAL","T_PRIVATE","T_PROTECTED","T_PUBLIC","T_VAR","T_UNSET","T_ISSET","T_EMPTY","T_HALT_COMPILER","T_CLASS","T_TRAIT","T_INTERFACE","T_EXTENDS","T_IMPLEMENTS","T_OBJECT_OPERATOR","T_LIST","T_ARRAY","T_CALLABLE","T_CLASS_C","T_TRAIT_C","T_METHOD_C","T_FUNC_C","T_LINE","T_FILE","T_START_HEREDOC","T_END_HEREDOC","T_DOLLAR_OPEN_CURLY_BRACES","T_CURLY_OPEN","T_PAAMAYIM_NEKUDOTAYIM","T_NAMESPACE","T_NS_C","T_DIR","T_NS_SEPARATOR","T_ELLIPSIS","';'","'{'","'}'","'('","')'","'`'","']'","'\"'","'$'","???"],s.Parser.prototype.translate=[0,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,53,155,157,156,52,35,157,151,152,50,47,7,48,49,51,157,157,157,157,157,157,157,157,157,157,29,148,41,15,43,28,65,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,67,157,154,34,157,153,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,149,33,150,55,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,1,2,3,4,5,6,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,30,31,32,36,37,38,39,40,42,44,45,46,54,56,57,58,59,60,61,62,63,64,66,68,69,70,71,72,73,74,75,76,77,78,79,80,81,157,157,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,157,157,157,157,157,157,138,139,140,141,142,143,144,145,146,147],s.Parser.prototype.yyaction=[569,570,571,572,573,215,574,575,576,612,613,0,27,99,100,101,102,103,104,105,106,107,108,109,110,-32766,-32766,-32766,95,96,97,24,240,226,-267,-32766,-32766,-32766,-32766,-32766,-32766,530,344,114,98,-32766,286,-32766,-32766,-32766,-32766,-32766,577,870,872,-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766,224,-32766,714,578,579,580,581,582,583,584,-32766,264,644,840,841,842,839,838,837,585,586,587,588,589,590,591,592,593,594,595,615,616,617,618,619,607,608,609,610,611,596,597,598,599,600,601,602,638,639,640,641,642,643,603,604,605,606,636,627,625,626,622,623,116,614,620,621,628,629,631,630,632,633,42,43,381,44,45,624,635,634,-214,46,47,289,48,-32767,-32767,-32767,-32767,90,91,92,93,94,267,241,22,840,841,842,839,838,837,832,-32766,-32766,-32766,306,1e3,1e3,1037,120,966,436,-423,244,797,49,50,660,661,272,362,51,-32766,52,219,220,53,54,55,56,57,58,59,60,1016,22,238,61,351,945,-32766,-32766,-32766,967,968,646,705,1e3,28,-456,125,966,-32766,-32766,-32766,715,398,399,216,1e3,-32766,339,-32766,-32766,-32766,-32766,25,222,980,552,355,378,-32766,-423,-32766,-32766,-32766,121,65,1045,408,1047,1046,274,274,131,244,-423,394,395,358,519,945,537,-423,111,-426,398,399,130,972,973,974,975,969,970,243,128,-422,-421,1013,409,976,971,353,791,792,7,-162,63,124,255,701,256,274,382,-122,-122,-122,-4,715,383,646,1042,-421,704,274,-219,33,17,384,-122,385,-122,386,-122,387,-122,369,388,-122,-122,-122,34,35,389,352,520,36,390,353,702,62,112,818,287,288,391,392,-422,-421,-161,350,393,40,38,690,735,396,397,361,22,122,-422,-421,-32766,-32766,-32766,791,792,-422,-421,-425,1e3,-456,-421,-238,966,409,41,382,353,717,535,-122,-32766,383,-32766,-32766,-421,704,21,813,33,17,384,-421,385,-466,386,224,387,-467,273,388,367,945,-458,34,35,389,352,345,36,390,248,247,62,254,715,287,288,391,392,399,-32766,-32766,-32766,393,295,1e3,652,735,396,397,117,115,113,814,119,72,73,74,-162,764,65,240,541,370,518,274,118,270,92,93,94,242,717,535,-4,26,1e3,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,547,240,713,715,382,276,-32766,-32766,126,945,383,-161,938,98,704,225,659,33,17,384,346,385,274,386,728,387,221,120,388,505,506,540,34,35,389,715,-238,36,390,1017,223,62,494,18,287,288,127,297,376,6,98,798,393,274,660,661,490,491,-466,39,-466,514,-467,539,-467,16,458,-458,315,791,792,829,553,382,817,563,653,538,765,383,449,751,535,704,448,435,33,17,384,430,385,646,386,359,387,357,647,388,673,429,1040,34,35,389,715,382,36,390,941,492,62,383,503,287,288,704,434,440,33,17,384,393,385,-32766,386,445,387,495,509,388,10,529,542,34,35,389,715,515,36,390,499,500,62,214,-80,287,288,452,269,736,717,535,488,393,356,266,979,265,730,982,722,358,338,493,548,0,294,737,0,3,0,309,0,0,382,0,0,271,0,0,383,0,717,535,704,227,0,33,17,384,9,385,0,386,0,387,-382,0,388,0,0,325,34,35,389,715,382,36,390,321,341,62,383,340,287,288,704,22,320,33,17,384,393,385,442,386,337,387,562,1e3,388,32,31,966,34,35,389,823,657,36,390,656,821,62,703,711,287,288,561,822,825,717,535,695,393,747,749,693,759,758,752,767,945,824,706,700,712,699,698,658,0,263,262,559,558,382,556,554,551,398,399,383,550,717,535,704,546,545,33,17,384,543,385,536,386,71,387,933,932,388,30,65,731,34,35,389,274,724,36,390,830,734,62,663,662,287,288,-32766,-32766,-32766,733,732,934,393,665,664,756,555,691,1041,1001,994,1006,1011,1014,757,1043,-32766,654,-32766,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767,-32767,655,1044,717,535,-446,926,348,343,268,237,236,235,234,218,217,132,129,-426,-425,-424,123,20,23,70,69,29,37,64,68,66,67,-448,0,15,19,250,910,296,-217,467,484,909,472,528,913,11,964,955,-215,525,379,375,373,371,14,13,12,-214,0,-393,0,1005,1039,992,993,963,0,981],s.Parser.prototype.yycheck=[2,3,4,5,6,13,8,9,10,11,12,0,15,16,17,18,19,20,21,22,23,24,25,26,27,8,9,10,50,51,52,7,54,7,79,8,9,10,8,9,10,77,7,13,66,28,7,30,31,32,33,34,54,56,57,28,8,30,31,32,33,34,35,35,109,1,68,69,70,71,72,73,74,118,7,77,112,113,114,115,116,117,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,7,129,130,131,132,133,134,135,136,137,2,3,4,5,6,143,144,145,152,11,12,7,14,41,42,43,44,45,46,47,48,49,109,7,67,112,113,114,115,116,117,118,8,9,10,79,79,79,82,147,83,82,67,28,152,47,48,102,103,7,7,53,28,55,56,57,58,59,60,61,62,63,64,65,1,67,68,69,70,112,8,9,10,75,76,77,148,79,13,7,67,83,8,9,10,1,129,130,13,79,28,146,30,31,32,33,140,141,139,29,102,7,28,128,30,31,32,149,151,77,112,79,80,156,156,15,28,142,120,121,146,77,112,149,149,15,151,129,130,15,132,133,134,135,136,137,138,15,67,67,77,143,144,145,146,130,131,7,7,151,15,153,148,155,156,71,72,73,74,0,1,77,77,150,67,81,156,152,84,85,86,87,88,89,90,91,92,93,29,95,96,97,98,99,100,101,102,143,104,105,146,148,108,15,150,111,112,113,114,128,128,7,7,119,67,67,122,123,124,125,7,67,149,142,142,8,9,10,130,131,149,149,151,79,152,128,7,83,143,7,71,146,148,149,150,28,77,30,31,142,81,7,148,84,85,86,149,88,7,90,35,92,7,33,95,7,112,7,99,100,101,102,103,104,105,128,128,108,109,1,111,112,113,114,130,8,9,10,119,142,79,122,123,124,125,15,149,149,148,29,8,9,10,152,29,151,54,29,149,79,156,15,143,47,48,49,29,148,149,150,28,79,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,29,54,29,1,71,67,8,9,29,112,77,152,152,66,81,35,148,84,85,86,123,88,156,90,35,92,35,147,95,72,73,29,99,100,101,1,152,104,105,152,35,108,72,73,111,112,97,98,102,103,66,152,119,156,102,103,106,107,152,67,154,74,152,29,154,152,128,152,78,130,131,148,149,71,148,149,148,149,148,77,77,148,149,81,77,77,84,85,86,77,88,77,90,77,92,77,77,95,77,77,77,99,100,101,1,71,104,105,79,79,108,77,79,111,112,81,79,82,84,85,86,119,88,82,90,86,92,87,96,95,94,89,29,99,100,101,1,91,104,105,93,96,108,94,94,111,112,94,110,123,148,149,109,119,102,127,139,126,147,139,150,146,149,154,29,-1,142,123,-1,142,-1,146,-1,-1,71,-1,-1,126,-1,-1,77,-1,148,149,81,35,-1,84,85,86,142,88,-1,90,-1,92,142,-1,95,-1,-1,146,99,100,101,1,71,104,105,146,146,108,77,146,111,112,81,67,146,84,85,86,119,88,146,90,149,92,148,79,95,148,148,83,99,100,101,148,148,104,105,148,148,108,148,148,111,112,148,148,148,148,149,148,119,148,148,148,148,148,148,148,112,148,148,148,148,148,148,148,-1,149,149,149,149,71,149,149,149,129,130,77,149,148,149,81,149,149,84,85,86,149,88,149,90,149,92,150,150,95,151,151,150,99,100,101,156,150,104,105,150,150,108,150,150,111,112,8,9,10,150,150,150,119,150,150,150,150,150,150,150,150,150,150,150,150,150,28,150,30,31,32,33,34,35,36,37,38,39,40,150,150,148,149,151,153,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,-1,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,-1,153,-1,154,154,154,154,154,-1,155],s.Parser.prototype.yybase=[0,220,295,94,180,560,-2,-2,-2,-2,-36,473,574,606,574,505,404,675,675,675,28,351,462,462,462,461,396,476,451,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,401,64,201,568,704,713,708,702,714,520,706,705,211,650,651,450,652,653,654,655,709,480,703,712,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,48,30,469,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,160,160,160,343,210,208,198,17,233,27,780,780,780,780,780,108,108,108,108,621,621,93,280,280,280,280,280,280,280,280,280,280,280,632,641,642,643,392,392,151,151,151,151,368,-45,146,224,224,95,410,491,733,199,199,111,207,-22,-22,-22,81,506,92,92,233,233,273,233,423,423,423,221,221,221,221,221,110,221,221,221,617,512,168,516,647,397,503,656,274,381,377,538,535,337,523,337,421,441,428,525,337,337,285,401,394,378,567,474,339,564,140,179,409,399,384,594,561,711,330,710,358,149,378,378,378,370,593,548,355,-8,646,484,277,417,386,645,635,230,634,276,331,356,565,485,485,485,485,485,485,460,485,483,691,691,478,501,460,696,460,485,691,460,460,502,485,522,522,483,508,499,691,691,499,478,460,571,551,514,482,413,413,514,460,413,501,413,11,697,699,444,700,695,698,676,694,493,615,497,515,684,683,693,479,489,620,692,549,592,487,246,314,498,463,689,523,486,455,455,455,463,687,455,455,455,455,455,455,455,455,732,24,495,510,591,590,589,406,588,496,524,422,599,488,549,549,649,727,673,490,682,716,690,555,119,271,681,648,543,492,534,680,598,246,715,494,672,549,671,455,674,701,730,731,688,728,722,152,526,587,178,729,659,596,595,554,725,707,721,720,178,576,511,717,518,677,504,678,613,258,657,686,584,724,723,726,583,582,609,608,250,236,685,442,458,517,581,500,628,604,679,580,579,623,619,718,521,486,519,509,507,513,600,618,719,206,578,586,573,481,572,631,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,134,-2,-2,-2,0,0,0,0,-2,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,418,-3,418,418,-3,418,418,418,418,418,418,-22,-22,-22,-22,221,221,221,221,221,221,221,221,221,221,221,221,221,221,49,49,49,49,-22,-22,221,221,221,221,221,49,221,221,221,92,221,92,92,337,337,0,0,0,0,0,485,92,0,0,0,0,0,0,485,485,485,0,0,0,0,0,485,0,0,0,337,92,0,420,420,178,420,420,0,0,0,485,485,0,508,0,0,0,0,691,0,0,0,0,0,455,119,682,0,39,0,0,0,0,0,490,39,26,0,26,0,0,455,455,455,0,490,490,0,0,67,490,0,0,0,67,35,0,35,0,0,0,178],s.Parser.prototype.yydefault=[3,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,468,468,468,32767,32767,32767,32767,285,460,285,285,32767,419,419,419,419,419,419,419,460,32767,32767,32767,32767,32767,364,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,465,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,347,348,350,351,284,420,237,464,283,116,246,239,191,282,223,119,312,365,314,363,367,313,290,294,295,296,297,298,299,300,301,302,303,304,305,288,289,366,344,343,342,310,311,287,315,317,287,316,333,334,331,332,335,336,337,338,339,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,269,269,269,269,324,325,229,229,229,229,32767,270,32767,229,32767,32767,32767,32767,32767,32767,32767,413,341,319,320,318,32767,392,32767,394,307,309,387,291,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,389,421,421,32767,32767,32767,381,32767,159,210,212,397,32767,32767,32767,32767,32767,329,32767,32767,32767,32767,32767,32767,474,32767,32767,32767,32767,32767,421,32767,32767,32767,321,322,323,32767,32767,32767,421,421,32767,32767,421,32767,421,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,163,32767,32767,395,395,32767,32767,163,390,163,32767,32767,163,163,176,32767,174,174,32767,32767,178,32767,435,178,32767,163,196,196,373,165,231,231,373,163,231,32767,231,32767,32767,32767,82,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,383,32767,32767,32767,401,32767,414,433,381,32767,327,328,330,32767,423,352,353,354,355,356,357,358,360,32767,461,386,32767,32767,32767,32767,32767,32767,84,108,245,32767,473,84,384,32767,473,32767,32767,32767,32767,32767,32767,286,32767,32767,32767,84,32767,84,32767,32767,457,32767,32767,421,385,32767,326,398,439,32767,32767,422,32767,32767,218,84,32767,177,32767,32767,32767,32767,32767,32767,401,32767,32767,179,32767,32767,421,32767,32767,32767,32767,32767,281,32767,32767,32767,32767,32767,421,32767,32767,32767,32767,222,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,82,60,32767,263,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,121,121,3,3,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,248,154,248,204,248,248,207,196,196,255],s.Parser.prototype.yygoto=[163,163,135,135,135,146,148,179,164,161,145,161,161,161,162,162,162,162,162,162,162,145,157,158,159,160,176,174,177,410,411,299,412,415,416,417,418,419,420,421,422,857,136,137,138,139,140,141,142,143,144,147,173,175,178,195,198,199,201,202,204,205,206,207,208,209,210,211,212,213,232,233,251,252,253,316,317,318,462,180,181,182,183,184,185,186,187,188,189,190,191,192,193,149,194,150,165,166,167,196,168,151,152,153,169,154,197,133,170,155,171,172,156,521,200,257,246,464,432,687,649,278,481,482,527,200,437,437,437,766,5,746,650,557,437,426,775,770,428,431,444,465,466,468,483,279,651,336,450,453,437,560,485,487,508,511,763,516,517,777,524,762,526,532,773,534,480,480,965,965,965,965,965,965,965,965,965,965,965,965,413,413,413,413,413,413,413,413,413,413,413,413,413,413,942,502,478,496,512,456,298,437,437,451,471,437,437,674,437,229,456,230,231,463,828,533,681,438,513,826,461,475,460,414,414,414,414,414,414,414,414,414,414,414,414,414,414,301,674,674,443,454,1033,1033,1034,1034,425,531,425,708,750,800,457,372,1033,943,1034,1026,300,1018,497,8,313,904,796,944,996,785,789,1007,285,670,1036,329,307,310,804,668,544,332,935,940,366,807,678,477,377,754,844,0,667,667,675,675,675,677,0,666,323,498,328,312,312,258,259,283,459,261,322,284,326,486,280,281,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,790,790,790,790,946,0,946,790,790,1004,790,1004,0,0,0,0,836,0,1015,1015,0,0,0,0,0,0,0,0,0,0,0,744,744,744,720,744,0,739,745,721,780,780,1023,0,0,1002,0,0,0,0,0,0,0,0,0,0,0,0,806,0,806,0,0,0,0,1008,1009],s.Parser.prototype.yygcheck=[23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,52,45,112,112,80,8,10,10,64,55,55,55,45,8,8,8,10,92,10,11,10,8,10,10,10,38,38,38,38,38,38,62,62,12,62,28,8,8,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,70,70,70,70,70,70,70,70,70,70,70,70,70,70,113,113,113,113,113,113,113,113,113,113,113,113,113,113,76,56,35,35,56,69,56,8,8,8,8,8,8,19,8,60,69,60,60,7,7,7,25,8,7,7,2,2,8,115,115,115,115,115,115,115,115,115,115,115,115,115,115,53,19,19,53,53,123,123,124,124,109,5,109,44,29,78,114,53,123,76,124,122,41,120,43,53,42,96,74,76,76,72,75,117,14,21,123,18,9,13,79,20,66,17,102,104,58,81,22,59,100,63,94,-1,19,19,19,19,19,19,-1,19,45,45,45,45,45,45,45,45,45,45,45,45,45,45,64,64,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,52,52,52,52,52,-1,52,52,52,80,52,80,-1,-1,-1,-1,92,-1,80,80,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,52,52,52,52,52,-1,52,52,52,69,69,69,-1,-1,80,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,80,-1,80,-1,-1,-1,-1,80,80],s.Parser.prototype.yygbase=[0,0,-317,0,0,237,0,210,-136,4,118,130,144,-10,16,0,0,-59,10,-47,-9,7,-77,-20,0,209,0,0,-388,234,0,0,0,0,0,165,0,0,103,0,0,225,44,45,235,84,0,0,0,0,0,0,109,-115,0,-113,-179,0,-78,-81,-347,0,-122,-80,-249,0,-19,0,0,169,-48,0,26,0,22,24,-99,0,230,-13,114,-79,0,0,0,0,0,0,0,0,0,0,120,0,-90,0,23,0,0,0,-89,0,-67,0,-69,0,0,0,0,8,0,0,-140,-34,229,9,0,21,0,0,218,0,233,-3,-1,0],s.Parser.prototype.yygdefault=[-32768,380,565,2,566,637,645,504,400,433,748,688,689,303,342,401,302,330,324,676,669,671,679,134,333,682,1,684,439,716,291,692,292,507,694,446,696,697,427,304,305,447,311,479,707,203,308,709,290,710,719,335,293,510,489,469,501,402,363,476,228,455,473,753,277,761,549,769,772,403,404,470,784,368,794,788,960,319,799,805,991,808,811,349,331,327,815,816,4,820,522,523,835,239,843,856,347,923,925,441,374,936,360,334,939,995,354,405,364,952,260,282,245,406,423,249,407,365,998,314,1019,424,1027,1035,275,474],s.Parser.prototype.yylhs=[0,1,3,3,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,7,7,8,8,9,4,4,4,4,4,4,4,4,4,4,4,14,14,15,15,15,15,17,17,13,13,18,18,19,19,20,20,21,21,16,16,22,24,24,25,26,26,28,27,27,27,27,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,10,10,48,48,51,51,50,49,49,42,42,53,53,54,54,11,12,12,12,57,57,57,58,58,61,61,59,59,62,62,36,36,44,44,47,47,47,46,46,63,37,37,37,37,64,64,65,65,66,66,34,34,30,30,67,32,32,68,31,31,33,33,43,43,43,43,55,55,71,71,72,72,74,74,75,75,75,73,73,56,56,76,76,77,77,78,78,78,39,39,79,40,40,81,81,60,60,82,82,82,82,87,87,88,88,89,89,89,89,89,90,91,91,86,86,83,83,85,85,93,93,92,92,92,92,92,92,84,84,94,94,41,41,35,35,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,101,95,95,100,100,103,103,104,105,105,105,109,109,52,52,52,96,96,107,107,97,97,99,99,99,102,102,113,113,70,115,115,115,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,38,38,111,111,111,106,106,106,116,116,116,116,116,116,45,45,45,80,80,80,118,110,110,110,110,110,110,108,108,108,117,117,117,117,69,119,119,120,120,120,120,120,114,121,121,122,122,122,122,122,112,112,112,112,124,123,123,123,123,123,123,123,125,125,125],s.Parser.prototype.yylen=[1,1,2,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,3,5,4,3,4,2,3,1,1,7,8,6,7,3,1,3,1,3,1,1,3,1,2,1,2,3,1,3,3,1,3,2,0,1,1,1,1,1,3,7,10,5,7,9,5,3,3,3,3,3,3,1,2,5,7,9,5,6,3,3,2,2,1,1,1,0,2,1,3,8,0,4,1,3,0,1,0,1,10,7,6,5,1,2,2,0,2,0,2,0,2,1,3,1,4,1,4,1,1,4,1,3,3,3,4,4,5,0,2,4,3,1,1,1,4,0,2,5,0,2,6,0,2,0,3,1,2,1,1,1,0,1,3,4,6,1,2,1,1,1,0,1,0,2,2,3,1,3,1,2,2,3,1,1,3,1,1,3,2,0,3,4,9,3,1,3,0,2,4,5,4,4,4,3,1,1,1,3,1,1,0,1,1,2,1,1,1,1,1,1,1,3,1,3,3,1,0,1,1,3,3,3,4,1,2,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,5,4,3,4,4,2,2,4,2,2,2,2,2,2,2,2,2,2,2,1,3,2,1,2,4,2,10,11,7,3,2,0,4,1,3,2,2,2,4,1,1,1,2,3,1,1,1,1,0,3,0,1,1,0,1,1,3,3,4,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,2,3,3,0,1,1,3,1,1,3,1,1,4,4,4,1,4,1,1,3,1,4,2,3,1,4,4,3,3,3,1,3,1,1,3,1,1,4,3,1,1,1,3,3,0,1,3,1,3,1,4,2,0,2,2,1,2,1,1,4,3,3,3,6,3,1,1,1],e.PHP=s})),ace.define("ace/mode/php_worker",[],(function(t,e,n){"use strict";var s=t("../lib/oop"),r=t("../worker/mirror").Mirror,o=t("./php/php").PHP,i=e.PhpWorker=function(t){r.call(this,t),this.setTimeout(500)};s.inherits(i,r),function(){this.setOptions=function(t){this.inlinePhp=t&&t.inline},this.onUpdate=function(){var t=this.doc.getValue(),e=[];this.inlinePhp&&(t="<?php\n"+t+"\n?>");var n=o.Lexer(t,{short_open_tag:1});try{new o.Parser(n)}catch(t){e.push({row:t.line-1,column:null,text:t.message.charAt(0).toUpperCase()+t.message.substring(1),type:"error"})}this.sender.emit("annotate",e)}}.call(i.prototype)}));