Page MenuHomePhorge

Build 1898
FailedPublic

Run Command

When
Completed at Nov 10 2015, 10:52 AM · Built for 18 m, 54 s
Status
Failed
This build step has since been deleted on the build plan. Some information may be omitted.

Build Log 6520 (remote - stderr)
25 - 50 - 100 - Unlimited Lines

1+ '[' -z 1c3cb93ae9e47461553a15dd3581b76fd60ad0dc -a -z '' ']'
2+ '[' -z ssh://git@git.kolab.org/diffusion/C/chwala.git ']'
3+ '[' 0 -eq 0 -a 0 -eq 0 -a 0 -eq 0 -a 0 -eq 0 -a 0 -eq 0 -a 0 -eq 0 ']'
4+ test_build=1
5+ test_functional=1
6+ test_integration=1
7+ test_performance=1
8+ test_unit=1
9+ test_obs=1
10+ '[' -z git ']'
11+ case ${vcs} in
12++ basename ssh://git@git.kolab.org/diffusion/C/chwala.git .git
13+ package=chwala
14++ echo ssh://git@git.kolab.org/diffusion/C/chwala.git
15++ sed -e 's|ssh://git@|https://|g'
16+ ro_uri=https://git.kolab.org/diffusion/C/chwala.git
17+ case ${package} in
18++ pwd
19+ export TMPDIR=/var/tmp/2312
20+ TMPDIR=/var/tmp/2312
21+ '[' '!' -d chwala.git ']'
22+ git clone https://git.kolab.org/diffusion/C/chwala.git chwala.git
23+ pushd chwala.git
24+ git checkout 1c3cb93ae9e47461553a15dd3581b76fd60ad0dc
25Note: checking out '1c3cb93ae9e47461553a15dd3581b76fd60ad0dc'.
26
27You are in 'detached HEAD' state. You can look around, make experimental
28changes and commit them, and you can discard any commits you make in this
29state without impacting any branches by performing another checkout.
30
31If you want to create a new branch to retain commits you create, you may
32do so (now or later) by using -b with the checkout command again. Example:
33
34 git checkout -b new_branch_name
35
36HEAD is now at 1c3cb93... Update Kolab plugins
37+ popd
38+ '[' chwala '!=' stick ']'
39+ '[' '!' -d stick.git ']'
40+ git clone https://git.kolab.org/diffusion/QA/stick.git stick.git
41+ export commit
42+ export differential
43+ export id
44+ export package
45+ export phid
46+ export ro_uri
47+ export uri
48+ export vcs
49+ export test_build
50+ export test_functional
51+ export test_integration
52+ export test_performance
53+ export test_unit
54+ export test_obs
55+ '[' '!' -d /var/tmp/osbuild-packagecache ']'
56+ '[' -x stick.git/drydocker/chwala/build.sh ']'
57+ pushd chwala.git
58+ ../stick.git/drydocker/chwala/build.sh
59+ docker run -it --attach=stdout --attach=stderr --detach=false --rm=true --volume=/root/.oscrc:/root/.oscrc --volume=/var/tmp/osbuild-packagecache/:/var/tmp/osbuild-packagecache/ --hostname=kolab.example.org -e ID=1898 -e COMMIT=1c3cb93ae9e47461553a15dd3581b76fd60ad0dc -e DIFFERENTIAL= -e PACKAGE=chwala -e PHAB_CERT= -e PHAB_USER= -e PHID=PHID-HMBT-42qadicrmwfmzotdwdu2 -e URI=ssh://git@git.kolab.org/diffusion/C/chwala.git -e RO_URI=https://git.kolab.org/diffusion/C/chwala.git -e VCS=git -e TEST_BUILD=1 -e TEST_FUNCTIONAL=1 -e TEST_INTEGRATION=1 -e TEST_PERFORMANCE=1 -e TEST_UNIT=1 -e TEST_OBS=1 kolab/ci-maipo
60+ exit 1
61+ retval=1
62+ popd
63+ cd /var/tmp
64+ rm -rf /var/tmp/2312
65+ exit 1
66

Build Log 6519 (remote - stdout)
25 - 50 - 100 - Unlimited Lines

4023^
4024
4025./lib/viewers/text/worker-css.js:1: WARNING - If this if/for/while really shouldn't have a body, use {}
4026"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/css_worker",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/worker/mirror","ace/mode/css/csslint"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/lang"),s=e("../worker/mirror").Mirror,o=e("./css/csslint").CSSLint,u=t.Worker=function(e){s.call(this,e),this.setTimeout(400),this.ruleset=null,this.setDisabledRules("ids"),this.setInfoRules("adjoining-classes|qualified-headings|zero-units|gradients|import|outline-none")};r.inherits(u,s),function(){this.setInfoRules=function(e){typeof e=="string"&&(e=e.split("|")),this.infoRules=i.arrayToMap(e),this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.setDisabledRules=function(e){if(!e)this.ruleset=null;else{typeof e=="string"&&(e=e.split("|"));var t={};o.getRules().forEach(function(e){t[e.id]=!0}),e.forEach(function(e){delete t[e]}),this.ruleset=t}this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.onUpdate=function(){var e=this.doc.getValue(),t=this.infoRules,n=o.verify(e,this.ruleset);this.sender.emit("csslint",n.messages.map(function(e){return{row:e.line-1,column:e.col-1,text:e.message,type:t[e.rule.id]?"info":e.type}}))}}.call(u.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/mode/css/csslint",["require","exports","module"],function(require,exports,module){function Reporter(e,t){this.messages=[],this.stats=[],this.lines=e,this.ruleset=t}var parserlib={};(function(){function e(){this._listeners={}}function t(e){this._input=e.replace(/\n\r?/g,"\n"),this._line=1,this._col=1,this._cursor=0}function n(e,t,n){this.col=n,this.line=t,this.message=e}function r(e,t,n,r){this.col=n,this.line=t,this.text=e,this.type=r}function i(e,n){this._reader=e?new t(e.toString()):null,this._token=null,this._tokenData=n,this._lt=[],this._ltIndex=0,this._ltIndexCache=[]}e.prototype={constructor:e,addListener:function(e,t){this._listeners[e]||(this._listeners[e]=[]),this._listeners[e].push(t)},fire:function(e){typeof e=="string"&&(e={type:e}),typeof e.target!="undefined"&&(e.target=this);if(typeof e.type=="undefined")throw new Error("Event object missing 'type' property.");if(this._listeners[e.type]){var t=this._listeners[e.type].concat();for(var n=0,r=t.length;n<r;n++)t[n].call(this,e)}},removeListener:function(e,t){if(this._listeners[e]){var n=this._listeners[e];for(var r=0,i=n.length;r<i;r++)if(n[r]===t){n.splice(r,1);break}}}},t.prototype={constructor:t,getCol:function(){return this._col},getLine:function(){return this._line},eof:function(){return this._cursor==this._input.length},peek:function(e){var t=null;return e=typeof e=="undefined"?1:e,this._cursor<this._input.length&&(t=this._input.charAt(this._cursor+e-1)),t},read:function(){var e=null;return this._cursor<this._input.length&&(this._input.charAt(this._cursor)=="\n"?(this._line++,this._col=1):this._col++,e=this._input.charAt(this._cursor++)),e},mark:function(){this._bookmark={cursor:this._cursor,line:this._line,col:this._col}},reset:function(){this._bookmark&&(this._cursor=this._bookmark.cursor,this._line=this._bookmark.line,this._col=this._bookmark.col,delete this._bookmark)},readTo:function(e){var t="",n;while(t.length<e.length||t.lastIndexOf(e)!=t.length-e.length){n=this.read();if(!n)throw new Error('Expected "'+e+'" at line '+this._line+", col "+this._col+".");t+=n}return t},readWhile:function(e){var t="",n=this.read();while(n!==null&&e(n))t+=n,n=this.read();return t},readMatch:function(e){var t=this._input.substring(this._cursor),n=null;return typeof e=="string"?t.indexOf(e)===0&&(n=this.readCount(e.length)):e instanceof RegExp&&e.test(t)&&(n=this.readCount(RegExp.lastMatch.length)),n},readCount:function(e){var t="";while(e--)t+=this.read();return t}},n.prototype=new Error,r.fromToken=function(e){return new r(e.value,e.startLine,e.startCol)},r.prototype={constructor:r,valueOf:function(){return this.toString()},toString:function(){return this.text}},i.createTokenData=function(e){var t=[],n={},r=e.concat([]),i=0,s=r.length+1;r.UNKNOWN=-1,r.unshift({name:"EOF"});for(;i<s;i++)t.push(r[i].name),r[r[i].name]=i,r[i].text&&(n[r[i].text]=i);return r.name=function(e){return t[e]},r.type=function(e){return n[e]},r},i.prototype={constructor:i,match:function(e,t){e instanceof Array||(e=[e]);var n=this.get(t),r=0,i=e.length;while(r<i)if(n==e[r++])return!0;return this.unget(),!1},mustMatch:function(e,t){var r;e instanceof Array||(e=[e]);if(!this.match.apply(this,arguments))throw r=this.LT(1),new n("Expected "+this._tokenData[e[0]].name+" at line "+r.startLine+", col "+r.startCol+".",r.startLine,r.startCol)},advance:function(e,t){while(this.LA(0)!==0&&!this.match(e,t))this.get();return this.LA(0)},get:function(e){var t=this._tokenData,n=this._reader,r,i=0,s=t.length,o=!1,u,a;if(this._lt.length&&this._ltIndex>=0&&this._ltIndex<this._lt.length){i++,this._token=this._lt[this._ltIndex++],a=t[this._token.type];while(a.channel!==undefined&&e!==a.channel&&this._ltIndex<this._lt.length)this._token=this._lt[this._ltIndex++],a=t[this._token.type],i++;if((a.channel===undefined||e===a.channel)&&this._ltIndex<=this._lt.length)return this._ltIndexCache.push(i),this._token.type}return u=this._getToken(),u.type>-1&&!t[u.type].hide&&(u.channel=t[u.type].channel,this._token=u,this._lt.push(u),this._ltIndexCache.push(this._lt.length-this._ltIndex+i),this._lt.length>5&&this._lt.shift(),this._ltIndexCache.length>5&&this._ltIndexCache.shift(),this._ltIndex=this._lt.length),a=t[u.type],a&&(a.hide||a.channel!==undefined&&e!==a.channel)?this.get(e):u.type},LA:function(e){var t=e,n;if(e>0){if(e>5)throw new Error("Too much lookahead.");while(t)n=this.get(),t--;while(t<e)this.unget(),t++}else if(e<0){if(!this._lt[this._ltIndex+e])throw new Error("Too much lookbehind.");n=this._lt[this._ltIndex+e].type}else n=this._token.type;return n},LT:function(e){return this.LA(e),this._lt[this._ltIndex+e-1]},peek:function(){return this.LA(1)},token:function(){return this._token},tokenName:function(e){return e<0||e>this._tokenData.length?"UNKNOWN_TOKEN":this._tokenData[e].name},tokenType:function(e){return this._tokenData[e]||-1},unget:function(){if(!this._ltIndexCache.length)throw new Error("Too much lookahead.");this._ltIndex-=this._ltIndexCache.pop(),this._token=this._lt[this._ltIndex-1]}},parserlib.util={StringReader:t,SyntaxError:n,SyntaxUnit:r,EventTarget:e,TokenStreamBase:i}})(),function(){function Combinator(e,t,n){SyntaxUnit.call(this,e,t,n,Parser.COMBINATOR_TYPE),this.type="unknown",/^\s+$/.test(e)?this.type="descendant":e==">"?this.type="child":e=="+"?this.type="adjacent-sibling":e=="~"&&(this.type="sibling")}function MediaFeature(e,t){SyntaxUnit.call(this,"("+e+(t!==null?":"+t:"")+")",e.startLine,e.startCol,Parser.MEDIA_FEATURE_TYPE),this.name=e,this.value=t}function MediaQuery(e,t,n,r,i){SyntaxUnit.call(this,(e?e+" ":"")+(t?t:"")+(t&&n.length>0?" and ":"")+n.join(" and "),r,i,Parser.MEDIA_QUERY_TYPE),this.modifier=e,this.mediaType=t,this.features=n}function Parser(e){EventTarget.call(this),this.options=e||{},this._tokenStream=null}function PropertyName(e,t,n,r){SyntaxUnit.call(this,e,n,r,Parser.PROPERTY_NAME_TYPE),this.hack=t}function PropertyValue(e,t,n){SyntaxUnit.call(this,e.join(" "),t,n,Parser.PROPERTY_VALUE_TYPE),this.parts=e}function PropertyValueIterator(e){this._i=0,this._parts=e.parts,this._marks=[],this.value=e}function PropertyValuePart(text,line,col){SyntaxUnit.call(this,text,line,col,Parser.PROPERTY_VALUE_PART_TYPE),this.type="unknown";var temp;if(/^([+\-]?[\d\.]+)([a-z]+)$/i.test(text)){this.type="dimension",this.value=+RegExp.$1,this.units=RegExp.$2;switch(this.units.toLowerCase()){case"em":case"rem":case"ex":case"px":case"cm":case"mm":case"in":case"pt":case"pc":case"ch":this.type="length";break;case"deg":case"rad":case"grad":this.type="angle";break;case"ms":case"s":this.type="time";break;case"hz":case"khz":this.type="frequency";break;case"dpi":case"dpcm":this.type="resolution"}}else/^([+\-]?[\d\.]+)%$/i.test(text)?(this.type="percentage",this.value=+RegExp.$1):/^([+\-]?[\d\.]+)%$/i.test(text)?(this.type="percentage",this.value=+RegExp.$1):/^([+\-]?\d+)$/i.test(text)?(this.type="integer",this.value=+RegExp.$1):/^([+\-]?[\d\.]+)$/i.test(text)?(this.type="number",this.value=+RegExp.$1):/^#([a-f0-9]{3,6})/i.test(text)?(this.type="color",temp=RegExp.$1,temp.length==3?(this.red=parseInt(temp.charAt(0)+temp.charAt(0),16),this.green=parseInt(temp.charAt(1)+temp.charAt(1),16),this.blue=parseInt(temp.charAt(2)+temp.charAt(2),16)):(this.red=parseInt(temp.substring(0,2),16),this.green=parseInt(temp.substring(2,4),16),this.blue=parseInt(temp.substring(4,6),16))):/^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1,this.green=+RegExp.$2,this.blue=+RegExp.$3):/^rgb\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1*255/100,this.green=+RegExp.$2*255/100,this.blue=+RegExp.$3*255/100):/^rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1,this.green=+RegExp.$2,this.blue=+RegExp.$3,this.alpha=+RegExp.$4):/^rgba\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1*255/100,this.green=+RegExp.$2*255/100,this.blue=+RegExp.$3*255/100,this.alpha=+RegExp.$4):/^hsl\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(text)?(this.type="color",this.hue=+RegExp.$1,this.saturation=+RegExp.$2/100,this.lightness=+RegExp.$3/100):/^hsla\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.hue=+RegExp.$1,this.saturation=+RegExp.$2/100,this.lightness=+RegExp.$3/100,this.alpha=+RegExp.$4):/^url\(["']?([^\)"']+)["']?\)/i.test(text)?(this.type="uri",this.uri=RegExp.$1):/^([^\(]+)\(/i.test(text)?(this.type="function",this.name=RegExp.$1,this.value=text):/^["'][^"']*["']/.test(text)?(this.type="string",this.value=eval(text)):Colors[text.toLowerCase()]?(this.type="color",temp=Colors[text.toLowerCase()].substring(1),this.red=parseInt(temp.substring(0,2),16),this.green=parseInt(temp.substring(2,4),16),this.blue=parseInt(temp.substring(4,6),16)):/^[\,\/]$/.test(text)?(this.type="operator",this.value=text):/^[a-z\-\u0080-\uFFFF][a-z0-9\-\u0080-\uFFFF]*$/i.test(text)&&(this.type="identifier",this.value=text)}function Selector(e,t,n){SyntaxUnit.call(this,e.join(" "),t,n,Parser.SELECTOR_TYPE),this.parts=e,this.specificity=Specificity.calculate(this)}function SelectorPart(e,t,n,r,i){SyntaxUnit.call(this,n,r,i,Parser.SELECTOR_PART_TYPE),this.elementName=e,this.modifiers=t}function SelectorSubPart(e,t,n,r){SyntaxUnit.call(this,e,n,r,Parser.SELECTOR_SUB_PART_TYPE),this.type=t,this.args=[]}function Specificity(e,t,n,r){this.a=e,this.b=t,this.c=n,this.d=r}function isHexDigit(e){return e!==null&&h.test(e)}function isDigit(e){return e!==null&&/\d/.test(e)}function isWhitespace(e){return e!==null&&/\s/.test(e)}function isNewLine(e){return e!==null&&nl.test(e)}function isNameStart(e){return e!==null&&/[a-z_\u0080-\uFFFF\\]/i.test(e)}function isNameChar(e){return e!==null&&(isNameStart(e)||/[0-9\-\\]/.test(e))}function isIdentStart(e){return e!==null&&(isNameStart(e)||/\-\\/.test(e))}function mix(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function TokenStream(e){TokenStreamBase.call(this,e,Tokens)}function ValidationError(e,t,n){this.col=n,this.line=t,this.message=e}var EventTarget=parserlib.util.EventTarget,TokenStreamBase=parserlib.util.TokenStreamBase,StringReader=parserlib.util.StringReader,SyntaxError=parserlib.util.SyntaxError,SyntaxUnit=parserlib.util.SyntaxUnit,Colors={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32",activeBorder:"Active window border.",activecaption:"Active window caption.",appworkspace:"Background color of multiple document interface.",background:"Desktop background.",buttonface:"The face background color for 3-D elements that appear 3-D due to one layer of surrounding border.",buttonhighlight:"The color of the border facing the light source for 3-D elements that appear 3-D due to one layer of surrounding border.",buttonshadow:"The color of the border away from the light source for 3-D elements that appear 3-D due to one layer of surrounding border.",buttontext:"Text on push buttons.",captiontext:"Text in caption, size box, and scrollbar arrow box.",graytext:"Grayed (disabled) text. This color is set to #000 if the current display driver does not support a solid gray color.",highlight:"Item(s) selected in a control.",highlighttext:"Text of item(s) selected in a control.",inactiveborder:"Inactive window border.",inactivecaption:"Inactive window caption.",inactivecaptiontext:"Color of text in an inactive caption.",infobackground:"Background color for tooltip controls.",infotext:"Text color for tooltip controls.",menu:"Menu background.",menutext:"Text in menus.",scrollbar:"Scroll bar gray area.",threeddarkshadow:"The color of the darker (generally outer) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedface:"The face background color for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedhighlight:"The color of the lighter (generally outer) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedlightshadow:"The color of the darker (generally inner) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedshadow:"The color of the lighter (generally inner) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",window:"Window background.",windowframe:"Window frame.",windowtext:"Text in windows."};Combinator.prototype=new SyntaxUnit,Combinator.prototype.constructor=Combinator,MediaFeature.prototype=new SyntaxUnit,MediaFeature.prototype.constructor=MediaFeature,MediaQuery.prototype=new SyntaxUnit,MediaQuery.prototype.constructor=MediaQuery,Parser.DEFAULT_TYPE=0,Parser.COMBINATOR_TYPE=1,Parser.MEDIA_FEATURE_TYPE=2,Parser.MEDIA_QUERY_TYPE=3,Parser.PROPERTY_NAME_TYPE=4,Parser.PROPERTY_VALUE_TYPE=5,Parser.PROPERTY_VALUE_PART_TYPE=6,Parser.SELECTOR_TYPE=7,Parser.SELECTOR_PART_TYPE=8,Parser.SELECTOR_SUB_PART_TYPE=9,Parser.prototype=function(){var e=new EventTarget,t,n={constructor:Parser,DEFAULT_TYPE:0,COMBINATOR_TYPE:1,MEDIA_FEATURE_TYPE:2,MEDIA_QUERY_TYPE:3,PROPERTY_NAME_TYPE:4,PROPERTY_VALUE_TYPE:5,PROPERTY_VALUE_PART_TYPE:6,SELECTOR_TYPE:7,SELECTOR_PART_TYPE:8,SELECTOR_SUB_PART_TYPE:9,_stylesheet:function(){var e=this._tokenStream,t=null,n,r,i;this.fire("startstylesheet"),this._charset(),this._skipCruft();while(e.peek()==Tokens.IMPORT_SYM)this._import(),this._skipCruft();while(e.peek()==Tokens.NAMESPACE_SYM)this._namespace(),this._skipCruft();i=e.peek();while(i>Tokens.EOF){try{switch(i){case Tokens.MEDIA_SYM:this._media(),this._skipCruft();break;case Tokens.PAGE_SYM:this._page(),this._skipCruft();break;case Tokens.FONT_FACE_SYM:this._font_face(),this._skipCruft();break;case Tokens.KEYFRAMES_SYM:this._keyframes(),this._skipCruft();break;case Tokens.UNKNOWN_SYM:e.get();if(!!this.options.strict)throw new SyntaxError("Unknown @ rule.",e.LT(0).startLine,e.LT(0).startCol);this.fire({type:"error",error:null,message:"Unknown @ rule: "+e.LT(0).value+".",line:e.LT(0).startLine,col:e.LT(0).startCol}),n=0;while(e.advance([Tokens.LBRACE,Tokens.RBRACE])==Tokens.LBRACE)n++;while(n)e.advance([Tokens.RBRACE]),n--;break;case Tokens.S:this._readWhitespace();break;default:if(!this._ruleset())switch(i){case Tokens.CHARSET_SYM:throw r=e.LT(1),this._charset(!1),new SyntaxError("@charset not allowed here.",r.startLine,r.startCol);case Tokens.IMPORT_SYM:throw r=e.LT(1),this._import(!1),new SyntaxError("@import not allowed here.",r.startLine,r.startCol);case Tokens.NAMESPACE_SYM:throw r=e.LT(1),this._namespace(!1),new SyntaxError("@namespace not allowed here.",r.startLine,r.startCol);default:e.get(),this._unexpectedToken(e.token())}}}catch(s){if(!(s instanceof SyntaxError&&!this.options.strict))throw s;this.fire({type:"error",error:s,message:s.message,line:s.line,col:s.col})}i=e.peek()}i!=Tokens.EOF&&this._unexpectedToken(e.token()),this.fire("endstylesheet")},_charset:function(e){var t=this._tokenStream,n,r,i,s;t.match(Tokens.CHARSET_SYM)&&(i=t.token().startLine,s=t.token().startCol,this._readWhitespace(),t.mustMatch(Tokens.STRING),r=t.token(),n=r.value,this._readWhitespace(),t.mustMatch(Tokens.SEMICOLON),e!==!1&&this.fire({type:"charset",charset:n,line:i,col:s}))},_import:function(e){var t=this._tokenStream,n,r,i,s=[];t.mustMatch(Tokens.IMPORT_SYM),i=t.token(),this._readWhitespace(),t.mustMatch([Tokens.STRING,Tokens.URI]),r=t.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/,"$1"),this._readWhitespace(),s=this._media_query_list(),t.mustMatch(Tokens.SEMICOLON),this._readWhitespace(),e!==!1&&this.fire({type:"import",uri:r,media:s,line:i.startLine,col:i.startCol})},_namespace:function(e){var t=this._tokenStream,n,r,i,s;t.mustMatch(Tokens.NAMESPACE_SYM),n=t.token().startLine,r=t.token().startCol,this._readWhitespace(),t.match(Tokens.IDENT)&&(i=t.token().value,this._readWhitespace()),t.mustMatch([Tokens.STRING,Tokens.URI]),s=t.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/,"$1"),this._readWhitespace(),t.mustMatch(Tokens.SEMICOLON),this._readWhitespace(),e!==!1&&this.fire({type:"namespace",prefix:i,uri:s,line:n,col:r})},_media:function(){var e=this._tokenStream,t,n,r;e.mustMatch(Tokens.MEDIA_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),r=this._media_query_list(),e.mustMatch(Tokens.LBRACE),this._readWhitespace(),this.fire({type:"startmedia",media:r,line:t,col:n});for(;;)if(e.peek()==Tokens.PAGE_SYM)this._page();else if(!this._ruleset())break;e.mustMatch(Tokens.RBRACE),this._readWhitespace(),this.fire({type:"endmedia",media:r,line:t,col:n})},_media_query_list:function(){var e=this._tokenStream,t=[];this._readWhitespace(),(e.peek()==Tokens.IDENT||e.peek()==Tokens.LPAREN)&&t.push(this._media_query());while(e.match(Tokens.COMMA))this._readWhitespace(),t.push(this._media_query());return t},_media_query:function(){var e=this._tokenStream,t=null,n=null,r=null,i=[];e.match(Tokens.IDENT)&&(n=e.token().value.toLowerCase(),n!="only"&&n!="not"?(e.unget(),n=null):r=e.token()),this._readWhitespace(),e.peek()==Tokens.IDENT?(t=this._media_type(),r===null&&(r=e.token())):e.peek()==Tokens.LPAREN&&(r===null&&(r=e.LT(1)),i.push(this._media_expression()));if(t===null&&i.length===0)return null;this._readWhitespace();while(e.match(Tokens.IDENT))e.token().value.toLowerCase()!="and"&&this._unexpectedToken(e.token()),this._readWhitespace(),i.push(this._media_expression());return new MediaQuery(n,t,i,r.startLine,r.startCol)},_media_type:function(){return this._media_feature()},_media_expression:function(){var e=this._tokenStream,t=null,n,r=null;return e.mustMatch(Tokens.LPAREN),t=this._media_feature(),this._readWhitespace(),e.match(Tokens.COLON)&&(this._readWhitespace(),n=e.LT(1),r=this._expression()),e.mustMatch(Tokens.RPAREN),this._readWhitespace(),new MediaFeature(t,r?new SyntaxUnit(r,n.startLine,n.startCol):null)},_media_feature:function(){var e=this._tokenStream;return e.mustMatch(Tokens.IDENT),SyntaxUnit.fromToken(e.token())},_page:function(){var e=this._tokenStream,t,n,r=null,i=null;e.mustMatch(Tokens.PAGE_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),e.match(Tokens.IDENT)&&(r=e.token().value,r.toLowerCase()==="auto"&&this._unexpectedToken(e.token())),e.peek()==Tokens.COLON&&(i=this._pseudo_page()),this._readWhitespace(),this.fire({type:"startpage",id:r,pseudo:i,line:t,col:n}),this._readDeclarations(!0,!0),this.fire({type:"endpage",id:r,pseudo:i,line:t,col:n})},_margin:function(){var e=this._tokenStream,t,n,r=this._margin_sym();return r?(t=e.token().startLine,n=e.token().startCol,this.fire({type:"startpagemargin",margin:r,line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endpagemargin",margin:r,line:t,col:n}),!0):!1},_margin_sym:function(){var e=this._tokenStream;return e.match([Tokens.TOPLEFTCORNER_SYM,Tokens.TOPLEFT_SYM,Tokens.TOPCENTER_SYM,Tokens.TOPRIGHT_SYM,Tokens.TOPRIGHTCORNER_SYM,Tokens.BOTTOMLEFTCORNER_SYM,Tokens.BOTTOMLEFT_SYM,Tokens.BOTTOMCENTER_SYM,Tokens.BOTTOMRIGHT_SYM,Tokens.BOTTOMRIGHTCORNER_SYM,Tokens.LEFTTOP_SYM,Tokens.LEFTMIDDLE_SYM,Tokens.LEFTBOTTOM_SYM,Tokens.RIGHTTOP_SYM,Tokens.RIGHTMIDDLE_SYM,Tokens.RIGHTBOTTOM_SYM])?SyntaxUnit.fromToken(e.token()):null},_pseudo_page:function(){var e=this._tokenStream;return e.mustMatch(Tokens.COLON),e.mustMatch(Tokens.IDENT),e.token().value},_font_face:function(){var e=this._tokenStream,t,n;e.mustMatch(Tokens.FONT_FACE_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),this.fire({type:"startfontface",line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endfontface",line:t,col:n})},_operator:function(e){var t=this._tokenStream,n=null;if(t.match([Tokens.SLASH,Tokens.COMMA])||e&&t.match([Tokens.PLUS,Tokens.STAR,Tokens.MINUS]))n=t.token(),this._readWhitespace();return n?PropertyValuePart.fromToken(n):null},_combinator:function(){var e=this._tokenStream,t=null,n;return e.match([Tokens.PLUS,Tokens.GREATER,Tokens.TILDE])&&(n=e.token(),t=new Combinator(n.value,n.startLine,n.startCol),this._readWhitespace()),t},_unary_operator:function(){var e=this._tokenStream;return e.match([Tokens.MINUS,Tokens.PLUS])?e.token().value:null},_property:function(){var e=this._tokenStream,t=null,n=null,r,i,s,o;return e.peek()==Tokens.STAR&&this.options.starHack&&(e.get(),i=e.token(),n=i.value,s=i.startLine,o=i.startCol),e.match(Tokens.IDENT)&&(i=e.token(),r=i.value,r.charAt(0)=="_"&&this.options.underscoreHack&&(n="_",r=r.substring(1)),t=new PropertyName(r,n,s||i.startLine,o||i.startCol),this._readWhitespace()),t},_ruleset:function(){var e=this._tokenStream,t,n;try{n=this._selectors_group()}catch(r){if(r instanceof SyntaxError&&!this.options.strict){this.fire({type:"error",error:r,message:r.message,line:r.line,col:r.col}),t=e.advance([Tokens.RBRACE]);if(t!=Tokens.RBRACE)throw r;return!0}throw r}return n&&(this.fire({type:"startrule",selectors:n,line:n[0].line,col:n[0].col}),this._readDeclarations(!0),this.fire({type:"endrule",selectors:n,line:n[0].line,col:n[0].col})),n},_selectors_group:function(){var e=this._tokenStream,t=[],n;n=this._selector();if(n!==null){t.push(n);while(e.match(Tokens.COMMA))this._readWhitespace(),n=this._selector(),n!==null?t.push(n):this._unexpectedToken(e.LT(1))}return t.length?t:null},_selector:function(){var e=this._tokenStream,t=[],n=null,r=null,i=null;n=this._simple_selector_sequence();if(n===null)return null;t.push(n);do{r=this._combinator();if(r!==null)t.push(r),n=this._simple_selector_sequence(),n===null?this._unexpectedToken(e.LT(1)):t.push(n);else{if(!this._readWhitespace())break;i=new Combinator(e.token().value,e.token().startLine,e.token().startCol),r=this._combinator(),n=this._simple_selector_sequence(),n===null?r!==null&&this._unexpectedToken(e.LT(1)):(r!==null?t.push(r):t.push(i),t.push(n))}}while(!0);return new Selector(t,t[0].line,t[0].col)},_simple_selector_sequence:function(){var e=this._tokenStream,t=null,n=[],r="",i=[function(){return e.match(Tokens.HASH)?new SelectorSubPart(e.token().value,"id",e.token().startLine,e.token().startCol):null},this._class,this._attrib,this._pseudo,this._negation],s=0,o=i.length,u=null,a=!1,f,l;f=e.LT(1).startLine,l=e.LT(1).startCol,t=this._type_selector(),t||(t=this._universal()),t!==null&&(r+=t);for(;;){if(e.peek()===Tokens.S)break;while(s<o&&u===null)u=i[s++].call(this);if(u===null){if(r==="")return null;break}s=0,n.push(u),r+=u.toString(),u=null}return r!==""?new SelectorPart(t,n,r,f,l):null},_type_selector:function(){var e=this._tokenStream,t=this._namespace_prefix(),n=this._element_name();return n?(t&&(n.text=t+n.text,n.col-=t.length),n):(t&&(e.unget(),t.length>1&&e.unget()),null)},_class:function(){var e=this._tokenStream,t;return e.match(Tokens.DOT)?(e.mustMatch(Tokens.IDENT),t=e.token(),new SelectorSubPart("."+t.value,"class",t.startLine,t.startCol-1)):null},_element_name:function(){var e=this._tokenStream,t;return e.match(Tokens.IDENT)?(t=e.token(),new SelectorSubPart(t.value,"elementName",t.startLine,t.startCol)):null},_namespace_prefix:function(){var e=this._tokenStream,t="";if(e.LA(1)===Tokens.PIPE||e.LA(2)===Tokens.PIPE)e.match([Tokens.IDENT,Tokens.STAR])&&(t+=e.token().value),e.mustMatch(Tokens.PIPE),t+="|";return t.length?t:null},_universal:function(){var e=this._tokenStream,t="",n;return n=this._namespace_prefix(),n&&(t+=n),e.match(Tokens.STAR)&&(t+="*"),t.length?t:null},_attrib:function(){var e=this._tokenStream,t=null,n,r;return e.match(Tokens.LBRACKET)?(r=e.token(),t=r.value,t+=this._readWhitespace(),n=this._namespace_prefix(),n&&(t+=n),e.mustMatch(Tokens.IDENT),t+=e.token().value,t+=this._readWhitespace(),e.match([Tokens.PREFIXMATCH,Tokens.SUFFIXMATCH,Tokens.SUBSTRINGMATCH,Tokens.EQUALS,Tokens.INCLUDES,Tokens.DASHMATCH])&&(t+=e.token().value,t+=this._readWhitespace(),e.mustMatch([Tokens.IDENT,Tokens.STRING]),t+=e.token().value,t+=this._readWhitespace()),e.mustMatch(Tokens.RBRACKET),new SelectorSubPart(t+"]","attribute",r.startLine,r.startCol)):null},_pseudo:function(){var e=this._tokenStream,t=null,n=":",r,i;return e.match(Tokens.COLON)&&(e.match(Tokens.COLON)&&(n+=":"),e.match(Tokens.IDENT)?(t=e.token().value,r=e.token().startLine,i=e.token().startCol-n.length):e.peek()==Tokens.FUNCTION&&(r=e.LT(1).startLine,i=e.LT(1).startCol-n.length,t=this._functional_pseudo()),t&&(t=new SelectorSubPart(n+t,"pseudo",r,i))),t},_functional_pseudo:function(){var e=this._tokenStream,t=null;return e.match(Tokens.FUNCTION)&&(t=e.token().value,t+=this._readWhitespace(),t+=this._expression(),e.mustMatch(Tokens.RPAREN),t+=")"),t},_expression:function(){var e=this._tokenStream,t="";while(e.match([Tokens.PLUS,Tokens.MINUS,Tokens.DIMENSION,Tokens.NUMBER,Tokens.STRING,Tokens.IDENT,Tokens.LENGTH,Tokens.FREQ,Tokens.ANGLE,Tokens.TIME,Tokens.RESOLUTION,Tokens.SLASH]))t+=e.token().value,t+=this._readWhitespace();return t.length?t:null},_negation:function(){var e=this._tokenStream,t,n,r="",i,s=null;return e.match(Tokens.NOT)&&(r=e.token().value,t=e.token().startLine,n=e.token().startCol,r+=this._readWhitespace(),i=this._negation_arg(),r+=i,r+=this._readWhitespace(),e.match(Tokens.RPAREN),r+=e.token().value,s=new SelectorSubPart(r,"not",t,n),s.args.push(i)),s},_negation_arg:function(){var e=this._tokenStream,t=[this._type_selector,this._universal,function(){return e.match(Tokens.HASH)?new SelectorSubPart(e.token().value,"id",e.token().startLine,e.token().startCol):null},this._class,this._attrib,this._pseudo],n=null,r=0,i=t.length,s,o,u,a;o=e.LT(1).startLine,u=e.LT(1).startCol;while(r<i&&n===null)n=t[r].call(this),r++;return n===null&&this._unexpectedToken(e.LT(1)),n.type=="elementName"?a=new SelectorPart(n,[],n.toString(),o,u):a=new SelectorPart(null,[n],n.toString(),o,u),a},_declaration:function(){var e=this._tokenStream,t=null,n=null,r=null,i=null,s=null,o="";t=this._property();if(t!==null){e.mustMatch(Tokens.COLON),this._readWhitespace(),n=this._expr(),(!n||n.length===0)&&this._unexpectedToken(e.LT(1)),r=this._prio(),o=t.toString();if(this.options.starHack&&t.hack=="*"||this.options.underscoreHack&&t.hack=="_")o=t.text;try{this._validateProperty(o,n)}catch(u){s=u}return this.fire({type:"property",property:t,value:n,important:r,line:t.line,col:t.col,invalid:s}),!0}return!1},_prio:function(){var e=this._tokenStream,t=e.match(Tokens.IMPORTANT_SYM);return this._readWhitespace(),t},_expr:function(e){var t=this._tokenStream,n=[],r=null,i=null;r=this._term();if(r!==null){n.push(r);do{i=this._operator(e),i&&n.push(i),r=this._term();if(r===null)break;n.push(r)}while(!0)}return n.length>0?new PropertyValue(n,n[0].line,n[0].col):null},_term:function(){var e=this._tokenStream,t=null,n=null,r,i,s;return t=this._unary_operator(),t!==null&&(i=e.token().startLine,s=e.token().startCol),e.peek()==Tokens.IE_FUNCTION&&this.options.ieFilters?(n=this._ie_function(),t===null&&(i=e.token().startLine,s=e.token().startCol)):e.match([Tokens.NUMBER,Tokens.PERCENTAGE,Tokens.LENGTH,Tokens.ANGLE,Tokens.TIME,Tokens.FREQ,Tokens.STRING,Tokens.IDENT,Tokens.URI,Tokens.UNICODE_RANGE])?(n=e.token().value,t===null&&(i=e.token().startLine,s=e.token().startCol),this._readWhitespace()):(r=this._hexcolor(),r===null?(t===null&&(i=e.LT(1).startLine,s=e.LT(1).startCol),n===null&&(e.LA(3)==Tokens.EQUALS&&this.options.ieFilters?n=this._ie_function():n=this._function())):(n=r.value,t===null&&(i=r.startLine,s=r.startCol))),n!==null?new PropertyValuePart(t!==null?t+n:n,i,s):null},_function:function(){var e=this._tokenStream,t=null,n=null,r;if(e.match(Tokens.FUNCTION)){t=e.token().value,this._readWhitespace(),n=this._expr(!0),t+=n;if(this.options.ieFilters&&e.peek()==Tokens.EQUALS)do{this._readWhitespace()&&(t+=e.token().value),e.LA(0)==Tokens.COMMA&&(t+=e.token().value),e.match(Tokens.IDENT),t+=e.token().value,e.match(Tokens.EQUALS),t+=e.token().value,r=e.peek();while(r!=Tokens.COMMA&&r!=Tokens.S&&r!=Tokens.RPAREN)e.get(),t+=e.token().value,r=e.peek()}while(e.match([Tokens.COMMA,Tokens.S]));e.match(Tokens.RPAREN),t+=")",this._readWhitespace()}return t},_ie_function:function(){var e=this._tokenStream,t=null,n=null,r;if(e.match([Tokens.IE_FUNCTION,Tokens.FUNCTION])){t=e.token().value;do{this._readWhitespace()&&(t+=e.token().value),e.LA(0)==Tokens.COMMA&&(t+=e.token().value),e.match(Tokens.IDENT),t+=e.token().value,e.match(Tokens.EQUALS),t+=e.token().value,r=e.peek();while(r!=Tokens.COMMA&&r!=Tokens.S&&r!=Tokens.RPAREN)e.get(),t+=e.token().value,r=e.peek()}while(e.match([Tokens.COMMA,Tokens.S]));e.match(Tokens.RPAREN),t+=")",this._readWhitespace()}return t},_hexcolor:function(){var e=this._tokenStream,t=null,n;if(e.match(Tokens.HASH)){t=e.token(),n=t.value;if(!/#[a-f0-9]{3,6}/i.test(n))throw new SyntaxError("Expected a hex color but found '"+n+"' at line "+t.startLine+", col "+t.startCol+".",t.startLine,t.startCol);this._readWhitespace()}return t},_keyframes:function(){var e=this._tokenStream,t,n,r,i="";e.mustMatch(Tokens.KEYFRAMES_SYM),t=e.token(),/^@\-([^\-]+)\-/.test(t.value)&&(i=RegExp.$1),this._readWhitespace(),r=this._keyframe_name(),this._readWhitespace(),e.mustMatch(Tokens.LBRACE),this.fire({type:"startkeyframes",name:r,prefix:i,line:t.startLine,col:t.startCol}),this._readWhitespace(),n=e.peek();while(n==Tokens.IDENT||n==Tokens.PERCENTAGE)this._keyframe_rule(),this._readWhitespace(),n=e.peek();this.fire({type:"endkeyframes",name:r,prefix:i,line:t.startLine,col:t.startCol}),this._readWhitespace(),e.mustMatch(Tokens.RBRACE)},_keyframe_name:function(){var e=this._tokenStream,t;return e.mustMatch([Tokens.IDENT,Tokens.STRING]),SyntaxUnit.fromToken(e.token())},_keyframe_rule:function(){var e=this._tokenStream,t,n=this._key_list();this.fire({type:"startkeyframerule",keys:n,line:n[0].line,col:n[0].col}),this._readDeclarations(!0),this.fire({type:"endkeyframerule",keys:n,line:n[0].line,col:n[0].col})},_key_list:function(){var e=this._tokenStream,t,n,r=[];r.push(this._key()),this._readWhitespace();while(e.match(Tokens.COMMA))this._readWhitespace(),r.push(this._key()),this._readWhitespace();return r},_key:function(){var e=this._tokenStream,t;if(e.match(Tokens.PERCENTAGE))return SyntaxUnit.fromToken(e.token());if(e.match(Tokens.IDENT)){t=e.token();if(/from|to/i.test(t.value))return SyntaxUnit.fromToken(t);e.unget()}this._unexpectedToken(e.LT(1))},_skipCruft:function(){while(this._tokenStream.match([Tokens.S,Tokens.CDO,Tokens.CDC]));},_readDeclarations:function(e,t){var n=this._tokenStream,r;this._readWhitespace(),e&&n.mustMatch(Tokens.LBRACE),this._readWhitespace();try{for(;;){if(!(n.match(Tokens.SEMICOLON)||t&&this._margin())){if(!this._declaration())break;if(!n.match(Tokens.SEMICOLON))break}this._readWhitespace()}n.mustMatch(Tokens.RBRACE),this._readWhitespace()}catch(i){if(!(i instanceof SyntaxError&&!this.options.strict))throw i;this.fire({type:"error",error:i,message:i.message,line:i.line,col:i.col}),r=n.advance([Tokens.SEMICOLON,Tokens.RBRACE]);if(r==Tokens.SEMICOLON)this._readDeclarations(!1,t);else if(r!=Tokens.RBRACE)throw i}},_readWhitespace:function(){var e=this._tokenStream,t="";while(e.match(Tokens.S))t+=e.token().value;return t},_unexpectedToken:function(e){throw new SyntaxError("Unexpected token '"+e.value+"' at line "+e.startLine+", col "+e.startCol+".",e.startLine,e.startCol)},_verifyEnd:function(){this._tokenStream.LA(1)!=Tokens.EOF&&this._unexpectedToken(this._tokenStream.LT(1))},_validateProperty:function(e,t){Validation.validate(e,t)},parse:function(e){this._tokenStream=new TokenStream(e,Tokens),this._stylesheet()},parseStyleSheet:function(e){return this.parse(e)},parseMediaQuery:function(e){this._tokenStream=new TokenStream(e,Tokens);var t=this._media_query();return this._verifyEnd(),t},parsePropertyValue:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._expr();return this._readWhitespace(),this._verifyEnd(),t},parseRule:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._ruleset();return this._readWhitespace(),this._verifyEnd(),t},parseSelector:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._selector();return this._readWhitespace(),this._verifyEnd(),t},parseStyleAttribute:function(e){e+="}",this._tokenStream=new TokenStream(e,Tokens),this._readDeclarations()}};for(t in n)n.hasOwnProperty(t)&&(e[t]=n[t]);return e}();var Properties={"alignment-adjust":"auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical | <percentage> | <length>","alignment-baseline":"baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical",animation:1,"animation-delay":{multi:"<time>",comma:!0},"animation-direction":{multi:"normal | alternate",comma:!0},"animation-duration":{multi:"<time>",comma:!0},"animation-iteration-count":{multi:"<number> | infinite",comma:!0},"animation-name":{multi:"none | <ident>",comma:!0},"animation-play-state":{multi:"running | paused",comma:!0},"animation-timing-function":1,"-moz-animation-delay":{multi:"<time>",comma:!0},"-moz-animation-direction":{multi:"normal | alternate",comma:!0},"-moz-animation-duration":{multi:"<time>",comma:!0},"-moz-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-moz-animation-name":{multi:"none | <ident>",comma:!0},"-moz-animation-play-state":{multi:"running | paused",comma:!0},"-ms-animation-delay":{multi:"<time>",comma:!0},"-ms-animation-direction":{multi:"normal | alternate",comma:!0},"-ms-animation-duration":{multi:"<time>",comma:!0},"-ms-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-ms-animation-name":{multi:"none | <ident>",comma:!0},"-ms-animation-play-state":{multi:"running | paused",comma:!0},"-webkit-animation-delay":{multi:"<time>",comma:!0},"-webkit-animation-direction":{multi:"normal | alternate",comma:!0},"-webkit-animation-duration":{multi:"<time>",comma:!0},"-webkit-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-webkit-animation-name":{multi:"none | <ident>",comma:!0},"-webkit-animation-play-state":{multi:"running | paused",comma:!0},"-o-animation-delay":{multi:"<time>",comma:!0},"-o-animation-direction":{multi:"normal | alternate",comma:!0},"-o-animation-duration":{multi:"<time>",comma:!0},"-o-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-o-animation-name":{multi:"none | <ident>",comma:!0},"-o-animation-play-state":{multi:"running | paused",comma:!0},appearance:"icon | window | desktop | workspace | document | tooltip | dialog | button | push-button | hyperlink | radio-button | checkbox | menu-item | tab | menu | menubar | pull-down-menu | pop-up-menu | list-menu | radio-group | checkbox-group | outline-tree | range | field | combo-box | signature | password | normal | none | inherit",azimuth:function(e){var t="<angle> | leftwards | rightwards | inherit",n="left-side | far-left | left | center-left | center | center-right | right | far-right | right-side",r=!1,i=!1,s;ValidationTypes.isAny(e,t)||(ValidationTypes.isAny(e,"behind")&&(r=!0,i=!0),ValidationTypes.isAny(e,n)&&(i=!0,r||ValidationTypes.isAny(e,"behind")));if(e.hasNext())throw s=e.next(),i?new ValidationError("Expected end of value but found '"+s+"'.",s.line,s.col):new ValidationError("Expected (<'azimuth'>) but found '"+s+"'.",s.line,s.col)},"backface-visibility":"visible | hidden",background:1,"background-attachment":{multi:"<attachment>",comma:!0},"background-clip":{multi:"<box>",comma:!0},"background-color":"<color> | inherit","background-image":{multi:"<bg-image>",comma:!0},"background-origin":{multi:"<box>",comma:!0},"background-position":{multi:"<bg-position>",comma:!0},"background-repeat":{multi:"<repeat-style>"},"background-size":{multi:"<bg-size>",comma:!0},"baseline-shift":"baseline | sub | super | <percentage> | <length>",behavior:1,binding:1,bleed:"<length>","bookmark-label":"<content> | <attr> | <string>","bookmark-level":"none | <integer>","bookmark-state":"open | closed","bookmark-target":"none | <uri> | <attr>",border:"<border-width> || <border-style> || <color>","border-bottom":"<border-width> || <border-style> || <color>","border-bottom-color":"<color>","border-bottom-left-radius":"<x-one-radius>","border-bottom-right-radius":"<x-one-radius>","border-bottom-style":"<border-style>","border-bottom-width":"<border-width>","border-collapse":"collapse | separate | inherit","border-color":{multi:"<color> | inherit",max:4},"border-image":1,"border-image-outset":{multi:"<length> | <number>",max:4},"border-image-repeat":{multi:"stretch | repeat | round",max:2},"border-image-slice":function(e){var t=!1,n="<number> | <percentage>",r=!1,i=0,s=4,o;ValidationTypes.isAny(e,"fill")&&(r=!0,t=!0);while(e.hasNext()&&i<s){t=ValidationTypes.isAny(e,n);if(!t)break;i++}r?t=!0:ValidationTypes.isAny(e,"fill");if(e.hasNext())throw o=e.next(),t?new ValidationError("Expected end of value but found '"+o+"'.",o.line,o.col):new ValidationError("Expected ([<number> | <percentage>]{1,4} && fill?) but found '"+o+"'.",o.line,o.col)},"border-image-source":"<image> | none","border-image-width":{multi:"<length> | <percentage> | <number> | auto",max:4},"border-left":"<border-width> || <border-style> || <color>","border-left-color":"<color> | inherit","border-left-style":"<border-style>","border-left-width":"<border-width>","border-radius":function(e){var t=!1,n="<length> | <percentage>",r=!1,i=!1,s=0,o=8,u;while(e.hasNext()&&s<o){t=ValidationTypes.isAny(e,n);if(!t){if(!(e.peek()=="/"&&s>0&&!r))break;r=!0,o=s+5,e.next()}s++}if(e.hasNext())throw u=e.next(),t?new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col):new ValidationError("Expected (<'border-radius'>) but found '"+u+"'.",u.line,u.col)},"border-right":"<border-width> || <border-style> || <color>","border-right-color":"<color> | inherit","border-right-style":"<border-style>","border-right-width":"<border-width>","border-spacing":{multi:"<length> | inherit",max:2},"border-style":{multi:"<border-style>",max:4},"border-top":"<border-width> || <border-style> || <color>","border-top-color":"<color> | inherit","border-top-left-radius":"<x-one-radius>","border-top-right-radius":"<x-one-radius>","border-top-style":"<border-style>","border-top-width":"<border-width>","border-width":{multi:"<border-width>",max:4},bottom:"<margin-width> | inherit","box-align":"start | end | center | baseline | stretch","box-decoration-break":"slice |clone","box-direction":"normal | reverse | inherit","box-flex":"<number>","box-flex-group":"<integer>","box-lines":"single | multiple","box-ordinal-group":"<integer>","box-orient":"horizontal | vertical | inline-axis | block-axis | inherit","box-pack":"start | end | center | justify","box-shadow":function(e){var t=!1,n;if(!ValidationTypes.isAny(e,"none"))Validation.multiProperty("<shadow>",e,!0,Infinity);else if(e.hasNext())throw n=e.next(),new ValidationError("Expected end of value but found '"+n+"'.",n.line,n.col)},"box-sizing":"content-box | border-box | inherit","break-after":"auto | always | avoid | left | right | page | column | avoid-page | avoid-column","break-before":"auto | always | avoid | left | right | page | column | avoid-page | avoid-column","break-inside":"auto | avoid | avoid-page | avoid-column","caption-side":"top | bottom | inherit",clear:"none | right | left | both | inherit",clip:1,color:"<color> | inherit","color-profile":1,"column-count":"<integer> | auto","column-fill":"auto | balance","column-gap":"<length> | normal","column-rule":"<border-width> || <border-style> || <color>","column-rule-color":"<color>","column-rule-style":"<border-style>","column-rule-width":"<border-width>","column-span":"none | all","column-width":"<length> | auto",columns:1,content:1,"counter-increment":1,"counter-reset":1,crop:"<shape> | auto",cue:"cue-after | cue-before | inherit","cue-after":1,"cue-before":1,cursor:1,direction:"ltr | rtl | inherit",display:"inline | block | list-item | inline-block | table | inline-table | table-row-group | table-header-group | table-footer-group | table-row | table-column-group | table-column | table-cell | table-caption | box | inline-box | grid | inline-grid | none | inherit | -moz-box | -moz-inline-block | -moz-inline-box | -moz-inline-grid | -moz-inline-stack | -moz-inline-table | -moz-grid | -moz-grid-group | -moz-grid-line | -moz-groupbox | -moz-deck | -moz-popup | -moz-stack | -moz-marker","dominant-baseline":1,"drop-initial-after-adjust":"central | middle | after-edge | text-after-edge | ideographic | alphabetic | mathematical | <percentage> | <length>","drop-initial-after-align":"baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical","drop-initial-before-adjust":"before-edge | text-before-edge | central | middle | hanging | mathematical | <percentage> | <length>","drop-initial-before-align":"caps-height | baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical","drop-initial-size":"auto | line | <length> | <percentage>","drop-initial-value":"initial | <integer>",elevation:"<angle> | below | level | above | higher | lower | inherit","empty-cells":"show | hide | inherit",filter:1,fit:"fill | hidden | meet | slice","fit-position":1,"float":"left | right | none | inherit","float-offset":1,font:1,"font-family":1,"font-size":"<absolute-size> | <relative-size> | <length> | <percentage> | inherit","font-size-adjust":"<number> | none | inherit","font-stretch":"normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | inherit","font-style":"normal | italic | oblique | inherit","font-variant":"normal | small-caps | inherit","font-weight":"normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | inherit","grid-cell-stacking":"columns | rows | layer","grid-column":1,"grid-columns":1,"grid-column-align":"start | end | center | stretch","grid-column-sizing":1,"grid-column-span":"<integer>","grid-flow":"none | rows | columns","grid-layer":"<integer>","grid-row":1,"grid-rows":1,"grid-row-align":"start | end | center | stretch","grid-row-span":"<integer>","grid-row-sizing":1,"hanging-punctuation":1,height:"<margin-width> | inherit","hyphenate-after":"<integer> | auto","hyphenate-before":"<integer> | auto","hyphenate-character":"<string> | auto","hyphenate-lines":"no-limit | <integer>","hyphenate-resource":1,hyphens:"none | manual | auto",icon:1,"image-orientation":"angle | auto","image-rendering":1,"image-resolution":1,"inline-box-align":"initial | last | <integer>",left:"<margin-width> | inherit","letter-spacing":"<length> | normal | inherit","line-height":"<number> | <length> | <percentage> | normal | inherit","line-break":"auto | loose | normal | strict","line-stacking":1,"line-stacking-ruby":"exclude-ruby | include-ruby","line-stacking-shift":"consider-shifts | disregard-shifts","line-stacking-strategy":"inline-line-height | block-line-height | max-height | grid-height","list-style":1,"list-style-image":"<uri> | none | inherit","list-style-position":"inside | outside | inherit","list-style-type":"disc | circle | square | decimal | decimal-leading-zero | lower-roman | upper-roman | lower-greek | lower-latin | upper-latin | armenian | georgian | lower-alpha | upper-alpha | none | inherit",margin:{multi:"<margin-width> | inherit",max:4},"margin-bottom":"<margin-width> | inherit","margin-left":"<margin-width> | inherit","margin-right":"<margin-width> | inherit","margin-top":"<margin-width> | inherit",mark:1,"mark-after":1,"mark-before":1,marks:1,"marquee-direction":1,"marquee-play-count":1,"marquee-speed":1,"marquee-style":1,"max-height":"<length> | <percentage> | none | inherit","max-width":"<length> | <percentage> | none | inherit","min-height":"<length> | <percentage> | inherit","min-width":"<length> | <percentage> | inherit","move-to":1,"nav-down":1,"nav-index":1,"nav-left":1,"nav-right":1,"nav-up":1,opacity:"<number> | inherit",orphans:"<integer> | inherit",outline:1,"outline-color":"<color> | invert | inherit","outline-offset":1,"outline-style":"<border-style> | inherit","outline-width":"<border-width> | inherit",overflow:"visible | hidden | scroll | auto | inherit","overflow-style":1,"overflow-x":1,"overflow-y":1,padding:{multi:"<padding-width> | inherit",max:4},"padding-bottom":"<padding-width> | inherit","padding-left":"<padding-width> | inherit","padding-right":"<padding-width> | inherit","padding-top":"<padding-width> | inherit",page:1,"page-break-after":"auto | always | avoid | left | right | inherit","page-break-before":"auto | always | avoid | left | right | inherit","page-break-inside":"auto | avoid | inherit","page-policy":1,pause:1,"pause-after":1,"pause-before":1,perspective:1,"perspective-origin":1,phonemes:1,pitch:1,"pitch-range":1,"play-during":1,"pointer-events":"auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all | inherit",position:"static | relative | absolute | fixed | inherit","presentation-level":1,"punctuation-trim":1,quotes:1,"rendering-intent":1,resize:1,rest:1,"rest-after":1,"rest-before":1,richness:1,right:"<margin-width> | inherit",rotation:1,"rotation-point":1,"ruby-align":1,"ruby-overhang":1,"ruby-position":1,"ruby-span":1,size:1,speak:"normal | none | spell-out | inherit","speak-header":"once | always | inherit","speak-numeral":"digits | continuous | inherit","speak-punctuation":"code | none | inherit","speech-rate":1,src:1,stress:1,"string-set":1,"table-layout":"auto | fixed | inherit","tab-size":"<integer> | <length>",target:1,"target-name":1,"target-new":1,"target-position":1,"text-align":"left | right | center | justify | inherit","text-align-last":1,"text-decoration":1,"text-emphasis":1,"text-height":1,"text-indent":"<length> | <percentage> | inherit","text-justify":"auto | none | inter-word | inter-ideograph | inter-cluster | distribute | kashida","text-outline":1,"text-overflow":1,"text-rendering":"auto | optimizeSpeed | optimizeLegibility | geometricPrecision | inherit","text-shadow":1,"text-transform":"capitalize | uppercase | lowercase | none | inherit","text-wrap":"normal | none | avoid",top:"<margin-width> | inherit",transform:1,"transform-origin":1,"transform-style":1,transition:1,"transition-delay":1,"transition-duration":1,"transition-property":1,"transition-timing-function":1,"unicode-bidi":"normal | embed | bidi-override | inherit","user-modify":"read-only | read-write | write-only | inherit","user-select":"none | text | toggle | element | elements | all | inherit","vertical-align":"auto | use-script | baseline | sub | super | top | text-top | central | middle | bottom | text-bottom | <percentage> | <length>",visibility:"visible | hidden | collapse | inherit","voice-balance":1,"voice-duration":1,"voice-family":1,"voice-pitch":1,"voice-pitch-range":1,"voice-rate":1,"voice-stress":1,"voice-volume":1,volume:1,"white-space":"normal | pre | nowrap | pre-wrap | pre-line | inherit | -pre-wrap | -o-pre-wrap | -moz-pre-wrap | -hp-pre-wrap","white-space-collapse":1,widows:"<integer> | inherit",width:"<length> | <percentage> | auto | inherit","word-break":"normal | keep-all | break-all","word-spacing":"<length> | normal | inherit","word-wrap":1,"z-index":"<integer> | auto | inherit",zoom:"<number> | <percentage> | normal"};PropertyName.prototype=new SyntaxUnit,PropertyName.prototype.constructor=PropertyName,PropertyName.prototype.toString=function(){return(this.hack?this.hack:"")+this.text},PropertyValue.prototype=new SyntaxUnit,PropertyValue.prototype.constructor=PropertyValue,PropertyValueIterator.prototype.count=function(){return this._parts.length},PropertyValueIterator.prototype.isFirst=function(){return this._i===0},PropertyValueIterator.prototype.hasNext=function(){return this._i<this._parts.length},PropertyValueIterator.prototype.mark=function(){this._marks.push(this._i)},PropertyValueIterator.prototype.peek=function(e){return this.hasNext()?this._parts[this._i+(e||0)]:null},PropertyValueIterator.prototype.next=function(){return this.hasNext()?this._parts[this._i++]:null},PropertyValueIterator.prototype.previous=function(){return this._i>0?this._parts[--this._i]:null},PropertyValueIterator.prototype.restore=function(){this._marks.length&&(this._i=this._marks.pop())},PropertyValuePart.prototype=new SyntaxUnit,PropertyValuePart.prototype.constructor=PropertyValuePart,PropertyValuePart.fromToken=function(e){return new PropertyValuePart(e.value,e.startLine,e.startCol)};var Pseudos={":first-letter":1,":first-line":1,":before":1,":after":1};Pseudos.ELEMENT=1,Pseudos.CLASS=2,Pseudos.isElement=function(e){return e.indexOf("::")===0||Pseudos[e.toLowerCase()]==Pseudos.ELEMENT},Selector.prototype=new SyntaxUnit,Selector.prototype.constructor=Selector,SelectorPart.prototype=new SyntaxUnit,SelectorPart.prototype.constructor=SelectorPart,SelectorSubPart.prototype=new SyntaxUnit,SelectorSubPart.prototype.constructor=SelectorSubPart,Specificity.prototype={constructor:Specificity,compare:function(e){var t=["a","b","c","d"],n,r;for(n=0,r=t.length;n<r;n++){if(this[t[n]]<e[t[n]])return-1;if(this[t[n]]>e[t[n]])return 1}return 0},valueOf:function(){return this.a*1e3+this.b*100+this.c*10+this.d},toString:function(){return this.a+","+this.b+","+this.c+","+this.d}},Specificity.calculate=function(e){function t(e){var n,r,i,a,f=e.elementName?e.elementName.text:"",l;f&&f.charAt(f.length-1)!="*"&&u++;for(n=0,i=e.modifiers.length;n<i;n++){l=e.modifiers[n];switch(l.type){case"class":case"attribute":o++;break;case"id":s++;break;case"pseudo":Pseudos.isElement(l.text)?u++:o++;break;case"not":for(r=0,a=l.args.length;r<a;r++)t(l.args[r])}}}var n,r,i,s=0,o=0,u=0;for(n=0,r=e.parts.length;n<r;n++)i=e.parts[n],i instanceof SelectorPart&&t(i);return new Specificity(0,s,o,u)};var h=/^[0-9a-fA-F]$/,nonascii=/^[\u0080-\uFFFF]$/,nl=/\n|\r\n|\r|\f/;TokenStream.prototype=mix(new TokenStreamBase,{_getToken:function(e){var t,n=this._reader,r=null,i=n.getLine(),s=n.getCol();t=n.read();while(t){switch(t){case"/":n.peek()=="*"?r=this.commentToken(t,i,s):r=this.charToken(t,i,s);break;case"|":case"~":case"^":case"$":case"*":n.peek()=="="?r=this.comparisonToken(t,i,s):r=this.charToken(t,i,s);break;case'"':case"'":r=this.stringToken(t,i,s);break;case"#":isNameChar(n.peek())?r=this.hashToken(t,i,s):r=this.charToken(t,i,s);break;case".":isDigit(n.peek())?r=this.numberToken(t,i,s):r=this.charToken(t,i,s);break;case"-":n.peek()=="-"?r=this.htmlCommentEndToken(t,i,s):isNameStart(n.peek())?r=this.identOrFunctionToken(t,i,s):r=this.charToken(t,i,s);break;case"!":r=this.importantToken(t,i,s);break;case"@":r=this.atRuleToken(t,i,s);break;case":":r=this.notToken(t,i,s);break;case"<":r=this.htmlCommentStartToken(t,i,s);break;case"U":case"u":if(n.peek()=="+"){r=this.unicodeRangeToken(t,i,s);break};default:isDigit(t)?r=this.numberToken(t,i,s):isWhitespace(t)?r=this.whitespaceToken(t,i,s):isIdentStart(t)?r=this.identOrFunctionToken(t,i,s):r=this.charToken(t,i,s)}break}return!r&&t===null&&(r=this.createToken(Tokens.EOF,null,i,s)),r},createToken:function(e,t,n,r,i){var s=this._reader;return i=i||{},{value:t,type:e,channel:i.channel,hide:i.hide||!1,startLine:n,startCol:r,endLine:s.getLine(),endCol:s.getCol()}},atRuleToken:function(e,t,n){var r=e,i=this._reader,s=Tokens.CHAR,o=!1,u,a;i.mark(),u=this.readName(),r=e+u,s=Tokens.type(r.toLowerCase());if(s==Tokens.CHAR||s==Tokens.UNKNOWN)r.length>1?s=Tokens.UNKNOWN_SYM:(s=Tokens.CHAR,r=e,i.reset());return this.createToken(s,r,t,n)},charToken:function(e,t,n){var r=Tokens.type(e);return r==-1&&(r=Tokens.CHAR),this.createToken(r,e,t,n)},commentToken:function(e,t,n){var r=this._reader,i=this.readComment(e);return this.createToken(Tokens.COMMENT,i,t,n)},comparisonToken:function(e,t,n){var r=this._reader,i=e+r.read(),s=Tokens.type(i)||Tokens.CHAR;return this.createToken(s,i,t,n)},hashToken:function(e,t,n){var r=this._reader,i=this.readName(e);return this.createToken(Tokens.HASH,i,t,n)},htmlCommentStartToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(3),i=="<!--"?this.createToken(Tokens.CDO,i,t,n):(r.reset(),this.charToken(e,t,n))},htmlCommentEndToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(2),i=="-->"?this.createToken(Tokens.CDC,i,t,n):(r.reset(),this.charToken(e,t,n))},identOrFunctionToken:function(e,t,n){var r=this._reader,i=this.readName(e),s=Tokens.IDENT;return r.peek()=="("?(i+=r.read(),i.toLowerCase()=="url("?(s=Tokens.URI,i=this.readURI(i),i.toLowerCase()=="url("&&(s=Tokens.FUNCTION)):s=Tokens.FUNCTION):r.peek()==":"&&i.toLowerCase()=="progid"&&(i+=r.readTo("("),s=Tokens.IE_FUNCTION),this.createToken(s,i,t,n)},importantToken:function(e,t,n){var r=this._reader,i=e,s=Tokens.CHAR,o,u;r.mark(),u=r.read();while(u){if(u=="/"){if(r.peek()!="*")break;o=this.readComment(u);if(o==="")break}else{if(!isWhitespace(u)){if(/i/i.test(u)){o=r.readCount(8),/mportant/i.test(o)&&(i+=u+o,s=Tokens.IMPORTANT_SYM);break}break}i+=u+this.readWhitespace()}u=r.read()}return s==Tokens.CHAR?(r.reset(),this.charToken(e,t,n)):this.createToken(s,i,t,n)},notToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(4),i.toLowerCase()==":not("?this.createToken(Tokens.NOT,i,t,n):(r.reset(),this.charToken(e,t,n))},numberToken:function(e,t,n){var r=this._reader,i=this.readNumber(e),s,o=Tokens.NUMBER,u=r.peek();return isIdentStart(u)?(s=this.readName(r.read()),i+=s,/^em$|^ex$|^px$|^gd$|^rem$|^vw$|^vh$|^vm$|^ch$|^cm$|^mm$|^in$|^pt$|^pc$/i.test(s)?o=Tokens.LENGTH:/^deg|^rad$|^grad$/i.test(s)?o=Tokens.ANGLE:/^ms$|^s$/i.test(s)?o=Tokens.TIME:/^hz$|^khz$/i.test(s)?o=Tokens.FREQ:/^dpi$|^dpcm$/i.test(s)?o=Tokens.RESOLUTION:o=Tokens.DIMENSION):u=="%"&&(i+=r.read(),o=Tokens.PERCENTAGE),this.createToken(o,i,t,n)},stringToken:function(e,t,n){var r=e,i=e,s=this._reader,o=e,u=Tokens.STRING,a=s.read();while(a){i+=a;if(a==r&&o!="\\")break;if(isNewLine(s.peek())&&a!="\\"){u=Tokens.INVALID;break}o=a,a=s.read()}return a===null&&(u=Tokens.INVALID),this.createToken(u,i,t,n)},unicodeRangeToken:function(e,t,n){var r=this._reader,i=e,s,o=Tokens.CHAR;return r.peek()=="+"&&(r.mark(),i+=r.read(),i+=this.readUnicodeRangePart(!0),i.length==2?r.reset():(o=Tokens.UNICODE_RANGE,i.indexOf("?")==-1&&r.peek()=="-"&&(r.mark(),s=r.read(),s+=this.readUnicodeRangePart(!1),s.length==1?r.reset():i+=s))),this.createToken(o,i,t,n)},whitespaceToken:function(e,t,n){var r=this._reader,i=e+this.readWhitespace();return this.createToken(Tokens.S,i,t,n)},readUnicodeRangePart:function(e){var t=this._reader,n="",r=t.peek();while(isHexDigit(r)&&n.length<6)t.read(),n+=r,r=t.peek();if(e)while(r=="?"&&n.length<6)t.read(),n+=r,r=t.peek();return n},readWhitespace:function(){var e=this._reader,t="",n=e.peek();while(isWhitespace(n))e.read(),t+=n,n=e.peek();return t},readNumber:function(e){var t=this._reader,n=e,r=e==".",i=t.peek();while(i){if(isDigit(i))n+=t.read();else{if(i!=".")break;if(r)break;r=!0,n+=t.read()}i=t.peek()}return n},readString:function(){var e=this._reader,t=e.read(),n=t,r=t,i=e.peek();while(i){i=e.read(),n+=i;if(i==t&&r!="\\")break;if(isNewLine(e.peek())&&i!="\\"){n="";break}r=i,i=e.peek()}return i===null&&(n=""),n},readURI:function(e){var t=this._reader,n=e,r="",i=t.peek();t.mark();while(i&&isWhitespace(i))t.read(),i=t.peek();i=="'"||i=='"'?r=this.readString():r=this.readURL(),i=t.peek();while(i&&isWhitespace(i))t.read(),i=t.peek();return r===""||i!=")"?(n=e,t.reset()):n+=r+t.read(),n},readURL:function(){var e=this._reader,t="",n=e.peek();while(/^[!#$%&\\*-~]$/.test(n))t+=e.read(),n=e.peek();return t},readName:function(e){var t=this._reader,n=e||"",r=t.peek();for(;;)if(r=="\\")n+=this.readEscape(t.read()),r=t.peek();else{if(!r||!isNameChar(r))break;n+=t.read(),r=t.peek()}return n},readEscape:function(e){var t=this._reader,n=e||"",r=0,i=t.peek();if(isHexDigit(i))do n+=t.read(),i=t.peek();while(i&&isHexDigit(i)&&++r<6);return n.length==3&&/\s/.test(i)||n.length==7||n.length==1?t.read():i="",n+i},readComment:function(e){var t=this._reader,n=e||"",r=t.read();if(r=="*"){while(r){n+=r;if(n.length>2&&r=="*"&&t.peek()=="/"){n+=t.read();break}r=t.read()}return n}return""}});var Tokens=[{name:"CDO"},{name:"CDC"},{name:"S",whitespace:!0},{name:"COMMENT",comment:!0,hide:!0,channel:"comment"},{name:"INCLUDES",text:"~="},{name:"DASHMATCH",text:"|="},{name:"PREFIXMATCH",text:"^="},{name:"SUFFIXMATCH",text:"$="},{name:"SUBSTRINGMATCH",text:"*="},{name:"STRING"},{name:"IDENT"},{name:"HASH"},{name:"IMPORT_SYM",text:"@import"},{name:"PAGE_SYM",text:"@page"},{name:"MEDIA_SYM",text:"@media"},{name:"FONT_FACE_SYM",text:"@font-face"},{name:"CHARSET_SYM",text:"@charset"},{name:"NAMESPACE_SYM",text:"@namespace"},{name:"UNKNOWN_SYM"},{name:"KEYFRAMES_SYM",text:["@keyframes","@-webkit-keyframes","@-moz-keyframes","@-o-keyframes"]},{name:"IMPORTANT_SYM"},{name:"LENGTH"},{name:"ANGLE"},{name:"TIME"},{name:"FREQ"},{name:"DIMENSION"},{name:"PERCENTAGE"},{name:"NUMBER"},{name:"URI"},{name:"FUNCTION"},{name:"UNICODE_RANGE"},{name:"INVALID"},{name:"PLUS",text:"+"},{name:"GREATER",text:">"},{name:"COMMA",text:","},{name:"TILDE",text:"~"},{name:"NOT"},{name:"TOPLEFTCORNER_SYM",text:"@top-left-corner"},{name:"TOPLEFT_SYM",text:"@top-left"},{name:"TOPCENTER_SYM",text:"@top-center"},{name:"TOPRIGHT_SYM",text:"@top-right"},{name:"TOPRIGHTCORNER_SYM",text:"@top-right-corner"},{name:"BOTTOMLEFTCORNER_SYM",text:"@bottom-left-corner"},{name:"BOTTOMLEFT_SYM",text:"@bottom-left"},{name:"BOTTOMCENTER_SYM",text:"@bottom-center"},{name:"BOTTOMRIGHT_SYM",text:"@bottom-right"},{name:"BOTTOMRIGHTCORNER_SYM",text:"@bottom-right-corner"},{name:"LEFTTOP_SYM",text:"@left-top"},{name:"LEFTMIDDLE_SYM",text:"@left-middle"},{name:"LEFTBOTTOM_SYM",text:"@left-bottom"},{name:"RIGHTTOP_SYM",text:"@right-top"},{name:"RIGHTMIDDLE_SYM",text:"@right-middle"},{name:"RIGHTBOTTOM_SYM",text:"@right-bottom"},{name:"RESOLUTION",state:"media"},{name:"IE_FUNCTION"},{name:"CHAR"},{name:"PIPE",text:"|"},{name:"SLASH",text:"/"},{name:"MINUS",text:"-"},{name:"STAR",text:"*"},{name:"LBRACE",text:"{"},{name:"RBRACE",text:"}"},{name:"LBRACKET",text:"["},{name:"RBRACKET",text:"]"},{name:"EQUALS",text:"="},{name:"COLON",text:":"},{name:"SEMICOLON",text:";"},{name:"LPAREN",text:"("},{name:"RPAREN",text:")"},{name:"DOT",text:"."}];(function(){var e=[],t={};Tokens.UNKNOWN=-1,Tokens.unshift({name:"EOF"});for(var n=0,r=Tokens.length;n<r;n++){e.push(Tokens[n].name),Tokens[Tokens[n].name]=n;if(Tokens[n].text)if(Tokens[n].text instanceof Array)for(var i=0;i<Tokens[n].text.length;i++)t[Tokens[n].text[i]]=n;else t[Tokens[n].text]=n}Tokens.name=function(t){return e[t]},Tokens.type=function(e){return t[e]||-1}})();var Validation={validate:function(e,t){var n=e.toString().toLowerCase(),r=t.parts,i=new PropertyValueIterator(t),s=Properties[n],o,u,a,f,l,c,h,p,d,v,m;if(!s){if(n.indexOf("-")!==0)throw new ValidationError("Unknown property '"+e+"'.",e.line,e.col)}else typeof s!="number"&&(typeof s=="string"?s.indexOf("||")>-1?this.groupProperty(s,i):this.singleProperty(s,i,1):s.multi?this.multiProperty(s.multi,i,s.comma,s.max||Infinity):typeof s=="function"&&s(i))},singleProperty:function(e,t,n,r){var i=!1,s=t.value,o=0,u;while(t.hasNext()&&o<n){i=ValidationTypes.isAny(t,e);if(!i)break;o++}if(!i)throw t.hasNext()&&!t.isFirst()?(u=t.peek(),new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col)):new ValidationError("Expected ("+e+") but found '"+s+"'.",s.line,s.col);if(t.hasNext())throw u=t.next(),new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col)},multiProperty:function(e,t,n,r){var i=!1,s=t.value,o=0,u=!1,a;while(t.hasNext()&&!i&&o<r){if(!ValidationTypes.isAny(t,e))break;o++;if(!t.hasNext())i=!0;else if(n){if(t.peek()!=",")break;a=t.next()}}if(!i)throw t.hasNext()&&!t.isFirst()?(a=t.peek(),new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col)):(a=t.previous(),n&&a==","?new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col):new ValidationError("Expected ("+e+") but found '"+s+"'.",s.line,s.col));if(t.hasNext())throw a=t.next(),new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col)},groupProperty:function(e,t,n){var r=!1,i=t.value,s=e.split("||").length,o={count:0},u=!1,a,f;while(t.hasNext()&&!r){a=ValidationTypes.isAnyOfGroup(t,e);if(!a)break;if(o[a])break;o[a]=1,o.count++,u=!0;if(o.count==s||!t.hasNext())r=!0}if(!r)throw u&&t.hasNext()?(f=t.peek(),new ValidationError("Expected end of value but found '"+f+"'.",f.line,f.col)):new ValidationError("Expected ("+e+") but found '"+i+"'.",i.line,i.col);if(t.hasNext())throw f=t.next(),new ValidationError("Expected end of value but found '"+f+"'.",f.line,f.col)}};ValidationError.prototype=new Error;var ValidationTypes={isLiteral:function(e,t){var n=e.text.toString().toLowerCase(),r=t.split(" | "),i,s,o=!1;for(i=0,s=r.length;i<s&&!o;i++)n==r[i].toLowerCase()&&(o=!0);return o},isSimple:function(e){return!!this.simple[e]},isComplex:function(e){return!!this.complex[e]},isAny:function(e,t){var n=t.split(" | "),r,i,s=!1;for(r=0,i=n.length;r<i&&!s&&e.hasNext();r++)s=this.isType(e,n[r]);return s},isAnyOfGroup:function(e,t){var n=t.split(" || "),r,i,s=!1;for(r=0,i=n.length;r<i&&!s;r++)s=this.isType(e,n[r]);return s?n[r-1]:!1},isType:function(e,t){var n=e.peek(),r=!1;return t.charAt(0)!="<"?(r=this.isLiteral(n,t),r&&e.next()):this.simple[t]?(r=this.simple[t](n),r&&e.next()):r=this.complex[t](e),r},simple:{"<absolute-size>":function(e){return ValidationTypes.isLiteral(e,"xx-small | x-small | small | medium | large | x-large | xx-large")},"<attachment>":function(e){return ValidationTypes.isLiteral(e,"scroll | fixed | local")},"<attr>":function(e){return e.type=="function"&&e.name=="attr"},"<bg-image>":function(e){return this["<image>"](e)||this["<gradient>"](e)||e=="none"},"<gradient>":function(e){return e.type=="function"&&/^(?:\-(?:ms|moz|o|webkit)\-)?(?:repeating\-)?(?:radial\-|linear\-)?gradient/i.test(e)},"<box>":function(e){return ValidationTypes.isLiteral(e,"padding-box | border-box | content-box")},"<content>":function(e){return e.type=="function"&&e.name=="content"},"<relative-size>":function(e){return ValidationTypes.isLiteral(e,"smaller | larger")},"<ident>":function(e){return e.type=="identifier"},"<length>":function(e){return e.type=="function"&&/^(?:\-(?:ms|moz|o|webkit)\-)?calc/i.test(e)?!0:e.type=="length"||e.type=="number"||e.type=="integer"||e=="0"},"<color>":function(e){return e.type=="color"||e=="transparent"},"<number>":function(e){return e.type=="number"||this["<integer>"](e)},"<integer>":function(e){return e.type=="integer"},"<line>":function(e){return e.type=="integer"},"<angle>":function(e){return e.type=="angle"},"<uri>":function(e){return e.type=="uri"},"<image>":function(e){return this["<uri>"](e)},"<percentage>":function(e){return e.type=="percentage"||e=="0"},"<border-width>":function(e){return this["<length>"](e)||ValidationTypes.isLiteral(e,"thin | medium | thick")},"<border-style>":function(e){return ValidationTypes.isLiteral(e,"none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset")},"<margin-width>":function(e){return this["<length>"](e)||this["<percentage>"](e)||ValidationTypes.isLiteral(e,"auto")},"<padding-width>":function(e){return this["<length>"](e)||this["<percentage>"](e)},"<shape>":function(e){return e.type=="function"&&(e.name=="rect"||e.name=="inset-rect")},"<time>":function(e){return e.type=="time"}},complex:{"<bg-position>":function(e){var t=this,n=!1,r="<percentage> | <length>",i="left | right",s="top | bottom",o=0,u=function(){return e.hasNext()&&e.peek()!=","};while(e.peek(o)&&e.peek(o)!=",")o++;return o<3?ValidationTypes.isAny(e,i+" | center | "+r)?(n=!0,ValidationTypes.isAny(e,s+" | center | "+r)):ValidationTypes.isAny(e,s)&&(n=!0,ValidationTypes.isAny(e,i+" | center")):ValidationTypes.isAny(e,i)?ValidationTypes.isAny(e,s)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,r)&&(ValidationTypes.isAny(e,s)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,"center")&&(n=!0)):ValidationTypes.isAny(e,s)?ValidationTypes.isAny(e,i)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,r)&&(ValidationTypes.isAny(e,i)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,"center")&&(n=!0)):ValidationTypes.isAny(e,"center")&&ValidationTypes.isAny(e,i+" | "+s)&&(n=!0,ValidationTypes.isAny(e,r)),n},"<bg-size>":function(e){var t=this,n=!1,r="<percentage> | <length> | auto",i,s,o;return ValidationTypes.isAny(e,"cover | contain")?n=!0:ValidationTypes.isAny(e,r)&&(n=!0,ValidationTypes.isAny(e,r)),n},"<repeat-style>":function(e){var t=!1,n="repeat | space | round | no-repeat",r;return e.hasNext()&&(r=e.next(),ValidationTypes.isLiteral(r,"repeat-x | repeat-y")?t=!0:ValidationTypes.isLiteral(r,n)&&(t=!0,e.hasNext()&&ValidationTypes.isLiteral(e.peek(),n)&&e.next())),t},"<shadow>":function(e){var t=!1,n=0,r=!1,i=!1,s;if(e.hasNext()){ValidationTypes.isAny(e,"inset")&&(r=!0),ValidationTypes.isAny(e,"<color>")&&(i=!0);while(ValidationTypes.isAny(e,"<length>")&&n<4)n++;e.hasNext()&&(i||ValidationTypes.isAny(e,"<color>"),r||ValidationTypes.isAny(e,"inset")),t=n>=2&&n<=4}return t},"<x-one-radius>":function(e){var t=!1,n=0,r="<length> | <percentage>",i;return ValidationTypes.isAny(e,r)&&(t=!0,ValidationTypes.isAny(e,r)),t}}};parserlib.css={Colors:Colors,Combinator:Combinator,Parser:Parser,PropertyName:PropertyName,PropertyValue:PropertyValue,PropertyValuePart:PropertyValuePart,MediaFeature:MediaFeature,MediaQuery:MediaQuery,Selector:Selector,SelectorPart:SelectorPart,SelectorSubPart:SelectorSubPart,Specificity:Specificity,TokenStream:TokenStream,Tokens:Tokens,ValidationError:ValidationError}}();var CSSLint=function(){function e(e,t){var n,i=e&&e.match(r),s=i&&i[1];return s&&(n={"true":2,"":1,"false":0,2:2,1:1,0:0},s.toLowerCase().split(",").forEach(function(e){var r=e.split(":"),i=r[0]||"",s=r[1]||"";t[i.trim()]=n[s.trim()]})),t}var t=[],n=[],r=/\/\*csslint([^\*]*)\*\//,i=new parserlib.util.EventTarget;return i.version="0.9.10",i.addRule=function(e){t.push(e),t[e.id]=e},i.clearRules=function(){t=[]},i.getRules=function(){return[].concat(t).sort(function(e,t){return e.id>t.id?1:0})},i.getRuleset=function(){var e={},n=0,r=t.length;while(n<r)e[t[n++].id]=1;return e},i.addFormatter=function(e){n[e.id]=e},i.getFormatter=function(e){return n[e]},i.format=function(e,t,n,r){var i=this.getFormatter(n),s=null;return i&&(s=i.startFormat(),s+=i.formatResults(e,t,r||{}),s+=i.endFormat()),s},i.hasFormat=function(e){return n.hasOwnProperty(e)},i.verify=function(n,i){var s=0,o=t.length,u,a,f,l=new parserlib.css.Parser({starHack:!0,ieFilters:!0,underscoreHack:!0,strict:!1});a=n.replace(/\n\r?/g,"$split$").split("$split$"),i||(i=this.getRuleset()),r.test(n)&&(i=e(n,i)),u=new Reporter(a,i),i.errors=2;for(s in i)i.hasOwnProperty(s)&&i[s]&&t[s]&&t[s].init(l,u);try{l.parse(n)}catch(c){u.error("Fatal error, cannot continue: "+c.message,c.line,c.col,{})}return f={messages:u.messages,stats:u.stats,ruleset:u.ruleset},f.messages.sort(function(e,t){return e.rollup&&!t.rollup?1:!e.rollup&&t.rollup?-1:e.line-t.line}),f},i}();Reporter.prototype={constructor:Reporter,error:function(e,t,n,r){this.messages.push({type:"error",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r||{}})},warn:function(e,t,n,r){this.report(e,t,n,r)},report:function(e,t,n,r){this.messages.push({type:this.ruleset[r.id]==2?"error":"warning",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r})},info:function(e,t,n,r){this.messages.push({type:"info",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r})},rollupError:function(e,t){this.messages.push({type:"error",rollup:!0,message:e,rule:t})},rollupWarn:function(e,t){this.messages.push({type:"warning",rollup:!0,message:e,rule:t})},stat:function(e,t){this.stats[e]=t}},CSSLint._Reporter=Reporter,CSSLint.Util={mix:function(e,t){var n;for(n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return n},indexOf:function(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},forEach:function(e,t){if(e.forEach)return e.forEach(t);for(var n=0,r=e.length;n<r;n++)t(e[n],n,e)}},CSSLint.addRule({id:"adjoining-classes",name:"Disallow adjoining classes",desc:"Don't use adjoining classes.",browsers:"IE6",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l,c;for(f=0;f<i.length;f++){s=i[f];for(l=0;l<s.parts.length;l++){o=s.parts[l];if(o.type==e.SELECTOR_PART_TYPE){a=0;for(c=0;c<o.modifiers.length;c++)u=o.modifiers[c],u.type=="class"&&a++,a>1&&t.report("Don't use adjoining classes.",o.line,o.col,n)}}}})}}),CSSLint.addRule({id:"box-model",name:"Beware of broken box size",desc:"Don't use width or height when using padding or border.",browsers:"All",init:function(e,t){function n(){u={},a=!1}function r(){var e,n;if(!a){if(u.height)for(e in o)o.hasOwnProperty(e)&&u[e]&&(n=u[e].value,(e!="padding"||n.parts.length!==2||n.parts[0].value!==0)&&t.report("Using height with "+e+" can sometimes make elements larger than you expect.",u[e].line,u[e].col,i));if(u.width)for(e in s)s.hasOwnProperty(e)&&u[e]&&(n=u[e].value,(e!="padding"||n.parts.length!==2||n.parts[1].value!==0)&&t.report("Using width with "+e+" can sometimes make elements larger than you expect.",u[e].line,u[e].col,i))}}var i=this,s={border:1,"border-left":1,"border-right":1,padding:1,"padding-left":1,"padding-right":1},o={border:1,"border-bottom":1,"border-top":1,padding:1,"padding-bottom":1,"padding-top":1},u,a=!1;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase();o[t]||s[t]?!/^0\S*$/.test(e.value)&&(t!="border"||e.value!="none")&&(u[t]={line:e.property.line,col:e.property.col,value:e.value}):/^(width|height)/i.test(t)&&/^(length|percentage)/.test(e.value.parts[0].type)?u[t]=1:t=="box-sizing"&&(a=!0)}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"box-sizing",name:"Disallow use of box-sizing",desc:"The box-sizing properties isn't supported in IE6 and IE7.",browsers:"IE6, IE7",tags:["Compatibility"],init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property.text.toLowerCase();r=="box-sizing"&&t.report("The box-sizing property isn't supported in IE6 and IE7.",e.line,e.col,n)})}}),CSSLint.addRule({id:"bulletproof-font-face",name:"Use the bulletproof @font-face syntax",desc:"Use the bulletproof @font-face syntax to avoid 404's in old IE (http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax).",browsers:"All",init:function(e,t){var n=this,r=0,i=!1,s=!0,o=!1,u,a;e.addListener("startfontface",function(e){i=!0}),e.addListener("property",function(e){if(!i)return;var t=e.property.toString().toLowerCase(),n=e.value.toString();u=e.line,a=e.col;if(t==="src"){var r=/^\s?url\(['"].+\.eot\?.*['"]\)\s*format\(['"]embedded-opentype['"]\).*$/i;!n.match(r)&&s?(o=!0,s=!1):n.match(r)&&!s&&(o=!1)}}),e.addListener("endfontface",function(e){i=!1,o&&t.report("@font-face declaration doesn't follow the fontspring bulletproof syntax.",u,a,n)})}}),CSSLint.addRule({id:"compatible-vendor-prefixes",name:"Require compatible vendor prefixes",desc:"Include all compatible vendor prefixes to reach a wider range of users.",browsers:"All",init:function(e,t){var n=this,r,i,s,o,u,a,f,l=!1,c=Array.prototype.push,h=[];r={animation:"webkit moz","animation-delay":"webkit moz","animation-direction":"webkit moz","animation-duration":"webkit moz","animation-fill-mode":"webkit moz","animation-iteration-count":"webkit moz","animation-name":"webkit moz","animation-play-state":"webkit moz","animation-timing-function":"webkit moz",appearance:"webkit moz","border-end":"webkit moz","border-end-color":"webkit moz","border-end-style":"webkit moz","border-end-width":"webkit moz","border-image":"webkit moz o","border-radius":"webkit","border-start":"webkit moz","border-start-color":"webkit moz","border-start-style":"webkit moz","border-start-width":"webkit moz","box-align":"webkit moz ms","box-direction":"webkit moz ms","box-flex":"webkit moz ms","box-lines":"webkit ms","box-ordinal-group":"webkit moz ms","box-orient":"webkit moz ms","box-pack":"webkit moz ms","box-sizing":"webkit moz","box-shadow":"webkit moz","column-count":"webkit moz ms","column-gap":"webkit moz ms","column-rule":"webkit moz ms","column-rule-color":"webkit moz ms","column-rule-style":"webkit moz ms","column-rule-width":"webkit moz ms","column-width":"webkit moz ms",hyphens:"epub moz","line-break":"webkit ms","margin-end":"webkit moz","margin-start":"webkit moz","marquee-speed":"webkit wap","marquee-style":"webkit wap","padding-end":"webkit moz","padding-start":"webkit moz","tab-size":"moz o","text-size-adjust":"webkit ms",transform:"webkit moz ms o","transform-origin":"webkit moz ms o",transition:"webkit moz o","transition-delay":"webkit moz o","transition-duration":"webkit moz o","transition-property":"webkit moz o","transition-timing-function":"webkit moz o","user-modify":"webkit moz","user-select":"webkit moz ms","word-break":"epub ms","writing-mode":"epub ms"};for(s in r)if(r.hasOwnProperty(s)){o=[],u=r[s].split(" ");for(a=0,f=u.length;a<f;a++)o.push("-"+u[a]+"-"+s);r[s]=o,c.apply(h,o)}e.addListener("startrule",function(){i=[]}),e.addListener("startkeyframes",function(e){l=e.prefix||!0}),e.addListener("endkeyframes",function(e){l=!1}),e.addListener("property",function(e){var t=e.property;CSSLint.Util.indexOf(h,t.text)>-1&&(!l||typeof l!="string"||t.text.indexOf("-"+l+"-")!==0)&&i.push(t)}),e.addListener("endrule",function(e){if(!i.length)return;var s={},o,u,a,f,l,c,h,p,d,v;for(o=0,u=i.length;o<u;o++){a=i[o];for(f in r)r.hasOwnProperty(f)&&(l=r[f],CSSLint.Util.indexOf(l,a.text)>-1&&(s[f]||(s[f]={full:l.slice(0),actual:[],actualNodes:[]}),CSSLint.Util.indexOf(s[f].actual,a.text)===-1&&(s[f].actual.push(a.text),s[f].actualNodes.push(a))))}for(f in s)if(s.hasOwnProperty(f)){c=s[f],h=c.full,p=c.actual;if(h.length>p.length)for(o=0,u=h.length;o<u;o++)d=h[o],CSSLint.Util.indexOf(p,d)===-1&&(v=p.length===1?p[0]:p.length==2?p.join(" and "):p.join(", "),t.report("The property "+d+" is compatible with "+v+" and should be included as well.",c.actualNodes[0].line,c.actualNodes[0].col,n))}})}}),CSSLint.addRule({id:"display-property-grouping",name:"Require properties appropriate for display",desc:"Certain properties shouldn't be used with certain display property values.",browsers:"All",init:function(e,t){function n(e,n,r){u[e]&&(typeof o[e]!="string"||u[e].value.toLowerCase()!=o[e])&&t.report(r||e+" can't be used with display: "+n+".",u[e].line,u[e].col,s)}function r(){u={}}function i(){var e=u.display?u.display.value:null;if(e)switch(e){case"inline":n("height",e),n("width",e),n("margin",e),n("margin-top",e),n("margin-bottom",e),n("float",e,"display:inline has no effect on floated elements (but may be used to fix the IE6 double-margin bug).");break;case"block":n("vertical-align",e);break;case"inline-block":n("float",e);break;default:e.indexOf("table-")===0&&(n("margin",e),n("margin-left",e),n("margin-right",e),n("margin-top",e),n("margin-bottom",e),n("float",e))}}var s=this,o={display:1,"float":"none",height:1,width:1,margin:1,"margin-left":1,"margin-right":1,"margin-bottom":1,"margin-top":1,padding:1,"padding-left":1,"padding-right":1,"padding-bottom":1,"padding-top":1,"vertical-align":1},u;e.addListener("startrule",r),e.addListener("startfontface",r),e.addListener("startkeyframerule",r),e.addListener("startpagemargin",r),e.addListener("startpage",r),e.addListener("property",function(e){var t=e.property.text.toLowerCase();o[t]&&(u[t]={value:e.value.text,line:e.property.line,col:e.property.col})}),e.addListener("endrule",i),e.addListener("endfontface",i),e.addListener("endkeyframerule",i),e.addListener("endpagemargin",i),e.addListener("endpage",i)}}),CSSLint.addRule({id:"duplicate-background-images",name:"Disallow duplicate background images",desc:"Every background-image should be unique. Use a common class for e.g. sprites.",browsers:"All",init:function(e,t){var n=this,r={};e.addListener("property",function(e){var i=e.property.text,s=e.value,o,u;if(i.match(/background/i))for(o=0,u=s.parts.length;o<u;o++)s.parts[o].type=="uri"&&(typeof r[s.parts[o].uri]=="undefined"?r[s.parts[o].uri]=e:t.report("Background image '"+s.parts[o].uri+"' was used multiple times, first declared at line "+r[s.parts[o].uri].line+", col "+r[s.parts[o].uri].col+".",e.line,e.col,n))})}}),CSSLint.addRule({id:"duplicate-properties",name:"Disallow duplicate properties",desc:"Duplicate properties must appear one after the other.",browsers:"All",init:function(e,t){function n(e){i={}}var r=this,i,s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var n=e.property,o=n.text.toLowerCase();i[o]&&(s!=o||i[o]==e.value.text)&&t.report("Duplicate property '"+e.property+"' found.",e.line,e.col,r),i[o]=e.value.text,s=o})}}),CSSLint.addRule({id:"empty-rules",name:"Disallow empty rules",desc:"Rules without any properties specified should be removed.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(){r=0}),e.addListener("property",function(){r++}),e.addListener("endrule",function(e){var i=e.selectors;r===0&&t.report("Rule is empty.",i[0].line,i[0].col,n)})}}),CSSLint.addRule({id:"errors",name:"Parsing Errors",desc:"This rule looks for recoverable syntax errors.",browsers:"All",init:function(e,t){var n=this;e.addListener("error",function(e){t.error(e.message,e.line,e.col,n)})}}),CSSLint.addRule({id:"fallback-colors",name:"Require fallback colors",desc:"For older browsers that don't support RGBA, HSL, or HSLA, provide a fallback color.",browsers:"IE6,IE7,IE8",init:function(e,t){function n(e){o={},i=null}var r=this,i,s={color:1,background:1,"border-color":1,"border-top-color":1,"border-right-color":1,"border-bottom-color":1,"border-left-color":1,border:1,"border-top":1,"border-right":1,"border-bottom":1,"border-left":1,"background-color":1},o;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var n=e.property,o=n.text.toLowerCase(),u=e.value.parts,a=0,f="",l=u.length;if(s[o])while(a<l)u[a].type=="color"&&("alpha"in u[a]||"hue"in u[a]?(/([^\)]+)\(/.test(u[a])&&(f=RegExp.$1.toUpperCase()),(!i||i.property.text.toLowerCase()!=o||i.colorType!="compat")&&t.report("Fallback "+o+" (hex or RGB) should precede "+f+" "+o+".",e.line,e.col,r)):e.colorType="compat"),a++;i=e})}}),CSSLint.addRule({id:"floats",name:"Disallow too many floats",desc:"This rule tests if the float property is used too many times",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.property.text.toLowerCase()=="float"&&e.value.text.toLowerCase()!="none"&&r++}),e.addListener("endstylesheet",function(){t.stat("floats",r),r>=10&&t.rollupWarn("Too many floats ("+r+"), you're probably using them for layout. Consider using a grid system instead.",n)})}}),CSSLint.addRule({id:"font-faces",name:"Don't use too many web fonts",desc:"Too many different web fonts in the same stylesheet.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startfontface",function(){r++}),e.addListener("endstylesheet",function(){r>5&&t.rollupWarn("Too many @font-face declarations ("+r+").",n)})}}),CSSLint.addRule({id:"font-sizes",name:"Disallow too many font sizes",desc:"Checks the number of font-size declarations.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.property=="font-size"&&r++}),e.addListener("endstylesheet",function(){t.stat("font-sizes",r),r>=10&&t.rollupWarn("Too many font-size declarations ("+r+"), abstraction needed.",n)})}}),CSSLint.addRule({id:"gradients",name:"Require all gradient definitions",desc:"When using a vendor-prefixed gradient, make sure to use them all.",browsers:"All",init:function(e,t){var n=this,r;e.addListener("startrule",function(){r={moz:0,webkit:0,oldWebkit:0,o:0}}),e.addListener("property",function(e){/\-(moz|o|webkit)(?:\-(?:linear|radial))\-gradient/i.test(e.value)?r[RegExp.$1]=1:/\-webkit\-gradient/i.test(e.value)&&(r.oldWebkit=1)}),e.addListener("endrule",function(e){var i=[];r.moz||i.push("Firefox 3.6+"),r.webkit||i.push("Webkit (Safari 5+, Chrome)"),r.oldWebkit||i.push("Old Webkit (Safari 4+, Chrome)"),r.o||i.push("Opera 11.1+"),i.length&&i.length<4&&t.report("Missing vendor-prefixed CSS gradients for "+i.join(", ")+".",e.selectors[0].line,e.selectors[0].col,n)})}}),CSSLint.addRule({id:"ids",name:"Disallow IDs in selectors",desc:"Selectors should not contain IDs.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l,c;for(f=0;f<i.length;f++){s=i[f],a=0;for(l=0;l<s.parts.length;l++){o=s.parts[l];if(o.type==e.SELECTOR_PART_TYPE)for(c=0;c<o.modifiers.length;c++)u=o.modifiers[c],u.type=="id"&&a++}a==1?t.report("Don't use IDs in selectors.",s.line,s.col,n):a>1&&t.report(a+" IDs in the selector, really?",s.line,s.col,n)}})}}),CSSLint.addRule({id:"import",name:"Disallow @import",desc:"Don't use @import, use <link> instead.",browsers:"All",init:function(e,t){var n=this;e.addListener("import",function(e){t.report("@import prevents parallel downloads, use <link> instead.",e.line,e.col,n)})}}),CSSLint.addRule({id:"important",name:"Disallow !important",desc:"Be careful when using !important declaration",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.important===!0&&(r++,t.report("Use of !important",e.line,e.col,n))}),e.addListener("endstylesheet",function(){t.stat("important",r),r>=10&&t.rollupWarn("Too many !important declarations ("+r+"), try to use less than 10 to avoid specificity issues.",n)})}}),CSSLint.addRule({id:"known-properties",name:"Require use of known properties",desc:"Properties should be known (listed in CSS3 specification) or be a vendor-prefixed property.",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property.text.toLowerCase();e.invalid&&t.report(e.invalid.message,e.line,e.col,n)})}}),CSSLint.addRule({id:"outline-none",name:"Disallow outline: none",desc:"Use of outline: none or outline: 0 should be limited to :focus rules.",browsers:"All",tags:["Accessibility"],init:function(e,t){function n(e){e.selectors?s={line:e.line,col:e.col,selectors:e.selectors,propCount:0,outline:!1}:s=null}function r(e){s&&s.outline&&(s.selectors.toString().toLowerCase().indexOf(":focus")==-1?t.report("Outlines should only be modified using :focus.",s.line,s.col,i):s.propCount==1&&t.report("Outlines shouldn't be hidden unless other visual changes are made.",s.line,s.col,i))}var i=this,s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase(),n=e.value;s&&(s.propCount++,t=="outline"&&(n=="none"||n=="0")&&(s.outline=!0))}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"overqualified-elements",name:"Disallow overqualified elements",desc:"Don't use classes or IDs with elements (a.foo or a#foo).",browsers:"All",init:function(e,t){var n=this,r={};e.addListener("startrule",function(i){var s=i.selectors,o,u,a,f,l,c;for(f=0;f<s.length;f++){o=s[f];for(l=0;l<o.parts.length;l++){u=o.parts[l];if(u.type==e.SELECTOR_PART_TYPE)for(c=0;c<u.modifiers.length;c++)a=u.modifiers[c],u.elementName&&a.type=="id"?t.report("Element ("+u+") is overqualified, just use "+a+" without element name.",u.line,u.col,n):a.type=="class"&&(r[a]||(r[a]=[]),r[a].push({modifier:a,part:u}))}}}),e.addListener("endstylesheet",function(){var e;for(e in r)r.hasOwnProperty(e)&&r[e].length==1&&r[e][0].part.elementName&&t.report("Element ("+r[e][0].part+") is overqualified, just use "+r[e][0].modifier+" without element name.",r[e][0].part.line,r[e][0].part.col,n)})}}),CSSLint.addRule({id:"qualified-headings",name:"Disallow qualified headings",desc:"Headings should not be qualified (namespaced).",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a;for(u=0;u<i.length;u++){s=i[u];for(a=0;a<s.parts.length;a++)o=s.parts[a],o.type==e.SELECTOR_PART_TYPE&&o.elementName&&/h[1-6]/.test(o.elementName.toString())&&a>0&&t.report("Heading ("+o.elementName+") should not be qualified.",o.line,o.col,n)}})}}),CSSLint.addRule({id:"regex-selectors",name:"Disallow selectors that look like regexs",desc:"Selectors that look like regular expressions are slow and should be avoided.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l;for(a=0;a<i.length;a++){s=i[a];for(f=0;f<s.parts.length;f++){o=s.parts[f];if(o.type==e.SELECTOR_PART_TYPE)for(l=0;l<o.modifiers.length;l++)u=o.modifiers[l],u.type=="attribute"&&/([\~\|\^\$\*]=)/.test(u)&&t.report("Attribute selectors with "+RegExp.$1+" are slow!",u.line,u.col,n)}}})}}),CSSLint.addRule({id:"rules-count",name:"Rules Count",desc:"Track how many rules there are.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(){r++}),e.addListener("endstylesheet",function(){t.stat("rule-count",r)})}}),CSSLint.addRule({id:"selector-max-approaching",name:"Warn when approaching the 4095 selector limit for IE",desc:"Will warn when selector count is >= 3800 selectors.",browsers:"IE",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(e){r+=e.selectors.length}),e.addListener("endstylesheet",function(){r>=3800&&t.report("You have "+r+" selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.",0,0,n)})}}),CSSLint.addRule({id:"selector-max",name:"Error when past the 4095 selector limit for IE",desc:"Will error when selector count is > 4095.",browsers:"IE",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(e){r+=e.selectors.length}),e.addListener("endstylesheet",function(){r>4095&&t.report("You have "+r+" selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.",0,0,n)})}}),CSSLint.addRule({id:"shorthand",name:"Require shorthand properties",desc:"Use shorthand properties where possible.",browsers:"All",init:function(e,t){function n(e){f={}}function r(e){var n,r,s,o;for(n in l)if(l.hasOwnProperty(n)){o=0;for(r=0,s=l[n].length;r<s;r++)o+=f[l[n][r]]?1:0;o==l[n].length&&t.report("The properties "+l[n].join(", ")+" can be replaced by "+n+".",e.line,e.col,i)}}var i=this,s,o,u,a={},f,l={margin:["margin-top","margin-bottom","margin-left","margin-right"],padding:["padding-top","padding-bottom","padding-left","padding-right"]};for(s in l)if(l.hasOwnProperty(s))for(o=0,u=l[s].length;o<u;o++)a[l[s][o]]=s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("property",function(e){var t=e.property.toString().toLowerCase(),n=e.value.parts[0].value;a[t]&&(f[t]=1)}),e.addListener("endrule",r),e.addListener("endfontface",r)}}),CSSLint.addRule({id:"star-property-hack",name:"Disallow properties with a star prefix",desc:"Checks for the star property hack (targets IE6/7)",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property;r.hack=="*"&&t.report("Property with star prefix found.",e.property.line,e.property.col,n)})}}),CSSLint.addRule({id:"text-indent",name:"Disallow negative text-indent",desc:"Checks for text indent less than -99px",browsers:"All",init:function(e,t){function n(e){s=!1,o="inherit"}function r(e){s&&o!="ltr"&&t.report("Negative text-indent doesn't work well with RTL. If you use text-indent for image replacement explicitly set direction for that item to ltr.",s.line,s.col,i)}var i=this,s,o;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("property",function(e){var t=e.property.toString().toLowerCase(),n=e.value;t=="text-indent"&&n.parts[0].value<-99?s=e.property:t=="direction"&&n=="ltr"&&(o="ltr")}),e.addListener("endrule",r),e.addListener("endfontface",r)}}),CSSLint.addRule({id:"underscore-property-hack",name:"Disallow properties with an underscore prefix",desc:"Checks for the underscore property hack (targets IE6)",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property;r.hack=="_"&&t.report("Property with underscore prefix found.",e.property.line,e.property.col,n)})}}),CSSLint.addRule({id:"unique-headings",name:"Headings should only be defined once",desc:"Headings should be defined only once.",browsers:"All",init:function(e,t){var n=this,r={h1:0,h2:0,h3:0,h4:0,h5:0,h6:0};e.addListener("startrule",function(e){var i=e.selectors,s,o,u,a,f;for(a=0;a<i.length;a++){s=i[a],o=s.parts[s.parts.length-1];if(o.elementName&&/(h[1-6])/i.test(o.elementName.toString())){for(f=0;f<o.modifiers.length;f++)if(o.modifiers[f].type=="pseudo"){u=!0;break}u||(r[RegExp.$1]++,r[RegExp.$1]>1&&t.report("Heading ("+o.elementName+") has already been defined.",o.line,o.col,n))}}}),e.addListener("endstylesheet",function(e){var i,s=[];for(i in r)r.hasOwnProperty(i)&&r[i]>1&&s.push(r[i]+" "+i+"s");s.length&&t.rollupWarn("You have "+s.join(", ")+" defined in this stylesheet.",n)})}}),CSSLint.addRule({id:"universal-selector",name:"Disallow universal selector",desc:"The universal selector (*) is known to be slow.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(e){var r=e.selectors,i,s,o,u,a,f;for(u=0;u<r.length;u++)i=r[u],s=i.parts[i.parts.length-1],s.elementName=="*"&&t.report(n.desc,s.line,s.col,n)})}}),CSSLint.addRule({id:"unqualified-attributes",name:"Disallow unqualified attribute selectors",desc:"Unqualified attribute selectors are known to be slow.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l;for(a=0;a<i.length;a++){s=i[a],o=s.parts[s.parts.length-1];if(o.type==e.SELECTOR_PART_TYPE)for(l=0;l<o.modifiers.length;l++)u=o.modifiers[l],u.type=="attribute"&&(!o.elementName||o.elementName=="*")&&t.report(n.desc,o.line,o.col,n)}})}}),CSSLint.addRule({id:"vendor-prefix",name:"Require standard property with vendor prefix",desc:"When using a vendor-prefixed property, make sure to include the standard one.",browsers:"All",init:function(e,t){function n(){s={},o=1}function r(e){var n,r,o,a,f,l,c=[];for(n in s)u[n]&&c.push({actual:n,needed:u[n]});for(r=0,o=c.length;r<o;r++)f=c[r].needed,l=c[r].actual,s[f]?s[f][0].pos<s[l][0].pos&&t.report("Standard property '"+f+"' should come after vendor-prefixed property '"+l+"'.",s[l][0].name.line,s[l][0].name.col,i):t.report("Missing standard property '"+f+"' to go along with '"+l+"'.",s[l][0].name.line,s[l][0].name.col,i)}var i=this,s,o,u={"-webkit-border-radius":"border-radius","-webkit-border-top-left-radius":"border-top-left-radius","-webkit-border-top-right-radius":"border-top-right-radius","-webkit-border-bottom-left-radius":"border-bottom-left-radius","-webkit-border-bottom-right-radius":"border-bottom-right-radius","-o-border-radius":"border-radius","-o-border-top-left-radius":"border-top-left-radius","-o-border-top-right-radius":"border-top-right-radius","-o-border-bottom-left-radius":"border-bottom-left-radius","-o-border-bottom-right-radius":"border-bottom-right-radius","-moz-border-radius":"border-radius","-moz-border-radius-topleft":"border-top-left-radius","-moz-border-radius-topright":"border-top-right-radius","-moz-border-radius-bottomleft":"border-bottom-left-radius","-moz-border-radius-bottomright":"border-bottom-right-radius","-moz-column-count":"column-count","-webkit-column-count":"column-count","-moz-column-gap":"column-gap","-webkit-column-gap":"column-gap","-moz-column-rule":"column-rule","-webkit-column-rule":"column-rule","-moz-column-rule-style":"column-rule-style","-webkit-column-rule-style":"column-rule-style","-moz-column-rule-color":"column-rule-color","-webkit-column-rule-color":"column-rule-color","-moz-column-rule-width":"column-rule-width","-webkit-column-rule-width":"column-rule-width","-moz-column-width":"column-width","-webkit-column-width":"column-width","-webkit-column-span":"column-span","-webkit-columns":"columns","-moz-box-shadow":"box-shadow","-webkit-box-shadow":"box-shadow","-moz-transform":"transform","-webkit-transform":"transform","-o-transform":"transform","-ms-transform":"transform","-moz-transform-origin":"transform-origin","-webkit-transform-origin":"transform-origin","-o-transform-origin":"transform-origin","-ms-transform-origin":"transform-origin","-moz-box-sizing":"box-sizing","-webkit-box-sizing":"box-sizing","-moz-user-select":"user-select","-khtml-user-select":"user-select","-webkit-user-select":"user-select"};e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase();s[t]||(s[t]=[]),s[t].push({name:e.property,value:e.value,pos:o++})}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"zero-units",name:"Disallow units for 0 values",desc:"You don't need to specify units when a value is 0.",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.value.parts,i=0,s=r.length;while(i<s)(r[i].units||r[i].type=="percentage")&&r[i].value===0&&r[i].type!="time"&&t.report("Values of 0 shouldn't have units specified.",r[i].line,r[i].col,n),i++})}}),function(){var e=function(e){return!e||e.constructor!==String?"":e.replace(/[\"&><]/g,function(e){switch(e){case'"':return"&quot;";case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;"}})};CSSLint.addFormatter({id:"checkstyle-xml",name:"Checkstyle XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><checkstyle>'},endFormat:function(){return"</checkstyle>"},readError:function(t,n){return'<file name="'+e(t)+'"><error line="0" column="0" severty="error" message="'+e(n)+'"></error></file>'},formatResults:function(t,n,r){var i=t.messages,s=[],o=function(e){return!!e&&"name"in e?"net.csslint."+e.name.replace(/\s/g,""):""};return i.length>0&&(s.push('<file name="'+n+'">'),CSSLint.Util.forEach(i,function(t,n){t.rollup||s.push('<error line="'+t.line+'" column="'+t.col+'" severity="'+t.type+'"'+' message="'+e(t.message)+'" source="'+o(t.rule)+'"/>')}),s.push("</file>")),s.join("")}})}(),CSSLint.addFormatter({id:"compact",name:"Compact, 'porcelain' format",startFormat:function(){return""},endFormat:function(){return""},formatResults:function(e,t,n){var r=e.messages,i="";n=n||{};var s=function(e){return e.charAt(0).toUpperCase()+e.slice(1)};return r.length===0?n.quiet?"":t+": Lint Free!":(CSSLint.Util.forEach(r,function(e,n){e.rollup?i+=t+": "+s(e.type)+" - "+e.message+"\n":i+=t+": "+"line "+e.line+", col "+e.col+", "+s(e.type)+" - "+e.message+"\n"}),i)}}),CSSLint.addFormatter({id:"csslint-xml",name:"CSSLint XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><csslint>'},endFormat:function(){return"</csslint>"},formatResults:function(e,t,n){var r=e.messages,i=[],s=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(i.push('<file name="'+t+'">'),CSSLint.Util.forEach(r,function(e,t){e.rollup?i.push('<issue severity="'+e.type+'" reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>'):i.push('<issue line="'+e.line+'" char="'+e.col+'" severity="'+e.type+'"'+' reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>')}),i.push("</file>")),i.join("")}}),CSSLint.addFormatter({id:"junit-xml",name:"JUNIT XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><testsuites>'},endFormat:function(){return"</testsuites>"},formatResults:function(e,t,n){var r=e.messages,i=[],s={error:0,failure:0},o=function(e){return!!e&&"name"in e?"net.csslint."+e.name.replace(/\s/g,""):""},u=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(r.forEach(function(e,t){var n=e.type==="warning"?"error":e.type;e.rollup||(i.push('<testcase time="0" name="'+o(e.rule)+'">'),i.push("<"+n+' message="'+u(e.message)+'"><![CDATA['+e.line+":"+e.col+":"+u(e.evidence)+"]]></"+n+">"),i.push("</testcase>"),s[n]+=1)}),i.unshift('<testsuite time="0" tests="'+r.length+'" skipped="0" errors="'+s.error+'" failures="'+s.failure+'" package="net.csslint" name="'+t+'">'),i.push("</testsuite>")),i.join("")}}),CSSLint.addFormatter({id:"lint-xml",name:"Lint XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><lint>'},endFormat:function(){return"</lint>"},formatResults:function(e,t,n){var r=e.messages,i=[],s=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(i.push('<file name="'+t+'">'),CSSLint.Util.forEach(r,function(e,t){e.rollup?i.push('<issue severity="'+e.type+'" reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>'):i.push('<issue line="'+e.line+'" char="'+e.col+'" severity="'+e.type+'"'+' reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>')}),i.push("</file>")),i.join("")}}),CSSLint.addFormatter({id:"text",name:"Plain Text",startFormat:function(){return""},endFormat:function(){return""},formatResults:function(e,t,n){var r=e.messages,i="";n=n||{};if(r.length===0)return n.quiet?"":"\n\ncsslint: No errors in "+t+".";i="\n\ncsslint: There are "+r.length+" problems in "+t+".";var s=t.lastIndexOf("/"),o=t;return s===-1&&(s=t.lastIndexOf("\\")),s>-1&&(o=t.substring(s+1)),CSSLint.Util.forEach(r,function(e,t){i=i+"\n\n"+o,e.rollup?(i+="\n"+(t+1)+": "+e.type,i+="\n"+e.message):(i+="\n"+(t+1)+": "+e.type+" at line "+e.line+", col "+e.col,i+="\n"+e.message,i+="\n"+e.evidence)}),i}}),exports.CSSLint=CSSLint})
4027 ^
4028
4029./lib/viewers/text/worker-css.js:1: WARNING - Suspicious code. The result of the 'eq' operator is not being used.
4030"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/css_worker",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/worker/mirror","ace/mode/css/csslint"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/lang"),s=e("../worker/mirror").Mirror,o=e("./css/csslint").CSSLint,u=t.Worker=function(e){s.call(this,e),this.setTimeout(400),this.ruleset=null,this.setDisabledRules("ids"),this.setInfoRules("adjoining-classes|qualified-headings|zero-units|gradients|import|outline-none")};r.inherits(u,s),function(){this.setInfoRules=function(e){typeof e=="string"&&(e=e.split("|")),this.infoRules=i.arrayToMap(e),this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.setDisabledRules=function(e){if(!e)this.ruleset=null;else{typeof e=="string"&&(e=e.split("|"));var t={};o.getRules().forEach(function(e){t[e.id]=!0}),e.forEach(function(e){delete t[e]}),this.ruleset=t}this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.onUpdate=function(){var e=this.doc.getValue(),t=this.infoRules,n=o.verify(e,this.ruleset);this.sender.emit("csslint",n.messages.map(function(e){return{row:e.line-1,column:e.col-1,text:e.message,type:t[e.rule.id]?"info":e.type}}))}}.call(u.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/mode/css/csslint",["require","exports","module"],function(require,exports,module){function Reporter(e,t){this.messages=[],this.stats=[],this.lines=e,this.ruleset=t}var parserlib={};(function(){function e(){this._listeners={}}function t(e){this._input=e.replace(/\n\r?/g,"\n"),this._line=1,this._col=1,this._cursor=0}function n(e,t,n){this.col=n,this.line=t,this.message=e}function r(e,t,n,r){this.col=n,this.line=t,this.text=e,this.type=r}function i(e,n){this._reader=e?new t(e.toString()):null,this._token=null,this._tokenData=n,this._lt=[],this._ltIndex=0,this._ltIndexCache=[]}e.prototype={constructor:e,addListener:function(e,t){this._listeners[e]||(this._listeners[e]=[]),this._listeners[e].push(t)},fire:function(e){typeof e=="string"&&(e={type:e}),typeof e.target!="undefined"&&(e.target=this);if(typeof e.type=="undefined")throw new Error("Event object missing 'type' property.");if(this._listeners[e.type]){var t=this._listeners[e.type].concat();for(var n=0,r=t.length;n<r;n++)t[n].call(this,e)}},removeListener:function(e,t){if(this._listeners[e]){var n=this._listeners[e];for(var r=0,i=n.length;r<i;r++)if(n[r]===t){n.splice(r,1);break}}}},t.prototype={constructor:t,getCol:function(){return this._col},getLine:function(){return this._line},eof:function(){return this._cursor==this._input.length},peek:function(e){var t=null;return e=typeof e=="undefined"?1:e,this._cursor<this._input.length&&(t=this._input.charAt(this._cursor+e-1)),t},read:function(){var e=null;return this._cursor<this._input.length&&(this._input.charAt(this._cursor)=="\n"?(this._line++,this._col=1):this._col++,e=this._input.charAt(this._cursor++)),e},mark:function(){this._bookmark={cursor:this._cursor,line:this._line,col:this._col}},reset:function(){this._bookmark&&(this._cursor=this._bookmark.cursor,this._line=this._bookmark.line,this._col=this._bookmark.col,delete this._bookmark)},readTo:function(e){var t="",n;while(t.length<e.length||t.lastIndexOf(e)!=t.length-e.length){n=this.read();if(!n)throw new Error('Expected "'+e+'" at line '+this._line+", col "+this._col+".");t+=n}return t},readWhile:function(e){var t="",n=this.read();while(n!==null&&e(n))t+=n,n=this.read();return t},readMatch:function(e){var t=this._input.substring(this._cursor),n=null;return typeof e=="string"?t.indexOf(e)===0&&(n=this.readCount(e.length)):e instanceof RegExp&&e.test(t)&&(n=this.readCount(RegExp.lastMatch.length)),n},readCount:function(e){var t="";while(e--)t+=this.read();return t}},n.prototype=new Error,r.fromToken=function(e){return new r(e.value,e.startLine,e.startCol)},r.prototype={constructor:r,valueOf:function(){return this.toString()},toString:function(){return this.text}},i.createTokenData=function(e){var t=[],n={},r=e.concat([]),i=0,s=r.length+1;r.UNKNOWN=-1,r.unshift({name:"EOF"});for(;i<s;i++)t.push(r[i].name),r[r[i].name]=i,r[i].text&&(n[r[i].text]=i);return r.name=function(e){return t[e]},r.type=function(e){return n[e]},r},i.prototype={constructor:i,match:function(e,t){e instanceof Array||(e=[e]);var n=this.get(t),r=0,i=e.length;while(r<i)if(n==e[r++])return!0;return this.unget(),!1},mustMatch:function(e,t){var r;e instanceof Array||(e=[e]);if(!this.match.apply(this,arguments))throw r=this.LT(1),new n("Expected "+this._tokenData[e[0]].name+" at line "+r.startLine+", col "+r.startCol+".",r.startLine,r.startCol)},advance:function(e,t){while(this.LA(0)!==0&&!this.match(e,t))this.get();return this.LA(0)},get:function(e){var t=this._tokenData,n=this._reader,r,i=0,s=t.length,o=!1,u,a;if(this._lt.length&&this._ltIndex>=0&&this._ltIndex<this._lt.length){i++,this._token=this._lt[this._ltIndex++],a=t[this._token.type];while(a.channel!==undefined&&e!==a.channel&&this._ltIndex<this._lt.length)this._token=this._lt[this._ltIndex++],a=t[this._token.type],i++;if((a.channel===undefined||e===a.channel)&&this._ltIndex<=this._lt.length)return this._ltIndexCache.push(i),this._token.type}return u=this._getToken(),u.type>-1&&!t[u.type].hide&&(u.channel=t[u.type].channel,this._token=u,this._lt.push(u),this._ltIndexCache.push(this._lt.length-this._ltIndex+i),this._lt.length>5&&this._lt.shift(),this._ltIndexCache.length>5&&this._ltIndexCache.shift(),this._ltIndex=this._lt.length),a=t[u.type],a&&(a.hide||a.channel!==undefined&&e!==a.channel)?this.get(e):u.type},LA:function(e){var t=e,n;if(e>0){if(e>5)throw new Error("Too much lookahead.");while(t)n=this.get(),t--;while(t<e)this.unget(),t++}else if(e<0){if(!this._lt[this._ltIndex+e])throw new Error("Too much lookbehind.");n=this._lt[this._ltIndex+e].type}else n=this._token.type;return n},LT:function(e){return this.LA(e),this._lt[this._ltIndex+e-1]},peek:function(){return this.LA(1)},token:function(){return this._token},tokenName:function(e){return e<0||e>this._tokenData.length?"UNKNOWN_TOKEN":this._tokenData[e].name},tokenType:function(e){return this._tokenData[e]||-1},unget:function(){if(!this._ltIndexCache.length)throw new Error("Too much lookahead.");this._ltIndex-=this._ltIndexCache.pop(),this._token=this._lt[this._ltIndex-1]}},parserlib.util={StringReader:t,SyntaxError:n,SyntaxUnit:r,EventTarget:e,TokenStreamBase:i}})(),function(){function Combinator(e,t,n){SyntaxUnit.call(this,e,t,n,Parser.COMBINATOR_TYPE),this.type="unknown",/^\s+$/.test(e)?this.type="descendant":e==">"?this.type="child":e=="+"?this.type="adjacent-sibling":e=="~"&&(this.type="sibling")}function MediaFeature(e,t){SyntaxUnit.call(this,"("+e+(t!==null?":"+t:"")+")",e.startLine,e.startCol,Parser.MEDIA_FEATURE_TYPE),this.name=e,this.value=t}function MediaQuery(e,t,n,r,i){SyntaxUnit.call(this,(e?e+" ":"")+(t?t:"")+(t&&n.length>0?" and ":"")+n.join(" and "),r,i,Parser.MEDIA_QUERY_TYPE),this.modifier=e,this.mediaType=t,this.features=n}function Parser(e){EventTarget.call(this),this.options=e||{},this._tokenStream=null}function PropertyName(e,t,n,r){SyntaxUnit.call(this,e,n,r,Parser.PROPERTY_NAME_TYPE),this.hack=t}function PropertyValue(e,t,n){SyntaxUnit.call(this,e.join(" "),t,n,Parser.PROPERTY_VALUE_TYPE),this.parts=e}function PropertyValueIterator(e){this._i=0,this._parts=e.parts,this._marks=[],this.value=e}function PropertyValuePart(text,line,col){SyntaxUnit.call(this,text,line,col,Parser.PROPERTY_VALUE_PART_TYPE),this.type="unknown";var temp;if(/^([+\-]?[\d\.]+)([a-z]+)$/i.test(text)){this.type="dimension",this.value=+RegExp.$1,this.units=RegExp.$2;switch(this.units.toLowerCase()){case"em":case"rem":case"ex":case"px":case"cm":case"mm":case"in":case"pt":case"pc":case"ch":this.type="length";break;case"deg":case"rad":case"grad":this.type="angle";break;case"ms":case"s":this.type="time";break;case"hz":case"khz":this.type="frequency";break;case"dpi":case"dpcm":this.type="resolution"}}else/^([+\-]?[\d\.]+)%$/i.test(text)?(this.type="percentage",this.value=+RegExp.$1):/^([+\-]?[\d\.]+)%$/i.test(text)?(this.type="percentage",this.value=+RegExp.$1):/^([+\-]?\d+)$/i.test(text)?(this.type="integer",this.value=+RegExp.$1):/^([+\-]?[\d\.]+)$/i.test(text)?(this.type="number",this.value=+RegExp.$1):/^#([a-f0-9]{3,6})/i.test(text)?(this.type="color",temp=RegExp.$1,temp.length==3?(this.red=parseInt(temp.charAt(0)+temp.charAt(0),16),this.green=parseInt(temp.charAt(1)+temp.charAt(1),16),this.blue=parseInt(temp.charAt(2)+temp.charAt(2),16)):(this.red=parseInt(temp.substring(0,2),16),this.green=parseInt(temp.substring(2,4),16),this.blue=parseInt(temp.substring(4,6),16))):/^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1,this.green=+RegExp.$2,this.blue=+RegExp.$3):/^rgb\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1*255/100,this.green=+RegExp.$2*255/100,this.blue=+RegExp.$3*255/100):/^rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1,this.green=+RegExp.$2,this.blue=+RegExp.$3,this.alpha=+RegExp.$4):/^rgba\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1*255/100,this.green=+RegExp.$2*255/100,this.blue=+RegExp.$3*255/100,this.alpha=+RegExp.$4):/^hsl\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(text)?(this.type="color",this.hue=+RegExp.$1,this.saturation=+RegExp.$2/100,this.lightness=+RegExp.$3/100):/^hsla\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.hue=+RegExp.$1,this.saturation=+RegExp.$2/100,this.lightness=+RegExp.$3/100,this.alpha=+RegExp.$4):/^url\(["']?([^\)"']+)["']?\)/i.test(text)?(this.type="uri",this.uri=RegExp.$1):/^([^\(]+)\(/i.test(text)?(this.type="function",this.name=RegExp.$1,this.value=text):/^["'][^"']*["']/.test(text)?(this.type="string",this.value=eval(text)):Colors[text.toLowerCase()]?(this.type="color",temp=Colors[text.toLowerCase()].substring(1),this.red=parseInt(temp.substring(0,2),16),this.green=parseInt(temp.substring(2,4),16),this.blue=parseInt(temp.substring(4,6),16)):/^[\,\/]$/.test(text)?(this.type="operator",this.value=text):/^[a-z\-\u0080-\uFFFF][a-z0-9\-\u0080-\uFFFF]*$/i.test(text)&&(this.type="identifier",this.value=text)}function Selector(e,t,n){SyntaxUnit.call(this,e.join(" "),t,n,Parser.SELECTOR_TYPE),this.parts=e,this.specificity=Specificity.calculate(this)}function SelectorPart(e,t,n,r,i){SyntaxUnit.call(this,n,r,i,Parser.SELECTOR_PART_TYPE),this.elementName=e,this.modifiers=t}function SelectorSubPart(e,t,n,r){SyntaxUnit.call(this,e,n,r,Parser.SELECTOR_SUB_PART_TYPE),this.type=t,this.args=[]}function Specificity(e,t,n,r){this.a=e,this.b=t,this.c=n,this.d=r}function isHexDigit(e){return e!==null&&h.test(e)}function isDigit(e){return e!==null&&/\d/.test(e)}function isWhitespace(e){return e!==null&&/\s/.test(e)}function isNewLine(e){return e!==null&&nl.test(e)}function isNameStart(e){return e!==null&&/[a-z_\u0080-\uFFFF\\]/i.test(e)}function isNameChar(e){return e!==null&&(isNameStart(e)||/[0-9\-\\]/.test(e))}function isIdentStart(e){return e!==null&&(isNameStart(e)||/\-\\/.test(e))}function mix(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function TokenStream(e){TokenStreamBase.call(this,e,Tokens)}function ValidationError(e,t,n){this.col=n,this.line=t,this.message=e}var EventTarget=parserlib.util.EventTarget,TokenStreamBase=parserlib.util.TokenStreamBase,StringReader=parserlib.util.StringReader,SyntaxError=parserlib.util.SyntaxError,SyntaxUnit=parserlib.util.SyntaxUnit,Colors={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32",activeBorder:"Active window border.",activecaption:"Active window caption.",appworkspace:"Background color of multiple document interface.",background:"Desktop background.",buttonface:"The face background color for 3-D elements that appear 3-D due to one layer of surrounding border.",buttonhighlight:"The color of the border facing the light source for 3-D elements that appear 3-D due to one layer of surrounding border.",buttonshadow:"The color of the border away from the light source for 3-D elements that appear 3-D due to one layer of surrounding border.",buttontext:"Text on push buttons.",captiontext:"Text in caption, size box, and scrollbar arrow box.",graytext:"Grayed (disabled) text. This color is set to #000 if the current display driver does not support a solid gray color.",highlight:"Item(s) selected in a control.",highlighttext:"Text of item(s) selected in a control.",inactiveborder:"Inactive window border.",inactivecaption:"Inactive window caption.",inactivecaptiontext:"Color of text in an inactive caption.",infobackground:"Background color for tooltip controls.",infotext:"Text color for tooltip controls.",menu:"Menu background.",menutext:"Text in menus.",scrollbar:"Scroll bar gray area.",threeddarkshadow:"The color of the darker (generally outer) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedface:"The face background color for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedhighlight:"The color of the lighter (generally outer) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedlightshadow:"The color of the darker (generally inner) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedshadow:"The color of the lighter (generally inner) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",window:"Window background.",windowframe:"Window frame.",windowtext:"Text in windows."};Combinator.prototype=new SyntaxUnit,Combinator.prototype.constructor=Combinator,MediaFeature.prototype=new SyntaxUnit,MediaFeature.prototype.constructor=MediaFeature,MediaQuery.prototype=new SyntaxUnit,MediaQuery.prototype.constructor=MediaQuery,Parser.DEFAULT_TYPE=0,Parser.COMBINATOR_TYPE=1,Parser.MEDIA_FEATURE_TYPE=2,Parser.MEDIA_QUERY_TYPE=3,Parser.PROPERTY_NAME_TYPE=4,Parser.PROPERTY_VALUE_TYPE=5,Parser.PROPERTY_VALUE_PART_TYPE=6,Parser.SELECTOR_TYPE=7,Parser.SELECTOR_PART_TYPE=8,Parser.SELECTOR_SUB_PART_TYPE=9,Parser.prototype=function(){var e=new EventTarget,t,n={constructor:Parser,DEFAULT_TYPE:0,COMBINATOR_TYPE:1,MEDIA_FEATURE_TYPE:2,MEDIA_QUERY_TYPE:3,PROPERTY_NAME_TYPE:4,PROPERTY_VALUE_TYPE:5,PROPERTY_VALUE_PART_TYPE:6,SELECTOR_TYPE:7,SELECTOR_PART_TYPE:8,SELECTOR_SUB_PART_TYPE:9,_stylesheet:function(){var e=this._tokenStream,t=null,n,r,i;this.fire("startstylesheet"),this._charset(),this._skipCruft();while(e.peek()==Tokens.IMPORT_SYM)this._import(),this._skipCruft();while(e.peek()==Tokens.NAMESPACE_SYM)this._namespace(),this._skipCruft();i=e.peek();while(i>Tokens.EOF){try{switch(i){case Tokens.MEDIA_SYM:this._media(),this._skipCruft();break;case Tokens.PAGE_SYM:this._page(),this._skipCruft();break;case Tokens.FONT_FACE_SYM:this._font_face(),this._skipCruft();break;case Tokens.KEYFRAMES_SYM:this._keyframes(),this._skipCruft();break;case Tokens.UNKNOWN_SYM:e.get();if(!!this.options.strict)throw new SyntaxError("Unknown @ rule.",e.LT(0).startLine,e.LT(0).startCol);this.fire({type:"error",error:null,message:"Unknown @ rule: "+e.LT(0).value+".",line:e.LT(0).startLine,col:e.LT(0).startCol}),n=0;while(e.advance([Tokens.LBRACE,Tokens.RBRACE])==Tokens.LBRACE)n++;while(n)e.advance([Tokens.RBRACE]),n--;break;case Tokens.S:this._readWhitespace();break;default:if(!this._ruleset())switch(i){case Tokens.CHARSET_SYM:throw r=e.LT(1),this._charset(!1),new SyntaxError("@charset not allowed here.",r.startLine,r.startCol);case Tokens.IMPORT_SYM:throw r=e.LT(1),this._import(!1),new SyntaxError("@import not allowed here.",r.startLine,r.startCol);case Tokens.NAMESPACE_SYM:throw r=e.LT(1),this._namespace(!1),new SyntaxError("@namespace not allowed here.",r.startLine,r.startCol);default:e.get(),this._unexpectedToken(e.token())}}}catch(s){if(!(s instanceof SyntaxError&&!this.options.strict))throw s;this.fire({type:"error",error:s,message:s.message,line:s.line,col:s.col})}i=e.peek()}i!=Tokens.EOF&&this._unexpectedToken(e.token()),this.fire("endstylesheet")},_charset:function(e){var t=this._tokenStream,n,r,i,s;t.match(Tokens.CHARSET_SYM)&&(i=t.token().startLine,s=t.token().startCol,this._readWhitespace(),t.mustMatch(Tokens.STRING),r=t.token(),n=r.value,this._readWhitespace(),t.mustMatch(Tokens.SEMICOLON),e!==!1&&this.fire({type:"charset",charset:n,line:i,col:s}))},_import:function(e){var t=this._tokenStream,n,r,i,s=[];t.mustMatch(Tokens.IMPORT_SYM),i=t.token(),this._readWhitespace(),t.mustMatch([Tokens.STRING,Tokens.URI]),r=t.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/,"$1"),this._readWhitespace(),s=this._media_query_list(),t.mustMatch(Tokens.SEMICOLON),this._readWhitespace(),e!==!1&&this.fire({type:"import",uri:r,media:s,line:i.startLine,col:i.startCol})},_namespace:function(e){var t=this._tokenStream,n,r,i,s;t.mustMatch(Tokens.NAMESPACE_SYM),n=t.token().startLine,r=t.token().startCol,this._readWhitespace(),t.match(Tokens.IDENT)&&(i=t.token().value,this._readWhitespace()),t.mustMatch([Tokens.STRING,Tokens.URI]),s=t.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/,"$1"),this._readWhitespace(),t.mustMatch(Tokens.SEMICOLON),this._readWhitespace(),e!==!1&&this.fire({type:"namespace",prefix:i,uri:s,line:n,col:r})},_media:function(){var e=this._tokenStream,t,n,r;e.mustMatch(Tokens.MEDIA_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),r=this._media_query_list(),e.mustMatch(Tokens.LBRACE),this._readWhitespace(),this.fire({type:"startmedia",media:r,line:t,col:n});for(;;)if(e.peek()==Tokens.PAGE_SYM)this._page();else if(!this._ruleset())break;e.mustMatch(Tokens.RBRACE),this._readWhitespace(),this.fire({type:"endmedia",media:r,line:t,col:n})},_media_query_list:function(){var e=this._tokenStream,t=[];this._readWhitespace(),(e.peek()==Tokens.IDENT||e.peek()==Tokens.LPAREN)&&t.push(this._media_query());while(e.match(Tokens.COMMA))this._readWhitespace(),t.push(this._media_query());return t},_media_query:function(){var e=this._tokenStream,t=null,n=null,r=null,i=[];e.match(Tokens.IDENT)&&(n=e.token().value.toLowerCase(),n!="only"&&n!="not"?(e.unget(),n=null):r=e.token()),this._readWhitespace(),e.peek()==Tokens.IDENT?(t=this._media_type(),r===null&&(r=e.token())):e.peek()==Tokens.LPAREN&&(r===null&&(r=e.LT(1)),i.push(this._media_expression()));if(t===null&&i.length===0)return null;this._readWhitespace();while(e.match(Tokens.IDENT))e.token().value.toLowerCase()!="and"&&this._unexpectedToken(e.token()),this._readWhitespace(),i.push(this._media_expression());return new MediaQuery(n,t,i,r.startLine,r.startCol)},_media_type:function(){return this._media_feature()},_media_expression:function(){var e=this._tokenStream,t=null,n,r=null;return e.mustMatch(Tokens.LPAREN),t=this._media_feature(),this._readWhitespace(),e.match(Tokens.COLON)&&(this._readWhitespace(),n=e.LT(1),r=this._expression()),e.mustMatch(Tokens.RPAREN),this._readWhitespace(),new MediaFeature(t,r?new SyntaxUnit(r,n.startLine,n.startCol):null)},_media_feature:function(){var e=this._tokenStream;return e.mustMatch(Tokens.IDENT),SyntaxUnit.fromToken(e.token())},_page:function(){var e=this._tokenStream,t,n,r=null,i=null;e.mustMatch(Tokens.PAGE_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),e.match(Tokens.IDENT)&&(r=e.token().value,r.toLowerCase()==="auto"&&this._unexpectedToken(e.token())),e.peek()==Tokens.COLON&&(i=this._pseudo_page()),this._readWhitespace(),this.fire({type:"startpage",id:r,pseudo:i,line:t,col:n}),this._readDeclarations(!0,!0),this.fire({type:"endpage",id:r,pseudo:i,line:t,col:n})},_margin:function(){var e=this._tokenStream,t,n,r=this._margin_sym();return r?(t=e.token().startLine,n=e.token().startCol,this.fire({type:"startpagemargin",margin:r,line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endpagemargin",margin:r,line:t,col:n}),!0):!1},_margin_sym:function(){var e=this._tokenStream;return e.match([Tokens.TOPLEFTCORNER_SYM,Tokens.TOPLEFT_SYM,Tokens.TOPCENTER_SYM,Tokens.TOPRIGHT_SYM,Tokens.TOPRIGHTCORNER_SYM,Tokens.BOTTOMLEFTCORNER_SYM,Tokens.BOTTOMLEFT_SYM,Tokens.BOTTOMCENTER_SYM,Tokens.BOTTOMRIGHT_SYM,Tokens.BOTTOMRIGHTCORNER_SYM,Tokens.LEFTTOP_SYM,Tokens.LEFTMIDDLE_SYM,Tokens.LEFTBOTTOM_SYM,Tokens.RIGHTTOP_SYM,Tokens.RIGHTMIDDLE_SYM,Tokens.RIGHTBOTTOM_SYM])?SyntaxUnit.fromToken(e.token()):null},_pseudo_page:function(){var e=this._tokenStream;return e.mustMatch(Tokens.COLON),e.mustMatch(Tokens.IDENT),e.token().value},_font_face:function(){var e=this._tokenStream,t,n;e.mustMatch(Tokens.FONT_FACE_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),this.fire({type:"startfontface",line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endfontface",line:t,col:n})},_operator:function(e){var t=this._tokenStream,n=null;if(t.match([Tokens.SLASH,Tokens.COMMA])||e&&t.match([Tokens.PLUS,Tokens.STAR,Tokens.MINUS]))n=t.token(),this._readWhitespace();return n?PropertyValuePart.fromToken(n):null},_combinator:function(){var e=this._tokenStream,t=null,n;return e.match([Tokens.PLUS,Tokens.GREATER,Tokens.TILDE])&&(n=e.token(),t=new Combinator(n.value,n.startLine,n.startCol),this._readWhitespace()),t},_unary_operator:function(){var e=this._tokenStream;return e.match([Tokens.MINUS,Tokens.PLUS])?e.token().value:null},_property:function(){var e=this._tokenStream,t=null,n=null,r,i,s,o;return e.peek()==Tokens.STAR&&this.options.starHack&&(e.get(),i=e.token(),n=i.value,s=i.startLine,o=i.startCol),e.match(Tokens.IDENT)&&(i=e.token(),r=i.value,r.charAt(0)=="_"&&this.options.underscoreHack&&(n="_",r=r.substring(1)),t=new PropertyName(r,n,s||i.startLine,o||i.startCol),this._readWhitespace()),t},_ruleset:function(){var e=this._tokenStream,t,n;try{n=this._selectors_group()}catch(r){if(r instanceof SyntaxError&&!this.options.strict){this.fire({type:"error",error:r,message:r.message,line:r.line,col:r.col}),t=e.advance([Tokens.RBRACE]);if(t!=Tokens.RBRACE)throw r;return!0}throw r}return n&&(this.fire({type:"startrule",selectors:n,line:n[0].line,col:n[0].col}),this._readDeclarations(!0),this.fire({type:"endrule",selectors:n,line:n[0].line,col:n[0].col})),n},_selectors_group:function(){var e=this._tokenStream,t=[],n;n=this._selector();if(n!==null){t.push(n);while(e.match(Tokens.COMMA))this._readWhitespace(),n=this._selector(),n!==null?t.push(n):this._unexpectedToken(e.LT(1))}return t.length?t:null},_selector:function(){var e=this._tokenStream,t=[],n=null,r=null,i=null;n=this._simple_selector_sequence();if(n===null)return null;t.push(n);do{r=this._combinator();if(r!==null)t.push(r),n=this._simple_selector_sequence(),n===null?this._unexpectedToken(e.LT(1)):t.push(n);else{if(!this._readWhitespace())break;i=new Combinator(e.token().value,e.token().startLine,e.token().startCol),r=this._combinator(),n=this._simple_selector_sequence(),n===null?r!==null&&this._unexpectedToken(e.LT(1)):(r!==null?t.push(r):t.push(i),t.push(n))}}while(!0);return new Selector(t,t[0].line,t[0].col)},_simple_selector_sequence:function(){var e=this._tokenStream,t=null,n=[],r="",i=[function(){return e.match(Tokens.HASH)?new SelectorSubPart(e.token().value,"id",e.token().startLine,e.token().startCol):null},this._class,this._attrib,this._pseudo,this._negation],s=0,o=i.length,u=null,a=!1,f,l;f=e.LT(1).startLine,l=e.LT(1).startCol,t=this._type_selector(),t||(t=this._universal()),t!==null&&(r+=t);for(;;){if(e.peek()===Tokens.S)break;while(s<o&&u===null)u=i[s++].call(this);if(u===null){if(r==="")return null;break}s=0,n.push(u),r+=u.toString(),u=null}return r!==""?new SelectorPart(t,n,r,f,l):null},_type_selector:function(){var e=this._tokenStream,t=this._namespace_prefix(),n=this._element_name();return n?(t&&(n.text=t+n.text,n.col-=t.length),n):(t&&(e.unget(),t.length>1&&e.unget()),null)},_class:function(){var e=this._tokenStream,t;return e.match(Tokens.DOT)?(e.mustMatch(Tokens.IDENT),t=e.token(),new SelectorSubPart("."+t.value,"class",t.startLine,t.startCol-1)):null},_element_name:function(){var e=this._tokenStream,t;return e.match(Tokens.IDENT)?(t=e.token(),new SelectorSubPart(t.value,"elementName",t.startLine,t.startCol)):null},_namespace_prefix:function(){var e=this._tokenStream,t="";if(e.LA(1)===Tokens.PIPE||e.LA(2)===Tokens.PIPE)e.match([Tokens.IDENT,Tokens.STAR])&&(t+=e.token().value),e.mustMatch(Tokens.PIPE),t+="|";return t.length?t:null},_universal:function(){var e=this._tokenStream,t="",n;return n=this._namespace_prefix(),n&&(t+=n),e.match(Tokens.STAR)&&(t+="*"),t.length?t:null},_attrib:function(){var e=this._tokenStream,t=null,n,r;return e.match(Tokens.LBRACKET)?(r=e.token(),t=r.value,t+=this._readWhitespace(),n=this._namespace_prefix(),n&&(t+=n),e.mustMatch(Tokens.IDENT),t+=e.token().value,t+=this._readWhitespace(),e.match([Tokens.PREFIXMATCH,Tokens.SUFFIXMATCH,Tokens.SUBSTRINGMATCH,Tokens.EQUALS,Tokens.INCLUDES,Tokens.DASHMATCH])&&(t+=e.token().value,t+=this._readWhitespace(),e.mustMatch([Tokens.IDENT,Tokens.STRING]),t+=e.token().value,t+=this._readWhitespace()),e.mustMatch(Tokens.RBRACKET),new SelectorSubPart(t+"]","attribute",r.startLine,r.startCol)):null},_pseudo:function(){var e=this._tokenStream,t=null,n=":",r,i;return e.match(Tokens.COLON)&&(e.match(Tokens.COLON)&&(n+=":"),e.match(Tokens.IDENT)?(t=e.token().value,r=e.token().startLine,i=e.token().startCol-n.length):e.peek()==Tokens.FUNCTION&&(r=e.LT(1).startLine,i=e.LT(1).startCol-n.length,t=this._functional_pseudo()),t&&(t=new SelectorSubPart(n+t,"pseudo",r,i))),t},_functional_pseudo:function(){var e=this._tokenStream,t=null;return e.match(Tokens.FUNCTION)&&(t=e.token().value,t+=this._readWhitespace(),t+=this._expression(),e.mustMatch(Tokens.RPAREN),t+=")"),t},_expression:function(){var e=this._tokenStream,t="";while(e.match([Tokens.PLUS,Tokens.MINUS,Tokens.DIMENSION,Tokens.NUMBER,Tokens.STRING,Tokens.IDENT,Tokens.LENGTH,Tokens.FREQ,Tokens.ANGLE,Tokens.TIME,Tokens.RESOLUTION,Tokens.SLASH]))t+=e.token().value,t+=this._readWhitespace();return t.length?t:null},_negation:function(){var e=this._tokenStream,t,n,r="",i,s=null;return e.match(Tokens.NOT)&&(r=e.token().value,t=e.token().startLine,n=e.token().startCol,r+=this._readWhitespace(),i=this._negation_arg(),r+=i,r+=this._readWhitespace(),e.match(Tokens.RPAREN),r+=e.token().value,s=new SelectorSubPart(r,"not",t,n),s.args.push(i)),s},_negation_arg:function(){var e=this._tokenStream,t=[this._type_selector,this._universal,function(){return e.match(Tokens.HASH)?new SelectorSubPart(e.token().value,"id",e.token().startLine,e.token().startCol):null},this._class,this._attrib,this._pseudo],n=null,r=0,i=t.length,s,o,u,a;o=e.LT(1).startLine,u=e.LT(1).startCol;while(r<i&&n===null)n=t[r].call(this),r++;return n===null&&this._unexpectedToken(e.LT(1)),n.type=="elementName"?a=new SelectorPart(n,[],n.toString(),o,u):a=new SelectorPart(null,[n],n.toString(),o,u),a},_declaration:function(){var e=this._tokenStream,t=null,n=null,r=null,i=null,s=null,o="";t=this._property();if(t!==null){e.mustMatch(Tokens.COLON),this._readWhitespace(),n=this._expr(),(!n||n.length===0)&&this._unexpectedToken(e.LT(1)),r=this._prio(),o=t.toString();if(this.options.starHack&&t.hack=="*"||this.options.underscoreHack&&t.hack=="_")o=t.text;try{this._validateProperty(o,n)}catch(u){s=u}return this.fire({type:"property",property:t,value:n,important:r,line:t.line,col:t.col,invalid:s}),!0}return!1},_prio:function(){var e=this._tokenStream,t=e.match(Tokens.IMPORTANT_SYM);return this._readWhitespace(),t},_expr:function(e){var t=this._tokenStream,n=[],r=null,i=null;r=this._term();if(r!==null){n.push(r);do{i=this._operator(e),i&&n.push(i),r=this._term();if(r===null)break;n.push(r)}while(!0)}return n.length>0?new PropertyValue(n,n[0].line,n[0].col):null},_term:function(){var e=this._tokenStream,t=null,n=null,r,i,s;return t=this._unary_operator(),t!==null&&(i=e.token().startLine,s=e.token().startCol),e.peek()==Tokens.IE_FUNCTION&&this.options.ieFilters?(n=this._ie_function(),t===null&&(i=e.token().startLine,s=e.token().startCol)):e.match([Tokens.NUMBER,Tokens.PERCENTAGE,Tokens.LENGTH,Tokens.ANGLE,Tokens.TIME,Tokens.FREQ,Tokens.STRING,Tokens.IDENT,Tokens.URI,Tokens.UNICODE_RANGE])?(n=e.token().value,t===null&&(i=e.token().startLine,s=e.token().startCol),this._readWhitespace()):(r=this._hexcolor(),r===null?(t===null&&(i=e.LT(1).startLine,s=e.LT(1).startCol),n===null&&(e.LA(3)==Tokens.EQUALS&&this.options.ieFilters?n=this._ie_function():n=this._function())):(n=r.value,t===null&&(i=r.startLine,s=r.startCol))),n!==null?new PropertyValuePart(t!==null?t+n:n,i,s):null},_function:function(){var e=this._tokenStream,t=null,n=null,r;if(e.match(Tokens.FUNCTION)){t=e.token().value,this._readWhitespace(),n=this._expr(!0),t+=n;if(this.options.ieFilters&&e.peek()==Tokens.EQUALS)do{this._readWhitespace()&&(t+=e.token().value),e.LA(0)==Tokens.COMMA&&(t+=e.token().value),e.match(Tokens.IDENT),t+=e.token().value,e.match(Tokens.EQUALS),t+=e.token().value,r=e.peek();while(r!=Tokens.COMMA&&r!=Tokens.S&&r!=Tokens.RPAREN)e.get(),t+=e.token().value,r=e.peek()}while(e.match([Tokens.COMMA,Tokens.S]));e.match(Tokens.RPAREN),t+=")",this._readWhitespace()}return t},_ie_function:function(){var e=this._tokenStream,t=null,n=null,r;if(e.match([Tokens.IE_FUNCTION,Tokens.FUNCTION])){t=e.token().value;do{this._readWhitespace()&&(t+=e.token().value),e.LA(0)==Tokens.COMMA&&(t+=e.token().value),e.match(Tokens.IDENT),t+=e.token().value,e.match(Tokens.EQUALS),t+=e.token().value,r=e.peek();while(r!=Tokens.COMMA&&r!=Tokens.S&&r!=Tokens.RPAREN)e.get(),t+=e.token().value,r=e.peek()}while(e.match([Tokens.COMMA,Tokens.S]));e.match(Tokens.RPAREN),t+=")",this._readWhitespace()}return t},_hexcolor:function(){var e=this._tokenStream,t=null,n;if(e.match(Tokens.HASH)){t=e.token(),n=t.value;if(!/#[a-f0-9]{3,6}/i.test(n))throw new SyntaxError("Expected a hex color but found '"+n+"' at line "+t.startLine+", col "+t.startCol+".",t.startLine,t.startCol);this._readWhitespace()}return t},_keyframes:function(){var e=this._tokenStream,t,n,r,i="";e.mustMatch(Tokens.KEYFRAMES_SYM),t=e.token(),/^@\-([^\-]+)\-/.test(t.value)&&(i=RegExp.$1),this._readWhitespace(),r=this._keyframe_name(),this._readWhitespace(),e.mustMatch(Tokens.LBRACE),this.fire({type:"startkeyframes",name:r,prefix:i,line:t.startLine,col:t.startCol}),this._readWhitespace(),n=e.peek();while(n==Tokens.IDENT||n==Tokens.PERCENTAGE)this._keyframe_rule(),this._readWhitespace(),n=e.peek();this.fire({type:"endkeyframes",name:r,prefix:i,line:t.startLine,col:t.startCol}),this._readWhitespace(),e.mustMatch(Tokens.RBRACE)},_keyframe_name:function(){var e=this._tokenStream,t;return e.mustMatch([Tokens.IDENT,Tokens.STRING]),SyntaxUnit.fromToken(e.token())},_keyframe_rule:function(){var e=this._tokenStream,t,n=this._key_list();this.fire({type:"startkeyframerule",keys:n,line:n[0].line,col:n[0].col}),this._readDeclarations(!0),this.fire({type:"endkeyframerule",keys:n,line:n[0].line,col:n[0].col})},_key_list:function(){var e=this._tokenStream,t,n,r=[];r.push(this._key()),this._readWhitespace();while(e.match(Tokens.COMMA))this._readWhitespace(),r.push(this._key()),this._readWhitespace();return r},_key:function(){var e=this._tokenStream,t;if(e.match(Tokens.PERCENTAGE))return SyntaxUnit.fromToken(e.token());if(e.match(Tokens.IDENT)){t=e.token();if(/from|to/i.test(t.value))return SyntaxUnit.fromToken(t);e.unget()}this._unexpectedToken(e.LT(1))},_skipCruft:function(){while(this._tokenStream.match([Tokens.S,Tokens.CDO,Tokens.CDC]));},_readDeclarations:function(e,t){var n=this._tokenStream,r;this._readWhitespace(),e&&n.mustMatch(Tokens.LBRACE),this._readWhitespace();try{for(;;){if(!(n.match(Tokens.SEMICOLON)||t&&this._margin())){if(!this._declaration())break;if(!n.match(Tokens.SEMICOLON))break}this._readWhitespace()}n.mustMatch(Tokens.RBRACE),this._readWhitespace()}catch(i){if(!(i instanceof SyntaxError&&!this.options.strict))throw i;this.fire({type:"error",error:i,message:i.message,line:i.line,col:i.col}),r=n.advance([Tokens.SEMICOLON,Tokens.RBRACE]);if(r==Tokens.SEMICOLON)this._readDeclarations(!1,t);else if(r!=Tokens.RBRACE)throw i}},_readWhitespace:function(){var e=this._tokenStream,t="";while(e.match(Tokens.S))t+=e.token().value;return t},_unexpectedToken:function(e){throw new SyntaxError("Unexpected token '"+e.value+"' at line "+e.startLine+", col "+e.startCol+".",e.startLine,e.startCol)},_verifyEnd:function(){this._tokenStream.LA(1)!=Tokens.EOF&&this._unexpectedToken(this._tokenStream.LT(1))},_validateProperty:function(e,t){Validation.validate(e,t)},parse:function(e){this._tokenStream=new TokenStream(e,Tokens),this._stylesheet()},parseStyleSheet:function(e){return this.parse(e)},parseMediaQuery:function(e){this._tokenStream=new TokenStream(e,Tokens);var t=this._media_query();return this._verifyEnd(),t},parsePropertyValue:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._expr();return this._readWhitespace(),this._verifyEnd(),t},parseRule:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._ruleset();return this._readWhitespace(),this._verifyEnd(),t},parseSelector:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._selector();return this._readWhitespace(),this._verifyEnd(),t},parseStyleAttribute:function(e){e+="}",this._tokenStream=new TokenStream(e,Tokens),this._readDeclarations()}};for(t in n)n.hasOwnProperty(t)&&(e[t]=n[t]);return e}();var Properties={"alignment-adjust":"auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical | <percentage> | <length>","alignment-baseline":"baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical",animation:1,"animation-delay":{multi:"<time>",comma:!0},"animation-direction":{multi:"normal | alternate",comma:!0},"animation-duration":{multi:"<time>",comma:!0},"animation-iteration-count":{multi:"<number> | infinite",comma:!0},"animation-name":{multi:"none | <ident>",comma:!0},"animation-play-state":{multi:"running | paused",comma:!0},"animation-timing-function":1,"-moz-animation-delay":{multi:"<time>",comma:!0},"-moz-animation-direction":{multi:"normal | alternate",comma:!0},"-moz-animation-duration":{multi:"<time>",comma:!0},"-moz-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-moz-animation-name":{multi:"none | <ident>",comma:!0},"-moz-animation-play-state":{multi:"running | paused",comma:!0},"-ms-animation-delay":{multi:"<time>",comma:!0},"-ms-animation-direction":{multi:"normal | alternate",comma:!0},"-ms-animation-duration":{multi:"<time>",comma:!0},"-ms-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-ms-animation-name":{multi:"none | <ident>",comma:!0},"-ms-animation-play-state":{multi:"running | paused",comma:!0},"-webkit-animation-delay":{multi:"<time>",comma:!0},"-webkit-animation-direction":{multi:"normal | alternate",comma:!0},"-webkit-animation-duration":{multi:"<time>",comma:!0},"-webkit-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-webkit-animation-name":{multi:"none | <ident>",comma:!0},"-webkit-animation-play-state":{multi:"running | paused",comma:!0},"-o-animation-delay":{multi:"<time>",comma:!0},"-o-animation-direction":{multi:"normal | alternate",comma:!0},"-o-animation-duration":{multi:"<time>",comma:!0},"-o-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-o-animation-name":{multi:"none | <ident>",comma:!0},"-o-animation-play-state":{multi:"running | paused",comma:!0},appearance:"icon | window | desktop | workspace | document | tooltip | dialog | button | push-button | hyperlink | radio-button | checkbox | menu-item | tab | menu | menubar | pull-down-menu | pop-up-menu | list-menu | radio-group | checkbox-group | outline-tree | range | field | combo-box | signature | password | normal | none | inherit",azimuth:function(e){var t="<angle> | leftwards | rightwards | inherit",n="left-side | far-left | left | center-left | center | center-right | right | far-right | right-side",r=!1,i=!1,s;ValidationTypes.isAny(e,t)||(ValidationTypes.isAny(e,"behind")&&(r=!0,i=!0),ValidationTypes.isAny(e,n)&&(i=!0,r||ValidationTypes.isAny(e,"behind")));if(e.hasNext())throw s=e.next(),i?new ValidationError("Expected end of value but found '"+s+"'.",s.line,s.col):new ValidationError("Expected (<'azimuth'>) but found '"+s+"'.",s.line,s.col)},"backface-visibility":"visible | hidden",background:1,"background-attachment":{multi:"<attachment>",comma:!0},"background-clip":{multi:"<box>",comma:!0},"background-color":"<color> | inherit","background-image":{multi:"<bg-image>",comma:!0},"background-origin":{multi:"<box>",comma:!0},"background-position":{multi:"<bg-position>",comma:!0},"background-repeat":{multi:"<repeat-style>"},"background-size":{multi:"<bg-size>",comma:!0},"baseline-shift":"baseline | sub | super | <percentage> | <length>",behavior:1,binding:1,bleed:"<length>","bookmark-label":"<content> | <attr> | <string>","bookmark-level":"none | <integer>","bookmark-state":"open | closed","bookmark-target":"none | <uri> | <attr>",border:"<border-width> || <border-style> || <color>","border-bottom":"<border-width> || <border-style> || <color>","border-bottom-color":"<color>","border-bottom-left-radius":"<x-one-radius>","border-bottom-right-radius":"<x-one-radius>","border-bottom-style":"<border-style>","border-bottom-width":"<border-width>","border-collapse":"collapse | separate | inherit","border-color":{multi:"<color> | inherit",max:4},"border-image":1,"border-image-outset":{multi:"<length> | <number>",max:4},"border-image-repeat":{multi:"stretch | repeat | round",max:2},"border-image-slice":function(e){var t=!1,n="<number> | <percentage>",r=!1,i=0,s=4,o;ValidationTypes.isAny(e,"fill")&&(r=!0,t=!0);while(e.hasNext()&&i<s){t=ValidationTypes.isAny(e,n);if(!t)break;i++}r?t=!0:ValidationTypes.isAny(e,"fill");if(e.hasNext())throw o=e.next(),t?new ValidationError("Expected end of value but found '"+o+"'.",o.line,o.col):new ValidationError("Expected ([<number> | <percentage>]{1,4} && fill?) but found '"+o+"'.",o.line,o.col)},"border-image-source":"<image> | none","border-image-width":{multi:"<length> | <percentage> | <number> | auto",max:4},"border-left":"<border-width> || <border-style> || <color>","border-left-color":"<color> | inherit","border-left-style":"<border-style>","border-left-width":"<border-width>","border-radius":function(e){var t=!1,n="<length> | <percentage>",r=!1,i=!1,s=0,o=8,u;while(e.hasNext()&&s<o){t=ValidationTypes.isAny(e,n);if(!t){if(!(e.peek()=="/"&&s>0&&!r))break;r=!0,o=s+5,e.next()}s++}if(e.hasNext())throw u=e.next(),t?new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col):new ValidationError("Expected (<'border-radius'>) but found '"+u+"'.",u.line,u.col)},"border-right":"<border-width> || <border-style> || <color>","border-right-color":"<color> | inherit","border-right-style":"<border-style>","border-right-width":"<border-width>","border-spacing":{multi:"<length> | inherit",max:2},"border-style":{multi:"<border-style>",max:4},"border-top":"<border-width> || <border-style> || <color>","border-top-color":"<color> | inherit","border-top-left-radius":"<x-one-radius>","border-top-right-radius":"<x-one-radius>","border-top-style":"<border-style>","border-top-width":"<border-width>","border-width":{multi:"<border-width>",max:4},bottom:"<margin-width> | inherit","box-align":"start | end | center | baseline | stretch","box-decoration-break":"slice |clone","box-direction":"normal | reverse | inherit","box-flex":"<number>","box-flex-group":"<integer>","box-lines":"single | multiple","box-ordinal-group":"<integer>","box-orient":"horizontal | vertical | inline-axis | block-axis | inherit","box-pack":"start | end | center | justify","box-shadow":function(e){var t=!1,n;if(!ValidationTypes.isAny(e,"none"))Validation.multiProperty("<shadow>",e,!0,Infinity);else if(e.hasNext())throw n=e.next(),new ValidationError("Expected end of value but found '"+n+"'.",n.line,n.col)},"box-sizing":"content-box | border-box | inherit","break-after":"auto | always | avoid | left | right | page | column | avoid-page | avoid-column","break-before":"auto | always | avoid | left | right | page | column | avoid-page | avoid-column","break-inside":"auto | avoid | avoid-page | avoid-column","caption-side":"top | bottom | inherit",clear:"none | right | left | both | inherit",clip:1,color:"<color> | inherit","color-profile":1,"column-count":"<integer> | auto","column-fill":"auto | balance","column-gap":"<length> | normal","column-rule":"<border-width> || <border-style> || <color>","column-rule-color":"<color>","column-rule-style":"<border-style>","column-rule-width":"<border-width>","column-span":"none | all","column-width":"<length> | auto",columns:1,content:1,"counter-increment":1,"counter-reset":1,crop:"<shape> | auto",cue:"cue-after | cue-before | inherit","cue-after":1,"cue-before":1,cursor:1,direction:"ltr | rtl | inherit",display:"inline | block | list-item | inline-block | table | inline-table | table-row-group | table-header-group | table-footer-group | table-row | table-column-group | table-column | table-cell | table-caption | box | inline-box | grid | inline-grid | none | inherit | -moz-box | -moz-inline-block | -moz-inline-box | -moz-inline-grid | -moz-inline-stack | -moz-inline-table | -moz-grid | -moz-grid-group | -moz-grid-line | -moz-groupbox | -moz-deck | -moz-popup | -moz-stack | -moz-marker","dominant-baseline":1,"drop-initial-after-adjust":"central | middle | after-edge | text-after-edge | ideographic | alphabetic | mathematical | <percentage> | <length>","drop-initial-after-align":"baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical","drop-initial-before-adjust":"before-edge | text-before-edge | central | middle | hanging | mathematical | <percentage> | <length>","drop-initial-before-align":"caps-height | baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical","drop-initial-size":"auto | line | <length> | <percentage>","drop-initial-value":"initial | <integer>",elevation:"<angle> | below | level | above | higher | lower | inherit","empty-cells":"show | hide | inherit",filter:1,fit:"fill | hidden | meet | slice","fit-position":1,"float":"left | right | none | inherit","float-offset":1,font:1,"font-family":1,"font-size":"<absolute-size> | <relative-size> | <length> | <percentage> | inherit","font-size-adjust":"<number> | none | inherit","font-stretch":"normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | inherit","font-style":"normal | italic | oblique | inherit","font-variant":"normal | small-caps | inherit","font-weight":"normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | inherit","grid-cell-stacking":"columns | rows | layer","grid-column":1,"grid-columns":1,"grid-column-align":"start | end | center | stretch","grid-column-sizing":1,"grid-column-span":"<integer>","grid-flow":"none | rows | columns","grid-layer":"<integer>","grid-row":1,"grid-rows":1,"grid-row-align":"start | end | center | stretch","grid-row-span":"<integer>","grid-row-sizing":1,"hanging-punctuation":1,height:"<margin-width> | inherit","hyphenate-after":"<integer> | auto","hyphenate-before":"<integer> | auto","hyphenate-character":"<string> | auto","hyphenate-lines":"no-limit | <integer>","hyphenate-resource":1,hyphens:"none | manual | auto",icon:1,"image-orientation":"angle | auto","image-rendering":1,"image-resolution":1,"inline-box-align":"initial | last | <integer>",left:"<margin-width> | inherit","letter-spacing":"<length> | normal | inherit","line-height":"<number> | <length> | <percentage> | normal | inherit","line-break":"auto | loose | normal | strict","line-stacking":1,"line-stacking-ruby":"exclude-ruby | include-ruby","line-stacking-shift":"consider-shifts | disregard-shifts","line-stacking-strategy":"inline-line-height | block-line-height | max-height | grid-height","list-style":1,"list-style-image":"<uri> | none | inherit","list-style-position":"inside | outside | inherit","list-style-type":"disc | circle | square | decimal | decimal-leading-zero | lower-roman | upper-roman | lower-greek | lower-latin | upper-latin | armenian | georgian | lower-alpha | upper-alpha | none | inherit",margin:{multi:"<margin-width> | inherit",max:4},"margin-bottom":"<margin-width> | inherit","margin-left":"<margin-width> | inherit","margin-right":"<margin-width> | inherit","margin-top":"<margin-width> | inherit",mark:1,"mark-after":1,"mark-before":1,marks:1,"marquee-direction":1,"marquee-play-count":1,"marquee-speed":1,"marquee-style":1,"max-height":"<length> | <percentage> | none | inherit","max-width":"<length> | <percentage> | none | inherit","min-height":"<length> | <percentage> | inherit","min-width":"<length> | <percentage> | inherit","move-to":1,"nav-down":1,"nav-index":1,"nav-left":1,"nav-right":1,"nav-up":1,opacity:"<number> | inherit",orphans:"<integer> | inherit",outline:1,"outline-color":"<color> | invert | inherit","outline-offset":1,"outline-style":"<border-style> | inherit","outline-width":"<border-width> | inherit",overflow:"visible | hidden | scroll | auto | inherit","overflow-style":1,"overflow-x":1,"overflow-y":1,padding:{multi:"<padding-width> | inherit",max:4},"padding-bottom":"<padding-width> | inherit","padding-left":"<padding-width> | inherit","padding-right":"<padding-width> | inherit","padding-top":"<padding-width> | inherit",page:1,"page-break-after":"auto | always | avoid | left | right | inherit","page-break-before":"auto | always | avoid | left | right | inherit","page-break-inside":"auto | avoid | inherit","page-policy":1,pause:1,"pause-after":1,"pause-before":1,perspective:1,"perspective-origin":1,phonemes:1,pitch:1,"pitch-range":1,"play-during":1,"pointer-events":"auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all | inherit",position:"static | relative | absolute | fixed | inherit","presentation-level":1,"punctuation-trim":1,quotes:1,"rendering-intent":1,resize:1,rest:1,"rest-after":1,"rest-before":1,richness:1,right:"<margin-width> | inherit",rotation:1,"rotation-point":1,"ruby-align":1,"ruby-overhang":1,"ruby-position":1,"ruby-span":1,size:1,speak:"normal | none | spell-out | inherit","speak-header":"once | always | inherit","speak-numeral":"digits | continuous | inherit","speak-punctuation":"code | none | inherit","speech-rate":1,src:1,stress:1,"string-set":1,"table-layout":"auto | fixed | inherit","tab-size":"<integer> | <length>",target:1,"target-name":1,"target-new":1,"target-position":1,"text-align":"left | right | center | justify | inherit","text-align-last":1,"text-decoration":1,"text-emphasis":1,"text-height":1,"text-indent":"<length> | <percentage> | inherit","text-justify":"auto | none | inter-word | inter-ideograph | inter-cluster | distribute | kashida","text-outline":1,"text-overflow":1,"text-rendering":"auto | optimizeSpeed | optimizeLegibility | geometricPrecision | inherit","text-shadow":1,"text-transform":"capitalize | uppercase | lowercase | none | inherit","text-wrap":"normal | none | avoid",top:"<margin-width> | inherit",transform:1,"transform-origin":1,"transform-style":1,transition:1,"transition-delay":1,"transition-duration":1,"transition-property":1,"transition-timing-function":1,"unicode-bidi":"normal | embed | bidi-override | inherit","user-modify":"read-only | read-write | write-only | inherit","user-select":"none | text | toggle | element | elements | all | inherit","vertical-align":"auto | use-script | baseline | sub | super | top | text-top | central | middle | bottom | text-bottom | <percentage> | <length>",visibility:"visible | hidden | collapse | inherit","voice-balance":1,"voice-duration":1,"voice-family":1,"voice-pitch":1,"voice-pitch-range":1,"voice-rate":1,"voice-stress":1,"voice-volume":1,volume:1,"white-space":"normal | pre | nowrap | pre-wrap | pre-line | inherit | -pre-wrap | -o-pre-wrap | -moz-pre-wrap | -hp-pre-wrap","white-space-collapse":1,widows:"<integer> | inherit",width:"<length> | <percentage> | auto | inherit","word-break":"normal | keep-all | break-all","word-spacing":"<length> | normal | inherit","word-wrap":1,"z-index":"<integer> | auto | inherit",zoom:"<number> | <percentage> | normal"};PropertyName.prototype=new SyntaxUnit,PropertyName.prototype.constructor=PropertyName,PropertyName.prototype.toString=function(){return(this.hack?this.hack:"")+this.text},PropertyValue.prototype=new SyntaxUnit,PropertyValue.prototype.constructor=PropertyValue,PropertyValueIterator.prototype.count=function(){return this._parts.length},PropertyValueIterator.prototype.isFirst=function(){return this._i===0},PropertyValueIterator.prototype.hasNext=function(){return this._i<this._parts.length},PropertyValueIterator.prototype.mark=function(){this._marks.push(this._i)},PropertyValueIterator.prototype.peek=function(e){return this.hasNext()?this._parts[this._i+(e||0)]:null},PropertyValueIterator.prototype.next=function(){return this.hasNext()?this._parts[this._i++]:null},PropertyValueIterator.prototype.previous=function(){return this._i>0?this._parts[--this._i]:null},PropertyValueIterator.prototype.restore=function(){this._marks.length&&(this._i=this._marks.pop())},PropertyValuePart.prototype=new SyntaxUnit,PropertyValuePart.prototype.constructor=PropertyValuePart,PropertyValuePart.fromToken=function(e){return new PropertyValuePart(e.value,e.startLine,e.startCol)};var Pseudos={":first-letter":1,":first-line":1,":before":1,":after":1};Pseudos.ELEMENT=1,Pseudos.CLASS=2,Pseudos.isElement=function(e){return e.indexOf("::")===0||Pseudos[e.toLowerCase()]==Pseudos.ELEMENT},Selector.prototype=new SyntaxUnit,Selector.prototype.constructor=Selector,SelectorPart.prototype=new SyntaxUnit,SelectorPart.prototype.constructor=SelectorPart,SelectorSubPart.prototype=new SyntaxUnit,SelectorSubPart.prototype.constructor=SelectorSubPart,Specificity.prototype={constructor:Specificity,compare:function(e){var t=["a","b","c","d"],n,r;for(n=0,r=t.length;n<r;n++){if(this[t[n]]<e[t[n]])return-1;if(this[t[n]]>e[t[n]])return 1}return 0},valueOf:function(){return this.a*1e3+this.b*100+this.c*10+this.d},toString:function(){return this.a+","+this.b+","+this.c+","+this.d}},Specificity.calculate=function(e){function t(e){var n,r,i,a,f=e.elementName?e.elementName.text:"",l;f&&f.charAt(f.length-1)!="*"&&u++;for(n=0,i=e.modifiers.length;n<i;n++){l=e.modifiers[n];switch(l.type){case"class":case"attribute":o++;break;case"id":s++;break;case"pseudo":Pseudos.isElement(l.text)?u++:o++;break;case"not":for(r=0,a=l.args.length;r<a;r++)t(l.args[r])}}}var n,r,i,s=0,o=0,u=0;for(n=0,r=e.parts.length;n<r;n++)i=e.parts[n],i instanceof SelectorPart&&t(i);return new Specificity(0,s,o,u)};var h=/^[0-9a-fA-F]$/,nonascii=/^[\u0080-\uFFFF]$/,nl=/\n|\r\n|\r|\f/;TokenStream.prototype=mix(new TokenStreamBase,{_getToken:function(e){var t,n=this._reader,r=null,i=n.getLine(),s=n.getCol();t=n.read();while(t){switch(t){case"/":n.peek()=="*"?r=this.commentToken(t,i,s):r=this.charToken(t,i,s);break;case"|":case"~":case"^":case"$":case"*":n.peek()=="="?r=this.comparisonToken(t,i,s):r=this.charToken(t,i,s);break;case'"':case"'":r=this.stringToken(t,i,s);break;case"#":isNameChar(n.peek())?r=this.hashToken(t,i,s):r=this.charToken(t,i,s);break;case".":isDigit(n.peek())?r=this.numberToken(t,i,s):r=this.charToken(t,i,s);break;case"-":n.peek()=="-"?r=this.htmlCommentEndToken(t,i,s):isNameStart(n.peek())?r=this.identOrFunctionToken(t,i,s):r=this.charToken(t,i,s);break;case"!":r=this.importantToken(t,i,s);break;case"@":r=this.atRuleToken(t,i,s);break;case":":r=this.notToken(t,i,s);break;case"<":r=this.htmlCommentStartToken(t,i,s);break;case"U":case"u":if(n.peek()=="+"){r=this.unicodeRangeToken(t,i,s);break};default:isDigit(t)?r=this.numberToken(t,i,s):isWhitespace(t)?r=this.whitespaceToken(t,i,s):isIdentStart(t)?r=this.identOrFunctionToken(t,i,s):r=this.charToken(t,i,s)}break}return!r&&t===null&&(r=this.createToken(Tokens.EOF,null,i,s)),r},createToken:function(e,t,n,r,i){var s=this._reader;return i=i||{},{value:t,type:e,channel:i.channel,hide:i.hide||!1,startLine:n,startCol:r,endLine:s.getLine(),endCol:s.getCol()}},atRuleToken:function(e,t,n){var r=e,i=this._reader,s=Tokens.CHAR,o=!1,u,a;i.mark(),u=this.readName(),r=e+u,s=Tokens.type(r.toLowerCase());if(s==Tokens.CHAR||s==Tokens.UNKNOWN)r.length>1?s=Tokens.UNKNOWN_SYM:(s=Tokens.CHAR,r=e,i.reset());return this.createToken(s,r,t,n)},charToken:function(e,t,n){var r=Tokens.type(e);return r==-1&&(r=Tokens.CHAR),this.createToken(r,e,t,n)},commentToken:function(e,t,n){var r=this._reader,i=this.readComment(e);return this.createToken(Tokens.COMMENT,i,t,n)},comparisonToken:function(e,t,n){var r=this._reader,i=e+r.read(),s=Tokens.type(i)||Tokens.CHAR;return this.createToken(s,i,t,n)},hashToken:function(e,t,n){var r=this._reader,i=this.readName(e);return this.createToken(Tokens.HASH,i,t,n)},htmlCommentStartToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(3),i=="<!--"?this.createToken(Tokens.CDO,i,t,n):(r.reset(),this.charToken(e,t,n))},htmlCommentEndToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(2),i=="-->"?this.createToken(Tokens.CDC,i,t,n):(r.reset(),this.charToken(e,t,n))},identOrFunctionToken:function(e,t,n){var r=this._reader,i=this.readName(e),s=Tokens.IDENT;return r.peek()=="("?(i+=r.read(),i.toLowerCase()=="url("?(s=Tokens.URI,i=this.readURI(i),i.toLowerCase()=="url("&&(s=Tokens.FUNCTION)):s=Tokens.FUNCTION):r.peek()==":"&&i.toLowerCase()=="progid"&&(i+=r.readTo("("),s=Tokens.IE_FUNCTION),this.createToken(s,i,t,n)},importantToken:function(e,t,n){var r=this._reader,i=e,s=Tokens.CHAR,o,u;r.mark(),u=r.read();while(u){if(u=="/"){if(r.peek()!="*")break;o=this.readComment(u);if(o==="")break}else{if(!isWhitespace(u)){if(/i/i.test(u)){o=r.readCount(8),/mportant/i.test(o)&&(i+=u+o,s=Tokens.IMPORTANT_SYM);break}break}i+=u+this.readWhitespace()}u=r.read()}return s==Tokens.CHAR?(r.reset(),this.charToken(e,t,n)):this.createToken(s,i,t,n)},notToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(4),i.toLowerCase()==":not("?this.createToken(Tokens.NOT,i,t,n):(r.reset(),this.charToken(e,t,n))},numberToken:function(e,t,n){var r=this._reader,i=this.readNumber(e),s,o=Tokens.NUMBER,u=r.peek();return isIdentStart(u)?(s=this.readName(r.read()),i+=s,/^em$|^ex$|^px$|^gd$|^rem$|^vw$|^vh$|^vm$|^ch$|^cm$|^mm$|^in$|^pt$|^pc$/i.test(s)?o=Tokens.LENGTH:/^deg|^rad$|^grad$/i.test(s)?o=Tokens.ANGLE:/^ms$|^s$/i.test(s)?o=Tokens.TIME:/^hz$|^khz$/i.test(s)?o=Tokens.FREQ:/^dpi$|^dpcm$/i.test(s)?o=Tokens.RESOLUTION:o=Tokens.DIMENSION):u=="%"&&(i+=r.read(),o=Tokens.PERCENTAGE),this.createToken(o,i,t,n)},stringToken:function(e,t,n){var r=e,i=e,s=this._reader,o=e,u=Tokens.STRING,a=s.read();while(a){i+=a;if(a==r&&o!="\\")break;if(isNewLine(s.peek())&&a!="\\"){u=Tokens.INVALID;break}o=a,a=s.read()}return a===null&&(u=Tokens.INVALID),this.createToken(u,i,t,n)},unicodeRangeToken:function(e,t,n){var r=this._reader,i=e,s,o=Tokens.CHAR;return r.peek()=="+"&&(r.mark(),i+=r.read(),i+=this.readUnicodeRangePart(!0),i.length==2?r.reset():(o=Tokens.UNICODE_RANGE,i.indexOf("?")==-1&&r.peek()=="-"&&(r.mark(),s=r.read(),s+=this.readUnicodeRangePart(!1),s.length==1?r.reset():i+=s))),this.createToken(o,i,t,n)},whitespaceToken:function(e,t,n){var r=this._reader,i=e+this.readWhitespace();return this.createToken(Tokens.S,i,t,n)},readUnicodeRangePart:function(e){var t=this._reader,n="",r=t.peek();while(isHexDigit(r)&&n.length<6)t.read(),n+=r,r=t.peek();if(e)while(r=="?"&&n.length<6)t.read(),n+=r,r=t.peek();return n},readWhitespace:function(){var e=this._reader,t="",n=e.peek();while(isWhitespace(n))e.read(),t+=n,n=e.peek();return t},readNumber:function(e){var t=this._reader,n=e,r=e==".",i=t.peek();while(i){if(isDigit(i))n+=t.read();else{if(i!=".")break;if(r)break;r=!0,n+=t.read()}i=t.peek()}return n},readString:function(){var e=this._reader,t=e.read(),n=t,r=t,i=e.peek();while(i){i=e.read(),n+=i;if(i==t&&r!="\\")break;if(isNewLine(e.peek())&&i!="\\"){n="";break}r=i,i=e.peek()}return i===null&&(n=""),n},readURI:function(e){var t=this._reader,n=e,r="",i=t.peek();t.mark();while(i&&isWhitespace(i))t.read(),i=t.peek();i=="'"||i=='"'?r=this.readString():r=this.readURL(),i=t.peek();while(i&&isWhitespace(i))t.read(),i=t.peek();return r===""||i!=")"?(n=e,t.reset()):n+=r+t.read(),n},readURL:function(){var e=this._reader,t="",n=e.peek();while(/^[!#$%&\\*-~]$/.test(n))t+=e.read(),n=e.peek();return t},readName:function(e){var t=this._reader,n=e||"",r=t.peek();for(;;)if(r=="\\")n+=this.readEscape(t.read()),r=t.peek();else{if(!r||!isNameChar(r))break;n+=t.read(),r=t.peek()}return n},readEscape:function(e){var t=this._reader,n=e||"",r=0,i=t.peek();if(isHexDigit(i))do n+=t.read(),i=t.peek();while(i&&isHexDigit(i)&&++r<6);return n.length==3&&/\s/.test(i)||n.length==7||n.length==1?t.read():i="",n+i},readComment:function(e){var t=this._reader,n=e||"",r=t.read();if(r=="*"){while(r){n+=r;if(n.length>2&&r=="*"&&t.peek()=="/"){n+=t.read();break}r=t.read()}return n}return""}});var Tokens=[{name:"CDO"},{name:"CDC"},{name:"S",whitespace:!0},{name:"COMMENT",comment:!0,hide:!0,channel:"comment"},{name:"INCLUDES",text:"~="},{name:"DASHMATCH",text:"|="},{name:"PREFIXMATCH",text:"^="},{name:"SUFFIXMATCH",text:"$="},{name:"SUBSTRINGMATCH",text:"*="},{name:"STRING"},{name:"IDENT"},{name:"HASH"},{name:"IMPORT_SYM",text:"@import"},{name:"PAGE_SYM",text:"@page"},{name:"MEDIA_SYM",text:"@media"},{name:"FONT_FACE_SYM",text:"@font-face"},{name:"CHARSET_SYM",text:"@charset"},{name:"NAMESPACE_SYM",text:"@namespace"},{name:"UNKNOWN_SYM"},{name:"KEYFRAMES_SYM",text:["@keyframes","@-webkit-keyframes","@-moz-keyframes","@-o-keyframes"]},{name:"IMPORTANT_SYM"},{name:"LENGTH"},{name:"ANGLE"},{name:"TIME"},{name:"FREQ"},{name:"DIMENSION"},{name:"PERCENTAGE"},{name:"NUMBER"},{name:"URI"},{name:"FUNCTION"},{name:"UNICODE_RANGE"},{name:"INVALID"},{name:"PLUS",text:"+"},{name:"GREATER",text:">"},{name:"COMMA",text:","},{name:"TILDE",text:"~"},{name:"NOT"},{name:"TOPLEFTCORNER_SYM",text:"@top-left-corner"},{name:"TOPLEFT_SYM",text:"@top-left"},{name:"TOPCENTER_SYM",text:"@top-center"},{name:"TOPRIGHT_SYM",text:"@top-right"},{name:"TOPRIGHTCORNER_SYM",text:"@top-right-corner"},{name:"BOTTOMLEFTCORNER_SYM",text:"@bottom-left-corner"},{name:"BOTTOMLEFT_SYM",text:"@bottom-left"},{name:"BOTTOMCENTER_SYM",text:"@bottom-center"},{name:"BOTTOMRIGHT_SYM",text:"@bottom-right"},{name:"BOTTOMRIGHTCORNER_SYM",text:"@bottom-right-corner"},{name:"LEFTTOP_SYM",text:"@left-top"},{name:"LEFTMIDDLE_SYM",text:"@left-middle"},{name:"LEFTBOTTOM_SYM",text:"@left-bottom"},{name:"RIGHTTOP_SYM",text:"@right-top"},{name:"RIGHTMIDDLE_SYM",text:"@right-middle"},{name:"RIGHTBOTTOM_SYM",text:"@right-bottom"},{name:"RESOLUTION",state:"media"},{name:"IE_FUNCTION"},{name:"CHAR"},{name:"PIPE",text:"|"},{name:"SLASH",text:"/"},{name:"MINUS",text:"-"},{name:"STAR",text:"*"},{name:"LBRACE",text:"{"},{name:"RBRACE",text:"}"},{name:"LBRACKET",text:"["},{name:"RBRACKET",text:"]"},{name:"EQUALS",text:"="},{name:"COLON",text:":"},{name:"SEMICOLON",text:";"},{name:"LPAREN",text:"("},{name:"RPAREN",text:")"},{name:"DOT",text:"."}];(function(){var e=[],t={};Tokens.UNKNOWN=-1,Tokens.unshift({name:"EOF"});for(var n=0,r=Tokens.length;n<r;n++){e.push(Tokens[n].name),Tokens[Tokens[n].name]=n;if(Tokens[n].text)if(Tokens[n].text instanceof Array)for(var i=0;i<Tokens[n].text.length;i++)t[Tokens[n].text[i]]=n;else t[Tokens[n].text]=n}Tokens.name=function(t){return e[t]},Tokens.type=function(e){return t[e]||-1}})();var Validation={validate:function(e,t){var n=e.toString().toLowerCase(),r=t.parts,i=new PropertyValueIterator(t),s=Properties[n],o,u,a,f,l,c,h,p,d,v,m;if(!s){if(n.indexOf("-")!==0)throw new ValidationError("Unknown property '"+e+"'.",e.line,e.col)}else typeof s!="number"&&(typeof s=="string"?s.indexOf("||")>-1?this.groupProperty(s,i):this.singleProperty(s,i,1):s.multi?this.multiProperty(s.multi,i,s.comma,s.max||Infinity):typeof s=="function"&&s(i))},singleProperty:function(e,t,n,r){var i=!1,s=t.value,o=0,u;while(t.hasNext()&&o<n){i=ValidationTypes.isAny(t,e);if(!i)break;o++}if(!i)throw t.hasNext()&&!t.isFirst()?(u=t.peek(),new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col)):new ValidationError("Expected ("+e+") but found '"+s+"'.",s.line,s.col);if(t.hasNext())throw u=t.next(),new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col)},multiProperty:function(e,t,n,r){var i=!1,s=t.value,o=0,u=!1,a;while(t.hasNext()&&!i&&o<r){if(!ValidationTypes.isAny(t,e))break;o++;if(!t.hasNext())i=!0;else if(n){if(t.peek()!=",")break;a=t.next()}}if(!i)throw t.hasNext()&&!t.isFirst()?(a=t.peek(),new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col)):(a=t.previous(),n&&a==","?new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col):new ValidationError("Expected ("+e+") but found '"+s+"'.",s.line,s.col));if(t.hasNext())throw a=t.next(),new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col)},groupProperty:function(e,t,n){var r=!1,i=t.value,s=e.split("||").length,o={count:0},u=!1,a,f;while(t.hasNext()&&!r){a=ValidationTypes.isAnyOfGroup(t,e);if(!a)break;if(o[a])break;o[a]=1,o.count++,u=!0;if(o.count==s||!t.hasNext())r=!0}if(!r)throw u&&t.hasNext()?(f=t.peek(),new ValidationError("Expected end of value but found '"+f+"'.",f.line,f.col)):new ValidationError("Expected ("+e+") but found '"+i+"'.",i.line,i.col);if(t.hasNext())throw f=t.next(),new ValidationError("Expected end of value but found '"+f+"'.",f.line,f.col)}};ValidationError.prototype=new Error;var ValidationTypes={isLiteral:function(e,t){var n=e.text.toString().toLowerCase(),r=t.split(" | "),i,s,o=!1;for(i=0,s=r.length;i<s&&!o;i++)n==r[i].toLowerCase()&&(o=!0);return o},isSimple:function(e){return!!this.simple[e]},isComplex:function(e){return!!this.complex[e]},isAny:function(e,t){var n=t.split(" | "),r,i,s=!1;for(r=0,i=n.length;r<i&&!s&&e.hasNext();r++)s=this.isType(e,n[r]);return s},isAnyOfGroup:function(e,t){var n=t.split(" || "),r,i,s=!1;for(r=0,i=n.length;r<i&&!s;r++)s=this.isType(e,n[r]);return s?n[r-1]:!1},isType:function(e,t){var n=e.peek(),r=!1;return t.charAt(0)!="<"?(r=this.isLiteral(n,t),r&&e.next()):this.simple[t]?(r=this.simple[t](n),r&&e.next()):r=this.complex[t](e),r},simple:{"<absolute-size>":function(e){return ValidationTypes.isLiteral(e,"xx-small | x-small | small | medium | large | x-large | xx-large")},"<attachment>":function(e){return ValidationTypes.isLiteral(e,"scroll | fixed | local")},"<attr>":function(e){return e.type=="function"&&e.name=="attr"},"<bg-image>":function(e){return this["<image>"](e)||this["<gradient>"](e)||e=="none"},"<gradient>":function(e){return e.type=="function"&&/^(?:\-(?:ms|moz|o|webkit)\-)?(?:repeating\-)?(?:radial\-|linear\-)?gradient/i.test(e)},"<box>":function(e){return ValidationTypes.isLiteral(e,"padding-box | border-box | content-box")},"<content>":function(e){return e.type=="function"&&e.name=="content"},"<relative-size>":function(e){return ValidationTypes.isLiteral(e,"smaller | larger")},"<ident>":function(e){return e.type=="identifier"},"<length>":function(e){return e.type=="function"&&/^(?:\-(?:ms|moz|o|webkit)\-)?calc/i.test(e)?!0:e.type=="length"||e.type=="number"||e.type=="integer"||e=="0"},"<color>":function(e){return e.type=="color"||e=="transparent"},"<number>":function(e){return e.type=="number"||this["<integer>"](e)},"<integer>":function(e){return e.type=="integer"},"<line>":function(e){return e.type=="integer"},"<angle>":function(e){return e.type=="angle"},"<uri>":function(e){return e.type=="uri"},"<image>":function(e){return this["<uri>"](e)},"<percentage>":function(e){return e.type=="percentage"||e=="0"},"<border-width>":function(e){return this["<length>"](e)||ValidationTypes.isLiteral(e,"thin | medium | thick")},"<border-style>":function(e){return ValidationTypes.isLiteral(e,"none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset")},"<margin-width>":function(e){return this["<length>"](e)||this["<percentage>"](e)||ValidationTypes.isLiteral(e,"auto")},"<padding-width>":function(e){return this["<length>"](e)||this["<percentage>"](e)},"<shape>":function(e){return e.type=="function"&&(e.name=="rect"||e.name=="inset-rect")},"<time>":function(e){return e.type=="time"}},complex:{"<bg-position>":function(e){var t=this,n=!1,r="<percentage> | <length>",i="left | right",s="top | bottom",o=0,u=function(){return e.hasNext()&&e.peek()!=","};while(e.peek(o)&&e.peek(o)!=",")o++;return o<3?ValidationTypes.isAny(e,i+" | center | "+r)?(n=!0,ValidationTypes.isAny(e,s+" | center | "+r)):ValidationTypes.isAny(e,s)&&(n=!0,ValidationTypes.isAny(e,i+" | center")):ValidationTypes.isAny(e,i)?ValidationTypes.isAny(e,s)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,r)&&(ValidationTypes.isAny(e,s)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,"center")&&(n=!0)):ValidationTypes.isAny(e,s)?ValidationTypes.isAny(e,i)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,r)&&(ValidationTypes.isAny(e,i)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,"center")&&(n=!0)):ValidationTypes.isAny(e,"center")&&ValidationTypes.isAny(e,i+" | "+s)&&(n=!0,ValidationTypes.isAny(e,r)),n},"<bg-size>":function(e){var t=this,n=!1,r="<percentage> | <length> | auto",i,s,o;return ValidationTypes.isAny(e,"cover | contain")?n=!0:ValidationTypes.isAny(e,r)&&(n=!0,ValidationTypes.isAny(e,r)),n},"<repeat-style>":function(e){var t=!1,n="repeat | space | round | no-repeat",r;return e.hasNext()&&(r=e.next(),ValidationTypes.isLiteral(r,"repeat-x | repeat-y")?t=!0:ValidationTypes.isLiteral(r,n)&&(t=!0,e.hasNext()&&ValidationTypes.isLiteral(e.peek(),n)&&e.next())),t},"<shadow>":function(e){var t=!1,n=0,r=!1,i=!1,s;if(e.hasNext()){ValidationTypes.isAny(e,"inset")&&(r=!0),ValidationTypes.isAny(e,"<color>")&&(i=!0);while(ValidationTypes.isAny(e,"<length>")&&n<4)n++;e.hasNext()&&(i||ValidationTypes.isAny(e,"<color>"),r||ValidationTypes.isAny(e,"inset")),t=n>=2&&n<=4}return t},"<x-one-radius>":function(e){var t=!1,n=0,r="<length> | <percentage>",i;return ValidationTypes.isAny(e,r)&&(t=!0,ValidationTypes.isAny(e,r)),t}}};parserlib.css={Colors:Colors,Combinator:Combinator,Parser:Parser,PropertyName:PropertyName,PropertyValue:PropertyValue,PropertyValuePart:PropertyValuePart,MediaFeature:MediaFeature,MediaQuery:MediaQuery,Selector:Selector,SelectorPart:SelectorPart,SelectorSubPart:SelectorSubPart,Specificity:Specificity,TokenStream:TokenStream,Tokens:Tokens,ValidationError:ValidationError}}();var CSSLint=function(){function e(e,t){var n,i=e&&e.match(r),s=i&&i[1];return s&&(n={"true":2,"":1,"false":0,2:2,1:1,0:0},s.toLowerCase().split(",").forEach(function(e){var r=e.split(":"),i=r[0]||"",s=r[1]||"";t[i.trim()]=n[s.trim()]})),t}var t=[],n=[],r=/\/\*csslint([^\*]*)\*\//,i=new parserlib.util.EventTarget;return i.version="0.9.10",i.addRule=function(e){t.push(e),t[e.id]=e},i.clearRules=function(){t=[]},i.getRules=function(){return[].concat(t).sort(function(e,t){return e.id>t.id?1:0})},i.getRuleset=function(){var e={},n=0,r=t.length;while(n<r)e[t[n++].id]=1;return e},i.addFormatter=function(e){n[e.id]=e},i.getFormatter=function(e){return n[e]},i.format=function(e,t,n,r){var i=this.getFormatter(n),s=null;return i&&(s=i.startFormat(),s+=i.formatResults(e,t,r||{}),s+=i.endFormat()),s},i.hasFormat=function(e){return n.hasOwnProperty(e)},i.verify=function(n,i){var s=0,o=t.length,u,a,f,l=new parserlib.css.Parser({starHack:!0,ieFilters:!0,underscoreHack:!0,strict:!1});a=n.replace(/\n\r?/g,"$split$").split("$split$"),i||(i=this.getRuleset()),r.test(n)&&(i=e(n,i)),u=new Reporter(a,i),i.errors=2;for(s in i)i.hasOwnProperty(s)&&i[s]&&t[s]&&t[s].init(l,u);try{l.parse(n)}catch(c){u.error("Fatal error, cannot continue: "+c.message,c.line,c.col,{})}return f={messages:u.messages,stats:u.stats,ruleset:u.ruleset},f.messages.sort(function(e,t){return e.rollup&&!t.rollup?1:!e.rollup&&t.rollup?-1:e.line-t.line}),f},i}();Reporter.prototype={constructor:Reporter,error:function(e,t,n,r){this.messages.push({type:"error",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r||{}})},warn:function(e,t,n,r){this.report(e,t,n,r)},report:function(e,t,n,r){this.messages.push({type:this.ruleset[r.id]==2?"error":"warning",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r})},info:function(e,t,n,r){this.messages.push({type:"info",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r})},rollupError:function(e,t){this.messages.push({type:"error",rollup:!0,message:e,rule:t})},rollupWarn:function(e,t){this.messages.push({type:"warning",rollup:!0,message:e,rule:t})},stat:function(e,t){this.stats[e]=t}},CSSLint._Reporter=Reporter,CSSLint.Util={mix:function(e,t){var n;for(n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return n},indexOf:function(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},forEach:function(e,t){if(e.forEach)return e.forEach(t);for(var n=0,r=e.length;n<r;n++)t(e[n],n,e)}},CSSLint.addRule({id:"adjoining-classes",name:"Disallow adjoining classes",desc:"Don't use adjoining classes.",browsers:"IE6",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l,c;for(f=0;f<i.length;f++){s=i[f];for(l=0;l<s.parts.length;l++){o=s.parts[l];if(o.type==e.SELECTOR_PART_TYPE){a=0;for(c=0;c<o.modifiers.length;c++)u=o.modifiers[c],u.type=="class"&&a++,a>1&&t.report("Don't use adjoining classes.",o.line,o.col,n)}}}})}}),CSSLint.addRule({id:"box-model",name:"Beware of broken box size",desc:"Don't use width or height when using padding or border.",browsers:"All",init:function(e,t){function n(){u={},a=!1}function r(){var e,n;if(!a){if(u.height)for(e in o)o.hasOwnProperty(e)&&u[e]&&(n=u[e].value,(e!="padding"||n.parts.length!==2||n.parts[0].value!==0)&&t.report("Using height with "+e+" can sometimes make elements larger than you expect.",u[e].line,u[e].col,i));if(u.width)for(e in s)s.hasOwnProperty(e)&&u[e]&&(n=u[e].value,(e!="padding"||n.parts.length!==2||n.parts[1].value!==0)&&t.report("Using width with "+e+" can sometimes make elements larger than you expect.",u[e].line,u[e].col,i))}}var i=this,s={border:1,"border-left":1,"border-right":1,padding:1,"padding-left":1,"padding-right":1},o={border:1,"border-bottom":1,"border-top":1,padding:1,"padding-bottom":1,"padding-top":1},u,a=!1;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase();o[t]||s[t]?!/^0\S*$/.test(e.value)&&(t!="border"||e.value!="none")&&(u[t]={line:e.property.line,col:e.property.col,value:e.value}):/^(width|height)/i.test(t)&&/^(length|percentage)/.test(e.value.parts[0].type)?u[t]=1:t=="box-sizing"&&(a=!0)}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"box-sizing",name:"Disallow use of box-sizing",desc:"The box-sizing properties isn't supported in IE6 and IE7.",browsers:"IE6, IE7",tags:["Compatibility"],init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property.text.toLowerCase();r=="box-sizing"&&t.report("The box-sizing property isn't supported in IE6 and IE7.",e.line,e.col,n)})}}),CSSLint.addRule({id:"bulletproof-font-face",name:"Use the bulletproof @font-face syntax",desc:"Use the bulletproof @font-face syntax to avoid 404's in old IE (http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax).",browsers:"All",init:function(e,t){var n=this,r=0,i=!1,s=!0,o=!1,u,a;e.addListener("startfontface",function(e){i=!0}),e.addListener("property",function(e){if(!i)return;var t=e.property.toString().toLowerCase(),n=e.value.toString();u=e.line,a=e.col;if(t==="src"){var r=/^\s?url\(['"].+\.eot\?.*['"]\)\s*format\(['"]embedded-opentype['"]\).*$/i;!n.match(r)&&s?(o=!0,s=!1):n.match(r)&&!s&&(o=!1)}}),e.addListener("endfontface",function(e){i=!1,o&&t.report("@font-face declaration doesn't follow the fontspring bulletproof syntax.",u,a,n)})}}),CSSLint.addRule({id:"compatible-vendor-prefixes",name:"Require compatible vendor prefixes",desc:"Include all compatible vendor prefixes to reach a wider range of users.",browsers:"All",init:function(e,t){var n=this,r,i,s,o,u,a,f,l=!1,c=Array.prototype.push,h=[];r={animation:"webkit moz","animation-delay":"webkit moz","animation-direction":"webkit moz","animation-duration":"webkit moz","animation-fill-mode":"webkit moz","animation-iteration-count":"webkit moz","animation-name":"webkit moz","animation-play-state":"webkit moz","animation-timing-function":"webkit moz",appearance:"webkit moz","border-end":"webkit moz","border-end-color":"webkit moz","border-end-style":"webkit moz","border-end-width":"webkit moz","border-image":"webkit moz o","border-radius":"webkit","border-start":"webkit moz","border-start-color":"webkit moz","border-start-style":"webkit moz","border-start-width":"webkit moz","box-align":"webkit moz ms","box-direction":"webkit moz ms","box-flex":"webkit moz ms","box-lines":"webkit ms","box-ordinal-group":"webkit moz ms","box-orient":"webkit moz ms","box-pack":"webkit moz ms","box-sizing":"webkit moz","box-shadow":"webkit moz","column-count":"webkit moz ms","column-gap":"webkit moz ms","column-rule":"webkit moz ms","column-rule-color":"webkit moz ms","column-rule-style":"webkit moz ms","column-rule-width":"webkit moz ms","column-width":"webkit moz ms",hyphens:"epub moz","line-break":"webkit ms","margin-end":"webkit moz","margin-start":"webkit moz","marquee-speed":"webkit wap","marquee-style":"webkit wap","padding-end":"webkit moz","padding-start":"webkit moz","tab-size":"moz o","text-size-adjust":"webkit ms",transform:"webkit moz ms o","transform-origin":"webkit moz ms o",transition:"webkit moz o","transition-delay":"webkit moz o","transition-duration":"webkit moz o","transition-property":"webkit moz o","transition-timing-function":"webkit moz o","user-modify":"webkit moz","user-select":"webkit moz ms","word-break":"epub ms","writing-mode":"epub ms"};for(s in r)if(r.hasOwnProperty(s)){o=[],u=r[s].split(" ");for(a=0,f=u.length;a<f;a++)o.push("-"+u[a]+"-"+s);r[s]=o,c.apply(h,o)}e.addListener("startrule",function(){i=[]}),e.addListener("startkeyframes",function(e){l=e.prefix||!0}),e.addListener("endkeyframes",function(e){l=!1}),e.addListener("property",function(e){var t=e.property;CSSLint.Util.indexOf(h,t.text)>-1&&(!l||typeof l!="string"||t.text.indexOf("-"+l+"-")!==0)&&i.push(t)}),e.addListener("endrule",function(e){if(!i.length)return;var s={},o,u,a,f,l,c,h,p,d,v;for(o=0,u=i.length;o<u;o++){a=i[o];for(f in r)r.hasOwnProperty(f)&&(l=r[f],CSSLint.Util.indexOf(l,a.text)>-1&&(s[f]||(s[f]={full:l.slice(0),actual:[],actualNodes:[]}),CSSLint.Util.indexOf(s[f].actual,a.text)===-1&&(s[f].actual.push(a.text),s[f].actualNodes.push(a))))}for(f in s)if(s.hasOwnProperty(f)){c=s[f],h=c.full,p=c.actual;if(h.length>p.length)for(o=0,u=h.length;o<u;o++)d=h[o],CSSLint.Util.indexOf(p,d)===-1&&(v=p.length===1?p[0]:p.length==2?p.join(" and "):p.join(", "),t.report("The property "+d+" is compatible with "+v+" and should be included as well.",c.actualNodes[0].line,c.actualNodes[0].col,n))}})}}),CSSLint.addRule({id:"display-property-grouping",name:"Require properties appropriate for display",desc:"Certain properties shouldn't be used with certain display property values.",browsers:"All",init:function(e,t){function n(e,n,r){u[e]&&(typeof o[e]!="string"||u[e].value.toLowerCase()!=o[e])&&t.report(r||e+" can't be used with display: "+n+".",u[e].line,u[e].col,s)}function r(){u={}}function i(){var e=u.display?u.display.value:null;if(e)switch(e){case"inline":n("height",e),n("width",e),n("margin",e),n("margin-top",e),n("margin-bottom",e),n("float",e,"display:inline has no effect on floated elements (but may be used to fix the IE6 double-margin bug).");break;case"block":n("vertical-align",e);break;case"inline-block":n("float",e);break;default:e.indexOf("table-")===0&&(n("margin",e),n("margin-left",e),n("margin-right",e),n("margin-top",e),n("margin-bottom",e),n("float",e))}}var s=this,o={display:1,"float":"none",height:1,width:1,margin:1,"margin-left":1,"margin-right":1,"margin-bottom":1,"margin-top":1,padding:1,"padding-left":1,"padding-right":1,"padding-bottom":1,"padding-top":1,"vertical-align":1},u;e.addListener("startrule",r),e.addListener("startfontface",r),e.addListener("startkeyframerule",r),e.addListener("startpagemargin",r),e.addListener("startpage",r),e.addListener("property",function(e){var t=e.property.text.toLowerCase();o[t]&&(u[t]={value:e.value.text,line:e.property.line,col:e.property.col})}),e.addListener("endrule",i),e.addListener("endfontface",i),e.addListener("endkeyframerule",i),e.addListener("endpagemargin",i),e.addListener("endpage",i)}}),CSSLint.addRule({id:"duplicate-background-images",name:"Disallow duplicate background images",desc:"Every background-image should be unique. Use a common class for e.g. sprites.",browsers:"All",init:function(e,t){var n=this,r={};e.addListener("property",function(e){var i=e.property.text,s=e.value,o,u;if(i.match(/background/i))for(o=0,u=s.parts.length;o<u;o++)s.parts[o].type=="uri"&&(typeof r[s.parts[o].uri]=="undefined"?r[s.parts[o].uri]=e:t.report("Background image '"+s.parts[o].uri+"' was used multiple times, first declared at line "+r[s.parts[o].uri].line+", col "+r[s.parts[o].uri].col+".",e.line,e.col,n))})}}),CSSLint.addRule({id:"duplicate-properties",name:"Disallow duplicate properties",desc:"Duplicate properties must appear one after the other.",browsers:"All",init:function(e,t){function n(e){i={}}var r=this,i,s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var n=e.property,o=n.text.toLowerCase();i[o]&&(s!=o||i[o]==e.value.text)&&t.report("Duplicate property '"+e.property+"' found.",e.line,e.col,r),i[o]=e.value.text,s=o})}}),CSSLint.addRule({id:"empty-rules",name:"Disallow empty rules",desc:"Rules without any properties specified should be removed.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(){r=0}),e.addListener("property",function(){r++}),e.addListener("endrule",function(e){var i=e.selectors;r===0&&t.report("Rule is empty.",i[0].line,i[0].col,n)})}}),CSSLint.addRule({id:"errors",name:"Parsing Errors",desc:"This rule looks for recoverable syntax errors.",browsers:"All",init:function(e,t){var n=this;e.addListener("error",function(e){t.error(e.message,e.line,e.col,n)})}}),CSSLint.addRule({id:"fallback-colors",name:"Require fallback colors",desc:"For older browsers that don't support RGBA, HSL, or HSLA, provide a fallback color.",browsers:"IE6,IE7,IE8",init:function(e,t){function n(e){o={},i=null}var r=this,i,s={color:1,background:1,"border-color":1,"border-top-color":1,"border-right-color":1,"border-bottom-color":1,"border-left-color":1,border:1,"border-top":1,"border-right":1,"border-bottom":1,"border-left":1,"background-color":1},o;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var n=e.property,o=n.text.toLowerCase(),u=e.value.parts,a=0,f="",l=u.length;if(s[o])while(a<l)u[a].type=="color"&&("alpha"in u[a]||"hue"in u[a]?(/([^\)]+)\(/.test(u[a])&&(f=RegExp.$1.toUpperCase()),(!i||i.property.text.toLowerCase()!=o||i.colorType!="compat")&&t.report("Fallback "+o+" (hex or RGB) should precede "+f+" "+o+".",e.line,e.col,r)):e.colorType="compat"),a++;i=e})}}),CSSLint.addRule({id:"floats",name:"Disallow too many floats",desc:"This rule tests if the float property is used too many times",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.property.text.toLowerCase()=="float"&&e.value.text.toLowerCase()!="none"&&r++}),e.addListener("endstylesheet",function(){t.stat("floats",r),r>=10&&t.rollupWarn("Too many floats ("+r+"), you're probably using them for layout. Consider using a grid system instead.",n)})}}),CSSLint.addRule({id:"font-faces",name:"Don't use too many web fonts",desc:"Too many different web fonts in the same stylesheet.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startfontface",function(){r++}),e.addListener("endstylesheet",function(){r>5&&t.rollupWarn("Too many @font-face declarations ("+r+").",n)})}}),CSSLint.addRule({id:"font-sizes",name:"Disallow too many font sizes",desc:"Checks the number of font-size declarations.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.property=="font-size"&&r++}),e.addListener("endstylesheet",function(){t.stat("font-sizes",r),r>=10&&t.rollupWarn("Too many font-size declarations ("+r+"), abstraction needed.",n)})}}),CSSLint.addRule({id:"gradients",name:"Require all gradient definitions",desc:"When using a vendor-prefixed gradient, make sure to use them all.",browsers:"All",init:function(e,t){var n=this,r;e.addListener("startrule",function(){r={moz:0,webkit:0,oldWebkit:0,o:0}}),e.addListener("property",function(e){/\-(moz|o|webkit)(?:\-(?:linear|radial))\-gradient/i.test(e.value)?r[RegExp.$1]=1:/\-webkit\-gradient/i.test(e.value)&&(r.oldWebkit=1)}),e.addListener("endrule",function(e){var i=[];r.moz||i.push("Firefox 3.6+"),r.webkit||i.push("Webkit (Safari 5+, Chrome)"),r.oldWebkit||i.push("Old Webkit (Safari 4+, Chrome)"),r.o||i.push("Opera 11.1+"),i.length&&i.length<4&&t.report("Missing vendor-prefixed CSS gradients for "+i.join(", ")+".",e.selectors[0].line,e.selectors[0].col,n)})}}),CSSLint.addRule({id:"ids",name:"Disallow IDs in selectors",desc:"Selectors should not contain IDs.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l,c;for(f=0;f<i.length;f++){s=i[f],a=0;for(l=0;l<s.parts.length;l++){o=s.parts[l];if(o.type==e.SELECTOR_PART_TYPE)for(c=0;c<o.modifiers.length;c++)u=o.modifiers[c],u.type=="id"&&a++}a==1?t.report("Don't use IDs in selectors.",s.line,s.col,n):a>1&&t.report(a+" IDs in the selector, really?",s.line,s.col,n)}})}}),CSSLint.addRule({id:"import",name:"Disallow @import",desc:"Don't use @import, use <link> instead.",browsers:"All",init:function(e,t){var n=this;e.addListener("import",function(e){t.report("@import prevents parallel downloads, use <link> instead.",e.line,e.col,n)})}}),CSSLint.addRule({id:"important",name:"Disallow !important",desc:"Be careful when using !important declaration",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.important===!0&&(r++,t.report("Use of !important",e.line,e.col,n))}),e.addListener("endstylesheet",function(){t.stat("important",r),r>=10&&t.rollupWarn("Too many !important declarations ("+r+"), try to use less than 10 to avoid specificity issues.",n)})}}),CSSLint.addRule({id:"known-properties",name:"Require use of known properties",desc:"Properties should be known (listed in CSS3 specification) or be a vendor-prefixed property.",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property.text.toLowerCase();e.invalid&&t.report(e.invalid.message,e.line,e.col,n)})}}),CSSLint.addRule({id:"outline-none",name:"Disallow outline: none",desc:"Use of outline: none or outline: 0 should be limited to :focus rules.",browsers:"All",tags:["Accessibility"],init:function(e,t){function n(e){e.selectors?s={line:e.line,col:e.col,selectors:e.selectors,propCount:0,outline:!1}:s=null}function r(e){s&&s.outline&&(s.selectors.toString().toLowerCase().indexOf(":focus")==-1?t.report("Outlines should only be modified using :focus.",s.line,s.col,i):s.propCount==1&&t.report("Outlines shouldn't be hidden unless other visual changes are made.",s.line,s.col,i))}var i=this,s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase(),n=e.value;s&&(s.propCount++,t=="outline"&&(n=="none"||n=="0")&&(s.outline=!0))}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"overqualified-elements",name:"Disallow overqualified elements",desc:"Don't use classes or IDs with elements (a.foo or a#foo).",browsers:"All",init:function(e,t){var n=this,r={};e.addListener("startrule",function(i){var s=i.selectors,o,u,a,f,l,c;for(f=0;f<s.length;f++){o=s[f];for(l=0;l<o.parts.length;l++){u=o.parts[l];if(u.type==e.SELECTOR_PART_TYPE)for(c=0;c<u.modifiers.length;c++)a=u.modifiers[c],u.elementName&&a.type=="id"?t.report("Element ("+u+") is overqualified, just use "+a+" without element name.",u.line,u.col,n):a.type=="class"&&(r[a]||(r[a]=[]),r[a].push({modifier:a,part:u}))}}}),e.addListener("endstylesheet",function(){var e;for(e in r)r.hasOwnProperty(e)&&r[e].length==1&&r[e][0].part.elementName&&t.report("Element ("+r[e][0].part+") is overqualified, just use "+r[e][0].modifier+" without element name.",r[e][0].part.line,r[e][0].part.col,n)})}}),CSSLint.addRule({id:"qualified-headings",name:"Disallow qualified headings",desc:"Headings should not be qualified (namespaced).",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a;for(u=0;u<i.length;u++){s=i[u];for(a=0;a<s.parts.length;a++)o=s.parts[a],o.type==e.SELECTOR_PART_TYPE&&o.elementName&&/h[1-6]/.test(o.elementName.toString())&&a>0&&t.report("Heading ("+o.elementName+") should not be qualified.",o.line,o.col,n)}})}}),CSSLint.addRule({id:"regex-selectors",name:"Disallow selectors that look like regexs",desc:"Selectors that look like regular expressions are slow and should be avoided.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l;for(a=0;a<i.length;a++){s=i[a];for(f=0;f<s.parts.length;f++){o=s.parts[f];if(o.type==e.SELECTOR_PART_TYPE)for(l=0;l<o.modifiers.length;l++)u=o.modifiers[l],u.type=="attribute"&&/([\~\|\^\$\*]=)/.test(u)&&t.report("Attribute selectors with "+RegExp.$1+" are slow!",u.line,u.col,n)}}})}}),CSSLint.addRule({id:"rules-count",name:"Rules Count",desc:"Track how many rules there are.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(){r++}),e.addListener("endstylesheet",function(){t.stat("rule-count",r)})}}),CSSLint.addRule({id:"selector-max-approaching",name:"Warn when approaching the 4095 selector limit for IE",desc:"Will warn when selector count is >= 3800 selectors.",browsers:"IE",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(e){r+=e.selectors.length}),e.addListener("endstylesheet",function(){r>=3800&&t.report("You have "+r+" selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.",0,0,n)})}}),CSSLint.addRule({id:"selector-max",name:"Error when past the 4095 selector limit for IE",desc:"Will error when selector count is > 4095.",browsers:"IE",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(e){r+=e.selectors.length}),e.addListener("endstylesheet",function(){r>4095&&t.report("You have "+r+" selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.",0,0,n)})}}),CSSLint.addRule({id:"shorthand",name:"Require shorthand properties",desc:"Use shorthand properties where possible.",browsers:"All",init:function(e,t){function n(e){f={}}function r(e){var n,r,s,o;for(n in l)if(l.hasOwnProperty(n)){o=0;for(r=0,s=l[n].length;r<s;r++)o+=f[l[n][r]]?1:0;o==l[n].length&&t.report("The properties "+l[n].join(", ")+" can be replaced by "+n+".",e.line,e.col,i)}}var i=this,s,o,u,a={},f,l={margin:["margin-top","margin-bottom","margin-left","margin-right"],padding:["padding-top","padding-bottom","padding-left","padding-right"]};for(s in l)if(l.hasOwnProperty(s))for(o=0,u=l[s].length;o<u;o++)a[l[s][o]]=s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("property",function(e){var t=e.property.toString().toLowerCase(),n=e.value.parts[0].value;a[t]&&(f[t]=1)}),e.addListener("endrule",r),e.addListener("endfontface",r)}}),CSSLint.addRule({id:"star-property-hack",name:"Disallow properties with a star prefix",desc:"Checks for the star property hack (targets IE6/7)",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property;r.hack=="*"&&t.report("Property with star prefix found.",e.property.line,e.property.col,n)})}}),CSSLint.addRule({id:"text-indent",name:"Disallow negative text-indent",desc:"Checks for text indent less than -99px",browsers:"All",init:function(e,t){function n(e){s=!1,o="inherit"}function r(e){s&&o!="ltr"&&t.report("Negative text-indent doesn't work well with RTL. If you use text-indent for image replacement explicitly set direction for that item to ltr.",s.line,s.col,i)}var i=this,s,o;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("property",function(e){var t=e.property.toString().toLowerCase(),n=e.value;t=="text-indent"&&n.parts[0].value<-99?s=e.property:t=="direction"&&n=="ltr"&&(o="ltr")}),e.addListener("endrule",r),e.addListener("endfontface",r)}}),CSSLint.addRule({id:"underscore-property-hack",name:"Disallow properties with an underscore prefix",desc:"Checks for the underscore property hack (targets IE6)",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property;r.hack=="_"&&t.report("Property with underscore prefix found.",e.property.line,e.property.col,n)})}}),CSSLint.addRule({id:"unique-headings",name:"Headings should only be defined once",desc:"Headings should be defined only once.",browsers:"All",init:function(e,t){var n=this,r={h1:0,h2:0,h3:0,h4:0,h5:0,h6:0};e.addListener("startrule",function(e){var i=e.selectors,s,o,u,a,f;for(a=0;a<i.length;a++){s=i[a],o=s.parts[s.parts.length-1];if(o.elementName&&/(h[1-6])/i.test(o.elementName.toString())){for(f=0;f<o.modifiers.length;f++)if(o.modifiers[f].type=="pseudo"){u=!0;break}u||(r[RegExp.$1]++,r[RegExp.$1]>1&&t.report("Heading ("+o.elementName+") has already been defined.",o.line,o.col,n))}}}),e.addListener("endstylesheet",function(e){var i,s=[];for(i in r)r.hasOwnProperty(i)&&r[i]>1&&s.push(r[i]+" "+i+"s");s.length&&t.rollupWarn("You have "+s.join(", ")+" defined in this stylesheet.",n)})}}),CSSLint.addRule({id:"universal-selector",name:"Disallow universal selector",desc:"The universal selector (*) is known to be slow.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(e){var r=e.selectors,i,s,o,u,a,f;for(u=0;u<r.length;u++)i=r[u],s=i.parts[i.parts.length-1],s.elementName=="*"&&t.report(n.desc,s.line,s.col,n)})}}),CSSLint.addRule({id:"unqualified-attributes",name:"Disallow unqualified attribute selectors",desc:"Unqualified attribute selectors are known to be slow.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l;for(a=0;a<i.length;a++){s=i[a],o=s.parts[s.parts.length-1];if(o.type==e.SELECTOR_PART_TYPE)for(l=0;l<o.modifiers.length;l++)u=o.modifiers[l],u.type=="attribute"&&(!o.elementName||o.elementName=="*")&&t.report(n.desc,o.line,o.col,n)}})}}),CSSLint.addRule({id:"vendor-prefix",name:"Require standard property with vendor prefix",desc:"When using a vendor-prefixed property, make sure to include the standard one.",browsers:"All",init:function(e,t){function n(){s={},o=1}function r(e){var n,r,o,a,f,l,c=[];for(n in s)u[n]&&c.push({actual:n,needed:u[n]});for(r=0,o=c.length;r<o;r++)f=c[r].needed,l=c[r].actual,s[f]?s[f][0].pos<s[l][0].pos&&t.report("Standard property '"+f+"' should come after vendor-prefixed property '"+l+"'.",s[l][0].name.line,s[l][0].name.col,i):t.report("Missing standard property '"+f+"' to go along with '"+l+"'.",s[l][0].name.line,s[l][0].name.col,i)}var i=this,s,o,u={"-webkit-border-radius":"border-radius","-webkit-border-top-left-radius":"border-top-left-radius","-webkit-border-top-right-radius":"border-top-right-radius","-webkit-border-bottom-left-radius":"border-bottom-left-radius","-webkit-border-bottom-right-radius":"border-bottom-right-radius","-o-border-radius":"border-radius","-o-border-top-left-radius":"border-top-left-radius","-o-border-top-right-radius":"border-top-right-radius","-o-border-bottom-left-radius":"border-bottom-left-radius","-o-border-bottom-right-radius":"border-bottom-right-radius","-moz-border-radius":"border-radius","-moz-border-radius-topleft":"border-top-left-radius","-moz-border-radius-topright":"border-top-right-radius","-moz-border-radius-bottomleft":"border-bottom-left-radius","-moz-border-radius-bottomright":"border-bottom-right-radius","-moz-column-count":"column-count","-webkit-column-count":"column-count","-moz-column-gap":"column-gap","-webkit-column-gap":"column-gap","-moz-column-rule":"column-rule","-webkit-column-rule":"column-rule","-moz-column-rule-style":"column-rule-style","-webkit-column-rule-style":"column-rule-style","-moz-column-rule-color":"column-rule-color","-webkit-column-rule-color":"column-rule-color","-moz-column-rule-width":"column-rule-width","-webkit-column-rule-width":"column-rule-width","-moz-column-width":"column-width","-webkit-column-width":"column-width","-webkit-column-span":"column-span","-webkit-columns":"columns","-moz-box-shadow":"box-shadow","-webkit-box-shadow":"box-shadow","-moz-transform":"transform","-webkit-transform":"transform","-o-transform":"transform","-ms-transform":"transform","-moz-transform-origin":"transform-origin","-webkit-transform-origin":"transform-origin","-o-transform-origin":"transform-origin","-ms-transform-origin":"transform-origin","-moz-box-sizing":"box-sizing","-webkit-box-sizing":"box-sizing","-moz-user-select":"user-select","-khtml-user-select":"user-select","-webkit-user-select":"user-select"};e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase();s[t]||(s[t]=[]),s[t].push({name:e.property,value:e.value,pos:o++})}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"zero-units",name:"Disallow units for 0 values",desc:"You don't need to specify units when a value is 0.",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.value.parts,i=0,s=r.length;while(i<s)(r[i].units||r[i].type=="percentage")&&r[i].value===0&&r[i].type!="time"&&t.report("Values of 0 shouldn't have units specified.",r[i].line,r[i].col,n),i++})}}),function(){var e=function(e){return!e||e.constructor!==String?"":e.replace(/[\"&><]/g,function(e){switch(e){case'"':return"&quot;";case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;"}})};CSSLint.addFormatter({id:"checkstyle-xml",name:"Checkstyle XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><checkstyle>'},endFormat:function(){return"</checkstyle>"},readError:function(t,n){return'<file name="'+e(t)+'"><error line="0" column="0" severty="error" message="'+e(n)+'"></error></file>'},formatResults:function(t,n,r){var i=t.messages,s=[],o=function(e){return!!e&&"name"in e?"net.csslint."+e.name.replace(/\s/g,""):""};return i.length>0&&(s.push('<file name="'+n+'">'),CSSLint.Util.forEach(i,function(t,n){t.rollup||s.push('<error line="'+t.line+'" column="'+t.col+'" severity="'+t.type+'"'+' message="'+e(t.message)+'" source="'+o(t.rule)+'"/>')}),s.push("</file>")),s.join("")}})}(),CSSLint.addFormatter({id:"compact",name:"Compact, 'porcelain' format",startFormat:function(){return""},endFormat:function(){return""},formatResults:function(e,t,n){var r=e.messages,i="";n=n||{};var s=function(e){return e.charAt(0).toUpperCase()+e.slice(1)};return r.length===0?n.quiet?"":t+": Lint Free!":(CSSLint.Util.forEach(r,function(e,n){e.rollup?i+=t+": "+s(e.type)+" - "+e.message+"\n":i+=t+": "+"line "+e.line+", col "+e.col+", "+s(e.type)+" - "+e.message+"\n"}),i)}}),CSSLint.addFormatter({id:"csslint-xml",name:"CSSLint XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><csslint>'},endFormat:function(){return"</csslint>"},formatResults:function(e,t,n){var r=e.messages,i=[],s=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(i.push('<file name="'+t+'">'),CSSLint.Util.forEach(r,function(e,t){e.rollup?i.push('<issue severity="'+e.type+'" reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>'):i.push('<issue line="'+e.line+'" char="'+e.col+'" severity="'+e.type+'"'+' reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>')}),i.push("</file>")),i.join("")}}),CSSLint.addFormatter({id:"junit-xml",name:"JUNIT XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><testsuites>'},endFormat:function(){return"</testsuites>"},formatResults:function(e,t,n){var r=e.messages,i=[],s={error:0,failure:0},o=function(e){return!!e&&"name"in e?"net.csslint."+e.name.replace(/\s/g,""):""},u=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(r.forEach(function(e,t){var n=e.type==="warning"?"error":e.type;e.rollup||(i.push('<testcase time="0" name="'+o(e.rule)+'">'),i.push("<"+n+' message="'+u(e.message)+'"><![CDATA['+e.line+":"+e.col+":"+u(e.evidence)+"]]></"+n+">"),i.push("</testcase>"),s[n]+=1)}),i.unshift('<testsuite time="0" tests="'+r.length+'" skipped="0" errors="'+s.error+'" failures="'+s.failure+'" package="net.csslint" name="'+t+'">'),i.push("</testsuite>")),i.join("")}}),CSSLint.addFormatter({id:"lint-xml",name:"Lint XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><lint>'},endFormat:function(){return"</lint>"},formatResults:function(e,t,n){var r=e.messages,i=[],s=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(i.push('<file name="'+t+'">'),CSSLint.Util.forEach(r,function(e,t){e.rollup?i.push('<issue severity="'+e.type+'" reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>'):i.push('<issue line="'+e.line+'" char="'+e.col+'" severity="'+e.type+'"'+' reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>')}),i.push("</file>")),i.join("")}}),CSSLint.addFormatter({id:"text",name:"Plain Text",startFormat:function(){return""},endFormat:function(){return""},formatResults:function(e,t,n){var r=e.messages,i="";n=n||{};if(r.length===0)return n.quiet?"":"\n\ncsslint: No errors in "+t+".";i="\n\ncsslint: There are "+r.length+" problems in "+t+".";var s=t.lastIndexOf("/"),o=t;return s===-1&&(s=t.lastIndexOf("\\")),s>-1&&(o=t.substring(s+1)),CSSLint.Util.forEach(r,function(e,t){i=i+"\n\n"+o,e.rollup?(i+="\n"+(t+1)+": "+e.type,i+="\n"+e.message):(i+="\n"+(t+1)+": "+e.type+" at line "+e.line+", col "+e.col,i+="\n"+e.message,i+="\n"+e.evidence)}),i}}),exports.CSSLint=CSSLint})
4031 ^
4032
40330 error(s), 3 warning(s)
4034Linting './lib/viewers/text/worker-javascript.js' ...
4035./lib/viewers/text/worker-javascript.js:1: WARNING - Suspicious code. Is there a missing '+' on the previous line?
4036"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/javascript_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/javascript/jshint"],function(require,exports,module){function startRegex(e){return RegExp("^("+e.join("|")+")")}var oop=require("../lib/oop"),Mirror=require("../worker/mirror").Mirror,lint=require("./javascript/jshint").JSHINT,disabledWarningsRe=startRegex(["Bad for in variable '(.+)'.",'Missing "use strict"']),errorsRe=startRegex(["Unexpected","Expected ","Confusing (plus|minus)","\\{a\\} unterminated regular expression","Unclosed ","Unmatched ","Unbegun comment","Bad invocation","Missing space after","Missing operator at"]),infoRe=startRegex(["Expected an assignment","Bad escapement of EOL","Unexpected comma","Unexpected space","Missing radix parameter.","A leading decimal point can","\\['{a}'\\] is better written in dot notation.","'{a}' used out of scope"]),JavaScriptWorker=exports.JavaScriptWorker=function(e){Mirror.call(this,e),this.setTimeout(500),this.setOptions()};oop.inherits(JavaScriptWorker,Mirror),function(){this.setOptions=function(e){this.options=e||{es5:!0,esnext:!0,devel:!0,browser:!0,node:!0,laxcomma:!0,laxbreak:!0,lastsemic:!0,onevar:!1,passfail:!1,maxerr:100,expr:!0,multistr:!0,globalstrict:!0},this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.changeOptions=function(e){oop.mixin(this.options,e),this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.isValidJS=function(str){try{eval("throw 0;"+str)}catch(e){if(e===0)return!0}return!1},this.onUpdate=function(){var e=this.doc.getValue();e=e.replace(/^#!.*\n/,"\n");if(!e){this.sender.emit("jslint",[]);return}var t=[],n=this.isValidJS(e)?"warning":"error";lint(e,this.options);var r=lint.errors,i=!1;for(var s=0;s<r.length;s++){var o=r[s];if(!o)continue;var u=o.raw,a="warning";if(u=="Missing semicolon."){var f=o.evidence.substr(o.character);f=f.charAt(f.search(/\S/)),n=="error"&&f&&/[\w\d{(['"]/.test(f)?(o.reason='Missing ";" before statement',a="error"):a="info"}else{if(disabledWarningsRe.test(u))continue;infoRe.test(u)?a="info":errorsRe.test(u)?(i=!0,a=n):u=="'{a}' is not defined."?a="warning":u=="'{a}' is defined but never used."&&(a="info")}t.push({row:o.line-1,column:o.character-1,text:o.reason,type:a,raw:u}),i}this.sender.emit("jslint",t)}}.call(JavaScriptWorker.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/javascript/jshint",["require","exports","module"],function(e,t,n){var r=function(){function e(){}function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function n(e,t){ht[e]===undefined&&ct[e]===undefined&&d("Bad option: '"+e+"'.",t)}function i(e){return Object.prototype.toString.call(e)==="[object String]"}function s(e){return e>="a"&&e<="z?"||e>="A"&&e<="Z?"}function o(e){return e>="0"&&e<="9"}function u(e,t){return e?!e.identifier||e.value!==t?!1:!0:!1}function a(e,t){return e.replace(/\{([^{}]*)\}/g,function(e,n){var r=t[n];return typeof r=="string"||typeof r=="number"?r:e})}function f(e,n){var i;for(i in n)t(n,i)&&!t(r.blacklist,i)&&(e[i]=n[i])}function l(){Object.keys(r.blacklist).forEach(function(e){delete Ft[e]})}function c(){jt.couch&&f(Ft,mt),jt.rhino&&f(Ft,zt),jt.prototypejs&&f(Ft,Rt),jt.node&&(f(Ft,Ht),jt.globalstrict=!0),jt.devel&&f(Ft,yt),jt.dojo&&f(Ft,bt),jt.browser&&f(Ft,vt),jt.nonstandard&&f(Ft,$t),jt.jquery&&f(Ft,Lt),jt.mootools&&f(Ft,Dt),jt.worker&&f(Ft,nn),jt.wsh&&f(Ft,rn),jt.esnext&&en(),jt.globalstrict&&jt.strict!==!1&&(jt.strict=!0),jt.yui&&f(Ft,sn)}function h(e,t,n){var r=Math.floor(t/At.length*100);throw{name:"JSHintError",line:t,character:n,message:e+" ("+r+"% scanned).",raw:e}}function p(e,t,n,i){return r.undefs.push([e,t,n,i])}function d(e,t,n,i,s,o){var u,f,l;return t=t||Pt,t.id==="(end)"&&(t=Gt),f=t.line||0,u=t.from||0,l={id:"(error)",raw:e,evidence:At[f-1]||"",line:f,character:u,scope:r.scope,a:n,b:i,c:s,d:o},l.reason=a(e,l),r.errors.push(l),jt.passfail&&h("Stopping. ",f,u),tn+=1,tn>=jt.maxerr&&h("Too many errors.",f,u),l}function v(e,t,n,r,i,s,o){return d(e,{line:t,from:n},r,i,s,o)}function m(e,t,n,r,i,s){d(e,t,n,r,i,s)}function g(e,t,n,r,i,s,o){return m(e,{line:t,from:n},r,i,s,o)}function y(e,t){var n;return n={id:"(internal)",elem:e,value:t},r.internals.push(n),n}function b(e,n,r){e==="hasOwnProperty"&&d("'hasOwnProperty' is a really bad name."),n==="exception"&&t(wt["(context)"],e)&&wt[e]!==!0&&!jt.node&&d("Value of '{a}' may be overwritten in IE.",Pt,e),t(wt,e)&&!wt["(global)"]&&(wt[e]===!0?jt.latedef&&d("'{a}' was used before it was defined.",Pt,e):!jt.shadow&&n!=="exception"&&d("'{a}' is already defined.",Pt,e)),wt[e]=n,r&&(wt["(tokens)"][e]=r),wt["(global)"]?(xt[e]=wt,t(Tt,e)&&(jt.latedef&&d("'{a}' was used before it was defined.",Pt,e),delete Tt[e])):Wt[e]=wt}function w(){var e=Pt,i=e.value,s=jt.quotmark,o={},u,a,h,p,d,v,g;switch(i){case"*/":m("Unbegun comment.");break;case"/*members":case"/*member":i="/*members",_t||(_t={}),a=_t,jt.quotmark=!1;break;case"/*jshint":case"/*jslint":a=jt,h=ct;break;case"/*global":a=o;break;default:m("What?")}p=vn.token();for(;;){g=!1;var y;for(;;){if(p.type==="special"&&p.value==="*/"){y=!0;break}if(p.id!=="(endline)"&&p.id!==",")break;p=vn.token()}if(y)break;i==="/*global"&&p.value==="-"&&(g=!0,p=vn.token()),p.type!=="(string)"&&p.type!=="(identifier)"&&i!=="/*members"&&m("Bad option.",p),v=vn.token();if(v.id===":"){v=vn.token(),a===_t&&m("Expected '{a}' and instead saw '{b}'.",p,"*/",":"),i==="/*jshint"&&n(p.value,p);var b=["maxstatements","maxparams","maxdepth","maxcomplexity","maxerr","maxlen","indent"];if(b.indexOf(p.value)>-1&&(i==="/*jshint"||i==="/*jslint"))u=+v.value,(typeof u!="number"||!isFinite(u)||u<=0||Math.floor(u)!==u)&&m("Expected a small integer and instead saw '{a}'.",v,v.value),p.value==="indent"&&(a.white=!0),a[p.value]=u;else if(p.value==="validthis")wt["(global)"]?m("Option 'validthis' can't be used in a global scope."):v.value==="true"||v.value==="false"?a[p.value]=v.value==="true":m("Bad option value.",v);else if(p.value==="quotmark"&&i==="/*jshint")switch(v.value){case"true":a.quotmark=!0;break;case"false":a.quotmark=!1;break;case"double":case"single":a.quotmark=v.value;break;default:m("Bad option value.",v)}else v.value==="true"||v.value==="false"?(i==="/*jslint"?(d=dt[p.value]||p.value,a[d]=v.value==="true",pt[d]!==undefined&&(a[d]=!a[d])):a[p.value]=v.value==="true",p.value==="newcap"&&(a["(explicitNewcap)"]=!0)):m("Bad option value.",v);p=vn.token()}else(i==="/*jshint"||i==="/*jslint")&&m("Missing option value.",p),a[p.value]=!1,i==="/*global"&&g===!0&&(r.blacklist[p.value]=p.value,l()),p=v}i==="/*members"&&(jt.quotmark=s),f(Ft,o);for(var w in o)t(o,w)&&(gt[w]=e);h&&c()}function E(e){var t=e||0,n=0,r;while(n<=t)r=Ot[n],r||(r=Ot[n]=vn.token()),n+=1;return r}function S(e,t){switch(Gt.id){case"(number)":Pt.id==="."&&d("A dot following a number can be confused with a decimal point.",Gt);break;case"-":(Pt.id==="-"||Pt.id==="--")&&d("Confusing minusses.");break;case"+":(Pt.id==="+"||Pt.id==="++")&&d("Confusing plusses.")}if(Gt.type==="(string)"||Gt.identifier)ft=Gt.value;e&&Pt.id!==e&&(t?Pt.id==="(end)"?d("Unmatched '{a}'.",t,t.id):d("Expected '{a}' to match '{b}' from line {c} and instead saw '{d}'.",Pt,e,t.id,t.line,Pt.value):(Pt.type!=="(identifier)"||Pt.value!==e)&&d("Expected '{a}' and instead saw '{b}'.",Pt,e,Pt.value)),qt=Gt,Gt=Pt;for(;;){Pt=Ot.shift()||vn.token();if(Pt.id==="(end)"||Pt.id==="(error)")return;if(Pt.type==="special")w();else if(Pt.id!=="(endline)")break}}function x(e,t){var n,r=!1,i=!1;Pt.id==="(end)"&&m("Unexpected early end of program.",Gt),S(),t&&(ft="anonymous",wt["(verb)"]=Gt.value);if(t===!0&&Gt.fud)n=Gt.fud();else{if(Gt.nud)n=Gt.nud();else{if(Pt.type==="(number)"&&Gt.id===".")return d("A leading decimal point can be confused with a dot: '.{a}'.",Gt,Pt.value),S(),Gt;m("Expected an identifier and instead saw '{a}'.",Gt,Gt.id)}while(e<Pt.lbp)r=Gt.value==="Array",i=Gt.value==="Object",n&&(n.value||n.first&&n.first.value)&&(n.value!=="new"||n.first&&n.first.value&&n.first.value===".")&&(r=!1,n.value!==Gt.value&&(i=!1)),S(),r&&Gt.id==="("&&Pt.id===")"&&d("Use the array literal notation [].",Gt),i&&Gt.id==="("&&Pt.id===")"&&d("Use the object literal notation {}.",Gt),Gt.led?n=Gt.led(n):m("Expected an operator and instead saw '{a}'.",Gt,Gt.id)}return n}function T(e,t){e=e||Gt,t=t||Pt,jt.white&&e.character!==t.from&&e.line===t.line&&(e.from+=e.character-e.from,d("Unexpected space after '{a}'.",e,e.value))}function N(e,t){e=e||Gt,t=t||Pt,jt.white&&(e.character!==t.from||e.line!==t.line)&&d("Unexpected space before '{a}'.",t,t.value)}function C(e,t){e=e||Gt,t=t||Pt,jt.white&&!e.comment&&e.line===t.line&&T(e,t)}function k(e,t){if(jt.white){e=e||Gt,t=t||Pt;if(e.value===";"&&t.value===";")return;e.line===t.line&&e.character===t.from&&(e.from+=e.character-e.from,d("Missing space after '{a}'.",e,e.value))}}function L(e,t){e=e||Gt,t=t||Pt,!jt.laxbreak&&e.line!==t.line?d("Bad line breaking before '{a}'.",t,t.id):jt.white&&(e=e||Gt,t=t||Pt,e.character===t.from&&(e.from+=e.character-e.from,d("Missing space after '{a}'.",e,e.value)))}function A(e){var t;jt.white&&Pt.id!=="(end)"&&(t=Ct+(e||0),Pt.from!==t&&d("Expected '{a}' to have an indentation at {b} instead at {c}.",Pt,Pt.value,t,Pt.from))}function O(e){e=e||Gt,e.line!==Pt.line&&d("Line breaking error '{a}'.",e,e.value)}function M(){Gt.line!==Pt.line?jt.laxcomma||(M.first&&(d("Comma warnings can be turned off with 'laxcomma'"),M.first=!1),d("Bad line breaking before '{a}'.",Gt,Pt.id)):!Gt.comment&&Gt.character!==Pt.from&&jt.white&&(Gt.from+=Gt.character-Gt.from,d("Unexpected space after '{a}'.",Gt,Gt.value)),S(","),k(Gt,Pt)}function _(e,t){var n=Kt[e];if(!n||typeof n!="object")Kt[e]=n={id:e,lbp:t,value:e};return n}function D(e){return _(e,0)}function P(e,t){var n=D(e);return n.identifier=n.reserved=!0,n.fud=t,n}function H(e,t){var n=P(e,t);return n.block=!0,n}function B(e){var t=e.id.charAt(0);if(t>="a"&&t<="z"||t>="A"&&t<="Z")e.identifier=e.reserved=!0;return e}function j(e,t){var n=_(e,150);return B(n),n.nud=typeof t=="function"?t:function(){this.right=x(150),this.arity="unary";if(this.id==="++"||this.id==="--")jt.plusplus?d("Unexpected use of '{a}'.",this,this.id):(!this.right.identifier||this.right.reserved)&&this.right.id!=="."&&this.right.id!=="["&&d("Bad operand.",this);return this},n}function F(e,t){var n=D(e);return n.type=e,n.nud=t,n}function I(e,t){var n=F(e,t);return n.identifier=n.reserved=!0,n}function q(e,t){return I(e,function(){return typeof t=="function"&&t(this),this})}function R(e,t,n,r){var i=_(e,n);return B(i),i.led=function(i){return r||(L(qt,Gt),k(Gt,Pt)),e==="in"&&i.id==="!"&&d("Confusing use of '{a}'.",i,"!"),typeof t=="function"?t(i,this):(this.left=i,this.right=x(n),this)},i}function U(e,t){var n=_(e,100);return n.led=function(e){L(qt,Gt),k(Gt,Pt);var n=x(100);return u(e,"NaN")||u(n,"NaN")?d("Use the isNaN function to compare with NaN.",this):t&&t.apply(this,[e,n]),e.id==="!"&&d("Confusing use of '{a}'.",e,"!"),n.id==="!"&&d("Confusing use of '{a}'.",n,"!"),this.left=e,this.right=n,this},n}function z(e){return e&&(e.type==="(number)"&&+e.value===0||e.type==="(string)"&&e.value===""||e.type==="null"&&!jt.eqnull||e.type==="true"||e.type==="false"||e.type==="undefined")}function W(e){return _(e,20).exps=!0,R(e,function(e,t){t.left=e,Ft[e.value]===!1&&Wt[e.value]["(global)"]===!0?d("Read only.",e):e["function"]&&d("'{a}' is a function.",e,e.value);if(e){jt.esnext&&wt[e.value]==="const"&&d("Attempting to override '{a}' which is a constant",e,e.value);if(e.id==="."||e.id==="[")return(!e.left||e.left.value==="arguments")&&d("Bad assignment.",t),t.right=x(19),t;if(e.identifier&&!e.reserved)return wt[e.value]==="exception"&&d("Do not assign to the exception parameter.",e),t.right=x(19),t;e===Kt["function"]&&d("Expected an identifier in an assignment and instead saw a function invocation.",Gt)}m("Bad assignment.",t)},20)}function X(e,t,n){var r=_(e,n);return B(r),r.led=typeof t=="function"?t:function(e){return jt.bitwise&&d("Unexpected use of '{a}'.",this,this.id),this.left=e,this.right=x(n),this},r}function V(e){return _(e,20).exps=!0,R(e,function(e,t){jt.bitwise&&d("Unexpected use of '{a}'.",t,t.id),k(qt,Gt),k(Gt,Pt);if(e)return e.id==="."||e.id==="["||e.identifier&&!e.reserved?(x(19),t):(e===Kt["function"]&&d("Expected an identifier in an assignment, and instead saw a function invocation.",Gt),t);m("Bad assignment.",t)},20)}function $(e){var t=_(e,150);return t.led=function(e){return jt.plusplus?d("Unexpected use of '{a}'.",this,this.id):(!e.identifier||e.reserved)&&e.id!=="."&&e.id!=="["&&d("Bad operand.",this),this.left=e,this},t}function J(e){if(Pt.identifier)return S(),Gt.reserved&&!jt.es5&&(!e||Gt.value!=="undefined")&&d("Expected an identifier and instead saw '{a}' (a reserved word).",Gt,Gt.id),Gt.value}function K(e){var t=J(e);if(t)return t;Gt.id==="function"&&Pt.id==="("?d("Missing name in function declaration."):m("Expected an identifier and instead saw '{a}'.",Pt,Pt.value)}function Q(e){var t=0,n;if(Pt.id!==";"||Bt)return;for(;;){n=E(t);if(n.reach)return;if(n.id!=="(endline)"){if(n.id==="function"){if(!jt.latedef)break;d("Inner functions should be listed at the top of the outer function.",n);break}d("Unreachable '{a}' after '{b}'.",n,n.value,e);break}t+=1}}function G(e){var t=Ct,n,r=Wt,i=Pt;if(i.id===";"){S(";");return}i.identifier&&!i.reserved&&E().id===":"&&(S(),S(":"),Wt=Object.create(r),b(i.value,"label"),!Pt.labelled&&Pt.value!=="{"&&d("Label '{a}' on {b} statement.",Pt,i.value,Pt.value),pn.test(i.value+":")&&d("Label '{a}' looks like a javascript url.",i,i.value),Pt.label=i.value,i=Pt);if(i.id==="{"){et(!0,!0);return}e||A(),n=x(0,!0);if(!i.block){!jt.expr&&(!n||!n.exps)?d("Expected an assignment or function call and instead saw an expression.",Gt):jt.nonew&&n.id==="("&&n.left.id==="new"&&d("Do not use 'new' for side effects.",i);if(Pt.id===",")return M();Pt.id!==";"?jt.asi||(!jt.lastsemic||Pt.id!=="}"||Pt.line!==Gt.line)&&v("Missing semicolon.",Gt.line,Gt.character):(T(Gt,Pt),S(";"),k(Gt,Pt))}return Ct=t,Wt=r,n}function Y(e){var t=[],n;while(!Pt.reach&&Pt.id!=="(end)")Pt.id===";"?(n=E(),(!n||n.id!=="(")&&d("Unnecessary semicolon."),S(";")):t.push(G(e===Pt.line));return t}function Z(){var e,t,n;for(;;){if(Pt.id==="(string)"){t=E(0);if(t.id==="(endline)"){e=1;do n=E(e),e+=1;while(n.id==="(endline)");if(n.id!==";"){if(n.id!=="(string)"&&n.id!=="(number)"&&n.id!=="(regexp)"&&n.identifier!==!0&&n.id!=="}")break;d("Missing semicolon.",Pt)}else t=n}else if(t.id==="}")d("Missing semicolon.",t);else if(t.id!==";")break;A(),S(),Jt[Gt.value]&&d('Unnecessary directive "{a}".',Gt,Gt.value),Gt.value==="use strict"&&(jt["(explicitNewcap)"]||(jt.newcap=!0),jt.undef=!0),Jt[Gt.value]=!0,t.id===";"&&S(";");continue}break}}function et(e,n,r){var i,s=Nt,o=Ct,u,a=Wt,f,l,c;Nt=e;if(!e||!jt.funcscope)Wt=Object.create(Wt);k(Gt,Pt),f=Pt;var h=wt["(metrics)"];h.nestedBlockDepth+=1,h.verifyMaxNestedBlockDepthPerFunction();if(Pt.id==="{"){S("{"),l=Gt.line;if(Pt.id!=="}"){Ct+=jt.indent;while(!e&&Pt.from>Ct)Ct+=jt.indent;if(r){u={};for(c in Jt)t(Jt,c)&&(u[c]=Jt[c]);Z(),jt.strict&&wt["(context)"]["(global)"]&&!u["use strict"]&&!Jt["use strict"]&&d('Missing "use strict" statement.')}i=Y(l),h.statementCount+=i.length,r&&(Jt=u),Ct-=jt.indent,l!==Pt.line&&A()}else l!==Pt.line&&A();S("}",f),Ct=o}else e?((!n||jt.curly)&&d("Expected '{a}' and instead saw '{b}'.",Pt,"{",Pt.value),Bt=!0,Ct+=jt.indent,i=[G(Pt.line===Gt.line)],Ct-=jt.indent,Bt=!1):m("Expected '{a}' and instead saw '{b}'.",Pt,"{",Pt.value);wt["(verb)"]=null;if(!e||!jt.funcscope)Wt=a;return Nt=s,e&&jt.noempty&&(!i||i.length===0)&&d("Empty block."),h.nestedBlockDepth-=1,i}function tt(e){_t&&typeof _t[e]!="boolean"&&d("Unexpected /*member '{a}'.",Gt,e),typeof Mt[e]=="number"?Mt[e]+=1:Mt[e]=1}function nt(e){var t=e.value,n=e.line,r=Tt[t];typeof r=="function"&&(r=!1),r?r[r.length-1]!==n&&r.push(n):(r=[n],Tt[t]=r)}function rt(){var e=J(!0);return e||(Pt.id==="(string)"?(e=Pt.value,S()):Pt.id==="(number)"&&(e=Pt.value.toString(),S())),e}function it(){var e=Pt,t=[],n;S("("),C();if(Pt.id===")"){S(")");return}for(;;){n=K(!0),t.push(n),b(n,"unused",Gt);if(Pt.id!==",")return S(")",e),C(qt,Gt),t;M()}}function st(e,t){var n,r=jt,i=Wt;return jt=Object.create(jt),Wt=Object.create(Wt),wt={"(name)":e||'"'+ft+'"',"(line)":Pt.line,"(character)":Pt.character,"(context)":wt,"(breakage)":0,"(loopage)":0,"(metrics)":ot(Pt),"(scope)":Wt,"(statement)":t,"(tokens)":{}},n=wt,Gt.funct=wt,St.push(wt),e&&b(e,"function"),wt["(params)"]=it(),wt["(metrics)"].verifyMaxParametersPerFunction(wt["(params)"]),et(!1,!1,!0),wt["(metrics)"].verifyMaxStatementsPerFunction(),wt["(metrics)"].verifyMaxComplexityPerFunction(),Wt=i,jt=r,wt["(last)"]=Gt.line,wt["(lastcharacter)"]=Gt.character,wt=wt["(context)"],n}function ot(e){return{statementCount:0,nestedBlockDepth:-1,ComplexityCount:1,verifyMaxStatementsPerFunction:function(){if(jt.maxstatements&&this.statementCount>jt.maxstatements){var t="Too many statements per function ("+this.statementCount+").";d(t,e)}},verifyMaxParametersPerFunction:function(t){t=t||[];if(jt.maxparams&&t.length>jt.maxparams){var n="Too many parameters per function ("+t.length+").";d(n,e)}},verifyMaxNestedBlockDepthPerFunction:function(){if(jt.maxdepth&&this.nestedBlockDepth>0&&this.nestedBlockDepth===jt.maxdepth+1){var e="Blocks are nested too deeply ("+this.nestedBlockDepth+").";d(e)}},verifyMaxComplexityPerFunction:function(){var t=jt.maxcomplexity,n=this.ComplexityCount;if(t&&n>t){var r="Cyclomatic complexity is too high per function ("+n+").";d(r,e)}}}}function ut(){wt["(metrics)"].ComplexityCount+=1}function at(){function e(){var e={},t=Pt;S("{");if(Pt.id!=="}")for(;;){if(Pt.id==="(end)")m("Missing '}' to match '{' from line {a}.",Pt,t.line);else{if(Pt.id==="}"){d("Unexpected comma.",Gt);break}Pt.id===","?m("Unexpected comma.",Pt):Pt.id!=="(string)"&&d("Expected a string and instead saw {a}.",Pt,Pt.value)}e[Pt.value]===!0?d("Duplicate key '{a}'.",Pt,Pt.value):Pt.value==="__proto__"&&!jt.proto||Pt.value==="__iterator__"&&!jt.iterator?d("The '{a}' key may produce unexpected results.",Pt,Pt.value):e[Pt.value]=!0,S(),S(":"),at();if(Pt.id!==",")break;S(",")}S("}")}function t(){var e=Pt;S("[");if(Pt.id!=="]")for(;;){if(Pt.id==="(end)")m("Missing ']' to match '[' from line {a}.",Pt,e.line);else{if(Pt.id==="]"){d("Unexpected comma.",Gt);break}Pt.id===","&&m("Unexpected comma.",Pt)}at();if(Pt.id!==",")break;S(",")}S("]")}switch(Pt.id){case"{":e();break;case"[":t();break;case"true":case"false":case"null":case"(number)":case"(string)":S();break;case"-":S("-"),Gt.character!==Pt.from&&d("Unexpected space after '-'.",Gt),T(Gt,Pt),S("(number)");break;default:m("Expected a JSON value.",Pt)}}var ft,lt={"<":!0,"<=":!0,"==":!0,"===":!0,"!==":!0,"!=":!0,">":!0,">=":!0,"+":!0,"-":!0,"*":!0,"/":!0,"%":!0},ct={asi:!0,bitwise:!0,boss:!0,browser:!0,camelcase:!0,couch:!0,curly:!0,debug:!0,devel:!0,dojo:!0,eqeqeq:!0,eqnull:!0,es5:!0,esnext:!0,evil:!0,expr:!0,forin:!0,funcscope:!0,globalstrict:!0,immed:!0,iterator:!0,jquery:!0,lastsemic:!0,latedef:!0,laxbreak:!0,laxcomma:!0,loopfunc:!0,mootools:!0,multistr:!0,newcap:!0,noarg:!0,node:!0,noempty:!0,nonew:!0,nonstandard:!0,nomen:!0,onevar:!0,onecase:!0,passfail:!0,plusplus:!0,proto:!0,prototypejs:!0,regexdash:!0,regexp:!0,rhino:!0,undef:!0,unused:!0,scripturl:!0,shadow:!0,smarttabs:!0,strict:!0,sub:!0,supernew:!0,trailing:!0,validthis:!0,withstmt:!0,white:!0,worker:!0,wsh:!0,yui:!0},ht={maxlen:!1,indent:!1,maxerr:!1,predef:!1,quotmark:!1,scope:!1,maxstatements:!1,maxdepth:!1,maxparams:!1,maxcomplexity:!1},pt={bitwise:!0,forin:!0,newcap:!0,nomen:!0,plusplus:!0,regexp:!0,undef:!0,white:!0,eqeqeq:!0,onevar:!0},dt={eqeq:"eqeqeq",vars:"onevar",windows:"wsh"},vt={ArrayBuffer:!1,ArrayBufferView:!1,Audio:!1,Blob:!1,addEventListener:!1,applicationCache:!1,atob:!1,blur:!1,btoa:!1,clearInterval:!1,clearTimeout:!1,close:!1,closed:!1,DataView:!1,DOMParser:!1,defaultStatus:!1,document:!1,event:!1,FileReader:!1,Float32Array:!1,Float64Array:!1,FormData:!1,focus:!1,frames:!1,getComputedStyle:!1,HTMLElement:!1,HTMLAnchorElement:!1,HTMLBaseElement:!1,HTMLBlockquoteElement:!1,HTMLBodyElement:!1,HTMLBRElement:!1,HTMLButtonElement:!1,HTMLCanvasElement:!1,HTMLDirectoryElement:!1,HTMLDivElement:!1,HTMLDListElement:!1,HTMLFieldSetElement:!1,HTMLFontElement:!1,HTMLFormElement:!1,HTMLFrameElement:!1,HTMLFrameSetElement:!1,HTMLHeadElement:!1,HTMLHeadingElement:!1,HTMLHRElement:!1,HTMLHtmlElement:!1,HTMLIFrameElement:!1,HTMLImageElement:!1,HTMLInputElement:!1,HTMLIsIndexElement:!1,HTMLLabelElement:!1,HTMLLayerElement:!1,HTMLLegendElement:!1,HTMLLIElement:!1,HTMLLinkElement:!1,HTMLMapElement:!1,HTMLMenuElement:!1,HTMLMetaElement:!1,HTMLModElement:!1,HTMLObjectElement:!1,HTMLOListElement:!1,HTMLOptGroupElement:!1,HTMLOptionElement:!1,HTMLParagraphElement:!1,HTMLParamElement:!1,HTMLPreElement:!1,HTMLQuoteElement:!1,HTMLScriptElement:!1,HTMLSelectElement:!1,HTMLStyleElement:!1,HTMLTableCaptionElement:!1,HTMLTableCellElement:!1,HTMLTableColElement:!1,HTMLTableElement:!1,HTMLTableRowElement:!1,HTMLTableSectionElement:!1,HTMLTextAreaElement:!1,HTMLTitleElement:!1,HTMLUListElement:!1,HTMLVideoElement:!1,history:!1,Int16Array:!1,Int32Array:!1,Int8Array:!1,Image:!1,length:!1,localStorage:!1,location:!1,MessageChannel:!1,MessageEvent:!1,MessagePort:!1,moveBy:!1,moveTo:!1,MutationObserver:!1,name:!1,Node:!1,NodeFilter:!1,navigator:!1,onbeforeunload:!0,onblur:!0,onerror:!0,onfocus:!0,onload:!0,onresize:!0,onunload:!0,open:!1,openDatabase:!1,opener:!1,Option:!1,parent:!1,print:!1,removeEventListener:!1,resizeBy:!1,resizeTo:!1,screen:!1,scroll:!1,scrollBy:!1,scrollTo:!1,sessionStorage:!1,setInterval:!1,setTimeout:!1,SharedWorker:!1,status:!1,top:!1,Uint16Array:!1,Uint32Array:!1,Uint8Array:!1,WebSocket:!1,window:!1,Worker:!1,XMLHttpRequest:!1,XMLSerializer:!1,XPathEvaluator:!1,XPathException:!1,XPathExpression:!1,XPathNamespace:!1,XPathNSResolver:!1,XPathResult:!1},mt={require:!1,respond:!1,getRow:!1,emit:!1,send:!1,start:!1,sum:!1,log:!1,exports:!1,module:!1,provides:!1},gt,yt={alert:!1,confirm:!1,console:!1,Debug:!1,opera:!1,prompt:!1},bt={dojo:!1,dijit:!1,dojox:!1,define:!1,require:!1},wt,Et=["closure","exception","global","label","outer","unused","var"],St,xt,Tt,Nt,Ct,kt,Lt={$:!1,jQuery:!1},At,Ot,Mt,_t,Dt={$:!1,$$:!1,Asset:!1,Browser:!1,Chain:!1,Class:!1,Color:!1,Cookie:!1,Core:!1,Document:!1,DomReady:!1,DOMEvent:!1,DOMReady:!1,Drag:!1,Element:!1,Elements:!1,Event:!1,Events:!1,Fx:!1,Group:!1,Hash:!1,HtmlTable:!1,Iframe:!1,IframeShim:!1,InputValidator:!1,instanceOf:!1,Keyboard:!1,Locale:!1,Mask:!1,MooTools:!1,Native:!1,Options:!1,OverText:!1,Request:!1,Scroller:!1,Slick:!1,Slider:!1,Sortables:!1,Spinner:!1,Swiff:!1,Tips:!1,Type:!1,typeOf:!1,URI:!1,Window:!1},Pt,Ht={__filename:!1,__dirname:!1,Buffer:!1,console:!1,exports:!0,GLOBAL:!1,global:!1,module:!1,process:!1,require:!1,setTimeout:!1,clearTimeout:!1,setInterval:!1,clearInterval:!1},Bt,jt,Ft,It,qt,Rt={$:!1,$$:!1,$A:!1,$F:!1,$H:!1,$R:!1,$break:!1,$continue:!1,$w:!1,Abstract:!1,Ajax:!1,Class:!1,Enumerable:!1,Element:!1,Event:!1,Field:!1,Form:!1,Hash:!1,Insertion:!1,ObjectRange:!1,PeriodicalExecuter:!1,Position:!1,Prototype:!1,Selector:!1,Template:!1,Toggle:!1,Try:!1,Autocompleter:!1,Builder:!1,Control:!1,Draggable:!1,Draggables:!1,Droppables:!1,Effect:!1,Sortable:!1,SortableObserver:!1,Sound:!1,Scriptaculous:!1},Ut,zt={defineClass:!1,deserialize:!1,gc:!1,help:!1,importPackage:!1,java:!1,load:!1,loadClass:!1,print:!1,quit:!1,readFile:!1,readUrl:!1,runCommand:!1,seal:!1,serialize:!1,spawn:!1,sync:!1,toint32:!1,version:!1},Wt,Xt,Vt={Array:!1,Boolean:!1,Date:!1,decodeURI:!1,decodeURIComponent:!1,encodeURI:!1,encodeURIComponent:!1,Error:!1,eval:!1,EvalError:!1,Function:!1,hasOwnProperty:!1,isFinite:!1,isNaN:!1,JSON:!1,Map:!1,Math:!1,NaN:!1,Number:!1,Object:!1,parseInt:!1,parseFloat:!1,RangeError:!1,ReferenceError:!1,RegExp:!1,Set:!1,String:!1,SyntaxError:!1,TypeError:!1,URIError:!1,WeakMap:!1},$t={escape:!1,unescape:!1},Jt,Kt={},Qt,Gt,Yt,Zt,en,tn,nn={importScripts:!0,postMessage:!0,self:!0},rn={ActiveXObject:!0,Enumerator:!0,GetObject:!0,ScriptEngine:!0,ScriptEngineBuildVersion:!0,ScriptEngineMajorVersion:!0,ScriptEngineMinorVersion:!0,VBArray:!0,WSH:!0,WScript:!0,XDomainRequest:!0},sn={YUI:!1,Y:!1,YUI_config:!1},on,un,an,fn,ln,cn,hn,pn,dn;(function(){on=/@cc|<\/?|script|\]\s*\]|<\s*!|&lt/i,un=/[\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/,an=/^\s*([(){}\[.,:;'"~\?\]#@]|==?=?|\/=(?!(\S*\/[gim]?))|\/(\*(jshint|jslint|members?|global)?|\/)?|\*[\/=]?|\+(?:=|\++)?|-(?:=|-+)?|%=?|&[&=]?|\|[|=]?|>>?>?=?|<([\/=!]|\!(\[|--)?|<=?)?|\^=?|\!=?=?|[a-zA-Z_$][a-zA-Z0-9_$]*|[0-9]+([xX][0-9a-fA-F]+|\.[0-9]*)?([eE][+\-]?[0-9]+)?)/,fn=/[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/,ln=/[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,cn=/\*\//,hn=/^([a-zA-Z_$][a-zA-Z0-9_$]*)$/,pn=/^(?:javascript|jscript|ecmascript|vbscript|mocha|livescript)\s*:/i,dn=/^\s*\/\*\s*falls\sthrough\s*\*\/\s*$/})(),typeof Array.isArray!="function"&&(Array.isArray=function(e){return Object.prototype.toString.apply(e)==="[object Array]"}),Array.prototype.forEach||(Array.prototype.forEach=function(e,t){var n=this.length;for(var r=0;r<n;r++)e.call(t||this,this[r],r,this)}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){if(this===null||this===undefined)throw new TypeError;var t=new Object(this),n=t.length>>>0;if(n===0)return-1;var r=0;arguments.length>0&&(r=Number(arguments[1]),r!=r?r=0:r!==0&&r!=Infinity&&r!=-Infinity&&(r=(r>0||-1)*Math.floor(Math.abs(r))));if(r>=n)return-1;var i=r>=0?r:Math.max(n-Math.abs(r),0);for(;i<n;i++)if(i in t&&t[i]===e)return i;return-1}),typeof Object.create!="function"&&(Object.create=function(t){return e.prototype=t,new e}),typeof Object.keys!="function"&&(Object.keys=function(e){var n=[],r;for(r in e)t(e,r)&&n.push(r);return n});var vn=function(){function e(){var e,t,n;return u>=At.length?!1:(r=1,a=At[u],u+=1,jt.smarttabs?(t=a.match(/(\/\/)? \t/),e=t&&!t[1]?0:-1):e=a.search(/ \t|\t [^\*]/),e>=0&&v("Mixed spaces and tabs.",u,e+1),a=a.replace(/\t/g,Qt),e=a.search(un),e>=0&&v("Unsafe character.",u,e),jt.maxlen&&jt.maxlen<a.length&&v("Line too long.",u,a.length),n=jt.trailing&&a.match(/^(.*?)\s+$/),n&&!/^\s+$/.test(a)&&v("Trailing whitespace.",u,n[1].length+1),!0)}function n(e,n){function s(e){if(!jt.proto&&e==="__proto__"){v("The '{a}' property is deprecated.",u,i,e);return}if(!jt.iterator&&e==="__iterator__"){v("'{a}' is only available in JavaScript 1.7.",u,i,e);return}var t=/^(_+.*|.*_+)$/.test(e);if(jt.nomen&&t&&e!=="_"){if(jt.node&&Gt.id!=="."&&/^(__dirname|__filename)$/.test(e))return;v("Unexpected {a} in '{b}'.",u,i,"dangling '_'",e);return}jt.camelcase&&e.replace(/^_+/,"").indexOf("_")>-1&&!e.match(/^[A-Z0-9_]*$/)&&v("Identifier '{a}' is not in camel case.",u,i,n)}var o,a;return e==="(color)"||e==="(range)"?a={type:e}:e==="(punctuator)"||e==="(identifier)"&&t(Kt,n)?a=Kt[n]||Kt["(error)"]:a=Kt[e],a=Object.create(a),(e==="(string)"||e==="(range)")&&!jt.scripturl&&pn.test(n)&&v("Script URL.",u,i),e==="(identifier)"&&(a.identifier=!0,s(n)),a.value=n,a.line=u,a.character=r,a.from=i,o=a.id,o!=="(endline)"&&(It=o&&("(,=:[!&|?{};".indexOf(o.charAt(o.length-1))>=0||o==="return"||o==="case")),a}var r,i,u,a;return{init:function(t){typeof t=="string"?At=t.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split("\n"):At=t,At[0]&&At[0].substr(0,2)==="#!"&&(At[0]=""),u=0,e(),i=1},range:function(e,t){var s,o="";i=r,a.charAt(0)!==e&&g("Expected '{a}' and instead saw '{b}'.",u,r,e,a.charAt(0));for(;;){a=a.slice(1),r+=1,s=a.charAt(0);switch(s){case"":g("Missing '{a}'.",u,r,s);break;case t:return a=a.slice(1),r+=1,n("(range)",o);case"\\":v("Unexpected '{a}'.",u,r,s)}o+=s}},token:function(){function t(e){var t=e.exec(a),n;if(t)return w=t[0].length,n=t[1],c=n.charAt(0),a=a.substr(w),i=r+w-n.length,r+=w,n}function f(t){function s(e){var t=parseInt(a.substr(f+1,e),16);f+=e,t>=32&&t<=126&&t!==34&&t!==92&&t!==39&&v("Unnecessary escapement.",u,r),r+=e,o=String.fromCharCode(t)}var o,f,l="",c=!1;kt&&t!=='"'&&v("Strings must use doublequote.",u,r),jt.quotmark&&(jt.quotmark==="single"&&t!=="'"?v("Strings must use singlequote.",u,r):jt.quotmark==="double"&&t!=='"'?v("Strings must use doublequote.",u,r):jt.quotmark===!0&&(Ut=Ut||t,Ut!==t&&v("Mixed double and single quotes.",u,r))),f=0;e:for(;;){while(f>=a.length){f=0;var h=u,p=i;if(!e()){g("Unclosed string.",h,p);break e}c?c=!1:v("Unclosed string.",h,p)}o=a.charAt(f);if(o===t)return r+=1,a=a.substr(f+1),n("(string)",l,t);if(o<" "){if(o==="\n"||o==="\r")break;v("Control character in string: {a}.",u,r+f,a.slice(0,f))}else if(o==="\\"){f+=1,r+=1,o=a.charAt(f),C=a.charAt(f+1);switch(o){case"\\":case'"':case"/":break;case"'":kt&&v("Avoid \\'.",u,r);break;case"b":o="\b";break;case"f":o="\f";break;case"n":o="\n";break;case"r":o="\r";break;case"t":o=" ";break;case"0":o="\0",C>=0&&C<=7&&Jt["use strict"]&&v("Octal literals are not allowed in strict mode.",u,r);break;case"u":s(4);break;case"v":kt&&v("Avoid \\v.",u,r),o=" ";break;case"x":kt&&v("Avoid \\x-.",u,r),s(2);break;case"":c=!0;if(jt.multistr){kt&&v("Avoid EOL escapement.",u,r),o="",r-=1;break}v("Bad escapement of EOL. Use option multistr if needed.",u,r);break;case"!":if(a.charAt(f-2)==="<")break;default:v("Bad escapement.",u,r)}}l+=o,r+=1,f+=1}}var l,c,p,d,m,y,b,w,E,S,x,T,N,C;for(;;){if(!a)return n(e()?"(endline)":"(end)","");x=t(an);if(!x){x="",c="";while(a&&a<"!")a=a.substr(1);a&&(g("Unexpected '{a}'.",u,r,a.substr(0,1)),a="")}else{if(s(c)||c==="_"||c==="$")return n("(identifier)",x);if(o(c))return isFinite(Number(x))||v("Bad number '{a}'.",u,r,x),s(a.substr(0,1))&&v("Missing space after '{a}'.",u,r,x),c==="0"&&(d=x.substr(1,1),o(d)?Gt.id!=="."&&v("Don't use extra leading zeros '{a}'.",u,r,x):kt&&(d==="x"||d==="X")&&v("Avoid 0x-. '{a}'.",u,r,x)),x.substr(x.length-1)==="."&&v("A trailing decimal point can be confused with a dot '{a}'.",u,r,x),n("(number)",x);switch(x){case'"':case"'":return f(x);case"//":a="",Gt.comment=!0;break;case"/*":for(;;){b=a.search(cn);if(b>=0)break;e()||g("Unclosed comment.",u,r)}a=a.substr(b+2),Gt.comment=!0;break;case"/*members":case"/*member":case"/*jshint":case"/*jslint":case"/*global":case"*/":return{value:x,type:"special",line:u,character:r,from:i};case"":break;case"/":a.charAt(0)==="="&&g("A regular expression literal can be confused with '/='.",u,i);if(It){m=0,p=0,w=0;for(;;){l=!0,c=a.charAt(w),w+=1;switch(c){case"":return g("Unclosed regular expression.",u,i),h("Stopping.",u,i);case"/":m>0&&v("{a} unterminated regular expression group(s).",u,i+w,m),c=a.substr(0,w-1),S={g:!0,i:!0,m:!0};while(S[a.charAt(w)]===!0)S[a.charAt(w)]=!1,w+=1;return r+=w,a=a.substr(w),S=a.charAt(0),(S==="/"||S==="*")&&g("Confusing regular expression.",u,i),n("(regexp)",c);case"\\":c=a.charAt(w),c<" "?v("Unexpected control character in regular expression.",u,i+w):c==="<"&&v("Unexpected escaped character '{a}' in regular expression.",u,i+w,c),w+=1;break;case"(":m+=1,l=!1;if(a.charAt(w)==="?"){w+=1;switch(a.charAt(w)){case":":case"=":case"!":w+=1;break;default:v("Expected '{a}' and instead saw '{b}'.",u,i+w,":",a.charAt(w))}}else p+=1;break;case"|":l=!1;break;case")":m===0?v("Unescaped '{a}'.",u,i+w,")"):m-=1;break;case" ":S=1;while(a.charAt(w)===" ")w+=1,S+=1;S>1&&v("Spaces are hard to count. Use {{a}}.",u,i+w,S);break;case"[":c=a.charAt(w),c==="^"&&(w+=1,a.charAt(w)==="]"&&g("Unescaped '{a}'.",u,i+w,"^")),c==="]"&&v("Empty class.",u,i+w-1),T=!1,N=!1;e:do{c=a.charAt(w),w+=1;switch(c){case"[":case"^":v("Unescaped '{a}'.",u,i+w,c),N?N=!1:T=!0;break;case"-":T&&!N?(T=!1,N=!0):N?N=!1:a.charAt(w)==="]"?N=!0:(jt.regexdash!==(w===2||w===3&&a.charAt(1)==="^")&&v("Unescaped '{a}'.",u,i+w-1,"-"),T=!0);break;case"]":N&&!jt.regexdash&&v("Unescaped '{a}'.",u,i+w-1,"-");break e;case"\\":c=a.charAt(w),c<" "?v("Unexpected control character in regular expression.",u,i+w):c==="<"&&v("Unexpected escaped character '{a}' in regular expression.",u,i+w,c),w+=1,/[wsd]/i.test(c)?(N&&(v("Unescaped '{a}'.",u,i+w,"-"),N=!1),T=!1):N?N=!1:T=!0;break;case"/":v("Unescaped '{a}'.",u,i+w-1,"/"),N?N=!1:T=!0;break;case"<":N?N=!1:T=!0;break;default:N?N=!1:T=!0}}while(c);break;case".":jt.regexp&&v("Insecure '{a}'.",u,i+w,c);break;case"]":case"?":case"{":case"}":case"+":case"*":v("Unescaped '{a}'.",u,i+w,c)}if(l)switch(a.charAt(w)){case"?":case"+":case"*":w+=1,a.charAt(w)==="?"&&(w+=1);break;case"{":w+=1,c=a.charAt(w);if(c<"0"||c>"9"){v("Expected a number and instead saw '{a}'.",u,i+w,c);break}w+=1,E=+c;for(;;){c=a.charAt(w);if(c<"0"||c>"9")break;w+=1,E=+c+E*10}y=E;if(c===","){w+=1,y=Infinity,c=a.charAt(w);if(c>="0"&&c<="9"){w+=1,y=+c;for(;;){c=a.charAt(w);if(c<"0"||c>"9")break;w+=1,y=+c+y*10}}}a.charAt(w)!=="}"?v("Expected '{a}' and instead saw '{b}'.",u,i+w,"}",c):w+=1,a.charAt(w)==="?"&&(w+=1),E>y&&v("'{a}' should not be greater than '{b}'.",u,i+w,E,y)}}return c=a.substr(0,w-1),r+=w,a=a.substr(w),n("(regexp)",c)}return n("(punctuator)",x);case"#":return n("(punctuator)",x);default:return n("(punctuator)",x)}}}}}}();F("(number)",function(){return this}),F("(string)",function(){return this}),Kt["(identifier)"]={type:"(identifier)",lbp:0,identifier:!0,nud:function(){var e=this.value,t=Wt[e],n;typeof t=="function"?t=undefined:typeof t=="boolean"&&(n=wt,wt=St[0],b(e,"var"),t=wt,wt=n);if(wt===t)switch(wt[e]){case"unused":wt[e]="var";break;case"unction":wt[e]="function",this["function"]=!0;break;case"function":this["function"]=!0;break;case"label":d("'{a}' is a statement label.",Gt,e)}else if(wt["(global)"])jt.undef&&typeof Ft[e]!="boolean"&&(ft!=="typeof"&&ft!=="delete"||Pt&&(Pt.value==="."||Pt.value==="["))&&p(wt,"'{a}' is not defined.",Gt,e),nt(Gt);else switch(wt[e]){case"closure":case"function":case"var":case"unused":d("'{a}' used out of scope.",Gt,e);break;case"label":d("'{a}' is a statement label.",Gt,e);break;case"outer":case"global":break;default:if(t===!0)wt[e]=!0;else if(t===null)d("'{a}' is not allowed.",Gt,e),nt(Gt);else if(typeof t!="object")jt.undef&&(ft!=="typeof"&&ft!=="delete"||Pt&&(Pt.value==="."||Pt.value==="["))&&p(wt,"'{a}' is not defined.",Gt,e),wt[e]=!0,nt(Gt);else switch(t[e]){case"function":case"unction":this["function"]=!0,t[e]="closure",wt[e]=t["(global)"]?"global":"outer";break;case"var":case"unused":t[e]="closure",wt[e]=t["(global)"]?"global":"outer";break;case"closure":wt[e]=t["(global)"]?"global":"outer";break;case"label":d("'{a}' is a statement label.",Gt,e)}}return this},led:function(){m("Expected an operator and instead saw '{a}'.",Pt,Pt.value)}},F("(regexp)",function(){return this}),D("(endline)"),D("(begin)"),D("(end)").reach=!0,D("</").reach=!0,D("<!"),D("<!--"),D("-->"),D("(error)").reach=!0,D("}").reach=!0,D(")"),D("]"),D('"').reach=!0,D("'").reach=!0,D(";"),D(":").reach=!0,D(","),D("#"),D("@"),I("else"),I("case").reach=!0,I("catch"),I("default").reach=!0,I("finally"),q("arguments",function(e){Jt["use strict"]&&wt["(global)"]&&d("Strict violation.",e)}),q("eval"),q("false"),q("Infinity"),q("null"),q("this",function(e){Jt["use strict"]&&!jt.validthis&&(wt["(statement)"]&&wt["(name)"].charAt(0)>"Z"||wt["(global)"])&&d("Possible strict violation.",e)}),q("true"),q("undefined"),W("=","assign",20),W("+=","assignadd",20),W("-=","assignsub",20),W("*=","assignmult",20),W("/=","assigndiv",20).nud=function(){m("A regular expression literal can be confused with '/='.")},W("%=","assignmod",20),V("&=","assignbitand",20),V("|=","assignbitor",20),V("^=","assignbitxor",20),V("<<=","assignshiftleft",20),V(">>=","assignshiftright",20),V(">>>=","assignshiftrightunsigned",20),R("?",function(e,t){return t.left=e,t.right=x(10),S(":"),t["else"]=x(10),t},30),R("||","or",40),R("&&","and",50),X("|","bitor",70),X("^","bitxor",80),X("&","bitand",90),U("==",function(e,t){var n=jt.eqnull&&(e.value==="null"||t.value==="null");return!n&&jt.eqeqeq?d("Expected '{a}' and instead saw '{b}'.",this,"===","=="):z(e)?d("Use '{a}' to compare with '{b}'.",this,"===",e.value):z(t)&&d("Use '{a}' to compare with '{b}'.",this,"===",t.value),this}),U("==="),U("!=",function(e,t){var n=jt.eqnull&&(e.value==="null"||t.value==="null");return!n&&jt.eqeqeq?d("Expected '{a}' and instead saw '{b}'.",this,"!==","!="):z(e)?d("Use '{a}' to compare with '{b}'.",this,"!==",e.value):z(t)&&d("Use '{a}' to compare with '{b}'.",this,"!==",t.value),this}),U("!=="),U("<"),U(">"),U("<="),U(">="),X("<<","shiftleft",120),X(">>","shiftright",120),X(">>>","shiftrightunsigned",120),R("in","in",120),R("instanceof","instanceof",120),R("+",function(e,t){var n=x(130);return e&&n&&e.id==="(string)"&&n.id==="(string)"?(e.value+=n.value,e.character=n.character,!jt.scripturl&&pn.test(e.value)&&d("JavaScript URL.",e),e):(t.left=e,t.right=n,t)},130),j("+","num"),j("+++",function(){return d("Confusing pluses."),this.right=x(150),this.arity="unary",this}),R("+++",function(e){return d("Confusing pluses."),this.left=e,this.right=x(130),this},130),R("-","sub",130),j("-","neg"),j("---",function(){return d("Confusing minuses."),this.right=x(150),this.arity="unary",this}),R("---",function(e){return d("Confusing minuses."),this.left=e,this.right=x(130),this},130),R("*","mult",140),R("/","div",140),R("%","mod",140),$("++","postinc"),j("++","preinc"),Kt["++"].exps=!0,$("--","postdec"),j("--","predec"),Kt["--"].exps=!0,j("delete",function(){var e=x(0);return(!e||e.id!=="."&&e.id!=="[")&&d("Variables should not be deleted."),this.first=e,this}).exps=!0,j("~",function(){return jt.bitwise&&d("Unexpected '{a}'.",this,"~"),x(150),this}),j("!",function(){return this.right=x(150),this.arity="unary",lt[this.right.id]===!0&&d("Confusing use of '{a}'.",this,"!"),this}),j("typeof","typeof"),j("new",function(){var e=x(155),n;if(e&&e.id!=="function")if(e.identifier){e["new"]=!0;switch(e.value){case"Number":case"String":case"Boolean":case"Math":case"JSON":d("Do not use {a} as a constructor.",qt,e.value);break;case"Function":jt.evil||d("The Function constructor is eval.");break;case"Date":case"RegExp":break;default:e.id!=="function"&&(n=e.value.substr(0,1),jt.newcap&&(n<"A"||n>"Z")&&!t(xt,e.value)&&d("A constructor name should start with an uppercase letter.",Gt))}}else e.id!=="."&&e.id!=="["&&e.id!=="("&&d("Bad constructor.",Gt);else jt.supernew||d("Weird construction. Delete 'new'.",this);return T(Gt,Pt),Pt.id!=="("&&!jt.supernew&&d("Missing '()' invoking a constructor.",Gt,Gt.value),this.first=e,this}),Kt["new"].exps=!0,j("void").exps=!0,R(".",function(e,t){T(qt,Gt),N();var n=K();return typeof n=="string"&&tt(n),t.left=e,t.right=n,!e||e.value!=="arguments"||n!=="callee"&&n!=="caller"?!jt.evil&&e&&e.value==="document"&&(n==="write"||n==="writeln")&&d("document.write can be a form of eval.",e):jt.noarg?d("Avoid arguments.{a}.",e,n):Jt["use strict"]&&m("Strict violation."),!jt.evil&&(n==="eval"||n==="execScript")&&d("eval is evil."),t},160,!0),R("(",function(e,t){qt.id!=="}"&&qt.id!==")"&&N(qt,Gt),C(),jt.immed&&!e.immed&&e.id==="function"&&d("Wrap an immediate function invocation in parentheses to assist the reader in understanding that the expression is the result of a function, and not the function itself.");var n=0,r=[];e&&e.type==="(identifier)"&&e.value.match(/^[A-Z]([A-Z0-9_$]*[a-z][A-Za-z0-9_$]*)?$/)&&"Number String Boolean Date Object".indexOf(e.value)===-1&&(e.value==="Math"?d("Math is not a function.",e):jt.newcap&&d("Missing 'new' prefix when invoking a constructor.",e));if(Pt.id!==")")for(;;){r[r.length]=x(10),n+=1;if(Pt.id!==",")break;M()}return S(")"),C(qt,Gt),typeof e=="object"&&(e.value==="parseInt"&&n===1&&d("Missing radix parameter.",Gt),jt.evil||(e.value==="eval"||e.value==="Function"||e.value==="execScript"?(d("eval is evil.",e),r[0]&&[0].id==="(string)"&&y(e,r[0].value)):!r[0]||r[0].id!=="(string)"||e.value!=="setTimeout"&&e.value!=="setInterval"?r[0]&&r[0].id==="(string)"&&e.value==="."&&e.left.value==="window"&&(e.right==="setTimeout"||e.right==="setInterval")&&(d("Implied eval is evil. Pass a function instead of a string.",e),y(e,r[0].value)):(d("Implied eval is evil. Pass a function instead of a string.",e),y(e,r[0].value))),!e.identifier&&e.id!=="."&&e.id!=="["&&e.id!=="("&&e.id!=="&&"&&e.id!=="||"&&e.id!=="?"&&d("Bad invocation.",e)),t.left=e,t},155,!0).exps=!0,j("(",function(){C(),Pt.id==="function"&&(Pt.immed=!0);var e=x(0);return S(")",this),C(qt,Gt),jt.immed&&e.id==="function"&&Pt.id!=="("&&(Pt.id!=="."||E().value!=="call"&&E().value!=="apply")&&d("Do not wrap function literals in parens unless they are to be immediately invoked.",this),e}),R("[",function(e,t){N(qt,Gt),C();var n=x(0),r;return n&&n.type==="(string)"&&(!jt.evil&&(n.value==="eval"||n.value==="execScript")&&d("eval is evil.",t),tt(n.value),!jt.sub&&hn.test(n.value)&&(r=Kt[n.value],(!r||!r.reserved)&&d("['{a}'] is better written in dot notation.",qt,n.value))),S("]",t),C(qt,Gt),t.left=e,t.right=n,t},160,!0),j("[",function(){var e=Gt.line!==Pt.line;this.first=[],e&&(Ct+=jt.indent,Pt.from===Ct+jt.indent&&(Ct+=jt.indent));while(Pt.id!=="(end)"){while(Pt.id===",")jt.es5||d("Extra comma."),S(",");if(Pt.id==="]")break;e&&Gt.line!==Pt.line&&A(),this.first.push(x(10));if(Pt.id!==",")break;M();if(Pt.id==="]"&&!jt.es5){d("Extra comma.",Gt);break}}return e&&(Ct-=jt.indent,A()),S("]",this),this},160),function(e){e.nud=function(){function e(e,n){f[e]&&t(f,e)?d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].basic=!0,f[e].basicToken=n}function n(e,n){f[e]&&t(f,e)?(f[e].basic||f[e].setter)&&d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].setter=!0,f[e].setterToken=n}function r(e){f[e]&&t(f,e)?(f[e].basic||f[e].getter)&&d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].getter=!0,f[e].getterToken=Gt}var i,s,o,u,a,f={};i=Gt.line!==Pt.line,i&&(Ct+=jt.indent,Pt.from===Ct+jt.indent&&(Ct+=jt.indent));for(;;){if(Pt.id==="}")break;i&&A();if(Pt.value==="get"&&E().id!==":")S("get"),jt.es5||m("get/set are ES5 features."),o=rt(),o||m("Missing property name."),r(o),a=Pt,T(Gt,Pt),s=st(),u=s["(params)"],u&&d("Unexpected parameter '{a}' in get {b} function.",a,u[0],o),T(Gt,Pt);else if(Pt.value==="set"&&E().id!==":")S("set"),jt.es5||m("get/set are ES5 features."),o=rt(),o||m("Missing property name."),n(o,Pt),a=Pt,T(Gt,Pt),s=st(),u=s["(params)"],(!u||u.length!==1)&&d("Expected a single parameter in set {a} function.",a,o);else{o=rt(),e(o,Pt);if(typeof o!="string")break;S(":"),k(Gt,Pt),x(10)}tt(o);if(Pt.id!==",")break;M(),Pt.id===","?d("Extra comma.",Gt):Pt.id==="}"&&!jt.es5&&d("Extra comma.",Gt)}i&&(Ct-=jt.indent,A()),S("}",this);if(jt.es5)for(var l in f)t(f,l)&&f[l].setter&&!f[l].getter&&d("Setter is defined without getter.",f[l].setterToken);return this},e.fud=function(){m("Expected to see a statement and instead saw a block.",Gt)}}(D("{")),en=function(){var e=P("const",function(e){var t,n,r;this.first=[];for(;;){k(Gt,Pt),t=K(),wt[t]==="const"&&d("const '"+t+"' has already been declared"),wt["(global)"]&&Ft[t]===!1&&d("Redefinition of '{a}'.",Gt,t),b(t,"const");if(e)break;n=Gt,this.first.push(Gt),Pt.id!=="="&&d("const '{a}' is initialized to 'undefined'.",Gt,t),Pt.id==="="&&(k(Gt,Pt),S("="),k(Gt,Pt),Pt.id==="undefined"&&d("It is not necessary to initialize '{a}' to 'undefined'.",Gt,t),E(0).id==="="&&Pt.identifier&&m("Constant {a} was not declared correctly.",Pt,Pt.value),r=x(0),n.first=r);if(Pt.id!==",")break;M()}return this});e.exps=!0};var mn=P("var",function(e){var t,n,r;wt["(onevar)"]&&jt.onevar?d("Too many var statements."):wt["(global)"]||(wt["(onevar)"]=!0),this.first=[];for(;;){k(Gt,Pt),t=K(),jt.esnext&&wt[t]==="const"&&d("const '"+t+"' has already been declared"),wt["(global)"]&&Ft[t]===!1&&d("Redefinition of '{a}'.",Gt,t),b(t,"unused",Gt);if(e)break;n=Gt,this.first.push(Gt),Pt.id==="="&&(k(Gt,Pt),S("="),k(Gt,Pt),Pt.id==="undefined"&&d("It is not necessary to initialize '{a}' to 'undefined'.",Gt,t),E(0).id==="="&&Pt.identifier&&m("Variable {a} was not declared correctly.",Pt,Pt.value),r=x(0),n.first=r);if(Pt.id!==",")break;M()}return this});mn.exps=!0,H("function",function(){Nt&&d("Function declarations should not be placed in blocks. Use a function expression or move the statement to the top of the outer function.",Gt);var e=K();return jt.esnext&&wt[e]==="const"&&d("const '"+e+"' has already been declared"),T(Gt,Pt),b(e,"unction",Gt),st(e,{statement:!0}),Pt.id==="("&&Pt.line===Gt.line&&m("Function declarations are not invocable. Wrap the whole function invocation in parens."),this}),j("function",function(){var e=J();return e?T(Gt,Pt):k(Gt,Pt),st(e),!jt.loopfunc&&wt["(loopage)"]&&d("Don't make functions within a loop."),this}),H("if",function(){var e=Pt;return ut(),S("("),k(this,e),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),et(!0,!0),Pt.id==="else"&&(k(Gt,Pt),S("else"),Pt.id==="if"||Pt.id==="switch"?G(!0):et(!0,!0)),this}),H("try",function(){function e(){var e=Wt,t;S("catch"),k(Gt,Pt),S("("),Wt=Object.create(e),t=Pt.value,Pt.type!=="(identifier)"&&(t=null,d("Expected an identifier and instead saw '{a}'.",Pt,t)),S(),S(")"),wt={"(name)":"(catch)","(line)":Pt.line,"(character)":Pt.character,"(context)":wt,"(breakage)":wt["(breakage)"],"(loopage)":wt["(loopage)"],"(scope)":Wt,"(statement)":!1,"(metrics)":ot(Pt),"(catch)":!0,"(tokens)":{}},t&&b(t,"exception"),Gt.funct=wt,St.push(wt),et(!1),Wt=e,wt["(last)"]=Gt.line,wt["(lastcharacter)"]=Gt.character,wt=wt["(context)"]}var t;et(!1),Pt.id==="catch"&&(ut(),e(),t=!0);if(Pt.id==="finally"){S("finally"),et(!1);return}return t||m("Expected '{a}' and instead saw '{b}'.",Pt,"catch",Pt.value),this}),H("while",function(){var e=Pt;return wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),S("("),k(this,e),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),et(!0,!0),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}).labelled=!0,H("with",function(){var e=Pt;return Jt["use strict"]?m("'with' is not allowed in strict mode.",Gt):jt.withstmt||d("Don't use 'with'.",Gt),S("("),k(this,e),C(),x(0),S(")",e),C(qt,Gt),et(!0,!0),this}),H("switch",function(){var e=Pt,t=!1;wt["(breakage)"]+=1,S("("),k(this,e),C(),this.condition=x(20),S(")",e),C(qt,Gt),k(Gt,Pt),e=Pt,S("{"),k(Gt,Pt),Ct+=jt.indent,this.cases=[];for(;;)switch(Pt.id){case"case":switch(wt["(verb)"]){case"break":case"case":case"continue":case"return":case"switch":case"throw":break;default:dn.test(At[Pt.line-2])||d("Expected a 'break' statement before 'case'.",Gt)}A(-jt.indent),S("case"),this.cases.push(x(20)),ut(),t=!0,S(":"),wt["(verb)"]="case";break;case"default":switch(wt["(verb)"]){case"break":case"continue":case"return":case"throw":break;default:dn.test(At[Pt.line-2])||d("Expected a 'break' statement before 'default'.",Gt)}A(-jt.indent),S("default"),t=!0,S(":");break;case"}":Ct-=jt.indent,A(),S("}",e);if(this.cases.length===1||this.condition.id==="true"||this.condition.id==="false")jt.onecase||d("This 'switch' should be an 'if'.",this);wt["(breakage)"]-=1,wt["(verb)"]=undefined;return;case"(end)":m("Missing '{a}'.",Pt,"}");return;default:if(t)switch(Gt.id){case",":m("Each value should have its own case label.");return;case":":t=!1,Y();break;default:m("Missing ':' on a case clause.",Gt);return}else{if(Gt.id!==":"){m("Expected '{a}' and instead saw '{b}'.",Pt,"case",Pt.value);return}S(":"),m("Unexpected '{a}'.",Gt,":"),Y()}}}).labelled=!0,P("debugger",function(){return jt.debug||d("All 'debugger' statements should be removed."),this}).exps=!0,function(){var e=P("do",function(){wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),this.first=et(!0),S("while");var e=Pt;return k(Gt,e),S("("),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this});e.labelled=!0,e.exps=!0}(),H("for",function(){var e,t=Pt;wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),S("("),k(this,t),C();if(E(Pt.id==="var"?1:0).id==="in"){if(Pt.id==="var")S("var"),mn.fud.call(mn,!0);else{switch(wt[Pt.value]){case"unused":wt[Pt.value]="var";break;case"var":break;default:d("Bad for in variable '{a}'.",Pt,Pt.value)}S()}return S("in"),x(20),S(")",t),e=et(!0,!0),jt.forin&&e&&(e.length>1||typeof e[0]!="object"||e[0].value!=="if")&&d("The body of a for in should be wrapped in an if statement to filter unwanted properties from the prototype.",this),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}if(Pt.id!==";")if(Pt.id==="var")S("var"),mn.fud.call(mn);else for(;;){x(0,"for");if(Pt.id!==",")break;M()}O(Gt),S(";"),Pt.id!==";"&&(x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20))),O(Gt),S(";"),Pt.id===";"&&m("Expected '{a}' and instead saw '{b}'.",Pt,")",";");if(Pt.id!==")")for(;;){x(0,"for");if(Pt.id!==",")break;M()}return S(")",t),C(qt,Gt),et(!0,!0),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}).labelled=!0,P("break",function(){var e=Pt.value;return wt["(breakage)"]===0&&d("Unexpected '{a}'.",Pt,this.value),jt.asi||O(this),Pt.id!==";"&&Gt.line===Pt.line&&(wt[e]!=="label"?d("'{a}' is not a statement label.",Pt,e):Wt[e]!==wt&&d("'{a}' is out of scope.",Pt,e),this.first=Pt,S()),Q("break"),this}).exps=!0,P("continue",function(){var e=Pt.value;return wt["(breakage)"]===0&&d("Unexpected '{a}'.",Pt,this.value),jt.asi||O(this),Pt.id!==";"?Gt.line===Pt.line&&(wt[e]!=="label"?d("'{a}' is not a statement label.",Pt,e):Wt[e]!==wt&&d("'{a}' is out of scope.",Pt,e),this.first=Pt,S()):wt["(loopage)"]||d("Unexpected '{a}'.",Pt,this.value),Q("continue"),this}).exps=!0,P("return",function(){return this.line===Pt.line?(Pt.id==="(regexp)"&&d("Wrap the /regexp/ literal in parens to disambiguate the slash operator."),Pt.id!==";"&&!Pt.reach&&(k(Gt,Pt),E().value==="="&&!jt.boss&&v("Did you mean to return a conditional instead of an assignment?",Gt.line,Gt.character+1),this.first=x(0))):jt.asi||O(this),Q("return"),this}).exps=!0,P("throw",function(){return O(this),k(Gt,Pt),this.first=x(20),Q("throw"),this}).exps=!0,I("class"),I("const"),I("enum"),I("export"),I("extends"),I("import"),I("super"),I("let"),I("yield"),I("implements"),I("interface"),I("package"),I("private"),I("protected"),I("public"),I("static");var gn=function(e,s,o){var u,a,l,h,p,m={};s&&s.scope?r.scope=s.scope:(r.errors=[],r.undefs=[],r.internals=[],r.blacklist={},r.scope="(main)"),Ft=Object.create(Vt),gt=Object.create(null),f(Ft,o||{});if(s){u=s.predef,u&&(!Array.isArray(u)&&typeof u=="object"&&(u=Object.keys(u)),u.forEach(function(e){var t;e[0]==="-"?(t=e.slice(1),r.blacklist[t]=t):Ft[e]=!0})),p=Object.keys(s);for(h=0;h<p.length;h++)m[p[h]]=s[p[h]],p[h]==="newcap"&&s[p[h]]===!1&&(m["(explicitNewcap)"]=!0),p[h]==="indent"&&(m.white=!0)}jt=m,jt.indent=jt.indent||4,jt.maxerr=jt.maxerr||50,Qt="";for(a=0;a<jt.indent;a+=1)Qt+=" ";Ct=1,xt=Object.create(Ft),Wt=xt,wt={"(global)":!0,"(name)":"(global)","(scope)":Wt,"(breakage)":0,"(loopage)":0,"(tokens)":{},"(metrics)":ot(Pt)},St=[wt],Zt=[],Xt=null,Mt={},_t=null,Tt={},Nt=!1,Ot=[],kt=!1,tn=0,At=[],Yt=[];if(!i(e)&&!Array.isArray(e))return g("Input is neither a string nor an array of strings.",0),!1;if(i(e)&&/^\s*$/g.test(e))return g("Input is an empty string.",0),!1;if(e.length===0)return g("Input is an empty array.",0),!1;vn.init(e),It=!0,Jt={},qt=Gt=Pt=Kt["(begin)"];for(var y in s)t(s,y)&&n(y,Gt);c(),f(Ft,o||{}),M.first=!0,Ut=undefined;try{S();switch(Pt.id){case"{":case"[":jt.laxbreak=!0,kt=!0,at();break;default:Z(),Jt["use strict"]&&!jt.globalstrict&&d('Use the function form of "use strict".',qt),Y()}S(Pt&&Pt.value!=="."?"(end)":undefined);var b=function(e,t){do{if(typeof t[e]=="string")return t[e]==="unused"?t[e]="var":t[e]==="unction"&&(t[e]="closure"),!0;t=t["(context)"]}while(t);return!1},w=function(e,t){if(!Tt[e])return;var n=[];for(var r=0;r<Tt[e].length;r+=1)Tt[e][r]!==t&&n.push(Tt[e][r]);n.length===0?delete Tt[e]:Tt[e]=n},E=function(e,t){var n=t.line,r=t.character;jt.unused&&v("'{a}' is defined but never used.",n,r,e),Yt.push({name:e,line:n,character:r})},x=function(e,t){var n=e[t],r=e["(tokens)"][t];if(t.charAt(0)==="(")return;if(n!=="unused"&&n!=="unction")return;if(e["(params)"]&&e["(params)"].indexOf(t)!==-1)return;E(t,r)};for(a=0;a<r.undefs.length;a+=1)l=r.undefs[a].slice(0),b(l[2].value,l[0])?w(l[2].value,l[2].line):d.apply(d,l.slice(1));St.forEach(function(e){for(var n in e)t(e,n)&&x(e,n);if(!e["(params)"])return;var r=e["(params)"].slice(),i=r.pop(),s;while(i){s=e[i];if(i==="undefined")return;if(s!=="unused"&&s!=="unction")return;E(i,e["(tokens)"][i]),i=r.pop()}});for(var T in gt)t(gt,T)&&!t(xt,T)&&E(T,gt[T])}catch(N){if(N){var C=Pt||{};r.errors.push({raw:N.raw,reason:N.message,line:N.line||C.line,character:N.character||C.from},null)}}if(r.scope==="(main)"){s=s||{};for(a=0;a<r.internals.length;a+=1)l=r.internals[a],s.scope=l.elem,gn(l.value,s,o)}return r.errors.length===0};return gn.data=function(){var e={functions:[],options:jt},n=[],r=[],i,s,o,u,a,f;gn.errors.length&&(e.errors=gn.errors),kt&&(e.json=!0);for(a in Tt)t(Tt,a)&&n.push({name:a,line:Tt[a]});n.length>0&&(e.implieds=n),Zt.length>0&&(e.urls=Zt),f=Object.keys(Wt),f.length>0&&(e.globals=f);for(o=1;o<St.length;o+=1){s=St[o],i={};for(u=0;u<Et.length;u+=1)i[Et[u]]=[];for(u=0;u<Et.length;u+=1)i[Et[u]].length===0&&delete i[Et[u]];i.name=s["(name)"],i.param=s["(params)"],i.line=s["(line)"],i.character=s["(character)"],i.last=s["(last)"],i.lastcharacter=s["(lastcharacter)"],e.functions.push(i)}Yt.length>0&&(e.unused=Yt),r=[];for(a in Mt)if(typeof Mt[a]=="number"){e.member=Mt;break}return e},gn.jshint=gn,gn}();typeof t=="object"&&t&&(t.JSHINT=r)})
4037^
4038
4039./lib/viewers/text/worker-javascript.js:1: WARNING - Suspicious code. The result of the 'eq' operator is not being used.
4040"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/javascript_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/javascript/jshint"],function(require,exports,module){function startRegex(e){return RegExp("^("+e.join("|")+")")}var oop=require("../lib/oop"),Mirror=require("../worker/mirror").Mirror,lint=require("./javascript/jshint").JSHINT,disabledWarningsRe=startRegex(["Bad for in variable '(.+)'.",'Missing "use strict"']),errorsRe=startRegex(["Unexpected","Expected ","Confusing (plus|minus)","\\{a\\} unterminated regular expression","Unclosed ","Unmatched ","Unbegun comment","Bad invocation","Missing space after","Missing operator at"]),infoRe=startRegex(["Expected an assignment","Bad escapement of EOL","Unexpected comma","Unexpected space","Missing radix parameter.","A leading decimal point can","\\['{a}'\\] is better written in dot notation.","'{a}' used out of scope"]),JavaScriptWorker=exports.JavaScriptWorker=function(e){Mirror.call(this,e),this.setTimeout(500),this.setOptions()};oop.inherits(JavaScriptWorker,Mirror),function(){this.setOptions=function(e){this.options=e||{es5:!0,esnext:!0,devel:!0,browser:!0,node:!0,laxcomma:!0,laxbreak:!0,lastsemic:!0,onevar:!1,passfail:!1,maxerr:100,expr:!0,multistr:!0,globalstrict:!0},this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.changeOptions=function(e){oop.mixin(this.options,e),this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.isValidJS=function(str){try{eval("throw 0;"+str)}catch(e){if(e===0)return!0}return!1},this.onUpdate=function(){var e=this.doc.getValue();e=e.replace(/^#!.*\n/,"\n");if(!e){this.sender.emit("jslint",[]);return}var t=[],n=this.isValidJS(e)?"warning":"error";lint(e,this.options);var r=lint.errors,i=!1;for(var s=0;s<r.length;s++){var o=r[s];if(!o)continue;var u=o.raw,a="warning";if(u=="Missing semicolon."){var f=o.evidence.substr(o.character);f=f.charAt(f.search(/\S/)),n=="error"&&f&&/[\w\d{(['"]/.test(f)?(o.reason='Missing ";" before statement',a="error"):a="info"}else{if(disabledWarningsRe.test(u))continue;infoRe.test(u)?a="info":errorsRe.test(u)?(i=!0,a=n):u=="'{a}' is not defined."?a="warning":u=="'{a}' is defined but never used."&&(a="info")}t.push({row:o.line-1,column:o.character-1,text:o.reason,type:a,raw:u}),i}this.sender.emit("jslint",t)}}.call(JavaScriptWorker.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/javascript/jshint",["require","exports","module"],function(e,t,n){var r=function(){function e(){}function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function n(e,t){ht[e]===undefined&&ct[e]===undefined&&d("Bad option: '"+e+"'.",t)}function i(e){return Object.prototype.toString.call(e)==="[object String]"}function s(e){return e>="a"&&e<="z?"||e>="A"&&e<="Z?"}function o(e){return e>="0"&&e<="9"}function u(e,t){return e?!e.identifier||e.value!==t?!1:!0:!1}function a(e,t){return e.replace(/\{([^{}]*)\}/g,function(e,n){var r=t[n];return typeof r=="string"||typeof r=="number"?r:e})}function f(e,n){var i;for(i in n)t(n,i)&&!t(r.blacklist,i)&&(e[i]=n[i])}function l(){Object.keys(r.blacklist).forEach(function(e){delete Ft[e]})}function c(){jt.couch&&f(Ft,mt),jt.rhino&&f(Ft,zt),jt.prototypejs&&f(Ft,Rt),jt.node&&(f(Ft,Ht),jt.globalstrict=!0),jt.devel&&f(Ft,yt),jt.dojo&&f(Ft,bt),jt.browser&&f(Ft,vt),jt.nonstandard&&f(Ft,$t),jt.jquery&&f(Ft,Lt),jt.mootools&&f(Ft,Dt),jt.worker&&f(Ft,nn),jt.wsh&&f(Ft,rn),jt.esnext&&en(),jt.globalstrict&&jt.strict!==!1&&(jt.strict=!0),jt.yui&&f(Ft,sn)}function h(e,t,n){var r=Math.floor(t/At.length*100);throw{name:"JSHintError",line:t,character:n,message:e+" ("+r+"% scanned).",raw:e}}function p(e,t,n,i){return r.undefs.push([e,t,n,i])}function d(e,t,n,i,s,o){var u,f,l;return t=t||Pt,t.id==="(end)"&&(t=Gt),f=t.line||0,u=t.from||0,l={id:"(error)",raw:e,evidence:At[f-1]||"",line:f,character:u,scope:r.scope,a:n,b:i,c:s,d:o},l.reason=a(e,l),r.errors.push(l),jt.passfail&&h("Stopping. ",f,u),tn+=1,tn>=jt.maxerr&&h("Too many errors.",f,u),l}function v(e,t,n,r,i,s,o){return d(e,{line:t,from:n},r,i,s,o)}function m(e,t,n,r,i,s){d(e,t,n,r,i,s)}function g(e,t,n,r,i,s,o){return m(e,{line:t,from:n},r,i,s,o)}function y(e,t){var n;return n={id:"(internal)",elem:e,value:t},r.internals.push(n),n}function b(e,n,r){e==="hasOwnProperty"&&d("'hasOwnProperty' is a really bad name."),n==="exception"&&t(wt["(context)"],e)&&wt[e]!==!0&&!jt.node&&d("Value of '{a}' may be overwritten in IE.",Pt,e),t(wt,e)&&!wt["(global)"]&&(wt[e]===!0?jt.latedef&&d("'{a}' was used before it was defined.",Pt,e):!jt.shadow&&n!=="exception"&&d("'{a}' is already defined.",Pt,e)),wt[e]=n,r&&(wt["(tokens)"][e]=r),wt["(global)"]?(xt[e]=wt,t(Tt,e)&&(jt.latedef&&d("'{a}' was used before it was defined.",Pt,e),delete Tt[e])):Wt[e]=wt}function w(){var e=Pt,i=e.value,s=jt.quotmark,o={},u,a,h,p,d,v,g;switch(i){case"*/":m("Unbegun comment.");break;case"/*members":case"/*member":i="/*members",_t||(_t={}),a=_t,jt.quotmark=!1;break;case"/*jshint":case"/*jslint":a=jt,h=ct;break;case"/*global":a=o;break;default:m("What?")}p=vn.token();for(;;){g=!1;var y;for(;;){if(p.type==="special"&&p.value==="*/"){y=!0;break}if(p.id!=="(endline)"&&p.id!==",")break;p=vn.token()}if(y)break;i==="/*global"&&p.value==="-"&&(g=!0,p=vn.token()),p.type!=="(string)"&&p.type!=="(identifier)"&&i!=="/*members"&&m("Bad option.",p),v=vn.token();if(v.id===":"){v=vn.token(),a===_t&&m("Expected '{a}' and instead saw '{b}'.",p,"*/",":"),i==="/*jshint"&&n(p.value,p);var b=["maxstatements","maxparams","maxdepth","maxcomplexity","maxerr","maxlen","indent"];if(b.indexOf(p.value)>-1&&(i==="/*jshint"||i==="/*jslint"))u=+v.value,(typeof u!="number"||!isFinite(u)||u<=0||Math.floor(u)!==u)&&m("Expected a small integer and instead saw '{a}'.",v,v.value),p.value==="indent"&&(a.white=!0),a[p.value]=u;else if(p.value==="validthis")wt["(global)"]?m("Option 'validthis' can't be used in a global scope."):v.value==="true"||v.value==="false"?a[p.value]=v.value==="true":m("Bad option value.",v);else if(p.value==="quotmark"&&i==="/*jshint")switch(v.value){case"true":a.quotmark=!0;break;case"false":a.quotmark=!1;break;case"double":case"single":a.quotmark=v.value;break;default:m("Bad option value.",v)}else v.value==="true"||v.value==="false"?(i==="/*jslint"?(d=dt[p.value]||p.value,a[d]=v.value==="true",pt[d]!==undefined&&(a[d]=!a[d])):a[p.value]=v.value==="true",p.value==="newcap"&&(a["(explicitNewcap)"]=!0)):m("Bad option value.",v);p=vn.token()}else(i==="/*jshint"||i==="/*jslint")&&m("Missing option value.",p),a[p.value]=!1,i==="/*global"&&g===!0&&(r.blacklist[p.value]=p.value,l()),p=v}i==="/*members"&&(jt.quotmark=s),f(Ft,o);for(var w in o)t(o,w)&&(gt[w]=e);h&&c()}function E(e){var t=e||0,n=0,r;while(n<=t)r=Ot[n],r||(r=Ot[n]=vn.token()),n+=1;return r}function S(e,t){switch(Gt.id){case"(number)":Pt.id==="."&&d("A dot following a number can be confused with a decimal point.",Gt);break;case"-":(Pt.id==="-"||Pt.id==="--")&&d("Confusing minusses.");break;case"+":(Pt.id==="+"||Pt.id==="++")&&d("Confusing plusses.")}if(Gt.type==="(string)"||Gt.identifier)ft=Gt.value;e&&Pt.id!==e&&(t?Pt.id==="(end)"?d("Unmatched '{a}'.",t,t.id):d("Expected '{a}' to match '{b}' from line {c} and instead saw '{d}'.",Pt,e,t.id,t.line,Pt.value):(Pt.type!=="(identifier)"||Pt.value!==e)&&d("Expected '{a}' and instead saw '{b}'.",Pt,e,Pt.value)),qt=Gt,Gt=Pt;for(;;){Pt=Ot.shift()||vn.token();if(Pt.id==="(end)"||Pt.id==="(error)")return;if(Pt.type==="special")w();else if(Pt.id!=="(endline)")break}}function x(e,t){var n,r=!1,i=!1;Pt.id==="(end)"&&m("Unexpected early end of program.",Gt),S(),t&&(ft="anonymous",wt["(verb)"]=Gt.value);if(t===!0&&Gt.fud)n=Gt.fud();else{if(Gt.nud)n=Gt.nud();else{if(Pt.type==="(number)"&&Gt.id===".")return d("A leading decimal point can be confused with a dot: '.{a}'.",Gt,Pt.value),S(),Gt;m("Expected an identifier and instead saw '{a}'.",Gt,Gt.id)}while(e<Pt.lbp)r=Gt.value==="Array",i=Gt.value==="Object",n&&(n.value||n.first&&n.first.value)&&(n.value!=="new"||n.first&&n.first.value&&n.first.value===".")&&(r=!1,n.value!==Gt.value&&(i=!1)),S(),r&&Gt.id==="("&&Pt.id===")"&&d("Use the array literal notation [].",Gt),i&&Gt.id==="("&&Pt.id===")"&&d("Use the object literal notation {}.",Gt),Gt.led?n=Gt.led(n):m("Expected an operator and instead saw '{a}'.",Gt,Gt.id)}return n}function T(e,t){e=e||Gt,t=t||Pt,jt.white&&e.character!==t.from&&e.line===t.line&&(e.from+=e.character-e.from,d("Unexpected space after '{a}'.",e,e.value))}function N(e,t){e=e||Gt,t=t||Pt,jt.white&&(e.character!==t.from||e.line!==t.line)&&d("Unexpected space before '{a}'.",t,t.value)}function C(e,t){e=e||Gt,t=t||Pt,jt.white&&!e.comment&&e.line===t.line&&T(e,t)}function k(e,t){if(jt.white){e=e||Gt,t=t||Pt;if(e.value===";"&&t.value===";")return;e.line===t.line&&e.character===t.from&&(e.from+=e.character-e.from,d("Missing space after '{a}'.",e,e.value))}}function L(e,t){e=e||Gt,t=t||Pt,!jt.laxbreak&&e.line!==t.line?d("Bad line breaking before '{a}'.",t,t.id):jt.white&&(e=e||Gt,t=t||Pt,e.character===t.from&&(e.from+=e.character-e.from,d("Missing space after '{a}'.",e,e.value)))}function A(e){var t;jt.white&&Pt.id!=="(end)"&&(t=Ct+(e||0),Pt.from!==t&&d("Expected '{a}' to have an indentation at {b} instead at {c}.",Pt,Pt.value,t,Pt.from))}function O(e){e=e||Gt,e.line!==Pt.line&&d("Line breaking error '{a}'.",e,e.value)}function M(){Gt.line!==Pt.line?jt.laxcomma||(M.first&&(d("Comma warnings can be turned off with 'laxcomma'"),M.first=!1),d("Bad line breaking before '{a}'.",Gt,Pt.id)):!Gt.comment&&Gt.character!==Pt.from&&jt.white&&(Gt.from+=Gt.character-Gt.from,d("Unexpected space after '{a}'.",Gt,Gt.value)),S(","),k(Gt,Pt)}function _(e,t){var n=Kt[e];if(!n||typeof n!="object")Kt[e]=n={id:e,lbp:t,value:e};return n}function D(e){return _(e,0)}function P(e,t){var n=D(e);return n.identifier=n.reserved=!0,n.fud=t,n}function H(e,t){var n=P(e,t);return n.block=!0,n}function B(e){var t=e.id.charAt(0);if(t>="a"&&t<="z"||t>="A"&&t<="Z")e.identifier=e.reserved=!0;return e}function j(e,t){var n=_(e,150);return B(n),n.nud=typeof t=="function"?t:function(){this.right=x(150),this.arity="unary";if(this.id==="++"||this.id==="--")jt.plusplus?d("Unexpected use of '{a}'.",this,this.id):(!this.right.identifier||this.right.reserved)&&this.right.id!=="."&&this.right.id!=="["&&d("Bad operand.",this);return this},n}function F(e,t){var n=D(e);return n.type=e,n.nud=t,n}function I(e,t){var n=F(e,t);return n.identifier=n.reserved=!0,n}function q(e,t){return I(e,function(){return typeof t=="function"&&t(this),this})}function R(e,t,n,r){var i=_(e,n);return B(i),i.led=function(i){return r||(L(qt,Gt),k(Gt,Pt)),e==="in"&&i.id==="!"&&d("Confusing use of '{a}'.",i,"!"),typeof t=="function"?t(i,this):(this.left=i,this.right=x(n),this)},i}function U(e,t){var n=_(e,100);return n.led=function(e){L(qt,Gt),k(Gt,Pt);var n=x(100);return u(e,"NaN")||u(n,"NaN")?d("Use the isNaN function to compare with NaN.",this):t&&t.apply(this,[e,n]),e.id==="!"&&d("Confusing use of '{a}'.",e,"!"),n.id==="!"&&d("Confusing use of '{a}'.",n,"!"),this.left=e,this.right=n,this},n}function z(e){return e&&(e.type==="(number)"&&+e.value===0||e.type==="(string)"&&e.value===""||e.type==="null"&&!jt.eqnull||e.type==="true"||e.type==="false"||e.type==="undefined")}function W(e){return _(e,20).exps=!0,R(e,function(e,t){t.left=e,Ft[e.value]===!1&&Wt[e.value]["(global)"]===!0?d("Read only.",e):e["function"]&&d("'{a}' is a function.",e,e.value);if(e){jt.esnext&&wt[e.value]==="const"&&d("Attempting to override '{a}' which is a constant",e,e.value);if(e.id==="."||e.id==="[")return(!e.left||e.left.value==="arguments")&&d("Bad assignment.",t),t.right=x(19),t;if(e.identifier&&!e.reserved)return wt[e.value]==="exception"&&d("Do not assign to the exception parameter.",e),t.right=x(19),t;e===Kt["function"]&&d("Expected an identifier in an assignment and instead saw a function invocation.",Gt)}m("Bad assignment.",t)},20)}function X(e,t,n){var r=_(e,n);return B(r),r.led=typeof t=="function"?t:function(e){return jt.bitwise&&d("Unexpected use of '{a}'.",this,this.id),this.left=e,this.right=x(n),this},r}function V(e){return _(e,20).exps=!0,R(e,function(e,t){jt.bitwise&&d("Unexpected use of '{a}'.",t,t.id),k(qt,Gt),k(Gt,Pt);if(e)return e.id==="."||e.id==="["||e.identifier&&!e.reserved?(x(19),t):(e===Kt["function"]&&d("Expected an identifier in an assignment, and instead saw a function invocation.",Gt),t);m("Bad assignment.",t)},20)}function $(e){var t=_(e,150);return t.led=function(e){return jt.plusplus?d("Unexpected use of '{a}'.",this,this.id):(!e.identifier||e.reserved)&&e.id!=="."&&e.id!=="["&&d("Bad operand.",this),this.left=e,this},t}function J(e){if(Pt.identifier)return S(),Gt.reserved&&!jt.es5&&(!e||Gt.value!=="undefined")&&d("Expected an identifier and instead saw '{a}' (a reserved word).",Gt,Gt.id),Gt.value}function K(e){var t=J(e);if(t)return t;Gt.id==="function"&&Pt.id==="("?d("Missing name in function declaration."):m("Expected an identifier and instead saw '{a}'.",Pt,Pt.value)}function Q(e){var t=0,n;if(Pt.id!==";"||Bt)return;for(;;){n=E(t);if(n.reach)return;if(n.id!=="(endline)"){if(n.id==="function"){if(!jt.latedef)break;d("Inner functions should be listed at the top of the outer function.",n);break}d("Unreachable '{a}' after '{b}'.",n,n.value,e);break}t+=1}}function G(e){var t=Ct,n,r=Wt,i=Pt;if(i.id===";"){S(";");return}i.identifier&&!i.reserved&&E().id===":"&&(S(),S(":"),Wt=Object.create(r),b(i.value,"label"),!Pt.labelled&&Pt.value!=="{"&&d("Label '{a}' on {b} statement.",Pt,i.value,Pt.value),pn.test(i.value+":")&&d("Label '{a}' looks like a javascript url.",i,i.value),Pt.label=i.value,i=Pt);if(i.id==="{"){et(!0,!0);return}e||A(),n=x(0,!0);if(!i.block){!jt.expr&&(!n||!n.exps)?d("Expected an assignment or function call and instead saw an expression.",Gt):jt.nonew&&n.id==="("&&n.left.id==="new"&&d("Do not use 'new' for side effects.",i);if(Pt.id===",")return M();Pt.id!==";"?jt.asi||(!jt.lastsemic||Pt.id!=="}"||Pt.line!==Gt.line)&&v("Missing semicolon.",Gt.line,Gt.character):(T(Gt,Pt),S(";"),k(Gt,Pt))}return Ct=t,Wt=r,n}function Y(e){var t=[],n;while(!Pt.reach&&Pt.id!=="(end)")Pt.id===";"?(n=E(),(!n||n.id!=="(")&&d("Unnecessary semicolon."),S(";")):t.push(G(e===Pt.line));return t}function Z(){var e,t,n;for(;;){if(Pt.id==="(string)"){t=E(0);if(t.id==="(endline)"){e=1;do n=E(e),e+=1;while(n.id==="(endline)");if(n.id!==";"){if(n.id!=="(string)"&&n.id!=="(number)"&&n.id!=="(regexp)"&&n.identifier!==!0&&n.id!=="}")break;d("Missing semicolon.",Pt)}else t=n}else if(t.id==="}")d("Missing semicolon.",t);else if(t.id!==";")break;A(),S(),Jt[Gt.value]&&d('Unnecessary directive "{a}".',Gt,Gt.value),Gt.value==="use strict"&&(jt["(explicitNewcap)"]||(jt.newcap=!0),jt.undef=!0),Jt[Gt.value]=!0,t.id===";"&&S(";");continue}break}}function et(e,n,r){var i,s=Nt,o=Ct,u,a=Wt,f,l,c;Nt=e;if(!e||!jt.funcscope)Wt=Object.create(Wt);k(Gt,Pt),f=Pt;var h=wt["(metrics)"];h.nestedBlockDepth+=1,h.verifyMaxNestedBlockDepthPerFunction();if(Pt.id==="{"){S("{"),l=Gt.line;if(Pt.id!=="}"){Ct+=jt.indent;while(!e&&Pt.from>Ct)Ct+=jt.indent;if(r){u={};for(c in Jt)t(Jt,c)&&(u[c]=Jt[c]);Z(),jt.strict&&wt["(context)"]["(global)"]&&!u["use strict"]&&!Jt["use strict"]&&d('Missing "use strict" statement.')}i=Y(l),h.statementCount+=i.length,r&&(Jt=u),Ct-=jt.indent,l!==Pt.line&&A()}else l!==Pt.line&&A();S("}",f),Ct=o}else e?((!n||jt.curly)&&d("Expected '{a}' and instead saw '{b}'.",Pt,"{",Pt.value),Bt=!0,Ct+=jt.indent,i=[G(Pt.line===Gt.line)],Ct-=jt.indent,Bt=!1):m("Expected '{a}' and instead saw '{b}'.",Pt,"{",Pt.value);wt["(verb)"]=null;if(!e||!jt.funcscope)Wt=a;return Nt=s,e&&jt.noempty&&(!i||i.length===0)&&d("Empty block."),h.nestedBlockDepth-=1,i}function tt(e){_t&&typeof _t[e]!="boolean"&&d("Unexpected /*member '{a}'.",Gt,e),typeof Mt[e]=="number"?Mt[e]+=1:Mt[e]=1}function nt(e){var t=e.value,n=e.line,r=Tt[t];typeof r=="function"&&(r=!1),r?r[r.length-1]!==n&&r.push(n):(r=[n],Tt[t]=r)}function rt(){var e=J(!0);return e||(Pt.id==="(string)"?(e=Pt.value,S()):Pt.id==="(number)"&&(e=Pt.value.toString(),S())),e}function it(){var e=Pt,t=[],n;S("("),C();if(Pt.id===")"){S(")");return}for(;;){n=K(!0),t.push(n),b(n,"unused",Gt);if(Pt.id!==",")return S(")",e),C(qt,Gt),t;M()}}function st(e,t){var n,r=jt,i=Wt;return jt=Object.create(jt),Wt=Object.create(Wt),wt={"(name)":e||'"'+ft+'"',"(line)":Pt.line,"(character)":Pt.character,"(context)":wt,"(breakage)":0,"(loopage)":0,"(metrics)":ot(Pt),"(scope)":Wt,"(statement)":t,"(tokens)":{}},n=wt,Gt.funct=wt,St.push(wt),e&&b(e,"function"),wt["(params)"]=it(),wt["(metrics)"].verifyMaxParametersPerFunction(wt["(params)"]),et(!1,!1,!0),wt["(metrics)"].verifyMaxStatementsPerFunction(),wt["(metrics)"].verifyMaxComplexityPerFunction(),Wt=i,jt=r,wt["(last)"]=Gt.line,wt["(lastcharacter)"]=Gt.character,wt=wt["(context)"],n}function ot(e){return{statementCount:0,nestedBlockDepth:-1,ComplexityCount:1,verifyMaxStatementsPerFunction:function(){if(jt.maxstatements&&this.statementCount>jt.maxstatements){var t="Too many statements per function ("+this.statementCount+").";d(t,e)}},verifyMaxParametersPerFunction:function(t){t=t||[];if(jt.maxparams&&t.length>jt.maxparams){var n="Too many parameters per function ("+t.length+").";d(n,e)}},verifyMaxNestedBlockDepthPerFunction:function(){if(jt.maxdepth&&this.nestedBlockDepth>0&&this.nestedBlockDepth===jt.maxdepth+1){var e="Blocks are nested too deeply ("+this.nestedBlockDepth+").";d(e)}},verifyMaxComplexityPerFunction:function(){var t=jt.maxcomplexity,n=this.ComplexityCount;if(t&&n>t){var r="Cyclomatic complexity is too high per function ("+n+").";d(r,e)}}}}function ut(){wt["(metrics)"].ComplexityCount+=1}function at(){function e(){var e={},t=Pt;S("{");if(Pt.id!=="}")for(;;){if(Pt.id==="(end)")m("Missing '}' to match '{' from line {a}.",Pt,t.line);else{if(Pt.id==="}"){d("Unexpected comma.",Gt);break}Pt.id===","?m("Unexpected comma.",Pt):Pt.id!=="(string)"&&d("Expected a string and instead saw {a}.",Pt,Pt.value)}e[Pt.value]===!0?d("Duplicate key '{a}'.",Pt,Pt.value):Pt.value==="__proto__"&&!jt.proto||Pt.value==="__iterator__"&&!jt.iterator?d("The '{a}' key may produce unexpected results.",Pt,Pt.value):e[Pt.value]=!0,S(),S(":"),at();if(Pt.id!==",")break;S(",")}S("}")}function t(){var e=Pt;S("[");if(Pt.id!=="]")for(;;){if(Pt.id==="(end)")m("Missing ']' to match '[' from line {a}.",Pt,e.line);else{if(Pt.id==="]"){d("Unexpected comma.",Gt);break}Pt.id===","&&m("Unexpected comma.",Pt)}at();if(Pt.id!==",")break;S(",")}S("]")}switch(Pt.id){case"{":e();break;case"[":t();break;case"true":case"false":case"null":case"(number)":case"(string)":S();break;case"-":S("-"),Gt.character!==Pt.from&&d("Unexpected space after '-'.",Gt),T(Gt,Pt),S("(number)");break;default:m("Expected a JSON value.",Pt)}}var ft,lt={"<":!0,"<=":!0,"==":!0,"===":!0,"!==":!0,"!=":!0,">":!0,">=":!0,"+":!0,"-":!0,"*":!0,"/":!0,"%":!0},ct={asi:!0,bitwise:!0,boss:!0,browser:!0,camelcase:!0,couch:!0,curly:!0,debug:!0,devel:!0,dojo:!0,eqeqeq:!0,eqnull:!0,es5:!0,esnext:!0,evil:!0,expr:!0,forin:!0,funcscope:!0,globalstrict:!0,immed:!0,iterator:!0,jquery:!0,lastsemic:!0,latedef:!0,laxbreak:!0,laxcomma:!0,loopfunc:!0,mootools:!0,multistr:!0,newcap:!0,noarg:!0,node:!0,noempty:!0,nonew:!0,nonstandard:!0,nomen:!0,onevar:!0,onecase:!0,passfail:!0,plusplus:!0,proto:!0,prototypejs:!0,regexdash:!0,regexp:!0,rhino:!0,undef:!0,unused:!0,scripturl:!0,shadow:!0,smarttabs:!0,strict:!0,sub:!0,supernew:!0,trailing:!0,validthis:!0,withstmt:!0,white:!0,worker:!0,wsh:!0,yui:!0},ht={maxlen:!1,indent:!1,maxerr:!1,predef:!1,quotmark:!1,scope:!1,maxstatements:!1,maxdepth:!1,maxparams:!1,maxcomplexity:!1},pt={bitwise:!0,forin:!0,newcap:!0,nomen:!0,plusplus:!0,regexp:!0,undef:!0,white:!0,eqeqeq:!0,onevar:!0},dt={eqeq:"eqeqeq",vars:"onevar",windows:"wsh"},vt={ArrayBuffer:!1,ArrayBufferView:!1,Audio:!1,Blob:!1,addEventListener:!1,applicationCache:!1,atob:!1,blur:!1,btoa:!1,clearInterval:!1,clearTimeout:!1,close:!1,closed:!1,DataView:!1,DOMParser:!1,defaultStatus:!1,document:!1,event:!1,FileReader:!1,Float32Array:!1,Float64Array:!1,FormData:!1,focus:!1,frames:!1,getComputedStyle:!1,HTMLElement:!1,HTMLAnchorElement:!1,HTMLBaseElement:!1,HTMLBlockquoteElement:!1,HTMLBodyElement:!1,HTMLBRElement:!1,HTMLButtonElement:!1,HTMLCanvasElement:!1,HTMLDirectoryElement:!1,HTMLDivElement:!1,HTMLDListElement:!1,HTMLFieldSetElement:!1,HTMLFontElement:!1,HTMLFormElement:!1,HTMLFrameElement:!1,HTMLFrameSetElement:!1,HTMLHeadElement:!1,HTMLHeadingElement:!1,HTMLHRElement:!1,HTMLHtmlElement:!1,HTMLIFrameElement:!1,HTMLImageElement:!1,HTMLInputElement:!1,HTMLIsIndexElement:!1,HTMLLabelElement:!1,HTMLLayerElement:!1,HTMLLegendElement:!1,HTMLLIElement:!1,HTMLLinkElement:!1,HTMLMapElement:!1,HTMLMenuElement:!1,HTMLMetaElement:!1,HTMLModElement:!1,HTMLObjectElement:!1,HTMLOListElement:!1,HTMLOptGroupElement:!1,HTMLOptionElement:!1,HTMLParagraphElement:!1,HTMLParamElement:!1,HTMLPreElement:!1,HTMLQuoteElement:!1,HTMLScriptElement:!1,HTMLSelectElement:!1,HTMLStyleElement:!1,HTMLTableCaptionElement:!1,HTMLTableCellElement:!1,HTMLTableColElement:!1,HTMLTableElement:!1,HTMLTableRowElement:!1,HTMLTableSectionElement:!1,HTMLTextAreaElement:!1,HTMLTitleElement:!1,HTMLUListElement:!1,HTMLVideoElement:!1,history:!1,Int16Array:!1,Int32Array:!1,Int8Array:!1,Image:!1,length:!1,localStorage:!1,location:!1,MessageChannel:!1,MessageEvent:!1,MessagePort:!1,moveBy:!1,moveTo:!1,MutationObserver:!1,name:!1,Node:!1,NodeFilter:!1,navigator:!1,onbeforeunload:!0,onblur:!0,onerror:!0,onfocus:!0,onload:!0,onresize:!0,onunload:!0,open:!1,openDatabase:!1,opener:!1,Option:!1,parent:!1,print:!1,removeEventListener:!1,resizeBy:!1,resizeTo:!1,screen:!1,scroll:!1,scrollBy:!1,scrollTo:!1,sessionStorage:!1,setInterval:!1,setTimeout:!1,SharedWorker:!1,status:!1,top:!1,Uint16Array:!1,Uint32Array:!1,Uint8Array:!1,WebSocket:!1,window:!1,Worker:!1,XMLHttpRequest:!1,XMLSerializer:!1,XPathEvaluator:!1,XPathException:!1,XPathExpression:!1,XPathNamespace:!1,XPathNSResolver:!1,XPathResult:!1},mt={require:!1,respond:!1,getRow:!1,emit:!1,send:!1,start:!1,sum:!1,log:!1,exports:!1,module:!1,provides:!1},gt,yt={alert:!1,confirm:!1,console:!1,Debug:!1,opera:!1,prompt:!1},bt={dojo:!1,dijit:!1,dojox:!1,define:!1,require:!1},wt,Et=["closure","exception","global","label","outer","unused","var"],St,xt,Tt,Nt,Ct,kt,Lt={$:!1,jQuery:!1},At,Ot,Mt,_t,Dt={$:!1,$$:!1,Asset:!1,Browser:!1,Chain:!1,Class:!1,Color:!1,Cookie:!1,Core:!1,Document:!1,DomReady:!1,DOMEvent:!1,DOMReady:!1,Drag:!1,Element:!1,Elements:!1,Event:!1,Events:!1,Fx:!1,Group:!1,Hash:!1,HtmlTable:!1,Iframe:!1,IframeShim:!1,InputValidator:!1,instanceOf:!1,Keyboard:!1,Locale:!1,Mask:!1,MooTools:!1,Native:!1,Options:!1,OverText:!1,Request:!1,Scroller:!1,Slick:!1,Slider:!1,Sortables:!1,Spinner:!1,Swiff:!1,Tips:!1,Type:!1,typeOf:!1,URI:!1,Window:!1},Pt,Ht={__filename:!1,__dirname:!1,Buffer:!1,console:!1,exports:!0,GLOBAL:!1,global:!1,module:!1,process:!1,require:!1,setTimeout:!1,clearTimeout:!1,setInterval:!1,clearInterval:!1},Bt,jt,Ft,It,qt,Rt={$:!1,$$:!1,$A:!1,$F:!1,$H:!1,$R:!1,$break:!1,$continue:!1,$w:!1,Abstract:!1,Ajax:!1,Class:!1,Enumerable:!1,Element:!1,Event:!1,Field:!1,Form:!1,Hash:!1,Insertion:!1,ObjectRange:!1,PeriodicalExecuter:!1,Position:!1,Prototype:!1,Selector:!1,Template:!1,Toggle:!1,Try:!1,Autocompleter:!1,Builder:!1,Control:!1,Draggable:!1,Draggables:!1,Droppables:!1,Effect:!1,Sortable:!1,SortableObserver:!1,Sound:!1,Scriptaculous:!1},Ut,zt={defineClass:!1,deserialize:!1,gc:!1,help:!1,importPackage:!1,java:!1,load:!1,loadClass:!1,print:!1,quit:!1,readFile:!1,readUrl:!1,runCommand:!1,seal:!1,serialize:!1,spawn:!1,sync:!1,toint32:!1,version:!1},Wt,Xt,Vt={Array:!1,Boolean:!1,Date:!1,decodeURI:!1,decodeURIComponent:!1,encodeURI:!1,encodeURIComponent:!1,Error:!1,eval:!1,EvalError:!1,Function:!1,hasOwnProperty:!1,isFinite:!1,isNaN:!1,JSON:!1,Map:!1,Math:!1,NaN:!1,Number:!1,Object:!1,parseInt:!1,parseFloat:!1,RangeError:!1,ReferenceError:!1,RegExp:!1,Set:!1,String:!1,SyntaxError:!1,TypeError:!1,URIError:!1,WeakMap:!1},$t={escape:!1,unescape:!1},Jt,Kt={},Qt,Gt,Yt,Zt,en,tn,nn={importScripts:!0,postMessage:!0,self:!0},rn={ActiveXObject:!0,Enumerator:!0,GetObject:!0,ScriptEngine:!0,ScriptEngineBuildVersion:!0,ScriptEngineMajorVersion:!0,ScriptEngineMinorVersion:!0,VBArray:!0,WSH:!0,WScript:!0,XDomainRequest:!0},sn={YUI:!1,Y:!1,YUI_config:!1},on,un,an,fn,ln,cn,hn,pn,dn;(function(){on=/@cc|<\/?|script|\]\s*\]|<\s*!|&lt/i,un=/[\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/,an=/^\s*([(){}\[.,:;'"~\?\]#@]|==?=?|\/=(?!(\S*\/[gim]?))|\/(\*(jshint|jslint|members?|global)?|\/)?|\*[\/=]?|\+(?:=|\++)?|-(?:=|-+)?|%=?|&[&=]?|\|[|=]?|>>?>?=?|<([\/=!]|\!(\[|--)?|<=?)?|\^=?|\!=?=?|[a-zA-Z_$][a-zA-Z0-9_$]*|[0-9]+([xX][0-9a-fA-F]+|\.[0-9]*)?([eE][+\-]?[0-9]+)?)/,fn=/[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/,ln=/[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,cn=/\*\//,hn=/^([a-zA-Z_$][a-zA-Z0-9_$]*)$/,pn=/^(?:javascript|jscript|ecmascript|vbscript|mocha|livescript)\s*:/i,dn=/^\s*\/\*\s*falls\sthrough\s*\*\/\s*$/})(),typeof Array.isArray!="function"&&(Array.isArray=function(e){return Object.prototype.toString.apply(e)==="[object Array]"}),Array.prototype.forEach||(Array.prototype.forEach=function(e,t){var n=this.length;for(var r=0;r<n;r++)e.call(t||this,this[r],r,this)}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){if(this===null||this===undefined)throw new TypeError;var t=new Object(this),n=t.length>>>0;if(n===0)return-1;var r=0;arguments.length>0&&(r=Number(arguments[1]),r!=r?r=0:r!==0&&r!=Infinity&&r!=-Infinity&&(r=(r>0||-1)*Math.floor(Math.abs(r))));if(r>=n)return-1;var i=r>=0?r:Math.max(n-Math.abs(r),0);for(;i<n;i++)if(i in t&&t[i]===e)return i;return-1}),typeof Object.create!="function"&&(Object.create=function(t){return e.prototype=t,new e}),typeof Object.keys!="function"&&(Object.keys=function(e){var n=[],r;for(r in e)t(e,r)&&n.push(r);return n});var vn=function(){function e(){var e,t,n;return u>=At.length?!1:(r=1,a=At[u],u+=1,jt.smarttabs?(t=a.match(/(\/\/)? \t/),e=t&&!t[1]?0:-1):e=a.search(/ \t|\t [^\*]/),e>=0&&v("Mixed spaces and tabs.",u,e+1),a=a.replace(/\t/g,Qt),e=a.search(un),e>=0&&v("Unsafe character.",u,e),jt.maxlen&&jt.maxlen<a.length&&v("Line too long.",u,a.length),n=jt.trailing&&a.match(/^(.*?)\s+$/),n&&!/^\s+$/.test(a)&&v("Trailing whitespace.",u,n[1].length+1),!0)}function n(e,n){function s(e){if(!jt.proto&&e==="__proto__"){v("The '{a}' property is deprecated.",u,i,e);return}if(!jt.iterator&&e==="__iterator__"){v("'{a}' is only available in JavaScript 1.7.",u,i,e);return}var t=/^(_+.*|.*_+)$/.test(e);if(jt.nomen&&t&&e!=="_"){if(jt.node&&Gt.id!=="."&&/^(__dirname|__filename)$/.test(e))return;v("Unexpected {a} in '{b}'.",u,i,"dangling '_'",e);return}jt.camelcase&&e.replace(/^_+/,"").indexOf("_")>-1&&!e.match(/^[A-Z0-9_]*$/)&&v("Identifier '{a}' is not in camel case.",u,i,n)}var o,a;return e==="(color)"||e==="(range)"?a={type:e}:e==="(punctuator)"||e==="(identifier)"&&t(Kt,n)?a=Kt[n]||Kt["(error)"]:a=Kt[e],a=Object.create(a),(e==="(string)"||e==="(range)")&&!jt.scripturl&&pn.test(n)&&v("Script URL.",u,i),e==="(identifier)"&&(a.identifier=!0,s(n)),a.value=n,a.line=u,a.character=r,a.from=i,o=a.id,o!=="(endline)"&&(It=o&&("(,=:[!&|?{};".indexOf(o.charAt(o.length-1))>=0||o==="return"||o==="case")),a}var r,i,u,a;return{init:function(t){typeof t=="string"?At=t.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split("\n"):At=t,At[0]&&At[0].substr(0,2)==="#!"&&(At[0]=""),u=0,e(),i=1},range:function(e,t){var s,o="";i=r,a.charAt(0)!==e&&g("Expected '{a}' and instead saw '{b}'.",u,r,e,a.charAt(0));for(;;){a=a.slice(1),r+=1,s=a.charAt(0);switch(s){case"":g("Missing '{a}'.",u,r,s);break;case t:return a=a.slice(1),r+=1,n("(range)",o);case"\\":v("Unexpected '{a}'.",u,r,s)}o+=s}},token:function(){function t(e){var t=e.exec(a),n;if(t)return w=t[0].length,n=t[1],c=n.charAt(0),a=a.substr(w),i=r+w-n.length,r+=w,n}function f(t){function s(e){var t=parseInt(a.substr(f+1,e),16);f+=e,t>=32&&t<=126&&t!==34&&t!==92&&t!==39&&v("Unnecessary escapement.",u,r),r+=e,o=String.fromCharCode(t)}var o,f,l="",c=!1;kt&&t!=='"'&&v("Strings must use doublequote.",u,r),jt.quotmark&&(jt.quotmark==="single"&&t!=="'"?v("Strings must use singlequote.",u,r):jt.quotmark==="double"&&t!=='"'?v("Strings must use doublequote.",u,r):jt.quotmark===!0&&(Ut=Ut||t,Ut!==t&&v("Mixed double and single quotes.",u,r))),f=0;e:for(;;){while(f>=a.length){f=0;var h=u,p=i;if(!e()){g("Unclosed string.",h,p);break e}c?c=!1:v("Unclosed string.",h,p)}o=a.charAt(f);if(o===t)return r+=1,a=a.substr(f+1),n("(string)",l,t);if(o<" "){if(o==="\n"||o==="\r")break;v("Control character in string: {a}.",u,r+f,a.slice(0,f))}else if(o==="\\"){f+=1,r+=1,o=a.charAt(f),C=a.charAt(f+1);switch(o){case"\\":case'"':case"/":break;case"'":kt&&v("Avoid \\'.",u,r);break;case"b":o="\b";break;case"f":o="\f";break;case"n":o="\n";break;case"r":o="\r";break;case"t":o=" ";break;case"0":o="\0",C>=0&&C<=7&&Jt["use strict"]&&v("Octal literals are not allowed in strict mode.",u,r);break;case"u":s(4);break;case"v":kt&&v("Avoid \\v.",u,r),o=" ";break;case"x":kt&&v("Avoid \\x-.",u,r),s(2);break;case"":c=!0;if(jt.multistr){kt&&v("Avoid EOL escapement.",u,r),o="",r-=1;break}v("Bad escapement of EOL. Use option multistr if needed.",u,r);break;case"!":if(a.charAt(f-2)==="<")break;default:v("Bad escapement.",u,r)}}l+=o,r+=1,f+=1}}var l,c,p,d,m,y,b,w,E,S,x,T,N,C;for(;;){if(!a)return n(e()?"(endline)":"(end)","");x=t(an);if(!x){x="",c="";while(a&&a<"!")a=a.substr(1);a&&(g("Unexpected '{a}'.",u,r,a.substr(0,1)),a="")}else{if(s(c)||c==="_"||c==="$")return n("(identifier)",x);if(o(c))return isFinite(Number(x))||v("Bad number '{a}'.",u,r,x),s(a.substr(0,1))&&v("Missing space after '{a}'.",u,r,x),c==="0"&&(d=x.substr(1,1),o(d)?Gt.id!=="."&&v("Don't use extra leading zeros '{a}'.",u,r,x):kt&&(d==="x"||d==="X")&&v("Avoid 0x-. '{a}'.",u,r,x)),x.substr(x.length-1)==="."&&v("A trailing decimal point can be confused with a dot '{a}'.",u,r,x),n("(number)",x);switch(x){case'"':case"'":return f(x);case"//":a="",Gt.comment=!0;break;case"/*":for(;;){b=a.search(cn);if(b>=0)break;e()||g("Unclosed comment.",u,r)}a=a.substr(b+2),Gt.comment=!0;break;case"/*members":case"/*member":case"/*jshint":case"/*jslint":case"/*global":case"*/":return{value:x,type:"special",line:u,character:r,from:i};case"":break;case"/":a.charAt(0)==="="&&g("A regular expression literal can be confused with '/='.",u,i);if(It){m=0,p=0,w=0;for(;;){l=!0,c=a.charAt(w),w+=1;switch(c){case"":return g("Unclosed regular expression.",u,i),h("Stopping.",u,i);case"/":m>0&&v("{a} unterminated regular expression group(s).",u,i+w,m),c=a.substr(0,w-1),S={g:!0,i:!0,m:!0};while(S[a.charAt(w)]===!0)S[a.charAt(w)]=!1,w+=1;return r+=w,a=a.substr(w),S=a.charAt(0),(S==="/"||S==="*")&&g("Confusing regular expression.",u,i),n("(regexp)",c);case"\\":c=a.charAt(w),c<" "?v("Unexpected control character in regular expression.",u,i+w):c==="<"&&v("Unexpected escaped character '{a}' in regular expression.",u,i+w,c),w+=1;break;case"(":m+=1,l=!1;if(a.charAt(w)==="?"){w+=1;switch(a.charAt(w)){case":":case"=":case"!":w+=1;break;default:v("Expected '{a}' and instead saw '{b}'.",u,i+w,":",a.charAt(w))}}else p+=1;break;case"|":l=!1;break;case")":m===0?v("Unescaped '{a}'.",u,i+w,")"):m-=1;break;case" ":S=1;while(a.charAt(w)===" ")w+=1,S+=1;S>1&&v("Spaces are hard to count. Use {{a}}.",u,i+w,S);break;case"[":c=a.charAt(w),c==="^"&&(w+=1,a.charAt(w)==="]"&&g("Unescaped '{a}'.",u,i+w,"^")),c==="]"&&v("Empty class.",u,i+w-1),T=!1,N=!1;e:do{c=a.charAt(w),w+=1;switch(c){case"[":case"^":v("Unescaped '{a}'.",u,i+w,c),N?N=!1:T=!0;break;case"-":T&&!N?(T=!1,N=!0):N?N=!1:a.charAt(w)==="]"?N=!0:(jt.regexdash!==(w===2||w===3&&a.charAt(1)==="^")&&v("Unescaped '{a}'.",u,i+w-1,"-"),T=!0);break;case"]":N&&!jt.regexdash&&v("Unescaped '{a}'.",u,i+w-1,"-");break e;case"\\":c=a.charAt(w),c<" "?v("Unexpected control character in regular expression.",u,i+w):c==="<"&&v("Unexpected escaped character '{a}' in regular expression.",u,i+w,c),w+=1,/[wsd]/i.test(c)?(N&&(v("Unescaped '{a}'.",u,i+w,"-"),N=!1),T=!1):N?N=!1:T=!0;break;case"/":v("Unescaped '{a}'.",u,i+w-1,"/"),N?N=!1:T=!0;break;case"<":N?N=!1:T=!0;break;default:N?N=!1:T=!0}}while(c);break;case".":jt.regexp&&v("Insecure '{a}'.",u,i+w,c);break;case"]":case"?":case"{":case"}":case"+":case"*":v("Unescaped '{a}'.",u,i+w,c)}if(l)switch(a.charAt(w)){case"?":case"+":case"*":w+=1,a.charAt(w)==="?"&&(w+=1);break;case"{":w+=1,c=a.charAt(w);if(c<"0"||c>"9"){v("Expected a number and instead saw '{a}'.",u,i+w,c);break}w+=1,E=+c;for(;;){c=a.charAt(w);if(c<"0"||c>"9")break;w+=1,E=+c+E*10}y=E;if(c===","){w+=1,y=Infinity,c=a.charAt(w);if(c>="0"&&c<="9"){w+=1,y=+c;for(;;){c=a.charAt(w);if(c<"0"||c>"9")break;w+=1,y=+c+y*10}}}a.charAt(w)!=="}"?v("Expected '{a}' and instead saw '{b}'.",u,i+w,"}",c):w+=1,a.charAt(w)==="?"&&(w+=1),E>y&&v("'{a}' should not be greater than '{b}'.",u,i+w,E,y)}}return c=a.substr(0,w-1),r+=w,a=a.substr(w),n("(regexp)",c)}return n("(punctuator)",x);case"#":return n("(punctuator)",x);default:return n("(punctuator)",x)}}}}}}();F("(number)",function(){return this}),F("(string)",function(){return this}),Kt["(identifier)"]={type:"(identifier)",lbp:0,identifier:!0,nud:function(){var e=this.value,t=Wt[e],n;typeof t=="function"?t=undefined:typeof t=="boolean"&&(n=wt,wt=St[0],b(e,"var"),t=wt,wt=n);if(wt===t)switch(wt[e]){case"unused":wt[e]="var";break;case"unction":wt[e]="function",this["function"]=!0;break;case"function":this["function"]=!0;break;case"label":d("'{a}' is a statement label.",Gt,e)}else if(wt["(global)"])jt.undef&&typeof Ft[e]!="boolean"&&(ft!=="typeof"&&ft!=="delete"||Pt&&(Pt.value==="."||Pt.value==="["))&&p(wt,"'{a}' is not defined.",Gt,e),nt(Gt);else switch(wt[e]){case"closure":case"function":case"var":case"unused":d("'{a}' used out of scope.",Gt,e);break;case"label":d("'{a}' is a statement label.",Gt,e);break;case"outer":case"global":break;default:if(t===!0)wt[e]=!0;else if(t===null)d("'{a}' is not allowed.",Gt,e),nt(Gt);else if(typeof t!="object")jt.undef&&(ft!=="typeof"&&ft!=="delete"||Pt&&(Pt.value==="."||Pt.value==="["))&&p(wt,"'{a}' is not defined.",Gt,e),wt[e]=!0,nt(Gt);else switch(t[e]){case"function":case"unction":this["function"]=!0,t[e]="closure",wt[e]=t["(global)"]?"global":"outer";break;case"var":case"unused":t[e]="closure",wt[e]=t["(global)"]?"global":"outer";break;case"closure":wt[e]=t["(global)"]?"global":"outer";break;case"label":d("'{a}' is a statement label.",Gt,e)}}return this},led:function(){m("Expected an operator and instead saw '{a}'.",Pt,Pt.value)}},F("(regexp)",function(){return this}),D("(endline)"),D("(begin)"),D("(end)").reach=!0,D("</").reach=!0,D("<!"),D("<!--"),D("-->"),D("(error)").reach=!0,D("}").reach=!0,D(")"),D("]"),D('"').reach=!0,D("'").reach=!0,D(";"),D(":").reach=!0,D(","),D("#"),D("@"),I("else"),I("case").reach=!0,I("catch"),I("default").reach=!0,I("finally"),q("arguments",function(e){Jt["use strict"]&&wt["(global)"]&&d("Strict violation.",e)}),q("eval"),q("false"),q("Infinity"),q("null"),q("this",function(e){Jt["use strict"]&&!jt.validthis&&(wt["(statement)"]&&wt["(name)"].charAt(0)>"Z"||wt["(global)"])&&d("Possible strict violation.",e)}),q("true"),q("undefined"),W("=","assign",20),W("+=","assignadd",20),W("-=","assignsub",20),W("*=","assignmult",20),W("/=","assigndiv",20).nud=function(){m("A regular expression literal can be confused with '/='.")},W("%=","assignmod",20),V("&=","assignbitand",20),V("|=","assignbitor",20),V("^=","assignbitxor",20),V("<<=","assignshiftleft",20),V(">>=","assignshiftright",20),V(">>>=","assignshiftrightunsigned",20),R("?",function(e,t){return t.left=e,t.right=x(10),S(":"),t["else"]=x(10),t},30),R("||","or",40),R("&&","and",50),X("|","bitor",70),X("^","bitxor",80),X("&","bitand",90),U("==",function(e,t){var n=jt.eqnull&&(e.value==="null"||t.value==="null");return!n&&jt.eqeqeq?d("Expected '{a}' and instead saw '{b}'.",this,"===","=="):z(e)?d("Use '{a}' to compare with '{b}'.",this,"===",e.value):z(t)&&d("Use '{a}' to compare with '{b}'.",this,"===",t.value),this}),U("==="),U("!=",function(e,t){var n=jt.eqnull&&(e.value==="null"||t.value==="null");return!n&&jt.eqeqeq?d("Expected '{a}' and instead saw '{b}'.",this,"!==","!="):z(e)?d("Use '{a}' to compare with '{b}'.",this,"!==",e.value):z(t)&&d("Use '{a}' to compare with '{b}'.",this,"!==",t.value),this}),U("!=="),U("<"),U(">"),U("<="),U(">="),X("<<","shiftleft",120),X(">>","shiftright",120),X(">>>","shiftrightunsigned",120),R("in","in",120),R("instanceof","instanceof",120),R("+",function(e,t){var n=x(130);return e&&n&&e.id==="(string)"&&n.id==="(string)"?(e.value+=n.value,e.character=n.character,!jt.scripturl&&pn.test(e.value)&&d("JavaScript URL.",e),e):(t.left=e,t.right=n,t)},130),j("+","num"),j("+++",function(){return d("Confusing pluses."),this.right=x(150),this.arity="unary",this}),R("+++",function(e){return d("Confusing pluses."),this.left=e,this.right=x(130),this},130),R("-","sub",130),j("-","neg"),j("---",function(){return d("Confusing minuses."),this.right=x(150),this.arity="unary",this}),R("---",function(e){return d("Confusing minuses."),this.left=e,this.right=x(130),this},130),R("*","mult",140),R("/","div",140),R("%","mod",140),$("++","postinc"),j("++","preinc"),Kt["++"].exps=!0,$("--","postdec"),j("--","predec"),Kt["--"].exps=!0,j("delete",function(){var e=x(0);return(!e||e.id!=="."&&e.id!=="[")&&d("Variables should not be deleted."),this.first=e,this}).exps=!0,j("~",function(){return jt.bitwise&&d("Unexpected '{a}'.",this,"~"),x(150),this}),j("!",function(){return this.right=x(150),this.arity="unary",lt[this.right.id]===!0&&d("Confusing use of '{a}'.",this,"!"),this}),j("typeof","typeof"),j("new",function(){var e=x(155),n;if(e&&e.id!=="function")if(e.identifier){e["new"]=!0;switch(e.value){case"Number":case"String":case"Boolean":case"Math":case"JSON":d("Do not use {a} as a constructor.",qt,e.value);break;case"Function":jt.evil||d("The Function constructor is eval.");break;case"Date":case"RegExp":break;default:e.id!=="function"&&(n=e.value.substr(0,1),jt.newcap&&(n<"A"||n>"Z")&&!t(xt,e.value)&&d("A constructor name should start with an uppercase letter.",Gt))}}else e.id!=="."&&e.id!=="["&&e.id!=="("&&d("Bad constructor.",Gt);else jt.supernew||d("Weird construction. Delete 'new'.",this);return T(Gt,Pt),Pt.id!=="("&&!jt.supernew&&d("Missing '()' invoking a constructor.",Gt,Gt.value),this.first=e,this}),Kt["new"].exps=!0,j("void").exps=!0,R(".",function(e,t){T(qt,Gt),N();var n=K();return typeof n=="string"&&tt(n),t.left=e,t.right=n,!e||e.value!=="arguments"||n!=="callee"&&n!=="caller"?!jt.evil&&e&&e.value==="document"&&(n==="write"||n==="writeln")&&d("document.write can be a form of eval.",e):jt.noarg?d("Avoid arguments.{a}.",e,n):Jt["use strict"]&&m("Strict violation."),!jt.evil&&(n==="eval"||n==="execScript")&&d("eval is evil."),t},160,!0),R("(",function(e,t){qt.id!=="}"&&qt.id!==")"&&N(qt,Gt),C(),jt.immed&&!e.immed&&e.id==="function"&&d("Wrap an immediate function invocation in parentheses to assist the reader in understanding that the expression is the result of a function, and not the function itself.");var n=0,r=[];e&&e.type==="(identifier)"&&e.value.match(/^[A-Z]([A-Z0-9_$]*[a-z][A-Za-z0-9_$]*)?$/)&&"Number String Boolean Date Object".indexOf(e.value)===-1&&(e.value==="Math"?d("Math is not a function.",e):jt.newcap&&d("Missing 'new' prefix when invoking a constructor.",e));if(Pt.id!==")")for(;;){r[r.length]=x(10),n+=1;if(Pt.id!==",")break;M()}return S(")"),C(qt,Gt),typeof e=="object"&&(e.value==="parseInt"&&n===1&&d("Missing radix parameter.",Gt),jt.evil||(e.value==="eval"||e.value==="Function"||e.value==="execScript"?(d("eval is evil.",e),r[0]&&[0].id==="(string)"&&y(e,r[0].value)):!r[0]||r[0].id!=="(string)"||e.value!=="setTimeout"&&e.value!=="setInterval"?r[0]&&r[0].id==="(string)"&&e.value==="."&&e.left.value==="window"&&(e.right==="setTimeout"||e.right==="setInterval")&&(d("Implied eval is evil. Pass a function instead of a string.",e),y(e,r[0].value)):(d("Implied eval is evil. Pass a function instead of a string.",e),y(e,r[0].value))),!e.identifier&&e.id!=="."&&e.id!=="["&&e.id!=="("&&e.id!=="&&"&&e.id!=="||"&&e.id!=="?"&&d("Bad invocation.",e)),t.left=e,t},155,!0).exps=!0,j("(",function(){C(),Pt.id==="function"&&(Pt.immed=!0);var e=x(0);return S(")",this),C(qt,Gt),jt.immed&&e.id==="function"&&Pt.id!=="("&&(Pt.id!=="."||E().value!=="call"&&E().value!=="apply")&&d("Do not wrap function literals in parens unless they are to be immediately invoked.",this),e}),R("[",function(e,t){N(qt,Gt),C();var n=x(0),r;return n&&n.type==="(string)"&&(!jt.evil&&(n.value==="eval"||n.value==="execScript")&&d("eval is evil.",t),tt(n.value),!jt.sub&&hn.test(n.value)&&(r=Kt[n.value],(!r||!r.reserved)&&d("['{a}'] is better written in dot notation.",qt,n.value))),S("]",t),C(qt,Gt),t.left=e,t.right=n,t},160,!0),j("[",function(){var e=Gt.line!==Pt.line;this.first=[],e&&(Ct+=jt.indent,Pt.from===Ct+jt.indent&&(Ct+=jt.indent));while(Pt.id!=="(end)"){while(Pt.id===",")jt.es5||d("Extra comma."),S(",");if(Pt.id==="]")break;e&&Gt.line!==Pt.line&&A(),this.first.push(x(10));if(Pt.id!==",")break;M();if(Pt.id==="]"&&!jt.es5){d("Extra comma.",Gt);break}}return e&&(Ct-=jt.indent,A()),S("]",this),this},160),function(e){e.nud=function(){function e(e,n){f[e]&&t(f,e)?d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].basic=!0,f[e].basicToken=n}function n(e,n){f[e]&&t(f,e)?(f[e].basic||f[e].setter)&&d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].setter=!0,f[e].setterToken=n}function r(e){f[e]&&t(f,e)?(f[e].basic||f[e].getter)&&d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].getter=!0,f[e].getterToken=Gt}var i,s,o,u,a,f={};i=Gt.line!==Pt.line,i&&(Ct+=jt.indent,Pt.from===Ct+jt.indent&&(Ct+=jt.indent));for(;;){if(Pt.id==="}")break;i&&A();if(Pt.value==="get"&&E().id!==":")S("get"),jt.es5||m("get/set are ES5 features."),o=rt(),o||m("Missing property name."),r(o),a=Pt,T(Gt,Pt),s=st(),u=s["(params)"],u&&d("Unexpected parameter '{a}' in get {b} function.",a,u[0],o),T(Gt,Pt);else if(Pt.value==="set"&&E().id!==":")S("set"),jt.es5||m("get/set are ES5 features."),o=rt(),o||m("Missing property name."),n(o,Pt),a=Pt,T(Gt,Pt),s=st(),u=s["(params)"],(!u||u.length!==1)&&d("Expected a single parameter in set {a} function.",a,o);else{o=rt(),e(o,Pt);if(typeof o!="string")break;S(":"),k(Gt,Pt),x(10)}tt(o);if(Pt.id!==",")break;M(),Pt.id===","?d("Extra comma.",Gt):Pt.id==="}"&&!jt.es5&&d("Extra comma.",Gt)}i&&(Ct-=jt.indent,A()),S("}",this);if(jt.es5)for(var l in f)t(f,l)&&f[l].setter&&!f[l].getter&&d("Setter is defined without getter.",f[l].setterToken);return this},e.fud=function(){m("Expected to see a statement and instead saw a block.",Gt)}}(D("{")),en=function(){var e=P("const",function(e){var t,n,r;this.first=[];for(;;){k(Gt,Pt),t=K(),wt[t]==="const"&&d("const '"+t+"' has already been declared"),wt["(global)"]&&Ft[t]===!1&&d("Redefinition of '{a}'.",Gt,t),b(t,"const");if(e)break;n=Gt,this.first.push(Gt),Pt.id!=="="&&d("const '{a}' is initialized to 'undefined'.",Gt,t),Pt.id==="="&&(k(Gt,Pt),S("="),k(Gt,Pt),Pt.id==="undefined"&&d("It is not necessary to initialize '{a}' to 'undefined'.",Gt,t),E(0).id==="="&&Pt.identifier&&m("Constant {a} was not declared correctly.",Pt,Pt.value),r=x(0),n.first=r);if(Pt.id!==",")break;M()}return this});e.exps=!0};var mn=P("var",function(e){var t,n,r;wt["(onevar)"]&&jt.onevar?d("Too many var statements."):wt["(global)"]||(wt["(onevar)"]=!0),this.first=[];for(;;){k(Gt,Pt),t=K(),jt.esnext&&wt[t]==="const"&&d("const '"+t+"' has already been declared"),wt["(global)"]&&Ft[t]===!1&&d("Redefinition of '{a}'.",Gt,t),b(t,"unused",Gt);if(e)break;n=Gt,this.first.push(Gt),Pt.id==="="&&(k(Gt,Pt),S("="),k(Gt,Pt),Pt.id==="undefined"&&d("It is not necessary to initialize '{a}' to 'undefined'.",Gt,t),E(0).id==="="&&Pt.identifier&&m("Variable {a} was not declared correctly.",Pt,Pt.value),r=x(0),n.first=r);if(Pt.id!==",")break;M()}return this});mn.exps=!0,H("function",function(){Nt&&d("Function declarations should not be placed in blocks. Use a function expression or move the statement to the top of the outer function.",Gt);var e=K();return jt.esnext&&wt[e]==="const"&&d("const '"+e+"' has already been declared"),T(Gt,Pt),b(e,"unction",Gt),st(e,{statement:!0}),Pt.id==="("&&Pt.line===Gt.line&&m("Function declarations are not invocable. Wrap the whole function invocation in parens."),this}),j("function",function(){var e=J();return e?T(Gt,Pt):k(Gt,Pt),st(e),!jt.loopfunc&&wt["(loopage)"]&&d("Don't make functions within a loop."),this}),H("if",function(){var e=Pt;return ut(),S("("),k(this,e),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),et(!0,!0),Pt.id==="else"&&(k(Gt,Pt),S("else"),Pt.id==="if"||Pt.id==="switch"?G(!0):et(!0,!0)),this}),H("try",function(){function e(){var e=Wt,t;S("catch"),k(Gt,Pt),S("("),Wt=Object.create(e),t=Pt.value,Pt.type!=="(identifier)"&&(t=null,d("Expected an identifier and instead saw '{a}'.",Pt,t)),S(),S(")"),wt={"(name)":"(catch)","(line)":Pt.line,"(character)":Pt.character,"(context)":wt,"(breakage)":wt["(breakage)"],"(loopage)":wt["(loopage)"],"(scope)":Wt,"(statement)":!1,"(metrics)":ot(Pt),"(catch)":!0,"(tokens)":{}},t&&b(t,"exception"),Gt.funct=wt,St.push(wt),et(!1),Wt=e,wt["(last)"]=Gt.line,wt["(lastcharacter)"]=Gt.character,wt=wt["(context)"]}var t;et(!1),Pt.id==="catch"&&(ut(),e(),t=!0);if(Pt.id==="finally"){S("finally"),et(!1);return}return t||m("Expected '{a}' and instead saw '{b}'.",Pt,"catch",Pt.value),this}),H("while",function(){var e=Pt;return wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),S("("),k(this,e),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),et(!0,!0),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}).labelled=!0,H("with",function(){var e=Pt;return Jt["use strict"]?m("'with' is not allowed in strict mode.",Gt):jt.withstmt||d("Don't use 'with'.",Gt),S("("),k(this,e),C(),x(0),S(")",e),C(qt,Gt),et(!0,!0),this}),H("switch",function(){var e=Pt,t=!1;wt["(breakage)"]+=1,S("("),k(this,e),C(),this.condition=x(20),S(")",e),C(qt,Gt),k(Gt,Pt),e=Pt,S("{"),k(Gt,Pt),Ct+=jt.indent,this.cases=[];for(;;)switch(Pt.id){case"case":switch(wt["(verb)"]){case"break":case"case":case"continue":case"return":case"switch":case"throw":break;default:dn.test(At[Pt.line-2])||d("Expected a 'break' statement before 'case'.",Gt)}A(-jt.indent),S("case"),this.cases.push(x(20)),ut(),t=!0,S(":"),wt["(verb)"]="case";break;case"default":switch(wt["(verb)"]){case"break":case"continue":case"return":case"throw":break;default:dn.test(At[Pt.line-2])||d("Expected a 'break' statement before 'default'.",Gt)}A(-jt.indent),S("default"),t=!0,S(":");break;case"}":Ct-=jt.indent,A(),S("}",e);if(this.cases.length===1||this.condition.id==="true"||this.condition.id==="false")jt.onecase||d("This 'switch' should be an 'if'.",this);wt["(breakage)"]-=1,wt["(verb)"]=undefined;return;case"(end)":m("Missing '{a}'.",Pt,"}");return;default:if(t)switch(Gt.id){case",":m("Each value should have its own case label.");return;case":":t=!1,Y();break;default:m("Missing ':' on a case clause.",Gt);return}else{if(Gt.id!==":"){m("Expected '{a}' and instead saw '{b}'.",Pt,"case",Pt.value);return}S(":"),m("Unexpected '{a}'.",Gt,":"),Y()}}}).labelled=!0,P("debugger",function(){return jt.debug||d("All 'debugger' statements should be removed."),this}).exps=!0,function(){var e=P("do",function(){wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),this.first=et(!0),S("while");var e=Pt;return k(Gt,e),S("("),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this});e.labelled=!0,e.exps=!0}(),H("for",function(){var e,t=Pt;wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),S("("),k(this,t),C();if(E(Pt.id==="var"?1:0).id==="in"){if(Pt.id==="var")S("var"),mn.fud.call(mn,!0);else{switch(wt[Pt.value]){case"unused":wt[Pt.value]="var";break;case"var":break;default:d("Bad for in variable '{a}'.",Pt,Pt.value)}S()}return S("in"),x(20),S(")",t),e=et(!0,!0),jt.forin&&e&&(e.length>1||typeof e[0]!="object"||e[0].value!=="if")&&d("The body of a for in should be wrapped in an if statement to filter unwanted properties from the prototype.",this),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}if(Pt.id!==";")if(Pt.id==="var")S("var"),mn.fud.call(mn);else for(;;){x(0,"for");if(Pt.id!==",")break;M()}O(Gt),S(";"),Pt.id!==";"&&(x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20))),O(Gt),S(";"),Pt.id===";"&&m("Expected '{a}' and instead saw '{b}'.",Pt,")",";");if(Pt.id!==")")for(;;){x(0,"for");if(Pt.id!==",")break;M()}return S(")",t),C(qt,Gt),et(!0,!0),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}).labelled=!0,P("break",function(){var e=Pt.value;return wt["(breakage)"]===0&&d("Unexpected '{a}'.",Pt,this.value),jt.asi||O(this),Pt.id!==";"&&Gt.line===Pt.line&&(wt[e]!=="label"?d("'{a}' is not a statement label.",Pt,e):Wt[e]!==wt&&d("'{a}' is out of scope.",Pt,e),this.first=Pt,S()),Q("break"),this}).exps=!0,P("continue",function(){var e=Pt.value;return wt["(breakage)"]===0&&d("Unexpected '{a}'.",Pt,this.value),jt.asi||O(this),Pt.id!==";"?Gt.line===Pt.line&&(wt[e]!=="label"?d("'{a}' is not a statement label.",Pt,e):Wt[e]!==wt&&d("'{a}' is out of scope.",Pt,e),this.first=Pt,S()):wt["(loopage)"]||d("Unexpected '{a}'.",Pt,this.value),Q("continue"),this}).exps=!0,P("return",function(){return this.line===Pt.line?(Pt.id==="(regexp)"&&d("Wrap the /regexp/ literal in parens to disambiguate the slash operator."),Pt.id!==";"&&!Pt.reach&&(k(Gt,Pt),E().value==="="&&!jt.boss&&v("Did you mean to return a conditional instead of an assignment?",Gt.line,Gt.character+1),this.first=x(0))):jt.asi||O(this),Q("return"),this}).exps=!0,P("throw",function(){return O(this),k(Gt,Pt),this.first=x(20),Q("throw"),this}).exps=!0,I("class"),I("const"),I("enum"),I("export"),I("extends"),I("import"),I("super"),I("let"),I("yield"),I("implements"),I("interface"),I("package"),I("private"),I("protected"),I("public"),I("static");var gn=function(e,s,o){var u,a,l,h,p,m={};s&&s.scope?r.scope=s.scope:(r.errors=[],r.undefs=[],r.internals=[],r.blacklist={},r.scope="(main)"),Ft=Object.create(Vt),gt=Object.create(null),f(Ft,o||{});if(s){u=s.predef,u&&(!Array.isArray(u)&&typeof u=="object"&&(u=Object.keys(u)),u.forEach(function(e){var t;e[0]==="-"?(t=e.slice(1),r.blacklist[t]=t):Ft[e]=!0})),p=Object.keys(s);for(h=0;h<p.length;h++)m[p[h]]=s[p[h]],p[h]==="newcap"&&s[p[h]]===!1&&(m["(explicitNewcap)"]=!0),p[h]==="indent"&&(m.white=!0)}jt=m,jt.indent=jt.indent||4,jt.maxerr=jt.maxerr||50,Qt="";for(a=0;a<jt.indent;a+=1)Qt+=" ";Ct=1,xt=Object.create(Ft),Wt=xt,wt={"(global)":!0,"(name)":"(global)","(scope)":Wt,"(breakage)":0,"(loopage)":0,"(tokens)":{},"(metrics)":ot(Pt)},St=[wt],Zt=[],Xt=null,Mt={},_t=null,Tt={},Nt=!1,Ot=[],kt=!1,tn=0,At=[],Yt=[];if(!i(e)&&!Array.isArray(e))return g("Input is neither a string nor an array of strings.",0),!1;if(i(e)&&/^\s*$/g.test(e))return g("Input is an empty string.",0),!1;if(e.length===0)return g("Input is an empty array.",0),!1;vn.init(e),It=!0,Jt={},qt=Gt=Pt=Kt["(begin)"];for(var y in s)t(s,y)&&n(y,Gt);c(),f(Ft,o||{}),M.first=!0,Ut=undefined;try{S();switch(Pt.id){case"{":case"[":jt.laxbreak=!0,kt=!0,at();break;default:Z(),Jt["use strict"]&&!jt.globalstrict&&d('Use the function form of "use strict".',qt),Y()}S(Pt&&Pt.value!=="."?"(end)":undefined);var b=function(e,t){do{if(typeof t[e]=="string")return t[e]==="unused"?t[e]="var":t[e]==="unction"&&(t[e]="closure"),!0;t=t["(context)"]}while(t);return!1},w=function(e,t){if(!Tt[e])return;var n=[];for(var r=0;r<Tt[e].length;r+=1)Tt[e][r]!==t&&n.push(Tt[e][r]);n.length===0?delete Tt[e]:Tt[e]=n},E=function(e,t){var n=t.line,r=t.character;jt.unused&&v("'{a}' is defined but never used.",n,r,e),Yt.push({name:e,line:n,character:r})},x=function(e,t){var n=e[t],r=e["(tokens)"][t];if(t.charAt(0)==="(")return;if(n!=="unused"&&n!=="unction")return;if(e["(params)"]&&e["(params)"].indexOf(t)!==-1)return;E(t,r)};for(a=0;a<r.undefs.length;a+=1)l=r.undefs[a].slice(0),b(l[2].value,l[0])?w(l[2].value,l[2].line):d.apply(d,l.slice(1));St.forEach(function(e){for(var n in e)t(e,n)&&x(e,n);if(!e["(params)"])return;var r=e["(params)"].slice(),i=r.pop(),s;while(i){s=e[i];if(i==="undefined")return;if(s!=="unused"&&s!=="unction")return;E(i,e["(tokens)"][i]),i=r.pop()}});for(var T in gt)t(gt,T)&&!t(xt,T)&&E(T,gt[T])}catch(N){if(N){var C=Pt||{};r.errors.push({raw:N.raw,reason:N.message,line:N.line||C.line,character:N.character||C.from},null)}}if(r.scope==="(main)"){s=s||{};for(a=0;a<r.internals.length;a+=1)l=r.internals[a],s.scope=l.elem,gn(l.value,s,o)}return r.errors.length===0};return gn.data=function(){var e={functions:[],options:jt},n=[],r=[],i,s,o,u,a,f;gn.errors.length&&(e.errors=gn.errors),kt&&(e.json=!0);for(a in Tt)t(Tt,a)&&n.push({name:a,line:Tt[a]});n.length>0&&(e.implieds=n),Zt.length>0&&(e.urls=Zt),f=Object.keys(Wt),f.length>0&&(e.globals=f);for(o=1;o<St.length;o+=1){s=St[o],i={};for(u=0;u<Et.length;u+=1)i[Et[u]]=[];for(u=0;u<Et.length;u+=1)i[Et[u]].length===0&&delete i[Et[u]];i.name=s["(name)"],i.param=s["(params)"],i.line=s["(line)"],i.character=s["(character)"],i.last=s["(last)"],i.lastcharacter=s["(lastcharacter)"],e.functions.push(i)}Yt.length>0&&(e.unused=Yt),r=[];for(a in Mt)if(typeof Mt[a]=="number"){e.member=Mt;break}return e},gn.jshint=gn,gn}();typeof t=="object"&&t&&(t.JSHINT=r)})
4041 ^
4042
4043./lib/viewers/text/worker-javascript.js:1: WARNING - Suspicious code. This code lacks side-effects. Is there a bug?
4044"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/javascript_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/javascript/jshint"],function(require,exports,module){function startRegex(e){return RegExp("^("+e.join("|")+")")}var oop=require("../lib/oop"),Mirror=require("../worker/mirror").Mirror,lint=require("./javascript/jshint").JSHINT,disabledWarningsRe=startRegex(["Bad for in variable '(.+)'.",'Missing "use strict"']),errorsRe=startRegex(["Unexpected","Expected ","Confusing (plus|minus)","\\{a\\} unterminated regular expression","Unclosed ","Unmatched ","Unbegun comment","Bad invocation","Missing space after","Missing operator at"]),infoRe=startRegex(["Expected an assignment","Bad escapement of EOL","Unexpected comma","Unexpected space","Missing radix parameter.","A leading decimal point can","\\['{a}'\\] is better written in dot notation.","'{a}' used out of scope"]),JavaScriptWorker=exports.JavaScriptWorker=function(e){Mirror.call(this,e),this.setTimeout(500),this.setOptions()};oop.inherits(JavaScriptWorker,Mirror),function(){this.setOptions=function(e){this.options=e||{es5:!0,esnext:!0,devel:!0,browser:!0,node:!0,laxcomma:!0,laxbreak:!0,lastsemic:!0,onevar:!1,passfail:!1,maxerr:100,expr:!0,multistr:!0,globalstrict:!0},this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.changeOptions=function(e){oop.mixin(this.options,e),this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.isValidJS=function(str){try{eval("throw 0;"+str)}catch(e){if(e===0)return!0}return!1},this.onUpdate=function(){var e=this.doc.getValue();e=e.replace(/^#!.*\n/,"\n");if(!e){this.sender.emit("jslint",[]);return}var t=[],n=this.isValidJS(e)?"warning":"error";lint(e,this.options);var r=lint.errors,i=!1;for(var s=0;s<r.length;s++){var o=r[s];if(!o)continue;var u=o.raw,a="warning";if(u=="Missing semicolon."){var f=o.evidence.substr(o.character);f=f.charAt(f.search(/\S/)),n=="error"&&f&&/[\w\d{(['"]/.test(f)?(o.reason='Missing ";" before statement',a="error"):a="info"}else{if(disabledWarningsRe.test(u))continue;infoRe.test(u)?a="info":errorsRe.test(u)?(i=!0,a=n):u=="'{a}' is not defined."?a="warning":u=="'{a}' is defined but never used."&&(a="info")}t.push({row:o.line-1,column:o.character-1,text:o.reason,type:a,raw:u}),i}this.sender.emit("jslint",t)}}.call(JavaScriptWorker.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/javascript/jshint",["require","exports","module"],function(e,t,n){var r=function(){function e(){}function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function n(e,t){ht[e]===undefined&&ct[e]===undefined&&d("Bad option: '"+e+"'.",t)}function i(e){return Object.prototype.toString.call(e)==="[object String]"}function s(e){return e>="a"&&e<="z?"||e>="A"&&e<="Z?"}function o(e){return e>="0"&&e<="9"}function u(e,t){return e?!e.identifier||e.value!==t?!1:!0:!1}function a(e,t){return e.replace(/\{([^{}]*)\}/g,function(e,n){var r=t[n];return typeof r=="string"||typeof r=="number"?r:e})}function f(e,n){var i;for(i in n)t(n,i)&&!t(r.blacklist,i)&&(e[i]=n[i])}function l(){Object.keys(r.blacklist).forEach(function(e){delete Ft[e]})}function c(){jt.couch&&f(Ft,mt),jt.rhino&&f(Ft,zt),jt.prototypejs&&f(Ft,Rt),jt.node&&(f(Ft,Ht),jt.globalstrict=!0),jt.devel&&f(Ft,yt),jt.dojo&&f(Ft,bt),jt.browser&&f(Ft,vt),jt.nonstandard&&f(Ft,$t),jt.jquery&&f(Ft,Lt),jt.mootools&&f(Ft,Dt),jt.worker&&f(Ft,nn),jt.wsh&&f(Ft,rn),jt.esnext&&en(),jt.globalstrict&&jt.strict!==!1&&(jt.strict=!0),jt.yui&&f(Ft,sn)}function h(e,t,n){var r=Math.floor(t/At.length*100);throw{name:"JSHintError",line:t,character:n,message:e+" ("+r+"% scanned).",raw:e}}function p(e,t,n,i){return r.undefs.push([e,t,n,i])}function d(e,t,n,i,s,o){var u,f,l;return t=t||Pt,t.id==="(end)"&&(t=Gt),f=t.line||0,u=t.from||0,l={id:"(error)",raw:e,evidence:At[f-1]||"",line:f,character:u,scope:r.scope,a:n,b:i,c:s,d:o},l.reason=a(e,l),r.errors.push(l),jt.passfail&&h("Stopping. ",f,u),tn+=1,tn>=jt.maxerr&&h("Too many errors.",f,u),l}function v(e,t,n,r,i,s,o){return d(e,{line:t,from:n},r,i,s,o)}function m(e,t,n,r,i,s){d(e,t,n,r,i,s)}function g(e,t,n,r,i,s,o){return m(e,{line:t,from:n},r,i,s,o)}function y(e,t){var n;return n={id:"(internal)",elem:e,value:t},r.internals.push(n),n}function b(e,n,r){e==="hasOwnProperty"&&d("'hasOwnProperty' is a really bad name."),n==="exception"&&t(wt["(context)"],e)&&wt[e]!==!0&&!jt.node&&d("Value of '{a}' may be overwritten in IE.",Pt,e),t(wt,e)&&!wt["(global)"]&&(wt[e]===!0?jt.latedef&&d("'{a}' was used before it was defined.",Pt,e):!jt.shadow&&n!=="exception"&&d("'{a}' is already defined.",Pt,e)),wt[e]=n,r&&(wt["(tokens)"][e]=r),wt["(global)"]?(xt[e]=wt,t(Tt,e)&&(jt.latedef&&d("'{a}' was used before it was defined.",Pt,e),delete Tt[e])):Wt[e]=wt}function w(){var e=Pt,i=e.value,s=jt.quotmark,o={},u,a,h,p,d,v,g;switch(i){case"*/":m("Unbegun comment.");break;case"/*members":case"/*member":i="/*members",_t||(_t={}),a=_t,jt.quotmark=!1;break;case"/*jshint":case"/*jslint":a=jt,h=ct;break;case"/*global":a=o;break;default:m("What?")}p=vn.token();for(;;){g=!1;var y;for(;;){if(p.type==="special"&&p.value==="*/"){y=!0;break}if(p.id!=="(endline)"&&p.id!==",")break;p=vn.token()}if(y)break;i==="/*global"&&p.value==="-"&&(g=!0,p=vn.token()),p.type!=="(string)"&&p.type!=="(identifier)"&&i!=="/*members"&&m("Bad option.",p),v=vn.token();if(v.id===":"){v=vn.token(),a===_t&&m("Expected '{a}' and instead saw '{b}'.",p,"*/",":"),i==="/*jshint"&&n(p.value,p);var b=["maxstatements","maxparams","maxdepth","maxcomplexity","maxerr","maxlen","indent"];if(b.indexOf(p.value)>-1&&(i==="/*jshint"||i==="/*jslint"))u=+v.value,(typeof u!="number"||!isFinite(u)||u<=0||Math.floor(u)!==u)&&m("Expected a small integer and instead saw '{a}'.",v,v.value),p.value==="indent"&&(a.white=!0),a[p.value]=u;else if(p.value==="validthis")wt["(global)"]?m("Option 'validthis' can't be used in a global scope."):v.value==="true"||v.value==="false"?a[p.value]=v.value==="true":m("Bad option value.",v);else if(p.value==="quotmark"&&i==="/*jshint")switch(v.value){case"true":a.quotmark=!0;break;case"false":a.quotmark=!1;break;case"double":case"single":a.quotmark=v.value;break;default:m("Bad option value.",v)}else v.value==="true"||v.value==="false"?(i==="/*jslint"?(d=dt[p.value]||p.value,a[d]=v.value==="true",pt[d]!==undefined&&(a[d]=!a[d])):a[p.value]=v.value==="true",p.value==="newcap"&&(a["(explicitNewcap)"]=!0)):m("Bad option value.",v);p=vn.token()}else(i==="/*jshint"||i==="/*jslint")&&m("Missing option value.",p),a[p.value]=!1,i==="/*global"&&g===!0&&(r.blacklist[p.value]=p.value,l()),p=v}i==="/*members"&&(jt.quotmark=s),f(Ft,o);for(var w in o)t(o,w)&&(gt[w]=e);h&&c()}function E(e){var t=e||0,n=0,r;while(n<=t)r=Ot[n],r||(r=Ot[n]=vn.token()),n+=1;return r}function S(e,t){switch(Gt.id){case"(number)":Pt.id==="."&&d("A dot following a number can be confused with a decimal point.",Gt);break;case"-":(Pt.id==="-"||Pt.id==="--")&&d("Confusing minusses.");break;case"+":(Pt.id==="+"||Pt.id==="++")&&d("Confusing plusses.")}if(Gt.type==="(string)"||Gt.identifier)ft=Gt.value;e&&Pt.id!==e&&(t?Pt.id==="(end)"?d("Unmatched '{a}'.",t,t.id):d("Expected '{a}' to match '{b}' from line {c} and instead saw '{d}'.",Pt,e,t.id,t.line,Pt.value):(Pt.type!=="(identifier)"||Pt.value!==e)&&d("Expected '{a}' and instead saw '{b}'.",Pt,e,Pt.value)),qt=Gt,Gt=Pt;for(;;){Pt=Ot.shift()||vn.token();if(Pt.id==="(end)"||Pt.id==="(error)")return;if(Pt.type==="special")w();else if(Pt.id!=="(endline)")break}}function x(e,t){var n,r=!1,i=!1;Pt.id==="(end)"&&m("Unexpected early end of program.",Gt),S(),t&&(ft="anonymous",wt["(verb)"]=Gt.value);if(t===!0&&Gt.fud)n=Gt.fud();else{if(Gt.nud)n=Gt.nud();else{if(Pt.type==="(number)"&&Gt.id===".")return d("A leading decimal point can be confused with a dot: '.{a}'.",Gt,Pt.value),S(),Gt;m("Expected an identifier and instead saw '{a}'.",Gt,Gt.id)}while(e<Pt.lbp)r=Gt.value==="Array",i=Gt.value==="Object",n&&(n.value||n.first&&n.first.value)&&(n.value!=="new"||n.first&&n.first.value&&n.first.value===".")&&(r=!1,n.value!==Gt.value&&(i=!1)),S(),r&&Gt.id==="("&&Pt.id===")"&&d("Use the array literal notation [].",Gt),i&&Gt.id==="("&&Pt.id===")"&&d("Use the object literal notation {}.",Gt),Gt.led?n=Gt.led(n):m("Expected an operator and instead saw '{a}'.",Gt,Gt.id)}return n}function T(e,t){e=e||Gt,t=t||Pt,jt.white&&e.character!==t.from&&e.line===t.line&&(e.from+=e.character-e.from,d("Unexpected space after '{a}'.",e,e.value))}function N(e,t){e=e||Gt,t=t||Pt,jt.white&&(e.character!==t.from||e.line!==t.line)&&d("Unexpected space before '{a}'.",t,t.value)}function C(e,t){e=e||Gt,t=t||Pt,jt.white&&!e.comment&&e.line===t.line&&T(e,t)}function k(e,t){if(jt.white){e=e||Gt,t=t||Pt;if(e.value===";"&&t.value===";")return;e.line===t.line&&e.character===t.from&&(e.from+=e.character-e.from,d("Missing space after '{a}'.",e,e.value))}}function L(e,t){e=e||Gt,t=t||Pt,!jt.laxbreak&&e.line!==t.line?d("Bad line breaking before '{a}'.",t,t.id):jt.white&&(e=e||Gt,t=t||Pt,e.character===t.from&&(e.from+=e.character-e.from,d("Missing space after '{a}'.",e,e.value)))}function A(e){var t;jt.white&&Pt.id!=="(end)"&&(t=Ct+(e||0),Pt.from!==t&&d("Expected '{a}' to have an indentation at {b} instead at {c}.",Pt,Pt.value,t,Pt.from))}function O(e){e=e||Gt,e.line!==Pt.line&&d("Line breaking error '{a}'.",e,e.value)}function M(){Gt.line!==Pt.line?jt.laxcomma||(M.first&&(d("Comma warnings can be turned off with 'laxcomma'"),M.first=!1),d("Bad line breaking before '{a}'.",Gt,Pt.id)):!Gt.comment&&Gt.character!==Pt.from&&jt.white&&(Gt.from+=Gt.character-Gt.from,d("Unexpected space after '{a}'.",Gt,Gt.value)),S(","),k(Gt,Pt)}function _(e,t){var n=Kt[e];if(!n||typeof n!="object")Kt[e]=n={id:e,lbp:t,value:e};return n}function D(e){return _(e,0)}function P(e,t){var n=D(e);return n.identifier=n.reserved=!0,n.fud=t,n}function H(e,t){var n=P(e,t);return n.block=!0,n}function B(e){var t=e.id.charAt(0);if(t>="a"&&t<="z"||t>="A"&&t<="Z")e.identifier=e.reserved=!0;return e}function j(e,t){var n=_(e,150);return B(n),n.nud=typeof t=="function"?t:function(){this.right=x(150),this.arity="unary";if(this.id==="++"||this.id==="--")jt.plusplus?d("Unexpected use of '{a}'.",this,this.id):(!this.right.identifier||this.right.reserved)&&this.right.id!=="."&&this.right.id!=="["&&d("Bad operand.",this);return this},n}function F(e,t){var n=D(e);return n.type=e,n.nud=t,n}function I(e,t){var n=F(e,t);return n.identifier=n.reserved=!0,n}function q(e,t){return I(e,function(){return typeof t=="function"&&t(this),this})}function R(e,t,n,r){var i=_(e,n);return B(i),i.led=function(i){return r||(L(qt,Gt),k(Gt,Pt)),e==="in"&&i.id==="!"&&d("Confusing use of '{a}'.",i,"!"),typeof t=="function"?t(i,this):(this.left=i,this.right=x(n),this)},i}function U(e,t){var n=_(e,100);return n.led=function(e){L(qt,Gt),k(Gt,Pt);var n=x(100);return u(e,"NaN")||u(n,"NaN")?d("Use the isNaN function to compare with NaN.",this):t&&t.apply(this,[e,n]),e.id==="!"&&d("Confusing use of '{a}'.",e,"!"),n.id==="!"&&d("Confusing use of '{a}'.",n,"!"),this.left=e,this.right=n,this},n}function z(e){return e&&(e.type==="(number)"&&+e.value===0||e.type==="(string)"&&e.value===""||e.type==="null"&&!jt.eqnull||e.type==="true"||e.type==="false"||e.type==="undefined")}function W(e){return _(e,20).exps=!0,R(e,function(e,t){t.left=e,Ft[e.value]===!1&&Wt[e.value]["(global)"]===!0?d("Read only.",e):e["function"]&&d("'{a}' is a function.",e,e.value);if(e){jt.esnext&&wt[e.value]==="const"&&d("Attempting to override '{a}' which is a constant",e,e.value);if(e.id==="."||e.id==="[")return(!e.left||e.left.value==="arguments")&&d("Bad assignment.",t),t.right=x(19),t;if(e.identifier&&!e.reserved)return wt[e.value]==="exception"&&d("Do not assign to the exception parameter.",e),t.right=x(19),t;e===Kt["function"]&&d("Expected an identifier in an assignment and instead saw a function invocation.",Gt)}m("Bad assignment.",t)},20)}function X(e,t,n){var r=_(e,n);return B(r),r.led=typeof t=="function"?t:function(e){return jt.bitwise&&d("Unexpected use of '{a}'.",this,this.id),this.left=e,this.right=x(n),this},r}function V(e){return _(e,20).exps=!0,R(e,function(e,t){jt.bitwise&&d("Unexpected use of '{a}'.",t,t.id),k(qt,Gt),k(Gt,Pt);if(e)return e.id==="."||e.id==="["||e.identifier&&!e.reserved?(x(19),t):(e===Kt["function"]&&d("Expected an identifier in an assignment, and instead saw a function invocation.",Gt),t);m("Bad assignment.",t)},20)}function $(e){var t=_(e,150);return t.led=function(e){return jt.plusplus?d("Unexpected use of '{a}'.",this,this.id):(!e.identifier||e.reserved)&&e.id!=="."&&e.id!=="["&&d("Bad operand.",this),this.left=e,this},t}function J(e){if(Pt.identifier)return S(),Gt.reserved&&!jt.es5&&(!e||Gt.value!=="undefined")&&d("Expected an identifier and instead saw '{a}' (a reserved word).",Gt,Gt.id),Gt.value}function K(e){var t=J(e);if(t)return t;Gt.id==="function"&&Pt.id==="("?d("Missing name in function declaration."):m("Expected an identifier and instead saw '{a}'.",Pt,Pt.value)}function Q(e){var t=0,n;if(Pt.id!==";"||Bt)return;for(;;){n=E(t);if(n.reach)return;if(n.id!=="(endline)"){if(n.id==="function"){if(!jt.latedef)break;d("Inner functions should be listed at the top of the outer function.",n);break}d("Unreachable '{a}' after '{b}'.",n,n.value,e);break}t+=1}}function G(e){var t=Ct,n,r=Wt,i=Pt;if(i.id===";"){S(";");return}i.identifier&&!i.reserved&&E().id===":"&&(S(),S(":"),Wt=Object.create(r),b(i.value,"label"),!Pt.labelled&&Pt.value!=="{"&&d("Label '{a}' on {b} statement.",Pt,i.value,Pt.value),pn.test(i.value+":")&&d("Label '{a}' looks like a javascript url.",i,i.value),Pt.label=i.value,i=Pt);if(i.id==="{"){et(!0,!0);return}e||A(),n=x(0,!0);if(!i.block){!jt.expr&&(!n||!n.exps)?d("Expected an assignment or function call and instead saw an expression.",Gt):jt.nonew&&n.id==="("&&n.left.id==="new"&&d("Do not use 'new' for side effects.",i);if(Pt.id===",")return M();Pt.id!==";"?jt.asi||(!jt.lastsemic||Pt.id!=="}"||Pt.line!==Gt.line)&&v("Missing semicolon.",Gt.line,Gt.character):(T(Gt,Pt),S(";"),k(Gt,Pt))}return Ct=t,Wt=r,n}function Y(e){var t=[],n;while(!Pt.reach&&Pt.id!=="(end)")Pt.id===";"?(n=E(),(!n||n.id!=="(")&&d("Unnecessary semicolon."),S(";")):t.push(G(e===Pt.line));return t}function Z(){var e,t,n;for(;;){if(Pt.id==="(string)"){t=E(0);if(t.id==="(endline)"){e=1;do n=E(e),e+=1;while(n.id==="(endline)");if(n.id!==";"){if(n.id!=="(string)"&&n.id!=="(number)"&&n.id!=="(regexp)"&&n.identifier!==!0&&n.id!=="}")break;d("Missing semicolon.",Pt)}else t=n}else if(t.id==="}")d("Missing semicolon.",t);else if(t.id!==";")break;A(),S(),Jt[Gt.value]&&d('Unnecessary directive "{a}".',Gt,Gt.value),Gt.value==="use strict"&&(jt["(explicitNewcap)"]||(jt.newcap=!0),jt.undef=!0),Jt[Gt.value]=!0,t.id===";"&&S(";");continue}break}}function et(e,n,r){var i,s=Nt,o=Ct,u,a=Wt,f,l,c;Nt=e;if(!e||!jt.funcscope)Wt=Object.create(Wt);k(Gt,Pt),f=Pt;var h=wt["(metrics)"];h.nestedBlockDepth+=1,h.verifyMaxNestedBlockDepthPerFunction();if(Pt.id==="{"){S("{"),l=Gt.line;if(Pt.id!=="}"){Ct+=jt.indent;while(!e&&Pt.from>Ct)Ct+=jt.indent;if(r){u={};for(c in Jt)t(Jt,c)&&(u[c]=Jt[c]);Z(),jt.strict&&wt["(context)"]["(global)"]&&!u["use strict"]&&!Jt["use strict"]&&d('Missing "use strict" statement.')}i=Y(l),h.statementCount+=i.length,r&&(Jt=u),Ct-=jt.indent,l!==Pt.line&&A()}else l!==Pt.line&&A();S("}",f),Ct=o}else e?((!n||jt.curly)&&d("Expected '{a}' and instead saw '{b}'.",Pt,"{",Pt.value),Bt=!0,Ct+=jt.indent,i=[G(Pt.line===Gt.line)],Ct-=jt.indent,Bt=!1):m("Expected '{a}' and instead saw '{b}'.",Pt,"{",Pt.value);wt["(verb)"]=null;if(!e||!jt.funcscope)Wt=a;return Nt=s,e&&jt.noempty&&(!i||i.length===0)&&d("Empty block."),h.nestedBlockDepth-=1,i}function tt(e){_t&&typeof _t[e]!="boolean"&&d("Unexpected /*member '{a}'.",Gt,e),typeof Mt[e]=="number"?Mt[e]+=1:Mt[e]=1}function nt(e){var t=e.value,n=e.line,r=Tt[t];typeof r=="function"&&(r=!1),r?r[r.length-1]!==n&&r.push(n):(r=[n],Tt[t]=r)}function rt(){var e=J(!0);return e||(Pt.id==="(string)"?(e=Pt.value,S()):Pt.id==="(number)"&&(e=Pt.value.toString(),S())),e}function it(){var e=Pt,t=[],n;S("("),C();if(Pt.id===")"){S(")");return}for(;;){n=K(!0),t.push(n),b(n,"unused",Gt);if(Pt.id!==",")return S(")",e),C(qt,Gt),t;M()}}function st(e,t){var n,r=jt,i=Wt;return jt=Object.create(jt),Wt=Object.create(Wt),wt={"(name)":e||'"'+ft+'"',"(line)":Pt.line,"(character)":Pt.character,"(context)":wt,"(breakage)":0,"(loopage)":0,"(metrics)":ot(Pt),"(scope)":Wt,"(statement)":t,"(tokens)":{}},n=wt,Gt.funct=wt,St.push(wt),e&&b(e,"function"),wt["(params)"]=it(),wt["(metrics)"].verifyMaxParametersPerFunction(wt["(params)"]),et(!1,!1,!0),wt["(metrics)"].verifyMaxStatementsPerFunction(),wt["(metrics)"].verifyMaxComplexityPerFunction(),Wt=i,jt=r,wt["(last)"]=Gt.line,wt["(lastcharacter)"]=Gt.character,wt=wt["(context)"],n}function ot(e){return{statementCount:0,nestedBlockDepth:-1,ComplexityCount:1,verifyMaxStatementsPerFunction:function(){if(jt.maxstatements&&this.statementCount>jt.maxstatements){var t="Too many statements per function ("+this.statementCount+").";d(t,e)}},verifyMaxParametersPerFunction:function(t){t=t||[];if(jt.maxparams&&t.length>jt.maxparams){var n="Too many parameters per function ("+t.length+").";d(n,e)}},verifyMaxNestedBlockDepthPerFunction:function(){if(jt.maxdepth&&this.nestedBlockDepth>0&&this.nestedBlockDepth===jt.maxdepth+1){var e="Blocks are nested too deeply ("+this.nestedBlockDepth+").";d(e)}},verifyMaxComplexityPerFunction:function(){var t=jt.maxcomplexity,n=this.ComplexityCount;if(t&&n>t){var r="Cyclomatic complexity is too high per function ("+n+").";d(r,e)}}}}function ut(){wt["(metrics)"].ComplexityCount+=1}function at(){function e(){var e={},t=Pt;S("{");if(Pt.id!=="}")for(;;){if(Pt.id==="(end)")m("Missing '}' to match '{' from line {a}.",Pt,t.line);else{if(Pt.id==="}"){d("Unexpected comma.",Gt);break}Pt.id===","?m("Unexpected comma.",Pt):Pt.id!=="(string)"&&d("Expected a string and instead saw {a}.",Pt,Pt.value)}e[Pt.value]===!0?d("Duplicate key '{a}'.",Pt,Pt.value):Pt.value==="__proto__"&&!jt.proto||Pt.value==="__iterator__"&&!jt.iterator?d("The '{a}' key may produce unexpected results.",Pt,Pt.value):e[Pt.value]=!0,S(),S(":"),at();if(Pt.id!==",")break;S(",")}S("}")}function t(){var e=Pt;S("[");if(Pt.id!=="]")for(;;){if(Pt.id==="(end)")m("Missing ']' to match '[' from line {a}.",Pt,e.line);else{if(Pt.id==="]"){d("Unexpected comma.",Gt);break}Pt.id===","&&m("Unexpected comma.",Pt)}at();if(Pt.id!==",")break;S(",")}S("]")}switch(Pt.id){case"{":e();break;case"[":t();break;case"true":case"false":case"null":case"(number)":case"(string)":S();break;case"-":S("-"),Gt.character!==Pt.from&&d("Unexpected space after '-'.",Gt),T(Gt,Pt),S("(number)");break;default:m("Expected a JSON value.",Pt)}}var ft,lt={"<":!0,"<=":!0,"==":!0,"===":!0,"!==":!0,"!=":!0,">":!0,">=":!0,"+":!0,"-":!0,"*":!0,"/":!0,"%":!0},ct={asi:!0,bitwise:!0,boss:!0,browser:!0,camelcase:!0,couch:!0,curly:!0,debug:!0,devel:!0,dojo:!0,eqeqeq:!0,eqnull:!0,es5:!0,esnext:!0,evil:!0,expr:!0,forin:!0,funcscope:!0,globalstrict:!0,immed:!0,iterator:!0,jquery:!0,lastsemic:!0,latedef:!0,laxbreak:!0,laxcomma:!0,loopfunc:!0,mootools:!0,multistr:!0,newcap:!0,noarg:!0,node:!0,noempty:!0,nonew:!0,nonstandard:!0,nomen:!0,onevar:!0,onecase:!0,passfail:!0,plusplus:!0,proto:!0,prototypejs:!0,regexdash:!0,regexp:!0,rhino:!0,undef:!0,unused:!0,scripturl:!0,shadow:!0,smarttabs:!0,strict:!0,sub:!0,supernew:!0,trailing:!0,validthis:!0,withstmt:!0,white:!0,worker:!0,wsh:!0,yui:!0},ht={maxlen:!1,indent:!1,maxerr:!1,predef:!1,quotmark:!1,scope:!1,maxstatements:!1,maxdepth:!1,maxparams:!1,maxcomplexity:!1},pt={bitwise:!0,forin:!0,newcap:!0,nomen:!0,plusplus:!0,regexp:!0,undef:!0,white:!0,eqeqeq:!0,onevar:!0},dt={eqeq:"eqeqeq",vars:"onevar",windows:"wsh"},vt={ArrayBuffer:!1,ArrayBufferView:!1,Audio:!1,Blob:!1,addEventListener:!1,applicationCache:!1,atob:!1,blur:!1,btoa:!1,clearInterval:!1,clearTimeout:!1,close:!1,closed:!1,DataView:!1,DOMParser:!1,defaultStatus:!1,document:!1,event:!1,FileReader:!1,Float32Array:!1,Float64Array:!1,FormData:!1,focus:!1,frames:!1,getComputedStyle:!1,HTMLElement:!1,HTMLAnchorElement:!1,HTMLBaseElement:!1,HTMLBlockquoteElement:!1,HTMLBodyElement:!1,HTMLBRElement:!1,HTMLButtonElement:!1,HTMLCanvasElement:!1,HTMLDirectoryElement:!1,HTMLDivElement:!1,HTMLDListElement:!1,HTMLFieldSetElement:!1,HTMLFontElement:!1,HTMLFormElement:!1,HTMLFrameElement:!1,HTMLFrameSetElement:!1,HTMLHeadElement:!1,HTMLHeadingElement:!1,HTMLHRElement:!1,HTMLHtmlElement:!1,HTMLIFrameElement:!1,HTMLImageElement:!1,HTMLInputElement:!1,HTMLIsIndexElement:!1,HTMLLabelElement:!1,HTMLLayerElement:!1,HTMLLegendElement:!1,HTMLLIElement:!1,HTMLLinkElement:!1,HTMLMapElement:!1,HTMLMenuElement:!1,HTMLMetaElement:!1,HTMLModElement:!1,HTMLObjectElement:!1,HTMLOListElement:!1,HTMLOptGroupElement:!1,HTMLOptionElement:!1,HTMLParagraphElement:!1,HTMLParamElement:!1,HTMLPreElement:!1,HTMLQuoteElement:!1,HTMLScriptElement:!1,HTMLSelectElement:!1,HTMLStyleElement:!1,HTMLTableCaptionElement:!1,HTMLTableCellElement:!1,HTMLTableColElement:!1,HTMLTableElement:!1,HTMLTableRowElement:!1,HTMLTableSectionElement:!1,HTMLTextAreaElement:!1,HTMLTitleElement:!1,HTMLUListElement:!1,HTMLVideoElement:!1,history:!1,Int16Array:!1,Int32Array:!1,Int8Array:!1,Image:!1,length:!1,localStorage:!1,location:!1,MessageChannel:!1,MessageEvent:!1,MessagePort:!1,moveBy:!1,moveTo:!1,MutationObserver:!1,name:!1,Node:!1,NodeFilter:!1,navigator:!1,onbeforeunload:!0,onblur:!0,onerror:!0,onfocus:!0,onload:!0,onresize:!0,onunload:!0,open:!1,openDatabase:!1,opener:!1,Option:!1,parent:!1,print:!1,removeEventListener:!1,resizeBy:!1,resizeTo:!1,screen:!1,scroll:!1,scrollBy:!1,scrollTo:!1,sessionStorage:!1,setInterval:!1,setTimeout:!1,SharedWorker:!1,status:!1,top:!1,Uint16Array:!1,Uint32Array:!1,Uint8Array:!1,WebSocket:!1,window:!1,Worker:!1,XMLHttpRequest:!1,XMLSerializer:!1,XPathEvaluator:!1,XPathException:!1,XPathExpression:!1,XPathNamespace:!1,XPathNSResolver:!1,XPathResult:!1},mt={require:!1,respond:!1,getRow:!1,emit:!1,send:!1,start:!1,sum:!1,log:!1,exports:!1,module:!1,provides:!1},gt,yt={alert:!1,confirm:!1,console:!1,Debug:!1,opera:!1,prompt:!1},bt={dojo:!1,dijit:!1,dojox:!1,define:!1,require:!1},wt,Et=["closure","exception","global","label","outer","unused","var"],St,xt,Tt,Nt,Ct,kt,Lt={$:!1,jQuery:!1},At,Ot,Mt,_t,Dt={$:!1,$$:!1,Asset:!1,Browser:!1,Chain:!1,Class:!1,Color:!1,Cookie:!1,Core:!1,Document:!1,DomReady:!1,DOMEvent:!1,DOMReady:!1,Drag:!1,Element:!1,Elements:!1,Event:!1,Events:!1,Fx:!1,Group:!1,Hash:!1,HtmlTable:!1,Iframe:!1,IframeShim:!1,InputValidator:!1,instanceOf:!1,Keyboard:!1,Locale:!1,Mask:!1,MooTools:!1,Native:!1,Options:!1,OverText:!1,Request:!1,Scroller:!1,Slick:!1,Slider:!1,Sortables:!1,Spinner:!1,Swiff:!1,Tips:!1,Type:!1,typeOf:!1,URI:!1,Window:!1},Pt,Ht={__filename:!1,__dirname:!1,Buffer:!1,console:!1,exports:!0,GLOBAL:!1,global:!1,module:!1,process:!1,require:!1,setTimeout:!1,clearTimeout:!1,setInterval:!1,clearInterval:!1},Bt,jt,Ft,It,qt,Rt={$:!1,$$:!1,$A:!1,$F:!1,$H:!1,$R:!1,$break:!1,$continue:!1,$w:!1,Abstract:!1,Ajax:!1,Class:!1,Enumerable:!1,Element:!1,Event:!1,Field:!1,Form:!1,Hash:!1,Insertion:!1,ObjectRange:!1,PeriodicalExecuter:!1,Position:!1,Prototype:!1,Selector:!1,Template:!1,Toggle:!1,Try:!1,Autocompleter:!1,Builder:!1,Control:!1,Draggable:!1,Draggables:!1,Droppables:!1,Effect:!1,Sortable:!1,SortableObserver:!1,Sound:!1,Scriptaculous:!1},Ut,zt={defineClass:!1,deserialize:!1,gc:!1,help:!1,importPackage:!1,java:!1,load:!1,loadClass:!1,print:!1,quit:!1,readFile:!1,readUrl:!1,runCommand:!1,seal:!1,serialize:!1,spawn:!1,sync:!1,toint32:!1,version:!1},Wt,Xt,Vt={Array:!1,Boolean:!1,Date:!1,decodeURI:!1,decodeURIComponent:!1,encodeURI:!1,encodeURIComponent:!1,Error:!1,eval:!1,EvalError:!1,Function:!1,hasOwnProperty:!1,isFinite:!1,isNaN:!1,JSON:!1,Map:!1,Math:!1,NaN:!1,Number:!1,Object:!1,parseInt:!1,parseFloat:!1,RangeError:!1,ReferenceError:!1,RegExp:!1,Set:!1,String:!1,SyntaxError:!1,TypeError:!1,URIError:!1,WeakMap:!1},$t={escape:!1,unescape:!1},Jt,Kt={},Qt,Gt,Yt,Zt,en,tn,nn={importScripts:!0,postMessage:!0,self:!0},rn={ActiveXObject:!0,Enumerator:!0,GetObject:!0,ScriptEngine:!0,ScriptEngineBuildVersion:!0,ScriptEngineMajorVersion:!0,ScriptEngineMinorVersion:!0,VBArray:!0,WSH:!0,WScript:!0,XDomainRequest:!0},sn={YUI:!1,Y:!1,YUI_config:!1},on,un,an,fn,ln,cn,hn,pn,dn;(function(){on=/@cc|<\/?|script|\]\s*\]|<\s*!|&lt/i,un=/[\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/,an=/^\s*([(){}\[.,:;'"~\?\]#@]|==?=?|\/=(?!(\S*\/[gim]?))|\/(\*(jshint|jslint|members?|global)?|\/)?|\*[\/=]?|\+(?:=|\++)?|-(?:=|-+)?|%=?|&[&=]?|\|[|=]?|>>?>?=?|<([\/=!]|\!(\[|--)?|<=?)?|\^=?|\!=?=?|[a-zA-Z_$][a-zA-Z0-9_$]*|[0-9]+([xX][0-9a-fA-F]+|\.[0-9]*)?([eE][+\-]?[0-9]+)?)/,fn=/[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/,ln=/[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,cn=/\*\//,hn=/^([a-zA-Z_$][a-zA-Z0-9_$]*)$/,pn=/^(?:javascript|jscript|ecmascript|vbscript|mocha|livescript)\s*:/i,dn=/^\s*\/\*\s*falls\sthrough\s*\*\/\s*$/})(),typeof Array.isArray!="function"&&(Array.isArray=function(e){return Object.prototype.toString.apply(e)==="[object Array]"}),Array.prototype.forEach||(Array.prototype.forEach=function(e,t){var n=this.length;for(var r=0;r<n;r++)e.call(t||this,this[r],r,this)}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){if(this===null||this===undefined)throw new TypeError;var t=new Object(this),n=t.length>>>0;if(n===0)return-1;var r=0;arguments.length>0&&(r=Number(arguments[1]),r!=r?r=0:r!==0&&r!=Infinity&&r!=-Infinity&&(r=(r>0||-1)*Math.floor(Math.abs(r))));if(r>=n)return-1;var i=r>=0?r:Math.max(n-Math.abs(r),0);for(;i<n;i++)if(i in t&&t[i]===e)return i;return-1}),typeof Object.create!="function"&&(Object.create=function(t){return e.prototype=t,new e}),typeof Object.keys!="function"&&(Object.keys=function(e){var n=[],r;for(r in e)t(e,r)&&n.push(r);return n});var vn=function(){function e(){var e,t,n;return u>=At.length?!1:(r=1,a=At[u],u+=1,jt.smarttabs?(t=a.match(/(\/\/)? \t/),e=t&&!t[1]?0:-1):e=a.search(/ \t|\t [^\*]/),e>=0&&v("Mixed spaces and tabs.",u,e+1),a=a.replace(/\t/g,Qt),e=a.search(un),e>=0&&v("Unsafe character.",u,e),jt.maxlen&&jt.maxlen<a.length&&v("Line too long.",u,a.length),n=jt.trailing&&a.match(/^(.*?)\s+$/),n&&!/^\s+$/.test(a)&&v("Trailing whitespace.",u,n[1].length+1),!0)}function n(e,n){function s(e){if(!jt.proto&&e==="__proto__"){v("The '{a}' property is deprecated.",u,i,e);return}if(!jt.iterator&&e==="__iterator__"){v("'{a}' is only available in JavaScript 1.7.",u,i,e);return}var t=/^(_+.*|.*_+)$/.test(e);if(jt.nomen&&t&&e!=="_"){if(jt.node&&Gt.id!=="."&&/^(__dirname|__filename)$/.test(e))return;v("Unexpected {a} in '{b}'.",u,i,"dangling '_'",e);return}jt.camelcase&&e.replace(/^_+/,"").indexOf("_")>-1&&!e.match(/^[A-Z0-9_]*$/)&&v("Identifier '{a}' is not in camel case.",u,i,n)}var o,a;return e==="(color)"||e==="(range)"?a={type:e}:e==="(punctuator)"||e==="(identifier)"&&t(Kt,n)?a=Kt[n]||Kt["(error)"]:a=Kt[e],a=Object.create(a),(e==="(string)"||e==="(range)")&&!jt.scripturl&&pn.test(n)&&v("Script URL.",u,i),e==="(identifier)"&&(a.identifier=!0,s(n)),a.value=n,a.line=u,a.character=r,a.from=i,o=a.id,o!=="(endline)"&&(It=o&&("(,=:[!&|?{};".indexOf(o.charAt(o.length-1))>=0||o==="return"||o==="case")),a}var r,i,u,a;return{init:function(t){typeof t=="string"?At=t.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split("\n"):At=t,At[0]&&At[0].substr(0,2)==="#!"&&(At[0]=""),u=0,e(),i=1},range:function(e,t){var s,o="";i=r,a.charAt(0)!==e&&g("Expected '{a}' and instead saw '{b}'.",u,r,e,a.charAt(0));for(;;){a=a.slice(1),r+=1,s=a.charAt(0);switch(s){case"":g("Missing '{a}'.",u,r,s);break;case t:return a=a.slice(1),r+=1,n("(range)",o);case"\\":v("Unexpected '{a}'.",u,r,s)}o+=s}},token:function(){function t(e){var t=e.exec(a),n;if(t)return w=t[0].length,n=t[1],c=n.charAt(0),a=a.substr(w),i=r+w-n.length,r+=w,n}function f(t){function s(e){var t=parseInt(a.substr(f+1,e),16);f+=e,t>=32&&t<=126&&t!==34&&t!==92&&t!==39&&v("Unnecessary escapement.",u,r),r+=e,o=String.fromCharCode(t)}var o,f,l="",c=!1;kt&&t!=='"'&&v("Strings must use doublequote.",u,r),jt.quotmark&&(jt.quotmark==="single"&&t!=="'"?v("Strings must use singlequote.",u,r):jt.quotmark==="double"&&t!=='"'?v("Strings must use doublequote.",u,r):jt.quotmark===!0&&(Ut=Ut||t,Ut!==t&&v("Mixed double and single quotes.",u,r))),f=0;e:for(;;){while(f>=a.length){f=0;var h=u,p=i;if(!e()){g("Unclosed string.",h,p);break e}c?c=!1:v("Unclosed string.",h,p)}o=a.charAt(f);if(o===t)return r+=1,a=a.substr(f+1),n("(string)",l,t);if(o<" "){if(o==="\n"||o==="\r")break;v("Control character in string: {a}.",u,r+f,a.slice(0,f))}else if(o==="\\"){f+=1,r+=1,o=a.charAt(f),C=a.charAt(f+1);switch(o){case"\\":case'"':case"/":break;case"'":kt&&v("Avoid \\'.",u,r);break;case"b":o="\b";break;case"f":o="\f";break;case"n":o="\n";break;case"r":o="\r";break;case"t":o=" ";break;case"0":o="\0",C>=0&&C<=7&&Jt["use strict"]&&v("Octal literals are not allowed in strict mode.",u,r);break;case"u":s(4);break;case"v":kt&&v("Avoid \\v.",u,r),o=" ";break;case"x":kt&&v("Avoid \\x-.",u,r),s(2);break;case"":c=!0;if(jt.multistr){kt&&v("Avoid EOL escapement.",u,r),o="",r-=1;break}v("Bad escapement of EOL. Use option multistr if needed.",u,r);break;case"!":if(a.charAt(f-2)==="<")break;default:v("Bad escapement.",u,r)}}l+=o,r+=1,f+=1}}var l,c,p,d,m,y,b,w,E,S,x,T,N,C;for(;;){if(!a)return n(e()?"(endline)":"(end)","");x=t(an);if(!x){x="",c="";while(a&&a<"!")a=a.substr(1);a&&(g("Unexpected '{a}'.",u,r,a.substr(0,1)),a="")}else{if(s(c)||c==="_"||c==="$")return n("(identifier)",x);if(o(c))return isFinite(Number(x))||v("Bad number '{a}'.",u,r,x),s(a.substr(0,1))&&v("Missing space after '{a}'.",u,r,x),c==="0"&&(d=x.substr(1,1),o(d)?Gt.id!=="."&&v("Don't use extra leading zeros '{a}'.",u,r,x):kt&&(d==="x"||d==="X")&&v("Avoid 0x-. '{a}'.",u,r,x)),x.substr(x.length-1)==="."&&v("A trailing decimal point can be confused with a dot '{a}'.",u,r,x),n("(number)",x);switch(x){case'"':case"'":return f(x);case"//":a="",Gt.comment=!0;break;case"/*":for(;;){b=a.search(cn);if(b>=0)break;e()||g("Unclosed comment.",u,r)}a=a.substr(b+2),Gt.comment=!0;break;case"/*members":case"/*member":case"/*jshint":case"/*jslint":case"/*global":case"*/":return{value:x,type:"special",line:u,character:r,from:i};case"":break;case"/":a.charAt(0)==="="&&g("A regular expression literal can be confused with '/='.",u,i);if(It){m=0,p=0,w=0;for(;;){l=!0,c=a.charAt(w),w+=1;switch(c){case"":return g("Unclosed regular expression.",u,i),h("Stopping.",u,i);case"/":m>0&&v("{a} unterminated regular expression group(s).",u,i+w,m),c=a.substr(0,w-1),S={g:!0,i:!0,m:!0};while(S[a.charAt(w)]===!0)S[a.charAt(w)]=!1,w+=1;return r+=w,a=a.substr(w),S=a.charAt(0),(S==="/"||S==="*")&&g("Confusing regular expression.",u,i),n("(regexp)",c);case"\\":c=a.charAt(w),c<" "?v("Unexpected control character in regular expression.",u,i+w):c==="<"&&v("Unexpected escaped character '{a}' in regular expression.",u,i+w,c),w+=1;break;case"(":m+=1,l=!1;if(a.charAt(w)==="?"){w+=1;switch(a.charAt(w)){case":":case"=":case"!":w+=1;break;default:v("Expected '{a}' and instead saw '{b}'.",u,i+w,":",a.charAt(w))}}else p+=1;break;case"|":l=!1;break;case")":m===0?v("Unescaped '{a}'.",u,i+w,")"):m-=1;break;case" ":S=1;while(a.charAt(w)===" ")w+=1,S+=1;S>1&&v("Spaces are hard to count. Use {{a}}.",u,i+w,S);break;case"[":c=a.charAt(w),c==="^"&&(w+=1,a.charAt(w)==="]"&&g("Unescaped '{a}'.",u,i+w,"^")),c==="]"&&v("Empty class.",u,i+w-1),T=!1,N=!1;e:do{c=a.charAt(w),w+=1;switch(c){case"[":case"^":v("Unescaped '{a}'.",u,i+w,c),N?N=!1:T=!0;break;case"-":T&&!N?(T=!1,N=!0):N?N=!1:a.charAt(w)==="]"?N=!0:(jt.regexdash!==(w===2||w===3&&a.charAt(1)==="^")&&v("Unescaped '{a}'.",u,i+w-1,"-"),T=!0);break;case"]":N&&!jt.regexdash&&v("Unescaped '{a}'.",u,i+w-1,"-");break e;case"\\":c=a.charAt(w),c<" "?v("Unexpected control character in regular expression.",u,i+w):c==="<"&&v("Unexpected escaped character '{a}' in regular expression.",u,i+w,c),w+=1,/[wsd]/i.test(c)?(N&&(v("Unescaped '{a}'.",u,i+w,"-"),N=!1),T=!1):N?N=!1:T=!0;break;case"/":v("Unescaped '{a}'.",u,i+w-1,"/"),N?N=!1:T=!0;break;case"<":N?N=!1:T=!0;break;default:N?N=!1:T=!0}}while(c);break;case".":jt.regexp&&v("Insecure '{a}'.",u,i+w,c);break;case"]":case"?":case"{":case"}":case"+":case"*":v("Unescaped '{a}'.",u,i+w,c)}if(l)switch(a.charAt(w)){case"?":case"+":case"*":w+=1,a.charAt(w)==="?"&&(w+=1);break;case"{":w+=1,c=a.charAt(w);if(c<"0"||c>"9"){v("Expected a number and instead saw '{a}'.",u,i+w,c);break}w+=1,E=+c;for(;;){c=a.charAt(w);if(c<"0"||c>"9")break;w+=1,E=+c+E*10}y=E;if(c===","){w+=1,y=Infinity,c=a.charAt(w);if(c>="0"&&c<="9"){w+=1,y=+c;for(;;){c=a.charAt(w);if(c<"0"||c>"9")break;w+=1,y=+c+y*10}}}a.charAt(w)!=="}"?v("Expected '{a}' and instead saw '{b}'.",u,i+w,"}",c):w+=1,a.charAt(w)==="?"&&(w+=1),E>y&&v("'{a}' should not be greater than '{b}'.",u,i+w,E,y)}}return c=a.substr(0,w-1),r+=w,a=a.substr(w),n("(regexp)",c)}return n("(punctuator)",x);case"#":return n("(punctuator)",x);default:return n("(punctuator)",x)}}}}}}();F("(number)",function(){return this}),F("(string)",function(){return this}),Kt["(identifier)"]={type:"(identifier)",lbp:0,identifier:!0,nud:function(){var e=this.value,t=Wt[e],n;typeof t=="function"?t=undefined:typeof t=="boolean"&&(n=wt,wt=St[0],b(e,"var"),t=wt,wt=n);if(wt===t)switch(wt[e]){case"unused":wt[e]="var";break;case"unction":wt[e]="function",this["function"]=!0;break;case"function":this["function"]=!0;break;case"label":d("'{a}' is a statement label.",Gt,e)}else if(wt["(global)"])jt.undef&&typeof Ft[e]!="boolean"&&(ft!=="typeof"&&ft!=="delete"||Pt&&(Pt.value==="."||Pt.value==="["))&&p(wt,"'{a}' is not defined.",Gt,e),nt(Gt);else switch(wt[e]){case"closure":case"function":case"var":case"unused":d("'{a}' used out of scope.",Gt,e);break;case"label":d("'{a}' is a statement label.",Gt,e);break;case"outer":case"global":break;default:if(t===!0)wt[e]=!0;else if(t===null)d("'{a}' is not allowed.",Gt,e),nt(Gt);else if(typeof t!="object")jt.undef&&(ft!=="typeof"&&ft!=="delete"||Pt&&(Pt.value==="."||Pt.value==="["))&&p(wt,"'{a}' is not defined.",Gt,e),wt[e]=!0,nt(Gt);else switch(t[e]){case"function":case"unction":this["function"]=!0,t[e]="closure",wt[e]=t["(global)"]?"global":"outer";break;case"var":case"unused":t[e]="closure",wt[e]=t["(global)"]?"global":"outer";break;case"closure":wt[e]=t["(global)"]?"global":"outer";break;case"label":d("'{a}' is a statement label.",Gt,e)}}return this},led:function(){m("Expected an operator and instead saw '{a}'.",Pt,Pt.value)}},F("(regexp)",function(){return this}),D("(endline)"),D("(begin)"),D("(end)").reach=!0,D("</").reach=!0,D("<!"),D("<!--"),D("-->"),D("(error)").reach=!0,D("}").reach=!0,D(")"),D("]"),D('"').reach=!0,D("'").reach=!0,D(";"),D(":").reach=!0,D(","),D("#"),D("@"),I("else"),I("case").reach=!0,I("catch"),I("default").reach=!0,I("finally"),q("arguments",function(e){Jt["use strict"]&&wt["(global)"]&&d("Strict violation.",e)}),q("eval"),q("false"),q("Infinity"),q("null"),q("this",function(e){Jt["use strict"]&&!jt.validthis&&(wt["(statement)"]&&wt["(name)"].charAt(0)>"Z"||wt["(global)"])&&d("Possible strict violation.",e)}),q("true"),q("undefined"),W("=","assign",20),W("+=","assignadd",20),W("-=","assignsub",20),W("*=","assignmult",20),W("/=","assigndiv",20).nud=function(){m("A regular expression literal can be confused with '/='.")},W("%=","assignmod",20),V("&=","assignbitand",20),V("|=","assignbitor",20),V("^=","assignbitxor",20),V("<<=","assignshiftleft",20),V(">>=","assignshiftright",20),V(">>>=","assignshiftrightunsigned",20),R("?",function(e,t){return t.left=e,t.right=x(10),S(":"),t["else"]=x(10),t},30),R("||","or",40),R("&&","and",50),X("|","bitor",70),X("^","bitxor",80),X("&","bitand",90),U("==",function(e,t){var n=jt.eqnull&&(e.value==="null"||t.value==="null");return!n&&jt.eqeqeq?d("Expected '{a}' and instead saw '{b}'.",this,"===","=="):z(e)?d("Use '{a}' to compare with '{b}'.",this,"===",e.value):z(t)&&d("Use '{a}' to compare with '{b}'.",this,"===",t.value),this}),U("==="),U("!=",function(e,t){var n=jt.eqnull&&(e.value==="null"||t.value==="null");return!n&&jt.eqeqeq?d("Expected '{a}' and instead saw '{b}'.",this,"!==","!="):z(e)?d("Use '{a}' to compare with '{b}'.",this,"!==",e.value):z(t)&&d("Use '{a}' to compare with '{b}'.",this,"!==",t.value),this}),U("!=="),U("<"),U(">"),U("<="),U(">="),X("<<","shiftleft",120),X(">>","shiftright",120),X(">>>","shiftrightunsigned",120),R("in","in",120),R("instanceof","instanceof",120),R("+",function(e,t){var n=x(130);return e&&n&&e.id==="(string)"&&n.id==="(string)"?(e.value+=n.value,e.character=n.character,!jt.scripturl&&pn.test(e.value)&&d("JavaScript URL.",e),e):(t.left=e,t.right=n,t)},130),j("+","num"),j("+++",function(){return d("Confusing pluses."),this.right=x(150),this.arity="unary",this}),R("+++",function(e){return d("Confusing pluses."),this.left=e,this.right=x(130),this},130),R("-","sub",130),j("-","neg"),j("---",function(){return d("Confusing minuses."),this.right=x(150),this.arity="unary",this}),R("---",function(e){return d("Confusing minuses."),this.left=e,this.right=x(130),this},130),R("*","mult",140),R("/","div",140),R("%","mod",140),$("++","postinc"),j("++","preinc"),Kt["++"].exps=!0,$("--","postdec"),j("--","predec"),Kt["--"].exps=!0,j("delete",function(){var e=x(0);return(!e||e.id!=="."&&e.id!=="[")&&d("Variables should not be deleted."),this.first=e,this}).exps=!0,j("~",function(){return jt.bitwise&&d("Unexpected '{a}'.",this,"~"),x(150),this}),j("!",function(){return this.right=x(150),this.arity="unary",lt[this.right.id]===!0&&d("Confusing use of '{a}'.",this,"!"),this}),j("typeof","typeof"),j("new",function(){var e=x(155),n;if(e&&e.id!=="function")if(e.identifier){e["new"]=!0;switch(e.value){case"Number":case"String":case"Boolean":case"Math":case"JSON":d("Do not use {a} as a constructor.",qt,e.value);break;case"Function":jt.evil||d("The Function constructor is eval.");break;case"Date":case"RegExp":break;default:e.id!=="function"&&(n=e.value.substr(0,1),jt.newcap&&(n<"A"||n>"Z")&&!t(xt,e.value)&&d("A constructor name should start with an uppercase letter.",Gt))}}else e.id!=="."&&e.id!=="["&&e.id!=="("&&d("Bad constructor.",Gt);else jt.supernew||d("Weird construction. Delete 'new'.",this);return T(Gt,Pt),Pt.id!=="("&&!jt.supernew&&d("Missing '()' invoking a constructor.",Gt,Gt.value),this.first=e,this}),Kt["new"].exps=!0,j("void").exps=!0,R(".",function(e,t){T(qt,Gt),N();var n=K();return typeof n=="string"&&tt(n),t.left=e,t.right=n,!e||e.value!=="arguments"||n!=="callee"&&n!=="caller"?!jt.evil&&e&&e.value==="document"&&(n==="write"||n==="writeln")&&d("document.write can be a form of eval.",e):jt.noarg?d("Avoid arguments.{a}.",e,n):Jt["use strict"]&&m("Strict violation."),!jt.evil&&(n==="eval"||n==="execScript")&&d("eval is evil."),t},160,!0),R("(",function(e,t){qt.id!=="}"&&qt.id!==")"&&N(qt,Gt),C(),jt.immed&&!e.immed&&e.id==="function"&&d("Wrap an immediate function invocation in parentheses to assist the reader in understanding that the expression is the result of a function, and not the function itself.");var n=0,r=[];e&&e.type==="(identifier)"&&e.value.match(/^[A-Z]([A-Z0-9_$]*[a-z][A-Za-z0-9_$]*)?$/)&&"Number String Boolean Date Object".indexOf(e.value)===-1&&(e.value==="Math"?d("Math is not a function.",e):jt.newcap&&d("Missing 'new' prefix when invoking a constructor.",e));if(Pt.id!==")")for(;;){r[r.length]=x(10),n+=1;if(Pt.id!==",")break;M()}return S(")"),C(qt,Gt),typeof e=="object"&&(e.value==="parseInt"&&n===1&&d("Missing radix parameter.",Gt),jt.evil||(e.value==="eval"||e.value==="Function"||e.value==="execScript"?(d("eval is evil.",e),r[0]&&[0].id==="(string)"&&y(e,r[0].value)):!r[0]||r[0].id!=="(string)"||e.value!=="setTimeout"&&e.value!=="setInterval"?r[0]&&r[0].id==="(string)"&&e.value==="."&&e.left.value==="window"&&(e.right==="setTimeout"||e.right==="setInterval")&&(d("Implied eval is evil. Pass a function instead of a string.",e),y(e,r[0].value)):(d("Implied eval is evil. Pass a function instead of a string.",e),y(e,r[0].value))),!e.identifier&&e.id!=="."&&e.id!=="["&&e.id!=="("&&e.id!=="&&"&&e.id!=="||"&&e.id!=="?"&&d("Bad invocation.",e)),t.left=e,t},155,!0).exps=!0,j("(",function(){C(),Pt.id==="function"&&(Pt.immed=!0);var e=x(0);return S(")",this),C(qt,Gt),jt.immed&&e.id==="function"&&Pt.id!=="("&&(Pt.id!=="."||E().value!=="call"&&E().value!=="apply")&&d("Do not wrap function literals in parens unless they are to be immediately invoked.",this),e}),R("[",function(e,t){N(qt,Gt),C();var n=x(0),r;return n&&n.type==="(string)"&&(!jt.evil&&(n.value==="eval"||n.value==="execScript")&&d("eval is evil.",t),tt(n.value),!jt.sub&&hn.test(n.value)&&(r=Kt[n.value],(!r||!r.reserved)&&d("['{a}'] is better written in dot notation.",qt,n.value))),S("]",t),C(qt,Gt),t.left=e,t.right=n,t},160,!0),j("[",function(){var e=Gt.line!==Pt.line;this.first=[],e&&(Ct+=jt.indent,Pt.from===Ct+jt.indent&&(Ct+=jt.indent));while(Pt.id!=="(end)"){while(Pt.id===",")jt.es5||d("Extra comma."),S(",");if(Pt.id==="]")break;e&&Gt.line!==Pt.line&&A(),this.first.push(x(10));if(Pt.id!==",")break;M();if(Pt.id==="]"&&!jt.es5){d("Extra comma.",Gt);break}}return e&&(Ct-=jt.indent,A()),S("]",this),this},160),function(e){e.nud=function(){function e(e,n){f[e]&&t(f,e)?d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].basic=!0,f[e].basicToken=n}function n(e,n){f[e]&&t(f,e)?(f[e].basic||f[e].setter)&&d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].setter=!0,f[e].setterToken=n}function r(e){f[e]&&t(f,e)?(f[e].basic||f[e].getter)&&d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].getter=!0,f[e].getterToken=Gt}var i,s,o,u,a,f={};i=Gt.line!==Pt.line,i&&(Ct+=jt.indent,Pt.from===Ct+jt.indent&&(Ct+=jt.indent));for(;;){if(Pt.id==="}")break;i&&A();if(Pt.value==="get"&&E().id!==":")S("get"),jt.es5||m("get/set are ES5 features."),o=rt(),o||m("Missing property name."),r(o),a=Pt,T(Gt,Pt),s=st(),u=s["(params)"],u&&d("Unexpected parameter '{a}' in get {b} function.",a,u[0],o),T(Gt,Pt);else if(Pt.value==="set"&&E().id!==":")S("set"),jt.es5||m("get/set are ES5 features."),o=rt(),o||m("Missing property name."),n(o,Pt),a=Pt,T(Gt,Pt),s=st(),u=s["(params)"],(!u||u.length!==1)&&d("Expected a single parameter in set {a} function.",a,o);else{o=rt(),e(o,Pt);if(typeof o!="string")break;S(":"),k(Gt,Pt),x(10)}tt(o);if(Pt.id!==",")break;M(),Pt.id===","?d("Extra comma.",Gt):Pt.id==="}"&&!jt.es5&&d("Extra comma.",Gt)}i&&(Ct-=jt.indent,A()),S("}",this);if(jt.es5)for(var l in f)t(f,l)&&f[l].setter&&!f[l].getter&&d("Setter is defined without getter.",f[l].setterToken);return this},e.fud=function(){m("Expected to see a statement and instead saw a block.",Gt)}}(D("{")),en=function(){var e=P("const",function(e){var t,n,r;this.first=[];for(;;){k(Gt,Pt),t=K(),wt[t]==="const"&&d("const '"+t+"' has already been declared"),wt["(global)"]&&Ft[t]===!1&&d("Redefinition of '{a}'.",Gt,t),b(t,"const");if(e)break;n=Gt,this.first.push(Gt),Pt.id!=="="&&d("const '{a}' is initialized to 'undefined'.",Gt,t),Pt.id==="="&&(k(Gt,Pt),S("="),k(Gt,Pt),Pt.id==="undefined"&&d("It is not necessary to initialize '{a}' to 'undefined'.",Gt,t),E(0).id==="="&&Pt.identifier&&m("Constant {a} was not declared correctly.",Pt,Pt.value),r=x(0),n.first=r);if(Pt.id!==",")break;M()}return this});e.exps=!0};var mn=P("var",function(e){var t,n,r;wt["(onevar)"]&&jt.onevar?d("Too many var statements."):wt["(global)"]||(wt["(onevar)"]=!0),this.first=[];for(;;){k(Gt,Pt),t=K(),jt.esnext&&wt[t]==="const"&&d("const '"+t+"' has already been declared"),wt["(global)"]&&Ft[t]===!1&&d("Redefinition of '{a}'.",Gt,t),b(t,"unused",Gt);if(e)break;n=Gt,this.first.push(Gt),Pt.id==="="&&(k(Gt,Pt),S("="),k(Gt,Pt),Pt.id==="undefined"&&d("It is not necessary to initialize '{a}' to 'undefined'.",Gt,t),E(0).id==="="&&Pt.identifier&&m("Variable {a} was not declared correctly.",Pt,Pt.value),r=x(0),n.first=r);if(Pt.id!==",")break;M()}return this});mn.exps=!0,H("function",function(){Nt&&d("Function declarations should not be placed in blocks. Use a function expression or move the statement to the top of the outer function.",Gt);var e=K();return jt.esnext&&wt[e]==="const"&&d("const '"+e+"' has already been declared"),T(Gt,Pt),b(e,"unction",Gt),st(e,{statement:!0}),Pt.id==="("&&Pt.line===Gt.line&&m("Function declarations are not invocable. Wrap the whole function invocation in parens."),this}),j("function",function(){var e=J();return e?T(Gt,Pt):k(Gt,Pt),st(e),!jt.loopfunc&&wt["(loopage)"]&&d("Don't make functions within a loop."),this}),H("if",function(){var e=Pt;return ut(),S("("),k(this,e),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),et(!0,!0),Pt.id==="else"&&(k(Gt,Pt),S("else"),Pt.id==="if"||Pt.id==="switch"?G(!0):et(!0,!0)),this}),H("try",function(){function e(){var e=Wt,t;S("catch"),k(Gt,Pt),S("("),Wt=Object.create(e),t=Pt.value,Pt.type!=="(identifier)"&&(t=null,d("Expected an identifier and instead saw '{a}'.",Pt,t)),S(),S(")"),wt={"(name)":"(catch)","(line)":Pt.line,"(character)":Pt.character,"(context)":wt,"(breakage)":wt["(breakage)"],"(loopage)":wt["(loopage)"],"(scope)":Wt,"(statement)":!1,"(metrics)":ot(Pt),"(catch)":!0,"(tokens)":{}},t&&b(t,"exception"),Gt.funct=wt,St.push(wt),et(!1),Wt=e,wt["(last)"]=Gt.line,wt["(lastcharacter)"]=Gt.character,wt=wt["(context)"]}var t;et(!1),Pt.id==="catch"&&(ut(),e(),t=!0);if(Pt.id==="finally"){S("finally"),et(!1);return}return t||m("Expected '{a}' and instead saw '{b}'.",Pt,"catch",Pt.value),this}),H("while",function(){var e=Pt;return wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),S("("),k(this,e),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),et(!0,!0),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}).labelled=!0,H("with",function(){var e=Pt;return Jt["use strict"]?m("'with' is not allowed in strict mode.",Gt):jt.withstmt||d("Don't use 'with'.",Gt),S("("),k(this,e),C(),x(0),S(")",e),C(qt,Gt),et(!0,!0),this}),H("switch",function(){var e=Pt,t=!1;wt["(breakage)"]+=1,S("("),k(this,e),C(),this.condition=x(20),S(")",e),C(qt,Gt),k(Gt,Pt),e=Pt,S("{"),k(Gt,Pt),Ct+=jt.indent,this.cases=[];for(;;)switch(Pt.id){case"case":switch(wt["(verb)"]){case"break":case"case":case"continue":case"return":case"switch":case"throw":break;default:dn.test(At[Pt.line-2])||d("Expected a 'break' statement before 'case'.",Gt)}A(-jt.indent),S("case"),this.cases.push(x(20)),ut(),t=!0,S(":"),wt["(verb)"]="case";break;case"default":switch(wt["(verb)"]){case"break":case"continue":case"return":case"throw":break;default:dn.test(At[Pt.line-2])||d("Expected a 'break' statement before 'default'.",Gt)}A(-jt.indent),S("default"),t=!0,S(":");break;case"}":Ct-=jt.indent,A(),S("}",e);if(this.cases.length===1||this.condition.id==="true"||this.condition.id==="false")jt.onecase||d("This 'switch' should be an 'if'.",this);wt["(breakage)"]-=1,wt["(verb)"]=undefined;return;case"(end)":m("Missing '{a}'.",Pt,"}");return;default:if(t)switch(Gt.id){case",":m("Each value should have its own case label.");return;case":":t=!1,Y();break;default:m("Missing ':' on a case clause.",Gt);return}else{if(Gt.id!==":"){m("Expected '{a}' and instead saw '{b}'.",Pt,"case",Pt.value);return}S(":"),m("Unexpected '{a}'.",Gt,":"),Y()}}}).labelled=!0,P("debugger",function(){return jt.debug||d("All 'debugger' statements should be removed."),this}).exps=!0,function(){var e=P("do",function(){wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),this.first=et(!0),S("while");var e=Pt;return k(Gt,e),S("("),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this});e.labelled=!0,e.exps=!0}(),H("for",function(){var e,t=Pt;wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),S("("),k(this,t),C();if(E(Pt.id==="var"?1:0).id==="in"){if(Pt.id==="var")S("var"),mn.fud.call(mn,!0);else{switch(wt[Pt.value]){case"unused":wt[Pt.value]="var";break;case"var":break;default:d("Bad for in variable '{a}'.",Pt,Pt.value)}S()}return S("in"),x(20),S(")",t),e=et(!0,!0),jt.forin&&e&&(e.length>1||typeof e[0]!="object"||e[0].value!=="if")&&d("The body of a for in should be wrapped in an if statement to filter unwanted properties from the prototype.",this),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}if(Pt.id!==";")if(Pt.id==="var")S("var"),mn.fud.call(mn);else for(;;){x(0,"for");if(Pt.id!==",")break;M()}O(Gt),S(";"),Pt.id!==";"&&(x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20))),O(Gt),S(";"),Pt.id===";"&&m("Expected '{a}' and instead saw '{b}'.",Pt,")",";");if(Pt.id!==")")for(;;){x(0,"for");if(Pt.id!==",")break;M()}return S(")",t),C(qt,Gt),et(!0,!0),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}).labelled=!0,P("break",function(){var e=Pt.value;return wt["(breakage)"]===0&&d("Unexpected '{a}'.",Pt,this.value),jt.asi||O(this),Pt.id!==";"&&Gt.line===Pt.line&&(wt[e]!=="label"?d("'{a}' is not a statement label.",Pt,e):Wt[e]!==wt&&d("'{a}' is out of scope.",Pt,e),this.first=Pt,S()),Q("break"),this}).exps=!0,P("continue",function(){var e=Pt.value;return wt["(breakage)"]===0&&d("Unexpected '{a}'.",Pt,this.value),jt.asi||O(this),Pt.id!==";"?Gt.line===Pt.line&&(wt[e]!=="label"?d("'{a}' is not a statement label.",Pt,e):Wt[e]!==wt&&d("'{a}' is out of scope.",Pt,e),this.first=Pt,S()):wt["(loopage)"]||d("Unexpected '{a}'.",Pt,this.value),Q("continue"),this}).exps=!0,P("return",function(){return this.line===Pt.line?(Pt.id==="(regexp)"&&d("Wrap the /regexp/ literal in parens to disambiguate the slash operator."),Pt.id!==";"&&!Pt.reach&&(k(Gt,Pt),E().value==="="&&!jt.boss&&v("Did you mean to return a conditional instead of an assignment?",Gt.line,Gt.character+1),this.first=x(0))):jt.asi||O(this),Q("return"),this}).exps=!0,P("throw",function(){return O(this),k(Gt,Pt),this.first=x(20),Q("throw"),this}).exps=!0,I("class"),I("const"),I("enum"),I("export"),I("extends"),I("import"),I("super"),I("let"),I("yield"),I("implements"),I("interface"),I("package"),I("private"),I("protected"),I("public"),I("static");var gn=function(e,s,o){var u,a,l,h,p,m={};s&&s.scope?r.scope=s.scope:(r.errors=[],r.undefs=[],r.internals=[],r.blacklist={},r.scope="(main)"),Ft=Object.create(Vt),gt=Object.create(null),f(Ft,o||{});if(s){u=s.predef,u&&(!Array.isArray(u)&&typeof u=="object"&&(u=Object.keys(u)),u.forEach(function(e){var t;e[0]==="-"?(t=e.slice(1),r.blacklist[t]=t):Ft[e]=!0})),p=Object.keys(s);for(h=0;h<p.length;h++)m[p[h]]=s[p[h]],p[h]==="newcap"&&s[p[h]]===!1&&(m["(explicitNewcap)"]=!0),p[h]==="indent"&&(m.white=!0)}jt=m,jt.indent=jt.indent||4,jt.maxerr=jt.maxerr||50,Qt="";for(a=0;a<jt.indent;a+=1)Qt+=" ";Ct=1,xt=Object.create(Ft),Wt=xt,wt={"(global)":!0,"(name)":"(global)","(scope)":Wt,"(breakage)":0,"(loopage)":0,"(tokens)":{},"(metrics)":ot(Pt)},St=[wt],Zt=[],Xt=null,Mt={},_t=null,Tt={},Nt=!1,Ot=[],kt=!1,tn=0,At=[],Yt=[];if(!i(e)&&!Array.isArray(e))return g("Input is neither a string nor an array of strings.",0),!1;if(i(e)&&/^\s*$/g.test(e))return g("Input is an empty string.",0),!1;if(e.length===0)return g("Input is an empty array.",0),!1;vn.init(e),It=!0,Jt={},qt=Gt=Pt=Kt["(begin)"];for(var y in s)t(s,y)&&n(y,Gt);c(),f(Ft,o||{}),M.first=!0,Ut=undefined;try{S();switch(Pt.id){case"{":case"[":jt.laxbreak=!0,kt=!0,at();break;default:Z(),Jt["use strict"]&&!jt.globalstrict&&d('Use the function form of "use strict".',qt),Y()}S(Pt&&Pt.value!=="."?"(end)":undefined);var b=function(e,t){do{if(typeof t[e]=="string")return t[e]==="unused"?t[e]="var":t[e]==="unction"&&(t[e]="closure"),!0;t=t["(context)"]}while(t);return!1},w=function(e,t){if(!Tt[e])return;var n=[];for(var r=0;r<Tt[e].length;r+=1)Tt[e][r]!==t&&n.push(Tt[e][r]);n.length===0?delete Tt[e]:Tt[e]=n},E=function(e,t){var n=t.line,r=t.character;jt.unused&&v("'{a}' is defined but never used.",n,r,e),Yt.push({name:e,line:n,character:r})},x=function(e,t){var n=e[t],r=e["(tokens)"][t];if(t.charAt(0)==="(")return;if(n!=="unused"&&n!=="unction")return;if(e["(params)"]&&e["(params)"].indexOf(t)!==-1)return;E(t,r)};for(a=0;a<r.undefs.length;a+=1)l=r.undefs[a].slice(0),b(l[2].value,l[0])?w(l[2].value,l[2].line):d.apply(d,l.slice(1));St.forEach(function(e){for(var n in e)t(e,n)&&x(e,n);if(!e["(params)"])return;var r=e["(params)"].slice(),i=r.pop(),s;while(i){s=e[i];if(i==="undefined")return;if(s!=="unused"&&s!=="unction")return;E(i,e["(tokens)"][i]),i=r.pop()}});for(var T in gt)t(gt,T)&&!t(xt,T)&&E(T,gt[T])}catch(N){if(N){var C=Pt||{};r.errors.push({raw:N.raw,reason:N.message,line:N.line||C.line,character:N.character||C.from},null)}}if(r.scope==="(main)"){s=s||{};for(a=0;a<r.internals.length;a+=1)l=r.internals[a],s.scope=l.elem,gn(l.value,s,o)}return r.errors.length===0};return gn.data=function(){var e={functions:[],options:jt},n=[],r=[],i,s,o,u,a,f;gn.errors.length&&(e.errors=gn.errors),kt&&(e.json=!0);for(a in Tt)t(Tt,a)&&n.push({name:a,line:Tt[a]});n.length>0&&(e.implieds=n),Zt.length>0&&(e.urls=Zt),f=Object.keys(Wt),f.length>0&&(e.globals=f);for(o=1;o<St.length;o+=1){s=St[o],i={};for(u=0;u<Et.length;u+=1)i[Et[u]]=[];for(u=0;u<Et.length;u+=1)i[Et[u]].length===0&&delete i[Et[u]];i.name=s["(name)"],i.param=s["(params)"],i.line=s["(line)"],i.character=s["(character)"],i.last=s["(last)"],i.lastcharacter=s["(lastcharacter)"],e.functions.push(i)}Yt.length>0&&(e.unused=Yt),r=[];for(a in Mt)if(typeof Mt[a]=="number"){e.member=Mt;break}return e},gn.jshint=gn,gn}();typeof t=="object"&&t&&(t.JSHINT=r)})
4045 ^
4046
4047./lib/viewers/text/worker-javascript.js:1: WARNING - unreachable code
4048"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/javascript_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/javascript/jshint"],function(require,exports,module){function startRegex(e){return RegExp("^("+e.join("|")+")")}var oop=require("../lib/oop"),Mirror=require("../worker/mirror").Mirror,lint=require("./javascript/jshint").JSHINT,disabledWarningsRe=startRegex(["Bad for in variable '(.+)'.",'Missing "use strict"']),errorsRe=startRegex(["Unexpected","Expected ","Confusing (plus|minus)","\\{a\\} unterminated regular expression","Unclosed ","Unmatched ","Unbegun comment","Bad invocation","Missing space after","Missing operator at"]),infoRe=startRegex(["Expected an assignment","Bad escapement of EOL","Unexpected comma","Unexpected space","Missing radix parameter.","A leading decimal point can","\\['{a}'\\] is better written in dot notation.","'{a}' used out of scope"]),JavaScriptWorker=exports.JavaScriptWorker=function(e){Mirror.call(this,e),this.setTimeout(500),this.setOptions()};oop.inherits(JavaScriptWorker,Mirror),function(){this.setOptions=function(e){this.options=e||{es5:!0,esnext:!0,devel:!0,browser:!0,node:!0,laxcomma:!0,laxbreak:!0,lastsemic:!0,onevar:!1,passfail:!1,maxerr:100,expr:!0,multistr:!0,globalstrict:!0},this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.changeOptions=function(e){oop.mixin(this.options,e),this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.isValidJS=function(str){try{eval("throw 0;"+str)}catch(e){if(e===0)return!0}return!1},this.onUpdate=function(){var e=this.doc.getValue();e=e.replace(/^#!.*\n/,"\n");if(!e){this.sender.emit("jslint",[]);return}var t=[],n=this.isValidJS(e)?"warning":"error";lint(e,this.options);var r=lint.errors,i=!1;for(var s=0;s<r.length;s++){var o=r[s];if(!o)continue;var u=o.raw,a="warning";if(u=="Missing semicolon."){var f=o.evidence.substr(o.character);f=f.charAt(f.search(/\S/)),n=="error"&&f&&/[\w\d{(['"]/.test(f)?(o.reason='Missing ";" before statement',a="error"):a="info"}else{if(disabledWarningsRe.test(u))continue;infoRe.test(u)?a="info":errorsRe.test(u)?(i=!0,a=n):u=="'{a}' is not defined."?a="warning":u=="'{a}' is defined but never used."&&(a="info")}t.push({row:o.line-1,column:o.character-1,text:o.reason,type:a,raw:u}),i}this.sender.emit("jslint",t)}}.call(JavaScriptWorker.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/javascript/jshint",["require","exports","module"],function(e,t,n){var r=function(){function e(){}function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function n(e,t){ht[e]===undefined&&ct[e]===undefined&&d("Bad option: '"+e+"'.",t)}function i(e){return Object.prototype.toString.call(e)==="[object String]"}function s(e){return e>="a"&&e<="z?"||e>="A"&&e<="Z?"}function o(e){return e>="0"&&e<="9"}function u(e,t){return e?!e.identifier||e.value!==t?!1:!0:!1}function a(e,t){return e.replace(/\{([^{}]*)\}/g,function(e,n){var r=t[n];return typeof r=="string"||typeof r=="number"?r:e})}function f(e,n){var i;for(i in n)t(n,i)&&!t(r.blacklist,i)&&(e[i]=n[i])}function l(){Object.keys(r.blacklist).forEach(function(e){delete Ft[e]})}function c(){jt.couch&&f(Ft,mt),jt.rhino&&f(Ft,zt),jt.prototypejs&&f(Ft,Rt),jt.node&&(f(Ft,Ht),jt.globalstrict=!0),jt.devel&&f(Ft,yt),jt.dojo&&f(Ft,bt),jt.browser&&f(Ft,vt),jt.nonstandard&&f(Ft,$t),jt.jquery&&f(Ft,Lt),jt.mootools&&f(Ft,Dt),jt.worker&&f(Ft,nn),jt.wsh&&f(Ft,rn),jt.esnext&&en(),jt.globalstrict&&jt.strict!==!1&&(jt.strict=!0),jt.yui&&f(Ft,sn)}function h(e,t,n){var r=Math.floor(t/At.length*100);throw{name:"JSHintError",line:t,character:n,message:e+" ("+r+"% scanned).",raw:e}}function p(e,t,n,i){return r.undefs.push([e,t,n,i])}function d(e,t,n,i,s,o){var u,f,l;return t=t||Pt,t.id==="(end)"&&(t=Gt),f=t.line||0,u=t.from||0,l={id:"(error)",raw:e,evidence:At[f-1]||"",line:f,character:u,scope:r.scope,a:n,b:i,c:s,d:o},l.reason=a(e,l),r.errors.push(l),jt.passfail&&h("Stopping. ",f,u),tn+=1,tn>=jt.maxerr&&h("Too many errors.",f,u),l}function v(e,t,n,r,i,s,o){return d(e,{line:t,from:n},r,i,s,o)}function m(e,t,n,r,i,s){d(e,t,n,r,i,s)}function g(e,t,n,r,i,s,o){return m(e,{line:t,from:n},r,i,s,o)}function y(e,t){var n;return n={id:"(internal)",elem:e,value:t},r.internals.push(n),n}function b(e,n,r){e==="hasOwnProperty"&&d("'hasOwnProperty' is a really bad name."),n==="exception"&&t(wt["(context)"],e)&&wt[e]!==!0&&!jt.node&&d("Value of '{a}' may be overwritten in IE.",Pt,e),t(wt,e)&&!wt["(global)"]&&(wt[e]===!0?jt.latedef&&d("'{a}' was used before it was defined.",Pt,e):!jt.shadow&&n!=="exception"&&d("'{a}' is already defined.",Pt,e)),wt[e]=n,r&&(wt["(tokens)"][e]=r),wt["(global)"]?(xt[e]=wt,t(Tt,e)&&(jt.latedef&&d("'{a}' was used before it was defined.",Pt,e),delete Tt[e])):Wt[e]=wt}function w(){var e=Pt,i=e.value,s=jt.quotmark,o={},u,a,h,p,d,v,g;switch(i){case"*/":m("Unbegun comment.");break;case"/*members":case"/*member":i="/*members",_t||(_t={}),a=_t,jt.quotmark=!1;break;case"/*jshint":case"/*jslint":a=jt,h=ct;break;case"/*global":a=o;break;default:m("What?")}p=vn.token();for(;;){g=!1;var y;for(;;){if(p.type==="special"&&p.value==="*/"){y=!0;break}if(p.id!=="(endline)"&&p.id!==",")break;p=vn.token()}if(y)break;i==="/*global"&&p.value==="-"&&(g=!0,p=vn.token()),p.type!=="(string)"&&p.type!=="(identifier)"&&i!=="/*members"&&m("Bad option.",p),v=vn.token();if(v.id===":"){v=vn.token(),a===_t&&m("Expected '{a}' and instead saw '{b}'.",p,"*/",":"),i==="/*jshint"&&n(p.value,p);var b=["maxstatements","maxparams","maxdepth","maxcomplexity","maxerr","maxlen","indent"];if(b.indexOf(p.value)>-1&&(i==="/*jshint"||i==="/*jslint"))u=+v.value,(typeof u!="number"||!isFinite(u)||u<=0||Math.floor(u)!==u)&&m("Expected a small integer and instead saw '{a}'.",v,v.value),p.value==="indent"&&(a.white=!0),a[p.value]=u;else if(p.value==="validthis")wt["(global)"]?m("Option 'validthis' can't be used in a global scope."):v.value==="true"||v.value==="false"?a[p.value]=v.value==="true":m("Bad option value.",v);else if(p.value==="quotmark"&&i==="/*jshint")switch(v.value){case"true":a.quotmark=!0;break;case"false":a.quotmark=!1;break;case"double":case"single":a.quotmark=v.value;break;default:m("Bad option value.",v)}else v.value==="true"||v.value==="false"?(i==="/*jslint"?(d=dt[p.value]||p.value,a[d]=v.value==="true",pt[d]!==undefined&&(a[d]=!a[d])):a[p.value]=v.value==="true",p.value==="newcap"&&(a["(explicitNewcap)"]=!0)):m("Bad option value.",v);p=vn.token()}else(i==="/*jshint"||i==="/*jslint")&&m("Missing option value.",p),a[p.value]=!1,i==="/*global"&&g===!0&&(r.blacklist[p.value]=p.value,l()),p=v}i==="/*members"&&(jt.quotmark=s),f(Ft,o);for(var w in o)t(o,w)&&(gt[w]=e);h&&c()}function E(e){var t=e||0,n=0,r;while(n<=t)r=Ot[n],r||(r=Ot[n]=vn.token()),n+=1;return r}function S(e,t){switch(Gt.id){case"(number)":Pt.id==="."&&d("A dot following a number can be confused with a decimal point.",Gt);break;case"-":(Pt.id==="-"||Pt.id==="--")&&d("Confusing minusses.");break;case"+":(Pt.id==="+"||Pt.id==="++")&&d("Confusing plusses.")}if(Gt.type==="(string)"||Gt.identifier)ft=Gt.value;e&&Pt.id!==e&&(t?Pt.id==="(end)"?d("Unmatched '{a}'.",t,t.id):d("Expected '{a}' to match '{b}' from line {c} and instead saw '{d}'.",Pt,e,t.id,t.line,Pt.value):(Pt.type!=="(identifier)"||Pt.value!==e)&&d("Expected '{a}' and instead saw '{b}'.",Pt,e,Pt.value)),qt=Gt,Gt=Pt;for(;;){Pt=Ot.shift()||vn.token();if(Pt.id==="(end)"||Pt.id==="(error)")return;if(Pt.type==="special")w();else if(Pt.id!=="(endline)")break}}function x(e,t){var n,r=!1,i=!1;Pt.id==="(end)"&&m("Unexpected early end of program.",Gt),S(),t&&(ft="anonymous",wt["(verb)"]=Gt.value);if(t===!0&&Gt.fud)n=Gt.fud();else{if(Gt.nud)n=Gt.nud();else{if(Pt.type==="(number)"&&Gt.id===".")return d("A leading decimal point can be confused with a dot: '.{a}'.",Gt,Pt.value),S(),Gt;m("Expected an identifier and instead saw '{a}'.",Gt,Gt.id)}while(e<Pt.lbp)r=Gt.value==="Array",i=Gt.value==="Object",n&&(n.value||n.first&&n.first.value)&&(n.value!=="new"||n.first&&n.first.value&&n.first.value===".")&&(r=!1,n.value!==Gt.value&&(i=!1)),S(),r&&Gt.id==="("&&Pt.id===")"&&d("Use the array literal notation [].",Gt),i&&Gt.id==="("&&Pt.id===")"&&d("Use the object literal notation {}.",Gt),Gt.led?n=Gt.led(n):m("Expected an operator and instead saw '{a}'.",Gt,Gt.id)}return n}function T(e,t){e=e||Gt,t=t||Pt,jt.white&&e.character!==t.from&&e.line===t.line&&(e.from+=e.character-e.from,d("Unexpected space after '{a}'.",e,e.value))}function N(e,t){e=e||Gt,t=t||Pt,jt.white&&(e.character!==t.from||e.line!==t.line)&&d("Unexpected space before '{a}'.",t,t.value)}function C(e,t){e=e||Gt,t=t||Pt,jt.white&&!e.comment&&e.line===t.line&&T(e,t)}function k(e,t){if(jt.white){e=e||Gt,t=t||Pt;if(e.value===";"&&t.value===";")return;e.line===t.line&&e.character===t.from&&(e.from+=e.character-e.from,d("Missing space after '{a}'.",e,e.value))}}function L(e,t){e=e||Gt,t=t||Pt,!jt.laxbreak&&e.line!==t.line?d("Bad line breaking before '{a}'.",t,t.id):jt.white&&(e=e||Gt,t=t||Pt,e.character===t.from&&(e.from+=e.character-e.from,d("Missing space after '{a}'.",e,e.value)))}function A(e){var t;jt.white&&Pt.id!=="(end)"&&(t=Ct+(e||0),Pt.from!==t&&d("Expected '{a}' to have an indentation at {b} instead at {c}.",Pt,Pt.value,t,Pt.from))}function O(e){e=e||Gt,e.line!==Pt.line&&d("Line breaking error '{a}'.",e,e.value)}function M(){Gt.line!==Pt.line?jt.laxcomma||(M.first&&(d("Comma warnings can be turned off with 'laxcomma'"),M.first=!1),d("Bad line breaking before '{a}'.",Gt,Pt.id)):!Gt.comment&&Gt.character!==Pt.from&&jt.white&&(Gt.from+=Gt.character-Gt.from,d("Unexpected space after '{a}'.",Gt,Gt.value)),S(","),k(Gt,Pt)}function _(e,t){var n=Kt[e];if(!n||typeof n!="object")Kt[e]=n={id:e,lbp:t,value:e};return n}function D(e){return _(e,0)}function P(e,t){var n=D(e);return n.identifier=n.reserved=!0,n.fud=t,n}function H(e,t){var n=P(e,t);return n.block=!0,n}function B(e){var t=e.id.charAt(0);if(t>="a"&&t<="z"||t>="A"&&t<="Z")e.identifier=e.reserved=!0;return e}function j(e,t){var n=_(e,150);return B(n),n.nud=typeof t=="function"?t:function(){this.right=x(150),this.arity="unary";if(this.id==="++"||this.id==="--")jt.plusplus?d("Unexpected use of '{a}'.",this,this.id):(!this.right.identifier||this.right.reserved)&&this.right.id!=="."&&this.right.id!=="["&&d("Bad operand.",this);return this},n}function F(e,t){var n=D(e);return n.type=e,n.nud=t,n}function I(e,t){var n=F(e,t);return n.identifier=n.reserved=!0,n}function q(e,t){return I(e,function(){return typeof t=="function"&&t(this),this})}function R(e,t,n,r){var i=_(e,n);return B(i),i.led=function(i){return r||(L(qt,Gt),k(Gt,Pt)),e==="in"&&i.id==="!"&&d("Confusing use of '{a}'.",i,"!"),typeof t=="function"?t(i,this):(this.left=i,this.right=x(n),this)},i}function U(e,t){var n=_(e,100);return n.led=function(e){L(qt,Gt),k(Gt,Pt);var n=x(100);return u(e,"NaN")||u(n,"NaN")?d("Use the isNaN function to compare with NaN.",this):t&&t.apply(this,[e,n]),e.id==="!"&&d("Confusing use of '{a}'.",e,"!"),n.id==="!"&&d("Confusing use of '{a}'.",n,"!"),this.left=e,this.right=n,this},n}function z(e){return e&&(e.type==="(number)"&&+e.value===0||e.type==="(string)"&&e.value===""||e.type==="null"&&!jt.eqnull||e.type==="true"||e.type==="false"||e.type==="undefined")}function W(e){return _(e,20).exps=!0,R(e,function(e,t){t.left=e,Ft[e.value]===!1&&Wt[e.value]["(global)"]===!0?d("Read only.",e):e["function"]&&d("'{a}' is a function.",e,e.value);if(e){jt.esnext&&wt[e.value]==="const"&&d("Attempting to override '{a}' which is a constant",e,e.value);if(e.id==="."||e.id==="[")return(!e.left||e.left.value==="arguments")&&d("Bad assignment.",t),t.right=x(19),t;if(e.identifier&&!e.reserved)return wt[e.value]==="exception"&&d("Do not assign to the exception parameter.",e),t.right=x(19),t;e===Kt["function"]&&d("Expected an identifier in an assignment and instead saw a function invocation.",Gt)}m("Bad assignment.",t)},20)}function X(e,t,n){var r=_(e,n);return B(r),r.led=typeof t=="function"?t:function(e){return jt.bitwise&&d("Unexpected use of '{a}'.",this,this.id),this.left=e,this.right=x(n),this},r}function V(e){return _(e,20).exps=!0,R(e,function(e,t){jt.bitwise&&d("Unexpected use of '{a}'.",t,t.id),k(qt,Gt),k(Gt,Pt);if(e)return e.id==="."||e.id==="["||e.identifier&&!e.reserved?(x(19),t):(e===Kt["function"]&&d("Expected an identifier in an assignment, and instead saw a function invocation.",Gt),t);m("Bad assignment.",t)},20)}function $(e){var t=_(e,150);return t.led=function(e){return jt.plusplus?d("Unexpected use of '{a}'.",this,this.id):(!e.identifier||e.reserved)&&e.id!=="."&&e.id!=="["&&d("Bad operand.",this),this.left=e,this},t}function J(e){if(Pt.identifier)return S(),Gt.reserved&&!jt.es5&&(!e||Gt.value!=="undefined")&&d("Expected an identifier and instead saw '{a}' (a reserved word).",Gt,Gt.id),Gt.value}function K(e){var t=J(e);if(t)return t;Gt.id==="function"&&Pt.id==="("?d("Missing name in function declaration."):m("Expected an identifier and instead saw '{a}'.",Pt,Pt.value)}function Q(e){var t=0,n;if(Pt.id!==";"||Bt)return;for(;;){n=E(t);if(n.reach)return;if(n.id!=="(endline)"){if(n.id==="function"){if(!jt.latedef)break;d("Inner functions should be listed at the top of the outer function.",n);break}d("Unreachable '{a}' after '{b}'.",n,n.value,e);break}t+=1}}function G(e){var t=Ct,n,r=Wt,i=Pt;if(i.id===";"){S(";");return}i.identifier&&!i.reserved&&E().id===":"&&(S(),S(":"),Wt=Object.create(r),b(i.value,"label"),!Pt.labelled&&Pt.value!=="{"&&d("Label '{a}' on {b} statement.",Pt,i.value,Pt.value),pn.test(i.value+":")&&d("Label '{a}' looks like a javascript url.",i,i.value),Pt.label=i.value,i=Pt);if(i.id==="{"){et(!0,!0);return}e||A(),n=x(0,!0);if(!i.block){!jt.expr&&(!n||!n.exps)?d("Expected an assignment or function call and instead saw an expression.",Gt):jt.nonew&&n.id==="("&&n.left.id==="new"&&d("Do not use 'new' for side effects.",i);if(Pt.id===",")return M();Pt.id!==";"?jt.asi||(!jt.lastsemic||Pt.id!=="}"||Pt.line!==Gt.line)&&v("Missing semicolon.",Gt.line,Gt.character):(T(Gt,Pt),S(";"),k(Gt,Pt))}return Ct=t,Wt=r,n}function Y(e){var t=[],n;while(!Pt.reach&&Pt.id!=="(end)")Pt.id===";"?(n=E(),(!n||n.id!=="(")&&d("Unnecessary semicolon."),S(";")):t.push(G(e===Pt.line));return t}function Z(){var e,t,n;for(;;){if(Pt.id==="(string)"){t=E(0);if(t.id==="(endline)"){e=1;do n=E(e),e+=1;while(n.id==="(endline)");if(n.id!==";"){if(n.id!=="(string)"&&n.id!=="(number)"&&n.id!=="(regexp)"&&n.identifier!==!0&&n.id!=="}")break;d("Missing semicolon.",Pt)}else t=n}else if(t.id==="}")d("Missing semicolon.",t);else if(t.id!==";")break;A(),S(),Jt[Gt.value]&&d('Unnecessary directive "{a}".',Gt,Gt.value),Gt.value==="use strict"&&(jt["(explicitNewcap)"]||(jt.newcap=!0),jt.undef=!0),Jt[Gt.value]=!0,t.id===";"&&S(";");continue}break}}function et(e,n,r){var i,s=Nt,o=Ct,u,a=Wt,f,l,c;Nt=e;if(!e||!jt.funcscope)Wt=Object.create(Wt);k(Gt,Pt),f=Pt;var h=wt["(metrics)"];h.nestedBlockDepth+=1,h.verifyMaxNestedBlockDepthPerFunction();if(Pt.id==="{"){S("{"),l=Gt.line;if(Pt.id!=="}"){Ct+=jt.indent;while(!e&&Pt.from>Ct)Ct+=jt.indent;if(r){u={};for(c in Jt)t(Jt,c)&&(u[c]=Jt[c]);Z(),jt.strict&&wt["(context)"]["(global)"]&&!u["use strict"]&&!Jt["use strict"]&&d('Missing "use strict" statement.')}i=Y(l),h.statementCount+=i.length,r&&(Jt=u),Ct-=jt.indent,l!==Pt.line&&A()}else l!==Pt.line&&A();S("}",f),Ct=o}else e?((!n||jt.curly)&&d("Expected '{a}' and instead saw '{b}'.",Pt,"{",Pt.value),Bt=!0,Ct+=jt.indent,i=[G(Pt.line===Gt.line)],Ct-=jt.indent,Bt=!1):m("Expected '{a}' and instead saw '{b}'.",Pt,"{",Pt.value);wt["(verb)"]=null;if(!e||!jt.funcscope)Wt=a;return Nt=s,e&&jt.noempty&&(!i||i.length===0)&&d("Empty block."),h.nestedBlockDepth-=1,i}function tt(e){_t&&typeof _t[e]!="boolean"&&d("Unexpected /*member '{a}'.",Gt,e),typeof Mt[e]=="number"?Mt[e]+=1:Mt[e]=1}function nt(e){var t=e.value,n=e.line,r=Tt[t];typeof r=="function"&&(r=!1),r?r[r.length-1]!==n&&r.push(n):(r=[n],Tt[t]=r)}function rt(){var e=J(!0);return e||(Pt.id==="(string)"?(e=Pt.value,S()):Pt.id==="(number)"&&(e=Pt.value.toString(),S())),e}function it(){var e=Pt,t=[],n;S("("),C();if(Pt.id===")"){S(")");return}for(;;){n=K(!0),t.push(n),b(n,"unused",Gt);if(Pt.id!==",")return S(")",e),C(qt,Gt),t;M()}}function st(e,t){var n,r=jt,i=Wt;return jt=Object.create(jt),Wt=Object.create(Wt),wt={"(name)":e||'"'+ft+'"',"(line)":Pt.line,"(character)":Pt.character,"(context)":wt,"(breakage)":0,"(loopage)":0,"(metrics)":ot(Pt),"(scope)":Wt,"(statement)":t,"(tokens)":{}},n=wt,Gt.funct=wt,St.push(wt),e&&b(e,"function"),wt["(params)"]=it(),wt["(metrics)"].verifyMaxParametersPerFunction(wt["(params)"]),et(!1,!1,!0),wt["(metrics)"].verifyMaxStatementsPerFunction(),wt["(metrics)"].verifyMaxComplexityPerFunction(),Wt=i,jt=r,wt["(last)"]=Gt.line,wt["(lastcharacter)"]=Gt.character,wt=wt["(context)"],n}function ot(e){return{statementCount:0,nestedBlockDepth:-1,ComplexityCount:1,verifyMaxStatementsPerFunction:function(){if(jt.maxstatements&&this.statementCount>jt.maxstatements){var t="Too many statements per function ("+this.statementCount+").";d(t,e)}},verifyMaxParametersPerFunction:function(t){t=t||[];if(jt.maxparams&&t.length>jt.maxparams){var n="Too many parameters per function ("+t.length+").";d(n,e)}},verifyMaxNestedBlockDepthPerFunction:function(){if(jt.maxdepth&&this.nestedBlockDepth>0&&this.nestedBlockDepth===jt.maxdepth+1){var e="Blocks are nested too deeply ("+this.nestedBlockDepth+").";d(e)}},verifyMaxComplexityPerFunction:function(){var t=jt.maxcomplexity,n=this.ComplexityCount;if(t&&n>t){var r="Cyclomatic complexity is too high per function ("+n+").";d(r,e)}}}}function ut(){wt["(metrics)"].ComplexityCount+=1}function at(){function e(){var e={},t=Pt;S("{");if(Pt.id!=="}")for(;;){if(Pt.id==="(end)")m("Missing '}' to match '{' from line {a}.",Pt,t.line);else{if(Pt.id==="}"){d("Unexpected comma.",Gt);break}Pt.id===","?m("Unexpected comma.",Pt):Pt.id!=="(string)"&&d("Expected a string and instead saw {a}.",Pt,Pt.value)}e[Pt.value]===!0?d("Duplicate key '{a}'.",Pt,Pt.value):Pt.value==="__proto__"&&!jt.proto||Pt.value==="__iterator__"&&!jt.iterator?d("The '{a}' key may produce unexpected results.",Pt,Pt.value):e[Pt.value]=!0,S(),S(":"),at();if(Pt.id!==",")break;S(",")}S("}")}function t(){var e=Pt;S("[");if(Pt.id!=="]")for(;;){if(Pt.id==="(end)")m("Missing ']' to match '[' from line {a}.",Pt,e.line);else{if(Pt.id==="]"){d("Unexpected comma.",Gt);break}Pt.id===","&&m("Unexpected comma.",Pt)}at();if(Pt.id!==",")break;S(",")}S("]")}switch(Pt.id){case"{":e();break;case"[":t();break;case"true":case"false":case"null":case"(number)":case"(string)":S();break;case"-":S("-"),Gt.character!==Pt.from&&d("Unexpected space after '-'.",Gt),T(Gt,Pt),S("(number)");break;default:m("Expected a JSON value.",Pt)}}var ft,lt={"<":!0,"<=":!0,"==":!0,"===":!0,"!==":!0,"!=":!0,">":!0,">=":!0,"+":!0,"-":!0,"*":!0,"/":!0,"%":!0},ct={asi:!0,bitwise:!0,boss:!0,browser:!0,camelcase:!0,couch:!0,curly:!0,debug:!0,devel:!0,dojo:!0,eqeqeq:!0,eqnull:!0,es5:!0,esnext:!0,evil:!0,expr:!0,forin:!0,funcscope:!0,globalstrict:!0,immed:!0,iterator:!0,jquery:!0,lastsemic:!0,latedef:!0,laxbreak:!0,laxcomma:!0,loopfunc:!0,mootools:!0,multistr:!0,newcap:!0,noarg:!0,node:!0,noempty:!0,nonew:!0,nonstandard:!0,nomen:!0,onevar:!0,onecase:!0,passfail:!0,plusplus:!0,proto:!0,prototypejs:!0,regexdash:!0,regexp:!0,rhino:!0,undef:!0,unused:!0,scripturl:!0,shadow:!0,smarttabs:!0,strict:!0,sub:!0,supernew:!0,trailing:!0,validthis:!0,withstmt:!0,white:!0,worker:!0,wsh:!0,yui:!0},ht={maxlen:!1,indent:!1,maxerr:!1,predef:!1,quotmark:!1,scope:!1,maxstatements:!1,maxdepth:!1,maxparams:!1,maxcomplexity:!1},pt={bitwise:!0,forin:!0,newcap:!0,nomen:!0,plusplus:!0,regexp:!0,undef:!0,white:!0,eqeqeq:!0,onevar:!0},dt={eqeq:"eqeqeq",vars:"onevar",windows:"wsh"},vt={ArrayBuffer:!1,ArrayBufferView:!1,Audio:!1,Blob:!1,addEventListener:!1,applicationCache:!1,atob:!1,blur:!1,btoa:!1,clearInterval:!1,clearTimeout:!1,close:!1,closed:!1,DataView:!1,DOMParser:!1,defaultStatus:!1,document:!1,event:!1,FileReader:!1,Float32Array:!1,Float64Array:!1,FormData:!1,focus:!1,frames:!1,getComputedStyle:!1,HTMLElement:!1,HTMLAnchorElement:!1,HTMLBaseElement:!1,HTMLBlockquoteElement:!1,HTMLBodyElement:!1,HTMLBRElement:!1,HTMLButtonElement:!1,HTMLCanvasElement:!1,HTMLDirectoryElement:!1,HTMLDivElement:!1,HTMLDListElement:!1,HTMLFieldSetElement:!1,HTMLFontElement:!1,HTMLFormElement:!1,HTMLFrameElement:!1,HTMLFrameSetElement:!1,HTMLHeadElement:!1,HTMLHeadingElement:!1,HTMLHRElement:!1,HTMLHtmlElement:!1,HTMLIFrameElement:!1,HTMLImageElement:!1,HTMLInputElement:!1,HTMLIsIndexElement:!1,HTMLLabelElement:!1,HTMLLayerElement:!1,HTMLLegendElement:!1,HTMLLIElement:!1,HTMLLinkElement:!1,HTMLMapElement:!1,HTMLMenuElement:!1,HTMLMetaElement:!1,HTMLModElement:!1,HTMLObjectElement:!1,HTMLOListElement:!1,HTMLOptGroupElement:!1,HTMLOptionElement:!1,HTMLParagraphElement:!1,HTMLParamElement:!1,HTMLPreElement:!1,HTMLQuoteElement:!1,HTMLScriptElement:!1,HTMLSelectElement:!1,HTMLStyleElement:!1,HTMLTableCaptionElement:!1,HTMLTableCellElement:!1,HTMLTableColElement:!1,HTMLTableElement:!1,HTMLTableRowElement:!1,HTMLTableSectionElement:!1,HTMLTextAreaElement:!1,HTMLTitleElement:!1,HTMLUListElement:!1,HTMLVideoElement:!1,history:!1,Int16Array:!1,Int32Array:!1,Int8Array:!1,Image:!1,length:!1,localStorage:!1,location:!1,MessageChannel:!1,MessageEvent:!1,MessagePort:!1,moveBy:!1,moveTo:!1,MutationObserver:!1,name:!1,Node:!1,NodeFilter:!1,navigator:!1,onbeforeunload:!0,onblur:!0,onerror:!0,onfocus:!0,onload:!0,onresize:!0,onunload:!0,open:!1,openDatabase:!1,opener:!1,Option:!1,parent:!1,print:!1,removeEventListener:!1,resizeBy:!1,resizeTo:!1,screen:!1,scroll:!1,scrollBy:!1,scrollTo:!1,sessionStorage:!1,setInterval:!1,setTimeout:!1,SharedWorker:!1,status:!1,top:!1,Uint16Array:!1,Uint32Array:!1,Uint8Array:!1,WebSocket:!1,window:!1,Worker:!1,XMLHttpRequest:!1,XMLSerializer:!1,XPathEvaluator:!1,XPathException:!1,XPathExpression:!1,XPathNamespace:!1,XPathNSResolver:!1,XPathResult:!1},mt={require:!1,respond:!1,getRow:!1,emit:!1,send:!1,start:!1,sum:!1,log:!1,exports:!1,module:!1,provides:!1},gt,yt={alert:!1,confirm:!1,console:!1,Debug:!1,opera:!1,prompt:!1},bt={dojo:!1,dijit:!1,dojox:!1,define:!1,require:!1},wt,Et=["closure","exception","global","label","outer","unused","var"],St,xt,Tt,Nt,Ct,kt,Lt={$:!1,jQuery:!1},At,Ot,Mt,_t,Dt={$:!1,$$:!1,Asset:!1,Browser:!1,Chain:!1,Class:!1,Color:!1,Cookie:!1,Core:!1,Document:!1,DomReady:!1,DOMEvent:!1,DOMReady:!1,Drag:!1,Element:!1,Elements:!1,Event:!1,Events:!1,Fx:!1,Group:!1,Hash:!1,HtmlTable:!1,Iframe:!1,IframeShim:!1,InputValidator:!1,instanceOf:!1,Keyboard:!1,Locale:!1,Mask:!1,MooTools:!1,Native:!1,Options:!1,OverText:!1,Request:!1,Scroller:!1,Slick:!1,Slider:!1,Sortables:!1,Spinner:!1,Swiff:!1,Tips:!1,Type:!1,typeOf:!1,URI:!1,Window:!1},Pt,Ht={__filename:!1,__dirname:!1,Buffer:!1,console:!1,exports:!0,GLOBAL:!1,global:!1,module:!1,process:!1,require:!1,setTimeout:!1,clearTimeout:!1,setInterval:!1,clearInterval:!1},Bt,jt,Ft,It,qt,Rt={$:!1,$$:!1,$A:!1,$F:!1,$H:!1,$R:!1,$break:!1,$continue:!1,$w:!1,Abstract:!1,Ajax:!1,Class:!1,Enumerable:!1,Element:!1,Event:!1,Field:!1,Form:!1,Hash:!1,Insertion:!1,ObjectRange:!1,PeriodicalExecuter:!1,Position:!1,Prototype:!1,Selector:!1,Template:!1,Toggle:!1,Try:!1,Autocompleter:!1,Builder:!1,Control:!1,Draggable:!1,Draggables:!1,Droppables:!1,Effect:!1,Sortable:!1,SortableObserver:!1,Sound:!1,Scriptaculous:!1},Ut,zt={defineClass:!1,deserialize:!1,gc:!1,help:!1,importPackage:!1,java:!1,load:!1,loadClass:!1,print:!1,quit:!1,readFile:!1,readUrl:!1,runCommand:!1,seal:!1,serialize:!1,spawn:!1,sync:!1,toint32:!1,version:!1},Wt,Xt,Vt={Array:!1,Boolean:!1,Date:!1,decodeURI:!1,decodeURIComponent:!1,encodeURI:!1,encodeURIComponent:!1,Error:!1,eval:!1,EvalError:!1,Function:!1,hasOwnProperty:!1,isFinite:!1,isNaN:!1,JSON:!1,Map:!1,Math:!1,NaN:!1,Number:!1,Object:!1,parseInt:!1,parseFloat:!1,RangeError:!1,ReferenceError:!1,RegExp:!1,Set:!1,String:!1,SyntaxError:!1,TypeError:!1,URIError:!1,WeakMap:!1},$t={escape:!1,unescape:!1},Jt,Kt={},Qt,Gt,Yt,Zt,en,tn,nn={importScripts:!0,postMessage:!0,self:!0},rn={ActiveXObject:!0,Enumerator:!0,GetObject:!0,ScriptEngine:!0,ScriptEngineBuildVersion:!0,ScriptEngineMajorVersion:!0,ScriptEngineMinorVersion:!0,VBArray:!0,WSH:!0,WScript:!0,XDomainRequest:!0},sn={YUI:!1,Y:!1,YUI_config:!1},on,un,an,fn,ln,cn,hn,pn,dn;(function(){on=/@cc|<\/?|script|\]\s*\]|<\s*!|&lt/i,un=/[\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/,an=/^\s*([(){}\[.,:;'"~\?\]#@]|==?=?|\/=(?!(\S*\/[gim]?))|\/(\*(jshint|jslint|members?|global)?|\/)?|\*[\/=]?|\+(?:=|\++)?|-(?:=|-+)?|%=?|&[&=]?|\|[|=]?|>>?>?=?|<([\/=!]|\!(\[|--)?|<=?)?|\^=?|\!=?=?|[a-zA-Z_$][a-zA-Z0-9_$]*|[0-9]+([xX][0-9a-fA-F]+|\.[0-9]*)?([eE][+\-]?[0-9]+)?)/,fn=/[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/,ln=/[\u0000-\u001f&<"\/\\\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,cn=/\*\//,hn=/^([a-zA-Z_$][a-zA-Z0-9_$]*)$/,pn=/^(?:javascript|jscript|ecmascript|vbscript|mocha|livescript)\s*:/i,dn=/^\s*\/\*\s*falls\sthrough\s*\*\/\s*$/})(),typeof Array.isArray!="function"&&(Array.isArray=function(e){return Object.prototype.toString.apply(e)==="[object Array]"}),Array.prototype.forEach||(Array.prototype.forEach=function(e,t){var n=this.length;for(var r=0;r<n;r++)e.call(t||this,this[r],r,this)}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){if(this===null||this===undefined)throw new TypeError;var t=new Object(this),n=t.length>>>0;if(n===0)return-1;var r=0;arguments.length>0&&(r=Number(arguments[1]),r!=r?r=0:r!==0&&r!=Infinity&&r!=-Infinity&&(r=(r>0||-1)*Math.floor(Math.abs(r))));if(r>=n)return-1;var i=r>=0?r:Math.max(n-Math.abs(r),0);for(;i<n;i++)if(i in t&&t[i]===e)return i;return-1}),typeof Object.create!="function"&&(Object.create=function(t){return e.prototype=t,new e}),typeof Object.keys!="function"&&(Object.keys=function(e){var n=[],r;for(r in e)t(e,r)&&n.push(r);return n});var vn=function(){function e(){var e,t,n;return u>=At.length?!1:(r=1,a=At[u],u+=1,jt.smarttabs?(t=a.match(/(\/\/)? \t/),e=t&&!t[1]?0:-1):e=a.search(/ \t|\t [^\*]/),e>=0&&v("Mixed spaces and tabs.",u,e+1),a=a.replace(/\t/g,Qt),e=a.search(un),e>=0&&v("Unsafe character.",u,e),jt.maxlen&&jt.maxlen<a.length&&v("Line too long.",u,a.length),n=jt.trailing&&a.match(/^(.*?)\s+$/),n&&!/^\s+$/.test(a)&&v("Trailing whitespace.",u,n[1].length+1),!0)}function n(e,n){function s(e){if(!jt.proto&&e==="__proto__"){v("The '{a}' property is deprecated.",u,i,e);return}if(!jt.iterator&&e==="__iterator__"){v("'{a}' is only available in JavaScript 1.7.",u,i,e);return}var t=/^(_+.*|.*_+)$/.test(e);if(jt.nomen&&t&&e!=="_"){if(jt.node&&Gt.id!=="."&&/^(__dirname|__filename)$/.test(e))return;v("Unexpected {a} in '{b}'.",u,i,"dangling '_'",e);return}jt.camelcase&&e.replace(/^_+/,"").indexOf("_")>-1&&!e.match(/^[A-Z0-9_]*$/)&&v("Identifier '{a}' is not in camel case.",u,i,n)}var o,a;return e==="(color)"||e==="(range)"?a={type:e}:e==="(punctuator)"||e==="(identifier)"&&t(Kt,n)?a=Kt[n]||Kt["(error)"]:a=Kt[e],a=Object.create(a),(e==="(string)"||e==="(range)")&&!jt.scripturl&&pn.test(n)&&v("Script URL.",u,i),e==="(identifier)"&&(a.identifier=!0,s(n)),a.value=n,a.line=u,a.character=r,a.from=i,o=a.id,o!=="(endline)"&&(It=o&&("(,=:[!&|?{};".indexOf(o.charAt(o.length-1))>=0||o==="return"||o==="case")),a}var r,i,u,a;return{init:function(t){typeof t=="string"?At=t.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split("\n"):At=t,At[0]&&At[0].substr(0,2)==="#!"&&(At[0]=""),u=0,e(),i=1},range:function(e,t){var s,o="";i=r,a.charAt(0)!==e&&g("Expected '{a}' and instead saw '{b}'.",u,r,e,a.charAt(0));for(;;){a=a.slice(1),r+=1,s=a.charAt(0);switch(s){case"":g("Missing '{a}'.",u,r,s);break;case t:return a=a.slice(1),r+=1,n("(range)",o);case"\\":v("Unexpected '{a}'.",u,r,s)}o+=s}},token:function(){function t(e){var t=e.exec(a),n;if(t)return w=t[0].length,n=t[1],c=n.charAt(0),a=a.substr(w),i=r+w-n.length,r+=w,n}function f(t){function s(e){var t=parseInt(a.substr(f+1,e),16);f+=e,t>=32&&t<=126&&t!==34&&t!==92&&t!==39&&v("Unnecessary escapement.",u,r),r+=e,o=String.fromCharCode(t)}var o,f,l="",c=!1;kt&&t!=='"'&&v("Strings must use doublequote.",u,r),jt.quotmark&&(jt.quotmark==="single"&&t!=="'"?v("Strings must use singlequote.",u,r):jt.quotmark==="double"&&t!=='"'?v("Strings must use doublequote.",u,r):jt.quotmark===!0&&(Ut=Ut||t,Ut!==t&&v("Mixed double and single quotes.",u,r))),f=0;e:for(;;){while(f>=a.length){f=0;var h=u,p=i;if(!e()){g("Unclosed string.",h,p);break e}c?c=!1:v("Unclosed string.",h,p)}o=a.charAt(f);if(o===t)return r+=1,a=a.substr(f+1),n("(string)",l,t);if(o<" "){if(o==="\n"||o==="\r")break;v("Control character in string: {a}.",u,r+f,a.slice(0,f))}else if(o==="\\"){f+=1,r+=1,o=a.charAt(f),C=a.charAt(f+1);switch(o){case"\\":case'"':case"/":break;case"'":kt&&v("Avoid \\'.",u,r);break;case"b":o="\b";break;case"f":o="\f";break;case"n":o="\n";break;case"r":o="\r";break;case"t":o=" ";break;case"0":o="\0",C>=0&&C<=7&&Jt["use strict"]&&v("Octal literals are not allowed in strict mode.",u,r);break;case"u":s(4);break;case"v":kt&&v("Avoid \\v.",u,r),o=" ";break;case"x":kt&&v("Avoid \\x-.",u,r),s(2);break;case"":c=!0;if(jt.multistr){kt&&v("Avoid EOL escapement.",u,r),o="",r-=1;break}v("Bad escapement of EOL. Use option multistr if needed.",u,r);break;case"!":if(a.charAt(f-2)==="<")break;default:v("Bad escapement.",u,r)}}l+=o,r+=1,f+=1}}var l,c,p,d,m,y,b,w,E,S,x,T,N,C;for(;;){if(!a)return n(e()?"(endline)":"(end)","");x=t(an);if(!x){x="",c="";while(a&&a<"!")a=a.substr(1);a&&(g("Unexpected '{a}'.",u,r,a.substr(0,1)),a="")}else{if(s(c)||c==="_"||c==="$")return n("(identifier)",x);if(o(c))return isFinite(Number(x))||v("Bad number '{a}'.",u,r,x),s(a.substr(0,1))&&v("Missing space after '{a}'.",u,r,x),c==="0"&&(d=x.substr(1,1),o(d)?Gt.id!=="."&&v("Don't use extra leading zeros '{a}'.",u,r,x):kt&&(d==="x"||d==="X")&&v("Avoid 0x-. '{a}'.",u,r,x)),x.substr(x.length-1)==="."&&v("A trailing decimal point can be confused with a dot '{a}'.",u,r,x),n("(number)",x);switch(x){case'"':case"'":return f(x);case"//":a="",Gt.comment=!0;break;case"/*":for(;;){b=a.search(cn);if(b>=0)break;e()||g("Unclosed comment.",u,r)}a=a.substr(b+2),Gt.comment=!0;break;case"/*members":case"/*member":case"/*jshint":case"/*jslint":case"/*global":case"*/":return{value:x,type:"special",line:u,character:r,from:i};case"":break;case"/":a.charAt(0)==="="&&g("A regular expression literal can be confused with '/='.",u,i);if(It){m=0,p=0,w=0;for(;;){l=!0,c=a.charAt(w),w+=1;switch(c){case"":return g("Unclosed regular expression.",u,i),h("Stopping.",u,i);case"/":m>0&&v("{a} unterminated regular expression group(s).",u,i+w,m),c=a.substr(0,w-1),S={g:!0,i:!0,m:!0};while(S[a.charAt(w)]===!0)S[a.charAt(w)]=!1,w+=1;return r+=w,a=a.substr(w),S=a.charAt(0),(S==="/"||S==="*")&&g("Confusing regular expression.",u,i),n("(regexp)",c);case"\\":c=a.charAt(w),c<" "?v("Unexpected control character in regular expression.",u,i+w):c==="<"&&v("Unexpected escaped character '{a}' in regular expression.",u,i+w,c),w+=1;break;case"(":m+=1,l=!1;if(a.charAt(w)==="?"){w+=1;switch(a.charAt(w)){case":":case"=":case"!":w+=1;break;default:v("Expected '{a}' and instead saw '{b}'.",u,i+w,":",a.charAt(w))}}else p+=1;break;case"|":l=!1;break;case")":m===0?v("Unescaped '{a}'.",u,i+w,")"):m-=1;break;case" ":S=1;while(a.charAt(w)===" ")w+=1,S+=1;S>1&&v("Spaces are hard to count. Use {{a}}.",u,i+w,S);break;case"[":c=a.charAt(w),c==="^"&&(w+=1,a.charAt(w)==="]"&&g("Unescaped '{a}'.",u,i+w,"^")),c==="]"&&v("Empty class.",u,i+w-1),T=!1,N=!1;e:do{c=a.charAt(w),w+=1;switch(c){case"[":case"^":v("Unescaped '{a}'.",u,i+w,c),N?N=!1:T=!0;break;case"-":T&&!N?(T=!1,N=!0):N?N=!1:a.charAt(w)==="]"?N=!0:(jt.regexdash!==(w===2||w===3&&a.charAt(1)==="^")&&v("Unescaped '{a}'.",u,i+w-1,"-"),T=!0);break;case"]":N&&!jt.regexdash&&v("Unescaped '{a}'.",u,i+w-1,"-");break e;case"\\":c=a.charAt(w),c<" "?v("Unexpected control character in regular expression.",u,i+w):c==="<"&&v("Unexpected escaped character '{a}' in regular expression.",u,i+w,c),w+=1,/[wsd]/i.test(c)?(N&&(v("Unescaped '{a}'.",u,i+w,"-"),N=!1),T=!1):N?N=!1:T=!0;break;case"/":v("Unescaped '{a}'.",u,i+w-1,"/"),N?N=!1:T=!0;break;case"<":N?N=!1:T=!0;break;default:N?N=!1:T=!0}}while(c);break;case".":jt.regexp&&v("Insecure '{a}'.",u,i+w,c);break;case"]":case"?":case"{":case"}":case"+":case"*":v("Unescaped '{a}'.",u,i+w,c)}if(l)switch(a.charAt(w)){case"?":case"+":case"*":w+=1,a.charAt(w)==="?"&&(w+=1);break;case"{":w+=1,c=a.charAt(w);if(c<"0"||c>"9"){v("Expected a number and instead saw '{a}'.",u,i+w,c);break}w+=1,E=+c;for(;;){c=a.charAt(w);if(c<"0"||c>"9")break;w+=1,E=+c+E*10}y=E;if(c===","){w+=1,y=Infinity,c=a.charAt(w);if(c>="0"&&c<="9"){w+=1,y=+c;for(;;){c=a.charAt(w);if(c<"0"||c>"9")break;w+=1,y=+c+y*10}}}a.charAt(w)!=="}"?v("Expected '{a}' and instead saw '{b}'.",u,i+w,"}",c):w+=1,a.charAt(w)==="?"&&(w+=1),E>y&&v("'{a}' should not be greater than '{b}'.",u,i+w,E,y)}}return c=a.substr(0,w-1),r+=w,a=a.substr(w),n("(regexp)",c)}return n("(punctuator)",x);case"#":return n("(punctuator)",x);default:return n("(punctuator)",x)}}}}}}();F("(number)",function(){return this}),F("(string)",function(){return this}),Kt["(identifier)"]={type:"(identifier)",lbp:0,identifier:!0,nud:function(){var e=this.value,t=Wt[e],n;typeof t=="function"?t=undefined:typeof t=="boolean"&&(n=wt,wt=St[0],b(e,"var"),t=wt,wt=n);if(wt===t)switch(wt[e]){case"unused":wt[e]="var";break;case"unction":wt[e]="function",this["function"]=!0;break;case"function":this["function"]=!0;break;case"label":d("'{a}' is a statement label.",Gt,e)}else if(wt["(global)"])jt.undef&&typeof Ft[e]!="boolean"&&(ft!=="typeof"&&ft!=="delete"||Pt&&(Pt.value==="."||Pt.value==="["))&&p(wt,"'{a}' is not defined.",Gt,e),nt(Gt);else switch(wt[e]){case"closure":case"function":case"var":case"unused":d("'{a}' used out of scope.",Gt,e);break;case"label":d("'{a}' is a statement label.",Gt,e);break;case"outer":case"global":break;default:if(t===!0)wt[e]=!0;else if(t===null)d("'{a}' is not allowed.",Gt,e),nt(Gt);else if(typeof t!="object")jt.undef&&(ft!=="typeof"&&ft!=="delete"||Pt&&(Pt.value==="."||Pt.value==="["))&&p(wt,"'{a}' is not defined.",Gt,e),wt[e]=!0,nt(Gt);else switch(t[e]){case"function":case"unction":this["function"]=!0,t[e]="closure",wt[e]=t["(global)"]?"global":"outer";break;case"var":case"unused":t[e]="closure",wt[e]=t["(global)"]?"global":"outer";break;case"closure":wt[e]=t["(global)"]?"global":"outer";break;case"label":d("'{a}' is a statement label.",Gt,e)}}return this},led:function(){m("Expected an operator and instead saw '{a}'.",Pt,Pt.value)}},F("(regexp)",function(){return this}),D("(endline)"),D("(begin)"),D("(end)").reach=!0,D("</").reach=!0,D("<!"),D("<!--"),D("-->"),D("(error)").reach=!0,D("}").reach=!0,D(")"),D("]"),D('"').reach=!0,D("'").reach=!0,D(";"),D(":").reach=!0,D(","),D("#"),D("@"),I("else"),I("case").reach=!0,I("catch"),I("default").reach=!0,I("finally"),q("arguments",function(e){Jt["use strict"]&&wt["(global)"]&&d("Strict violation.",e)}),q("eval"),q("false"),q("Infinity"),q("null"),q("this",function(e){Jt["use strict"]&&!jt.validthis&&(wt["(statement)"]&&wt["(name)"].charAt(0)>"Z"||wt["(global)"])&&d("Possible strict violation.",e)}),q("true"),q("undefined"),W("=","assign",20),W("+=","assignadd",20),W("-=","assignsub",20),W("*=","assignmult",20),W("/=","assigndiv",20).nud=function(){m("A regular expression literal can be confused with '/='.")},W("%=","assignmod",20),V("&=","assignbitand",20),V("|=","assignbitor",20),V("^=","assignbitxor",20),V("<<=","assignshiftleft",20),V(">>=","assignshiftright",20),V(">>>=","assignshiftrightunsigned",20),R("?",function(e,t){return t.left=e,t.right=x(10),S(":"),t["else"]=x(10),t},30),R("||","or",40),R("&&","and",50),X("|","bitor",70),X("^","bitxor",80),X("&","bitand",90),U("==",function(e,t){var n=jt.eqnull&&(e.value==="null"||t.value==="null");return!n&&jt.eqeqeq?d("Expected '{a}' and instead saw '{b}'.",this,"===","=="):z(e)?d("Use '{a}' to compare with '{b}'.",this,"===",e.value):z(t)&&d("Use '{a}' to compare with '{b}'.",this,"===",t.value),this}),U("==="),U("!=",function(e,t){var n=jt.eqnull&&(e.value==="null"||t.value==="null");return!n&&jt.eqeqeq?d("Expected '{a}' and instead saw '{b}'.",this,"!==","!="):z(e)?d("Use '{a}' to compare with '{b}'.",this,"!==",e.value):z(t)&&d("Use '{a}' to compare with '{b}'.",this,"!==",t.value),this}),U("!=="),U("<"),U(">"),U("<="),U(">="),X("<<","shiftleft",120),X(">>","shiftright",120),X(">>>","shiftrightunsigned",120),R("in","in",120),R("instanceof","instanceof",120),R("+",function(e,t){var n=x(130);return e&&n&&e.id==="(string)"&&n.id==="(string)"?(e.value+=n.value,e.character=n.character,!jt.scripturl&&pn.test(e.value)&&d("JavaScript URL.",e),e):(t.left=e,t.right=n,t)},130),j("+","num"),j("+++",function(){return d("Confusing pluses."),this.right=x(150),this.arity="unary",this}),R("+++",function(e){return d("Confusing pluses."),this.left=e,this.right=x(130),this},130),R("-","sub",130),j("-","neg"),j("---",function(){return d("Confusing minuses."),this.right=x(150),this.arity="unary",this}),R("---",function(e){return d("Confusing minuses."),this.left=e,this.right=x(130),this},130),R("*","mult",140),R("/","div",140),R("%","mod",140),$("++","postinc"),j("++","preinc"),Kt["++"].exps=!0,$("--","postdec"),j("--","predec"),Kt["--"].exps=!0,j("delete",function(){var e=x(0);return(!e||e.id!=="."&&e.id!=="[")&&d("Variables should not be deleted."),this.first=e,this}).exps=!0,j("~",function(){return jt.bitwise&&d("Unexpected '{a}'.",this,"~"),x(150),this}),j("!",function(){return this.right=x(150),this.arity="unary",lt[this.right.id]===!0&&d("Confusing use of '{a}'.",this,"!"),this}),j("typeof","typeof"),j("new",function(){var e=x(155),n;if(e&&e.id!=="function")if(e.identifier){e["new"]=!0;switch(e.value){case"Number":case"String":case"Boolean":case"Math":case"JSON":d("Do not use {a} as a constructor.",qt,e.value);break;case"Function":jt.evil||d("The Function constructor is eval.");break;case"Date":case"RegExp":break;default:e.id!=="function"&&(n=e.value.substr(0,1),jt.newcap&&(n<"A"||n>"Z")&&!t(xt,e.value)&&d("A constructor name should start with an uppercase letter.",Gt))}}else e.id!=="."&&e.id!=="["&&e.id!=="("&&d("Bad constructor.",Gt);else jt.supernew||d("Weird construction. Delete 'new'.",this);return T(Gt,Pt),Pt.id!=="("&&!jt.supernew&&d("Missing '()' invoking a constructor.",Gt,Gt.value),this.first=e,this}),Kt["new"].exps=!0,j("void").exps=!0,R(".",function(e,t){T(qt,Gt),N();var n=K();return typeof n=="string"&&tt(n),t.left=e,t.right=n,!e||e.value!=="arguments"||n!=="callee"&&n!=="caller"?!jt.evil&&e&&e.value==="document"&&(n==="write"||n==="writeln")&&d("document.write can be a form of eval.",e):jt.noarg?d("Avoid arguments.{a}.",e,n):Jt["use strict"]&&m("Strict violation."),!jt.evil&&(n==="eval"||n==="execScript")&&d("eval is evil."),t},160,!0),R("(",function(e,t){qt.id!=="}"&&qt.id!==")"&&N(qt,Gt),C(),jt.immed&&!e.immed&&e.id==="function"&&d("Wrap an immediate function invocation in parentheses to assist the reader in understanding that the expression is the result of a function, and not the function itself.");var n=0,r=[];e&&e.type==="(identifier)"&&e.value.match(/^[A-Z]([A-Z0-9_$]*[a-z][A-Za-z0-9_$]*)?$/)&&"Number String Boolean Date Object".indexOf(e.value)===-1&&(e.value==="Math"?d("Math is not a function.",e):jt.newcap&&d("Missing 'new' prefix when invoking a constructor.",e));if(Pt.id!==")")for(;;){r[r.length]=x(10),n+=1;if(Pt.id!==",")break;M()}return S(")"),C(qt,Gt),typeof e=="object"&&(e.value==="parseInt"&&n===1&&d("Missing radix parameter.",Gt),jt.evil||(e.value==="eval"||e.value==="Function"||e.value==="execScript"?(d("eval is evil.",e),r[0]&&[0].id==="(string)"&&y(e,r[0].value)):!r[0]||r[0].id!=="(string)"||e.value!=="setTimeout"&&e.value!=="setInterval"?r[0]&&r[0].id==="(string)"&&e.value==="."&&e.left.value==="window"&&(e.right==="setTimeout"||e.right==="setInterval")&&(d("Implied eval is evil. Pass a function instead of a string.",e),y(e,r[0].value)):(d("Implied eval is evil. Pass a function instead of a string.",e),y(e,r[0].value))),!e.identifier&&e.id!=="."&&e.id!=="["&&e.id!=="("&&e.id!=="&&"&&e.id!=="||"&&e.id!=="?"&&d("Bad invocation.",e)),t.left=e,t},155,!0).exps=!0,j("(",function(){C(),Pt.id==="function"&&(Pt.immed=!0);var e=x(0);return S(")",this),C(qt,Gt),jt.immed&&e.id==="function"&&Pt.id!=="("&&(Pt.id!=="."||E().value!=="call"&&E().value!=="apply")&&d("Do not wrap function literals in parens unless they are to be immediately invoked.",this),e}),R("[",function(e,t){N(qt,Gt),C();var n=x(0),r;return n&&n.type==="(string)"&&(!jt.evil&&(n.value==="eval"||n.value==="execScript")&&d("eval is evil.",t),tt(n.value),!jt.sub&&hn.test(n.value)&&(r=Kt[n.value],(!r||!r.reserved)&&d("['{a}'] is better written in dot notation.",qt,n.value))),S("]",t),C(qt,Gt),t.left=e,t.right=n,t},160,!0),j("[",function(){var e=Gt.line!==Pt.line;this.first=[],e&&(Ct+=jt.indent,Pt.from===Ct+jt.indent&&(Ct+=jt.indent));while(Pt.id!=="(end)"){while(Pt.id===",")jt.es5||d("Extra comma."),S(",");if(Pt.id==="]")break;e&&Gt.line!==Pt.line&&A(),this.first.push(x(10));if(Pt.id!==",")break;M();if(Pt.id==="]"&&!jt.es5){d("Extra comma.",Gt);break}}return e&&(Ct-=jt.indent,A()),S("]",this),this},160),function(e){e.nud=function(){function e(e,n){f[e]&&t(f,e)?d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].basic=!0,f[e].basicToken=n}function n(e,n){f[e]&&t(f,e)?(f[e].basic||f[e].setter)&&d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].setter=!0,f[e].setterToken=n}function r(e){f[e]&&t(f,e)?(f[e].basic||f[e].getter)&&d("Duplicate member '{a}'.",Pt,o):f[e]={},f[e].getter=!0,f[e].getterToken=Gt}var i,s,o,u,a,f={};i=Gt.line!==Pt.line,i&&(Ct+=jt.indent,Pt.from===Ct+jt.indent&&(Ct+=jt.indent));for(;;){if(Pt.id==="}")break;i&&A();if(Pt.value==="get"&&E().id!==":")S("get"),jt.es5||m("get/set are ES5 features."),o=rt(),o||m("Missing property name."),r(o),a=Pt,T(Gt,Pt),s=st(),u=s["(params)"],u&&d("Unexpected parameter '{a}' in get {b} function.",a,u[0],o),T(Gt,Pt);else if(Pt.value==="set"&&E().id!==":")S("set"),jt.es5||m("get/set are ES5 features."),o=rt(),o||m("Missing property name."),n(o,Pt),a=Pt,T(Gt,Pt),s=st(),u=s["(params)"],(!u||u.length!==1)&&d("Expected a single parameter in set {a} function.",a,o);else{o=rt(),e(o,Pt);if(typeof o!="string")break;S(":"),k(Gt,Pt),x(10)}tt(o);if(Pt.id!==",")break;M(),Pt.id===","?d("Extra comma.",Gt):Pt.id==="}"&&!jt.es5&&d("Extra comma.",Gt)}i&&(Ct-=jt.indent,A()),S("}",this);if(jt.es5)for(var l in f)t(f,l)&&f[l].setter&&!f[l].getter&&d("Setter is defined without getter.",f[l].setterToken);return this},e.fud=function(){m("Expected to see a statement and instead saw a block.",Gt)}}(D("{")),en=function(){var e=P("const",function(e){var t,n,r;this.first=[];for(;;){k(Gt,Pt),t=K(),wt[t]==="const"&&d("const '"+t+"' has already been declared"),wt["(global)"]&&Ft[t]===!1&&d("Redefinition of '{a}'.",Gt,t),b(t,"const");if(e)break;n=Gt,this.first.push(Gt),Pt.id!=="="&&d("const '{a}' is initialized to 'undefined'.",Gt,t),Pt.id==="="&&(k(Gt,Pt),S("="),k(Gt,Pt),Pt.id==="undefined"&&d("It is not necessary to initialize '{a}' to 'undefined'.",Gt,t),E(0).id==="="&&Pt.identifier&&m("Constant {a} was not declared correctly.",Pt,Pt.value),r=x(0),n.first=r);if(Pt.id!==",")break;M()}return this});e.exps=!0};var mn=P("var",function(e){var t,n,r;wt["(onevar)"]&&jt.onevar?d("Too many var statements."):wt["(global)"]||(wt["(onevar)"]=!0),this.first=[];for(;;){k(Gt,Pt),t=K(),jt.esnext&&wt[t]==="const"&&d("const '"+t+"' has already been declared"),wt["(global)"]&&Ft[t]===!1&&d("Redefinition of '{a}'.",Gt,t),b(t,"unused",Gt);if(e)break;n=Gt,this.first.push(Gt),Pt.id==="="&&(k(Gt,Pt),S("="),k(Gt,Pt),Pt.id==="undefined"&&d("It is not necessary to initialize '{a}' to 'undefined'.",Gt,t),E(0).id==="="&&Pt.identifier&&m("Variable {a} was not declared correctly.",Pt,Pt.value),r=x(0),n.first=r);if(Pt.id!==",")break;M()}return this});mn.exps=!0,H("function",function(){Nt&&d("Function declarations should not be placed in blocks. Use a function expression or move the statement to the top of the outer function.",Gt);var e=K();return jt.esnext&&wt[e]==="const"&&d("const '"+e+"' has already been declared"),T(Gt,Pt),b(e,"unction",Gt),st(e,{statement:!0}),Pt.id==="("&&Pt.line===Gt.line&&m("Function declarations are not invocable. Wrap the whole function invocation in parens."),this}),j("function",function(){var e=J();return e?T(Gt,Pt):k(Gt,Pt),st(e),!jt.loopfunc&&wt["(loopage)"]&&d("Don't make functions within a loop."),this}),H("if",function(){var e=Pt;return ut(),S("("),k(this,e),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),et(!0,!0),Pt.id==="else"&&(k(Gt,Pt),S("else"),Pt.id==="if"||Pt.id==="switch"?G(!0):et(!0,!0)),this}),H("try",function(){function e(){var e=Wt,t;S("catch"),k(Gt,Pt),S("("),Wt=Object.create(e),t=Pt.value,Pt.type!=="(identifier)"&&(t=null,d("Expected an identifier and instead saw '{a}'.",Pt,t)),S(),S(")"),wt={"(name)":"(catch)","(line)":Pt.line,"(character)":Pt.character,"(context)":wt,"(breakage)":wt["(breakage)"],"(loopage)":wt["(loopage)"],"(scope)":Wt,"(statement)":!1,"(metrics)":ot(Pt),"(catch)":!0,"(tokens)":{}},t&&b(t,"exception"),Gt.funct=wt,St.push(wt),et(!1),Wt=e,wt["(last)"]=Gt.line,wt["(lastcharacter)"]=Gt.character,wt=wt["(context)"]}var t;et(!1),Pt.id==="catch"&&(ut(),e(),t=!0);if(Pt.id==="finally"){S("finally"),et(!1);return}return t||m("Expected '{a}' and instead saw '{b}'.",Pt,"catch",Pt.value),this}),H("while",function(){var e=Pt;return wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),S("("),k(this,e),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),et(!0,!0),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}).labelled=!0,H("with",function(){var e=Pt;return Jt["use strict"]?m("'with' is not allowed in strict mode.",Gt):jt.withstmt||d("Don't use 'with'.",Gt),S("("),k(this,e),C(),x(0),S(")",e),C(qt,Gt),et(!0,!0),this}),H("switch",function(){var e=Pt,t=!1;wt["(breakage)"]+=1,S("("),k(this,e),C(),this.condition=x(20),S(")",e),C(qt,Gt),k(Gt,Pt),e=Pt,S("{"),k(Gt,Pt),Ct+=jt.indent,this.cases=[];for(;;)switch(Pt.id){case"case":switch(wt["(verb)"]){case"break":case"case":case"continue":case"return":case"switch":case"throw":break;default:dn.test(At[Pt.line-2])||d("Expected a 'break' statement before 'case'.",Gt)}A(-jt.indent),S("case"),this.cases.push(x(20)),ut(),t=!0,S(":"),wt["(verb)"]="case";break;case"default":switch(wt["(verb)"]){case"break":case"continue":case"return":case"throw":break;default:dn.test(At[Pt.line-2])||d("Expected a 'break' statement before 'default'.",Gt)}A(-jt.indent),S("default"),t=!0,S(":");break;case"}":Ct-=jt.indent,A(),S("}",e);if(this.cases.length===1||this.condition.id==="true"||this.condition.id==="false")jt.onecase||d("This 'switch' should be an 'if'.",this);wt["(breakage)"]-=1,wt["(verb)"]=undefined;return;case"(end)":m("Missing '{a}'.",Pt,"}");return;default:if(t)switch(Gt.id){case",":m("Each value should have its own case label.");return;case":":t=!1,Y();break;default:m("Missing ':' on a case clause.",Gt);return}else{if(Gt.id!==":"){m("Expected '{a}' and instead saw '{b}'.",Pt,"case",Pt.value);return}S(":"),m("Unexpected '{a}'.",Gt,":"),Y()}}}).labelled=!0,P("debugger",function(){return jt.debug||d("All 'debugger' statements should be removed."),this}).exps=!0,function(){var e=P("do",function(){wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),this.first=et(!0),S("while");var e=Pt;return k(Gt,e),S("("),C(),x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20)),S(")",e),C(qt,Gt),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this});e.labelled=!0,e.exps=!0}(),H("for",function(){var e,t=Pt;wt["(breakage)"]+=1,wt["(loopage)"]+=1,ut(),S("("),k(this,t),C();if(E(Pt.id==="var"?1:0).id==="in"){if(Pt.id==="var")S("var"),mn.fud.call(mn,!0);else{switch(wt[Pt.value]){case"unused":wt[Pt.value]="var";break;case"var":break;default:d("Bad for in variable '{a}'.",Pt,Pt.value)}S()}return S("in"),x(20),S(")",t),e=et(!0,!0),jt.forin&&e&&(e.length>1||typeof e[0]!="object"||e[0].value!=="if")&&d("The body of a for in should be wrapped in an if statement to filter unwanted properties from the prototype.",this),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}if(Pt.id!==";")if(Pt.id==="var")S("var"),mn.fud.call(mn);else for(;;){x(0,"for");if(Pt.id!==",")break;M()}O(Gt),S(";"),Pt.id!==";"&&(x(20),Pt.id==="="&&(jt.boss||d("Assignment in conditional expression"),S("="),x(20))),O(Gt),S(";"),Pt.id===";"&&m("Expected '{a}' and instead saw '{b}'.",Pt,")",";");if(Pt.id!==")")for(;;){x(0,"for");if(Pt.id!==",")break;M()}return S(")",t),C(qt,Gt),et(!0,!0),wt["(breakage)"]-=1,wt["(loopage)"]-=1,this}).labelled=!0,P("break",function(){var e=Pt.value;return wt["(breakage)"]===0&&d("Unexpected '{a}'.",Pt,this.value),jt.asi||O(this),Pt.id!==";"&&Gt.line===Pt.line&&(wt[e]!=="label"?d("'{a}' is not a statement label.",Pt,e):Wt[e]!==wt&&d("'{a}' is out of scope.",Pt,e),this.first=Pt,S()),Q("break"),this}).exps=!0,P("continue",function(){var e=Pt.value;return wt["(breakage)"]===0&&d("Unexpected '{a}'.",Pt,this.value),jt.asi||O(this),Pt.id!==";"?Gt.line===Pt.line&&(wt[e]!=="label"?d("'{a}' is not a statement label.",Pt,e):Wt[e]!==wt&&d("'{a}' is out of scope.",Pt,e),this.first=Pt,S()):wt["(loopage)"]||d("Unexpected '{a}'.",Pt,this.value),Q("continue"),this}).exps=!0,P("return",function(){return this.line===Pt.line?(Pt.id==="(regexp)"&&d("Wrap the /regexp/ literal in parens to disambiguate the slash operator."),Pt.id!==";"&&!Pt.reach&&(k(Gt,Pt),E().value==="="&&!jt.boss&&v("Did you mean to return a conditional instead of an assignment?",Gt.line,Gt.character+1),this.first=x(0))):jt.asi||O(this),Q("return"),this}).exps=!0,P("throw",function(){return O(this),k(Gt,Pt),this.first=x(20),Q("throw"),this}).exps=!0,I("class"),I("const"),I("enum"),I("export"),I("extends"),I("import"),I("super"),I("let"),I("yield"),I("implements"),I("interface"),I("package"),I("private"),I("protected"),I("public"),I("static");var gn=function(e,s,o){var u,a,l,h,p,m={};s&&s.scope?r.scope=s.scope:(r.errors=[],r.undefs=[],r.internals=[],r.blacklist={},r.scope="(main)"),Ft=Object.create(Vt),gt=Object.create(null),f(Ft,o||{});if(s){u=s.predef,u&&(!Array.isArray(u)&&typeof u=="object"&&(u=Object.keys(u)),u.forEach(function(e){var t;e[0]==="-"?(t=e.slice(1),r.blacklist[t]=t):Ft[e]=!0})),p=Object.keys(s);for(h=0;h<p.length;h++)m[p[h]]=s[p[h]],p[h]==="newcap"&&s[p[h]]===!1&&(m["(explicitNewcap)"]=!0),p[h]==="indent"&&(m.white=!0)}jt=m,jt.indent=jt.indent||4,jt.maxerr=jt.maxerr||50,Qt="";for(a=0;a<jt.indent;a+=1)Qt+=" ";Ct=1,xt=Object.create(Ft),Wt=xt,wt={"(global)":!0,"(name)":"(global)","(scope)":Wt,"(breakage)":0,"(loopage)":0,"(tokens)":{},"(metrics)":ot(Pt)},St=[wt],Zt=[],Xt=null,Mt={},_t=null,Tt={},Nt=!1,Ot=[],kt=!1,tn=0,At=[],Yt=[];if(!i(e)&&!Array.isArray(e))return g("Input is neither a string nor an array of strings.",0),!1;if(i(e)&&/^\s*$/g.test(e))return g("Input is an empty string.",0),!1;if(e.length===0)return g("Input is an empty array.",0),!1;vn.init(e),It=!0,Jt={},qt=Gt=Pt=Kt["(begin)"];for(var y in s)t(s,y)&&n(y,Gt);c(),f(Ft,o||{}),M.first=!0,Ut=undefined;try{S();switch(Pt.id){case"{":case"[":jt.laxbreak=!0,kt=!0,at();break;default:Z(),Jt["use strict"]&&!jt.globalstrict&&d('Use the function form of "use strict".',qt),Y()}S(Pt&&Pt.value!=="."?"(end)":undefined);var b=function(e,t){do{if(typeof t[e]=="string")return t[e]==="unused"?t[e]="var":t[e]==="unction"&&(t[e]="closure"),!0;t=t["(context)"]}while(t);return!1},w=function(e,t){if(!Tt[e])return;var n=[];for(var r=0;r<Tt[e].length;r+=1)Tt[e][r]!==t&&n.push(Tt[e][r]);n.length===0?delete Tt[e]:Tt[e]=n},E=function(e,t){var n=t.line,r=t.character;jt.unused&&v("'{a}' is defined but never used.",n,r,e),Yt.push({name:e,line:n,character:r})},x=function(e,t){var n=e[t],r=e["(tokens)"][t];if(t.charAt(0)==="(")return;if(n!=="unused"&&n!=="unction")return;if(e["(params)"]&&e["(params)"].indexOf(t)!==-1)return;E(t,r)};for(a=0;a<r.undefs.length;a+=1)l=r.undefs[a].slice(0),b(l[2].value,l[0])?w(l[2].value,l[2].line):d.apply(d,l.slice(1));St.forEach(function(e){for(var n in e)t(e,n)&&x(e,n);if(!e["(params)"])return;var r=e["(params)"].slice(),i=r.pop(),s;while(i){s=e[i];if(i==="undefined")return;if(s!=="unused"&&s!=="unction")return;E(i,e["(tokens)"][i]),i=r.pop()}});for(var T in gt)t(gt,T)&&!t(xt,T)&&E(T,gt[T])}catch(N){if(N){var C=Pt||{};r.errors.push({raw:N.raw,reason:N.message,line:N.line||C.line,character:N.character||C.from},null)}}if(r.scope==="(main)"){s=s||{};for(a=0;a<r.internals.length;a+=1)l=r.internals[a],s.scope=l.elem,gn(l.value,s,o)}return r.errors.length===0};return gn.data=function(){var e={functions:[],options:jt},n=[],r=[],i,s,o,u,a,f;gn.errors.length&&(e.errors=gn.errors),kt&&(e.json=!0);for(a in Tt)t(Tt,a)&&n.push({name:a,line:Tt[a]});n.length>0&&(e.implieds=n),Zt.length>0&&(e.urls=Zt),f=Object.keys(Wt),f.length>0&&(e.globals=f);for(o=1;o<St.length;o+=1){s=St[o],i={};for(u=0;u<Et.length;u+=1)i[Et[u]]=[];for(u=0;u<Et.length;u+=1)i[Et[u]].length===0&&delete i[Et[u]];i.name=s["(name)"],i.param=s["(params)"],i.line=s["(line)"],i.character=s["(character)"],i.last=s["(last)"],i.lastcharacter=s["(lastcharacter)"],e.functions.push(i)}Yt.length>0&&(e.unused=Yt),r=[];for(a in Mt)if(typeof Mt[a]=="number"){e.member=Mt;break}return e},gn.jshint=gn,gn}();typeof t=="object"&&t&&(t.JSHINT=r)})
4049 ^
4050
40510 error(s), 4 warning(s)
4052Linting './lib/viewers/text/worker-json.js' ...
4053./lib/viewers/text/worker-json.js:1: WARNING - Suspicious code. Is there a missing '+' on the previous line?
4054"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/json_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/json/json_parse"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("./json/json_parse"),o=t.JsonWorker=function(e){i.call(this,e),this.setTimeout(200)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue();try{var t=s(e)}catch(n){var r=this.doc.indexToPosition(n.at-1);this.sender.emit("error",{row:r.row,column:r.column,text:n.message,type:"error"});return}this.sender.emit("ok")}}.call(o.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/json/json_parse",["require","exports","module"],function(e,t,n){var r,i,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:" "},o,u=function(e){throw{name:"SyntaxError",message:e,at:r,text:o}},a=function(e){return e&&e!==i&&u("Expected '"+e+"' instead of '"+i+"'"),i=o.charAt(r),r+=1,i},f=function(){var e,t="";i==="-"&&(t="-",a("-"));while(i>="0"&&i<="9")t+=i,a();if(i==="."){t+=".";while(a()&&i>="0"&&i<="9")t+=i}if(i==="e"||i==="E"){t+=i,a();if(i==="-"||i==="+")t+=i,a();while(i>="0"&&i<="9")t+=i,a()}e=+t;if(!isNaN(e))return e;u("Bad number")},l=function(){var e,t,n="",r;if(i==='"')while(a()){if(i==='"')return a(),n;if(i==="\\"){a();if(i==="u"){r=0;for(t=0;t<4;t+=1){e=parseInt(a(),16);if(!isFinite(e))break;r=r*16+e}n+=String.fromCharCode(r)}else{if(typeof s[i]!="string")break;n+=s[i]}}else n+=i}u("Bad string")},c=function(){while(i&&i<=" ")a()},h=function(){switch(i){case"t":return a("t"),a("r"),a("u"),a("e"),!0;case"f":return a("f"),a("a"),a("l"),a("s"),a("e"),!1;case"n":return a("n"),a("u"),a("l"),a("l"),null}u("Unexpected '"+i+"'")},p,d=function(){var e=[];if(i==="["){a("["),c();if(i==="]")return a("]"),e;while(i){e.push(p()),c();if(i==="]")return a("]"),e;a(","),c()}}u("Bad array")},v=function(){var e,t={};if(i==="{"){a("{"),c();if(i==="}")return a("}"),t;while(i){e=l(),c(),a(":"),Object.hasOwnProperty.call(t,e)&&u('Duplicate key "'+e+'"'),t[e]=p(),c();if(i==="}")return a("}"),t;a(","),c()}}u("Bad object")};return p=function(){c();switch(i){case"{":return v();case"[":return d();case'"':return l();case"-":return f();default:return i>="0"&&i<="9"?f():h()}},function(e,t){var n;return o=e,r=0,i=" ",n=p(),c(),i&&u("Syntax error"),typeof t=="function"?function s(e,n){var r,i,o=e[n];if(o&&typeof o=="object")for(r in o)Object.hasOwnProperty.call(o,r)&&(i=s(o,r),i!==undefined?o[r]=i:delete o[r]);return t.call(e,n,o)}({"":n},""):n}})
4055^
4056
4057./lib/viewers/text/worker-json.js:1: WARNING - Suspicious code. The result of the 'eq' operator is not being used.
4058"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/json_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/json/json_parse"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("./json/json_parse"),o=t.JsonWorker=function(e){i.call(this,e),this.setTimeout(200)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue();try{var t=s(e)}catch(n){var r=this.doc.indexToPosition(n.at-1);this.sender.emit("error",{row:r.row,column:r.column,text:n.message,type:"error"});return}this.sender.emit("ok")}}.call(o.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/json/json_parse",["require","exports","module"],function(e,t,n){var r,i,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:" "},o,u=function(e){throw{name:"SyntaxError",message:e,at:r,text:o}},a=function(e){return e&&e!==i&&u("Expected '"+e+"' instead of '"+i+"'"),i=o.charAt(r),r+=1,i},f=function(){var e,t="";i==="-"&&(t="-",a("-"));while(i>="0"&&i<="9")t+=i,a();if(i==="."){t+=".";while(a()&&i>="0"&&i<="9")t+=i}if(i==="e"||i==="E"){t+=i,a();if(i==="-"||i==="+")t+=i,a();while(i>="0"&&i<="9")t+=i,a()}e=+t;if(!isNaN(e))return e;u("Bad number")},l=function(){var e,t,n="",r;if(i==='"')while(a()){if(i==='"')return a(),n;if(i==="\\"){a();if(i==="u"){r=0;for(t=0;t<4;t+=1){e=parseInt(a(),16);if(!isFinite(e))break;r=r*16+e}n+=String.fromCharCode(r)}else{if(typeof s[i]!="string")break;n+=s[i]}}else n+=i}u("Bad string")},c=function(){while(i&&i<=" ")a()},h=function(){switch(i){case"t":return a("t"),a("r"),a("u"),a("e"),!0;case"f":return a("f"),a("a"),a("l"),a("s"),a("e"),!1;case"n":return a("n"),a("u"),a("l"),a("l"),null}u("Unexpected '"+i+"'")},p,d=function(){var e=[];if(i==="["){a("["),c();if(i==="]")return a("]"),e;while(i){e.push(p()),c();if(i==="]")return a("]"),e;a(","),c()}}u("Bad array")},v=function(){var e,t={};if(i==="{"){a("{"),c();if(i==="}")return a("}"),t;while(i){e=l(),c(),a(":"),Object.hasOwnProperty.call(t,e)&&u('Duplicate key "'+e+'"'),t[e]=p(),c();if(i==="}")return a("}"),t;a(","),c()}}u("Bad object")};return p=function(){c();switch(i){case"{":return v();case"[":return d();case'"':return l();case"-":return f();default:return i>="0"&&i<="9"?f():h()}},function(e,t){var n;return o=e,r=0,i=" ",n=p(),c(),i&&u("Syntax error"),typeof t=="function"?function s(e,n){var r,i,o=e[n];if(o&&typeof o=="object")for(r in o)Object.hasOwnProperty.call(o,r)&&(i=s(o,r),i!==undefined?o[r]=i:delete o[r]);return t.call(e,n,o)}({"":n},""):n}})
4059 ^
4060
40610 error(s), 2 warning(s)
4062Linting './lib/viewers/text/worker-lua.js' ...
4063./lib/viewers/text/worker-lua.js:1: WARNING - Suspicious code. Is there a missing '+' on the previous line?
4064"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/lua_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/lua/luaparse"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("../mode/lua/luaparse"),o=t.Worker=function(e){i.call(this,e),this.setTimeout(500)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue();try{s.parse(e)}catch(t){t instanceof SyntaxError&&this.sender.emit("error",{row:t.line-1,column:t.column,text:t.message,type:"error"});return}this.sender.emit("ok")}}.call(o.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/lua/luaparse",["require","exports","module","exports"],function(e,t,n){(function(e,n,r){typeof t!="undefined"?r(t):typeof define=="function"&&define.amd?define(["exports"],r):r(e[n]={})})(this,"luaparse",function(e){function t(e){var t=bt.call(arguments,1);return e=e.replace(/%(\d)/g,function(e,n){return e="",""+t[n-1]||""}),e}function n(){var e=bt.call(arguments),t={},n,r;for(var i=0,s=e.length;i<s;i++){n=e[i];for(r in n)n.hasOwnProperty(r)&&(t[r]=n[r])}return t}function r(e){var n=t.apply(null,bt.call(arguments,1)),r,i;throw"undefined"!=typeof e.line?(i=e.range[0]-e.lineStart,r=new SyntaxError(t("[%1:%2] %3",e.line,i,n)),r.line=e.line,r.index=e.range[0],r.column=i):(i=Et-kt+1,r=new SyntaxError(t("[%1:%2] %3",Ct,i,n)),r.index=Et,r.line=Ct,r.column=i),r}function i(e,t){r(t,gt.expectedToken,e,t.value)}function s(e,t){"undefined"==typeof t&&(t=xt.value);if("undefined"!=typeof e.type){var n;switch(e.type){case lt:n="string";break;case ct:n="keyword";break;case ht:n="identifier";break;case pt:n="number";break;case dt:n="symbol";break;case vt:n="boolean";break;case mt:return r(e,gt.unexpected,"symbol","nil",t)}return r(e,gt.unexpected,n,e.value,t)}return r(e,gt.unexpected,"symbol",e,t)}function o(){u();while(45===st.charCodeAt(Et)&&45===st.charCodeAt(Et+1))m(),u();if(Et>=ut)return{type:ft,value:"<eof>",line:Ct,lineStart:kt,range:[Et,Et]};var e=st.charCodeAt(Et),t=st.charCodeAt(Et+1);Nt=Et;if(C(e))return a();switch(e){case 39:case 34:return l();case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return h();case 46:if(T(t))return h();if(46===t)return 46===st.charCodeAt(Et+2)?f("..."):f("..");return f(".");case 61:if(61===t)return f("==");return f("=");case 62:if(61===t)return f(">=");return f(">");case 60:if(61===t)return f("<=");return f("<");case 126:if(61===t)return f("~=");return r({},gt.expected,"=","~");case 58:if(58===t)return f("::");return f(":");case 91:if(91===t||61===t)return c();return f("[");case 42:case 47:case 94:case 37:case 44:case 123:case 125:case 93:case 40:case 41:case 59:case 35:case 45:case 43:return f(st.charAt(Et))}return s(st.charAt(Et))}function u(){while(Et<ut){var e=st.charCodeAt(Et);if(S(e))Et++;else{if(!x(e))break;Ct++,kt=++Et}}}function a(){var e,t;while(k(st.charCodeAt(++Et)));return e=st.slice(Nt,Et),L(e)?t=ct:"true"===e||"false"===e?(t=vt,e="true"===e):"nil"===e?(t=mt,e=null):t=ht,{type:t,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function f(e){return Et+=e.length,{type:dt,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function l(){var e=st.charCodeAt(Et++),t=Et,n="",i;while(Et<ut){i=st.charCodeAt(Et++);if(e===i)break;if(92===i)n+=st.slice(t,Et-1)+v(),t=Et;else if(Et>=ut||x(i))n+=st.slice(t,Et-1),r({},gt.unfinishedString,n+String.fromCharCode(i))}return n+=st.slice(t,Et-1),{type:lt,value:n,line:Ct,lineStart:kt,range:[Nt,Et]}}function c(){var e=g();return!1===e&&r(St,gt.expected,"[",St.value),{type:lt,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function h(){var e=st.charAt(Et),t=st.charAt(Et+1),n="0"===e&&~"xX".indexOf(t||null)?p():d();return{type:pt,value:n,line:Ct,lineStart:kt,range:[Nt,Et]}}function p(){var e=0,t=1,n=1,i,s,o,u;u=Et+=2,N(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(N(st.charCodeAt(Et)))Et++;i=parseInt(st.slice(u,Et),16);if("."===st.charAt(Et)){s=++Et;while(N(st.charCodeAt(Et)))Et++;e=st.slice(s,Et),e=s===Et?0:parseInt(e,16)/Math.pow(16,Et-s)}if(~"pP".indexOf(st.charAt(Et)||null)){Et++,~"+-".indexOf(st.charAt(Et)||null)&&(n="+"===st.charAt(Et++)?1:-1),o=Et,T(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(T(st.charCodeAt(Et)))Et++;t=st.slice(o,Et),t=Math.pow(2,t*n)}return(i+e)*t}function d(){while(T(st.charCodeAt(Et)))Et++;if("."===st.charAt(Et)){Et++;while(T(st.charCodeAt(Et)))Et++}if(~"eE".indexOf(st.charAt(Et)||null)){Et++,~"+-".indexOf(st.charAt(Et)||null)&&Et++,T(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(T(st.charCodeAt(Et)))Et++}return parseFloat(st.slice(Nt,Et))}function v(){var e=Et;switch(st.charAt(Et)){case"n":return Et++,"\n";case"r":return Et++,"\r";case"t":return Et++," ";case"v":return Et++," ";case"b":return Et++,"\b";case"f":return Et++,"\f";case"z":return Et++,u(),"";case"x":if(N(st.charCodeAt(Et+1))&&N(st.charCodeAt(Et+2)))return Et+=3,"\\"+st.slice(e,Et);return"\\"+st.charAt(Et++);default:if(T(st.charCodeAt(Et))){while(T(st.charCodeAt(++Et)));return"\\"+st.slice(e,Et)}return st.charAt(Et++)}}function m(){Nt=Et,Et+=2;var e=st.charAt(Et),t="",n=!1,r=Et;"["===e&&(t=g(),!1===t?t=e:(n=!0,Et+=2));if(!n){while(Et<ut){if(x(st.charCodeAt(Et)))break;Et++}t=st.slice(r,Et)}ot.comments&&Tt.push({type:"Comment",value:t,raw:st.slice(Nt,Et)})}function g(){var e=0,t="",n=!1,r,i;Et++;while("="===st.charAt(Et+e))e++;if("["!==st.charAt(Et+e))return!1;Et+=e+1,x(st.charCodeAt(Et))&&(Ct++,kt=Et++),i=Et;while(Et<ut){r=st.charAt(Et++),x(r.charCodeAt(0))&&(Ct++,kt=Et);if("]"===r){n=!0;for(var s=0;s<e;s++)"="!==st.charAt(Et+s)&&(n=!1);"]"!==st.charAt(Et+e)&&(n=!1)}if(n)break;"\\"===r&&(t+=st.slice(i,Et-1)+v(),i=Et)}return t+=st.slice(i,Et-1),Et+=e+1,t}function y(){St=xt,xt=o()}function b(e){return e===St.value?(y(),!0):!1}function w(e){if(null!=e)return e;i("<expression>",St)}function E(e){e===St.value?y():r(St,gt.expected,e,St.value)}function S(e){return 9===e||32===e||11===e||12===e}function x(e){return 10===e||13===e}function T(e){return e>=48&&e<=57}function N(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function C(e){return e>=65&&e<=90||e>=97&&e<=122||95===e}function k(e){return e>=65&&e<=90||e>=97&&e<=122||95===e||e>=48&&e<=57}function L(e){switch(e.length){case 2:return"do"===e||"if"===e||"in"===e||"or"===e;case 3:return"and"===e||"end"===e||"for"===e||"not"===e;case 4:return"else"===e||"goto"===e||"then"===e;case 5:return"break"===e||"local"===e||"until"===e||"while"===e;case 6:return"elseif"===e||"repeat"===e||"return"===e;case 8:return"function"===e}return!1}function A(e){return dt===e.type?~"#-".indexOf(e.value):ct===e.type?"not"===e.value:!1}function O(e){switch(e.type){case"CallExpression":case"TableCallExpression":case"StringCallExpression":return!0}return!1}function M(e){if(ft===e.type)return!0;if(ct!==e.type)return!1;switch(e.value){case"else":case"elseif":case"end":case"until":return!0;default:return!1}}function _(){y();var e=D();return ft!==St.type&&s(St),yt.chunk(e)}function D(e){var t=[],n;while(!M(St)){if("return"===St.value){t.push(P());break}n=P(),n&&t.push(n)}return t}function P(){if(ct===St.type)switch(St.value){case"local":return y(),W();case"if":return y(),U();case"return":return y(),R();case"function":y();var e=J();return $(e);case"while":return y(),I();case"for":return y(),z();case"repeat":return y(),q();case"break":return y(),B();case"do":return y(),F();case"goto":return y(),j()}if(dt===St.type&&b("::"))return H();if(b(";"))return;return X()}function H(){var e=V();return E("::"),yt.labelStatement(e)}function B(){return yt.breakStatement()}function j(){var e=V();return yt.gotoStatement(e)}function F(){var e=D();return E("end"),yt.doStatement(e)}function I(){var e=Q();E("do");var t=D();return E("end"),yt.whileStatement(e,t)}function q(){var e=D();E("until");var t=w(Q());return yt.repeatStatement(t,e)}function R(){var e=[];if("end"!==St.value){var t=Q();null!=t&&e.push(t);while(b(","))t=w(Q()),e.push(t);b(";")}return yt.returnStatement(e)}function U(){var e=[],t,n;do t=Q(),E("then"),n=D(),e.push(yt.elseifClause(t,n));while(b("elseif"));return b("else")&&(n=D(),e.push(yt.elseClause(n))),E("end"),yt.ifStatement(e)}function z(){var e=V(),t;if(b("=")){var n=w(Q());E(",");var r=w(Q()),i=b(",")?w(Q()):null;return E("do"),t=D(),E("end"),yt.forNumericStatement(e,n,r,i,t)}var s=[e];while(b(","))s.push(V());E("in");var o=[];do{var u=w(Q());o.push(u)}while(b(","));return E("do"),t=D(),E("end"),yt.forGenericStatement(s,o,t)}function W(){if(ht===St.type){var e=[],t=[];do e.push(V());while(b(","));if(b("="))do{var n=w(Q());t.push(n)}while(b(","));return yt.localStatement(e,t)}if(b("function")){var r=V();return $(r,!0)}i("<name>",St)}function X(){var e=St,t=Z();if(null==t)return s(St);if(~",=".indexOf(St.value)){var n=[t],r=[],i;while(b(","))i=w(Z()),n.push(i);E("=");do i=w(Q()),r.push(i);while(b(","));return yt.assignmentStatement(n,r)}return O(t)?yt.callStatement(t):s(e)}function V(){var e=St.value;return ht!==St.type&&i("<name>",St),y(),yt.identifier(e)}function $(e,t){var n=!1,r=[];E("(");if(b("..."))n=!0;else if(ht===St.type)do{if(b("...")){n=!0;break}r.push(V())}while(b(","));n?E(")"):b(")")||i("<name> or '...'",St);var s=D();return E("end"),t=t||!1,yt.functionStatement(e,r,n,t,s)}function J(){var e=V();while(b("."))e=yt.memberExpression(e,".",V());return b(":")&&(e=yt.memberExpression(e,":",V())),e}function K(){var e=[],t,n;for(;;){if(dt===St.type&&b("["))t=Q(),E("]"),E("="),n=w(Q()),e.push(yt.tableKey(t,n));else if(ht===St.type)t=Q(),b("=")?(n=Q(),e.push(yt.tableKeyString(t,n))):e.push(yt.tableValue(t));else{if(null==(n=Q()))break;e.push(yt.tableValue(n))}if(~",;".indexOf(St.value)){y();continue}if("}"===St.value)break}return E("}"),yt.tableConstructorExpression(e)}function Q(){var e=Y(0);return e}function G(e){var t=e.charCodeAt(0),n=e.length;if(1===n)switch(t){case 94:return 10;case 42:case 47:case 37:return 7;case 43:case 45:return 6;case 60:case 62:return 3}else if(2===n)switch(t){case 46:return 5;case 60:case 62:case 61:case 126:return 3;case 111:return 1}else if(97===t&&"and"===e)return 2;return 0}function Y(e){var t=St.value,n;if(A(St)){y();var r=w(Y(8));n=yt.unaryExpression(t,r)}null==n&&(n=tt(),null==n&&(n=Z()));if(null==n)return null;var i;for(;;){t=St.value,i=dt===St.type||ct===St.type?G(t):0;if(i===0||i<=e)break;("^"===t||".."===t)&&i--,y();var s=w(Y(i));n=yt.binaryExpression(t,n,s)}return n}function Z(){var e;if(ht===St.type)e=V();else{if(!b("("))return null;e=Q(),E(")")}var t,n;for(;;){w(e);if(dt===St.type)switch(St.value){case"[":y(),t=Q(),e=yt.indexExpression(e,t),E("]");break;case".":y(),n=V(),e=yt.memberExpression(e,".",n);break;case":":y(),n=V(),e=yt.memberExpression(e,":",n),e=et(e);break;case"(":case"{":e=et(e);break;default:return e}else{if(lt!==St.type)break;e=et(e)}}return e}function et(e){if(dt===St.type)switch(St.value){case"(":y();var t=[],n=Q();null!=n&&t.push(n);while(b(","))n=w(Q()),t.push(n);return E(")"),yt.callExpression(e,t);case"{":y();var r=K();return yt.tableCallExpression(e,r)}else if(lt===St.type){var s=St.value;return y(),yt.stringCallExpression(e,s)}i("function arguments",St)}function tt(){var e=lt|pt|vt|mt,t=St.value;if(St.type&e){var n=st.slice(St.range[0],St.range[1]);return y(),yt.literal(t,n)}if(ct===St.type&&"function"===St.value)return y(),$(null);if(dt===St.type){if(b("..."))return yt.varargLiteral(t);if(b("{"))return K()}}function nt(t,r){return"undefined"==typeof r&&"object"==typeof t&&(r=t,t=undefined),r||(r={}),st=t||"",ot=n(at,r),Et=0,Ct=1,kt=0,ut=st.length,ot.comments&&(Tt=[]),ot.wait?e:it()}function rt(t){return st+=String(t),ut=st.length,e}function it(e){"undefined"!=typeof e&&rt(e),ut=st.length,xt=o();var t=_();return ot.comments&&(t.comments=Tt),t}e.version="0.0.1";var st,ot,ut,at=e.defaultOptions={wait:!1,comments:!0},ft=1,lt=2,ct=4,ht=8,pt=16,dt=32,vt=64,mt=128,gt=e.errors={unexpected:"Unexpected %1 '%2' near '%3'",expected:"'%1' expected near '%2'",expectedToken:"%1 expected near '%2'",unfinishedString:"unfinished string near '%1'",malformedNumber:"malformed number near '%1'"},yt=e.ast={labelStatement:function(e){return{type:"LabelStatement",label:e}},breakStatement:function(){return{type:"BreakStatement"}},gotoStatement:function(e){return{type:"GotoStatement",label:e}},returnStatement:function(e){return{type:"ReturnStatement",arguments:e}},ifStatement:function(e){return{type:"IfStatement",clauses:e}},elseifClause:function(e,t){return{type:"ElseifClause",condition:e,body:t}},elseClause:function(e){return{type:"ElseClause",body:e}},whileStatement:function(e,t){return{type:"WhileStatement",condition:e,body:t}},doStatement:function(e){return{type:"DoStatement",body:e}},repeatStatement:function(e,t){return{type:"RepeatStatement",condition:e,body:t}},localStatement:function(e,t){return{type:"LocalStatement",variables:e,init:t}},assignmentStatement:function(e,t){return{type:"AssignmentStatement",variables:e,init:t}},callStatement:function(e){return{type:"CallStatement",expression:e}},functionStatement:function(e,t,n,r,i){return{type:"FunctionDeclaration",identifier:e,vararg:n,local:r,parameters:t,body:i}},forNumericStatement:function(e,t,n,r,i){return{type:"ForNumericStatement",variable:e,start:t,end:n,step:r,body:i}},forGenericStatement:function(e,t,n){return{type:"ForGenericStatement",variables:e,iterators:t,body:n}},chunk:function(e){return{type:"Chunk",body:e}},identifier:function(e){return{type:"Identifier",name:e}},literal:function(e,t){return{type:"Literal",value:e,raw:t}},varargLiteral:function(){return{type:"VarargLiteral"}},tableKey:function(e,t){return{type:"TableKey",key:e,value:t}},tableKeyString:function(e,t){return{type:"TableKeyString",key:e,value:t}},tableValue:function(e){return{type:"TableValue",value:e}},tableConstructorExpression:function(e){return{type:"TableConstructorExpression",fields:e}},binaryExpression:function(e,t,n){var r="and"===e||"or"===e?"LogicalExpression":"BinaryExpression";return{type:r,operator:e,left:t,right:n}},unaryExpression:function(e,t){return{type:"UnaryExpression",operator:e,argument:t}},memberExpression:function(e,t,n){return{type:"MemberExpression",indexer:t,identifier:n,base:e}},indexExpression:function(e,t){return{type:"IndexExpression",base:e,index:t}},callExpression:function(e,t){return{type:"CallExpression",base:e,arguments:t}},tableCallExpression:function(e,t){return{type:"TableCallExpression",base:e,arguments:t}},stringCallExpression:function(e,t){return{type:"StringCallExpression",base:e,argument:t}}},bt=Array.prototype.slice,wt=Object.prototype.toString,Et,St,xt,Tt,Nt,Ct,kt;e.parse=nt,e.write=rt,e.end=it,e.lex=o})})
4065^
4066
4067./lib/viewers/text/worker-lua.js:1: WARNING - If this if/for/while really shouldn't have a body, use {}
4068"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/lua_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/lua/luaparse"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("../mode/lua/luaparse"),o=t.Worker=function(e){i.call(this,e),this.setTimeout(500)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue();try{s.parse(e)}catch(t){t instanceof SyntaxError&&this.sender.emit("error",{row:t.line-1,column:t.column,text:t.message,type:"error"});return}this.sender.emit("ok")}}.call(o.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/lua/luaparse",["require","exports","module","exports"],function(e,t,n){(function(e,n,r){typeof t!="undefined"?r(t):typeof define=="function"&&define.amd?define(["exports"],r):r(e[n]={})})(this,"luaparse",function(e){function t(e){var t=bt.call(arguments,1);return e=e.replace(/%(\d)/g,function(e,n){return e="",""+t[n-1]||""}),e}function n(){var e=bt.call(arguments),t={},n,r;for(var i=0,s=e.length;i<s;i++){n=e[i];for(r in n)n.hasOwnProperty(r)&&(t[r]=n[r])}return t}function r(e){var n=t.apply(null,bt.call(arguments,1)),r,i;throw"undefined"!=typeof e.line?(i=e.range[0]-e.lineStart,r=new SyntaxError(t("[%1:%2] %3",e.line,i,n)),r.line=e.line,r.index=e.range[0],r.column=i):(i=Et-kt+1,r=new SyntaxError(t("[%1:%2] %3",Ct,i,n)),r.index=Et,r.line=Ct,r.column=i),r}function i(e,t){r(t,gt.expectedToken,e,t.value)}function s(e,t){"undefined"==typeof t&&(t=xt.value);if("undefined"!=typeof e.type){var n;switch(e.type){case lt:n="string";break;case ct:n="keyword";break;case ht:n="identifier";break;case pt:n="number";break;case dt:n="symbol";break;case vt:n="boolean";break;case mt:return r(e,gt.unexpected,"symbol","nil",t)}return r(e,gt.unexpected,n,e.value,t)}return r(e,gt.unexpected,"symbol",e,t)}function o(){u();while(45===st.charCodeAt(Et)&&45===st.charCodeAt(Et+1))m(),u();if(Et>=ut)return{type:ft,value:"<eof>",line:Ct,lineStart:kt,range:[Et,Et]};var e=st.charCodeAt(Et),t=st.charCodeAt(Et+1);Nt=Et;if(C(e))return a();switch(e){case 39:case 34:return l();case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return h();case 46:if(T(t))return h();if(46===t)return 46===st.charCodeAt(Et+2)?f("..."):f("..");return f(".");case 61:if(61===t)return f("==");return f("=");case 62:if(61===t)return f(">=");return f(">");case 60:if(61===t)return f("<=");return f("<");case 126:if(61===t)return f("~=");return r({},gt.expected,"=","~");case 58:if(58===t)return f("::");return f(":");case 91:if(91===t||61===t)return c();return f("[");case 42:case 47:case 94:case 37:case 44:case 123:case 125:case 93:case 40:case 41:case 59:case 35:case 45:case 43:return f(st.charAt(Et))}return s(st.charAt(Et))}function u(){while(Et<ut){var e=st.charCodeAt(Et);if(S(e))Et++;else{if(!x(e))break;Ct++,kt=++Et}}}function a(){var e,t;while(k(st.charCodeAt(++Et)));return e=st.slice(Nt,Et),L(e)?t=ct:"true"===e||"false"===e?(t=vt,e="true"===e):"nil"===e?(t=mt,e=null):t=ht,{type:t,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function f(e){return Et+=e.length,{type:dt,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function l(){var e=st.charCodeAt(Et++),t=Et,n="",i;while(Et<ut){i=st.charCodeAt(Et++);if(e===i)break;if(92===i)n+=st.slice(t,Et-1)+v(),t=Et;else if(Et>=ut||x(i))n+=st.slice(t,Et-1),r({},gt.unfinishedString,n+String.fromCharCode(i))}return n+=st.slice(t,Et-1),{type:lt,value:n,line:Ct,lineStart:kt,range:[Nt,Et]}}function c(){var e=g();return!1===e&&r(St,gt.expected,"[",St.value),{type:lt,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function h(){var e=st.charAt(Et),t=st.charAt(Et+1),n="0"===e&&~"xX".indexOf(t||null)?p():d();return{type:pt,value:n,line:Ct,lineStart:kt,range:[Nt,Et]}}function p(){var e=0,t=1,n=1,i,s,o,u;u=Et+=2,N(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(N(st.charCodeAt(Et)))Et++;i=parseInt(st.slice(u,Et),16);if("."===st.charAt(Et)){s=++Et;while(N(st.charCodeAt(Et)))Et++;e=st.slice(s,Et),e=s===Et?0:parseInt(e,16)/Math.pow(16,Et-s)}if(~"pP".indexOf(st.charAt(Et)||null)){Et++,~"+-".indexOf(st.charAt(Et)||null)&&(n="+"===st.charAt(Et++)?1:-1),o=Et,T(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(T(st.charCodeAt(Et)))Et++;t=st.slice(o,Et),t=Math.pow(2,t*n)}return(i+e)*t}function d(){while(T(st.charCodeAt(Et)))Et++;if("."===st.charAt(Et)){Et++;while(T(st.charCodeAt(Et)))Et++}if(~"eE".indexOf(st.charAt(Et)||null)){Et++,~"+-".indexOf(st.charAt(Et)||null)&&Et++,T(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(T(st.charCodeAt(Et)))Et++}return parseFloat(st.slice(Nt,Et))}function v(){var e=Et;switch(st.charAt(Et)){case"n":return Et++,"\n";case"r":return Et++,"\r";case"t":return Et++," ";case"v":return Et++," ";case"b":return Et++,"\b";case"f":return Et++,"\f";case"z":return Et++,u(),"";case"x":if(N(st.charCodeAt(Et+1))&&N(st.charCodeAt(Et+2)))return Et+=3,"\\"+st.slice(e,Et);return"\\"+st.charAt(Et++);default:if(T(st.charCodeAt(Et))){while(T(st.charCodeAt(++Et)));return"\\"+st.slice(e,Et)}return st.charAt(Et++)}}function m(){Nt=Et,Et+=2;var e=st.charAt(Et),t="",n=!1,r=Et;"["===e&&(t=g(),!1===t?t=e:(n=!0,Et+=2));if(!n){while(Et<ut){if(x(st.charCodeAt(Et)))break;Et++}t=st.slice(r,Et)}ot.comments&&Tt.push({type:"Comment",value:t,raw:st.slice(Nt,Et)})}function g(){var e=0,t="",n=!1,r,i;Et++;while("="===st.charAt(Et+e))e++;if("["!==st.charAt(Et+e))return!1;Et+=e+1,x(st.charCodeAt(Et))&&(Ct++,kt=Et++),i=Et;while(Et<ut){r=st.charAt(Et++),x(r.charCodeAt(0))&&(Ct++,kt=Et);if("]"===r){n=!0;for(var s=0;s<e;s++)"="!==st.charAt(Et+s)&&(n=!1);"]"!==st.charAt(Et+e)&&(n=!1)}if(n)break;"\\"===r&&(t+=st.slice(i,Et-1)+v(),i=Et)}return t+=st.slice(i,Et-1),Et+=e+1,t}function y(){St=xt,xt=o()}function b(e){return e===St.value?(y(),!0):!1}function w(e){if(null!=e)return e;i("<expression>",St)}function E(e){e===St.value?y():r(St,gt.expected,e,St.value)}function S(e){return 9===e||32===e||11===e||12===e}function x(e){return 10===e||13===e}function T(e){return e>=48&&e<=57}function N(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function C(e){return e>=65&&e<=90||e>=97&&e<=122||95===e}function k(e){return e>=65&&e<=90||e>=97&&e<=122||95===e||e>=48&&e<=57}function L(e){switch(e.length){case 2:return"do"===e||"if"===e||"in"===e||"or"===e;case 3:return"and"===e||"end"===e||"for"===e||"not"===e;case 4:return"else"===e||"goto"===e||"then"===e;case 5:return"break"===e||"local"===e||"until"===e||"while"===e;case 6:return"elseif"===e||"repeat"===e||"return"===e;case 8:return"function"===e}return!1}function A(e){return dt===e.type?~"#-".indexOf(e.value):ct===e.type?"not"===e.value:!1}function O(e){switch(e.type){case"CallExpression":case"TableCallExpression":case"StringCallExpression":return!0}return!1}function M(e){if(ft===e.type)return!0;if(ct!==e.type)return!1;switch(e.value){case"else":case"elseif":case"end":case"until":return!0;default:return!1}}function _(){y();var e=D();return ft!==St.type&&s(St),yt.chunk(e)}function D(e){var t=[],n;while(!M(St)){if("return"===St.value){t.push(P());break}n=P(),n&&t.push(n)}return t}function P(){if(ct===St.type)switch(St.value){case"local":return y(),W();case"if":return y(),U();case"return":return y(),R();case"function":y();var e=J();return $(e);case"while":return y(),I();case"for":return y(),z();case"repeat":return y(),q();case"break":return y(),B();case"do":return y(),F();case"goto":return y(),j()}if(dt===St.type&&b("::"))return H();if(b(";"))return;return X()}function H(){var e=V();return E("::"),yt.labelStatement(e)}function B(){return yt.breakStatement()}function j(){var e=V();return yt.gotoStatement(e)}function F(){var e=D();return E("end"),yt.doStatement(e)}function I(){var e=Q();E("do");var t=D();return E("end"),yt.whileStatement(e,t)}function q(){var e=D();E("until");var t=w(Q());return yt.repeatStatement(t,e)}function R(){var e=[];if("end"!==St.value){var t=Q();null!=t&&e.push(t);while(b(","))t=w(Q()),e.push(t);b(";")}return yt.returnStatement(e)}function U(){var e=[],t,n;do t=Q(),E("then"),n=D(),e.push(yt.elseifClause(t,n));while(b("elseif"));return b("else")&&(n=D(),e.push(yt.elseClause(n))),E("end"),yt.ifStatement(e)}function z(){var e=V(),t;if(b("=")){var n=w(Q());E(",");var r=w(Q()),i=b(",")?w(Q()):null;return E("do"),t=D(),E("end"),yt.forNumericStatement(e,n,r,i,t)}var s=[e];while(b(","))s.push(V());E("in");var o=[];do{var u=w(Q());o.push(u)}while(b(","));return E("do"),t=D(),E("end"),yt.forGenericStatement(s,o,t)}function W(){if(ht===St.type){var e=[],t=[];do e.push(V());while(b(","));if(b("="))do{var n=w(Q());t.push(n)}while(b(","));return yt.localStatement(e,t)}if(b("function")){var r=V();return $(r,!0)}i("<name>",St)}function X(){var e=St,t=Z();if(null==t)return s(St);if(~",=".indexOf(St.value)){var n=[t],r=[],i;while(b(","))i=w(Z()),n.push(i);E("=");do i=w(Q()),r.push(i);while(b(","));return yt.assignmentStatement(n,r)}return O(t)?yt.callStatement(t):s(e)}function V(){var e=St.value;return ht!==St.type&&i("<name>",St),y(),yt.identifier(e)}function $(e,t){var n=!1,r=[];E("(");if(b("..."))n=!0;else if(ht===St.type)do{if(b("...")){n=!0;break}r.push(V())}while(b(","));n?E(")"):b(")")||i("<name> or '...'",St);var s=D();return E("end"),t=t||!1,yt.functionStatement(e,r,n,t,s)}function J(){var e=V();while(b("."))e=yt.memberExpression(e,".",V());return b(":")&&(e=yt.memberExpression(e,":",V())),e}function K(){var e=[],t,n;for(;;){if(dt===St.type&&b("["))t=Q(),E("]"),E("="),n=w(Q()),e.push(yt.tableKey(t,n));else if(ht===St.type)t=Q(),b("=")?(n=Q(),e.push(yt.tableKeyString(t,n))):e.push(yt.tableValue(t));else{if(null==(n=Q()))break;e.push(yt.tableValue(n))}if(~",;".indexOf(St.value)){y();continue}if("}"===St.value)break}return E("}"),yt.tableConstructorExpression(e)}function Q(){var e=Y(0);return e}function G(e){var t=e.charCodeAt(0),n=e.length;if(1===n)switch(t){case 94:return 10;case 42:case 47:case 37:return 7;case 43:case 45:return 6;case 60:case 62:return 3}else if(2===n)switch(t){case 46:return 5;case 60:case 62:case 61:case 126:return 3;case 111:return 1}else if(97===t&&"and"===e)return 2;return 0}function Y(e){var t=St.value,n;if(A(St)){y();var r=w(Y(8));n=yt.unaryExpression(t,r)}null==n&&(n=tt(),null==n&&(n=Z()));if(null==n)return null;var i;for(;;){t=St.value,i=dt===St.type||ct===St.type?G(t):0;if(i===0||i<=e)break;("^"===t||".."===t)&&i--,y();var s=w(Y(i));n=yt.binaryExpression(t,n,s)}return n}function Z(){var e;if(ht===St.type)e=V();else{if(!b("("))return null;e=Q(),E(")")}var t,n;for(;;){w(e);if(dt===St.type)switch(St.value){case"[":y(),t=Q(),e=yt.indexExpression(e,t),E("]");break;case".":y(),n=V(),e=yt.memberExpression(e,".",n);break;case":":y(),n=V(),e=yt.memberExpression(e,":",n),e=et(e);break;case"(":case"{":e=et(e);break;default:return e}else{if(lt!==St.type)break;e=et(e)}}return e}function et(e){if(dt===St.type)switch(St.value){case"(":y();var t=[],n=Q();null!=n&&t.push(n);while(b(","))n=w(Q()),t.push(n);return E(")"),yt.callExpression(e,t);case"{":y();var r=K();return yt.tableCallExpression(e,r)}else if(lt===St.type){var s=St.value;return y(),yt.stringCallExpression(e,s)}i("function arguments",St)}function tt(){var e=lt|pt|vt|mt,t=St.value;if(St.type&e){var n=st.slice(St.range[0],St.range[1]);return y(),yt.literal(t,n)}if(ct===St.type&&"function"===St.value)return y(),$(null);if(dt===St.type){if(b("..."))return yt.varargLiteral(t);if(b("{"))return K()}}function nt(t,r){return"undefined"==typeof r&&"object"==typeof t&&(r=t,t=undefined),r||(r={}),st=t||"",ot=n(at,r),Et=0,Ct=1,kt=0,ut=st.length,ot.comments&&(Tt=[]),ot.wait?e:it()}function rt(t){return st+=String(t),ut=st.length,e}function it(e){"undefined"!=typeof e&&rt(e),ut=st.length,xt=o();var t=_();return ot.comments&&(t.comments=Tt),t}e.version="0.0.1";var st,ot,ut,at=e.defaultOptions={wait:!1,comments:!0},ft=1,lt=2,ct=4,ht=8,pt=16,dt=32,vt=64,mt=128,gt=e.errors={unexpected:"Unexpected %1 '%2' near '%3'",expected:"'%1' expected near '%2'",expectedToken:"%1 expected near '%2'",unfinishedString:"unfinished string near '%1'",malformedNumber:"malformed number near '%1'"},yt=e.ast={labelStatement:function(e){return{type:"LabelStatement",label:e}},breakStatement:function(){return{type:"BreakStatement"}},gotoStatement:function(e){return{type:"GotoStatement",label:e}},returnStatement:function(e){return{type:"ReturnStatement",arguments:e}},ifStatement:function(e){return{type:"IfStatement",clauses:e}},elseifClause:function(e,t){return{type:"ElseifClause",condition:e,body:t}},elseClause:function(e){return{type:"ElseClause",body:e}},whileStatement:function(e,t){return{type:"WhileStatement",condition:e,body:t}},doStatement:function(e){return{type:"DoStatement",body:e}},repeatStatement:function(e,t){return{type:"RepeatStatement",condition:e,body:t}},localStatement:function(e,t){return{type:"LocalStatement",variables:e,init:t}},assignmentStatement:function(e,t){return{type:"AssignmentStatement",variables:e,init:t}},callStatement:function(e){return{type:"CallStatement",expression:e}},functionStatement:function(e,t,n,r,i){return{type:"FunctionDeclaration",identifier:e,vararg:n,local:r,parameters:t,body:i}},forNumericStatement:function(e,t,n,r,i){return{type:"ForNumericStatement",variable:e,start:t,end:n,step:r,body:i}},forGenericStatement:function(e,t,n){return{type:"ForGenericStatement",variables:e,iterators:t,body:n}},chunk:function(e){return{type:"Chunk",body:e}},identifier:function(e){return{type:"Identifier",name:e}},literal:function(e,t){return{type:"Literal",value:e,raw:t}},varargLiteral:function(){return{type:"VarargLiteral"}},tableKey:function(e,t){return{type:"TableKey",key:e,value:t}},tableKeyString:function(e,t){return{type:"TableKeyString",key:e,value:t}},tableValue:function(e){return{type:"TableValue",value:e}},tableConstructorExpression:function(e){return{type:"TableConstructorExpression",fields:e}},binaryExpression:function(e,t,n){var r="and"===e||"or"===e?"LogicalExpression":"BinaryExpression";return{type:r,operator:e,left:t,right:n}},unaryExpression:function(e,t){return{type:"UnaryExpression",operator:e,argument:t}},memberExpression:function(e,t,n){return{type:"MemberExpression",indexer:t,identifier:n,base:e}},indexExpression:function(e,t){return{type:"IndexExpression",base:e,index:t}},callExpression:function(e,t){return{type:"CallExpression",base:e,arguments:t}},tableCallExpression:function(e,t){return{type:"TableCallExpression",base:e,arguments:t}},stringCallExpression:function(e,t){return{type:"StringCallExpression",base:e,argument:t}}},bt=Array.prototype.slice,wt=Object.prototype.toString,Et,St,xt,Tt,Nt,Ct,kt;e.parse=nt,e.write=rt,e.end=it,e.lex=o})})
4069 ^
4070
4071./lib/viewers/text/worker-lua.js:1: WARNING - Suspicious code. The result of the 'eq' operator is not being used.
4072"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/lua_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/lua/luaparse"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("../mode/lua/luaparse"),o=t.Worker=function(e){i.call(this,e),this.setTimeout(500)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue();try{s.parse(e)}catch(t){t instanceof SyntaxError&&this.sender.emit("error",{row:t.line-1,column:t.column,text:t.message,type:"error"});return}this.sender.emit("ok")}}.call(o.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/lua/luaparse",["require","exports","module","exports"],function(e,t,n){(function(e,n,r){typeof t!="undefined"?r(t):typeof define=="function"&&define.amd?define(["exports"],r):r(e[n]={})})(this,"luaparse",function(e){function t(e){var t=bt.call(arguments,1);return e=e.replace(/%(\d)/g,function(e,n){return e="",""+t[n-1]||""}),e}function n(){var e=bt.call(arguments),t={},n,r;for(var i=0,s=e.length;i<s;i++){n=e[i];for(r in n)n.hasOwnProperty(r)&&(t[r]=n[r])}return t}function r(e){var n=t.apply(null,bt.call(arguments,1)),r,i;throw"undefined"!=typeof e.line?(i=e.range[0]-e.lineStart,r=new SyntaxError(t("[%1:%2] %3",e.line,i,n)),r.line=e.line,r.index=e.range[0],r.column=i):(i=Et-kt+1,r=new SyntaxError(t("[%1:%2] %3",Ct,i,n)),r.index=Et,r.line=Ct,r.column=i),r}function i(e,t){r(t,gt.expectedToken,e,t.value)}function s(e,t){"undefined"==typeof t&&(t=xt.value);if("undefined"!=typeof e.type){var n;switch(e.type){case lt:n="string";break;case ct:n="keyword";break;case ht:n="identifier";break;case pt:n="number";break;case dt:n="symbol";break;case vt:n="boolean";break;case mt:return r(e,gt.unexpected,"symbol","nil",t)}return r(e,gt.unexpected,n,e.value,t)}return r(e,gt.unexpected,"symbol",e,t)}function o(){u();while(45===st.charCodeAt(Et)&&45===st.charCodeAt(Et+1))m(),u();if(Et>=ut)return{type:ft,value:"<eof>",line:Ct,lineStart:kt,range:[Et,Et]};var e=st.charCodeAt(Et),t=st.charCodeAt(Et+1);Nt=Et;if(C(e))return a();switch(e){case 39:case 34:return l();case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return h();case 46:if(T(t))return h();if(46===t)return 46===st.charCodeAt(Et+2)?f("..."):f("..");return f(".");case 61:if(61===t)return f("==");return f("=");case 62:if(61===t)return f(">=");return f(">");case 60:if(61===t)return f("<=");return f("<");case 126:if(61===t)return f("~=");return r({},gt.expected,"=","~");case 58:if(58===t)return f("::");return f(":");case 91:if(91===t||61===t)return c();return f("[");case 42:case 47:case 94:case 37:case 44:case 123:case 125:case 93:case 40:case 41:case 59:case 35:case 45:case 43:return f(st.charAt(Et))}return s(st.charAt(Et))}function u(){while(Et<ut){var e=st.charCodeAt(Et);if(S(e))Et++;else{if(!x(e))break;Ct++,kt=++Et}}}function a(){var e,t;while(k(st.charCodeAt(++Et)));return e=st.slice(Nt,Et),L(e)?t=ct:"true"===e||"false"===e?(t=vt,e="true"===e):"nil"===e?(t=mt,e=null):t=ht,{type:t,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function f(e){return Et+=e.length,{type:dt,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function l(){var e=st.charCodeAt(Et++),t=Et,n="",i;while(Et<ut){i=st.charCodeAt(Et++);if(e===i)break;if(92===i)n+=st.slice(t,Et-1)+v(),t=Et;else if(Et>=ut||x(i))n+=st.slice(t,Et-1),r({},gt.unfinishedString,n+String.fromCharCode(i))}return n+=st.slice(t,Et-1),{type:lt,value:n,line:Ct,lineStart:kt,range:[Nt,Et]}}function c(){var e=g();return!1===e&&r(St,gt.expected,"[",St.value),{type:lt,value:e,line:Ct,lineStart:kt,range:[Nt,Et]}}function h(){var e=st.charAt(Et),t=st.charAt(Et+1),n="0"===e&&~"xX".indexOf(t||null)?p():d();return{type:pt,value:n,line:Ct,lineStart:kt,range:[Nt,Et]}}function p(){var e=0,t=1,n=1,i,s,o,u;u=Et+=2,N(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(N(st.charCodeAt(Et)))Et++;i=parseInt(st.slice(u,Et),16);if("."===st.charAt(Et)){s=++Et;while(N(st.charCodeAt(Et)))Et++;e=st.slice(s,Et),e=s===Et?0:parseInt(e,16)/Math.pow(16,Et-s)}if(~"pP".indexOf(st.charAt(Et)||null)){Et++,~"+-".indexOf(st.charAt(Et)||null)&&(n="+"===st.charAt(Et++)?1:-1),o=Et,T(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(T(st.charCodeAt(Et)))Et++;t=st.slice(o,Et),t=Math.pow(2,t*n)}return(i+e)*t}function d(){while(T(st.charCodeAt(Et)))Et++;if("."===st.charAt(Et)){Et++;while(T(st.charCodeAt(Et)))Et++}if(~"eE".indexOf(st.charAt(Et)||null)){Et++,~"+-".indexOf(st.charAt(Et)||null)&&Et++,T(st.charCodeAt(Et))||r({},gt.malformedNumber,st.slice(Nt,Et));while(T(st.charCodeAt(Et)))Et++}return parseFloat(st.slice(Nt,Et))}function v(){var e=Et;switch(st.charAt(Et)){case"n":return Et++,"\n";case"r":return Et++,"\r";case"t":return Et++," ";case"v":return Et++," ";case"b":return Et++,"\b";case"f":return Et++,"\f";case"z":return Et++,u(),"";case"x":if(N(st.charCodeAt(Et+1))&&N(st.charCodeAt(Et+2)))return Et+=3,"\\"+st.slice(e,Et);return"\\"+st.charAt(Et++);default:if(T(st.charCodeAt(Et))){while(T(st.charCodeAt(++Et)));return"\\"+st.slice(e,Et)}return st.charAt(Et++)}}function m(){Nt=Et,Et+=2;var e=st.charAt(Et),t="",n=!1,r=Et;"["===e&&(t=g(),!1===t?t=e:(n=!0,Et+=2));if(!n){while(Et<ut){if(x(st.charCodeAt(Et)))break;Et++}t=st.slice(r,Et)}ot.comments&&Tt.push({type:"Comment",value:t,raw:st.slice(Nt,Et)})}function g(){var e=0,t="",n=!1,r,i;Et++;while("="===st.charAt(Et+e))e++;if("["!==st.charAt(Et+e))return!1;Et+=e+1,x(st.charCodeAt(Et))&&(Ct++,kt=Et++),i=Et;while(Et<ut){r=st.charAt(Et++),x(r.charCodeAt(0))&&(Ct++,kt=Et);if("]"===r){n=!0;for(var s=0;s<e;s++)"="!==st.charAt(Et+s)&&(n=!1);"]"!==st.charAt(Et+e)&&(n=!1)}if(n)break;"\\"===r&&(t+=st.slice(i,Et-1)+v(),i=Et)}return t+=st.slice(i,Et-1),Et+=e+1,t}function y(){St=xt,xt=o()}function b(e){return e===St.value?(y(),!0):!1}function w(e){if(null!=e)return e;i("<expression>",St)}function E(e){e===St.value?y():r(St,gt.expected,e,St.value)}function S(e){return 9===e||32===e||11===e||12===e}function x(e){return 10===e||13===e}function T(e){return e>=48&&e<=57}function N(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function C(e){return e>=65&&e<=90||e>=97&&e<=122||95===e}function k(e){return e>=65&&e<=90||e>=97&&e<=122||95===e||e>=48&&e<=57}function L(e){switch(e.length){case 2:return"do"===e||"if"===e||"in"===e||"or"===e;case 3:return"and"===e||"end"===e||"for"===e||"not"===e;case 4:return"else"===e||"goto"===e||"then"===e;case 5:return"break"===e||"local"===e||"until"===e||"while"===e;case 6:return"elseif"===e||"repeat"===e||"return"===e;case 8:return"function"===e}return!1}function A(e){return dt===e.type?~"#-".indexOf(e.value):ct===e.type?"not"===e.value:!1}function O(e){switch(e.type){case"CallExpression":case"TableCallExpression":case"StringCallExpression":return!0}return!1}function M(e){if(ft===e.type)return!0;if(ct!==e.type)return!1;switch(e.value){case"else":case"elseif":case"end":case"until":return!0;default:return!1}}function _(){y();var e=D();return ft!==St.type&&s(St),yt.chunk(e)}function D(e){var t=[],n;while(!M(St)){if("return"===St.value){t.push(P());break}n=P(),n&&t.push(n)}return t}function P(){if(ct===St.type)switch(St.value){case"local":return y(),W();case"if":return y(),U();case"return":return y(),R();case"function":y();var e=J();return $(e);case"while":return y(),I();case"for":return y(),z();case"repeat":return y(),q();case"break":return y(),B();case"do":return y(),F();case"goto":return y(),j()}if(dt===St.type&&b("::"))return H();if(b(";"))return;return X()}function H(){var e=V();return E("::"),yt.labelStatement(e)}function B(){return yt.breakStatement()}function j(){var e=V();return yt.gotoStatement(e)}function F(){var e=D();return E("end"),yt.doStatement(e)}function I(){var e=Q();E("do");var t=D();return E("end"),yt.whileStatement(e,t)}function q(){var e=D();E("until");var t=w(Q());return yt.repeatStatement(t,e)}function R(){var e=[];if("end"!==St.value){var t=Q();null!=t&&e.push(t);while(b(","))t=w(Q()),e.push(t);b(";")}return yt.returnStatement(e)}function U(){var e=[],t,n;do t=Q(),E("then"),n=D(),e.push(yt.elseifClause(t,n));while(b("elseif"));return b("else")&&(n=D(),e.push(yt.elseClause(n))),E("end"),yt.ifStatement(e)}function z(){var e=V(),t;if(b("=")){var n=w(Q());E(",");var r=w(Q()),i=b(",")?w(Q()):null;return E("do"),t=D(),E("end"),yt.forNumericStatement(e,n,r,i,t)}var s=[e];while(b(","))s.push(V());E("in");var o=[];do{var u=w(Q());o.push(u)}while(b(","));return E("do"),t=D(),E("end"),yt.forGenericStatement(s,o,t)}function W(){if(ht===St.type){var e=[],t=[];do e.push(V());while(b(","));if(b("="))do{var n=w(Q());t.push(n)}while(b(","));return yt.localStatement(e,t)}if(b("function")){var r=V();return $(r,!0)}i("<name>",St)}function X(){var e=St,t=Z();if(null==t)return s(St);if(~",=".indexOf(St.value)){var n=[t],r=[],i;while(b(","))i=w(Z()),n.push(i);E("=");do i=w(Q()),r.push(i);while(b(","));return yt.assignmentStatement(n,r)}return O(t)?yt.callStatement(t):s(e)}function V(){var e=St.value;return ht!==St.type&&i("<name>",St),y(),yt.identifier(e)}function $(e,t){var n=!1,r=[];E("(");if(b("..."))n=!0;else if(ht===St.type)do{if(b("...")){n=!0;break}r.push(V())}while(b(","));n?E(")"):b(")")||i("<name> or '...'",St);var s=D();return E("end"),t=t||!1,yt.functionStatement(e,r,n,t,s)}function J(){var e=V();while(b("."))e=yt.memberExpression(e,".",V());return b(":")&&(e=yt.memberExpression(e,":",V())),e}function K(){var e=[],t,n;for(;;){if(dt===St.type&&b("["))t=Q(),E("]"),E("="),n=w(Q()),e.push(yt.tableKey(t,n));else if(ht===St.type)t=Q(),b("=")?(n=Q(),e.push(yt.tableKeyString(t,n))):e.push(yt.tableValue(t));else{if(null==(n=Q()))break;e.push(yt.tableValue(n))}if(~",;".indexOf(St.value)){y();continue}if("}"===St.value)break}return E("}"),yt.tableConstructorExpression(e)}function Q(){var e=Y(0);return e}function G(e){var t=e.charCodeAt(0),n=e.length;if(1===n)switch(t){case 94:return 10;case 42:case 47:case 37:return 7;case 43:case 45:return 6;case 60:case 62:return 3}else if(2===n)switch(t){case 46:return 5;case 60:case 62:case 61:case 126:return 3;case 111:return 1}else if(97===t&&"and"===e)return 2;return 0}function Y(e){var t=St.value,n;if(A(St)){y();var r=w(Y(8));n=yt.unaryExpression(t,r)}null==n&&(n=tt(),null==n&&(n=Z()));if(null==n)return null;var i;for(;;){t=St.value,i=dt===St.type||ct===St.type?G(t):0;if(i===0||i<=e)break;("^"===t||".."===t)&&i--,y();var s=w(Y(i));n=yt.binaryExpression(t,n,s)}return n}function Z(){var e;if(ht===St.type)e=V();else{if(!b("("))return null;e=Q(),E(")")}var t,n;for(;;){w(e);if(dt===St.type)switch(St.value){case"[":y(),t=Q(),e=yt.indexExpression(e,t),E("]");break;case".":y(),n=V(),e=yt.memberExpression(e,".",n);break;case":":y(),n=V(),e=yt.memberExpression(e,":",n),e=et(e);break;case"(":case"{":e=et(e);break;default:return e}else{if(lt!==St.type)break;e=et(e)}}return e}function et(e){if(dt===St.type)switch(St.value){case"(":y();var t=[],n=Q();null!=n&&t.push(n);while(b(","))n=w(Q()),t.push(n);return E(")"),yt.callExpression(e,t);case"{":y();var r=K();return yt.tableCallExpression(e,r)}else if(lt===St.type){var s=St.value;return y(),yt.stringCallExpression(e,s)}i("function arguments",St)}function tt(){var e=lt|pt|vt|mt,t=St.value;if(St.type&e){var n=st.slice(St.range[0],St.range[1]);return y(),yt.literal(t,n)}if(ct===St.type&&"function"===St.value)return y(),$(null);if(dt===St.type){if(b("..."))return yt.varargLiteral(t);if(b("{"))return K()}}function nt(t,r){return"undefined"==typeof r&&"object"==typeof t&&(r=t,t=undefined),r||(r={}),st=t||"",ot=n(at,r),Et=0,Ct=1,kt=0,ut=st.length,ot.comments&&(Tt=[]),ot.wait?e:it()}function rt(t){return st+=String(t),ut=st.length,e}function it(e){"undefined"!=typeof e&&rt(e),ut=st.length,xt=o();var t=_();return ot.comments&&(t.comments=Tt),t}e.version="0.0.1";var st,ot,ut,at=e.defaultOptions={wait:!1,comments:!0},ft=1,lt=2,ct=4,ht=8,pt=16,dt=32,vt=64,mt=128,gt=e.errors={unexpected:"Unexpected %1 '%2' near '%3'",expected:"'%1' expected near '%2'",expectedToken:"%1 expected near '%2'",unfinishedString:"unfinished string near '%1'",malformedNumber:"malformed number near '%1'"},yt=e.ast={labelStatement:function(e){return{type:"LabelStatement",label:e}},breakStatement:function(){return{type:"BreakStatement"}},gotoStatement:function(e){return{type:"GotoStatement",label:e}},returnStatement:function(e){return{type:"ReturnStatement",arguments:e}},ifStatement:function(e){return{type:"IfStatement",clauses:e}},elseifClause:function(e,t){return{type:"ElseifClause",condition:e,body:t}},elseClause:function(e){return{type:"ElseClause",body:e}},whileStatement:function(e,t){return{type:"WhileStatement",condition:e,body:t}},doStatement:function(e){return{type:"DoStatement",body:e}},repeatStatement:function(e,t){return{type:"RepeatStatement",condition:e,body:t}},localStatement:function(e,t){return{type:"LocalStatement",variables:e,init:t}},assignmentStatement:function(e,t){return{type:"AssignmentStatement",variables:e,init:t}},callStatement:function(e){return{type:"CallStatement",expression:e}},functionStatement:function(e,t,n,r,i){return{type:"FunctionDeclaration",identifier:e,vararg:n,local:r,parameters:t,body:i}},forNumericStatement:function(e,t,n,r,i){return{type:"ForNumericStatement",variable:e,start:t,end:n,step:r,body:i}},forGenericStatement:function(e,t,n){return{type:"ForGenericStatement",variables:e,iterators:t,body:n}},chunk:function(e){return{type:"Chunk",body:e}},identifier:function(e){return{type:"Identifier",name:e}},literal:function(e,t){return{type:"Literal",value:e,raw:t}},varargLiteral:function(){return{type:"VarargLiteral"}},tableKey:function(e,t){return{type:"TableKey",key:e,value:t}},tableKeyString:function(e,t){return{type:"TableKeyString",key:e,value:t}},tableValue:function(e){return{type:"TableValue",value:e}},tableConstructorExpression:function(e){return{type:"TableConstructorExpression",fields:e}},binaryExpression:function(e,t,n){var r="and"===e||"or"===e?"LogicalExpression":"BinaryExpression";return{type:r,operator:e,left:t,right:n}},unaryExpression:function(e,t){return{type:"UnaryExpression",operator:e,argument:t}},memberExpression:function(e,t,n){return{type:"MemberExpression",indexer:t,identifier:n,base:e}},indexExpression:function(e,t){return{type:"IndexExpression",base:e,index:t}},callExpression:function(e,t){return{type:"CallExpression",base:e,arguments:t}},tableCallExpression:function(e,t){return{type:"TableCallExpression",base:e,arguments:t}},stringCallExpression:function(e,t){return{type:"StringCallExpression",base:e,argument:t}}},bt=Array.prototype.slice,wt=Object.prototype.toString,Et,St,xt,Tt,Nt,Ct,kt;e.parse=nt,e.write=rt,e.end=it,e.lex=o})})
4073 ^
4074
40750 error(s), 3 warning(s)
4076Linting './lib/viewers/text/worker-php.js' ...
4077./lib/viewers/text/worker-php.js:1: WARNING - Suspicious code. Is there a missing '+' on the previous line?
4078"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/php_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/php/php"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("./php/php").PHP,o=t.PhpWorker=function(e){i.call(this,e),this.setTimeout(500)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue(),t=[],n=s.Lexer(e,{short_open_tag:1});try{new s.Parser(n)}catch(r){t.push({row:r.line-1,column:null,text:r.message.charAt(0).toUpperCase()+r.message.substring(1),type:"error"})}t.length?this.sender.emit("error",t):this.sender.emit("ok")}}.call(o.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/php/php",["require","exports","module"],function(e,t,n){var r={Constants:{}};r.Constants.T_INCLUDE=262,r.Constants.T_INCLUDE_ONCE=261,r.Constants.T_EVAL=260,r.Constants.T_REQUIRE=259,r.Constants.T_REQUIRE_ONCE=258,r.Constants.T_LOGICAL_OR=263,r.Constants.T_LOGICAL_XOR=264,r.Constants.T_LOGICAL_AND=265,r.Constants.T_PRINT=266,r.Constants.T_PLUS_EQUAL=277,r.Constants.T_MINUS_EQUAL=276,r.Constants.T_MUL_EQUAL=275,r.Constants.T_DIV_EQUAL=274,r.Constants.T_CONCAT_EQUAL=273,r.Constants.T_MOD_EQUAL=272,r.Constants.T_AND_EQUAL=271,r.Constants.T_OR_EQUAL=270,r.Constants.T_XOR_EQUAL=269,r.Constants.T_SL_EQUAL=268,r.Constants.T_SR_EQUAL=267,r.Constants.T_BOOLEAN_OR=278,r.Constants.T_BOOLEAN_AND=279,r.Constants.T_IS_EQUAL=283,r.Constants.T_IS_NOT_EQUAL=282,r.Constants.T_IS_IDENTICAL=281,r.Constants.T_IS_NOT_IDENTICAL=280,r.Constants.T_IS_SMALLER_OR_EQUAL=285,r.Constants.T_IS_GREATER_OR_EQUAL=284,r.Constants.T_SL=287,r.Constants.T_SR=286,r.Constants.T_INSTANCEOF=288,r.Constants.T_INC=297,r.Constants.T_DEC=296,r.Constants.T_INT_CAST=295,r.Constants.T_DOUBLE_CAST=294,r.Constants.T_STRING_CAST=293,r.Constants.T_ARRAY_CAST=292,r.Constants.T_OBJECT_CAST=291,r.Constants.T_BOOL_CAST=290,r.Constants.T_UNSET_CAST=289,r.Constants.T_NEW=299,r.Constants.T_CLONE=298,r.Constants.T_EXIT=300,r.Constants.T_IF=301,r.Constants.T_ELSEIF=302,r.Constants.T_ELSE=303,r.Constants.T_ENDIF=304,r.Constants.T_LNUMBER=305,r.Constants.T_DNUMBER=306,r.Constants.T_STRING=307,r.Constants.T_STRING_VARNAME=308,r.Constants.T_VARIABLE=309,r.Constants.T_NUM_STRING=310,r.Constants.T_INLINE_HTML=311,r.Constants.T_CHARACTER=312,r.Constants.T_BAD_CHARACTER=313,r.Constants.T_ENCAPSED_AND_WHITESPACE=314,r.Constants.T_CONSTANT_ENCAPSED_STRING=315,r.Constants.T_ECHO=316,r.Constants.T_DO=317,r.Constants.T_WHILE=318,r.Constants.T_ENDWHILE=319,r.Constants.T_FOR=320,r.Constants.T_ENDFOR=321,r.Constants.T_FOREACH=322,r.Constants.T_ENDFOREACH=323,r.Constants.T_DECLARE=324,r.Constants.T_ENDDECLARE=325,r.Constants.T_AS=326,r.Constants.T_SWITCH=327,r.Constants.T_ENDSWITCH=328,r.Constants.T_CASE=329,r.Constants.T_DEFAULT=330,r.Constants.T_BREAK=331,r.Constants.T_CONTINUE=332,r.Constants.T_GOTO=333,r.Constants.T_FUNCTION=334,r.Constants.T_CONST=335,r.Constants.T_RETURN=336,r.Constants.T_TRY=337,r.Constants.T_CATCH=338,r.Constants.T_THROW=339,r.Constants.T_USE=340,r.Constants.T_GLOBAL=341,r.Constants.T_STATIC=347,r.Constants.T_ABSTRACT=346,r.Constants.T_FINAL=345,r.Constants.T_PRIVATE=344,r.Constants.T_PROTECTED=343,r.Constants.T_PUBLIC=342,r.Constants.T_VAR=348,r.Constants.T_UNSET=349,r.Constants.T_ISSET=350,r.Constants.T_EMPTY=351,r.Constants.T_HALT_COMPILER=352,r.Constants.T_CLASS=353,r.Constants.T_INTERFACE=354,r.Constants.T_EXTENDS=355,r.Constants.T_IMPLEMENTS=356,r.Constants.T_OBJECT_OPERATOR=357,r.Constants.T_DOUBLE_ARROW=358,r.Constants.T_LIST=359,r.Constants.T_ARRAY=360,r.Constants.T_CLASS_C=361,r.Constants.T_TRAIT_C=381,r.Constants.T_METHOD_C=362,r.Constants.T_FUNC_C=363,r.Constants.T_LINE=364,r.Constants.T_FILE=365,r.Constants.T_COMMENT=366,r.Constants.T_DOC_COMMENT=367,r.Constants.T_OPEN_TAG=368,r.Constants.T_OPEN_TAG_WITH_ECHO=369,r.Constants.T_CLOSE_TAG=370,r.Constants.T_WHITESPACE=371,r.Constants.T_START_HEREDOC=372,r.Constants.T_END_HEREDOC=373,r.Constants.T_DOLLAR_OPEN_CURLY_BRACES=374,r.Constants.T_CURLY_OPEN=375,r.Constants.T_PAAMAYIM_NEKUDOTAYIM=376,r.Constants.T_DOUBLE_COLON=376,r.Constants.T_NAMESPACE=377,r.Constants.T_NS_C=378,r.Constants.T_DIR=379,r.Constants.T_NS_SEPARATOR=380,r.Lexer=function(e,t){var n,i=function(e){if(e.match(/\n/)!==null){var t=e.substring(0,1);e="["+e.split(/\n/).join(t+","+t)+'].join("\\n")'}return e},s,o=t===undefined||/^(on|true|1)$/i.test(t.short_open_tag)?/(\<\?php\s|\<\?|\<\%|\<script language\=('|")?php('|")?\>)/i:/(\<\?php\s|<\?=|\<script language\=('|")?php('|")?\>)/i,u=t===undefined||/^(on|true|1)$/i.test(t.short_open_tag)?/^(\<\?php\s|\<\?|\<\%|\<script language\=('|")?php('|")?\>)/i:/^(\<\?php\s|<\?=|\<script language\=('|")?php('|")?\>)/i,a=[{value:r.Constants.T_USE,re:/^use(?=\s)/i},{value:r.Constants.T_ABSTRACT,re:/^abstract(?=\s)/i},{value:r.Constants.T_IMPLEMENTS,re:/^implements(?=\s)/i},{value:r.Constants.T_INTERFACE,re:/^interface(?=\s)/i},{value:r.Constants.T_CONST,re:/^const(?=\s)/i},{value:r.Constants.T_STATIC,re:/^static(?=\s)/i},{value:r.Constants.T_FINAL,re:/^final(?=\s)/i},{value:r.Constants.T_VAR,re:/^var(?=\s)/i},{value:r.Constants.T_GLOBAL,re:/^global(?=\s)/i},{value:r.Constants.T_CLONE,re:/^clone(?=\s)/i},{value:r.Constants.T_THROW,re:/^throw(?=\s)/i},{value:r.Constants.T_EXTENDS,re:/^extends(?=\s)/i},{value:r.Constants.T_AND_EQUAL,re:/^&=/},{value:r.Constants.T_AS,re:/^as(?=\s)/i},{value:r.Constants.T_ARRAY_CAST,re:/^\(array\)/i},{value:r.Constants.T_BOOL_CAST,re:/^\((bool|boolean)\)/i},{value:r.Constants.T_DOUBLE_CAST,re:/^\((real|float|double)\)/i},{value:r.Constants.T_INT_CAST,re:/^\((int|integer)\)/i},{value:r.Constants.T_OBJECT_CAST,re:/^\(object\)/i},{value:r.Constants.T_STRING_CAST,re:/^\(string\)/i},{value:r.Constants.T_UNSET_CAST,re:/^\(unset\)/i},{value:r.Constants.T_TRY,re:/^try(?=\s*{)/i},{value:r.Constants.T_CATCH,re:/^catch(?=\s*\()/i},{value:r.Constants.T_INSTANCEOF,re:/^instanceof(?=\s)/i},{value:r.Constants.T_LOGICAL_OR,re:/^or(?=\s)/i},{value:r.Constants.T_LOGICAL_AND,re:/^and(?=\s)/i},{value:r.Constants.T_LOGICAL_XOR,re:/^xor(?=\s)/i},{value:r.Constants.T_BOOLEAN_AND,re:/^&&/},{value:r.Constants.T_BOOLEAN_OR,re:/^\|\|/},{value:r.Constants.T_CONTINUE,re:/^continue(?=\s|;)/i},{value:r.Constants.T_BREAK,re:/^break(?=\s|;)/i},{value:r.Constants.T_ENDDECLARE,re:/^enddeclare(?=\s|;)/i},{value:r.Constants.T_ENDFOR,re:/^endfor(?=\s|;)/i},{value:r.Constants.T_ENDFOREACH,re:/^endforeach(?=\s|;)/i},{value:r.Constants.T_ENDIF,re:/^endif(?=\s|;)/i},{value:r.Constants.T_ENDSWITCH,re:/^endswitch(?=\s|;)/i},{value:r.Constants.T_ENDWHILE,re:/^endwhile(?=\s|;)/i},{value:r.Constants.T_CASE,re:/^case(?=\s)/i},{value:r.Constants.T_DEFAULT,re:/^default(?=\s|:)/i},{value:r.Constants.T_SWITCH,re:/^switch(?=[ (])/i},{value:r.Constants.T_EXIT,re:/^(exit|die)(?=[ \(;])/i},{value:r.Constants.T_CLOSE_TAG,re:/^(\?\>|\%\>|\<\/script\>)\s?\s?/i,func:function(e){return c=!1,e}},{value:r.Constants.T_DOUBLE_ARROW,re:/^\=\>/},{value:r.Constants.T_DOUBLE_COLON,re:/^\:\:/},{value:r.Constants.T_METHOD_C,re:/^__METHOD__/},{value:r.Constants.T_LINE,re:/^__LINE__/},{value:r.Constants.T_FILE,re:/^__FILE__/},{value:r.Constants.T_FUNC_C,re:/^__FUNCTION__/},{value:r.Constants.T_NS_C,re:/^__NAMESPACE__/},{value:r.Constants.T_TRAIT_C,re:/^__TRAIT__/},{value:r.Constants.T_DIR,re:/^__DIR__/},{value:r.Constants.T_CLASS_C,re:/^__CLASS__/},{value:r.Constants.T_INC,re:/^\+\+/},{value:r.Constants.T_DEC,re:/^\-\-/},{value:r.Constants.T_CONCAT_EQUAL,re:/^\.\=/},{value:r.Constants.T_DIV_EQUAL,re:/^\/\=/},{value:r.Constants.T_XOR_EQUAL,re:/^\^\=/},{value:r.Constants.T_MUL_EQUAL,re:/^\*\=/},{value:r.Constants.T_MOD_EQUAL,re:/^\%\=/},{value:r.Constants.T_SL_EQUAL,re:/^<<=/},{value:r.Constants.T_START_HEREDOC,re:/^<<<[A-Z_0-9]+\s/i,func:function(e){return n=e.substring(3,e.length-1),e}},{value:r.Constants.T_SL,re:/^<</},{value:r.Constants.T_IS_SMALLER_OR_EQUAL,re:/^<=/},{value:r.Constants.T_SR_EQUAL,re:/^>>=/},{value:r.Constants.T_SR,re:/^>>/},{value:r.Constants.T_IS_GREATER_OR_EQUAL,re:/^>=/},{value:r.Constants.T_OR_EQUAL,re:/^\|\=/},{value:r.Constants.T_PLUS_EQUAL,re:/^\+\=/},{value:r.Constants.T_MINUS_EQUAL,re:/^-\=/},{value:r.Constants.T_OBJECT_OPERATOR,re:/^\-\>/i},{value:r.Constants.T_CLASS,re:/^class(?=[\s\{])/i,afterWhitespace:!0},{value:r.Constants.T_PUBLIC,re:/^public(?=[\s])/i},{value:r.Constants.T_PRIVATE,re:/^private(?=[\s])/i},{value:r.Constants.T_PROTECTED,re:/^protected(?=[\s])/i},{value:r.Constants.T_ARRAY,re:/^array(?=\s*?\()/i},{value:r.Constants.T_EMPTY,re:/^empty(?=[ \(])/i},{value:r.Constants.T_ISSET,re:/^isset(?=[ \(])/i},{value:r.Constants.T_UNSET,re:/^unset(?=[ \(])/i},{value:r.Constants.T_RETURN,re:/^return(?=[ "'(;])/i},{value:r.Constants.T_FUNCTION,re:/^function(?=[ "'(;])/i},{value:r.Constants.T_ECHO,re:/^echo(?=[ "'(;])/i},{value:r.Constants.T_LIST,re:/^list(?=\s*?\()/i},{value:r.Constants.T_PRINT,re:/^print(?=[ "'(;])/i},{value:r.Constants.T_INCLUDE,re:/^include(?=[ "'(;])/i},{value:r.Constants.T_INCLUDE_ONCE,re:/^include_once(?=[ "'(;])/i},{value:r.Constants.T_REQUIRE,re:/^require(?=[ "'(;])/i},{value:r.Constants.T_REQUIRE_ONCE,re:/^require_once(?=[ "'(;])/i},{value:r.Constants.T_NEW,re:/^new(?=[ ])/i},{value:r.Constants.T_COMMENT,re:/^\/\*([\S\s]*?)(?:\*\/|$)/},{value:r.Constants.T_COMMENT,re:/^\/\/.*(\s)?/},{value:r.Constants.T_COMMENT,re:/^\#.*(\s)?/},{value:r.Constants.T_ELSEIF,re:/^elseif(?=[\s(])/i},{value:r.Constants.T_GOTO,re:/^goto(?=[\s(])/i},{value:r.Constants.T_ELSE,re:/^else(?=[\s{:])/i},{value:r.Constants.T_IF,re:/^if(?=[\s(])/i},{value:r.Constants.T_DO,re:/^do(?=[ {])/i},{value:r.Constants.T_WHILE,re:/^while(?=[ (])/i},{value:r.Constants.T_FOREACH,re:/^foreach(?=[ (])/i},{value:r.Constants.T_ISSET,re:/^isset(?=[ (])/i},{value:r.Constants.T_IS_IDENTICAL,re:/^===/},{value:r.Constants.T_IS_EQUAL,re:/^==/},{value:r.Constants.T_IS_NOT_IDENTICAL,re:/^\!==/},{value:r.Constants.T_IS_NOT_EQUAL,re:/^(\!=|\<\>)/},{value:r.Constants.T_FOR,re:/^for(?=[ (])/i},{value:r.Constants.T_DNUMBER,re:/^[0-9]*\.[0-9]+([eE][-]?[0-9]*)?/},{value:r.Constants.T_LNUMBER,re:/^(0x[0-9A-F]+|[0-9]+)/i},{value:r.Constants.T_OPEN_TAG_WITH_ECHO,re:/^(\<\?=|\<\%=)/i},{value:r.Constants.T_OPEN_TAG,re:u},{value:r.Constants.T_VARIABLE,re:/^\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{value:r.Constants.T_WHITESPACE,re:/^\s+/},{value:r.Constants.T_CONSTANT_ENCAPSED_STRING,re:/^("(?:[^"\\]|\\[\s\S])*"|'(?:[^'\\]|\\[\s\S])*')/,func:function(e,t){var n=0,i,s=0;if(e.substring(0,1)==="'")return e;var o=e.match(/(?:[^\\]|\\.)*[^\\]\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/g);if(o!==null){while(e.length>0){i=e.length,o=e.match(/^[\[\]\;\:\?\(\)\!\.\,\>\<\=\+\-\/\*\|\&\@\^\%\"\'\{\}]/),o!==null&&(f.push(o[0]),e=e.substring(1),n>0&&o[0]==="}"&&n--,o[0]==="["&&s++,o[0]==="]"&&s--),o=e.match(/^\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/);if(o!==null){f.push([parseInt(r.Constants.T_VARIABLE,10),o[0],l]),e=e.substring(o[0].length),o=e.match(/^(\-\>)([a-zA-Z0-9_\x7f-\xff]*)/),o!==null&&(f.push([parseInt(r.Constants.T_OBJECT_OPERATOR,10),o[1],l]),f.push([parseInt(r.Constants.T_STRING,10),o[2],l]),e=e.substring(o[0].length));if(e.match(/^\[/g)!==null)continue}var u;n>0?u=/^([^\\\$"{}\]]|\\.)+/g:u=/^([^\\\$"{]|\\.|{[^\$])+/g;while((o=e.match(u))!==null){if(e.length===1)throw new Error(o);f.push([parseInt(n>0?r.Constants.T_CONSTANT_ENCAPSED_STRING:r.Constants.T_ENCAPSED_AND_WHITESPACE,10),o[0],l]),l+=o[0].split("\n").length-1,e=e.substring(o[0].length)}e.match(/^{\$/)!==null&&(f.push([parseInt(r.Constants.T_CURLY_OPEN,10),"{",l]),e=e.substring(1),n++);if(i===e.length&&(o=e.match(/^(([^\\]|\\.)*?[^\\]\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)/g))!==null)return}return undefined}return e}},{value:r.Constants.T_STRING,re:/^[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{value:-1,re:/^[\[\]\;\:\?\(\)\!\.\,\>\<\=\+\-\/\*\|\&\{\}\@\^\%\"\'\$\~]/}],f=[],l=1,c=!1,h=!0;if(e===null)return f;typeof e!="string"&&(e=e.toString());while(e.length>0&&h===!0)if(c===!0)if(n!==undefined){var p=new RegExp("([\\S\\s]*)(\\r\\n|\\n|\\r)("+n+")(;|\\r\\n|\\n)","i"),d=e.match(p);d!==null&&(f.push([parseInt(r.Constants.T_ENCAPSED_AND_WHITESPACE,10),d[1].replace(/^\n/g,"").replace(/\\\$/g,"$")+"\n",l]),l+=d[1].split("\n").length,f.push([parseInt(r.Constants.T_END_HEREDOC,10),d[3],l]),e=e.substring(d[1].length+d[2].length+d[3].length),n=undefined);if(d===null)throw Error("sup")}else h=a.some(function(t){if(t.afterWhitespace===!0){var n=f[f.length-1];if(!Array.isArray(n)||n[0]!==r.Constants.T_WHITESPACE&&n[0]!==r.Constants.T_OPEN_TAG&&n[0]!==r.Constants.T_COMMENT)return!1}var i=e.match(t.re);if(i!==null){if(t.value!==-1){var s=i[0];t.func!==undefined&&(s=t.func(s,t)),s!==undefined&&(f.push([parseInt(t.value,10),s,l]),l+=s.split("\n").length-1)}else f.push(i[0]);return e=e.substring(i[0].length),!0}return!1});else{var d=o.exec(e);if(d===null)return f.push([parseInt(r.Constants.T_INLINE_HTML,10),e.replace(/^\n/,""),l]),f;if(d.index>0){var v=e.substring(0,d.index);f.push([parseInt(r.Constants.T_INLINE_HTML,10),v,l]),l+=v.split("\n").length-1,e=e.substring(d.index)}c=!0}return f},r.Parser=function(e,t){var n=this.yybase,i=this.yydefault,s=this.yycheck,o=this.yyaction,u=this.yylen,a=this.yygbase,f=this.yygcheck,l=this.yyp,c=this.yygoto,h=this.yylhs,p=this.terminals,d=this.translate,v=this.yygdefault;this.pos=-1,this.line=1,this.tokenMap=this.createTokenMap(),this.dropTokens={},this.dropTokens[r.Constants.T_WHITESPACE]=1,this.dropTokens[r.Constants.T_OPEN_TAG]=1;var m=[];e.forEach(function(e,t){typeof e=="object"&&e[0]===r.Constants.T_OPEN_TAG_WITH_ECHO?(m.push([r.Constants.T_OPEN_TAG,e[1],e[2]]),m.push([r.Constants.T_ECHO,e[1],e[2]])):m.push(e)}),this.tokens=m;var g=this.TOKEN_NONE;this.startAttributes={startLine:1},this.endAttributes={};var y=[this.startAttributes],b=0,w=[b];this.yyastk=[],this.stackPos=0;var E,S;for(;;){if(n[b]===0)E=i[b];else{g===this.TOKEN_NONE&&(S=this.getNextToken(),g=S>=0&&S<this.TOKEN_MAP_SIZE?d[S]:this.TOKEN_INVALID,y[this.stackPos]=this.startAttributes);if(((E=n[b]+g)>=0&&E<this.YYLAST&&s[E]===g||b<this.YY2TBLSTATE&&(E=n[b+this.YYNLSTATES]+g)>=0&&E<this.YYLAST&&s[E]===g)&&(E=o[E])!==this.YYDEFAULT)if(E>0){++this.stackPos,w[this.stackPos]=b=E,this.yyastk[this.stackPos]=this.tokenValue,y[this.stackPos]=this.startAttributes,g=this.TOKEN_NONE;if(E<this.YYNLSTATES)continue;E-=this.YYNLSTATES}else E=-E;else E=i[b]}for(;;){if(E===0)return this.yyval;if(E===this.YYUNEXPECTED){if(t!==!0){var x=[];for(var T=0;T<this.TOKEN_MAP_SIZE;++T)if((E=n[b]+T)>=0&&E<this.YYLAST&&s[E]==T||b<this.YY2TBLSTATE&&(E=n[b+this.YYNLSTATES]+T)&&E<this.YYLAST&&s[E]==T)if(o[E]!=this.YYUNEXPECTED){if(x.length==4){x=[];break}x.push(this.terminals[T])}var N="";throw x.length&&(N=", expecting "+x.join(" or ")),new r.ParseError("syntax error, unexpected "+p[g]+N,this.startAttributes.startLine)}return this.startAttributes.startLine}for(var C in this.endAttributes)y[this.stackPos-u[E]][C]=this.endAttributes[C];try{this["yyn"+E](y[this.stackPos-u[E]])}catch(k){throw k}this.stackPos-=u[E],E=h[E],(l=a[E]+w[this.stackPos])>=0&&l<this.YYGLAST&&f[l]===E?b=c[l]:b=v[E],++this.stackPos,w[this.stackPos]=b,this.yyastk[this.stackPos]=this.yyval,y[this.stackPos]=this.startAttributes;if(b<this.YYNLSTATES)break;E=b-this.YYNLSTATES}}},r.ParseError=function(e,t){this.message=e,this.line=t},r.Parser.prototype.MODIFIER_PUBLIC=1,r.Parser.prototype.MODIFIER_PROTECTED=2,r.Parser.prototype.MODIFIER_PRIVATE=4,r.Parser.prototype.MODIFIER_STATIC=8,r.Parser.prototype.MODIFIER_ABSTRACT=16,r.Parser.prototype.MODIFIER_FINAL=32,r.Parser.prototype.getNextToken=function(){this.startAttributes={},this.endAttributes={};var e,t;while(this.tokens[++this.pos]!==undefined){e=this.tokens[this.pos];if(typeof e=="string")return this.startAttributes.startLine=this.line,this.endAttributes.endLine=this.line,this.tokenValue=e,e.charCodeAt(0);this.line+=(t=e[1].match(/\n/g))===null?0:t.length;if(r.Constants.T_COMMENT===e[0])Array.isArray(this.startAttributes.comments)||(this.startAttributes.comments=[]),this.startAttributes.comments.push({type:"comment",comment:e[1],line:e[2]});else if(r.Constants.T_DOC_COMMENT===e[0])this.startAttributes.comments.push(new PHPParser_Comment_Doc(e[1],e[2]));else if(this.dropTokens[e[0]]===undefined)return this.tokenValue=e[1],this.startAttributes.startLine=e[2],this.endAttributes.endLine=this.line,this.tokenMap[e[0]]}return this.startAttributes.startLine=this.line,0},r.Parser.prototype.tokenName=function(e){var t=["T_INCLUDE","T_INCLUDE_ONCE","T_EVAL","T_REQUIRE","T_REQUIRE_ONCE","T_LOGICAL_OR","T_LOGICAL_XOR","T_LOGICAL_AND","T_PRINT","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_BOOLEAN_OR","T_BOOLEAN_AND","T_IS_EQUAL","T_IS_NOT_EQUAL","T_IS_IDENTICAL","T_IS_NOT_IDENTICAL","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_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_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_DOUBLE_COLON","T_NAMESPACE","T_NS_C","T_DIR","T_NS_SEPARATOR"],n="UNKNOWN";return t.some(function(t){return r.Constants[t]===e?(n=t,!0):!1}),n},r.Parser.prototype.createTokenMap=function(){var e={},t,n,i=r.Constants.T_PAAMAYIM_NEKUDOTAYIM;for(n=256;n<1e3;++n)i===n?e[n]=this.T_PAAMAYIM_NEKUDOTAYIM:r.Constants.T_OPEN_TAG_WITH_ECHO===n?e[n]=r.Constants.T_ECHO:r.Constants.T_CLOSE_TAG===n?e[n]=59:"UNKNOWN"!==(t=this.tokenName(n))&&(e[n]=this[t]);return e},r.Parser.prototype.TOKEN_NONE=-1,r.Parser.prototype.TOKEN_INVALID=149,r.Parser.prototype.TOKEN_MAP_SIZE=384,r.Parser.prototype.YYLAST=913,r.Parser.prototype.YY2TBLSTATE=328,r.Parser.prototype.YYGLAST=415,r.Parser.prototype.YYNLSTATES=544,r.Parser.prototype.YYUNEXPECTED=32767,r.Parser.prototype.YYDEFAULT=-32766,r.Parser.prototype.YYERRTOK=256,r.Parser.prototype.T_INCLUDE=257,r.Parser.prototype.T_INCLUDE_ONCE=258,r.Parser.prototype.T_EVAL=259,r.Parser.prototype.T_REQUIRE=260,r.Parser.prototype.T_REQUIRE_ONCE=261,r.Parser.prototype.T_LOGICAL_OR=262,r.Parser.prototype.T_LOGICAL_XOR=263,r.Parser.prototype.T_LOGICAL_AND=264,r.Parser.prototype.T_PRINT=265,r.Parser.prototype.T_PLUS_EQUAL=266,r.Parser.prototype.T_MINUS_EQUAL=267,r.Parser.prototype.T_MUL_EQUAL=268,r.Parser.prototype.T_DIV_EQUAL=269,r.Parser.prototype.T_CONCAT_EQUAL=270,r.Parser.prototype.T_MOD_EQUAL=271,r.Parser.prototype.T_AND_EQUAL=272,r.Parser.prototype.T_OR_EQUAL=273,r.Parser.prototype.T_XOR_EQUAL=274,r.Parser.prototype.T_SL_EQUAL=275,r.Parser.prototype.T_SR_EQUAL=276,r.Parser.prototype.T_BOOLEAN_OR=277,r.Parser.prototype.T_BOOLEAN_AND=278,r.Parser.prototype.T_IS_EQUAL=279,r.Parser.prototype.T_IS_NOT_EQUAL=280,r.Parser.prototype.T_IS_IDENTICAL=281,r.Parser.prototype.T_IS_NOT_IDENTICAL=282,r.Parser.prototype.T_IS_SMALLER_OR_EQUAL=283,r.Parser.prototype.T_IS_GREATER_OR_EQUAL=284,r.Parser.prototype.T_SL=285,r.Parser.prototype.T_SR=286,r.Parser.prototype.T_INSTANCEOF=287,r.Parser.prototype.T_INC=288,r.Parser.prototype.T_DEC=289,r.Parser.prototype.T_INT_CAST=290,r.Parser.prototype.T_DOUBLE_CAST=291,r.Parser.prototype.T_STRING_CAST=292,r.Parser.prototype.T_ARRAY_CAST=293,r.Parser.prototype.T_OBJECT_CAST=294,r.Parser.prototype.T_BOOL_CAST=295,r.Parser.prototype.T_UNSET_CAST=296,r.Parser.prototype.T_NEW=297,r.Parser.prototype.T_CLONE=298,r.Parser.prototype.T_EXIT=299,r.Parser.prototype.T_IF=300,r.Parser.prototype.T_ELSEIF=301,r.Parser.prototype.T_ELSE=302,r.Parser.prototype.T_ENDIF=303,r.Parser.prototype.T_LNUMBER=304,r.Parser.prototype.T_DNUMBER=305,r.Parser.prototype.T_STRING=306,r.Parser.prototype.T_STRING_VARNAME=307,r.Parser.prototype.T_VARIABLE=308,r.Parser.prototype.T_NUM_STRING=309,r.Parser.prototype.T_INLINE_HTML=310,r.Parser.prototype.T_CHARACTER=311,r.Parser.prototype.T_BAD_CHARACTER=312,r.Parser.prototype.T_ENCAPSED_AND_WHITESPACE=313,r.Parser.prototype.T_CONSTANT_ENCAPSED_STRING=314,r.Parser.prototype.T_ECHO=315,r.Parser.prototype.T_DO=316,r.Parser.prototype.T_WHILE=317,r.Parser.prototype.T_ENDWHILE=318,r.Parser.prototype.T_FOR=319,r.Parser.prototype.T_ENDFOR=320,r.Parser.prototype.T_FOREACH=321,r.Parser.prototype.T_ENDFOREACH=322,r.Parser.prototype.T_DECLARE=323,r.Parser.prototype.T_ENDDECLARE=324,r.Parser.prototype.T_AS=325,r.Parser.prototype.T_SWITCH=326,r.Parser.prototype.T_ENDSWITCH=327,r.Parser.prototype.T_CASE=328,r.Parser.prototype.T_DEFAULT=329,r.Parser.prototype.T_BREAK=330,r.Parser.prototype.T_CONTINUE=331,r.Parser.prototype.T_GOTO=332,r.Parser.prototype.T_FUNCTION=333,r.Parser.prototype.T_CONST=334,r.Parser.prototype.T_RETURN=335,r.Parser.prototype.T_TRY=336,r.Parser.prototype.T_CATCH=337,r.Parser.prototype.T_THROW=338,r.Parser.prototype.T_USE=339,r.Parser.prototype.T_INSTEADOF=340,r.Parser.prototype.T_GLOBAL=341,r.Parser.prototype.T_STATIC=342,r.Parser.prototype.T_ABSTRACT=343,r.Parser.prototype.T_FINAL=344,r.Parser.prototype.T_PRIVATE=345,r.Parser.prototype.T_PROTECTED=346,r.Parser.prototype.T_PUBLIC=347,r.Parser.prototype.T_VAR=348,r.Parser.prototype.T_UNSET=349,r.Parser.prototype.T_ISSET=350,r.Parser.prototype.T_EMPTY=351,r.Parser.prototype.T_HALT_COMPILER=352,r.Parser.prototype.T_CLASS=353,r.Parser.prototype.T_TRAIT=354,r.Parser.prototype.T_INTERFACE=355,r.Parser.prototype.T_EXTENDS=356,r.Parser.prototype.T_IMPLEMENTS=357,r.Parser.prototype.T_OBJECT_OPERATOR=358,r.Parser.prototype.T_DOUBLE_ARROW=359,r.Parser.prototype.T_LIST=360,r.Parser.prototype.T_ARRAY=361,r.Parser.prototype.T_CALLABLE=362,r.Parser.prototype.T_CLASS_C=363,r.Parser.prototype.T_TRAIT_C=364,r.Parser.prototype.T_METHOD_C=365,r.Parser.prototype.T_FUNC_C=366,r.Parser.prototype.T_LINE=367,r.Parser.prototype.T_FILE=368,r.Parser.prototype.T_COMMENT=369,r.Parser.prototype.T_DOC_COMMENT=370,r.Parser.prototype.T_OPEN_TAG=371,r.Parser.prototype.T_OPEN_TAG_WITH_ECHO=372,r.Parser.prototype.T_CLOSE_TAG=373,r.Parser.prototype.T_WHITESPACE=374,r.Parser.prototype.T_START_HEREDOC=375,r.Parser.prototype.T_END_HEREDOC=376,r.Parser.prototype.T_DOLLAR_OPEN_CURLY_BRACES=377,r.Parser.prototype.T_CURLY_OPEN=378,r.Parser.prototype.T_PAAMAYIM_NEKUDOTAYIM=379,r.Parser.prototype.T_NAMESPACE=380,r.Parser.prototype.T_NS_C=381,r.Parser.prototype.T_DIR=382,r.Parser.prototype.T_NS_SEPARATOR=383,r.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_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_BOOLEAN_OR","T_BOOLEAN_AND","'|'","'^'","'&'","T_IS_EQUAL","T_IS_NOT_EQUAL","T_IS_IDENTICAL","T_IS_NOT_IDENTICAL","'<'","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_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_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_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","';'","'{'","'}'","'('","')'","'$'","']'","'`'","'\"'","???"],r.Parser.prototype.translate=[0,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,47,148,149,145,46,30,149,143,144,44,41,7,42,43,45,149,149,149,149,149,149,149,149,149,149,25,140,35,12,37,24,59,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,60,149,146,29,149,147,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,141,28,142,49,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,1,2,3,4,5,6,8,9,10,11,13,14,15,16,17,18,19,20,21,22,23,26,27,31,32,33,34,36,38,39,40,48,50,51,52,53,54,55,56,57,58,61,62,63,64,65,66,67,68,69,70,71,72,73,74,149,149,75,76,77,78,79,80,81,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,149,149,149,149,149,149,131,132,133,134,135,136,137,138,139],r.Parser.prototype.yyaction=[61,62,363,63,64,-32766,-32766,-32766,509,65,708,709,710,707,706,705,-32766,-32766,-32766,-32766,-32766,-32766,132,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767,-32766,335,-32766,-32766,-32766,-32766,-32766,66,67,351,663,664,40,68,548,69,232,233,70,71,72,73,74,75,76,77,30,246,78,336,364,-112,0,469,833,834,365,641,890,436,590,41,835,53,27,366,294,367,687,368,921,369,923,922,370,-32766,-32766,-32766,42,43,371,339,126,44,372,337,79,297,349,292,293,-32766,918,-32766,-32766,373,374,375,376,377,391,199,361,338,573,613,378,379,380,381,845,839,840,841,842,836,837,253,-32766,87,88,89,391,843,838,338,597,519,128,80,129,273,332,257,261,47,673,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,799,247,884,108,109,110,226,247,21,-32766,310,-32766,-32766,-32766,642,548,-32766,-32766,-32766,-32766,56,353,-32766,-32766,-32766,55,-32766,-32766,-32766,-32766,-32766,58,-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766,557,-32766,-32766,518,-32766,548,890,-32766,390,-32766,228,252,-32766,-32766,-32766,-32766,-32766,275,-32766,234,-32766,587,588,-32766,-32766,-32766,-32766,-32766,-32766,-32766,46,236,-32766,-32766,281,-32766,682,348,-32766,390,-32766,346,333,521,-32766,-32766,-32766,271,911,262,237,446,911,-32766,894,59,700,358,135,548,123,538,35,-32766,333,122,-32766,-32766,-32766,271,-32766,124,-32766,692,-32766,-32766,-32766,-32766,700,273,22,-32766,-32766,-32766,-32766,239,-32766,-32766,612,-32766,548,134,-32766,390,-32766,462,354,-32766,-32766,-32766,-32766,-32766,227,-32766,238,-32766,845,542,-32766,856,611,200,-32766,-32766,-32766,259,280,-32766,-32766,201,-32766,855,129,-32766,390,130,202,333,206,-32766,-32766,-32766,271,-32766,-32766,-32766,125,601,-32766,136,299,700,489,28,548,105,106,107,-32766,498,499,-32766,-32766,-32766,207,-32766,133,-32766,525,-32766,-32766,-32766,-32766,663,664,527,-32766,-32766,-32766,-32766,528,-32766,-32766,610,-32766,548,427,-32766,390,-32766,532,539,-32766,-32766,-32766,-32766,-32766,240,-32766,247,-32766,697,543,-32766,554,523,608,-32766,-32766,-32766,686,535,-32766,-32766,54,-32766,57,60,-32766,390,246,-155,278,345,-32766,-32766,-32766,506,347,-152,471,402,403,-32766,405,404,272,493,416,548,318,417,505,-32766,517,548,-32766,-32766,-32766,549,-32766,562,-32766,916,-32766,-32766,-32766,-32766,564,826,848,-32766,-32766,-32766,-32766,694,-32766,-32766,485,-32766,548,487,-32766,390,-32766,504,802,-32766,-32766,-32766,-32766,-32766,279,-32766,911,-32766,502,492,-32766,413,483,269,-32766,-32766,-32766,243,337,-32766,-32766,418,-32766,454,229,-32766,390,274,373,374,344,-32766,-32766,-32766,360,614,-32766,573,613,378,379,-274,548,615,-332,844,-32766,258,51,-32766,-32766,-32766,270,-32766,346,-32766,52,-32766,260,0,-32766,-333,-32766,-32766,-32766,-32766,-32766,-32766,205,-32766,-32766,49,-32766,548,424,-32766,390,-32766,-266,264,-32766,-32766,-32766,-32766,-32766,409,-32766,343,-32766,265,312,-32766,470,513,-275,-32766,-32766,-32766,920,337,-32766,-32766,530,-32766,531,600,-32766,390,592,373,374,578,581,-32766,-32766,644,629,-32766,573,613,378,379,635,548,636,576,627,-32766,625,693,-32766,-32766,-32766,691,-32766,591,-32766,582,-32766,203,204,-32766,584,583,-32766,-32766,-32766,-32766,586,599,-32766,-32766,589,-32766,690,558,-32766,390,197,683,919,86,520,522,-32766,524,833,834,529,533,-32766,534,537,541,835,48,111,112,113,114,115,116,117,118,119,120,121,127,31,633,337,330,634,585,-32766,32,291,337,330,478,373,374,917,291,891,889,875,373,374,553,613,378,379,737,739,887,553,613,378,379,824,451,675,839,840,841,842,836,837,320,895,277,885,23,33,843,838,556,277,337,330,-32766,34,-32766,555,291,36,37,38,373,374,39,45,50,81,82,83,84,553,613,378,379,-32767,-32767,-32767,-32767,103,104,105,106,107,337,85,131,137,337,138,198,224,225,277,373,374,-332,230,373,374,24,337,231,573,613,378,379,573,613,378,379,373,374,235,248,249,250,337,251,0,573,613,378,379,276,329,331,373,374,-32766,337,574,490,792,337,609,573,613,378,379,373,374,25,300,373,374,319,337,795,573,613,378,379,573,613,378,379,373,374,516,355,359,445,482,796,507,573,613,378,379,508,548,337,890,775,791,337,604,803,808,806,698,373,374,888,807,373,374,-32766,-32766,-32766,573,613,378,379,573,613,378,379,873,832,804,872,851,-32766,809,-32766,-32766,-32766,-32766,805,20,26,29,298,480,515,770,778,827,457,0,900,455,774,0,0,0,874,870,886,823,915,852,869,488,0,391,793,0,338,0,0,0,340,0,273],r.Parser.prototype.yycheck=[2,3,4,5,6,8,9,10,70,11,104,105,106,107,108,109,8,9,10,8,9,24,60,26,27,28,29,30,31,32,33,34,24,7,26,27,28,29,30,41,42,7,123,124,7,47,70,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,144,0,75,68,69,70,25,72,70,74,7,76,77,78,79,7,81,142,83,70,85,72,73,88,8,9,10,92,93,94,95,7,97,98,95,100,7,7,103,104,24,142,26,27,105,106,111,112,113,136,7,7,139,114,115,116,117,122,123,132,125,126,127,128,129,130,131,8,8,9,10,136,137,138,139,140,141,25,143,141,145,142,147,148,24,72,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,144,48,72,44,45,46,30,48,144,64,72,8,9,10,140,70,8,9,10,74,60,25,77,78,79,60,81,24,83,26,85,60,24,88,26,27,28,92,93,94,64,140,97,98,70,100,70,72,103,104,74,145,7,77,78,79,111,81,7,83,30,85,140,140,88,8,9,10,92,93,94,133,134,97,98,145,100,140,7,103,104,24,139,96,141,140,141,111,101,75,75,30,70,75,64,70,60,110,121,12,70,141,25,143,74,96,141,77,78,79,101,81,141,83,140,85,140,141,88,110,145,144,92,93,94,64,7,97,98,142,100,70,141,103,104,74,145,141,77,78,79,111,81,7,83,30,85,132,25,88,132,142,12,92,93,94,120,60,97,98,12,100,148,141,103,104,141,12,96,12,140,141,111,101,8,9,10,141,25,64,90,91,110,65,66,70,41,42,43,74,65,66,77,78,79,12,81,25,83,25,85,140,141,88,123,124,25,92,93,94,64,25,97,98,142,100,70,120,103,104,74,25,25,77,78,79,111,81,30,83,48,85,140,141,88,140,141,30,92,93,94,140,141,97,98,60,100,60,60,103,104,61,72,75,70,140,141,111,67,70,87,99,70,70,64,70,72,102,89,70,70,71,70,70,74,70,70,77,78,79,70,81,70,83,70,85,140,141,88,70,144,70,92,93,94,64,70,97,98,72,100,70,72,103,104,74,72,72,77,78,79,111,81,75,83,75,85,89,86,88,79,101,118,92,93,94,87,95,97,98,87,100,87,87,103,104,118,105,106,95,140,141,111,95,115,64,114,115,116,117,135,70,115,120,132,74,120,140,77,78,79,119,81,139,83,140,85,120,-1,88,120,140,141,92,93,94,64,121,97,98,121,100,70,122,103,104,74,135,135,77,78,79,111,81,139,83,139,85,135,135,88,135,135,135,92,93,94,142,95,97,98,140,100,140,140,103,104,140,105,106,140,140,141,111,140,140,64,114,115,116,117,140,70,140,140,140,74,140,140,77,78,79,140,81,140,83,140,85,41,42,88,140,140,141,92,93,94,140,140,97,98,140,100,140,140,103,104,60,140,142,141,141,141,111,141,68,69,141,141,72,141,141,141,76,12,13,14,15,16,17,18,19,20,21,22,23,141,143,142,95,96,142,140,141,143,101,95,96,142,105,106,142,101,142,142,142,105,106,114,115,116,117,50,51,142,114,115,116,117,142,123,142,125,126,127,128,129,130,131,142,136,142,144,143,137,138,142,136,95,96,143,143,145,142,101,143,143,143,105,106,143,143,143,143,143,143,143,114,115,116,117,35,36,37,38,39,40,41,42,43,95,143,143,143,95,143,143,143,143,136,105,106,120,143,105,106,144,95,143,114,115,116,117,114,115,116,117,105,106,143,143,143,143,95,143,-1,114,115,116,117,143,143,143,105,106,143,95,142,80,146,95,142,114,115,116,117,105,106,144,144,105,106,144,95,142,114,115,116,117,114,115,116,117,105,106,82,144,144,144,144,142,84,114,115,116,117,144,70,95,72,144,144,95,142,144,146,144,142,105,106,146,144,105,106,8,9,10,114,115,116,117,114,115,116,117,144,144,144,144,144,24,104,26,27,28,29,144,144,144,144,144,144,144,144,144,144,144,-1,144,144,144,-1,-1,-1,146,146,146,146,146,146,146,146,-1,136,147,-1,139,-1,-1,-1,143,-1,145],r.Parser.prototype.yybase=[0,574,581,623,655,2,718,402,747,659,672,688,743,701,705,483,483,483,483,483,351,356,366,366,367,366,344,-2,-2,-2,200,200,231,231,231,231,231,231,231,231,200,231,451,482,532,316,370,115,146,285,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,44,474,429,476,481,487,488,739,740,741,734,733,416,736,539,541,342,542,543,552,557,559,536,567,737,755,569,735,738,123,123,123,123,123,123,123,123,123,122,11,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,227,227,173,577,577,577,577,577,577,577,577,577,577,577,79,178,846,8,-3,-3,-3,-3,642,706,706,706,706,157,179,242,431,431,360,431,525,368,767,767,767,767,767,767,767,767,767,767,767,767,350,375,315,315,652,652,-81,-81,-81,-81,251,185,188,184,-62,348,195,195,195,408,392,410,1,192,129,129,129,-24,-24,-24,-24,499,-24,-24,-24,113,108,108,12,161,349,526,271,398,529,438,130,206,265,427,76,414,427,288,295,76,166,44,262,422,141,491,372,494,413,71,92,93,267,135,100,34,415,745,746,742,-38,420,-10,135,147,744,498,107,26,493,144,377,363,369,332,363,400,377,588,377,376,377,360,37,582,376,377,374,376,388,363,364,412,369,377,441,443,390,106,332,377,390,377,400,64,590,591,323,592,589,593,649,608,362,500,399,407,620,625,636,365,354,614,524,425,359,355,423,570,578,357,406,414,394,352,403,531,433,403,653,434,385,417,411,444,310,318,501,425,668,757,380,637,684,403,609,387,87,325,638,382,403,639,403,696,503,615,403,697,384,435,425,352,352,352,700,66,699,583,702,707,704,748,721,749,584,750,358,583,722,751,682,215,613,422,436,389,447,221,257,752,403,403,506,499,403,395,685,397,426,753,392,391,647,683,403,418,754,221,723,587,724,450,568,507,648,509,327,725,353,497,610,454,622,455,461,404,510,373,732,612,247,361,664,463,405,692,641,464,465,511,343,437,335,409,396,665,293,467,468,472,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,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,0,0,0,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,0,0,0,0,0,0,0,0,0,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,767,767,767,767,767,767,767,767,767,767,767,123,123,123,123,123,123,123,123,0,129,129,129,129,-94,-94,-94,767,767,767,767,767,767,0,0,0,0,0,0,0,0,0,0,0,0,-94,-94,129,129,767,767,-24,-24,-24,-24,-24,108,108,108,-24,108,145,145,145,108,108,108,100,100,0,0,0,0,0,0,0,145,0,0,0,376,0,0,0,145,260,260,221,260,260,135,0,0,425,376,0,364,376,0,0,0,0,0,0,531,0,87,637,241,425,0,0,0,0,0,0,0,425,289,289,306,0,358,0,0,0,306,241,0,0,221],r.Parser.prototype.yydefault=[3,32767,32767,1,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,104,96,110,95,106,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,358,358,122,122,122,122,122,122,122,122,316,32767,32767,32767,32767,32767,32767,32767,32767,32767,173,173,173,32767,348,348,348,348,348,348,348,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,363,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,232,233,235,236,172,125,349,362,171,199,201,250,200,177,182,183,184,185,186,187,188,189,190,191,192,176,229,228,197,313,313,316,32767,32767,32767,32767,32767,32767,32767,32767,198,202,204,203,219,220,217,218,175,221,222,223,224,157,157,157,357,357,32767,357,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,158,32767,211,212,276,276,117,117,117,117,117,32767,32767,32767,32767,284,32767,32767,32767,32767,32767,286,32767,32767,206,207,205,32767,32767,32767,32767,32767,32767,32767,32767,32767,285,32767,32767,32767,32767,32767,32767,32767,32767,334,321,272,32767,32767,32767,265,32767,107,109,32767,32767,32767,32767,302,339,32767,32767,32767,17,32767,32767,32767,370,334,32767,32767,19,32767,32767,32767,32767,227,32767,338,332,32767,32767,32767,32767,32767,32767,63,32767,32767,32767,32767,32767,63,281,63,32767,63,32767,315,287,32767,63,74,32767,72,32767,32767,76,32767,63,93,93,254,315,54,63,254,63,32767,32767,32767,32767,4,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,267,32767,323,32767,337,336,324,32767,265,32767,215,194,266,32767,196,32767,32767,270,273,32767,32767,32767,134,32767,268,180,32767,32767,32767,32767,365,32767,32767,174,32767,32767,32767,130,32767,61,332,32767,32767,355,32767,32767,332,269,208,209,210,32767,121,32767,310,32767,32767,32767,32767,32767,32767,327,32767,333,32767,32767,32767,32767,111,32767,302,32767,32767,32767,75,32767,32767,178,126,32767,32767,364,32767,32767,32767,320,32767,32767,32767,32767,32767,62,32767,32767,77,32767,32767,32767,32767,332,32767,32767,32767,115,32767,169,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,332,32767,32767,32767,32767,32767,32767,32767,4,32767,151,32767,32767,32767,32767,32767,32767,32767,25,25,3,137,3,137,25,101,25,25,137,93,93,25,25,25,144,25,25,25,25,25,25,25,25],r.Parser.prototype.yygoto=[141,141,173,173,173,173,173,173,173,173,141,173,142,143,144,148,153,155,181,175,172,172,172,172,174,174,174,174,174,174,174,168,169,170,171,179,757,758,392,760,781,782,783,784,785,786,787,789,725,145,146,147,149,150,151,152,154,177,178,180,196,208,209,210,211,212,213,214,215,217,218,219,220,244,245,266,267,268,430,431,432,182,183,184,185,186,187,188,189,190,191,192,156,157,158,159,176,160,194,161,162,163,164,195,165,193,139,166,167,452,452,452,452,452,452,452,452,452,452,452,453,453,453,453,453,453,453,453,453,453,453,551,551,551,464,491,394,394,394,394,394,394,394,394,394,394,394,394,394,394,394,394,394,394,407,552,552,552,810,810,662,662,662,662,662,594,283,595,510,399,399,567,679,632,849,850,863,660,714,426,222,622,622,622,622,223,617,623,494,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,465,472,514,904,398,398,425,425,459,425,419,322,421,421,393,396,412,422,428,460,463,473,481,501,5,476,284,327,1,15,2,6,7,550,550,550,8,9,10,668,16,11,17,12,18,13,19,14,704,328,881,881,643,628,626,626,624,626,526,401,652,647,847,847,847,847,847,847,847,847,847,847,847,437,438,441,447,477,479,497,290,910,910,400,400,486,880,880,263,913,910,303,255,723,306,822,821,306,896,896,896,861,304,323,410,913,913,897,316,420,769,658,559,879,671,536,324,466,565,311,311,311,801,241,676,496,439,440,442,444,448,475,631,858,311,285,286,603,495,712,0,406,321,0,0,0,314,0,0,429,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,411],r.Parser.prototype.yygcheck=[15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,35,35,35,35,35,35,35,35,35,35,35,86,86,86,86,86,86,86,86,86,86,86,6,6,6,21,21,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,71,7,7,7,35,35,35,35,35,35,35,29,44,29,35,86,86,12,12,12,12,12,12,12,12,75,40,35,35,35,35,40,35,35,35,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,36,36,36,104,82,82,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,13,42,42,42,2,13,2,13,13,5,5,5,13,13,13,54,13,13,13,13,13,13,13,13,67,67,83,83,5,5,5,5,5,5,5,5,5,5,93,93,93,93,93,93,93,93,93,93,93,52,52,52,52,52,52,52,4,105,105,89,89,94,84,84,92,105,105,26,92,71,4,91,91,4,84,84,84,97,30,70,30,105,105,102,27,30,72,50,10,84,55,46,9,30,11,90,90,90,80,30,56,30,85,85,85,85,85,85,43,96,90,44,44,34,77,69,-1,4,90,-1,-1,-1,4,-1,-1,4,-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,71],r.Parser.prototype.yygbase=[0,0,-286,0,10,239,130,154,0,-10,25,-23,-29,-289,0,-30,0,0,0,0,0,83,0,0,0,0,245,84,-11,142,-28,0,0,0,-13,-88,-42,0,0,0,-344,0,-38,-12,-188,0,23,0,0,0,66,0,247,0,205,24,-18,0,0,0,0,0,0,0,0,0,0,13,0,-15,85,74,70,0,0,148,0,-14,0,0,-6,0,-35,11,47,278,-77,0,0,44,68,43,38,72,94,0,-16,109,0,0,0,0,87,0,170,34,0],r.Parser.prototype.yygdefault=[-32768,362,3,546,382,570,571,572,307,305,560,566,467,4,568,140,295,575,296,500,577,414,579,580,308,309,415,315,216,593,503,313,596,357,602,301,449,383,350,461,221,423,456,630,282,638,540,646,649,450,657,352,433,434,667,672,677,680,334,325,474,684,685,256,689,511,512,703,242,711,317,724,342,788,790,397,408,484,797,326,800,384,385,386,387,435,818,815,289,866,287,443,254,853,468,356,903,862,288,388,389,302,898,341,905,912,458],r.Parser.prototype.yylhs=[0,1,2,2,4,4,3,3,3,3,3,3,3,3,3,8,8,10,10,10,10,9,9,11,13,13,14,14,14,14,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,33,33,34,27,27,30,30,6,7,7,7,37,37,37,38,38,41,41,39,39,42,42,22,22,29,29,32,32,31,31,43,23,23,23,23,44,44,45,45,46,46,20,20,16,16,47,18,18,48,17,17,19,19,36,36,49,49,50,50,51,51,51,51,52,52,53,53,54,54,24,24,55,55,55,25,25,56,56,40,40,57,57,57,57,62,62,63,63,64,64,64,64,65,66,66,61,61,58,58,60,60,68,68,67,67,67,67,67,67,59,59,69,69,26,26,21,21,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,71,77,77,79,79,80,81,81,81,81,81,81,86,86,35,35,35,72,72,87,87,82,82,88,88,88,88,88,73,73,73,76,76,76,78,78,93,93,93,93,93,93,93,93,93,93,93,93,93,93,12,12,12,12,12,12,74,74,74,74,94,94,96,96,95,95,97,97,28,28,28,28,99,99,98,98,98,98,98,100,100,84,84,89,89,83,83,101,101,101,101,90,90,90,90,85,85,91,91,91,70,70,102,102,102,75,75,103,103,104,104,104,104,92,92,92,92,105,105,105,105,105,105,105,106,106,106],r.Parser.prototype.yylen=[1,1,2,0,1,3,1,1,1,1,3,5,4,3,3,3,1,1,3,2,4,3,1,3,2,0,1,1,1,1,3,7,10,5,7,9,5,2,3,2,3,2,3,3,3,3,1,2,5,7,8,10,5,1,5,3,3,2,1,2,8,1,3,0,1,9,7,6,5,1,2,2,0,2,0,2,0,2,1,3,1,4,1,4,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,0,1,3,3,5,0,1,1,1,1,0,1,3,1,2,3,1,1,2,4,3,1,1,3,2,0,3,3,8,3,1,3,0,2,4,5,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,6,3,4,4,1,2,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,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,5,4,4,4,2,2,4,2,2,2,2,2,2,2,2,2,2,2,1,4,3,3,2,9,10,3,0,4,1,3,2,4,6,8,4,4,4,1,1,1,2,3,1,1,1,1,1,1,0,3,3,4,4,0,2,3,0,1,1,0,3,1,1,1,1,1,1,1,1,1,1,1,3,2,1,1,3,2,2,4,3,1,3,3,3,0,2,0,1,3,1,3,1,1,1,1,1,6,4,3,6,4,4,4,1,3,1,2,1,1,4,1,3,6,4,4,4,4,1,4,0,1,1,3,1,3,1,1,4,0,0,2,3,1,3,1,4,2,2,2,1,2,1,4,3,3,3,6,3,1,1,1],r.Parser.prototype.yyn0=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn1=function(e){this.yyval=this.Stmt_Namespace_postprocess(this.yyastk[this.stackPos-0])},r.Parser.prototype.yyn2=function(e){Array.isArray(this.yyastk[this.stackPos-0])?this.yyval=this.yyastk[this.stackPos-1].concat(this.yyastk[this.stackPos-0]):(this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1])},r.Parser.prototype.yyn3=function(e){this.yyval=[]},r.Parser.prototype.yyn4=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn5=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn6=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn7=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn8=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn9=function(e){this.yyval=this.Node_Stmt_HaltCompiler(e)},r.Parser.prototype.yyn10=function(e){this.yyval=this.Node_Stmt_Namespace(this.Node_Name(this.yyastk[this.stackPos-1],e),null,e)},r.Parser.prototype.yyn11=function(e){this.yyval=this.Node_Stmt_Namespace(this.Node_Name(this.yyastk[this.stackPos-3],e),this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn12=function(e){this.yyval=this.Node_Stmt_Namespace(null,this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn13=function(e){this.yyval=this.Node_Stmt_Use(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn14=function(e){this.yyval=this.Node_Stmt_Const(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn15=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn16=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn17=function(e){this.yyval=this.Node_Stmt_UseUse(this.Node_Name(this.yyastk[this.stackPos-0],e),null,e)},r.Parser.prototype.yyn18=function(e){this.yyval=this.Node_Stmt_UseUse(this.Node_Name(this.yyastk[this.stackPos-2],e),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn19=function(e){this.yyval=this.Node_Stmt_UseUse(this.Node_Name(this.yyastk[this.stackPos-0],e),null,e)},r.Parser.prototype.yyn20=function(e){this.yyval=this.Node_Stmt_UseUse(this.Node_Name(this.yyastk[this.stackPos-2],e),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn21=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn22=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn23=function(e){this.yyval=this.Node_Const(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn24=function(e){Array.isArray(this.yyastk[this.stackPos-0])?this.yyval=this.yyastk[this.stackPos-1].concat(this.yyastk[this.stackPos-0]):(this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1])},r.Parser.prototype.yyn25=function(e){this.yyval=[]},r.Parser.prototype.yyn26=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn27=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn28=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn29=function(e){throw new Error("__halt_compiler() can only be used from the outermost scope")},r.Parser.prototype.yyn30=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn31=function(e){this.yyval=this.Node_Stmt_If(this.yyastk[this.stackPos-4],{stmts:Array.isArray(this.yyastk[this.stackPos-2])?this.yyastk[this.stackPos-2]:[this.yyastk[this.stackPos-2]],elseifs:this.yyastk[this.stackPos-1],Else:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn32=function(e){this.yyval=this.Node_Stmt_If(this.yyastk[this.stackPos-7],{stmts:this.yyastk[this.stackPos-4],elseifs:this.yyastk[this.stackPos-3],"else":this.yyastk[this.stackPos-2]},e)},r.Parser.prototype.yyn33=function(e){this.yyval=this.Node_Stmt_While(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn34=function(e){this.yyval=this.Node_Stmt_Do(this.yyastk[this.stackPos-2],Array.isArray(this.yyastk[this.stackPos-5])?this.yyastk[this.stackPos-5]:[this.yyastk[this.stackPos-5]],e)},r.Parser.prototype.yyn35=function(e){this.yyval=this.Node_Stmt_For({init:this.yyastk[this.stackPos-6],cond:this.yyastk[this.stackPos-4],loop:this.yyastk[this.stackPos-2],stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn36=function(e){this.yyval=this.Node_Stmt_Switch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn37=function(e){this.yyval=this.Node_Stmt_Break(null,e)},r.Parser.prototype.yyn38=function(e){this.yyval=this.Node_Stmt_Break(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn39=function(e){this.yyval=this.Node_Stmt_Continue(null,e)},r.Parser.prototype.yyn40=function(e){this.yyval=this.Node_Stmt_Continue(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn41=function(e){this.yyval=this.Node_Stmt_Return(null,e)},r.Parser.prototype.yyn42=function(e){this.yyval=this.Node_Stmt_Return(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn43=function(e){this.yyval=this.Node_Stmt_Global(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn44=function(e){this.yyval=this.Node_Stmt_Static(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn45=function(e){this.yyval=this.Node_Stmt_Echo(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn46=function(e){this.yyval=this.Node_Stmt_InlineHTML(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn47=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn48=function(e){this.yyval=this.Node_Stmt_Unset(this.yyastk[this.stackPos-2],e)},r.Parser.prototype.yyn49=function(e){this.yyval=this.Node_Stmt_Foreach(this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-2],{keyVar:null,byRef:!1,stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn50=function(e){this.yyval=this.Node_Stmt_Foreach(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-2],{keyVar:null,byRef:!0,stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn51=function(e){this.yyval=this.Node_Stmt_Foreach(this.yyastk[this.stackPos-7],this.yyastk[this.stackPos-2],{keyVar:this.yyastk[this.stackPos-5],byRef:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn52=function(e){this.yyval=this.Node_Stmt_Declare(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn53=function(e){this.yyval=[]},r.Parser.prototype.yyn54=function(e){this.yyval=this.Node_Stmt_TryCatch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn55=function(e){this.yyval=this.Node_Stmt_Throw(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn56=function(e){this.yyval=this.Node_Stmt_Goto(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn57=function(e){this.yyval=this.Node_Stmt_Label(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn58=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn59=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn60=function(e){this.yyval=this.Node_Stmt_Catch(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-4].substring(1),this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn61=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn62=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn63=function(e){this.yyval=!1},r.Parser.prototype.yyn64=function(e){this.yyval=!0},r.Parser.prototype.yyn65=function(e){this.yyval=this.Node_Stmt_Function(this.yyastk[this.stackPos-6],{byRef:this.yyastk[this.stackPos-7],params:this.yyastk[this.stackPos-4],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn66=function(e){this.yyval=this.Node_Stmt_Class(this.yyastk[this.stackPos-5],{type:this.yyastk[this.stackPos-6],Extends:this.yyastk[this.stackPos-4],Implements:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn67=function(e){this.yyval=this.Node_Stmt_Interface(this.yyastk[this.stackPos-4],{Extends:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn68=function(e){this.yyval=this.Node_Stmt_Trait(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn69=function(e){this.yyval=0},r.Parser.prototype.yyn70=function(e){this.yyval=this.MODIFIER_ABSTRACT},r.Parser.prototype.yyn71=function(e){this.yyval=this.MODIFIER_FINAL},r.Parser.prototype.yyn72=function(e){this.yyval=null},r.Parser.prototype.yyn73=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn74=function(e){this.yyval=[]},r.Parser.prototype.yyn75=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn76=function(e){this.yyval=[]},r.Parser.prototype.yyn77=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn78=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn79=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn80=function(e){this.yyval=Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn81=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn82=function(e){this.yyval=Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn83=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn84=function(e){this.yyval=Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn85=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn86=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn87=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn88=function(e){this.yyval=this.Node_Stmt_DeclareDeclare(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn89=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn90=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn91=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn92=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn93=function(e){this.yyval=[]},r.Parser.prototype.yyn94=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn95=function(e){this.yyval=this.Node_Stmt_Case(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn96=function(e){this.yyval=this.Node_Stmt_Case(null,this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn97=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn98=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn99=function(e){this.yyval=Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn100=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn101=function(e){this.yyval=[]},r.Parser.prototype.yyn102=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn103=function(e){this.yyval=this.Node_Stmt_ElseIf(this.yyastk[this.stackPos-2],Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]],e)},r.Parser.prototype.yyn104=function(e){this.yyval=[]},r.Parser.prototype.yyn105=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn106=function(e){this.yyval=this.Node_Stmt_ElseIf(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn107=function(e){this.yyval=null},r.Parser.prototype.yyn108=function(e){this.yyval=this.Node_Stmt_Else(Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]],e)},r.Parser.prototype.yyn109=function(e){this.yyval=null},r.Parser.prototype.yyn110=function(e){this.yyval=this.Node_Stmt_Else(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn111=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn112=function(e){this.yyval=[]},r.Parser.prototype.yyn113=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn114=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn115=function(e){this.yyval=this.Node_Param(this.yyastk[this.stackPos-0].substring(1),null,this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn116=function(e){this.yyval=this.Node_Param(this.yyastk[this.stackPos-2].substring(1),this.yyastk[this.stackPos-0],this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-3],e)},r.Parser.prototype.yyn117=function(e){this.yyval=null},r.Parser.prototype.yyn118=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn119=function(e){this.yyval="array"},r.Parser.prototype.yyn120=function(e){this.yyval="callable"},r.Parser.prototype.yyn121=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn122=function(e){this.yyval=[]},r.Parser.prototype.yyn123=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn124=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn125=function(e){this.yyval=this.Node_Arg(this.yyastk[this.stackPos-0],!1,e)},r.Parser.prototype.yyn126=function(e){this.yyval=this.Node_Arg(this.yyastk[this.stackPos-0],!0,e)},r.Parser.prototype.yyn127=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn128=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn129=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.yyn130=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn131=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn132=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn133=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn134=function(e){this.yyval=this.Node_Stmt_StaticVar(this.yyastk[this.stackPos-0].substring(1),null,e)},r.Parser.prototype.yyn135=function(e){this.yyval=this.Node_Stmt_StaticVar(this.yyastk[this.stackPos-2].substring(1),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn136=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn137=function(e){this.yyval=[]},r.Parser.prototype.yyn138=function(e){this.yyval=this.Node_Stmt_Property(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn139=function(e){this.yyval=this.Node_Stmt_ClassConst(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn140=function(e){this.yyval=this.Node_Stmt_ClassMethod(this.yyastk[this.stackPos-4],{type:this.yyastk[this.stackPos-7],byRef:this.yyastk[this.stackPos-5],params:this.yyastk[this.stackPos-2],stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn141=function(e){this.yyval=this.Node_Stmt_TraitUse(this.yyastk[this.stackPos-1],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn142=function(e){this.yyval=[]},r.Parser.prototype.yyn143=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn144=function(e){this.yyval=[]},r.Parser.prototype.yyn145=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn146=function(e){this.yyval=this.Node_Stmt_TraitUseAdaptation_Precedence(this.yyastk[this.stackPos-3][0],this.yyastk[this.stackPos-3][1],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn147=function(e){this.yyval=this.Node_Stmt_TraitUseAdaptation_Alias(this.yyastk[this.stackPos-4][0],this.yyastk[this.stackPos-4][1],this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn148=function(e){this.yyval=this.Node_Stmt_TraitUseAdaptation_Alias(this.yyastk[this.stackPos-3][0],this.yyastk[this.stackPos-3][1],this.yyastk[this.stackPos-1],null,e)},r.Parser.prototype.yyn149=function(e){this.yyval=this.Node_Stmt_TraitUseAdaptation_Alias(this.yyastk[this.stackPos-3][0],this.yyastk[this.stackPos-3][1],null,this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn150=function(e){this.yyval=array(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0])},r.Parser.prototype.yyn151=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn152=function(e){this.yyval=array(null,this.yyastk[this.stackPos-0])},r.Parser.prototype.yyn153=function(e){this.yyval=null},r.Parser.prototype.yyn154=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn155=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn156=function(e){this.yyval=this.MODIFIER_PUBLIC},r.Parser.prototype.yyn157=function(e){this.yyval=this.MODIFIER_PUBLIC},r.Parser.prototype.yyn158=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn159=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn160=function(e){this.Stmt_Class_verifyModifier(this.yyastk[this.stackPos-1],this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]|this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn161=function(e){this.yyval=this.MODIFIER_PUBLIC},r.Parser.prototype.yyn162=function(e){this.yyval=this.MODIFIER_PROTECTED},r.Parser.prototype.yyn163=function(e){this.yyval=this.MODIFIER_PRIVATE},r.Parser.prototype.yyn164=function(e){this.yyval=this.MODIFIER_STATIC},r.Parser.prototype.yyn165=function(e){this.yyval=this.MODIFIER_ABSTRACT},r.Parser.prototype.yyn166=function(e){this.yyval=this.MODIFIER_FINAL},r.Parser.prototype.yyn167=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn168=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn169=function(e){this.yyval=this.Node_Stmt_PropertyProperty(this.yyastk[this.stackPos-0].substring(1),null,e)},r.Parser.prototype.yyn170=function(e){this.yyval=this.Node_Stmt_PropertyProperty(this.yyastk[this.stackPos-2].substring(1),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn171=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn172=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn173=function(e){this.yyval=[]},r.Parser.prototype.yyn174=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn175=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn176=function(e){this.yyval=this.Node_Expr_AssignList(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn177=function(e){this.yyval=this.Node_Expr_Assign(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn178=function(e){this.yyval=this.Node_Expr_AssignRef(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn179=function(e){this.yyval=this.Node_Expr_AssignRef(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn180=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn181=function(e){this.yyval=this.Node_Expr_Clone(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn182=function(e){this.yyval=this.Node_Expr_AssignPlus(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn183=function(e){this.yyval=this.Node_Expr_AssignMinus(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn184=function(e){this.yyval=this.Node_Expr_AssignMul(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn185=function(e){this.yyval=this.Node_Expr_AssignDiv(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn186=function(e){this.yyval=this.Node_Expr_AssignConcat(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn187=function(e){this.yyval=this.Node_Expr_AssignMod(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn188=function(e){this.yyval=this.Node_Expr_AssignBitwiseAnd(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn189=function(e){this.yyval=this.Node_Expr_AssignBitwiseOr(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn190=function(e){this.yyval=this.Node_Expr_AssignBitwiseXor(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn191=function(e){this.yyval=this.Node_Expr_AssignShiftLeft(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn192=function(e){this.yyval=this.Node_Expr_AssignShiftRight(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn193=function(e){this.yyval=this.Node_Expr_PostInc(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn194=function(e){this.yyval=this.Node_Expr_PreInc(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn195=function(e){this.yyval=this.Node_Expr_PostDec(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn196=function(e){this.yyval=this.Node_Expr_PreDec(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn197=function(e){this.yyval=this.Node_Expr_BooleanOr(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn198=function(e){this.yyval=this.Node_Expr_BooleanAnd(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn199=function(e){this.yyval=this.Node_Expr_LogicalOr(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn200=function(e){this.yyval=this.Node_Expr_LogicalAnd(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn201=function(e){this.yyval=this.Node_Expr_LogicalXor(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn202=function(e){this.yyval=this.Node_Expr_BitwiseOr(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn203=function(e){this.yyval=this.Node_Expr_BitwiseAnd(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn204=function(e){this.yyval=this.Node_Expr_BitwiseXor(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn205=function(e){this.yyval=this.Node_Expr_Concat(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn206=function(e){this.yyval=this.Node_Expr_Plus(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn207=function(e){this.yyval=this.Node_Expr_Minus(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn208=function(e){this.yyval=this.Node_Expr_Mul(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn209=function(e){this.yyval=this.Node_Expr_Div(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn210=function(e){this.yyval=this.Node_Expr_Mod(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn211=function(e){this.yyval=this.Node_Expr_ShiftLeft(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn212=function(e){this.yyval=this.Node_Expr_ShiftRight(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn213=function(e){this.yyval=this.Node_Expr_UnaryPlus(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn214=function(e){this.yyval=this.Node_Expr_UnaryMinus(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn215=function(e){this.yyval=this.Node_Expr_BooleanNot(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn216=function(e){this.yyval=this.Node_Expr_BitwiseNot(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn217=function(e){this.yyval=this.Node_Expr_Identical(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn218=function(e){this.yyval=this.Node_Expr_NotIdentical(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn219=function(e){this.yyval=this.Node_Expr_Equal(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn220=function(e){this.yyval=this.Node_Expr_NotEqual(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn221=function(e){this.yyval=this.Node_Expr_Smaller(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn222=function(e){this.yyval=this.Node_Expr_SmallerOrEqual(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn223=function(e){this.yyval=this.Node_Expr_Greater(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn224=function(e){this.yyval=this.Node_Expr_GreaterOrEqual(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn225=function(e){this.yyval=this.Node_Expr_Instanceof(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn226=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn227=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn228=function(e){this.yyval=this.Node_Expr_Ternary(this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn229=function(e){this.yyval=this.Node_Expr_Ternary(this.yyastk[this.stackPos-3],null,this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn230=function(e){this.yyval=this.Node_Expr_Isset(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn231=function(e){this.yyval=this.Node_Expr_Empty(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn232=function(e){this.yyval=this.Node_Expr_Include(this.yyastk[this.stackPos-0],"Node_Expr_Include",e)},r.Parser.prototype.yyn233=function(e){this.yyval=this.Node_Expr_Include(this.yyastk[this.stackPos-0],"Node_Expr_IncludeOnce",e)},r.Parser.prototype.yyn234=function(e){this.yyval=this.Node_Expr_Eval(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn235=function(e){this.yyval=this.Node_Expr_Include(this.yyastk[this.stackPos-0],"Node_Expr_Require",e)},r.Parser.prototype.yyn236=function(e){this.yyval=this.Node_Expr_Include(this.yyastk[this.stackPos-0],"Node_Expr_RequireOnce",e)},r.Parser.prototype.yyn237=function(e){this.yyval=this.Node_Expr_Cast_Int(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn238=function(e){this.yyval=this.Node_Expr_Cast_Double(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn239=function(e){this.yyval=this.Node_Expr_Cast_String(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn240=function(e){this.yyval=this.Node_Expr_Cast_Array(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn241=function(e){this.yyval=this.Node_Expr_Cast_Object(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn242=function(e){this.yyval=this.Node_Expr_Cast_Bool(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn243=function(e){this.yyval=this.Node_Expr_Cast_Unset(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn244=function(e){this.yyval=this.Node_Expr_Exit(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn245=function(e){this.yyval=this.Node_Expr_ErrorSuppress(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn246=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn247=function(e){this.yyval=this.Node_Expr_Array(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn248=function(e){this.yyval=this.Node_Expr_Array(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn249=function(e){this.yyval=this.Node_Expr_ShellExec(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn250=function(e){this.yyval=this.Node_Expr_Print(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn251=function(e){this.yyval=this.Node_Expr_Closure({"static":!1,byRef:this.yyastk[this.stackPos-7],params:this.yyastk[this.stackPos-5],uses:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn252=function(e){this.yyval=this.Node_Expr_Closure({"static":!0,byRef:this.yyastk[this.stackPos-7],params:this.yyastk[this.stackPos-5],uses:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn253=function(e){this.yyval=this.Node_Expr_New(this.yyastk[this.stackPos-1],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn254=function(e){this.yyval=[]},r.Parser.prototype.yyn255=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn256=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn257=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn258=function(e){this.yyval=this.Node_Expr_ClosureUse(this.yyastk[this.stackPos-0].substring(1),this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn259=function(e){this.yyval=this.Node_Expr_FuncCall(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn260=function(e){this.yyval=this.Node_Expr_StaticCall(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn261=function(e){this.yyval=this.Node_Expr_StaticCall(this.yyastk[this.stackPos-7],this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn262=function(e){if(this.yyastk[this.stackPos-3].type==="Node_Expr_StaticPropertyFetch")this.yyval=this.Node_Expr_StaticCall(this.yyastk[this.stackPos-3].Class,this.Node_Expr_Variable(this.yyastk[this.stackPos-3].name,e),this.yyastk[this.stackPos-1],e);else{if(this.yyastk[this.stackPos-3].type!=="Node_Expr_ArrayDimFetch")throw new Exception;var t=this.yyastk[this.stackPos-3];while(t.variable.type==="Node_Expr_ArrayDimFetch")t=t.variable;this.yyval=this.Node_Expr_StaticCall(t.variable.Class,this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e),t.variable=this.Node_Expr_Variable(t.variable.name,e)}},r.Parser.prototype.yyn263=function(e){this.yyval=this.Node_Expr_FuncCall(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn264=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn265=function(e){this.yyval=this.Node_Name("static",e)},r.Parser.prototype.yyn266=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn267=function(e){this.yyval=this.Node_Name(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn268=function(e){this.yyval=this.Node_Name_FullyQualified(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn269=function(e){this.yyval=this.Node_Name_Relative(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn270=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn271=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn272=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn273=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn274=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn275=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn276=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn277=function(e){this.yyval=this.Node_Expr_PropertyFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn278=function(e){this.yyval=this.Node_Expr_PropertyFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn279=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn280=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn281=function(e){this.yyval=null},r.Parser.prototype.yyn282=function(e){this.yyval=null},r.Parser.prototype.yyn283=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn284=function(e){this.yyval=[]},r.Parser.prototype.yyn285=function(e){this.yyval=[this.Scalar_String_parseEscapeSequences(this.yyastk[this.stackPos-0],"`")]},r.Parser.prototype.yyn286=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn287=function(e){this.yyval=[]},r.Parser.prototype.yyn288=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn289=function(e){this.yyval=this.Node_Scalar_LNumber(this.Scalar_LNumber_parse(this.yyastk[this.stackPos-0]),e)},r.Parser.prototype.yyn290=function(e){this.yyval=this.Node_Scalar_DNumber(this.Scalar_DNumber_parse(this.yyastk[this.stackPos-0]),e)},r.Parser.prototype.yyn291=function(e){this.yyval=this.Scalar_String_create(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn292=function(e){this.yyval={type:"Node_Scalar_LineConst",attributes:e}},r.Parser.prototype.yyn293=function(e){this.yyval={type:"Node_Scalar_FileConst",attributes:e}},r.Parser.prototype.yyn294=function(e){this.yyval={type:"Node_Scalar_DirConst",attributes:e}},r.Parser.prototype.yyn295=function(e){this.yyval={type:"Node_Scalar_ClassConst",attributes:e}},r.Parser.prototype.yyn296=function(e){this.yyval={type:"Node_Scalar_TraitConst",attributes:e}},r.Parser.prototype.yyn297=function(e){this.yyval={type:"Node_Scalar_MethodConst",attributes:e}},r.Parser.prototype.yyn298=function(e){this.yyval={type:"Node_Scalar_FuncConst",attributes:e}},r.Parser.prototype.yyn299=function(e){this.yyval={type:"Node_Scalar_NSConst",attributes:e}},r.Parser.prototype.yyn300=function(e){this.yyval=this.Node_Scalar_String(this.Scalar_String_parseDocString(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-1]),e)},r.Parser.prototype.yyn301=function(e){this.yyval=this.Node_Scalar_String("",e)},r.Parser.prototype.yyn302=function(e){this.yyval=this.Node_Expr_ConstFetch(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn303=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn304=function(e){this.yyval=this.Node_Expr_ClassConstFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn305=function(e){this.yyval=this.Node_Expr_UnaryPlus(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn306=function(e){this.yyval=this.Node_Expr_UnaryMinus(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn307=function(e){this.yyval=this.Node_Expr_Array(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn308=function(e){this.yyval=this.Node_Expr_Array(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn309=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn310=function(e){this.yyval=this.Node_Expr_ClassConstFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn311=function(e){this.yyval=this.Node_Scalar_Encapsed(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn312=function(e){this.yyval=this.Node_Scalar_Encapsed(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn313=function(e){this.yyval=[]},r.Parser.prototype.yyn314=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn315=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn316=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn317=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn318=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn319=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],this.yyastk[this.stackPos-2],!1,e)},r.Parser.prototype.yyn320=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],null,!1,e)},r.Parser.prototype.yyn321=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn322=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn323=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn324=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn325=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn326=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn327=function(e){this.yyval=this.Node_Expr_PropertyFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn328=function(e){this.yyval=this.Node_Expr_MethodCall(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn329=function(e){this.yyval=this.Node_Expr_FuncCall(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn330=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn331=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn332=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn333=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn334=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn335=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn336=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn337=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn338=function(e){this.yyval=this.Node_Expr_StaticPropertyFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn339=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn340=function(e){this.yyval=this.Node_Expr_StaticPropertyFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.yyn341=function(e){this.yyval=this.Node_Expr_StaticPropertyFetch(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn342=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn343=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn344=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn345=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn346=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.yyn347=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn348=function(e){this.yyval=null},r.Parser.prototype.yyn349=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn350=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn351=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn352=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn353=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn354=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn355=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn356=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn357=function(e){this.yyval=null},r.Parser.prototype.yyn358=function(e){this.yyval=[]},r.Parser.prototype.yyn359=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn360=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn361=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn362=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],this.yyastk[this.stackPos-2],!1,e)},r.Parser.prototype.yyn363=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],null,!1,e)},r.Parser.prototype.yyn364=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],this.yyastk[this.stackPos-3],!0,e)},r.Parser.prototype.yyn365=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],null,!0,e)},r.Parser.prototype.yyn366=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn367=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn368=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn369=function(e){this.yyval=[this.yyastk[this.stackPos-1],this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn370=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.yyn371=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.Node_Expr_Variable(this.yyastk[this.stackPos-3].substring(1),e),this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn372=function(e){this.yyval=this.Node_Expr_PropertyFetch(this.Node_Expr_Variable(this.yyastk[this.stackPos-2].substring(1),e),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn373=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn374=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn375=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.Node_Expr_Variable(this.yyastk[this.stackPos-4],e),this.yyastk[this.stackPos-2],e)},r.Parser.prototype.yyn376=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn377=function(e){this.yyval=this.Node_Scalar_String(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn378=function(e){this.yyval=this.Node_Scalar_String(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn379=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.Stmt_Namespace_postprocess=function(e){return e},r.Parser.prototype.Node_Stmt_Echo=function(){return{type:"Node_Stmt_Echo",exprs:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_If=function(){return{type:"Node_Stmt_If",cond:arguments[0],stmts:arguments[1].stmts,elseifs:arguments[1].elseifs,Else:arguments[1].Else||null,attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_For=function(){return{type:"Node_Stmt_For",init:arguments[0].init,cond:arguments[0].cond,loop:arguments[0].loop,stmts:arguments[0].stmts,attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Function=function(){return{type:"Node_Stmt_Function",name:arguments[0],byRef:arguments[1].byRef,params:arguments[1].params,stmts:arguments[1].stmts,attributes:arguments[2]}},r.Parser.prototype.Stmt_Class_verifyModifier=function(){},r.Parser.prototype.Node_Stmt_Class=function(){return{type:"Node_Stmt_Class",name:arguments[0],Type:arguments[1].type,Extends:arguments[1].Extends,Implements:arguments[1].Implements,stmts:arguments[1].stmts,attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_ClassMethod=function(){return{type:"Node_Stmt_ClassMethod",name:arguments[0],Type:arguments[1].type,byRef:arguments[1].byRef,params:arguments[1].params,stmts:arguments[1].stmts,attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_ClassConst=function(){return{type:"Node_Stmt_ClassConst",consts:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Interface=function(){return{type:"Node_Stmt_Interface",name:arguments[0],Extends:arguments[1].Extends,stmts:arguments[1].stmts,attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Throw=function(){return{type:"Node_Stmt_Throw",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Catch=function(){return{type:"Node_Stmt_Catch",Type:arguments[0],variable:arguments[1],stmts:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Stmt_TryCatch=function(){return{type:"Node_Stmt_TryCatch",stmts:arguments[0],catches:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Foreach=function(){return{type:"Node_Stmt_Foreach",expr:arguments[0],valueVar:arguments[1],keyVar:arguments[2].keyVar,byRef:arguments[2].byRef,stmts:arguments[2].stmts,attributes:arguments[3]}},r.Parser.prototype.Node_Stmt_While=function(){return{type:"Node_Stmt_While",cond:arguments[0],stmts:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Do=function(){return{type:"Node_Stmt_Do",cond:arguments[0],stmts:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Break=function(){return{type:"Node_Stmt_Break",num:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Continue=function(){return{type:"Node_Stmt_Continue",num:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Return=function(){return{type:"Node_Stmt_Return",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Case=function(){return{type:"Node_Stmt_Case",cond:arguments[0],stmts:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Switch=function(){return{type:"Node_Stmt_Switch",cond:arguments[0],cases:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Else=function(){return{type:"Node_Stmt_Else",stmts:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_ElseIf=function(){return{type:"Node_Stmt_ElseIf",cond:arguments[0],stmts:arguments[1],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_InlineHTML=function(){return{type:"Node_Stmt_InlineHTML",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_StaticVar=function(){return{type:"Node_Stmt_StaticVar",name:arguments[0],def:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Static=function(){return{type:"Node_Stmt_Static",vars:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Global=function(){return{type:"Node_Stmt_Global",vars:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_PropertyProperty=function(){return{type:"Node_Stmt_PropertyProperty",name:arguments[0],def:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Property=function(){return{type:"Node_Stmt_Property",Type:arguments[0],props:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Unset=function(){return{type:"Node_Stmt_Unset",variables:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Variable=function(e){return{type:"Node_Expr_Variable",name:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_FuncCall=function(){return{type:"Node_Expr_FuncCall",func:arguments[0],args:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_MethodCall=function(){return{type:"Node_Expr_MethodCall",variable:arguments[0],name:arguments[1],args:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Expr_StaticCall=function(){return{type:"Node_Expr_StaticCall",Class:arguments[0],func:arguments[1],args:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Expr_Ternary=function(){return{type:"Node_Expr_Ternary",cond:arguments[0],If:arguments[1],Else:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Expr_AssignList=function(){return{type:"Node_Expr_AssignList",assignList:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Assign=function(){return{type:"Node_Expr_Assign",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignConcat=function(){return{type:"Node_Expr_AssignConcat",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignMinus=function(){return{type:"Node_Expr_AssignMinus",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignPlus=function(){return{type:"Node_Expr_AssignPlus",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignDiv=function(){return{type:"Node_Expr_AssignDiv",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignRef=function(){return{type:"Node_Expr_AssignRef",variable:arguments[0],refVar:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignMul=function(){return{type:"Node_Expr_AssignMul",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignMod=function(){return{type:"Node_Expr_AssignMod",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Plus=function(){return{type:"Node_Expr_Plus",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Minus=function(){return{type:"Node_Expr_Minus",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Mul=function(){return{type:"Node_Expr_Mul",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Div=function(){return{type:"Node_Expr_Div",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Mod=function(){return{type:"Node_Expr_Mod",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Greater=function(){return{type:"Node_Expr_Greater",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Equal=function(){return{type:"Node_Expr_Equal",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_NotEqual=function(){return{type:"Node_Expr_NotEqual",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Identical=function(){return{type:"Node_Expr_Identical",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_NotIdentical=function(){return{type:"Node_Expr_NotIdentical",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_GreaterOrEqual=function(){return{type:"Node_Expr_GreaterOrEqual",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_SmallerOrEqual=function(){return{type:"Node_Expr_SmallerOrEqual",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Concat=function(){return{type:"Node_Expr_Concat",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Smaller=function(){return{type:"Node_Expr_Smaller",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_PostInc=function(){return{type:"Node_Expr_PostInc",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_PostDec=function(){return{type:"Node_Expr_PostDec",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_PreInc=function(){return{type:"Node_Expr_PreInc",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_PreDec=function(){return{type:"Node_Expr_PreDec",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Include=function(){return{expr:arguments[0],type:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_ArrayDimFetch=function(){return{type:"Node_Expr_ArrayDimFetch",variable:arguments[0],dim:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_StaticPropertyFetch=function(){return{type:"Node_Expr_StaticPropertyFetch",Class:arguments[0],name:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_ClassConstFetch=function(){return{type:"Node_Expr_ClassConstFetch",Class:arguments[0],name:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_StaticPropertyFetch=function(){return{type:"Node_Expr_StaticPropertyFetch",Class:arguments[0],name:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_ConstFetch=function(){return{type:"Node_Expr_ConstFetch",name:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_ArrayItem=function(){return{type:"Node_Expr_ArrayItem",value:arguments[0],key:arguments[1],byRef:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Expr_Array=function(){return{type:"Node_Expr_Array",items:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_PropertyFetch=function(){return{type:"Node_Expr_PropertyFetch",variable:arguments[0],name:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_New=function(){return{type:"Node_Expr_New",Class:arguments[0],args:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Print=function(){return{type:"Node_Expr_Print",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Exit=function(){return{type:"Node_Expr_Exit",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Bool=function(){return{type:"Node_Expr_Cast_Bool",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Int=function(){return{type:"Node_Expr_Cast_Int",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_String=function(){return{type:"Node_Expr_Cast_String",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Double=function(){return{type:"Node_Expr_Cast_Double",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Array=function(){return{type:"Node_Expr_Cast_Array",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Object=function(){return{type:"Node_Expr_Cast_Object",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_ErrorSuppress=function(){return{type:"Node_Expr_ErrorSuppress",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Isset=function(){return{type:"Node_Expr_Isset",variables:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_UnaryMinus=function(){return{type:"Node_Expr_UnaryMinus",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_UnaryPlus=function(){return{type:"Node_Expr_UnaryPlus",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Empty=function(){return{type:"Node_Expr_Empty",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_BooleanOr=function(){return{type:"Node_Expr_BooleanOr",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_LogicalOr=function(){return{type:"Node_Expr_LogicalOr",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_LogicalAnd=function(){return{type:"Node_Expr_LogicalAnd",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_LogicalXor=function(){return{type:"Node_Expr_LogicalXor",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_BitwiseAnd=function(){return{type:"Node_Expr_BitwiseAnd",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_BitwiseOr=function(){return{type:"Node_Expr_BitwiseOr",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_BitwiseNot=function(){return{type:"Node_Expr_BitwiseNot",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_BooleanNot=function(){return{type:"Node_Expr_BooleanNot",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_BooleanAnd=function(){return{type:"Node_Expr_BooleanAnd",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Instanceof=function(){return{type:"Node_Expr_Instanceof",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Clone=function(){return{type:"Node_Expr_Clone",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Scalar_LNumber_parse=function(e){return e},r.Parser.prototype.Scalar_DNumber_parse=function(e){return e},r.Parser.prototype.Scalar_String_parseDocString=function(){return'"'+arguments[1].replace(/([^"\\]*(?:\\.[^"\\]*)*)"/g,'$1\\"')+'"'},r.Parser.prototype.Node_Scalar_String=function(){return{type:"Node_Scalar_String",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Scalar_String_create=function(){return{type:"Node_Scalar_String",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Scalar_LNumber=function(){return{type:"Node_Scalar_LNumber",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Scalar_DNumber=function(){return{type:"Node_Scalar_DNumber",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Scalar_Encapsed=function(){return{type:"Node_Scalar_Encapsed",parts:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Name=function(){return{type:"Node_Name",parts:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Param=function(){return{type:"Node_Param",name:arguments[0],def:arguments[1],Type:arguments[2],byRef:arguments[3],attributes:arguments[4]}},r.Parser.prototype.Node_Arg=function(){return{type:"Node_Name",value:arguments[0],byRef:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Const=function(){return{type:"Node_Const",name:arguments[0],value:arguments[1],attributes:arguments[2]}},t.PHP=r})
4079^
4080
4081./lib/viewers/text/worker-php.js:1: WARNING - Suspicious code. The result of the 'eq' operator is not being used.
4082"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/php_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/php/php"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("./php/php").PHP,o=t.PhpWorker=function(e){i.call(this,e),this.setTimeout(500)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue(),t=[],n=s.Lexer(e,{short_open_tag:1});try{new s.Parser(n)}catch(r){t.push({row:r.line-1,column:null,text:r.message.charAt(0).toUpperCase()+r.message.substring(1),type:"error"})}t.length?this.sender.emit("error",t):this.sender.emit("ok")}}.call(o.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/php/php",["require","exports","module"],function(e,t,n){var r={Constants:{}};r.Constants.T_INCLUDE=262,r.Constants.T_INCLUDE_ONCE=261,r.Constants.T_EVAL=260,r.Constants.T_REQUIRE=259,r.Constants.T_REQUIRE_ONCE=258,r.Constants.T_LOGICAL_OR=263,r.Constants.T_LOGICAL_XOR=264,r.Constants.T_LOGICAL_AND=265,r.Constants.T_PRINT=266,r.Constants.T_PLUS_EQUAL=277,r.Constants.T_MINUS_EQUAL=276,r.Constants.T_MUL_EQUAL=275,r.Constants.T_DIV_EQUAL=274,r.Constants.T_CONCAT_EQUAL=273,r.Constants.T_MOD_EQUAL=272,r.Constants.T_AND_EQUAL=271,r.Constants.T_OR_EQUAL=270,r.Constants.T_XOR_EQUAL=269,r.Constants.T_SL_EQUAL=268,r.Constants.T_SR_EQUAL=267,r.Constants.T_BOOLEAN_OR=278,r.Constants.T_BOOLEAN_AND=279,r.Constants.T_IS_EQUAL=283,r.Constants.T_IS_NOT_EQUAL=282,r.Constants.T_IS_IDENTICAL=281,r.Constants.T_IS_NOT_IDENTICAL=280,r.Constants.T_IS_SMALLER_OR_EQUAL=285,r.Constants.T_IS_GREATER_OR_EQUAL=284,r.Constants.T_SL=287,r.Constants.T_SR=286,r.Constants.T_INSTANCEOF=288,r.Constants.T_INC=297,r.Constants.T_DEC=296,r.Constants.T_INT_CAST=295,r.Constants.T_DOUBLE_CAST=294,r.Constants.T_STRING_CAST=293,r.Constants.T_ARRAY_CAST=292,r.Constants.T_OBJECT_CAST=291,r.Constants.T_BOOL_CAST=290,r.Constants.T_UNSET_CAST=289,r.Constants.T_NEW=299,r.Constants.T_CLONE=298,r.Constants.T_EXIT=300,r.Constants.T_IF=301,r.Constants.T_ELSEIF=302,r.Constants.T_ELSE=303,r.Constants.T_ENDIF=304,r.Constants.T_LNUMBER=305,r.Constants.T_DNUMBER=306,r.Constants.T_STRING=307,r.Constants.T_STRING_VARNAME=308,r.Constants.T_VARIABLE=309,r.Constants.T_NUM_STRING=310,r.Constants.T_INLINE_HTML=311,r.Constants.T_CHARACTER=312,r.Constants.T_BAD_CHARACTER=313,r.Constants.T_ENCAPSED_AND_WHITESPACE=314,r.Constants.T_CONSTANT_ENCAPSED_STRING=315,r.Constants.T_ECHO=316,r.Constants.T_DO=317,r.Constants.T_WHILE=318,r.Constants.T_ENDWHILE=319,r.Constants.T_FOR=320,r.Constants.T_ENDFOR=321,r.Constants.T_FOREACH=322,r.Constants.T_ENDFOREACH=323,r.Constants.T_DECLARE=324,r.Constants.T_ENDDECLARE=325,r.Constants.T_AS=326,r.Constants.T_SWITCH=327,r.Constants.T_ENDSWITCH=328,r.Constants.T_CASE=329,r.Constants.T_DEFAULT=330,r.Constants.T_BREAK=331,r.Constants.T_CONTINUE=332,r.Constants.T_GOTO=333,r.Constants.T_FUNCTION=334,r.Constants.T_CONST=335,r.Constants.T_RETURN=336,r.Constants.T_TRY=337,r.Constants.T_CATCH=338,r.Constants.T_THROW=339,r.Constants.T_USE=340,r.Constants.T_GLOBAL=341,r.Constants.T_STATIC=347,r.Constants.T_ABSTRACT=346,r.Constants.T_FINAL=345,r.Constants.T_PRIVATE=344,r.Constants.T_PROTECTED=343,r.Constants.T_PUBLIC=342,r.Constants.T_VAR=348,r.Constants.T_UNSET=349,r.Constants.T_ISSET=350,r.Constants.T_EMPTY=351,r.Constants.T_HALT_COMPILER=352,r.Constants.T_CLASS=353,r.Constants.T_INTERFACE=354,r.Constants.T_EXTENDS=355,r.Constants.T_IMPLEMENTS=356,r.Constants.T_OBJECT_OPERATOR=357,r.Constants.T_DOUBLE_ARROW=358,r.Constants.T_LIST=359,r.Constants.T_ARRAY=360,r.Constants.T_CLASS_C=361,r.Constants.T_TRAIT_C=381,r.Constants.T_METHOD_C=362,r.Constants.T_FUNC_C=363,r.Constants.T_LINE=364,r.Constants.T_FILE=365,r.Constants.T_COMMENT=366,r.Constants.T_DOC_COMMENT=367,r.Constants.T_OPEN_TAG=368,r.Constants.T_OPEN_TAG_WITH_ECHO=369,r.Constants.T_CLOSE_TAG=370,r.Constants.T_WHITESPACE=371,r.Constants.T_START_HEREDOC=372,r.Constants.T_END_HEREDOC=373,r.Constants.T_DOLLAR_OPEN_CURLY_BRACES=374,r.Constants.T_CURLY_OPEN=375,r.Constants.T_PAAMAYIM_NEKUDOTAYIM=376,r.Constants.T_DOUBLE_COLON=376,r.Constants.T_NAMESPACE=377,r.Constants.T_NS_C=378,r.Constants.T_DIR=379,r.Constants.T_NS_SEPARATOR=380,r.Lexer=function(e,t){var n,i=function(e){if(e.match(/\n/)!==null){var t=e.substring(0,1);e="["+e.split(/\n/).join(t+","+t)+'].join("\\n")'}return e},s,o=t===undefined||/^(on|true|1)$/i.test(t.short_open_tag)?/(\<\?php\s|\<\?|\<\%|\<script language\=('|")?php('|")?\>)/i:/(\<\?php\s|<\?=|\<script language\=('|")?php('|")?\>)/i,u=t===undefined||/^(on|true|1)$/i.test(t.short_open_tag)?/^(\<\?php\s|\<\?|\<\%|\<script language\=('|")?php('|")?\>)/i:/^(\<\?php\s|<\?=|\<script language\=('|")?php('|")?\>)/i,a=[{value:r.Constants.T_USE,re:/^use(?=\s)/i},{value:r.Constants.T_ABSTRACT,re:/^abstract(?=\s)/i},{value:r.Constants.T_IMPLEMENTS,re:/^implements(?=\s)/i},{value:r.Constants.T_INTERFACE,re:/^interface(?=\s)/i},{value:r.Constants.T_CONST,re:/^const(?=\s)/i},{value:r.Constants.T_STATIC,re:/^static(?=\s)/i},{value:r.Constants.T_FINAL,re:/^final(?=\s)/i},{value:r.Constants.T_VAR,re:/^var(?=\s)/i},{value:r.Constants.T_GLOBAL,re:/^global(?=\s)/i},{value:r.Constants.T_CLONE,re:/^clone(?=\s)/i},{value:r.Constants.T_THROW,re:/^throw(?=\s)/i},{value:r.Constants.T_EXTENDS,re:/^extends(?=\s)/i},{value:r.Constants.T_AND_EQUAL,re:/^&=/},{value:r.Constants.T_AS,re:/^as(?=\s)/i},{value:r.Constants.T_ARRAY_CAST,re:/^\(array\)/i},{value:r.Constants.T_BOOL_CAST,re:/^\((bool|boolean)\)/i},{value:r.Constants.T_DOUBLE_CAST,re:/^\((real|float|double)\)/i},{value:r.Constants.T_INT_CAST,re:/^\((int|integer)\)/i},{value:r.Constants.T_OBJECT_CAST,re:/^\(object\)/i},{value:r.Constants.T_STRING_CAST,re:/^\(string\)/i},{value:r.Constants.T_UNSET_CAST,re:/^\(unset\)/i},{value:r.Constants.T_TRY,re:/^try(?=\s*{)/i},{value:r.Constants.T_CATCH,re:/^catch(?=\s*\()/i},{value:r.Constants.T_INSTANCEOF,re:/^instanceof(?=\s)/i},{value:r.Constants.T_LOGICAL_OR,re:/^or(?=\s)/i},{value:r.Constants.T_LOGICAL_AND,re:/^and(?=\s)/i},{value:r.Constants.T_LOGICAL_XOR,re:/^xor(?=\s)/i},{value:r.Constants.T_BOOLEAN_AND,re:/^&&/},{value:r.Constants.T_BOOLEAN_OR,re:/^\|\|/},{value:r.Constants.T_CONTINUE,re:/^continue(?=\s|;)/i},{value:r.Constants.T_BREAK,re:/^break(?=\s|;)/i},{value:r.Constants.T_ENDDECLARE,re:/^enddeclare(?=\s|;)/i},{value:r.Constants.T_ENDFOR,re:/^endfor(?=\s|;)/i},{value:r.Constants.T_ENDFOREACH,re:/^endforeach(?=\s|;)/i},{value:r.Constants.T_ENDIF,re:/^endif(?=\s|;)/i},{value:r.Constants.T_ENDSWITCH,re:/^endswitch(?=\s|;)/i},{value:r.Constants.T_ENDWHILE,re:/^endwhile(?=\s|;)/i},{value:r.Constants.T_CASE,re:/^case(?=\s)/i},{value:r.Constants.T_DEFAULT,re:/^default(?=\s|:)/i},{value:r.Constants.T_SWITCH,re:/^switch(?=[ (])/i},{value:r.Constants.T_EXIT,re:/^(exit|die)(?=[ \(;])/i},{value:r.Constants.T_CLOSE_TAG,re:/^(\?\>|\%\>|\<\/script\>)\s?\s?/i,func:function(e){return c=!1,e}},{value:r.Constants.T_DOUBLE_ARROW,re:/^\=\>/},{value:r.Constants.T_DOUBLE_COLON,re:/^\:\:/},{value:r.Constants.T_METHOD_C,re:/^__METHOD__/},{value:r.Constants.T_LINE,re:/^__LINE__/},{value:r.Constants.T_FILE,re:/^__FILE__/},{value:r.Constants.T_FUNC_C,re:/^__FUNCTION__/},{value:r.Constants.T_NS_C,re:/^__NAMESPACE__/},{value:r.Constants.T_TRAIT_C,re:/^__TRAIT__/},{value:r.Constants.T_DIR,re:/^__DIR__/},{value:r.Constants.T_CLASS_C,re:/^__CLASS__/},{value:r.Constants.T_INC,re:/^\+\+/},{value:r.Constants.T_DEC,re:/^\-\-/},{value:r.Constants.T_CONCAT_EQUAL,re:/^\.\=/},{value:r.Constants.T_DIV_EQUAL,re:/^\/\=/},{value:r.Constants.T_XOR_EQUAL,re:/^\^\=/},{value:r.Constants.T_MUL_EQUAL,re:/^\*\=/},{value:r.Constants.T_MOD_EQUAL,re:/^\%\=/},{value:r.Constants.T_SL_EQUAL,re:/^<<=/},{value:r.Constants.T_START_HEREDOC,re:/^<<<[A-Z_0-9]+\s/i,func:function(e){return n=e.substring(3,e.length-1),e}},{value:r.Constants.T_SL,re:/^<</},{value:r.Constants.T_IS_SMALLER_OR_EQUAL,re:/^<=/},{value:r.Constants.T_SR_EQUAL,re:/^>>=/},{value:r.Constants.T_SR,re:/^>>/},{value:r.Constants.T_IS_GREATER_OR_EQUAL,re:/^>=/},{value:r.Constants.T_OR_EQUAL,re:/^\|\=/},{value:r.Constants.T_PLUS_EQUAL,re:/^\+\=/},{value:r.Constants.T_MINUS_EQUAL,re:/^-\=/},{value:r.Constants.T_OBJECT_OPERATOR,re:/^\-\>/i},{value:r.Constants.T_CLASS,re:/^class(?=[\s\{])/i,afterWhitespace:!0},{value:r.Constants.T_PUBLIC,re:/^public(?=[\s])/i},{value:r.Constants.T_PRIVATE,re:/^private(?=[\s])/i},{value:r.Constants.T_PROTECTED,re:/^protected(?=[\s])/i},{value:r.Constants.T_ARRAY,re:/^array(?=\s*?\()/i},{value:r.Constants.T_EMPTY,re:/^empty(?=[ \(])/i},{value:r.Constants.T_ISSET,re:/^isset(?=[ \(])/i},{value:r.Constants.T_UNSET,re:/^unset(?=[ \(])/i},{value:r.Constants.T_RETURN,re:/^return(?=[ "'(;])/i},{value:r.Constants.T_FUNCTION,re:/^function(?=[ "'(;])/i},{value:r.Constants.T_ECHO,re:/^echo(?=[ "'(;])/i},{value:r.Constants.T_LIST,re:/^list(?=\s*?\()/i},{value:r.Constants.T_PRINT,re:/^print(?=[ "'(;])/i},{value:r.Constants.T_INCLUDE,re:/^include(?=[ "'(;])/i},{value:r.Constants.T_INCLUDE_ONCE,re:/^include_once(?=[ "'(;])/i},{value:r.Constants.T_REQUIRE,re:/^require(?=[ "'(;])/i},{value:r.Constants.T_REQUIRE_ONCE,re:/^require_once(?=[ "'(;])/i},{value:r.Constants.T_NEW,re:/^new(?=[ ])/i},{value:r.Constants.T_COMMENT,re:/^\/\*([\S\s]*?)(?:\*\/|$)/},{value:r.Constants.T_COMMENT,re:/^\/\/.*(\s)?/},{value:r.Constants.T_COMMENT,re:/^\#.*(\s)?/},{value:r.Constants.T_ELSEIF,re:/^elseif(?=[\s(])/i},{value:r.Constants.T_GOTO,re:/^goto(?=[\s(])/i},{value:r.Constants.T_ELSE,re:/^else(?=[\s{:])/i},{value:r.Constants.T_IF,re:/^if(?=[\s(])/i},{value:r.Constants.T_DO,re:/^do(?=[ {])/i},{value:r.Constants.T_WHILE,re:/^while(?=[ (])/i},{value:r.Constants.T_FOREACH,re:/^foreach(?=[ (])/i},{value:r.Constants.T_ISSET,re:/^isset(?=[ (])/i},{value:r.Constants.T_IS_IDENTICAL,re:/^===/},{value:r.Constants.T_IS_EQUAL,re:/^==/},{value:r.Constants.T_IS_NOT_IDENTICAL,re:/^\!==/},{value:r.Constants.T_IS_NOT_EQUAL,re:/^(\!=|\<\>)/},{value:r.Constants.T_FOR,re:/^for(?=[ (])/i},{value:r.Constants.T_DNUMBER,re:/^[0-9]*\.[0-9]+([eE][-]?[0-9]*)?/},{value:r.Constants.T_LNUMBER,re:/^(0x[0-9A-F]+|[0-9]+)/i},{value:r.Constants.T_OPEN_TAG_WITH_ECHO,re:/^(\<\?=|\<\%=)/i},{value:r.Constants.T_OPEN_TAG,re:u},{value:r.Constants.T_VARIABLE,re:/^\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{value:r.Constants.T_WHITESPACE,re:/^\s+/},{value:r.Constants.T_CONSTANT_ENCAPSED_STRING,re:/^("(?:[^"\\]|\\[\s\S])*"|'(?:[^'\\]|\\[\s\S])*')/,func:function(e,t){var n=0,i,s=0;if(e.substring(0,1)==="'")return e;var o=e.match(/(?:[^\\]|\\.)*[^\\]\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/g);if(o!==null){while(e.length>0){i=e.length,o=e.match(/^[\[\]\;\:\?\(\)\!\.\,\>\<\=\+\-\/\*\|\&\@\^\%\"\'\{\}]/),o!==null&&(f.push(o[0]),e=e.substring(1),n>0&&o[0]==="}"&&n--,o[0]==="["&&s++,o[0]==="]"&&s--),o=e.match(/^\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/);if(o!==null){f.push([parseInt(r.Constants.T_VARIABLE,10),o[0],l]),e=e.substring(o[0].length),o=e.match(/^(\-\>)([a-zA-Z0-9_\x7f-\xff]*)/),o!==null&&(f.push([parseInt(r.Constants.T_OBJECT_OPERATOR,10),o[1],l]),f.push([parseInt(r.Constants.T_STRING,10),o[2],l]),e=e.substring(o[0].length));if(e.match(/^\[/g)!==null)continue}var u;n>0?u=/^([^\\\$"{}\]]|\\.)+/g:u=/^([^\\\$"{]|\\.|{[^\$])+/g;while((o=e.match(u))!==null){if(e.length===1)throw new Error(o);f.push([parseInt(n>0?r.Constants.T_CONSTANT_ENCAPSED_STRING:r.Constants.T_ENCAPSED_AND_WHITESPACE,10),o[0],l]),l+=o[0].split("\n").length-1,e=e.substring(o[0].length)}e.match(/^{\$/)!==null&&(f.push([parseInt(r.Constants.T_CURLY_OPEN,10),"{",l]),e=e.substring(1),n++);if(i===e.length&&(o=e.match(/^(([^\\]|\\.)*?[^\\]\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)/g))!==null)return}return undefined}return e}},{value:r.Constants.T_STRING,re:/^[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{value:-1,re:/^[\[\]\;\:\?\(\)\!\.\,\>\<\=\+\-\/\*\|\&\{\}\@\^\%\"\'\$\~]/}],f=[],l=1,c=!1,h=!0;if(e===null)return f;typeof e!="string"&&(e=e.toString());while(e.length>0&&h===!0)if(c===!0)if(n!==undefined){var p=new RegExp("([\\S\\s]*)(\\r\\n|\\n|\\r)("+n+")(;|\\r\\n|\\n)","i"),d=e.match(p);d!==null&&(f.push([parseInt(r.Constants.T_ENCAPSED_AND_WHITESPACE,10),d[1].replace(/^\n/g,"").replace(/\\\$/g,"$")+"\n",l]),l+=d[1].split("\n").length,f.push([parseInt(r.Constants.T_END_HEREDOC,10),d[3],l]),e=e.substring(d[1].length+d[2].length+d[3].length),n=undefined);if(d===null)throw Error("sup")}else h=a.some(function(t){if(t.afterWhitespace===!0){var n=f[f.length-1];if(!Array.isArray(n)||n[0]!==r.Constants.T_WHITESPACE&&n[0]!==r.Constants.T_OPEN_TAG&&n[0]!==r.Constants.T_COMMENT)return!1}var i=e.match(t.re);if(i!==null){if(t.value!==-1){var s=i[0];t.func!==undefined&&(s=t.func(s,t)),s!==undefined&&(f.push([parseInt(t.value,10),s,l]),l+=s.split("\n").length-1)}else f.push(i[0]);return e=e.substring(i[0].length),!0}return!1});else{var d=o.exec(e);if(d===null)return f.push([parseInt(r.Constants.T_INLINE_HTML,10),e.replace(/^\n/,""),l]),f;if(d.index>0){var v=e.substring(0,d.index);f.push([parseInt(r.Constants.T_INLINE_HTML,10),v,l]),l+=v.split("\n").length-1,e=e.substring(d.index)}c=!0}return f},r.Parser=function(e,t){var n=this.yybase,i=this.yydefault,s=this.yycheck,o=this.yyaction,u=this.yylen,a=this.yygbase,f=this.yygcheck,l=this.yyp,c=this.yygoto,h=this.yylhs,p=this.terminals,d=this.translate,v=this.yygdefault;this.pos=-1,this.line=1,this.tokenMap=this.createTokenMap(),this.dropTokens={},this.dropTokens[r.Constants.T_WHITESPACE]=1,this.dropTokens[r.Constants.T_OPEN_TAG]=1;var m=[];e.forEach(function(e,t){typeof e=="object"&&e[0]===r.Constants.T_OPEN_TAG_WITH_ECHO?(m.push([r.Constants.T_OPEN_TAG,e[1],e[2]]),m.push([r.Constants.T_ECHO,e[1],e[2]])):m.push(e)}),this.tokens=m;var g=this.TOKEN_NONE;this.startAttributes={startLine:1},this.endAttributes={};var y=[this.startAttributes],b=0,w=[b];this.yyastk=[],this.stackPos=0;var E,S;for(;;){if(n[b]===0)E=i[b];else{g===this.TOKEN_NONE&&(S=this.getNextToken(),g=S>=0&&S<this.TOKEN_MAP_SIZE?d[S]:this.TOKEN_INVALID,y[this.stackPos]=this.startAttributes);if(((E=n[b]+g)>=0&&E<this.YYLAST&&s[E]===g||b<this.YY2TBLSTATE&&(E=n[b+this.YYNLSTATES]+g)>=0&&E<this.YYLAST&&s[E]===g)&&(E=o[E])!==this.YYDEFAULT)if(E>0){++this.stackPos,w[this.stackPos]=b=E,this.yyastk[this.stackPos]=this.tokenValue,y[this.stackPos]=this.startAttributes,g=this.TOKEN_NONE;if(E<this.YYNLSTATES)continue;E-=this.YYNLSTATES}else E=-E;else E=i[b]}for(;;){if(E===0)return this.yyval;if(E===this.YYUNEXPECTED){if(t!==!0){var x=[];for(var T=0;T<this.TOKEN_MAP_SIZE;++T)if((E=n[b]+T)>=0&&E<this.YYLAST&&s[E]==T||b<this.YY2TBLSTATE&&(E=n[b+this.YYNLSTATES]+T)&&E<this.YYLAST&&s[E]==T)if(o[E]!=this.YYUNEXPECTED){if(x.length==4){x=[];break}x.push(this.terminals[T])}var N="";throw x.length&&(N=", expecting "+x.join(" or ")),new r.ParseError("syntax error, unexpected "+p[g]+N,this.startAttributes.startLine)}return this.startAttributes.startLine}for(var C in this.endAttributes)y[this.stackPos-u[E]][C]=this.endAttributes[C];try{this["yyn"+E](y[this.stackPos-u[E]])}catch(k){throw k}this.stackPos-=u[E],E=h[E],(l=a[E]+w[this.stackPos])>=0&&l<this.YYGLAST&&f[l]===E?b=c[l]:b=v[E],++this.stackPos,w[this.stackPos]=b,this.yyastk[this.stackPos]=this.yyval,y[this.stackPos]=this.startAttributes;if(b<this.YYNLSTATES)break;E=b-this.YYNLSTATES}}},r.ParseError=function(e,t){this.message=e,this.line=t},r.Parser.prototype.MODIFIER_PUBLIC=1,r.Parser.prototype.MODIFIER_PROTECTED=2,r.Parser.prototype.MODIFIER_PRIVATE=4,r.Parser.prototype.MODIFIER_STATIC=8,r.Parser.prototype.MODIFIER_ABSTRACT=16,r.Parser.prototype.MODIFIER_FINAL=32,r.Parser.prototype.getNextToken=function(){this.startAttributes={},this.endAttributes={};var e,t;while(this.tokens[++this.pos]!==undefined){e=this.tokens[this.pos];if(typeof e=="string")return this.startAttributes.startLine=this.line,this.endAttributes.endLine=this.line,this.tokenValue=e,e.charCodeAt(0);this.line+=(t=e[1].match(/\n/g))===null?0:t.length;if(r.Constants.T_COMMENT===e[0])Array.isArray(this.startAttributes.comments)||(this.startAttributes.comments=[]),this.startAttributes.comments.push({type:"comment",comment:e[1],line:e[2]});else if(r.Constants.T_DOC_COMMENT===e[0])this.startAttributes.comments.push(new PHPParser_Comment_Doc(e[1],e[2]));else if(this.dropTokens[e[0]]===undefined)return this.tokenValue=e[1],this.startAttributes.startLine=e[2],this.endAttributes.endLine=this.line,this.tokenMap[e[0]]}return this.startAttributes.startLine=this.line,0},r.Parser.prototype.tokenName=function(e){var t=["T_INCLUDE","T_INCLUDE_ONCE","T_EVAL","T_REQUIRE","T_REQUIRE_ONCE","T_LOGICAL_OR","T_LOGICAL_XOR","T_LOGICAL_AND","T_PRINT","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_BOOLEAN_OR","T_BOOLEAN_AND","T_IS_EQUAL","T_IS_NOT_EQUAL","T_IS_IDENTICAL","T_IS_NOT_IDENTICAL","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_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_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_DOUBLE_COLON","T_NAMESPACE","T_NS_C","T_DIR","T_NS_SEPARATOR"],n="UNKNOWN";return t.some(function(t){return r.Constants[t]===e?(n=t,!0):!1}),n},r.Parser.prototype.createTokenMap=function(){var e={},t,n,i=r.Constants.T_PAAMAYIM_NEKUDOTAYIM;for(n=256;n<1e3;++n)i===n?e[n]=this.T_PAAMAYIM_NEKUDOTAYIM:r.Constants.T_OPEN_TAG_WITH_ECHO===n?e[n]=r.Constants.T_ECHO:r.Constants.T_CLOSE_TAG===n?e[n]=59:"UNKNOWN"!==(t=this.tokenName(n))&&(e[n]=this[t]);return e},r.Parser.prototype.TOKEN_NONE=-1,r.Parser.prototype.TOKEN_INVALID=149,r.Parser.prototype.TOKEN_MAP_SIZE=384,r.Parser.prototype.YYLAST=913,r.Parser.prototype.YY2TBLSTATE=328,r.Parser.prototype.YYGLAST=415,r.Parser.prototype.YYNLSTATES=544,r.Parser.prototype.YYUNEXPECTED=32767,r.Parser.prototype.YYDEFAULT=-32766,r.Parser.prototype.YYERRTOK=256,r.Parser.prototype.T_INCLUDE=257,r.Parser.prototype.T_INCLUDE_ONCE=258,r.Parser.prototype.T_EVAL=259,r.Parser.prototype.T_REQUIRE=260,r.Parser.prototype.T_REQUIRE_ONCE=261,r.Parser.prototype.T_LOGICAL_OR=262,r.Parser.prototype.T_LOGICAL_XOR=263,r.Parser.prototype.T_LOGICAL_AND=264,r.Parser.prototype.T_PRINT=265,r.Parser.prototype.T_PLUS_EQUAL=266,r.Parser.prototype.T_MINUS_EQUAL=267,r.Parser.prototype.T_MUL_EQUAL=268,r.Parser.prototype.T_DIV_EQUAL=269,r.Parser.prototype.T_CONCAT_EQUAL=270,r.Parser.prototype.T_MOD_EQUAL=271,r.Parser.prototype.T_AND_EQUAL=272,r.Parser.prototype.T_OR_EQUAL=273,r.Parser.prototype.T_XOR_EQUAL=274,r.Parser.prototype.T_SL_EQUAL=275,r.Parser.prototype.T_SR_EQUAL=276,r.Parser.prototype.T_BOOLEAN_OR=277,r.Parser.prototype.T_BOOLEAN_AND=278,r.Parser.prototype.T_IS_EQUAL=279,r.Parser.prototype.T_IS_NOT_EQUAL=280,r.Parser.prototype.T_IS_IDENTICAL=281,r.Parser.prototype.T_IS_NOT_IDENTICAL=282,r.Parser.prototype.T_IS_SMALLER_OR_EQUAL=283,r.Parser.prototype.T_IS_GREATER_OR_EQUAL=284,r.Parser.prototype.T_SL=285,r.Parser.prototype.T_SR=286,r.Parser.prototype.T_INSTANCEOF=287,r.Parser.prototype.T_INC=288,r.Parser.prototype.T_DEC=289,r.Parser.prototype.T_INT_CAST=290,r.Parser.prototype.T_DOUBLE_CAST=291,r.Parser.prototype.T_STRING_CAST=292,r.Parser.prototype.T_ARRAY_CAST=293,r.Parser.prototype.T_OBJECT_CAST=294,r.Parser.prototype.T_BOOL_CAST=295,r.Parser.prototype.T_UNSET_CAST=296,r.Parser.prototype.T_NEW=297,r.Parser.prototype.T_CLONE=298,r.Parser.prototype.T_EXIT=299,r.Parser.prototype.T_IF=300,r.Parser.prototype.T_ELSEIF=301,r.Parser.prototype.T_ELSE=302,r.Parser.prototype.T_ENDIF=303,r.Parser.prototype.T_LNUMBER=304,r.Parser.prototype.T_DNUMBER=305,r.Parser.prototype.T_STRING=306,r.Parser.prototype.T_STRING_VARNAME=307,r.Parser.prototype.T_VARIABLE=308,r.Parser.prototype.T_NUM_STRING=309,r.Parser.prototype.T_INLINE_HTML=310,r.Parser.prototype.T_CHARACTER=311,r.Parser.prototype.T_BAD_CHARACTER=312,r.Parser.prototype.T_ENCAPSED_AND_WHITESPACE=313,r.Parser.prototype.T_CONSTANT_ENCAPSED_STRING=314,r.Parser.prototype.T_ECHO=315,r.Parser.prototype.T_DO=316,r.Parser.prototype.T_WHILE=317,r.Parser.prototype.T_ENDWHILE=318,r.Parser.prototype.T_FOR=319,r.Parser.prototype.T_ENDFOR=320,r.Parser.prototype.T_FOREACH=321,r.Parser.prototype.T_ENDFOREACH=322,r.Parser.prototype.T_DECLARE=323,r.Parser.prototype.T_ENDDECLARE=324,r.Parser.prototype.T_AS=325,r.Parser.prototype.T_SWITCH=326,r.Parser.prototype.T_ENDSWITCH=327,r.Parser.prototype.T_CASE=328,r.Parser.prototype.T_DEFAULT=329,r.Parser.prototype.T_BREAK=330,r.Parser.prototype.T_CONTINUE=331,r.Parser.prototype.T_GOTO=332,r.Parser.prototype.T_FUNCTION=333,r.Parser.prototype.T_CONST=334,r.Parser.prototype.T_RETURN=335,r.Parser.prototype.T_TRY=336,r.Parser.prototype.T_CATCH=337,r.Parser.prototype.T_THROW=338,r.Parser.prototype.T_USE=339,r.Parser.prototype.T_INSTEADOF=340,r.Parser.prototype.T_GLOBAL=341,r.Parser.prototype.T_STATIC=342,r.Parser.prototype.T_ABSTRACT=343,r.Parser.prototype.T_FINAL=344,r.Parser.prototype.T_PRIVATE=345,r.Parser.prototype.T_PROTECTED=346,r.Parser.prototype.T_PUBLIC=347,r.Parser.prototype.T_VAR=348,r.Parser.prototype.T_UNSET=349,r.Parser.prototype.T_ISSET=350,r.Parser.prototype.T_EMPTY=351,r.Parser.prototype.T_HALT_COMPILER=352,r.Parser.prototype.T_CLASS=353,r.Parser.prototype.T_TRAIT=354,r.Parser.prototype.T_INTERFACE=355,r.Parser.prototype.T_EXTENDS=356,r.Parser.prototype.T_IMPLEMENTS=357,r.Parser.prototype.T_OBJECT_OPERATOR=358,r.Parser.prototype.T_DOUBLE_ARROW=359,r.Parser.prototype.T_LIST=360,r.Parser.prototype.T_ARRAY=361,r.Parser.prototype.T_CALLABLE=362,r.Parser.prototype.T_CLASS_C=363,r.Parser.prototype.T_TRAIT_C=364,r.Parser.prototype.T_METHOD_C=365,r.Parser.prototype.T_FUNC_C=366,r.Parser.prototype.T_LINE=367,r.Parser.prototype.T_FILE=368,r.Parser.prototype.T_COMMENT=369,r.Parser.prototype.T_DOC_COMMENT=370,r.Parser.prototype.T_OPEN_TAG=371,r.Parser.prototype.T_OPEN_TAG_WITH_ECHO=372,r.Parser.prototype.T_CLOSE_TAG=373,r.Parser.prototype.T_WHITESPACE=374,r.Parser.prototype.T_START_HEREDOC=375,r.Parser.prototype.T_END_HEREDOC=376,r.Parser.prototype.T_DOLLAR_OPEN_CURLY_BRACES=377,r.Parser.prototype.T_CURLY_OPEN=378,r.Parser.prototype.T_PAAMAYIM_NEKUDOTAYIM=379,r.Parser.prototype.T_NAMESPACE=380,r.Parser.prototype.T_NS_C=381,r.Parser.prototype.T_DIR=382,r.Parser.prototype.T_NS_SEPARATOR=383,r.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_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_BOOLEAN_OR","T_BOOLEAN_AND","'|'","'^'","'&'","T_IS_EQUAL","T_IS_NOT_EQUAL","T_IS_IDENTICAL","T_IS_NOT_IDENTICAL","'<'","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_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_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_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","';'","'{'","'}'","'('","')'","'$'","']'","'`'","'\"'","???"],r.Parser.prototype.translate=[0,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,47,148,149,145,46,30,149,143,144,44,41,7,42,43,45,149,149,149,149,149,149,149,149,149,149,25,140,35,12,37,24,59,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,60,149,146,29,149,147,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,141,28,142,49,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,1,2,3,4,5,6,8,9,10,11,13,14,15,16,17,18,19,20,21,22,23,26,27,31,32,33,34,36,38,39,40,48,50,51,52,53,54,55,56,57,58,61,62,63,64,65,66,67,68,69,70,71,72,73,74,149,149,75,76,77,78,79,80,81,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,149,149,149,149,149,149,131,132,133,134,135,136,137,138,139],r.Parser.prototype.yyaction=[61,62,363,63,64,-32766,-32766,-32766,509,65,708,709,710,707,706,705,-32766,-32766,-32766,-32766,-32766,-32766,132,-32766,-32766,-32766,-32766,-32766,-32767,-32767,-32767,-32767,-32766,335,-32766,-32766,-32766,-32766,-32766,66,67,351,663,664,40,68,548,69,232,233,70,71,72,73,74,75,76,77,30,246,78,336,364,-112,0,469,833,834,365,641,890,436,590,41,835,53,27,366,294,367,687,368,921,369,923,922,370,-32766,-32766,-32766,42,43,371,339,126,44,372,337,79,297,349,292,293,-32766,918,-32766,-32766,373,374,375,376,377,391,199,361,338,573,613,378,379,380,381,845,839,840,841,842,836,837,253,-32766,87,88,89,391,843,838,338,597,519,128,80,129,273,332,257,261,47,673,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,799,247,884,108,109,110,226,247,21,-32766,310,-32766,-32766,-32766,642,548,-32766,-32766,-32766,-32766,56,353,-32766,-32766,-32766,55,-32766,-32766,-32766,-32766,-32766,58,-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766,-32766,557,-32766,-32766,518,-32766,548,890,-32766,390,-32766,228,252,-32766,-32766,-32766,-32766,-32766,275,-32766,234,-32766,587,588,-32766,-32766,-32766,-32766,-32766,-32766,-32766,46,236,-32766,-32766,281,-32766,682,348,-32766,390,-32766,346,333,521,-32766,-32766,-32766,271,911,262,237,446,911,-32766,894,59,700,358,135,548,123,538,35,-32766,333,122,-32766,-32766,-32766,271,-32766,124,-32766,692,-32766,-32766,-32766,-32766,700,273,22,-32766,-32766,-32766,-32766,239,-32766,-32766,612,-32766,548,134,-32766,390,-32766,462,354,-32766,-32766,-32766,-32766,-32766,227,-32766,238,-32766,845,542,-32766,856,611,200,-32766,-32766,-32766,259,280,-32766,-32766,201,-32766,855,129,-32766,390,130,202,333,206,-32766,-32766,-32766,271,-32766,-32766,-32766,125,601,-32766,136,299,700,489,28,548,105,106,107,-32766,498,499,-32766,-32766,-32766,207,-32766,133,-32766,525,-32766,-32766,-32766,-32766,663,664,527,-32766,-32766,-32766,-32766,528,-32766,-32766,610,-32766,548,427,-32766,390,-32766,532,539,-32766,-32766,-32766,-32766,-32766,240,-32766,247,-32766,697,543,-32766,554,523,608,-32766,-32766,-32766,686,535,-32766,-32766,54,-32766,57,60,-32766,390,246,-155,278,345,-32766,-32766,-32766,506,347,-152,471,402,403,-32766,405,404,272,493,416,548,318,417,505,-32766,517,548,-32766,-32766,-32766,549,-32766,562,-32766,916,-32766,-32766,-32766,-32766,564,826,848,-32766,-32766,-32766,-32766,694,-32766,-32766,485,-32766,548,487,-32766,390,-32766,504,802,-32766,-32766,-32766,-32766,-32766,279,-32766,911,-32766,502,492,-32766,413,483,269,-32766,-32766,-32766,243,337,-32766,-32766,418,-32766,454,229,-32766,390,274,373,374,344,-32766,-32766,-32766,360,614,-32766,573,613,378,379,-274,548,615,-332,844,-32766,258,51,-32766,-32766,-32766,270,-32766,346,-32766,52,-32766,260,0,-32766,-333,-32766,-32766,-32766,-32766,-32766,-32766,205,-32766,-32766,49,-32766,548,424,-32766,390,-32766,-266,264,-32766,-32766,-32766,-32766,-32766,409,-32766,343,-32766,265,312,-32766,470,513,-275,-32766,-32766,-32766,920,337,-32766,-32766,530,-32766,531,600,-32766,390,592,373,374,578,581,-32766,-32766,644,629,-32766,573,613,378,379,635,548,636,576,627,-32766,625,693,-32766,-32766,-32766,691,-32766,591,-32766,582,-32766,203,204,-32766,584,583,-32766,-32766,-32766,-32766,586,599,-32766,-32766,589,-32766,690,558,-32766,390,197,683,919,86,520,522,-32766,524,833,834,529,533,-32766,534,537,541,835,48,111,112,113,114,115,116,117,118,119,120,121,127,31,633,337,330,634,585,-32766,32,291,337,330,478,373,374,917,291,891,889,875,373,374,553,613,378,379,737,739,887,553,613,378,379,824,451,675,839,840,841,842,836,837,320,895,277,885,23,33,843,838,556,277,337,330,-32766,34,-32766,555,291,36,37,38,373,374,39,45,50,81,82,83,84,553,613,378,379,-32767,-32767,-32767,-32767,103,104,105,106,107,337,85,131,137,337,138,198,224,225,277,373,374,-332,230,373,374,24,337,231,573,613,378,379,573,613,378,379,373,374,235,248,249,250,337,251,0,573,613,378,379,276,329,331,373,374,-32766,337,574,490,792,337,609,573,613,378,379,373,374,25,300,373,374,319,337,795,573,613,378,379,573,613,378,379,373,374,516,355,359,445,482,796,507,573,613,378,379,508,548,337,890,775,791,337,604,803,808,806,698,373,374,888,807,373,374,-32766,-32766,-32766,573,613,378,379,573,613,378,379,873,832,804,872,851,-32766,809,-32766,-32766,-32766,-32766,805,20,26,29,298,480,515,770,778,827,457,0,900,455,774,0,0,0,874,870,886,823,915,852,869,488,0,391,793,0,338,0,0,0,340,0,273],r.Parser.prototype.yycheck=[2,3,4,5,6,8,9,10,70,11,104,105,106,107,108,109,8,9,10,8,9,24,60,26,27,28,29,30,31,32,33,34,24,7,26,27,28,29,30,41,42,7,123,124,7,47,70,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,144,0,75,68,69,70,25,72,70,74,7,76,77,78,79,7,81,142,83,70,85,72,73,88,8,9,10,92,93,94,95,7,97,98,95,100,7,7,103,104,24,142,26,27,105,106,111,112,113,136,7,7,139,114,115,116,117,122,123,132,125,126,127,128,129,130,131,8,8,9,10,136,137,138,139,140,141,25,143,141,145,142,147,148,24,72,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,144,48,72,44,45,46,30,48,144,64,72,8,9,10,140,70,8,9,10,74,60,25,77,78,79,60,81,24,83,26,85,60,24,88,26,27,28,92,93,94,64,140,97,98,70,100,70,72,103,104,74,145,7,77,78,79,111,81,7,83,30,85,140,140,88,8,9,10,92,93,94,133,134,97,98,145,100,140,7,103,104,24,139,96,141,140,141,111,101,75,75,30,70,75,64,70,60,110,121,12,70,141,25,143,74,96,141,77,78,79,101,81,141,83,140,85,140,141,88,110,145,144,92,93,94,64,7,97,98,142,100,70,141,103,104,74,145,141,77,78,79,111,81,7,83,30,85,132,25,88,132,142,12,92,93,94,120,60,97,98,12,100,148,141,103,104,141,12,96,12,140,141,111,101,8,9,10,141,25,64,90,91,110,65,66,70,41,42,43,74,65,66,77,78,79,12,81,25,83,25,85,140,141,88,123,124,25,92,93,94,64,25,97,98,142,100,70,120,103,104,74,25,25,77,78,79,111,81,30,83,48,85,140,141,88,140,141,30,92,93,94,140,141,97,98,60,100,60,60,103,104,61,72,75,70,140,141,111,67,70,87,99,70,70,64,70,72,102,89,70,70,71,70,70,74,70,70,77,78,79,70,81,70,83,70,85,140,141,88,70,144,70,92,93,94,64,70,97,98,72,100,70,72,103,104,74,72,72,77,78,79,111,81,75,83,75,85,89,86,88,79,101,118,92,93,94,87,95,97,98,87,100,87,87,103,104,118,105,106,95,140,141,111,95,115,64,114,115,116,117,135,70,115,120,132,74,120,140,77,78,79,119,81,139,83,140,85,120,-1,88,120,140,141,92,93,94,64,121,97,98,121,100,70,122,103,104,74,135,135,77,78,79,111,81,139,83,139,85,135,135,88,135,135,135,92,93,94,142,95,97,98,140,100,140,140,103,104,140,105,106,140,140,141,111,140,140,64,114,115,116,117,140,70,140,140,140,74,140,140,77,78,79,140,81,140,83,140,85,41,42,88,140,140,141,92,93,94,140,140,97,98,140,100,140,140,103,104,60,140,142,141,141,141,111,141,68,69,141,141,72,141,141,141,76,12,13,14,15,16,17,18,19,20,21,22,23,141,143,142,95,96,142,140,141,143,101,95,96,142,105,106,142,101,142,142,142,105,106,114,115,116,117,50,51,142,114,115,116,117,142,123,142,125,126,127,128,129,130,131,142,136,142,144,143,137,138,142,136,95,96,143,143,145,142,101,143,143,143,105,106,143,143,143,143,143,143,143,114,115,116,117,35,36,37,38,39,40,41,42,43,95,143,143,143,95,143,143,143,143,136,105,106,120,143,105,106,144,95,143,114,115,116,117,114,115,116,117,105,106,143,143,143,143,95,143,-1,114,115,116,117,143,143,143,105,106,143,95,142,80,146,95,142,114,115,116,117,105,106,144,144,105,106,144,95,142,114,115,116,117,114,115,116,117,105,106,82,144,144,144,144,142,84,114,115,116,117,144,70,95,72,144,144,95,142,144,146,144,142,105,106,146,144,105,106,8,9,10,114,115,116,117,114,115,116,117,144,144,144,144,144,24,104,26,27,28,29,144,144,144,144,144,144,144,144,144,144,144,-1,144,144,144,-1,-1,-1,146,146,146,146,146,146,146,146,-1,136,147,-1,139,-1,-1,-1,143,-1,145],r.Parser.prototype.yybase=[0,574,581,623,655,2,718,402,747,659,672,688,743,701,705,483,483,483,483,483,351,356,366,366,367,366,344,-2,-2,-2,200,200,231,231,231,231,231,231,231,231,200,231,451,482,532,316,370,115,146,285,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,401,44,474,429,476,481,487,488,739,740,741,734,733,416,736,539,541,342,542,543,552,557,559,536,567,737,755,569,735,738,123,123,123,123,123,123,123,123,123,122,11,336,336,336,336,336,336,336,336,336,336,336,336,336,336,336,227,227,173,577,577,577,577,577,577,577,577,577,577,577,79,178,846,8,-3,-3,-3,-3,642,706,706,706,706,157,179,242,431,431,360,431,525,368,767,767,767,767,767,767,767,767,767,767,767,767,350,375,315,315,652,652,-81,-81,-81,-81,251,185,188,184,-62,348,195,195,195,408,392,410,1,192,129,129,129,-24,-24,-24,-24,499,-24,-24,-24,113,108,108,12,161,349,526,271,398,529,438,130,206,265,427,76,414,427,288,295,76,166,44,262,422,141,491,372,494,413,71,92,93,267,135,100,34,415,745,746,742,-38,420,-10,135,147,744,498,107,26,493,144,377,363,369,332,363,400,377,588,377,376,377,360,37,582,376,377,374,376,388,363,364,412,369,377,441,443,390,106,332,377,390,377,400,64,590,591,323,592,589,593,649,608,362,500,399,407,620,625,636,365,354,614,524,425,359,355,423,570,578,357,406,414,394,352,403,531,433,403,653,434,385,417,411,444,310,318,501,425,668,757,380,637,684,403,609,387,87,325,638,382,403,639,403,696,503,615,403,697,384,435,425,352,352,352,700,66,699,583,702,707,704,748,721,749,584,750,358,583,722,751,682,215,613,422,436,389,447,221,257,752,403,403,506,499,403,395,685,397,426,753,392,391,647,683,403,418,754,221,723,587,724,450,568,507,648,509,327,725,353,497,610,454,622,455,461,404,510,373,732,612,247,361,664,463,405,692,641,464,465,511,343,437,335,409,396,665,293,467,468,472,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,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,0,0,0,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,0,0,0,0,0,0,0,0,0,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,767,767,767,767,767,767,767,767,767,767,767,123,123,123,123,123,123,123,123,0,129,129,129,129,-94,-94,-94,767,767,767,767,767,767,0,0,0,0,0,0,0,0,0,0,0,0,-94,-94,129,129,767,767,-24,-24,-24,-24,-24,108,108,108,-24,108,145,145,145,108,108,108,100,100,0,0,0,0,0,0,0,145,0,0,0,376,0,0,0,145,260,260,221,260,260,135,0,0,425,376,0,364,376,0,0,0,0,0,0,531,0,87,637,241,425,0,0,0,0,0,0,0,425,289,289,306,0,358,0,0,0,306,241,0,0,221],r.Parser.prototype.yydefault=[3,32767,32767,1,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,104,96,110,95,106,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,358,358,122,122,122,122,122,122,122,122,316,32767,32767,32767,32767,32767,32767,32767,32767,32767,173,173,173,32767,348,348,348,348,348,348,348,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,363,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,232,233,235,236,172,125,349,362,171,199,201,250,200,177,182,183,184,185,186,187,188,189,190,191,192,176,229,228,197,313,313,316,32767,32767,32767,32767,32767,32767,32767,32767,198,202,204,203,219,220,217,218,175,221,222,223,224,157,157,157,357,357,32767,357,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,158,32767,211,212,276,276,117,117,117,117,117,32767,32767,32767,32767,284,32767,32767,32767,32767,32767,286,32767,32767,206,207,205,32767,32767,32767,32767,32767,32767,32767,32767,32767,285,32767,32767,32767,32767,32767,32767,32767,32767,334,321,272,32767,32767,32767,265,32767,107,109,32767,32767,32767,32767,302,339,32767,32767,32767,17,32767,32767,32767,370,334,32767,32767,19,32767,32767,32767,32767,227,32767,338,332,32767,32767,32767,32767,32767,32767,63,32767,32767,32767,32767,32767,63,281,63,32767,63,32767,315,287,32767,63,74,32767,72,32767,32767,76,32767,63,93,93,254,315,54,63,254,63,32767,32767,32767,32767,4,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,267,32767,323,32767,337,336,324,32767,265,32767,215,194,266,32767,196,32767,32767,270,273,32767,32767,32767,134,32767,268,180,32767,32767,32767,32767,365,32767,32767,174,32767,32767,32767,130,32767,61,332,32767,32767,355,32767,32767,332,269,208,209,210,32767,121,32767,310,32767,32767,32767,32767,32767,32767,327,32767,333,32767,32767,32767,32767,111,32767,302,32767,32767,32767,75,32767,32767,178,126,32767,32767,364,32767,32767,32767,320,32767,32767,32767,32767,32767,62,32767,32767,77,32767,32767,32767,32767,332,32767,32767,32767,115,32767,169,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,32767,332,32767,32767,32767,32767,32767,32767,32767,4,32767,151,32767,32767,32767,32767,32767,32767,32767,25,25,3,137,3,137,25,101,25,25,137,93,93,25,25,25,144,25,25,25,25,25,25,25,25],r.Parser.prototype.yygoto=[141,141,173,173,173,173,173,173,173,173,141,173,142,143,144,148,153,155,181,175,172,172,172,172,174,174,174,174,174,174,174,168,169,170,171,179,757,758,392,760,781,782,783,784,785,786,787,789,725,145,146,147,149,150,151,152,154,177,178,180,196,208,209,210,211,212,213,214,215,217,218,219,220,244,245,266,267,268,430,431,432,182,183,184,185,186,187,188,189,190,191,192,156,157,158,159,176,160,194,161,162,163,164,195,165,193,139,166,167,452,452,452,452,452,452,452,452,452,452,452,453,453,453,453,453,453,453,453,453,453,453,551,551,551,464,491,394,394,394,394,394,394,394,394,394,394,394,394,394,394,394,394,394,394,407,552,552,552,810,810,662,662,662,662,662,594,283,595,510,399,399,567,679,632,849,850,863,660,714,426,222,622,622,622,622,223,617,623,494,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,465,472,514,904,398,398,425,425,459,425,419,322,421,421,393,396,412,422,428,460,463,473,481,501,5,476,284,327,1,15,2,6,7,550,550,550,8,9,10,668,16,11,17,12,18,13,19,14,704,328,881,881,643,628,626,626,624,626,526,401,652,647,847,847,847,847,847,847,847,847,847,847,847,437,438,441,447,477,479,497,290,910,910,400,400,486,880,880,263,913,910,303,255,723,306,822,821,306,896,896,896,861,304,323,410,913,913,897,316,420,769,658,559,879,671,536,324,466,565,311,311,311,801,241,676,496,439,440,442,444,448,475,631,858,311,285,286,603,495,712,0,406,321,0,0,0,314,0,0,429,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,411],r.Parser.prototype.yygcheck=[15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,35,35,35,35,35,35,35,35,35,35,35,86,86,86,86,86,86,86,86,86,86,86,6,6,6,21,21,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,71,7,7,7,35,35,35,35,35,35,35,29,44,29,35,86,86,12,12,12,12,12,12,12,12,75,40,35,35,35,35,40,35,35,35,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,36,36,36,104,82,82,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,13,42,42,42,2,13,2,13,13,5,5,5,13,13,13,54,13,13,13,13,13,13,13,13,67,67,83,83,5,5,5,5,5,5,5,5,5,5,93,93,93,93,93,93,93,93,93,93,93,52,52,52,52,52,52,52,4,105,105,89,89,94,84,84,92,105,105,26,92,71,4,91,91,4,84,84,84,97,30,70,30,105,105,102,27,30,72,50,10,84,55,46,9,30,11,90,90,90,80,30,56,30,85,85,85,85,85,85,43,96,90,44,44,34,77,69,-1,4,90,-1,-1,-1,4,-1,-1,4,-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,71],r.Parser.prototype.yygbase=[0,0,-286,0,10,239,130,154,0,-10,25,-23,-29,-289,0,-30,0,0,0,0,0,83,0,0,0,0,245,84,-11,142,-28,0,0,0,-13,-88,-42,0,0,0,-344,0,-38,-12,-188,0,23,0,0,0,66,0,247,0,205,24,-18,0,0,0,0,0,0,0,0,0,0,13,0,-15,85,74,70,0,0,148,0,-14,0,0,-6,0,-35,11,47,278,-77,0,0,44,68,43,38,72,94,0,-16,109,0,0,0,0,87,0,170,34,0],r.Parser.prototype.yygdefault=[-32768,362,3,546,382,570,571,572,307,305,560,566,467,4,568,140,295,575,296,500,577,414,579,580,308,309,415,315,216,593,503,313,596,357,602,301,449,383,350,461,221,423,456,630,282,638,540,646,649,450,657,352,433,434,667,672,677,680,334,325,474,684,685,256,689,511,512,703,242,711,317,724,342,788,790,397,408,484,797,326,800,384,385,386,387,435,818,815,289,866,287,443,254,853,468,356,903,862,288,388,389,302,898,341,905,912,458],r.Parser.prototype.yylhs=[0,1,2,2,4,4,3,3,3,3,3,3,3,3,3,8,8,10,10,10,10,9,9,11,13,13,14,14,14,14,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,33,33,34,27,27,30,30,6,7,7,7,37,37,37,38,38,41,41,39,39,42,42,22,22,29,29,32,32,31,31,43,23,23,23,23,44,44,45,45,46,46,20,20,16,16,47,18,18,48,17,17,19,19,36,36,49,49,50,50,51,51,51,51,52,52,53,53,54,54,24,24,55,55,55,25,25,56,56,40,40,57,57,57,57,62,62,63,63,64,64,64,64,65,66,66,61,61,58,58,60,60,68,68,67,67,67,67,67,67,59,59,69,69,26,26,21,21,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,71,77,77,79,79,80,81,81,81,81,81,81,86,86,35,35,35,72,72,87,87,82,82,88,88,88,88,88,73,73,73,76,76,76,78,78,93,93,93,93,93,93,93,93,93,93,93,93,93,93,12,12,12,12,12,12,74,74,74,74,94,94,96,96,95,95,97,97,28,28,28,28,99,99,98,98,98,98,98,100,100,84,84,89,89,83,83,101,101,101,101,90,90,90,90,85,85,91,91,91,70,70,102,102,102,75,75,103,103,104,104,104,104,92,92,92,92,105,105,105,105,105,105,105,106,106,106],r.Parser.prototype.yylen=[1,1,2,0,1,3,1,1,1,1,3,5,4,3,3,3,1,1,3,2,4,3,1,3,2,0,1,1,1,1,3,7,10,5,7,9,5,2,3,2,3,2,3,3,3,3,1,2,5,7,8,10,5,1,5,3,3,2,1,2,8,1,3,0,1,9,7,6,5,1,2,2,0,2,0,2,0,2,1,3,1,4,1,4,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,0,1,3,3,5,0,1,1,1,1,0,1,3,1,2,3,1,1,2,4,3,1,1,3,2,0,3,3,8,3,1,3,0,2,4,5,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,6,3,4,4,1,2,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,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,5,4,4,4,2,2,4,2,2,2,2,2,2,2,2,2,2,2,1,4,3,3,2,9,10,3,0,4,1,3,2,4,6,8,4,4,4,1,1,1,2,3,1,1,1,1,1,1,0,3,3,4,4,0,2,3,0,1,1,0,3,1,1,1,1,1,1,1,1,1,1,1,3,2,1,1,3,2,2,4,3,1,3,3,3,0,2,0,1,3,1,3,1,1,1,1,1,6,4,3,6,4,4,4,1,3,1,2,1,1,4,1,3,6,4,4,4,4,1,4,0,1,1,3,1,3,1,1,4,0,0,2,3,1,3,1,4,2,2,2,1,2,1,4,3,3,3,6,3,1,1,1],r.Parser.prototype.yyn0=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn1=function(e){this.yyval=this.Stmt_Namespace_postprocess(this.yyastk[this.stackPos-0])},r.Parser.prototype.yyn2=function(e){Array.isArray(this.yyastk[this.stackPos-0])?this.yyval=this.yyastk[this.stackPos-1].concat(this.yyastk[this.stackPos-0]):(this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1])},r.Parser.prototype.yyn3=function(e){this.yyval=[]},r.Parser.prototype.yyn4=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn5=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn6=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn7=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn8=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn9=function(e){this.yyval=this.Node_Stmt_HaltCompiler(e)},r.Parser.prototype.yyn10=function(e){this.yyval=this.Node_Stmt_Namespace(this.Node_Name(this.yyastk[this.stackPos-1],e),null,e)},r.Parser.prototype.yyn11=function(e){this.yyval=this.Node_Stmt_Namespace(this.Node_Name(this.yyastk[this.stackPos-3],e),this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn12=function(e){this.yyval=this.Node_Stmt_Namespace(null,this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn13=function(e){this.yyval=this.Node_Stmt_Use(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn14=function(e){this.yyval=this.Node_Stmt_Const(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn15=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn16=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn17=function(e){this.yyval=this.Node_Stmt_UseUse(this.Node_Name(this.yyastk[this.stackPos-0],e),null,e)},r.Parser.prototype.yyn18=function(e){this.yyval=this.Node_Stmt_UseUse(this.Node_Name(this.yyastk[this.stackPos-2],e),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn19=function(e){this.yyval=this.Node_Stmt_UseUse(this.Node_Name(this.yyastk[this.stackPos-0],e),null,e)},r.Parser.prototype.yyn20=function(e){this.yyval=this.Node_Stmt_UseUse(this.Node_Name(this.yyastk[this.stackPos-2],e),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn21=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn22=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn23=function(e){this.yyval=this.Node_Const(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn24=function(e){Array.isArray(this.yyastk[this.stackPos-0])?this.yyval=this.yyastk[this.stackPos-1].concat(this.yyastk[this.stackPos-0]):(this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1])},r.Parser.prototype.yyn25=function(e){this.yyval=[]},r.Parser.prototype.yyn26=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn27=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn28=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn29=function(e){throw new Error("__halt_compiler() can only be used from the outermost scope")},r.Parser.prototype.yyn30=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn31=function(e){this.yyval=this.Node_Stmt_If(this.yyastk[this.stackPos-4],{stmts:Array.isArray(this.yyastk[this.stackPos-2])?this.yyastk[this.stackPos-2]:[this.yyastk[this.stackPos-2]],elseifs:this.yyastk[this.stackPos-1],Else:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn32=function(e){this.yyval=this.Node_Stmt_If(this.yyastk[this.stackPos-7],{stmts:this.yyastk[this.stackPos-4],elseifs:this.yyastk[this.stackPos-3],"else":this.yyastk[this.stackPos-2]},e)},r.Parser.prototype.yyn33=function(e){this.yyval=this.Node_Stmt_While(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn34=function(e){this.yyval=this.Node_Stmt_Do(this.yyastk[this.stackPos-2],Array.isArray(this.yyastk[this.stackPos-5])?this.yyastk[this.stackPos-5]:[this.yyastk[this.stackPos-5]],e)},r.Parser.prototype.yyn35=function(e){this.yyval=this.Node_Stmt_For({init:this.yyastk[this.stackPos-6],cond:this.yyastk[this.stackPos-4],loop:this.yyastk[this.stackPos-2],stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn36=function(e){this.yyval=this.Node_Stmt_Switch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn37=function(e){this.yyval=this.Node_Stmt_Break(null,e)},r.Parser.prototype.yyn38=function(e){this.yyval=this.Node_Stmt_Break(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn39=function(e){this.yyval=this.Node_Stmt_Continue(null,e)},r.Parser.prototype.yyn40=function(e){this.yyval=this.Node_Stmt_Continue(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn41=function(e){this.yyval=this.Node_Stmt_Return(null,e)},r.Parser.prototype.yyn42=function(e){this.yyval=this.Node_Stmt_Return(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn43=function(e){this.yyval=this.Node_Stmt_Global(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn44=function(e){this.yyval=this.Node_Stmt_Static(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn45=function(e){this.yyval=this.Node_Stmt_Echo(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn46=function(e){this.yyval=this.Node_Stmt_InlineHTML(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn47=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn48=function(e){this.yyval=this.Node_Stmt_Unset(this.yyastk[this.stackPos-2],e)},r.Parser.prototype.yyn49=function(e){this.yyval=this.Node_Stmt_Foreach(this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-2],{keyVar:null,byRef:!1,stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn50=function(e){this.yyval=this.Node_Stmt_Foreach(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-2],{keyVar:null,byRef:!0,stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn51=function(e){this.yyval=this.Node_Stmt_Foreach(this.yyastk[this.stackPos-7],this.yyastk[this.stackPos-2],{keyVar:this.yyastk[this.stackPos-5],byRef:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn52=function(e){this.yyval=this.Node_Stmt_Declare(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn53=function(e){this.yyval=[]},r.Parser.prototype.yyn54=function(e){this.yyval=this.Node_Stmt_TryCatch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn55=function(e){this.yyval=this.Node_Stmt_Throw(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn56=function(e){this.yyval=this.Node_Stmt_Goto(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn57=function(e){this.yyval=this.Node_Stmt_Label(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn58=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn59=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn60=function(e){this.yyval=this.Node_Stmt_Catch(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-4].substring(1),this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn61=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn62=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn63=function(e){this.yyval=!1},r.Parser.prototype.yyn64=function(e){this.yyval=!0},r.Parser.prototype.yyn65=function(e){this.yyval=this.Node_Stmt_Function(this.yyastk[this.stackPos-6],{byRef:this.yyastk[this.stackPos-7],params:this.yyastk[this.stackPos-4],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn66=function(e){this.yyval=this.Node_Stmt_Class(this.yyastk[this.stackPos-5],{type:this.yyastk[this.stackPos-6],Extends:this.yyastk[this.stackPos-4],Implements:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn67=function(e){this.yyval=this.Node_Stmt_Interface(this.yyastk[this.stackPos-4],{Extends:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn68=function(e){this.yyval=this.Node_Stmt_Trait(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn69=function(e){this.yyval=0},r.Parser.prototype.yyn70=function(e){this.yyval=this.MODIFIER_ABSTRACT},r.Parser.prototype.yyn71=function(e){this.yyval=this.MODIFIER_FINAL},r.Parser.prototype.yyn72=function(e){this.yyval=null},r.Parser.prototype.yyn73=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn74=function(e){this.yyval=[]},r.Parser.prototype.yyn75=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn76=function(e){this.yyval=[]},r.Parser.prototype.yyn77=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn78=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn79=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn80=function(e){this.yyval=Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn81=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn82=function(e){this.yyval=Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn83=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn84=function(e){this.yyval=Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn85=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn86=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn87=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn88=function(e){this.yyval=this.Node_Stmt_DeclareDeclare(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn89=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn90=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn91=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn92=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn93=function(e){this.yyval=[]},r.Parser.prototype.yyn94=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn95=function(e){this.yyval=this.Node_Stmt_Case(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn96=function(e){this.yyval=this.Node_Stmt_Case(null,this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn97=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn98=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn99=function(e){this.yyval=Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn100=function(e){this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn101=function(e){this.yyval=[]},r.Parser.prototype.yyn102=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn103=function(e){this.yyval=this.Node_Stmt_ElseIf(this.yyastk[this.stackPos-2],Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]],e)},r.Parser.prototype.yyn104=function(e){this.yyval=[]},r.Parser.prototype.yyn105=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn106=function(e){this.yyval=this.Node_Stmt_ElseIf(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn107=function(e){this.yyval=null},r.Parser.prototype.yyn108=function(e){this.yyval=this.Node_Stmt_Else(Array.isArray(this.yyastk[this.stackPos-0])?this.yyastk[this.stackPos-0]:[this.yyastk[this.stackPos-0]],e)},r.Parser.prototype.yyn109=function(e){this.yyval=null},r.Parser.prototype.yyn110=function(e){this.yyval=this.Node_Stmt_Else(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn111=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn112=function(e){this.yyval=[]},r.Parser.prototype.yyn113=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn114=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn115=function(e){this.yyval=this.Node_Param(this.yyastk[this.stackPos-0].substring(1),null,this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn116=function(e){this.yyval=this.Node_Param(this.yyastk[this.stackPos-2].substring(1),this.yyastk[this.stackPos-0],this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-3],e)},r.Parser.prototype.yyn117=function(e){this.yyval=null},r.Parser.prototype.yyn118=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn119=function(e){this.yyval="array"},r.Parser.prototype.yyn120=function(e){this.yyval="callable"},r.Parser.prototype.yyn121=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn122=function(e){this.yyval=[]},r.Parser.prototype.yyn123=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn124=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn125=function(e){this.yyval=this.Node_Arg(this.yyastk[this.stackPos-0],!1,e)},r.Parser.prototype.yyn126=function(e){this.yyval=this.Node_Arg(this.yyastk[this.stackPos-0],!0,e)},r.Parser.prototype.yyn127=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn128=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn129=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.yyn130=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn131=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn132=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn133=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn134=function(e){this.yyval=this.Node_Stmt_StaticVar(this.yyastk[this.stackPos-0].substring(1),null,e)},r.Parser.prototype.yyn135=function(e){this.yyval=this.Node_Stmt_StaticVar(this.yyastk[this.stackPos-2].substring(1),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn136=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn137=function(e){this.yyval=[]},r.Parser.prototype.yyn138=function(e){this.yyval=this.Node_Stmt_Property(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn139=function(e){this.yyval=this.Node_Stmt_ClassConst(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn140=function(e){this.yyval=this.Node_Stmt_ClassMethod(this.yyastk[this.stackPos-4],{type:this.yyastk[this.stackPos-7],byRef:this.yyastk[this.stackPos-5],params:this.yyastk[this.stackPos-2],stmts:this.yyastk[this.stackPos-0]},e)},r.Parser.prototype.yyn141=function(e){this.yyval=this.Node_Stmt_TraitUse(this.yyastk[this.stackPos-1],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn142=function(e){this.yyval=[]},r.Parser.prototype.yyn143=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn144=function(e){this.yyval=[]},r.Parser.prototype.yyn145=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn146=function(e){this.yyval=this.Node_Stmt_TraitUseAdaptation_Precedence(this.yyastk[this.stackPos-3][0],this.yyastk[this.stackPos-3][1],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn147=function(e){this.yyval=this.Node_Stmt_TraitUseAdaptation_Alias(this.yyastk[this.stackPos-4][0],this.yyastk[this.stackPos-4][1],this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn148=function(e){this.yyval=this.Node_Stmt_TraitUseAdaptation_Alias(this.yyastk[this.stackPos-3][0],this.yyastk[this.stackPos-3][1],this.yyastk[this.stackPos-1],null,e)},r.Parser.prototype.yyn149=function(e){this.yyval=this.Node_Stmt_TraitUseAdaptation_Alias(this.yyastk[this.stackPos-3][0],this.yyastk[this.stackPos-3][1],null,this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn150=function(e){this.yyval=array(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0])},r.Parser.prototype.yyn151=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn152=function(e){this.yyval=array(null,this.yyastk[this.stackPos-0])},r.Parser.prototype.yyn153=function(e){this.yyval=null},r.Parser.prototype.yyn154=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn155=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn156=function(e){this.yyval=this.MODIFIER_PUBLIC},r.Parser.prototype.yyn157=function(e){this.yyval=this.MODIFIER_PUBLIC},r.Parser.prototype.yyn158=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn159=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn160=function(e){this.Stmt_Class_verifyModifier(this.yyastk[this.stackPos-1],this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]|this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn161=function(e){this.yyval=this.MODIFIER_PUBLIC},r.Parser.prototype.yyn162=function(e){this.yyval=this.MODIFIER_PROTECTED},r.Parser.prototype.yyn163=function(e){this.yyval=this.MODIFIER_PRIVATE},r.Parser.prototype.yyn164=function(e){this.yyval=this.MODIFIER_STATIC},r.Parser.prototype.yyn165=function(e){this.yyval=this.MODIFIER_ABSTRACT},r.Parser.prototype.yyn166=function(e){this.yyval=this.MODIFIER_FINAL},r.Parser.prototype.yyn167=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn168=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn169=function(e){this.yyval=this.Node_Stmt_PropertyProperty(this.yyastk[this.stackPos-0].substring(1),null,e)},r.Parser.prototype.yyn170=function(e){this.yyval=this.Node_Stmt_PropertyProperty(this.yyastk[this.stackPos-2].substring(1),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn171=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn172=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn173=function(e){this.yyval=[]},r.Parser.prototype.yyn174=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn175=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn176=function(e){this.yyval=this.Node_Expr_AssignList(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn177=function(e){this.yyval=this.Node_Expr_Assign(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn178=function(e){this.yyval=this.Node_Expr_AssignRef(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn179=function(e){this.yyval=this.Node_Expr_AssignRef(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn180=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn181=function(e){this.yyval=this.Node_Expr_Clone(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn182=function(e){this.yyval=this.Node_Expr_AssignPlus(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn183=function(e){this.yyval=this.Node_Expr_AssignMinus(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn184=function(e){this.yyval=this.Node_Expr_AssignMul(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn185=function(e){this.yyval=this.Node_Expr_AssignDiv(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn186=function(e){this.yyval=this.Node_Expr_AssignConcat(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn187=function(e){this.yyval=this.Node_Expr_AssignMod(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn188=function(e){this.yyval=this.Node_Expr_AssignBitwiseAnd(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn189=function(e){this.yyval=this.Node_Expr_AssignBitwiseOr(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn190=function(e){this.yyval=this.Node_Expr_AssignBitwiseXor(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn191=function(e){this.yyval=this.Node_Expr_AssignShiftLeft(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn192=function(e){this.yyval=this.Node_Expr_AssignShiftRight(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn193=function(e){this.yyval=this.Node_Expr_PostInc(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn194=function(e){this.yyval=this.Node_Expr_PreInc(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn195=function(e){this.yyval=this.Node_Expr_PostDec(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn196=function(e){this.yyval=this.Node_Expr_PreDec(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn197=function(e){this.yyval=this.Node_Expr_BooleanOr(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn198=function(e){this.yyval=this.Node_Expr_BooleanAnd(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn199=function(e){this.yyval=this.Node_Expr_LogicalOr(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn200=function(e){this.yyval=this.Node_Expr_LogicalAnd(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn201=function(e){this.yyval=this.Node_Expr_LogicalXor(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn202=function(e){this.yyval=this.Node_Expr_BitwiseOr(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn203=function(e){this.yyval=this.Node_Expr_BitwiseAnd(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn204=function(e){this.yyval=this.Node_Expr_BitwiseXor(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn205=function(e){this.yyval=this.Node_Expr_Concat(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn206=function(e){this.yyval=this.Node_Expr_Plus(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn207=function(e){this.yyval=this.Node_Expr_Minus(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn208=function(e){this.yyval=this.Node_Expr_Mul(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn209=function(e){this.yyval=this.Node_Expr_Div(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn210=function(e){this.yyval=this.Node_Expr_Mod(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn211=function(e){this.yyval=this.Node_Expr_ShiftLeft(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn212=function(e){this.yyval=this.Node_Expr_ShiftRight(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn213=function(e){this.yyval=this.Node_Expr_UnaryPlus(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn214=function(e){this.yyval=this.Node_Expr_UnaryMinus(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn215=function(e){this.yyval=this.Node_Expr_BooleanNot(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn216=function(e){this.yyval=this.Node_Expr_BitwiseNot(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn217=function(e){this.yyval=this.Node_Expr_Identical(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn218=function(e){this.yyval=this.Node_Expr_NotIdentical(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn219=function(e){this.yyval=this.Node_Expr_Equal(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn220=function(e){this.yyval=this.Node_Expr_NotEqual(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn221=function(e){this.yyval=this.Node_Expr_Smaller(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn222=function(e){this.yyval=this.Node_Expr_SmallerOrEqual(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn223=function(e){this.yyval=this.Node_Expr_Greater(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn224=function(e){this.yyval=this.Node_Expr_GreaterOrEqual(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn225=function(e){this.yyval=this.Node_Expr_Instanceof(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn226=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn227=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn228=function(e){this.yyval=this.Node_Expr_Ternary(this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn229=function(e){this.yyval=this.Node_Expr_Ternary(this.yyastk[this.stackPos-3],null,this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn230=function(e){this.yyval=this.Node_Expr_Isset(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn231=function(e){this.yyval=this.Node_Expr_Empty(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn232=function(e){this.yyval=this.Node_Expr_Include(this.yyastk[this.stackPos-0],"Node_Expr_Include",e)},r.Parser.prototype.yyn233=function(e){this.yyval=this.Node_Expr_Include(this.yyastk[this.stackPos-0],"Node_Expr_IncludeOnce",e)},r.Parser.prototype.yyn234=function(e){this.yyval=this.Node_Expr_Eval(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn235=function(e){this.yyval=this.Node_Expr_Include(this.yyastk[this.stackPos-0],"Node_Expr_Require",e)},r.Parser.prototype.yyn236=function(e){this.yyval=this.Node_Expr_Include(this.yyastk[this.stackPos-0],"Node_Expr_RequireOnce",e)},r.Parser.prototype.yyn237=function(e){this.yyval=this.Node_Expr_Cast_Int(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn238=function(e){this.yyval=this.Node_Expr_Cast_Double(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn239=function(e){this.yyval=this.Node_Expr_Cast_String(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn240=function(e){this.yyval=this.Node_Expr_Cast_Array(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn241=function(e){this.yyval=this.Node_Expr_Cast_Object(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn242=function(e){this.yyval=this.Node_Expr_Cast_Bool(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn243=function(e){this.yyval=this.Node_Expr_Cast_Unset(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn244=function(e){this.yyval=this.Node_Expr_Exit(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn245=function(e){this.yyval=this.Node_Expr_ErrorSuppress(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn246=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn247=function(e){this.yyval=this.Node_Expr_Array(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn248=function(e){this.yyval=this.Node_Expr_Array(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn249=function(e){this.yyval=this.Node_Expr_ShellExec(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn250=function(e){this.yyval=this.Node_Expr_Print(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn251=function(e){this.yyval=this.Node_Expr_Closure({"static":!1,byRef:this.yyastk[this.stackPos-7],params:this.yyastk[this.stackPos-5],uses:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn252=function(e){this.yyval=this.Node_Expr_Closure({"static":!0,byRef:this.yyastk[this.stackPos-7],params:this.yyastk[this.stackPos-5],uses:this.yyastk[this.stackPos-3],stmts:this.yyastk[this.stackPos-1]},e)},r.Parser.prototype.yyn253=function(e){this.yyval=this.Node_Expr_New(this.yyastk[this.stackPos-1],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn254=function(e){this.yyval=[]},r.Parser.prototype.yyn255=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn256=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn257=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn258=function(e){this.yyval=this.Node_Expr_ClosureUse(this.yyastk[this.stackPos-0].substring(1),this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn259=function(e){this.yyval=this.Node_Expr_FuncCall(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn260=function(e){this.yyval=this.Node_Expr_StaticCall(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn261=function(e){this.yyval=this.Node_Expr_StaticCall(this.yyastk[this.stackPos-7],this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn262=function(e){if(this.yyastk[this.stackPos-3].type==="Node_Expr_StaticPropertyFetch")this.yyval=this.Node_Expr_StaticCall(this.yyastk[this.stackPos-3].Class,this.Node_Expr_Variable(this.yyastk[this.stackPos-3].name,e),this.yyastk[this.stackPos-1],e);else{if(this.yyastk[this.stackPos-3].type!=="Node_Expr_ArrayDimFetch")throw new Exception;var t=this.yyastk[this.stackPos-3];while(t.variable.type==="Node_Expr_ArrayDimFetch")t=t.variable;this.yyval=this.Node_Expr_StaticCall(t.variable.Class,this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e),t.variable=this.Node_Expr_Variable(t.variable.name,e)}},r.Parser.prototype.yyn263=function(e){this.yyval=this.Node_Expr_FuncCall(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn264=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn265=function(e){this.yyval=this.Node_Name("static",e)},r.Parser.prototype.yyn266=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn267=function(e){this.yyval=this.Node_Name(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn268=function(e){this.yyval=this.Node_Name_FullyQualified(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn269=function(e){this.yyval=this.Node_Name_Relative(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn270=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn271=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn272=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn273=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn274=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn275=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn276=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn277=function(e){this.yyval=this.Node_Expr_PropertyFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn278=function(e){this.yyval=this.Node_Expr_PropertyFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn279=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn280=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn281=function(e){this.yyval=null},r.Parser.prototype.yyn282=function(e){this.yyval=null},r.Parser.prototype.yyn283=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn284=function(e){this.yyval=[]},r.Parser.prototype.yyn285=function(e){this.yyval=[this.Scalar_String_parseEscapeSequences(this.yyastk[this.stackPos-0],"`")]},r.Parser.prototype.yyn286=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn287=function(e){this.yyval=[]},r.Parser.prototype.yyn288=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn289=function(e){this.yyval=this.Node_Scalar_LNumber(this.Scalar_LNumber_parse(this.yyastk[this.stackPos-0]),e)},r.Parser.prototype.yyn290=function(e){this.yyval=this.Node_Scalar_DNumber(this.Scalar_DNumber_parse(this.yyastk[this.stackPos-0]),e)},r.Parser.prototype.yyn291=function(e){this.yyval=this.Scalar_String_create(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn292=function(e){this.yyval={type:"Node_Scalar_LineConst",attributes:e}},r.Parser.prototype.yyn293=function(e){this.yyval={type:"Node_Scalar_FileConst",attributes:e}},r.Parser.prototype.yyn294=function(e){this.yyval={type:"Node_Scalar_DirConst",attributes:e}},r.Parser.prototype.yyn295=function(e){this.yyval={type:"Node_Scalar_ClassConst",attributes:e}},r.Parser.prototype.yyn296=function(e){this.yyval={type:"Node_Scalar_TraitConst",attributes:e}},r.Parser.prototype.yyn297=function(e){this.yyval={type:"Node_Scalar_MethodConst",attributes:e}},r.Parser.prototype.yyn298=function(e){this.yyval={type:"Node_Scalar_FuncConst",attributes:e}},r.Parser.prototype.yyn299=function(e){this.yyval={type:"Node_Scalar_NSConst",attributes:e}},r.Parser.prototype.yyn300=function(e){this.yyval=this.Node_Scalar_String(this.Scalar_String_parseDocString(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-1]),e)},r.Parser.prototype.yyn301=function(e){this.yyval=this.Node_Scalar_String("",e)},r.Parser.prototype.yyn302=function(e){this.yyval=this.Node_Expr_ConstFetch(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn303=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn304=function(e){this.yyval=this.Node_Expr_ClassConstFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn305=function(e){this.yyval=this.Node_Expr_UnaryPlus(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn306=function(e){this.yyval=this.Node_Expr_UnaryMinus(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn307=function(e){this.yyval=this.Node_Expr_Array(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn308=function(e){this.yyval=this.Node_Expr_Array(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn309=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn310=function(e){this.yyval=this.Node_Expr_ClassConstFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn311=function(e){this.yyval=this.Node_Scalar_Encapsed(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn312=function(e){this.yyval=this.Node_Scalar_Encapsed(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn313=function(e){this.yyval=[]},r.Parser.prototype.yyn314=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn315=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn316=function(){this.yyval=this.yyastk[this.stackPos]},r.Parser.prototype.yyn317=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn318=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn319=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],this.yyastk[this.stackPos-2],!1,e)},r.Parser.prototype.yyn320=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],null,!1,e)},r.Parser.prototype.yyn321=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn322=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn323=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn324=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn325=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-4],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn326=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn327=function(e){this.yyval=this.Node_Expr_PropertyFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn328=function(e){this.yyval=this.Node_Expr_MethodCall(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn329=function(e){this.yyval=this.Node_Expr_FuncCall(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn330=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn331=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn332=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn333=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn334=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn335=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn336=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn337=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn338=function(e){this.yyval=this.Node_Expr_StaticPropertyFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn339=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn340=function(e){this.yyval=this.Node_Expr_StaticPropertyFetch(this.yyastk[this.stackPos-2],this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.yyn341=function(e){this.yyval=this.Node_Expr_StaticPropertyFetch(this.yyastk[this.stackPos-5],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn342=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn343=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn344=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn345=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.yyastk[this.stackPos-3],this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn346=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.yyn347=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn348=function(e){this.yyval=null},r.Parser.prototype.yyn349=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn350=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn351=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn352=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn353=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn354=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn355=function(e){this.yyval=this.yyastk[this.stackPos-0]},r.Parser.prototype.yyn356=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn357=function(e){this.yyval=null},r.Parser.prototype.yyn358=function(e){this.yyval=[]},r.Parser.prototype.yyn359=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn360=function(e){this.yyastk[this.stackPos-2].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-2]},r.Parser.prototype.yyn361=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn362=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],this.yyastk[this.stackPos-2],!1,e)},r.Parser.prototype.yyn363=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],null,!1,e)},r.Parser.prototype.yyn364=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],this.yyastk[this.stackPos-3],!0,e)},r.Parser.prototype.yyn365=function(e){this.yyval=this.Node_Expr_ArrayItem(this.yyastk[this.stackPos-0],null,!0,e)},r.Parser.prototype.yyn366=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn367=function(e){this.yyastk[this.stackPos-1].push(this.yyastk[this.stackPos-0]),this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn368=function(e){this.yyval=[this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn369=function(e){this.yyval=[this.yyastk[this.stackPos-1],this.yyastk[this.stackPos-0]]},r.Parser.prototype.yyn370=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.yyn371=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.Node_Expr_Variable(this.yyastk[this.stackPos-3].substring(1),e),this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn372=function(e){this.yyval=this.Node_Expr_PropertyFetch(this.Node_Expr_Variable(this.yyastk[this.stackPos-2].substring(1),e),this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn373=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn374=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-1],e)},r.Parser.prototype.yyn375=function(e){this.yyval=this.Node_Expr_ArrayDimFetch(this.Node_Expr_Variable(this.yyastk[this.stackPos-4],e),this.yyastk[this.stackPos-2],e)},r.Parser.prototype.yyn376=function(e){this.yyval=this.yyastk[this.stackPos-1]},r.Parser.prototype.yyn377=function(e){this.yyval=this.Node_Scalar_String(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn378=function(e){this.yyval=this.Node_Scalar_String(this.yyastk[this.stackPos-0],e)},r.Parser.prototype.yyn379=function(e){this.yyval=this.Node_Expr_Variable(this.yyastk[this.stackPos-0].substring(1),e)},r.Parser.prototype.Stmt_Namespace_postprocess=function(e){return e},r.Parser.prototype.Node_Stmt_Echo=function(){return{type:"Node_Stmt_Echo",exprs:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_If=function(){return{type:"Node_Stmt_If",cond:arguments[0],stmts:arguments[1].stmts,elseifs:arguments[1].elseifs,Else:arguments[1].Else||null,attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_For=function(){return{type:"Node_Stmt_For",init:arguments[0].init,cond:arguments[0].cond,loop:arguments[0].loop,stmts:arguments[0].stmts,attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Function=function(){return{type:"Node_Stmt_Function",name:arguments[0],byRef:arguments[1].byRef,params:arguments[1].params,stmts:arguments[1].stmts,attributes:arguments[2]}},r.Parser.prototype.Stmt_Class_verifyModifier=function(){},r.Parser.prototype.Node_Stmt_Class=function(){return{type:"Node_Stmt_Class",name:arguments[0],Type:arguments[1].type,Extends:arguments[1].Extends,Implements:arguments[1].Implements,stmts:arguments[1].stmts,attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_ClassMethod=function(){return{type:"Node_Stmt_ClassMethod",name:arguments[0],Type:arguments[1].type,byRef:arguments[1].byRef,params:arguments[1].params,stmts:arguments[1].stmts,attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_ClassConst=function(){return{type:"Node_Stmt_ClassConst",consts:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Interface=function(){return{type:"Node_Stmt_Interface",name:arguments[0],Extends:arguments[1].Extends,stmts:arguments[1].stmts,attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Throw=function(){return{type:"Node_Stmt_Throw",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Catch=function(){return{type:"Node_Stmt_Catch",Type:arguments[0],variable:arguments[1],stmts:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Stmt_TryCatch=function(){return{type:"Node_Stmt_TryCatch",stmts:arguments[0],catches:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Foreach=function(){return{type:"Node_Stmt_Foreach",expr:arguments[0],valueVar:arguments[1],keyVar:arguments[2].keyVar,byRef:arguments[2].byRef,stmts:arguments[2].stmts,attributes:arguments[3]}},r.Parser.prototype.Node_Stmt_While=function(){return{type:"Node_Stmt_While",cond:arguments[0],stmts:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Do=function(){return{type:"Node_Stmt_Do",cond:arguments[0],stmts:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Break=function(){return{type:"Node_Stmt_Break",num:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Continue=function(){return{type:"Node_Stmt_Continue",num:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Return=function(){return{type:"Node_Stmt_Return",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Case=function(){return{type:"Node_Stmt_Case",cond:arguments[0],stmts:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Switch=function(){return{type:"Node_Stmt_Switch",cond:arguments[0],cases:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Else=function(){return{type:"Node_Stmt_Else",stmts:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_ElseIf=function(){return{type:"Node_Stmt_ElseIf",cond:arguments[0],stmts:arguments[1],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_InlineHTML=function(){return{type:"Node_Stmt_InlineHTML",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_StaticVar=function(){return{type:"Node_Stmt_StaticVar",name:arguments[0],def:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Static=function(){return{type:"Node_Stmt_Static",vars:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_Global=function(){return{type:"Node_Stmt_Global",vars:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Stmt_PropertyProperty=function(){return{type:"Node_Stmt_PropertyProperty",name:arguments[0],def:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Property=function(){return{type:"Node_Stmt_Property",Type:arguments[0],props:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Stmt_Unset=function(){return{type:"Node_Stmt_Unset",variables:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Variable=function(e){return{type:"Node_Expr_Variable",name:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_FuncCall=function(){return{type:"Node_Expr_FuncCall",func:arguments[0],args:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_MethodCall=function(){return{type:"Node_Expr_MethodCall",variable:arguments[0],name:arguments[1],args:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Expr_StaticCall=function(){return{type:"Node_Expr_StaticCall",Class:arguments[0],func:arguments[1],args:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Expr_Ternary=function(){return{type:"Node_Expr_Ternary",cond:arguments[0],If:arguments[1],Else:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Expr_AssignList=function(){return{type:"Node_Expr_AssignList",assignList:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Assign=function(){return{type:"Node_Expr_Assign",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignConcat=function(){return{type:"Node_Expr_AssignConcat",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignMinus=function(){return{type:"Node_Expr_AssignMinus",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignPlus=function(){return{type:"Node_Expr_AssignPlus",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignDiv=function(){return{type:"Node_Expr_AssignDiv",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignRef=function(){return{type:"Node_Expr_AssignRef",variable:arguments[0],refVar:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignMul=function(){return{type:"Node_Expr_AssignMul",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_AssignMod=function(){return{type:"Node_Expr_AssignMod",variable:arguments[0],expr:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Plus=function(){return{type:"Node_Expr_Plus",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Minus=function(){return{type:"Node_Expr_Minus",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Mul=function(){return{type:"Node_Expr_Mul",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Div=function(){return{type:"Node_Expr_Div",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Mod=function(){return{type:"Node_Expr_Mod",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Greater=function(){return{type:"Node_Expr_Greater",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Equal=function(){return{type:"Node_Expr_Equal",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_NotEqual=function(){return{type:"Node_Expr_NotEqual",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Identical=function(){return{type:"Node_Expr_Identical",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_NotIdentical=function(){return{type:"Node_Expr_NotIdentical",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_GreaterOrEqual=function(){return{type:"Node_Expr_GreaterOrEqual",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_SmallerOrEqual=function(){return{type:"Node_Expr_SmallerOrEqual",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Concat=function(){return{type:"Node_Expr_Concat",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Smaller=function(){return{type:"Node_Expr_Smaller",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_PostInc=function(){return{type:"Node_Expr_PostInc",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_PostDec=function(){return{type:"Node_Expr_PostDec",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_PreInc=function(){return{type:"Node_Expr_PreInc",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_PreDec=function(){return{type:"Node_Expr_PreDec",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Include=function(){return{expr:arguments[0],type:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_ArrayDimFetch=function(){return{type:"Node_Expr_ArrayDimFetch",variable:arguments[0],dim:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_StaticPropertyFetch=function(){return{type:"Node_Expr_StaticPropertyFetch",Class:arguments[0],name:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_ClassConstFetch=function(){return{type:"Node_Expr_ClassConstFetch",Class:arguments[0],name:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_StaticPropertyFetch=function(){return{type:"Node_Expr_StaticPropertyFetch",Class:arguments[0],name:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_ConstFetch=function(){return{type:"Node_Expr_ConstFetch",name:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_ArrayItem=function(){return{type:"Node_Expr_ArrayItem",value:arguments[0],key:arguments[1],byRef:arguments[2],attributes:arguments[3]}},r.Parser.prototype.Node_Expr_Array=function(){return{type:"Node_Expr_Array",items:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_PropertyFetch=function(){return{type:"Node_Expr_PropertyFetch",variable:arguments[0],name:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_New=function(){return{type:"Node_Expr_New",Class:arguments[0],args:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Print=function(){return{type:"Node_Expr_Print",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Exit=function(){return{type:"Node_Expr_Exit",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Bool=function(){return{type:"Node_Expr_Cast_Bool",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Int=function(){return{type:"Node_Expr_Cast_Int",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_String=function(){return{type:"Node_Expr_Cast_String",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Double=function(){return{type:"Node_Expr_Cast_Double",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Array=function(){return{type:"Node_Expr_Cast_Array",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Cast_Object=function(){return{type:"Node_Expr_Cast_Object",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_ErrorSuppress=function(){return{type:"Node_Expr_ErrorSuppress",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Isset=function(){return{type:"Node_Expr_Isset",variables:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_UnaryMinus=function(){return{type:"Node_Expr_UnaryMinus",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_UnaryPlus=function(){return{type:"Node_Expr_UnaryPlus",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_Empty=function(){return{type:"Node_Expr_Empty",variable:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_BooleanOr=function(){return{type:"Node_Expr_BooleanOr",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_LogicalOr=function(){return{type:"Node_Expr_LogicalOr",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_LogicalAnd=function(){return{type:"Node_Expr_LogicalAnd",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_LogicalXor=function(){return{type:"Node_Expr_LogicalXor",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_BitwiseAnd=function(){return{type:"Node_Expr_BitwiseAnd",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_BitwiseOr=function(){return{type:"Node_Expr_BitwiseOr",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_BitwiseNot=function(){return{type:"Node_Expr_BitwiseNot",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_BooleanNot=function(){return{type:"Node_Expr_BooleanNot",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Expr_BooleanAnd=function(){return{type:"Node_Expr_BooleanAnd",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Instanceof=function(){return{type:"Node_Expr_Instanceof",left:arguments[0],right:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Expr_Clone=function(){return{type:"Node_Expr_Clone",expr:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Scalar_LNumber_parse=function(e){return e},r.Parser.prototype.Scalar_DNumber_parse=function(e){return e},r.Parser.prototype.Scalar_String_parseDocString=function(){return'"'+arguments[1].replace(/([^"\\]*(?:\\.[^"\\]*)*)"/g,'$1\\"')+'"'},r.Parser.prototype.Node_Scalar_String=function(){return{type:"Node_Scalar_String",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Scalar_String_create=function(){return{type:"Node_Scalar_String",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Scalar_LNumber=function(){return{type:"Node_Scalar_LNumber",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Scalar_DNumber=function(){return{type:"Node_Scalar_DNumber",value:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Scalar_Encapsed=function(){return{type:"Node_Scalar_Encapsed",parts:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Name=function(){return{type:"Node_Name",parts:arguments[0],attributes:arguments[1]}},r.Parser.prototype.Node_Param=function(){return{type:"Node_Param",name:arguments[0],def:arguments[1],Type:arguments[2],byRef:arguments[3],attributes:arguments[4]}},r.Parser.prototype.Node_Arg=function(){return{type:"Node_Name",value:arguments[0],byRef:arguments[1],attributes:arguments[2]}},r.Parser.prototype.Node_Const=function(){return{type:"Node_Const",name:arguments[0],value:arguments[1],attributes:arguments[2]}},t.PHP=r})
4083 ^
4084
40850 error(s), 2 warning(s)
4086Linting './lib/viewers/text/worker-xquery.js' ...
4087./lib/viewers/text/worker-xquery.js:1: WARNING - Suspicious code. Is there a missing '+' on the previous line?
4088"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/xquery_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/xquery/JSONParseTreeHandler","ace/mode/xquery/XQueryParser","ace/mode/xquery/visitors/SemanticHighlighter"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("./xquery/JSONParseTreeHandler").JSONParseTreeHandler,o=e("./xquery/XQueryParser").XQueryParser,u=e("./xquery/visitors/SemanticHighlighter").SemanticHighlighter,a=t.XQueryWorker=function(e){i.call(this,e),this.setTimeout(200)};r.inherits(a,i),function(){this.onUpdate=function(){this.sender.emit("start");var e=this.doc.getValue(),t=new s(e),n=new o(e,t);try{n.parse_XQuery(),this.sender.emit("ok");var r=t.getParseTree(),i=new u(r,e),a=i.getTokens();this.sender.emit("highlight",{tokens:a,lines:i.lines})}catch(f){if(!(f instanceof n.ParseException))throw f;var l=e.substring(0,f.getBegin()),c=l.split("\n").length,h=f.getBegin()-l.lastIndexOf("\n"),p=n.getErrorMessage(f);this.sender.emit("error",{row:c-1,column:h,text:p,type:"error"})}}}.call(a.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/xquery/JSONParseTreeHandler",["require","exports","module"],function(e,t,n){var r=t.JSONParseTreeHandler=function(e){function t(e){return{name:e,children:[],getParent:null,pos:{sl:0,sc:0,el:0,ec:0}}}function n(e,n){var r=t(e);o===null?(o=r,u=r):(r.getParent=u,u.children.push(r),u=u.children[u.children.length-1])}function r(){if(u.children.length>0){var e=u.children[0],t=null;for(var n=u.children.length-1;n>=0;n--){t=u.children[n];if(t.pos.el!==0||t.pos.ec!==0)break}u.pos.sl=e.pos.sl,u.pos.sc=e.pos.sc,u.pos.el=t.pos.el,u.pos.ec=t.pos.ec}u.name==="FunctionName"&&(u.name="EQName"),u.name==="EQName"&&u.value===undefined&&(u.value=u.children[0].value,u.children.pop()),u.getParent!==null&&(u=u.getParent);if(u.children.length>0){var r=u.children[u.children.length-1];r.children.length===1&&s.indexOf(r.name)!==-1&&(u.children[u.children.length-1]=r.children[0])}}function i(e,t,n){var r=n-f;u.value=a.substring(0,r),a=a.substring(r),f=n;var i=c,s=l,o=i+u.value.split("\n").length-1,h=u.value.lastIndexOf("\n"),p=h===-1?s+u.value.length:u.value.substring(h+1).length;c=o,l=p,u.pos.sl=i,u.pos.sc=s,u.pos.el=o,u.pos.ec=p}var s=["OrExpr","AndExpr","ComparisonExpr","StringConcatExpr","RangeExpr","UnionExpr","IntersectExceptExpr","InstanceofExpr","TreatExpr","CastableExpr","CastExpr","UnaryExpr","ValueExpr","FTContainsExpr","SimpleMapExpr","PathExpr","RelativePathExpr","PostfixExpr","StepExpr"],o=null,u=null,a=e,f=0,l=0,c=0,h=0;this.closeParseTree=function(){while(u.getParent!==null)r();r()},this.peek=function(){return u},this.getParseTree=function(){return o},this.reset=function(e){},this.startNonterminal=function(e,t){n(e,t)},this.endNonterminal=function(e,t){r()},this.terminal=function(e,t,s){e=e.substring(0,1)==="'"&&e.substring(e.length-1)==="'"?"TOKEN":e,n(e,t),i(u,t,s),r()},this.whitespace=function(e,t){var s="WS";n(s,e),i(u,e,t),r()}}}),define("ace/mode/xquery/XQueryParser",["require","exports","module"],function(e,t,n){var r=t.XQueryParser=function i(e,t){function n(e,t){ql=t,Ul=e,zl=e.length,r(0,0,0)}function r(e,t,n){kl=t,Ll=t,Al=e,Ol=t,Ml=n,_l=0,Xl=n,Bl=-1,Rl={},ql.reset(Ul)}function s(){ql.startNonterminal("Module",Ll);switch(Al){case 274:El(199);break;default:Cl=Al}(Cl==64274||Cl==134930)&&o(),wl(268);switch(Al){case 182:El(194);break;default:Cl=Al}switch(Cl){case 94390:yl(),u();break;default:yl(),Ba()}ql.endNonterminal("Module",Ll)}function o(){ql.startNonterminal("VersionDecl",Ll),vl(274),wl(116);switch(Al){case 125:vl(125),wl(17),vl(11);break;default:vl(263),wl(17),vl(11),wl(109),Al==125&&(vl(125),wl(17),vl(11))}wl(28),yl(),l(),ql.endNonterminal("VersionDecl",Ll)}function u(){ql.startNonterminal("LibraryModule",Ll),a(),wl(138),yl(),f(),ql.endNonterminal("LibraryModule",Ll)}function a(){ql.startNonterminal("ModuleDecl",Ll),vl(182),wl(61),vl(184),wl(247),yl(),Pa(),wl(29),vl(60),wl(15),vl(7),wl(28),yl(),l(),ql.endNonterminal("ModuleDecl",Ll)}function f(){ql.startNonterminal("Prolog",Ll);for(;;){wl(268);switch(Al){case 108:El(213);break;case 153:El(201);break;default:Cl=Al}if(Cl!=42604&&Cl!=43628&&Cl!=50284&&Cl!=53356&&Cl!=54380&&Cl!=55916&&Cl!=72300&&Cl!=93337&&Cl!=94316&&Cl!=104044&&Cl!=113772&&Cl!=115353)break;switch(Al){case 108:El(178);break;default:Cl=Al}if(Cl==55916){Cl=pl(0,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{M(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(0,Ll,Cl)}}switch(Cl){case-1:yl(),O();break;case 94316:yl(),A();break;case 153:yl(),N();break;case 72300:yl(),_();break;default:yl(),c()}wl(28),yl(),l()}for(;;){wl(268);switch(Al){case 108:El(210);break;default:Cl=Al}if(Cl!=16492&&Cl!=48748&&Cl!=51820&&Cl!=74348&&Cl!=79468&&Cl!=82540&&Cl!=101996&&Cl!=131692&&Cl!=134252)break;switch(Al){case 108:El(175);break;default:Cl=Al}switch(Cl){case 51820:yl(),q();break;case 101996:yl(),K();break;default:yl(),D()}wl(28),yl(),l()}ql.endNonterminal("Prolog",Ll)}function l(){ql.startNonterminal("Separator",Ll),vl(53),ql.endNonterminal("Separator",Ll)}function c(){ql.startNonterminal("Setter",Ll);switch(Al){case 108:El(172);break;default:Cl=Al}if(Cl==55916){Cl=pl(1,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{d(),Cl=-2}catch(a){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),b(),Cl=-6}catch(f){Cl=-9}}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(1,Ll,Cl)}}switch(Cl){case 43628:h();break;case-2:p();break;case 42604:v();break;case 50284:m();break;case 104044:g();break;case-6:y();break;case 113772:To();break;case 53356:w();break;default:x()}ql.endNonterminal("Setter",Ll)}function h(){ql.startNonterminal("BoundarySpaceDecl",Ll),vl(108),wl(33),vl(85),wl(133);switch(Al){case 214:vl(214);break;default:vl(241)}ql.endNonterminal("BoundarySpaceDecl",Ll)}function p(){ql.startNonterminal("DefaultCollationDecl",Ll),vl(108),wl(46),vl(109),wl(38),vl(94),wl(15),vl(7),ql.endNonterminal("DefaultCollationDecl",Ll)}function d(){ml(108),wl(46),ml(109),wl(38),ml(94),wl(15),ml(7)}function v(){ql.startNonterminal("BaseURIDecl",Ll),vl(108),wl(32),vl(83),wl(15),vl(7),ql.endNonterminal("BaseURIDecl",Ll)}function m(){ql.startNonterminal("ConstructionDecl",Ll),vl(108),wl(41),vl(98),wl(133);switch(Al){case 241:vl(241);break;default:vl(214)}ql.endNonterminal("ConstructionDecl",Ll)}function g(){ql.startNonterminal("OrderingModeDecl",Ll),vl(108),wl(68),vl(203),wl(131);switch(Al){case 202:vl(202);break;default:vl(256)}ql.endNonterminal("OrderingModeDecl",Ll)}function y(){ql.startNonterminal("EmptyOrderDecl",Ll),vl(108),wl(46),vl(109),wl(67),vl(201),wl(49),vl(123),wl(121);switch(Al){case 147:vl(147);break;default:vl(173)}ql.endNonterminal("EmptyOrderDecl",Ll)}function b(){ml(108),wl(46),ml(109),wl(67),ml(201),wl(49),ml(123),wl(121);switch(Al){case 147:ml(147);break;default:ml(173)}}function w(){ql.startNonterminal("CopyNamespacesDecl",Ll),vl(108),wl(44),vl(104),wl(128),yl(),E(),wl(25),vl(41),wl(123),yl(),S(),ql.endNonterminal("CopyNamespacesDecl",Ll)}function E(){ql.startNonterminal("PreserveMode",Ll);switch(Al){case 214:vl(214);break;default:vl(190)}ql.endNonterminal("PreserveMode",Ll)}function S(){ql.startNonterminal("InheritMode",Ll);switch(Al){case 157:vl(157);break;default:vl(189)}ql.endNonterminal("InheritMode",Ll)}function x(){ql.startNonterminal("DecimalFormatDecl",Ll),vl(108),wl(114);switch(Al){case 106:vl(106),wl(253),yl(),Oa();break;default:vl(109),wl(45),vl(106)}for(;;){wl(180);if(Al==53)break;yl(),T(),wl(29),vl(60),wl(17),vl(11)}ql.endNonterminal("DecimalFormatDecl",Ll)}function T(){ql.startNonterminal("DFPropertyName",Ll);switch(Al){case 107:vl(107);break;case 149:vl(149);break;case 156:vl(156);break;case 179:vl(179);break;case 67:vl(67);break;case 209:vl(209);break;case 208:vl(208);break;case 275:vl(275);break;case 116:vl(116);break;default:vl(207)}ql.endNonterminal("DFPropertyName",Ll)}function N(){ql.startNonterminal("Import",Ll);switch(Al){case 153:El(126);break;default:Cl=Al}switch(Cl){case 115353:C();break;default:L()}ql.endNonterminal("Import",Ll)}function C(){ql.startNonterminal("SchemaImport",Ll),vl(153),wl(73),vl(225),wl(137),Al!=7&&(yl(),k()),wl(15),vl(7),wl(108);if(Al==81){vl(81),wl(15),vl(7);for(;;){wl(103);if(Al!=41)break;vl(41),wl(15),vl(7)}}ql.endNonterminal("SchemaImport",Ll)}function k(){ql.startNonterminal("SchemaPrefix",Ll);switch(Al){case 184:vl(184),wl(247),yl(),Pa(),wl(29),vl(60);break;default:vl(109),wl(47),vl(121),wl(61),vl(184)}ql.endNonterminal("SchemaPrefix",Ll)}function L(){ql.startNonterminal("ModuleImport",Ll),vl(153),wl(60),vl(182),wl(90),Al==184&&(vl(184),wl(247),yl(),Pa(),wl(29),vl(60)),wl(15),vl(7),wl(108);if(Al==81){vl(81),wl(15),vl(7);for(;;){wl(103);if(Al!=41)break;vl(41),wl(15),vl(7)}}ql.endNonterminal("ModuleImport",Ll)}function A(){ql.startNonterminal("NamespaceDecl",Ll),vl(108),wl(61),vl(184),wl(247),yl(),Pa(),wl(29),vl(60),wl(15),vl(7),ql.endNonterminal("NamespaceDecl",Ll)}function O(){ql.startNonterminal("DefaultNamespaceDecl",Ll),vl(108),wl(46),vl(109),wl(115);switch(Al){case 121:vl(121);break;default:vl(145)}wl(61),vl(184),wl(15),vl(7),ql.endNonterminal("DefaultNamespaceDecl",Ll)}function M(){ml(108),wl(46),ml(109),wl(115);switch(Al){case 121:ml(121);break;default:ml(145)}wl(61),ml(184),wl(15),ml(7)}function _(){ql.startNonterminal("FTOptionDecl",Ll),vl(108),wl(52),vl(141),wl(81),yl(),Du(),ql.endNonterminal("FTOptionDecl",Ll)}function D(){ql.startNonterminal("AnnotatedDecl",Ll),vl(108);for(;;){wl(170);if(Al!=32&&Al!=257)break;switch(Al){case 257:yl(),P();break;default:yl(),H()}}switch(Al){case 262:yl(),j();break;case 145:yl(),cl();break;case 95:yl(),fa();break;case 155:yl(),ya();break;default:yl(),ba()}ql.endNonterminal("AnnotatedDecl",Ll)}function P(){ql.startNonterminal("CompatibilityAnnotation",Ll),vl(257),ql.endNonterminal("CompatibilityAnnotation",Ll)}function H(){ql.startNonterminal("Annotation",Ll),vl(32),wl(253),yl(),Oa(),wl(171);if(Al==34){vl(34),wl(154),yl(),ri();for(;;){wl(101);if(Al!=41)break;vl(41),wl(154),yl(),ri()}vl(37)}ql.endNonterminal("Annotation",Ll)}function B(){ml(32),wl(253),Ma(),wl(171);if(Al==34){ml(34),wl(154),ii();for(;;){wl(101);if(Al!=41)break;ml(41),wl(154),ii()}ml(37)}}function j(){ql.startNonterminal("VarDecl",Ll),vl(262),wl(21),vl(31),wl(253),yl(),fi(),wl(147),Al==79&&(yl(),cs()),wl(106);switch(Al){case 52:vl(52),wl(267),yl(),F();break;default:vl(133),wl(104),Al==52&&(vl(52),wl(267),yl(),I())}ql.endNonterminal("VarDecl",Ll)}function F(){ql.startNonterminal("VarValue",Ll),Nf(),ql.endNonterminal("VarValue",Ll)}function I(){ql.startNonterminal("VarDefaultValue",Ll),Nf(),ql.endNonterminal("VarDefaultValue",Ll)}function q(){ql.startNonterminal("ContextItemDecl",Ll),vl(108),wl(43),vl(101),wl(55),vl(165),wl(147),Al==79&&(vl(79),wl(259),yl(),gs()),wl(106);switch(Al){case 52:vl(52),wl(267),yl(),F();break;default:vl(133),wl(104),Al==52&&(vl(52),wl(267),yl(),I())}ql.endNonterminal("ContextItemDecl",Ll)}function R(){ql.startNonterminal("ParamList",Ll),z();for(;;){wl(101);if(Al!=41)break;vl(41),wl(21),yl(),z()}ql.endNonterminal("ParamList",Ll)}function U(){W();for(;;){wl(101);if(Al!=41)break;ml(41),wl(21),W()}}function z(){ql.startNonterminal("Param",Ll),vl(31),wl(253),yl(),Oa(),wl(143),Al==79&&(yl(),cs()),ql.endNonterminal("Param",Ll)}function W(){ml(31),wl(253),Ma(),wl(143),Al==79&&hs()}function X(){ql.startNonterminal("FunctionBody",Ll),$(),ql.endNonterminal("FunctionBody",Ll)}function V(){J()}function $(){ql.startNonterminal("EnclosedExpr",Ll),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("EnclosedExpr",Ll)}function J(){ml(276),wl(267),G(),ml(282)}function K(){ql.startNonterminal("OptionDecl",Ll),vl(108),wl(66),vl(199),wl(253),yl(),Oa(),wl(17),vl(11),ql.endNonterminal("OptionDecl",Ll)}function Q(){ql.startNonterminal("Expr",Ll),Nf();for(;;){if(Al!=41)break;vl(41),wl(267),yl(),Nf()}ql.endNonterminal("Expr",Ll)}function G(){Cf();for(;;){if(Al!=41)break;ml(41),wl(267),Cf()}}function Y(){ql.startNonterminal("FLWORExpr",Ll),et();for(;;){wl(173);if(Al==220)break;yl(),nt()}yl(),nn(),ql.endNonterminal("FLWORExpr",Ll)}function Z(){tt();for(;;){wl(173);if(Al==220)break;rt()}rn()}function et(){ql.startNonterminal("InitialClause",Ll);switch(Al){case 137:El(141);break;default:Cl=Al}switch(Cl){case 16009:it();break;case 174:dt();break;default:yt()}ql.endNonterminal("InitialClause",Ll)}function tt(){switch(Al){case 137:El(141);break;default:Cl=Al}switch(Cl){case 16009:st();break;case 174:vt();break;default:bt()}}function nt(){ql.startNonterminal("IntermediateClause",Ll);switch(Al){case 137:case 174:et();break;case 266:Ft();break;case 148:qt();break;case 105:Bt();break;default:Jt()}ql.endNonterminal("IntermediateClause",Ll)}function rt(){switch(Al){case 137:case 174:tt();break;case 266:It();break;case 148:Rt();break;case 105:jt();break;default:Kt()}}function it(){ql.startNonterminal("ForClause",Ll),vl(137),wl(21),yl(),ot();for(;;){if(Al!=41)break;vl(41),wl(21),yl(),ot()}ql.endNonterminal("ForClause",Ll)}function st(){ml(137),wl(21),ut();for(;;){if(Al!=41)break;ml(41),wl(21),ut()}}function ot(){ql.startNonterminal("ForBinding",Ll),vl(31),wl(253),yl(),fi(),wl(164),Al==79&&(yl(),cs()),wl(158),Al==72&&(yl(),at()),wl(150),Al==81&&(yl(),lt()),wl(122),Al==228&&(yl(),ht()),wl(53),vl(154),wl(267),yl(),Nf(),ql.endNonterminal("ForBinding",Ll)}function ut(){ml(31),wl(253),li(),wl(164),Al==79&&hs(),wl(158),Al==72&&ft(),wl(150),Al==81&&ct(),wl(122),Al==228&&pt(),wl(53),ml(154),wl(267),Cf()}function at(){ql.startNonterminal("AllowingEmpty",Ll),vl(72),wl(49),vl(123),ql.endNonterminal("AllowingEmpty",Ll)}function ft(){ml(72),wl(49),ml(123)}function lt(){ql.startNonterminal("PositionalVar",Ll),vl(81),wl(21),vl(31),wl(253),yl(),fi(),ql.endNonterminal("PositionalVar",Ll)}function ct(){ml(81),wl(21),ml(31),wl(253),li()}function ht(){ql.startNonterminal("FTScoreVar",Ll),vl(228),wl(21),vl(31),wl(253),yl(),fi(),ql.endNonterminal("FTScoreVar",Ll)}function pt(){ml(228),wl(21),ml(31),wl(253),li()}function dt(){ql.startNonterminal("LetClause",Ll),vl(174),wl(96),yl(),mt();for(;;){if(Al!=41)break;vl(41),wl(96),yl(),mt()}ql.endNonterminal("LetClause",Ll)}function vt(){ml(174),wl(96),gt();for(;;){if(Al!=41)break;ml(41),wl(96),gt()}}function mt(){ql.startNonterminal("LetBinding",Ll);switch(Al){case 31:vl(31),wl(253),yl(),fi(),wl(105),Al==79&&(yl(),cs());break;default:ht()}wl(27),vl(52),wl(267),yl(),Nf(),ql.endNonterminal("LetBinding",Ll)}function gt(){switch(Al){case 31:ml(31),wl(253),li(),wl(105),Al==79&&hs();break;default:pt()}wl(27),ml(52),wl(267),Cf()}function yt(){ql.startNonterminal("WindowClause",Ll),vl(137),wl(135);switch(Al){case 251:yl(),wt();break;default:yl(),St()}ql.endNonterminal("WindowClause",Ll)}function bt(){ml(137),wl(135);switch(Al){case 251:Et();break;default:xt()}}function wt(){ql.startNonterminal("TumblingWindowClause",Ll),vl(251),wl(85),vl(269),wl(21),vl(31),wl(253),yl(),fi(),wl(110),Al==79&&(yl(),cs()),wl(53),vl(154),wl(267),yl(),Nf(),yl(),Tt();if(Al==126||Al==198)yl(),Ct();ql.endNonterminal("TumblingWindowClause",Ll)}function Et(){ml(251),wl(85),ml(269),wl(21),ml(31),wl(253),li(),wl(110),Al==79&&hs(),wl(53),ml(154),wl(267),Cf(),Nt(),(Al==126||Al==198)&&kt()}function St(){ql.startNonterminal("SlidingWindowClause",Ll),vl(234),wl(85),vl(269),wl(21),vl(31),wl(253),yl(),fi(),wl(110),Al==79&&(yl(),cs()),wl(53),vl(154),wl(267),yl(),Nf(),yl(),Tt(),yl(),Ct(),ql.endNonterminal("SlidingWindowClause",Ll)}function xt(){ml(234),wl(85),ml(269),wl(21),ml(31),wl(253),li(),wl(110),Al==79&&hs(),wl(53),ml(154),wl(267),Cf(),Nt(),kt()}function Tt(){ql.startNonterminal("WindowStartCondition",Ll),vl(237),wl(163),yl(),Lt(),wl(83),vl(265),wl(267),yl(),Nf(),ql.endNonterminal("WindowStartCondition",Ll)}function Nt(){ml(237),wl(163),At(),wl(83),ml(265),wl(267),Cf()}function Ct(){ql.startNonterminal("WindowEndCondition",Ll),Al==198&&vl(198),wl(50),vl(126),wl(163),yl(),Lt(),wl(83),vl(265),wl(267),yl(),Nf(),ql.endNonterminal("WindowEndCondition",Ll)}function kt(){Al==198&&ml(198),wl(50),ml(126),wl(163),At(),wl(83),ml(265),wl(267),Cf()}function Lt(){ql.startNonterminal("WindowVars",Ll),Al==31&&(vl(31),wl(253),yl(),Ot()),wl(159),Al==81&&(yl(),lt()),wl(153),Al==215&&(vl(215),wl(21),vl(31),wl(253),yl(),_t()),wl(127),Al==187&&(vl(187),wl(21),vl(31),wl(253),yl(),Pt()),ql.endNonterminal("WindowVars",Ll)}function At(){Al==31&&(ml(31),wl(253),Mt()),wl(159),Al==81&&ct(),wl(153),Al==215&&(ml(215),wl(21),ml(31),wl(253),Dt()),wl(127),Al==187&&(ml(187),wl(21),ml(31),wl(253),Ht())}function Ot(){ql.startNonterminal("CurrentItem",Ll),Oa(),ql.endNonterminal("CurrentItem",Ll)}function Mt(){Ma()}function _t(){ql.startNonterminal("PreviousItem",Ll),Oa(),ql.endNonterminal("PreviousItem",Ll)}function Dt(){Ma()}function Pt(){ql.startNonterminal("NextItem",Ll),Oa(),ql.endNonterminal("NextItem",Ll)}function Ht(){Ma()}function Bt(){ql.startNonterminal("CountClause",Ll),vl(105),wl(21),vl(31),wl(253),yl(),fi(),ql.endNonterminal("CountClause",Ll)}function jt(){ml(105),wl(21),ml(31),wl(253),li()}function Ft(){ql.startNonterminal("WhereClause",Ll),vl(266),wl(267),yl(),Nf(),ql.endNonterminal("WhereClause",Ll)}function It(){ml(266),wl(267),Cf()}function qt(){ql.startNonterminal("GroupByClause",Ll),vl(148),wl(34),vl(87),wl(21),yl(),Ut(),ql.endNonterminal("GroupByClause",Ll)}function Rt(){ml(148),wl(34),ml(87),wl(21),zt()}function Ut(){ql.startNonterminal("GroupingSpecList",Ll),Wt();for(;;){wl(176);if(Al!=41)break;vl(41),wl(21),yl(),Wt()}ql.endNonterminal("GroupingSpecList",Ll)}function zt(){Xt();for(;;){wl(176);if(Al!=41)break;ml(41),wl(21),Xt()}}function Wt(){ql.startNonterminal("GroupingSpec",Ll),Vt(),wl(182);if(Al==52||Al==79)Al==79&&(yl(),cs()),wl(27),vl(52),wl(267),yl(),Nf();Al==94&&(vl(94),wl(15),vl(7)),ql.endNonterminal("GroupingSpec",Ll)}function Xt(){$t(),wl(182);if(Al==52||Al==79)Al==79&&hs(),wl(27),ml(52),wl(267),Cf();Al==94&&(ml(94),wl(15),ml(7))}function Vt(){ql.startNonterminal("GroupingVariable",Ll),vl(31),wl(253),yl(),fi(),ql.endNonterminal("GroupingVariable",Ll)}function $t(){ml(31),wl(253),li()}function Jt(){ql.startNonterminal("OrderByClause",Ll);switch(Al){case 201:vl(201),wl(34),vl(87);break;default:vl(236),wl(67),vl(201),wl(34),vl(87)}wl(267),yl(),Qt(),ql.endNonterminal("OrderByClause",Ll)}function Kt(){switch(Al){case 201:ml(201),wl(34),ml(87);break;default:ml(236),wl(67),ml(201),wl(34),ml(87)}wl(267),Gt()}function Qt(){ql.startNonterminal("OrderSpecList",Ll),Yt();for(;;){wl(176);if(Al!=41)break;vl(41),wl(267),yl(),Yt()}ql.endNonterminal("OrderSpecList",Ll)}function Gt(){Zt();for(;;){wl(176);if(Al!=41)break;ml(41),wl(267),Zt()}}function Yt(){ql.startNonterminal("OrderSpec",Ll),Nf(),yl(),en(),ql.endNonterminal("OrderSpec",Ll)}function Zt(){Cf(),tn()}function en(){ql.startNonterminal("OrderModifier",Ll);if(Al==80||Al==113)switch(Al){case 80:vl(80);break;default:vl(113)}wl(179);if(Al==123){vl(123),wl(121);switch(Al){case 147:vl(147);break;default:vl(173)}}wl(177),Al==94&&(vl(94),wl(15),vl(7)),ql.endNonterminal("OrderModifier",Ll)}function tn(){if(Al==80||Al==113)switch(Al){case 80:ml(80);break;default:ml(113)}wl(179);if(Al==123){ml(123),wl(121);switch(Al){case 147:ml(147);break;default:ml(173)}}wl(177),Al==94&&(ml(94),wl(15),ml(7))}function nn(){ql.startNonterminal("ReturnClause",Ll),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("ReturnClause",Ll)}function rn(){ml(220),wl(267),Cf()}function sn(){ql.startNonterminal("QuantifiedExpr",Ll);switch(Al){case 235:vl(235);break;default:vl(129)}wl(21),vl(31),wl(253),yl(),fi(),wl(110),Al==79&&(yl(),cs()),wl(53),vl(154),wl(267),yl(),Nf();for(;;){if(Al!=41)break;vl(41),wl(21),vl(31),wl(253),yl(),fi(),wl(110),Al==79&&(yl(),cs()),wl(53),vl(154),wl(267),yl(),Nf()}vl(224),wl(267),yl(),Nf(),ql.endNonterminal("QuantifiedExpr",Ll)}function on(){switch(Al){case 235:ml(235);break;default:ml(129)}wl(21),ml(31),wl(253),li(),wl(110),Al==79&&hs(),wl(53),ml(154),wl(267),Cf();for(;;){if(Al!=41)break;ml(41),wl(21),ml(31),wl(253),li(),wl(110),Al==79&&hs(),wl(53),ml(154),wl(267),Cf()}ml(224),wl(267),Cf()}function un(){ql.startNonterminal("SwitchExpr",Ll),vl(243),wl(22),vl(34),wl(267),yl(),Q(),vl(37);for(;;){wl(35),yl(),fn();if(Al!=88)break}vl(109),wl(70),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("SwitchExpr",Ll)}function an(){ml(243),wl(22),ml(34),wl(267),G(),ml(37);for(;;){wl(35),ln();if(Al!=88)break}ml(109),wl(70),ml(220),wl(267),Cf()}function fn(){ql.startNonterminal("SwitchCaseClause",Ll);for(;;){vl(88),wl(267),yl(),cn();if(Al!=88)break}vl(220),wl(267),yl(),Nf(),ql.endNonterminal("SwitchCaseClause",Ll)}function ln(){for(;;){ml(88),wl(267),hn();if(Al!=88)break}ml(220),wl(267),Cf()}function cn(){ql.startNonterminal("SwitchCaseOperand",Ll),Nf(),ql.endNonterminal("SwitchCaseOperand",Ll)}function hn(){Cf()}function pn(){ql.startNonterminal("TypeswitchExpr",Ll),vl(253),wl(22),vl(34),wl(267),yl(),Q(),vl(37);for(;;){wl(35),yl(),vn();if(Al!=88)break}vl(109),wl(95),Al==31&&(vl(31),wl(253),yl(),fi()),wl(70),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("TypeswitchExpr",Ll)}function dn(){ml(253),wl(22),ml(34),wl(267),G(),ml(37);for(;;){wl(35),mn();if(Al!=88)break}ml(109),wl(95),Al==31&&(ml(31),wl(253),li()),wl(70),ml(220),wl(267),Cf()}function vn(){ql.startNonterminal("CaseClause",Ll),vl(88),wl(260),Al==31&&(vl(31),wl(253),yl(),fi(),wl(30),vl(79)),wl(259),yl(),gn(),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("CaseClause",Ll)}function mn(){ml(88),wl(260),Al==31&&(ml(31),wl(253),li(),wl(30),ml(79)),wl(259),yn(),ml(220),wl(267),Cf()}function gn(){ql.startNonterminal("SequenceTypeUnion",Ll),ps();for(;;){wl(134);if(Al!=279)break;vl(279),wl(259),yl(),ps()}ql.endNonterminal("SequenceTypeUnion",Ll)}function yn(){ds();for(;;){wl(134);if(Al!=279)break;ml(279),wl(259),ds()}}function bn(){ql.startNonterminal("IfExpr",Ll),vl(152),wl(22),vl(34),wl(267),yl(),Q(),vl(37),wl(77),vl(245),wl(267),yl(),Nf(),vl(122),wl(267),yl(),Nf(),ql.endNonterminal("IfExpr",Ll)}function wn(){ml(152),wl(22),ml(34),wl(267),G(),ml(37),wl(77),ml(245),wl(267),Cf(),ml(122),wl(267),Cf()}function En(){ql.startNonterminal("TryCatchExpr",Ll),xn();for(;;){wl(36),yl(),kn(),wl(184);if(Al!=91)break}ql.endNonterminal("TryCatchExpr",Ll)}function Sn(){Tn();for(;;){wl(36),Ln(),wl(184);if(Al!=91)break}}function xn(){ql.startNonterminal("TryClause",Ll),vl(250),wl(87),vl(276),wl(267),yl(),Nn(),vl(282),ql.endNonterminal("TryClause",Ll)}function Tn(){ml(250),wl(87),ml(276),wl(267),Cn(),ml(282)}function Nn(){ql.startNonterminal("TryTargetExpr",Ll),Q(),ql.endNonterminal("TryTargetExpr",Ll)}function Cn(){G()}function kn(){ql.startNonterminal("CatchClause",Ll),vl(91),wl(255),yl(),An(),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("CatchClause",Ll)}function Ln(){ml(91),wl(255),On(),ml(276),wl(267),G(),ml(282)}function An(){ql.startNonterminal("CatchErrorList",Ll),$r();for(;;){wl(136);if(Al!=279)break;vl(279),wl(255),yl(),$r()}ql.endNonterminal("CatchErrorList",Ll)}function On(){Jr();for(;;){wl(136);if(Al!=279)break;ml(279),wl(255),Jr()}}function Mn(){ql.startNonterminal("OrExpr",Ll),Dn();for(;;){if(Al!=200)break;vl(200),wl(265),yl(),Dn()}ql.endNonterminal("OrExpr",Ll)}function _n(){Pn();for(;;){if(Al!=200)break;ml(200),wl(265),Pn()}}function Dn(){ql.startNonterminal("AndExpr",Ll),Hn();for(;;){if(Al!=75)break;vl(75),wl(265),yl(),Hn()}ql.endNonterminal("AndExpr",Ll)}function Pn(){Bn();for(;;){if(Al!=75)break;ml(75),wl(265),Bn()}}function Hn(){ql.startNonterminal("ComparisonExpr",Ll),jn();if(Al==27||Al==54||Al==57||Al==58||Al==60||Al==61||Al==62||Al==63||Al==128||Al==146||Al==150||Al==164||Al==172||Al==178||Al==186){switch(Al){case 128:case 146:case 150:case 172:case 178:case 186:yl(),pr();break;case 57:case 63:case 164:yl(),vr();break;default:yl(),cr()}wl(265),yl(),jn()}ql.endNonterminal("ComparisonExpr",Ll)}function Bn(){Fn();if(Al==27||Al==54||Al==57||Al==58||Al==60||Al==61||Al==62||Al==63||Al==128||Al==146||Al==150||Al==164||Al==172||Al==178||Al==186){switch(Al){case 128:case 146:case 150:case 172:case 178:case 186:dr();break;case 57:case 63:case 164:mr();break;default:hr()}wl(265),Fn()}}function jn(){ql.startNonterminal("FTContainsExpr",Ll),In(),Al==99&&(vl(99),wl(76),vl(244),wl(162),yl(),zo(),Al==271&&(yl(),ua())),ql.endNonterminal("FTContainsExpr",Ll)}function Fn(){qn(),Al==99&&(ml(99),wl(76),ml(244),wl(162),Wo(),Al==271&&aa())}function In(){ql.startNonterminal("StringConcatExpr",Ll),Rn();for(;;){if(Al!=280)break;vl(280),wl(265),yl(),Rn()}ql.endNonterminal("StringConcatExpr",Ll)}function qn(){Un();for(;;){if(Al!=280)break;ml(280),wl(265),Un()}}function Rn(){ql.startNonterminal("RangeExpr",Ll),zn(),Al==248&&(vl(248),wl(265),yl(),zn()),ql.endNonterminal("RangeExpr",Ll)}function Un(){Wn(),Al==248&&(ml(248),wl(265),Wn())}function zn(){ql.startNonterminal("AdditiveExpr",Ll),Xn();for(;;){if(Al!=40&&Al!=42)break;switch(Al){case 40:vl(40);break;default:vl(42)}wl(265),yl(),Xn()}ql.endNonterminal("AdditiveExpr",Ll)}function Wn(){Vn();for(;;){if(Al!=40&&Al!=42)break;switch(Al){case 40:ml(40);break;default:ml(42)}wl(265),Vn()}}function Xn(){ql.startNonterminal("MultiplicativeExpr",Ll),$n();for(;;){if(Al!=38&&Al!=118&&Al!=151&&Al!=180)break;switch(Al){case 38:vl(38);break;case 118:vl(118);break;case 151:vl(151);break;default:vl(180)}wl(265),yl(),$n()}ql.endNonterminal("MultiplicativeExpr",Ll)}function Vn(){Jn();for(;;){if(Al!=38&&Al!=118&&Al!=151&&Al!=180)break;switch(Al){case 38:ml(38);break;case 118:ml(118);break;case 151:ml(151);break;default:ml(180)}wl(265),Jn()}}function $n(){ql.startNonterminal("UnionExpr",Ll),Kn();for(;;){if(Al!=254&&Al!=279)break;switch(Al){case 254:vl(254);break;default:vl(279)}wl(265),yl(),Kn()}ql.endNonterminal("UnionExpr",Ll)}function Jn(){Qn();for(;;){if(Al!=254&&Al!=279)break;switch(Al){case 254:ml(254);break;default:ml(279)}wl(265),Qn()}}function Kn(){ql.startNonterminal("IntersectExceptExpr",Ll),Gn();for(;;){wl(222);if(Al!=131&&Al!=162)break;switch(Al){case 162:vl(162);break;default:vl(131)}wl(265),yl(),Gn()}ql.endNonterminal("IntersectExceptExpr",Ll)}function Qn(){Yn();for(;;){wl(222);if(Al!=131&&Al!=162)break;switch(Al){case 162:ml(162);break;default:ml(131)}wl(265),Yn()}}function Gn(){ql.startNonterminal("InstanceofExpr",Ll),Zn(),wl(223),Al==160&&(vl(160),wl(64),vl(196),wl(259),yl(),ps()),ql.endNonterminal("InstanceofExpr",Ll)}function Yn(){er(),wl(223),Al==160&&(ml(160),wl(64),ml(196),wl(259),ds())}function Zn(){ql.startNonterminal("TreatExpr",Ll),tr(),wl(224),Al==249&&(vl(249),wl(30),vl(79),wl(259),yl(),ps()),ql.endNonterminal("TreatExpr",Ll)}function er(){nr(),wl(224),Al==249&&(ml(249),wl(30),ml(79),wl(259),ds())}function tr(){ql.startNonterminal("CastableExpr",Ll),rr(),wl(225),Al==90&&(vl(90),wl(30),vl(79),wl(253),yl(),fs()),ql.endNonterminal("CastableExpr",Ll)}function nr(){ir(),wl(225),Al==90&&(ml(90),wl(30),ml(79),wl(253),ls())}function rr(){ql.startNonterminal("CastExpr",Ll),sr(),wl(227),Al==89&&(vl(89),wl(30),vl(79),wl(253),yl(),fs()),ql.endNonterminal("CastExpr",Ll)}function ir(){or(),wl(227),Al==89&&(ml(89),wl(30),ml(79),wl(253),ls())}function sr(){ql.startNonterminal("UnaryExpr",Ll);for(;;){wl(265);if(Al!=40&&Al!=42)break;switch(Al){case 42:vl(42);break;default:vl(40)}}yl(),ur(),ql.endNonterminal("UnaryExpr",Ll)}function or(){for(;;){wl(265);if(Al!=40&&Al!=42)break;switch(Al){case 42:ml(42);break;default:ml(40)}}ar()}function ur(){ql.startNonterminal("ValueExpr",Ll);switch(Al){case 260:El(246);break;default:Cl=Al}switch(Cl){case 87812:case 123140:case 129284:case 141572:gr();break;case 35:Er();break;default:fr()}ql.endNonterminal("ValueExpr",Ll)}function ar(){switch(Al){case 260:El(246);break;default:Cl=Al}switch(Cl){case 87812:case 123140:case 129284:case 141572:yr();break;case 35:Sr();break;default:lr()}}function fr(){ql.startNonterminal("SimpleMapExpr",Ll),Nr();for(;;){if(Al!=26)break;vl(26),wl(264),yl(),Nr()}ql.endNonterminal("SimpleMapExpr",Ll)}function lr(){Cr();for(;;){if(Al!=26)break;ml(26),wl(264),Cr()}}function cr(){ql.startNonterminal("GeneralComp",Ll);switch(Al){case 60:vl(60);break;case 27:vl(27);break;case 54:vl(54);break;case 58:vl(58);break;case 61:vl(61);break;default:vl(62)}ql.endNonterminal("GeneralComp",Ll)}function hr(){switch(Al){case 60:ml(60);break;case 27:ml(27);break;case 54:ml(54);break;case 58:ml(58);break;case 61:ml(61);break;default:ml(62)}}function pr(){ql.startNonterminal("ValueComp",Ll);switch(Al){case 128:vl(128);break;case 186:vl(186);break;case 178:vl(178);break;case 172:vl(172);break;case 150:vl(150);break;default:vl(146)}ql.endNonterminal("ValueComp",Ll)}function dr(){switch(Al){case 128:ml(128);break;case 186:ml(186);break;case 178:ml(178);break;case 172:ml(172);break;case 150:ml(150);break;default:ml(146)}}function vr(){ql.startNonterminal("NodeComp",Ll);switch(Al){case 164:vl(164);break;case 57:vl(57);break;default:vl(63)}ql.endNonterminal("NodeComp",Ll)}function mr(){switch(Al){case 164:ml(164);break;case 57:ml(57);break;default:ml(63)}}function gr(){ql.startNonterminal("ValidateExpr",Ll),vl(260),wl(160);if(Al!=276)switch(Al){case 252:vl(252),wl(253),yl(),po();break;default:yl(),br()}wl(87),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("ValidateExpr",Ll)}function yr(){ml(260),wl(160);if(Al!=276)switch(Al){case 252:ml(252),wl(253),vo();break;default:wr()}wl(87),ml(276),wl(267),G(),ml(282)}function br(){ql.startNonterminal("ValidationMode",Ll);switch(Al){case 171:vl(171);break;default:vl(240)}ql.endNonterminal("ValidationMode",Ll)}function wr(){switch(Al){case 171:ml(171);break;default:ml(240)}}function Er(){ql.startNonterminal("ExtensionExpr",Ll);for(;;){yl(),xr(),wl(100);if(Al!=35)break}vl(276),wl(273),Al!=282&&(yl(),Q()),vl(282),ql.endNonterminal("ExtensionExpr",Ll)}function Sr(){for(;;){Tr(),wl(100);if(Al!=35)break}ml(276),wl(273),Al!=282&&G(),ml(282)}function xr(){ql.startNonterminal("Pragma",Ll),vl(35),Sl(250),Al==21&&vl(21),Oa(),Sl(10),Al==21&&(vl(21),Sl(0),vl(1)),Sl(5),vl(30),ql.endNonterminal("Pragma",Ll)}function Tr(){ml(35),Sl(250),Al==21&&ml(21),Ma(),Sl(10),Al==21&&(ml(21),Sl(0),ml(1)),Sl(5),ml(30)}function Nr(){ql.startNonterminal("PathExpr",Ll);switch(Al){case 46:vl(46),wl(283);switch(Al){case 25:case 26:case 27:case 37:case 38:case 40:case 41:case 42:case 49:case 53:case 57:case 58:case 60:case 61:case 62:case 63:case 69:case 87:case 99:case 205:case 232:case 247:case 273:case 279:case 280:case 281:case 282:break;default:yl(),kr()}break;case 47:vl(47),wl(263),yl(),kr();break;default:kr()}ql.endNonterminal("PathExpr",Ll)}function Cr(){switch(Al){case 46:ml(46),wl(283);switch(Al){case 25:case 26:case 27:case 37:case 38:case 40:case 41:case 42:case 49:case 53:case 57:case 58:case 60:case 61:case 62:case 63:case 69:case 87:case 99:case 205:case 232:case 247:case 273:case 279:case 280:case 281:case 282:break;default:Lr()}break;case 47:ml(47),wl(263),Lr();break;default:Lr()}}function kr(){ql.startNonterminal("RelativePathExpr",Ll),Ar();for(;;){switch(Al){case 26:El(264);break;default:Cl=Al}if(Cl!=25&&Cl!=27&&Cl!=37&&Cl!=38&&Cl!=40&&Cl!=41&&Cl!=42&&Cl!=46&&Cl!=47&&Cl!=49&&Cl!=53&&Cl!=54&&Cl!=57&&Cl!=58&&Cl!=60&&Cl!=61&&Cl!=62&&Cl!=63&&Cl!=69&&Cl!=70&&Cl!=75&&Cl!=79&&Cl!=80&&Cl!=81&&Cl!=84&&Cl!=87&&Cl!=88&&Cl!=89&&Cl!=90&&Cl!=94&&Cl!=99&&Cl!=105&&Cl!=109&&Cl!=113&&Cl!=118&&Cl!=122&&Cl!=123&&Cl!=126&&Cl!=128&&Cl!=131&&Cl!=137&&Cl!=146&&Cl!=148&&Cl!=150&&Cl!=151&&Cl!=160&&Cl!=162&&Cl!=163&&Cl!=164&&Cl!=172&&Cl!=174&&Cl!=178&&Cl!=180&&Cl!=181&&Cl!=186&&Cl!=198&&Cl!=200&&Cl!=201&&Cl!=205&&Cl!=220&&Cl!=224&&Cl!=232&&Cl!=236&&Cl!=237&&Cl!=247&&Cl!=248&&Cl!=249&&Cl!=254&&Cl!=266&&Cl!=270&&Cl!=273&&Cl!=279&&Cl!=280&&Cl!=281&&Cl!=282&&Cl!=23578&&Cl!=24090){Cl=pl(2,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{switch(Al){case 46:ml(46);break;case 47:ml(47);break;default:ml(26)}wl(263),Or(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(2,Ll,Cl)}}if(Cl!=-1&&Cl!=46&&Cl!=47)break;switch(Al){case 46:vl(46);break;case 47:vl(47);break;default:vl(26)}wl(263),yl(),Ar()}ql.endNonterminal("RelativePathExpr",Ll)}function Lr(){Or();for(;;){switch(Al){case 26:El(264);break;default:Cl=Al}if(Cl!=25&&Cl!=27&&Cl!=37&&Cl!=38&&Cl!=40&&Cl!=41&&Cl!=42&&Cl!=46&&Cl!=47&&Cl!=49&&Cl!=53&&Cl!=54&&Cl!=57&&Cl!=58&&Cl!=60&&Cl!=61&&Cl!=62&&Cl!=63&&Cl!=69&&Cl!=70&&Cl!=75&&Cl!=79&&Cl!=80&&Cl!=81&&Cl!=84&&Cl!=87&&Cl!=88&&Cl!=89&&Cl!=90&&Cl!=94&&Cl!=99&&Cl!=105&&Cl!=109&&Cl!=113&&Cl!=118&&Cl!=122&&Cl!=123&&Cl!=126&&Cl!=128&&Cl!=131&&Cl!=137&&Cl!=146&&Cl!=148&&Cl!=150&&Cl!=151&&Cl!=160&&Cl!=162&&Cl!=163&&Cl!=164&&Cl!=172&&Cl!=174&&Cl!=178&&Cl!=180&&Cl!=181&&Cl!=186&&Cl!=198&&Cl!=200&&Cl!=201&&Cl!=205&&Cl!=220&&Cl!=224&&Cl!=232&&Cl!=236&&Cl!=237&&Cl!=247&&Cl!=248&&Cl!=249&&Cl!=254&&Cl!=266&&Cl!=270&&Cl!=273&&Cl!=279&&Cl!=280&&Cl!=281&&Cl!=282&&Cl!=23578&&Cl!=24090){Cl=pl(2,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{switch(Al){case 46:ml(46);break;case 47:ml(47);break;default:ml(26)}wl(263),Or(),hl(2,t,-1);continue}catch(a){kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(2,t,-2);break}}}if(Cl!=-1&&Cl!=46&&Cl!=47)break;switch(Al){case 46:ml(46);break;case 47:ml(47);break;default:ml(26)}wl(263),Or()}}function Ar(){ql.startNonterminal("StepExpr",Ll);switch(Al){case 82:El(282);break;case 121:El(280);break;case 184:case 216:El(279);break;case 96:case 119:case 202:case 244:case 256:El(245);break;case 124:case 152:case 165:case 243:case 253:El(238);break;case 73:case 74:case 93:case 111:case 112:case 135:case 136:case 206:case 212:case 213:case 229:El(244);break;case 6:case 70:case 72:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 86:case 88:case 89:case 90:case 91:case 94:case 97:case 98:case 101:case 102:case 103:case 104:case 105:case 106:case 108:case 109:case 110:case 113:case 118:case 120:case 122:case 123:case 125:case 126:case 128:case 129:case 131:case 132:case 133:case 134:case 137:case 141:case 145:case 146:case 148:case 150:case 151:case 153:case 154:case 155:case 159:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 174:case 176:case 178:case 180:case 181:case 182:case 185:case 186:case 191:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 218:case 219:case 220:case 221:case 222:case 224:case 225:case 226:case 227:case 228:case 234:case 235:case 236:case 237:case 240:case 248:case 249:case 250:case 251:case 252:case 254:case 257:case 260:case 261:case 262:case 263:case 266:case 267:case 270:case 274:El(242);break;default:Cl=Al}if(Cl==17486||Cl==17575||Cl==17602||Cl==35922||Cl==35961||Cl==36024||Cl==36056||Cl==38482||Cl==38521||Cl==38584||Cl==38616||Cl==40530||Cl==40569||Cl==40632||Cl==40664||Cl==41042||Cl==41081||Cl==41144||Cl==41176||Cl==41554||Cl==41593||Cl==41656||Cl==41688||Cl==43090||Cl==43129||Cl==43192||Cl==43224||Cl==45138||Cl==45177||Cl==45240||Cl==45272||Cl==45650||Cl==45689||Cl==45752||Cl==45784||Cl==46162||Cl==46201||Cl==46264||Cl==46296||Cl==48210||Cl==48249||Cl==48312||Cl==48344||Cl==53842||Cl==53881||Cl==53944||Cl==53976||Cl==55890||Cl==55929||Cl==55992||Cl==56024||Cl==57938||Cl==57977||Cl==58040||Cl==58072||Cl==60498||Cl==60537||Cl==60600||Cl==60632||Cl==62546||Cl==62585||Cl==62648||Cl==62680||Cl==63058||Cl==63097||Cl==63160||Cl==63192||Cl==64594||Cl==64633||Cl==64696||Cl==64728||Cl==65618||Cl==65657||Cl==65720||Cl==65752||Cl==67154||Cl==67193||Cl==67256||Cl==67288||Cl==70226||Cl==70265||Cl==70328||Cl==70360||Cl==74834||Cl==74873||Cl==74936||Cl==74968||Cl==75858||Cl==75897||Cl==75960||Cl==75992||Cl==76882||Cl==76921||Cl==76984||Cl==77016||Cl==77394||Cl==77433||Cl==77496||Cl==77528||Cl==82002||Cl==82041||Cl==82104||Cl==82136||Cl==83026||Cl==83065||Cl==83128||Cl==83160||Cl==83538||Cl==83577||Cl==83640||Cl==83672||Cl==84050||Cl==84089||Cl==84152||Cl==84184||Cl==88146||Cl==88185||Cl==88248||Cl==88280||Cl==89170||Cl==89209||Cl==89272||Cl==89304||Cl==91218||Cl==91257||Cl==91320||Cl==91352||Cl==92242||Cl==92281||Cl==92344||Cl==92376||Cl==92754||Cl==92793||Cl==92856||Cl==92888||Cl==95314||Cl==95353||Cl==95416||Cl==95448||Cl==101458||Cl==101497||Cl==101560||Cl==101592||Cl==102482||Cl==102521||Cl==102584||Cl==102616||Cl==102994||Cl==103033||Cl==103096||Cl==103128||Cl==112722||Cl==112761||Cl==112824||Cl==112856||Cl==114770||Cl==114809||Cl==114872||Cl==114904||Cl==120914||Cl==120953||Cl==121016||Cl==121048||Cl==121426||Cl==121465||Cl==121528||Cl==121560||Cl==127058||Cl==127097||Cl==127160||Cl==127192||Cl==127570||Cl==127609||Cl==127672||Cl==127704||Cl==130130||Cl==130169||Cl==130232||Cl==130264||Cl==136274||Cl==136313||Cl==136376||Cl==136408||Cl==138322||Cl==138361||Cl==138424||Cl==138456){Cl=pl(3,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{Qr(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(3,Ll,Cl)}}switch(Cl){case-1:case 8:case 9:case 10:case 11:case 31:case 32:case 34:case 44:case 54:case 55:case 59:case 68:case 276:case 278:case 3154:case 3193:case 9912:case 9944:case 14854:case 14918:case 14920:case 14921:case 14922:case 14923:case 14926:case 14927:case 14928:case 14929:case 14930:case 14931:case 14932:case 14933:case 14934:case 14936:case 14937:case 14938:case 14939:case 14941:case 14942:case 14944:case 14945:case 14946:case 14949:case 14950:case 14951:case 14952:case 14953:case 14954:case 14956:case 14957:case 14958:case 14959:case 14960:case 14961:case 14966:case 14967:case 14968:case 14969:case 14970:case 14971:case 14972:case 14973:case 14974:case 14976:case 14977:case 14979:case 14980:case 14981:case 14982:case 14983:case 14984:case 14985:case 14989:case 14993:case 14994:case 14996:case 14998:case 14999:case 15e3:case 15001:case 15002:case 15003:case 15007:case 15008:case 15009:case 15010:case 15011:case 15012:case 15013:case 15015:case 15018:case 15019:case 15020:case 15022:case 15024:case 15026:case 15028:case 15029:case 15030:case 15032:case 15033:case 15034:case 15039:case 15040:case 15042:case 15046:case 15047:case 15048:case 15049:case 15050:case 15051:case 15054:case 15060:case 15061:case 15064:case 15066:case 15067:case 15068:case 15069:case 15070:case 15072:case 15073:case 15074:case 15075:case 15076:case 15077:case 15082:case 15083:case 15084:case 15085:case 15088:case 15091:case 15092:case 15096:case 15097:case 15098:case 15099:case 15100:case 15101:case 15102:case 15104:case 15105:case 15108:case 15109:case 15110:case 15111:case 15114:case 15115:case 15118:case 15122:case 17414:case 17478:case 17480:case 17481:case 17482:case 17483:case 17487:case 17488:case 17489:case 17491:case 17492:case 17493:case 17494:case 17496:case 17497:case 17498:case 17499:case 17501:case 17502:case 17505:case 17506:case 17509:case 17510:case 17511:case 17512:case 17513:case 17514:case 17516:case 17517:case 17518:case 17519:case 17520:case 17521:case 17526:case 17527:case 17530:case 17531:case 17533:case 17534:case 17536:case 17537:case 17539:case 17540:case 17541:case 17542:case 17543:case 17544:case 17545:case 17549:case 17553:case 17554:case 17556:case 17558:case 17559:case 17561:case 17562:case 17563:case 17567:case 17568:case 17569:case 17570:case 17571:case 17572:case 17578:case 17579:case 17580:case 17582:case 17584:case 17586:case 17588:case 17589:case 17590:case 17592:case 17594:case 17600:case 17606:case 17607:case 17608:case 17609:case 17610:case 17611:case 17614:case 17620:case 17621:case 17626:case 17627:case 17628:case 17629:case 17630:case 17632:case 17633:case 17636:case 17637:case 17642:case 17643:case 17644:case 17645:case 17648:case 17656:case 17657:case 17658:case 17659:case 17660:case 17662:case 17664:case 17665:case 17668:case 17669:case 17670:case 17671:case 17674:case 17675:case 17678:case 17682:case 36946:case 36985:case 37048:case 37080:case 37458:case 37497:case 37560:case 37592:case 37970:case 38009:case 38072:case 38104:case 40018:case 40057:case 42066:case 42105:case 42168:case 42200:case 42578:case 42617:case 42680:case 42712:case 43602:case 43641:case 43704:case 43736:case 44114:case 44153:case 44216:case 44248:case 46674:case 46713:case 46776:case 46808:case 47698:case 47737:case 47800:case 47832:case 49234:case 49273:case 49336:case 49368:case 49746:case 49785:case 49848:case 49880:case 50258:case 50297:case 50360:case 50392:case 51794:case 51833:case 51896:case 51928:case 52306:case 52345:case 52408:case 52440:case 52818:case 52857:case 52920:case 52952:case 53330:case 53369:case 53432:case 53464:case 54354:case 54393:case 54456:case 54488:case 55378:case 55417:case 55480:case 55512:case 56402:case 56441:case 56504:case 56536:case 56914:case 56953:case 57016:case 57048:case 57426:case 57465:case 57528:case 57560:case 61010:case 61049:case 61112:case 61144:case 61522:case 61561:case 61624:case 61656:case 62034:case 62073:case 62136:case 62168:case 63570:case 63609:case 63672:case 63704:case 64082:case 64121:case 64184:case 64216:case 66130:case 66169:case 66232:case 66264:case 67666:case 67705:case 67768:case 67800:case 68178:case 68217:case 68280:case 68312:case 68690:case 68729:case 68792:case 68824:case 69202:case 69241:case 69304:case 69336:case 69714:case 69753:case 69816:case 69848:case 72274:case 72313:case 72376:case 72408:case 74322:case 74361:case 74424:case 74456:case 77906:case 77945:case 78008:case 78040:case 78418:case 78457:case 78520:case 78552:case 78930:case 78969:case 79032:case 79064:case 79442:case 79481:case 79544:case 79576:case 81490:case 81529:case 81592:case 81624:case 82514:case 82553:case 82616:case 82648:case 84562:case 84601:case 84664:case 84696:case 85586:case 85625:case 87122:case 87161:case 87224:case 87256:case 87634:case 87673:case 87736:case 87768:case 90194:case 90233:case 90296:case 90328:case 93266:case 93305:case 93368:case 93400:case 94290:case 94329:case 94392:case 94424:case 94802:case 94841:case 94904:case 94936:case 97874:case 97913:case 97976:case 98008:case 98386:case 98425:case 98488:case 98520:case 99410:case 99449:case 101970:case 102009:case 102072:case 102104:case 103506:case 103545:case 103608:case 103640:case 104018:case 104057:case 104120:case 104152:case 105554:case 105593:case 105656:case 105688:case 108626:case 108665:case 108728:case 108760:case 109138:case 109177:case 109240:case 109272:case 110674:case 110713:case 110776:case 110808:case 111698:case 111737:case 111800:case 111832:case 112210:case 112249:case 112312:case 112344:case 113234:case 113273:case 113336:case 113368:case 113746:case 113785:case 113848:case 113880:case 115282:case 115321:case 115384:case 115416:case 115794:case 115833:case 115896:case 115928:case 116306:case 116345:case 116408:case 116440:case 116818:case 116857:case 116920:case 116952:case 117330:case 117369:case 117432:case 117464:case 119890:case 119929:case 119992:case 120024:case 120402:case 120441:case 120504:case 120536:case 122962:case 123001:case 123064:case 123096:case 124498:case 124537:case 124600:case 124632:case 125010:case 125049:case 125112:case 125144:case 128082:case 128121:case 128184:case 128216:case 128594:case 128633:case 128696:case 128728:case 129106:case 129145:case 129208:case 129240:case 129618:case 129657:case 129720:case 129752:case 131154:case 131193:case 131256:case 131288:case 131666:case 131705:case 131768:case 131800:case 133202:case 133241:case 133304:case 133336:case 133714:case 133753:case 133816:case 133848:case 134226:case 134265:case 134328:case 134360:case 134738:case 134777:case 134840:case 134872:case 136786:case 136825:case 136888:case 136920:case 140370:case 140409:case 140472:case 140504:case 141394:case 141408:case 141431:case 141433:case 141496:case 141514:case 141528:case 141556:case 141568:Kr();break;default:Mr()}ql.endNonterminal("StepExpr",Ll)}function Or(){switch(Al){case 82:El(282);break;case 121:El(280);break;case 184:case 216:El(279);break;case 96:case 119:case 202:case 244:case 256:El(245);break;case 124:case 152:case 165:case 243:case 253:El(238);break;case 73:case 74:case 93:case 111:case 112:case 135:case 136:case 206:case 212:case 213:case 229:El(244);break;case 6:case 70:case 72:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 86:case 88:case 89:case 90:case 91:case 94:case 97:case 98:case 101:case 102:case 103:case 104:case 105:case 106:case 108:case 109:case 110:case 113:case 118:case 120:case 122:case 123:case 125:case 126:case 128:case 129:case 131:case 132:case 133:case 134:case 137:case 141:case 145:case 146:case 148:case 150:case 151:case 153:case 154:case 155:case 159:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 174:case 176:case 178:case 180:case 181:case 182:case 185:case 186:case 191:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 218:case 219:case 220:case 221:case 222:case 224:case 225:case 226:case 227:case 228:case 234:case 235:case 236:case 237:case 240:case 248:case 249:case 250:case 251:case 252:case 254:case 257:case 260:case 261:case 262:case 263:case 266:case 267:case 270:case 274:El(242);break;default:Cl=Al}if(Cl==17486||Cl==17575||Cl==17602||Cl==35922||Cl==35961||Cl==36024||Cl==36056||Cl==38482||Cl==38521||Cl==38584||Cl==38616||Cl==40530||Cl==40569||Cl==40632||Cl==40664||Cl==41042||Cl==41081||Cl==41144||Cl==41176||Cl==41554||Cl==41593||Cl==41656||Cl==41688||Cl==43090||Cl==43129||Cl==43192||Cl==43224||Cl==45138||Cl==45177||Cl==45240||Cl==45272||Cl==45650||Cl==45689||Cl==45752||Cl==45784||Cl==46162||Cl==46201||Cl==46264||Cl==46296||Cl==48210||Cl==48249||Cl==48312||Cl==48344||Cl==53842||Cl==53881||Cl==53944||Cl==53976||Cl==55890||Cl==55929||Cl==55992||Cl==56024||Cl==57938||Cl==57977||Cl==58040||Cl==58072||Cl==60498||Cl==60537||Cl==60600||Cl==60632||Cl==62546||Cl==62585||Cl==62648||Cl==62680||Cl==63058||Cl==63097||Cl==63160||Cl==63192||Cl==64594||Cl==64633||Cl==64696||Cl==64728||Cl==65618||Cl==65657||Cl==65720||Cl==65752||Cl==67154||Cl==67193||Cl==67256||Cl==67288||Cl==70226||Cl==70265||Cl==70328||Cl==70360||Cl==74834||Cl==74873||Cl==74936||Cl==74968||Cl==75858||Cl==75897||Cl==75960||Cl==75992||Cl==76882||Cl==76921||Cl==76984||Cl==77016||Cl==77394||Cl==77433||Cl==77496||Cl==77528||Cl==82002||Cl==82041||Cl==82104||Cl==82136||Cl==83026||Cl==83065||Cl==83128||Cl==83160||Cl==83538||Cl==83577||Cl==83640||Cl==83672||Cl==84050||Cl==84089||Cl==84152||Cl==84184||Cl==88146||Cl==88185||Cl==88248||Cl==88280||Cl==89170||Cl==89209||Cl==89272||Cl==89304||Cl==91218||Cl==91257||Cl==91320||Cl==91352||Cl==92242||Cl==92281||Cl==92344||Cl==92376||Cl==92754||Cl==92793||Cl==92856||Cl==92888||Cl==95314||Cl==95353||Cl==95416||Cl==95448||Cl==101458||Cl==101497||Cl==101560||Cl==101592||Cl==102482||Cl==102521||Cl==102584||Cl==102616||Cl==102994||Cl==103033||Cl==103096||Cl==103128||Cl==112722||Cl==112761||Cl==112824||Cl==112856||Cl==114770||Cl==114809||Cl==114872||Cl==114904||Cl==120914||Cl==120953||Cl==121016||Cl==121048||Cl==121426||Cl==121465||Cl==121528||Cl==121560||Cl==127058||Cl==127097||Cl==127160||Cl==127192||Cl==127570||Cl==127609||Cl==127672||Cl==127704||Cl==130130||Cl==130169||Cl==130232||Cl==130264||Cl==136274||Cl==136313||Cl==136376||Cl==136408||Cl==138322||Cl==138361||Cl==138424||Cl==138456){Cl=pl(3,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{Qr(),hl(3,t,-1),Cl=-3}catch(a){Cl=-2,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(3,t,-2)}}}switch(Cl){case-1:case 8:case 9:case 10:case 11:case 31:case 32:case 34:case 44:case 54:case 55:case 59:case 68:case 276:case 278:case 3154:case 3193:case 9912:case 9944:case 14854:case 14918:case 14920:case 14921:case 14922:case 14923:case 14926:case 14927:case 14928:case 14929:case 14930:case 14931:case 14932:case 14933:case 14934:case 14936:case 14937:case 14938:case 14939:case 14941:case 14942:case 14944:case 14945:case 14946:case 14949:case 14950:case 14951:case 14952:case 14953:case 14954:case 14956:case 14957:case 14958:case 14959:case 14960:case 14961:case 14966:case 14967:case 14968:case 14969:case 14970:case 14971:case 14972:case 14973:case 14974:case 14976:case 14977:case 14979:case 14980:case 14981:case 14982:case 14983:case 14984:case 14985:case 14989:case 14993:case 14994:case 14996:case 14998:case 14999:case 15e3:case 15001:case 15002:case 15003:case 15007:case 15008:case 15009:case 15010:case 15011:case 15012:case 15013:case 15015:case 15018:case 15019:case 15020:case 15022:case 15024:case 15026:case 15028:case 15029:case 15030:case 15032:case 15033:case 15034:case 15039:case 15040:case 15042:case 15046:case 15047:case 15048:case 15049:case 15050:case 15051:case 15054:case 15060:case 15061:case 15064:case 15066:case 15067:case 15068:case 15069:case 15070:case 15072:case 15073:case 15074:case 15075:case 15076:case 15077:case 15082:case 15083:case 15084:case 15085:case 15088:case 15091:case 15092:case 15096:case 15097:case 15098:case 15099:case 15100:case 15101:case 15102:case 15104:case 15105:case 15108:case 15109:case 15110:case 15111:case 15114:case 15115:case 15118:case 15122:case 17414:case 17478:case 17480:case 17481:case 17482:case 17483:case 17487:case 17488:case 17489:case 17491:case 17492:case 17493:case 17494:case 17496:case 17497:case 17498:case 17499:case 17501:case 17502:case 17505:case 17506:case 17509:case 17510:case 17511:case 17512:case 17513:case 17514:case 17516:case 17517:case 17518:case 17519:case 17520:case 17521:case 17526:case 17527:case 17530:case 17531:case 17533:case 17534:case 17536:case 17537:case 17539:case 17540:case 17541:case 17542:case 17543:case 17544:case 17545:case 17549:case 17553:case 17554:case 17556:case 17558:case 17559:case 17561:case 17562:case 17563:case 17567:case 17568:case 17569:case 17570:case 17571:case 17572:case 17578:case 17579:case 17580:case 17582:case 17584:case 17586:case 17588:case 17589:case 17590:case 17592:case 17594:case 17600:case 17606:case 17607:case 17608:case 17609:case 17610:case 17611:case 17614:case 17620:case 17621:case 17626:case 17627:case 17628:case 17629:case 17630:case 17632:case 17633:case 17636:case 17637:case 17642:case 17643:case 17644:case 17645:case 17648:case 17656:case 17657:case 17658:case 17659:case 17660:case 17662:case 17664:case 17665:case 17668:case 17669:case 17670:case 17671:case 17674:case 17675:case 17678:case 17682:case 36946:case 36985:case 37048:case 37080:case 37458:case 37497:case 37560:case 37592:case 37970:case 38009:case 38072:case 38104:case 40018:case 40057:case 42066:case 42105:case 42168:case 42200:case 42578:case 42617:case 42680:case 42712:case 43602:case 43641:case 43704:case 43736:case 44114:case 44153:case 44216:case 44248:case 46674:case 46713:case 46776:case 46808:case 47698:case 47737:case 47800:case 47832:case 49234:case 49273:case 49336:case 49368:case 49746:case 49785:case 49848:case 49880:case 50258:case 50297:case 50360:case 50392:case 51794:case 51833:case 51896:case 51928:case 52306:case 52345:case 52408:case 52440:case 52818:case 52857:case 52920:case 52952:case 53330:case 53369:case 53432:case 53464:case 54354:case 54393:case 54456:case 54488:case 55378:case 55417:case 55480:case 55512:case 56402:case 56441:case 56504:case 56536:case 56914:case 56953:case 57016:case 57048:case 57426:case 57465:case 57528:case 57560:case 61010:case 61049:case 61112:case 61144:case 61522:case 61561:case 61624:case 61656:case 62034:case 62073:case 62136:case 62168:case 63570:case 63609:case 63672:case 63704:case 64082:case 64121:case 64184:case 64216:case 66130:case 66169:case 66232:case 66264:case 67666:case 67705:case 67768:case 67800:case 68178:case 68217:case 68280:case 68312:case 68690:case 68729:case 68792:case 68824:case 69202:case 69241:case 69304:case 69336:case 69714:case 69753:case 69816:case 69848:case 72274:case 72313:case 72376:case 72408:case 74322:case 74361:case 74424:case 74456:case 77906:case 77945:case 78008:case 78040:case 78418:case 78457:case 78520:case 78552:case 78930:case 78969:case 79032:case 79064:case 79442:case 79481:case 79544:case 79576:case 81490:case 81529:case 81592:case 81624:case 82514:case 82553:case 82616:case 82648:case 84562:case 84601:case 84664:case 84696:case 85586:case 85625:case 87122:case 87161:case 87224:case 87256:case 87634:case 87673:case 87736:case 87768:case 90194:case 90233:case 90296:case 90328:case 93266:case 93305:case 93368:case 93400:case 94290:case 94329:case 94392:case 94424:case 94802:case 94841:case 94904:case 94936:case 97874:case 97913:case 97976:case 98008:case 98386:case 98425:case 98488:case 98520:case 99410:case 99449:case 101970:case 102009:case 102072:case 102104:case 103506:case 103545:case 103608:case 103640:case 104018:case 104057:case 104120:case 104152:case 105554:case 105593:case 105656:case 105688:case 108626:case 108665:case 108728:case 108760:case 109138:case 109177:case 109240:case 109272:case 110674:case 110713:case 110776:case 110808:case 111698:case 111737:case 111800:case 111832:case 112210:case 112249:case 112312:case 112344:case 113234:case 113273:case 113336:case 113368:case 113746:case 113785:case 113848:case 113880:case 115282:case 115321:case 115384:case 115416:case 115794:case 115833:case 115896:case 115928:case 116306:case 116345:case 116408:case 116440:case 116818:case 116857:case 116920:case 116952:case 117330:case 117369:case 117432:case 117464:case 119890:case 119929:case 119992:case 120024:case 120402:case 120441:case 120504:case 120536:case 122962:case 123001:case 123064:case 123096:case 124498:case 124537:case 124600:case 124632:case 125010:case 125049:case 125112:case 125144:case 128082:case 128121:case 128184:case 128216:case 128594:case 128633:case 128696:case 128728:case 129106:case 129145:case 129208:case 129240:case 129618:case 129657:case 129720:case 129752:case 131154:case 131193:case 131256:case 131288:case 131666:case 131705:case 131768:case 131800:case 133202:case 133241:case 133304:case 133336:case 133714:case 133753:case 133816:case 133848:case 134226:case 134265:case 134328:case 134360:case 134738:case 134777:case 134840:case 134872:case 136786:case 136825:case 136888:case 136920:case 140370:case 140409:case 140472:case 140504:case 141394:case 141408:case 141431:case 141433:case 141496:case 141514:case 141528:case 141556:case 141568:Qr();break;case-3:break;default:_r()}}function Mr(){ql.startNonterminal("AxisStep",Ll);switch(Al){case 73:case 74:case 206:case 212:case 213:El(240);break;default:Cl=Al}switch(Cl){case 45:case 26185:case 26186:case 26318:case 26324:case 26325:Ir();break;default:Dr()}wl(236),yl(),Zr(),ql.endNonterminal("AxisStep",Ll)}function _r(){switch(Al){case 73:case 74:case 206:case 212:case 213:El(240);break;default:Cl=Al}switch(Cl){case 45:case 26185:case 26186:case 26318:case 26324:case 26325:qr();break;default:Pr()}wl(236),ei()}function Dr(){ql.startNonterminal("ForwardStep",Ll);switch(Al){case 82:El(243);break;case 93:case 111:case 112:case 135:case 136:case 229:El(240);break;default:Cl=Al}switch(Cl){case 26194:case 26205:case 26223:case 26224:case 26247:case 26248:case 26341:Hr(),wl(255),yl(),Xr();break;default:jr()}ql.endNonterminal("ForwardStep",Ll)}function Pr(){switch(Al){case 82:El(243);break;case 93:case 111:case 112:case 135:case 136:case 229:El(240);break;default:Cl=Al}switch(Cl){case 26194:case 26205:case 26223:case 26224:case 26247:case 26248:case 26341:Br(),wl(255),Vr();break;default:Fr()}}function Hr(){ql.startNonterminal("ForwardAxis",Ll);switch(Al){case 93:vl(93),wl(26),vl(51);break;case 111:vl(111),wl(26),vl(51);break;case 82:vl(82),wl(26),vl(51);break;case 229:vl(229),wl(26),vl(51);break;case 112:vl(112),wl(26),vl(51);break;case 136:vl(136),wl(26),vl(51);break;default:vl(135),wl(26),vl(51)}ql.endNonterminal("ForwardAxis",Ll)}function Br(){switch(Al){case 93:ml(93),wl(26),ml(51);break;case 111:ml(111),wl(26),ml(51);break;case 82:ml(82),wl(26),ml(51);break;case 229:ml(229),wl(26),ml(51);break;case 112:ml(112),wl(26),ml(51);break;case 136:ml(136),wl(26),ml(51);break;default:ml(135),wl(26),ml(51)}}function jr(){ql.startNonterminal("AbbrevForwardStep",Ll),Al==66&&vl(66),wl(255),yl(),Xr(),ql.endNonterminal("AbbrevForwardStep",Ll)}function Fr(){Al==66&&ml(66),wl(255),Vr()}function Ir(){ql.startNonterminal("ReverseStep",Ll);switch(Al){case 45:zr();break;default:Rr(),wl(255),yl(),Xr()}ql.endNonterminal("ReverseStep",Ll)}function qr(){switch(Al){case 45:Wr();break;default:Ur(),wl(255),Vr()}}function Rr(){ql.startNonterminal("ReverseAxis",Ll);switch(Al){case 206:vl(206),wl(26),vl(51);break;case 73:vl(73),wl(26),vl(51);break;case 213:vl(213),wl(26),vl(51);break;case 212:vl(212),wl(26),vl(51);break;default:vl(74),wl(26),vl(51)}ql.endNonterminal("ReverseAxis",Ll)}function Ur(){switch(Al){case 206:ml(206),wl(26),ml(51);break;case 73:ml(73),wl(26),ml(51);break;case 213:ml(213),wl(26),ml(51);break;case 212:ml(212),wl(26),ml(51);break;default:ml(74),wl(26),ml(51)}}function zr(){ql.startNonterminal("AbbrevReverseStep",Ll),vl(45),ql.endNonterminal("AbbrevReverseStep",Ll)}function Wr(){ml(45)}function Xr(){ql.startNonterminal("NodeTest",Ll);switch(Al){case 78:case 82:case 96:case 120:case 121:case 167:case 185:case 191:case 194:case 216:case 226:case 227:case 244:El(239);break;default:Cl=Al}switch(Cl){case 17486:case 17490:case 17504:case 17528:case 17529:case 17575:case 17593:case 17599:case 17602:case 17624:case 17634:case 17635:case 17652:Ms();break;default:$r()}ql.endNonterminal("NodeTest",Ll)}function Vr(){switch(Al){case 78:case 82:case 96:case 120:case 121:case 167:case 185:case 191:case 194:case 216:case 226:case 227:case 244:El(239);break;default:Cl=Al}switch(Cl){case 17486:case 17490:case 17504:case 17528:case 17529:case 17575:case 17593:case 17599:case 17602:case 17624:case 17634:case 17635:case 17652:_s();break;default:Jr()}}function $r(){ql.startNonterminal("NameTest",Ll);switch(Al){case 5:vl(5);break;default:Oa()}ql.endNonterminal("NameTest",Ll)}function Jr(){switch(Al){case 5:ml(5);break;default:Ma()}}function Kr(){ql.startNonterminal("PostfixExpr",Ll),Zf();for(;;){wl(239);if(Al!=34&&Al!=68)break;switch(Al){case 68:yl(),ti();break;default:yl(),Gr()}}ql.endNonterminal("PostfixExpr",Ll)}function Qr(){el();for(;;){wl(239);if(Al!=34&&Al!=68)break;switch(Al){case 68:ni();break;default:Yr()}}}function Gr(){ql.startNonterminal("ArgumentList",Ll),vl(34),wl(275);if(Al!=37){yl(),Ei();for(;;){wl(101);if(Al!=41)break;vl(41),wl(270),yl(),Ei()}}vl(37),ql.endNonterminal("ArgumentList",Ll)}function Yr(){ml(34),wl(275);if(Al!=37){Si();for(;;){wl(101);if(Al!=41)break;ml(41),wl(270),Si()}}ml(37)}function Zr(){ql.startNonterminal("PredicateList",Ll);for(;;){wl(236);if(Al!=68)break;yl(),ti()}ql.endNonterminal("PredicateList",Ll)}function ei(){for(;;){wl(236);if(Al!=68)break;ni()}}function ti(){ql.startNonterminal("Predicate",Ll),vl(68),wl(267),yl(),Q(),vl(69),ql.endNonterminal("Predicate",Ll)}function ni(){ml(68),wl(267),G(),ml(69)}function ri(){ql.startNonterminal("Literal",Ll);switch(Al){case 11:vl(11);break;default:si()}ql.endNonterminal("Literal",Ll)}function ii(){switch(Al){case 11:ml(11);break;default:oi()}}function si(){ql.startNonterminal("NumericLiteral",Ll);switch(Al){case 8:vl(8);break;case 9:vl(9);break;default:vl(10)}ql.endNonterminal("NumericLiteral",Ll)}function oi(){switch(Al){case 8:ml(8);break;case 9:ml(9);break;default:ml(10)}}function ui(){ql.startNonterminal("VarRef",Ll),vl(31),wl(253),yl(),fi(),ql.endNonterminal("VarRef",Ll)}function ai(){ml(31),wl(253),li()}function fi(){ql.startNonterminal("VarName",Ll),Oa(),ql.endNonterminal("VarName",Ll)}function li(){Ma()}function ci(){ql.startNonterminal("ParenthesizedExpr",Ll),vl(34),wl(269),Al!=37&&(yl(),Q()),vl(37),ql.endNonterminal("ParenthesizedExpr",Ll)}function hi(){ml(34),wl(269),Al!=37&&G(),ml(37)}function pi(){ql.startNonterminal("ContextItemExpr",Ll),vl(44),ql.endNonterminal("ContextItemExpr",Ll)}function di(){ml(44)}function vi(){ql.startNonterminal("OrderedExpr",Ll),vl(202),wl(87),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("OrderedExpr",Ll)}function mi(){ml(202),wl(87),ml(276),wl(267),G(),ml(282)}function gi(){ql.startNonterminal("UnorderedExpr",Ll),vl(256),wl(87),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("UnorderedExpr",Ll)}function yi(){ml(256),wl(87),ml(276),wl(267),G(),ml(282)}function bi(){ql.startNonterminal("FunctionCall",Ll),_a(),wl(22),yl(),Gr(),ql.endNonterminal("FunctionCall",Ll)}function wi(){Da(),wl(22),Yr()}function Ei(){ql.startNonterminal("Argument",Ll);switch(Al){case 64:xi();break;default:Nf()}ql.endNonterminal("Argument",Ll)}function Si(){switch(Al){case 64:Ti();break;default:Cf()}}function xi(){ql.startNonterminal("ArgumentPlaceholder",Ll),vl(64),ql.endNonterminal("ArgumentPlaceholder",Ll)}function Ti(){ml(64)}function Ni(){ql.startNonterminal("Constructor",Ll);switch(Al){case 54:case 55:case 59:ki();break;default:Xi()}ql.endNonterminal("Constructor",Ll)}function Ci(){switch(Al){case 54:case 55:case 59:Li();break;default:Vi()}}function ki(){ql.startNonterminal("DirectConstructor",Ll);switch(Al){case 54:Ai();break;case 55:Ri();break;default:zi()}ql.endNonterminal("DirectConstructor",Ll)}function Li(){switch(Al){case 54:Oi();break;case 55:Ui();break;default:Wi()}}function Ai(){ql.startNonterminal("DirElemConstructor",Ll),vl(54),Sl(4),vl(20),Mi();switch(Al){case 48:vl(48);break;default:vl(61);for(;;){Sl(174);if(Al==56)break;Ii()}vl(56),Sl(4),vl(20),Sl(12),Al==21&&vl(21),Sl(8),vl(61)}ql.endNonterminal("DirElemConstructor",Ll)}function Oi(){ml(54),Sl(4),ml(20),_i();switch(Al){case 48:ml(48);break;default:ml(61);for(;;){Sl(174);if(Al==56)break;qi()}ml(56),Sl(4),ml(20),Sl(12),Al==21&&ml(21),Sl(8),ml(61)}}function Mi(){ql.startNonterminal("DirAttributeList",Ll);for(;;){Sl(19);if(Al!=21)break;vl(21),Sl(91),Al==20&&(vl(20),Sl(11),Al==21&&vl(21),Sl(7),vl(60),Sl(18),Al==21&&vl(21),Di())}ql.endNonterminal("DirAttributeList",Ll)}function _i(){for(;;){Sl(19);if(Al!=21)break;ml(21),Sl(91),Al==20&&(ml(20),Sl(11),Al==21&&ml(21),Sl(7),ml(60),Sl(18),Al==21&&ml(21),Pi())}}function Di(){ql.startNonterminal("DirAttributeValue",Ll),Sl(14);switch(Al){case 28:vl(28);for(;;){Sl(167);if(Al==28)break;switch(Al){case 13:vl(13);break;default:Hi()}}vl(28);break;default:vl(33);for(;;){Sl(168);if(Al==33)break;switch(Al){case 14:vl(14);break;default:ji()}}vl(33)}ql.endNonterminal("DirAttributeValue",Ll)}function Pi(){Sl(14);switch(Al){case 28:ml(28);for(;;){Sl(167);if(Al==28)break;switch(Al){case 13:ml(13);break;default:Bi()}}ml(28);break;default:ml(33);for(;;){Sl(168);if(Al==33)break;switch(Al){case 14:ml(14);break;default:Fi()}}ml(33)}}function Hi(){ql.startNonterminal("QuotAttrValueContent",Ll);switch(Al){case 16:vl(16);break;default:If()}ql.endNonterminal("QuotAttrValueContent",Ll)}function Bi(){switch(Al){case 16:ml(16);break;default:qf()}}function ji(){ql.startNonterminal("AposAttrValueContent",Ll);switch(Al){case 17:vl(17);break;default:If()}ql.endNonterminal("AposAttrValueContent",Ll)}function Fi(){switch(Al){case 17:ml(17);break;default:qf()}}function Ii(){ql.startNonterminal("DirElemContent",Ll);switch(Al){case 54:case 55:case 59:ki();break;case 4:vl(4);break;case 15:vl(15);break;default:If()}ql.endNonterminal("DirElemContent",Ll)}function qi(){switch(Al){case 54:case 55:case 59:Li();break;case 4:ml(4);break;case 15:ml(15);break;default:qf()}}function Ri(){ql.startNonterminal("DirCommentConstructor",Ll),vl(55),Sl(1),vl(2),Sl(6),vl(43),ql.endNonterminal("DirCommentConstructor",Ll)}function Ui(){ml(55),Sl(1),ml(2),Sl(6),ml(43)}function zi(){ql.startNonterminal("DirPIConstructor",Ll),vl(59),Sl(3),vl(18),Sl(13),Al==21&&(vl(21),Sl(2),vl(3)),Sl(9),vl(65),ql.endNonterminal("DirPIConstructor",Ll)}function Wi(){ml(59),Sl(3),ml(18),Sl(13),Al==21&&(ml(21),Sl(2),ml(3)),Sl(9),ml(65)}function Xi(){ql.startNonterminal("ComputedConstructor",Ll);switch(Al){case 119:zf();break;case 121:$i();break;case 82:Xf();break;case 184:Ki();break;case 244:Gf();break;case 96:Kf();break;default:$f()}ql.endNonterminal("ComputedConstructor",Ll)}function Vi(){switch(Al){case 119:Wf();break;case 121:Ji();break;case 82:Vf();break;case 184:Qi();break;case 244:Yf();break;case 96:Qf();break;default:Jf()}}function $i(){ql.startNonterminal("CompElemConstructor",Ll),vl(121),wl(256);switch(Al){case 276:vl(276),wl(267),yl(),Q(),vl(282);break;default:yl(),Oa()}wl(87),vl(276),wl(273),Al!=282&&(yl(),Rf()),vl(282),ql.endNonterminal("CompElemConstructor",Ll)}function Ji(){ml(121),wl(256);switch(Al){case 276:ml(276),wl(267),G(),ml(282);break;default:Ma()}wl(87),ml(276),wl(273),Al!=282&&Uf(),ml(282)}function Ki(){ql.startNonterminal("CompNamespaceConstructor",Ll),vl(184),wl(249);switch(Al){case 276:vl(276),wl(267),yl(),Zi(),vl(282);break;default:yl(),Gi()}wl(87),vl(276),wl(267),yl(),ts(),vl(282),ql.endNonterminal("CompNamespaceConstructor",Ll)}function Qi(){ml(184),wl(249);switch(Al){case 276:ml(276),wl(267),es(),ml(282);break;default:Yi()}wl(87),ml(276),wl(267),ns(),ml(282)}function Gi(){ql.startNonterminal("Prefix",Ll),Pa(),ql.endNonterminal("Prefix",Ll)}function Yi(){Ha()}function Zi(){ql.startNonterminal("PrefixExpr",Ll),Q(),ql.endNonterminal("PrefixExpr",Ll)}function es(){G()}function ts(){ql.startNonterminal("URIExpr",Ll),Q(),ql.endNonterminal("URIExpr",Ll)}function ns(){G()}function rs(){ql.startNonterminal("FunctionItemExpr",Ll);switch(Al){case 145:El(92);break;default:Cl=Al}switch(Cl){case 32:case 17553:us();break;default:ss()}ql.endNonterminal("FunctionItemExpr",Ll)}function is(){switch(Al){case 145:El(92);break;default:Cl=Al}switch(Cl){case 32:case 17553:as();break;default:os()}}function ss(){ql.startNonterminal("NamedFunctionRef",Ll),Oa(),wl(20),vl(29),wl(16),vl(8),ql.endNonterminal("NamedFunctionRef",Ll)}function os(){Ma(),wl(20),ml(29),wl(16),ml(8)}function us(){ql.startNonterminal("InlineFunctionExpr",Ll);for(;;){wl(97);if(Al!=32)break;yl(),H()}vl(145),wl(22),vl(34),wl(94),Al==31&&(yl(),R()),vl(37),wl(111),Al==79&&(vl(79),wl(259),yl(),ps()),wl(87),yl(),X(),ql.endNonterminal("InlineFunctionExpr",Ll)}function as(){for(;;){wl(97);if(Al!=32)break;B()}ml(145),wl(22),ml(34),wl(94),Al==31&&U(),ml(37),wl(111),Al==79&&(ml(79),wl(259),ds()),wl(87),V()}function fs(){ql.startNonterminal("SingleType",Ll),co(),wl(226),Al==64&&vl(64),ql.endNonterminal("SingleType",Ll)}function ls(){ho(),wl(226),Al==64&&ml(64)}function cs(){ql.startNonterminal("TypeDeclaration",Ll),vl(79),wl(259),yl(),ps(),ql.endNonterminal("TypeDeclaration",Ll)}function hs(){ml(79),wl(259),ds()}function ps(){ql.startNonterminal("SequenceType",Ll);switch(Al){case 124:El(241);break;default:Cl=Al}switch(Cl){case 17532:vl(124),wl(22),vl(34),wl(23),vl(37);break;default:gs(),wl(237);switch(Al){case 39:case 40:case 64:yl(),vs();break;default:}}ql.endNonterminal("SequenceType",Ll)}function ds(){switch(Al){case 124:El(241);break;default:Cl=Al}switch(Cl){case 17532:ml(124),wl(22),ml(34),wl(23),ml(37);break;default:ys(),wl(237);switch(Al){case 39:case 40:case 64:ms();break;default:}}}function vs(){ql.startNonterminal("OccurrenceIndicator",Ll);switch(Al){case 64:vl(64);break;case 39:vl(39);break;default:vl(40)}ql.endNonterminal("OccurrenceIndicator",Ll)}function ms(){switch(Al){case 64:ml(64);break;case 39:ml(39);break;default:ml(40)}}function gs(){ql.startNonterminal("ItemType",Ll);switch(Al){case 78:case 82:case 96:case 120:case 121:case 145:case 165:case 167:case 185:case 191:case 194:case 216:case 226:case 227:case 244:El(241);break;default:Cl=Al}if(Cl==17486||Cl==17575||Cl==17602){Cl=pl(4,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{_s(),Cl=-1}catch(a){Cl=-6}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(4,Ll,Cl)}}switch(Cl){case-1:case 17490:case 17504:case 17528:case 17529:case 17593:case 17599:case 17624:case 17634:case 17635:case 17652:Ms();break;case 17573:vl(165),wl(22),vl(34),wl(23),vl(37);break;case 32:case 17553:mo();break;case 34:So();break;case-6:bs();break;case 242:Es();break;default:As()}ql.endNonterminal("ItemType",Ll)}function ys(){switch(Al){case 78:case 82:case 96:case 120:case 121:case 145:case 165:case 167:case 185:case 191:case 194:case 216:case 226:case 227:case 244:El(241);break;default:Cl=Al}if(Cl==17486||Cl==17575||Cl==17602){Cl=pl(4,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{_s(),hl(4,t,-1),Cl=-8}catch(a){Cl=-6,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(4,t,-6)}}}switch(Cl){case-1:case 17490:case 17504:case 17528:case 17529:case 17593:case 17599:case 17624:case 17634:case 17635:case 17652:_s();break;case 17573:ml(165),wl(22),ml(34),wl(23),ml(37);break;case 32:case 17553:go();break;case 34:xo();break;case-6:ws();break;case 242:Ss();break;case-8:break;default:Os()}}function bs(){ql.startNonterminal("JSONTest",Ll);switch(Al){case 167:xs();break;case 194:Ns();break;default:ks()}ql.endNonterminal("JSONTest",Ll)}function ws(){switch(Al){case 167:Ts();break;case 194:Cs();break;default:Ls()}}function Es(){ql.startNonterminal("StructuredItemTest",Ll),vl(242),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("StructuredItemTest",Ll)}function Ss(){ml(242),wl(22),ml(34),wl(23),ml(37)}function xs(){ql.startNonterminal("JSONItemTest",Ll),vl(167),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("JSONItemTest",Ll)}function Ts(){ml(167),wl(22),ml(34),wl(23),ml(37)}function Ns(){ql.startNonterminal("JSONObjectTest",Ll),vl(194),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("JSONObjectTest",Ll)}function Cs(){ml(194),wl(22),ml(34),wl(23),ml(37)}function ks(){ql.startNonterminal("JSONArrayTest",Ll),vl(78),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("JSONArrayTest",Ll)}function Ls(){ml(78),wl(22),ml(34),wl(23),ml(37)}function As(){ql.startNonterminal("AtomicOrUnionType",Ll),Oa(),ql.endNonterminal("AtomicOrUnionType",Ll)}function Os(){Ma()}function Ms(){ql.startNonterminal("KindTest",Ll);switch(Al){case 120:Hs();break;case 121:Zs();break;case 82:Xs();break;case 227:ro();break;case 226:Ks();break;case 216:zs();break;case 96:Is();break;case 244:js();break;case 185:Rs();break;case 191:Ds();break;default:bs()}ql.endNonterminal("KindTest",Ll)}function _s(){switch(Al){case 120:Bs();break;case 121:eo();break;case 82:Vs();break;case 227:io();break;case 226:Qs();break;case 216:Ws();break;case 96:qs();break;case 244:Fs();break;case 185:Us();break;case 191:Ps();break;default:ws()}}function Ds(){ql.startNonterminal("AnyKindTest",Ll),vl(191),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("AnyKindTest",Ll)}function Ps(){ml(191),wl(22),ml(34),wl(23),ml(37)}function Hs(){ql.startNonterminal("DocumentTest",Ll),vl(120),wl(22),vl(34),wl(144);if(Al!=37)switch(Al){case 121:yl(),Zs();break;default:yl(),ro()}wl(23),vl(37),ql.endNonterminal("DocumentTest",Ll)}function Bs(){ml(120),wl(22),ml(34),wl(144);if(Al!=37)switch(Al){case 121:eo();break;default:io()}wl(23),ml(37)}function js(){ql.startNonterminal("TextTest",Ll),vl(244),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("TextTest",Ll)}function Fs(){ml(244),wl(22),ml(34),wl(23),ml(37)}function Is(){ql.startNonterminal("CommentTest",Ll),vl(96),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("CommentTest",Ll)}function qs(){ml(96),wl(22),ml(34),wl(23),ml(37)}function Rs(){ql.startNonterminal("NamespaceNodeTest",Ll),vl(185),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("NamespaceNodeTest",Ll)}function Us(){ml(185),wl(22),ml(34),wl(23),ml(37)}function zs(){ql.startNonterminal("PITest",Ll),vl(216),wl(22),vl(34),wl(251);if(Al!=37)switch(Al){case 11:vl(11);break;default:yl(),Pa()}wl(23),vl(37),ql.endNonterminal("PITest",Ll)}function Ws(){ml(216),wl(22),ml(34),wl(251);if(Al!=37)switch(Al){case 11:ml(11);break;default:Ha()}wl(23),ml(37)}function Xs(){ql.startNonterminal("AttributeTest",Ll),vl(82),wl(22),vl(34),wl(258),Al!=37&&(yl(),$s(),wl(101),Al==41&&(vl(41),wl(253),yl(),po())),wl(23),vl(37),ql.endNonterminal("AttributeTest",Ll)}function Vs(){ml(82),wl(22),ml(34),wl(258),Al!=37&&(Js(),wl(101),Al==41&&(ml(41),wl(253),vo())),wl(23),ml(37)}function $s(){ql.startNonterminal("AttribNameOrWildcard",Ll);switch(Al){case 38:vl(38);break;default:uo()}ql.endNonterminal("AttribNameOrWildcard",Ll)}function Js(){switch(Al){case 38:ml(38);break;default:ao()}}function Ks(){ql.startNonterminal("SchemaAttributeTest",Ll),vl(226),wl(22),vl(34),wl(253),yl(),Gs(),wl(23),vl(37),ql.endNonterminal("SchemaAttributeTest",Ll)}function Qs(){ml(226),wl(22),ml(34),wl(253),Ys(),wl(23),ml(37)}function Gs(){ql.startNonterminal("AttributeDeclaration",Ll),uo(),ql.endNonterminal("AttributeDeclaration",Ll)}function Ys(){ao()}function Zs(){ql.startNonterminal("ElementTest",Ll),vl(121),wl(22),vl(34),wl(258),Al!=37&&(yl(),to(),wl(101),Al==41&&(vl(41),wl(253),yl(),po(),wl(102),Al==64&&vl(64))),wl(23),vl(37),ql.endNonterminal("ElementTest",Ll)}function eo(){ml(121),wl(22),ml(34),wl(258),Al!=37&&(no(),wl(101),Al==41&&(ml(41),wl(253),vo(),wl(102),Al==64&&ml(64))),wl(23),ml(37)}function to(){ql.startNonterminal("ElementNameOrWildcard",Ll);switch(Al){case 38:vl(38);break;default:fo()}ql.endNonterminal("ElementNameOrWildcard",Ll)}function no(){switch(Al){case 38:ml(38);break;default:lo()}}function ro(){ql.startNonterminal("SchemaElementTest",Ll),vl(227),wl(22),vl(34),wl(253),yl(),so(),wl(23),vl(37),ql.endNonterminal("SchemaElementTest",Ll)}function io(){ml(227),wl(22),ml(34),wl(253),oo(),wl(23),ml(37)}function so(){ql.startNonterminal("ElementDeclaration",Ll),fo(),ql.endNonterminal("ElementDeclaration",Ll)}function oo(){lo()}function uo(){ql.startNonterminal("AttributeName",Ll),Oa(),ql.endNonterminal("AttributeName",Ll)}function ao(){Ma()}function fo(){ql.startNonterminal("ElementName",Ll),Oa(),ql.endNonterminal("ElementName",Ll)}function lo(){Ma()}function co(){ql.startNonterminal("SimpleTypeName",Ll),po(),ql.endNonterminal("SimpleTypeName",Ll)}function ho(){vo()}function po(){ql.startNonterminal("TypeName",Ll),Oa(),ql.endNonterminal("TypeName",Ll)}function vo(){Ma()}function mo(){ql.startNonterminal("FunctionTest",Ll);for(;;){wl(97);if(Al!=32)break;yl(),H()}switch(Al){case 145:El(22);break;default:Cl=Al}Cl=pl(5,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{bo(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(5,Ll,Cl)}switch(Cl){case-1:yl(),yo();break;default:yl(),wo()}ql.endNonterminal("FunctionTest",Ll)}function go(){for(;;){wl(97);if(Al!=32)break;B()}switch(Al){case 145:El(22);break;default:Cl=Al}Cl=pl(5,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{bo(),hl(5,t,-1),Cl=-3}catch(a){Cl=-2,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(5,t,-2)}}switch(Cl){case-1:bo();break;case-3:break;default:Eo()}}function yo(){ql.startNonterminal("AnyFunctionTest",Ll),vl(145),wl(22),vl(34),wl(24),vl(38),wl(23),vl(37),ql.endNonterminal("AnyFunctionTest",Ll)}function bo(){ml(145),wl(22),ml(34),wl(24),ml(38),wl(23),ml(37)}function wo(){ql.startNonterminal("TypedFunctionTest",Ll),vl(145),wl(22),vl(34),wl(261);if(Al!=37){yl(),ps();for(;;){wl(101);if(Al!=41)break;vl(41),wl(259),yl(),ps()}}vl(37),wl(30),vl(79),wl(259),yl(),ps(),ql.endNonterminal("TypedFunctionTest",Ll)}function Eo(){ml(145),wl(22),ml(34),wl(261);if(Al!=37){ds();for(;;){wl(101);if(Al!=41)break;ml(41),wl(259),ds()}}ml(37),wl(30),ml(79),wl(259),ds()}function So(){ql.startNonterminal("ParenthesizedItemType",Ll),vl(34),wl(259),yl(),gs(),wl(23),vl(37),ql.endNonterminal("ParenthesizedItemType",Ll)}function xo(){ml(34),wl(259),ys(),wl(23),ml(37)}function To(){ql.startNonterminal("RevalidationDecl",Ll),vl(108),wl(72),vl(222),wl(152);switch(Al){case 240:vl(240);break;case 171:vl(171);break;default:vl(233)}ql.endNonterminal("RevalidationDecl",Ll)}function No(){ql.startNonterminal("InsertExprTargetChoice",Ll);switch(Al){case 70:vl(70);break;case 84:vl(84);break;default:if(Al==79){vl(79),wl(119);switch(Al){case 134:vl(134);break;default:vl(170)}}wl(54),vl(163)}ql.endNonterminal("InsertExprTargetChoice",Ll)}function Co(){switch(Al){case 70:ml(70);break;case 84:ml(84);break;default:if(Al==79){ml(79),wl(119);switch(Al){case 134:ml(134);break;default:ml(170)}}wl(54),ml(163)}}function ko(){ql.startNonterminal("InsertExpr",Ll),vl(159),wl(129);switch(Al){case 191:vl(191);break;default:vl(192)}wl(267),yl(),Ho(),yl(),No(),wl(267),yl(),jo(),ql.endNonterminal("InsertExpr",Ll)}function Lo(){ml(159),wl(129);switch(Al){case 191:ml(191);break;default:ml(192)}wl(267),Bo(),Co(),wl(267),Fo()}function Ao(){ql.startNonterminal("DeleteExpr",Ll),vl(110),wl(129);switch(Al){case 191:vl(191);break;default:vl(192)}wl(267),yl(),jo(),ql.endNonterminal("DeleteExpr",Ll)}function Oo(){ml(110),wl(129);switch(Al){case 191:ml(191);break;default:ml(192)}wl(267),Fo()}function Mo(){ql.startNonterminal("ReplaceExpr",Ll),vl(219),wl(130),Al==261&&(vl(261),wl(64),vl(196)),wl(62),vl(191),wl(267),yl(),jo(),vl(270),wl(267),yl(),Nf(),ql.endNonterminal("ReplaceExpr",Ll)}function _o(){ml(219),wl(130),Al==261&&(ml(261),wl(64),ml(196)),wl(62),ml(191),wl(267),Fo(),ml(270),wl(267),Cf()}function Do(){ql.startNonterminal("RenameExpr",Ll),vl(218),wl(62),vl(191),wl(267),yl(),jo(),vl(79),wl(267),yl(),Io(),ql.endNonterminal("RenameExpr",Ll)}function Po(){ml(218),wl(62),ml(191),wl(267),Fo(),ml(79),wl(267),qo()}function Ho(){ql.startNonterminal("SourceExpr",Ll),Nf(),ql.endNonterminal("SourceExpr",Ll)}function Bo(){Cf()}function jo(){ql.startNonterminal("TargetExpr",Ll),Nf(),ql.endNonterminal("TargetExpr",Ll)}function Fo(){Cf()}function Io(){ql.startNonterminal("NewNameExpr",Ll),Nf(),ql.endNonterminal("NewNameExpr",Ll)}function qo(){Cf()}function Ro(){ql.startNonterminal("TransformExpr",Ll),vl(103),wl(21),vl(31),wl(253),yl(),fi(),wl(27),vl(52),wl(267),yl(),Nf();for(;;){if(Al!=41)break;vl(41),wl(21),vl(31),wl(253),yl(),fi(),wl(27),vl(52),wl(267),yl(),Nf()}vl(181),wl(267),yl(),Nf(),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("TransformExpr",Ll)}function Uo(){ml(103),wl(21),ml(31),wl(253),li(),wl(27),ml(52),wl(267),Cf();for(;;){if(Al!=41)break;ml(41),wl(21),ml(31),wl(253),li(),wl(27),ml(52),wl(267),Cf()}ml(181),wl(267),Cf(),ml(220),wl(267),Cf()}function zo(){ql.startNonterminal("FTSelection",Ll),$o();for(;;){wl(211);switch(Al){case 81:El(151);break;default:Cl=Al}if(Cl!=115&&Cl!=117&&Cl!=127&&Cl!=202&&Cl!=223&&Cl!=269&&Cl!=64593&&Cl!=121425)break;yl(),gu()}ql.endNonterminal("FTSelection",Ll)}function Wo(){Jo();for(;;){wl(211);switch(Al){case 81:El(151);break;default:Cl=Al}if(Cl!=115&&Cl!=117&&Cl!=127&&Cl!=202&&Cl!=223&&Cl!=269&&Cl!=64593&&Cl!=121425)break;yu()}}function Xo(){ql.startNonterminal("FTWeight",Ll),vl(264),wl(87),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("FTWeight",Ll)}function Vo(){ml(264),wl(87),ml(276),wl(267),G(),ml(282)}function $o(){ql.startNonterminal("FTOr",Ll),Ko();for(;;){if(Al!=144)break;vl(144),wl(162),yl(),Ko()}ql.endNonterminal("FTOr",Ll)}function Jo(){Qo();for(;;){if(Al!=144)break;ml(144),wl(162),Qo()}}function Ko(){ql.startNonterminal("FTAnd",Ll),Go();for(;;){if(Al!=142)break;vl(142),wl(162),yl(),Go()}ql.endNonterminal("FTAnd",Ll)}function Qo(){Yo();for(;;){if(Al!=142)break;ml(142),wl(162),Yo()}}function Go(){ql.startNonterminal("FTMildNot",Ll),Zo();for(;;){wl(212);if(Al!=193)break;vl(193),wl(53),vl(154),wl(162),yl(),Zo()}ql.endNonterminal("FTMildNot",Ll)}function Yo(){eu();for(;;){wl(212);if(Al!=193)break;ml(193),wl(53),ml(154),wl(162),eu()}}function Zo(){ql.startNonterminal("FTUnaryNot",Ll),Al==143&&vl(143),wl(155),yl(),tu(),ql.endNonterminal("FTUnaryNot",Ll)}function eu(){Al==143&&ml(143),wl(155),nu()}function tu(){ql.startNonterminal("FTPrimaryWithOptions",Ll),ru(),wl(214),Al==259&&(yl(),Du()),Al==264&&(yl(),Xo()),ql.endNonterminal("FTPrimaryWithOptions",Ll)}function nu(){iu(),wl(214),Al==259&&Pu(),Al==264&&Vo()}function ru(){ql.startNonterminal("FTPrimary",Ll);switch(Al){case 34:vl(34),wl(162),yl(),zo(),vl(37);break;case 35:fu();break;default:su(),wl(215),Al==195&&(yl(),pu())}ql.endNonterminal("FTPrimary",Ll)}function iu(){switch(Al){case 34:ml(34),wl(162),Wo(),ml(37);break;case 35:lu();break;default:ou(),wl(215),Al==195&&du()}}function su(){ql.startNonterminal("FTWords",Ll),uu(),wl(221);if(Al==71||Al==76||Al==210)yl(),cu();ql.endNonterminal("FTWords",Ll)}function ou(){au(),wl(221),(Al==71||Al==76||Al==210)&&hu()}function uu(){ql.startNonterminal("FTWordsValue",Ll);switch(Al){case 11:vl(11);break;default:vl(276),wl(267),yl(),Q(),vl(282)}ql.endNonterminal("FTWordsValue",Ll)}function au(){switch(Al){case 11:ml(11);break;default:ml(276),wl(267),G(),ml(282)}}function fu(){ql.startNonterminal("FTExtensionSelection",Ll);for(;;){yl(),xr(),wl(100);if(Al!=35)break}vl(276),wl(166),Al!=282&&(yl(),zo()),vl(282),ql.endNonterminal("FTExtensionSelection",Ll)}function lu(){for(;;){Tr(),wl(100);if(Al!=35)break}ml(276),wl(166),Al!=282&&Wo(),ml(282)}function cu(){ql.startNonterminal("FTAnyallOption",Ll);switch(Al){case 76:vl(76),wl(218),Al==272&&vl(272);break;case 71:vl(71),wl(219),Al==273&&vl(273);break;default:vl(210)}ql.endNonterminal("FTAnyallOption",Ll)}function hu(){switch(Al){case 76:ml(76),wl(218),Al==272&&ml(272);break;case 71:ml(71),wl(219),Al==273&&ml(273);break;default:ml(210)}}function pu(){ql.startNonterminal("FTTimes",Ll),vl(195),wl(149),yl(),vu(),vl(247),ql.endNonterminal("FTTimes",Ll)}function du(){ml(195),wl(149),mu(),ml(247)}function vu(){ql.startNonterminal("FTRange",Ll);switch(Al){case 130:vl(130),wl(265),yl(),zn();break;case 81:vl(81),wl(125);switch(Al){case 173:vl(173),wl(265),yl(),zn();break;default:vl(183),wl(265),yl(),zn()}break;default:vl(140),wl(265),yl(),zn(),vl(248),wl(265),yl(),zn()}ql.endNonterminal("FTRange",Ll)}function mu(){switch(Al){case 130:ml(130),wl(265),Wn();break;case 81:ml(81),wl(125);switch(Al){case 173:ml(173),wl(265),Wn();break;default:ml(183),wl(265),Wn()}break;default:ml(140),wl(265),Wn(),ml(248),wl(265),Wn()}}function gu(){ql.startNonterminal("FTPosFilter",Ll);switch(Al){case 202:bu();break;case 269:Eu();break;case 117:xu();break;case 115:case 223:ku();break;default:Mu()}ql.endNonterminal("FTPosFilter",Ll)}function yu(){switch(Al){case 202:wu();break;case 269:Su();break;case 117:Tu();break;case 115:case 223:Lu();break;default:_u()}}function bu(){ql.startNonterminal("FTOrder",Ll),vl(202),ql.endNonterminal("FTOrder",Ll)}function wu(){ml(202)}function Eu(){ql.startNonterminal("FTWindow",Ll),vl(269),wl(265),yl(),zn(),yl(),Nu(),ql.endNonterminal("FTWindow",Ll)}function Su(){ml(269),wl(265),Wn(),Cu()}function xu(){ql.startNonterminal("FTDistance",Ll),vl(117),wl(149),yl(),vu(),yl(),Nu(),ql.endNonterminal("FTDistance",Ll)}function Tu(){ml(117),wl(149),mu(),Cu()}function Nu(){ql.startNonterminal("FTUnit",Ll);switch(Al){case 273:vl(273);break;case 232:vl(232);break;default:vl(205)}ql.endNonterminal("FTUnit",Ll)}function Cu(){switch(Al){case 273:ml(273);break;case 232:ml(232);break;default:ml(205)}}function ku(){ql.startNonterminal("FTScope",Ll);switch(Al){case 223:vl(223);break;default:vl(115)}wl(132),yl(),Au(),ql.endNonterminal("FTScope",Ll)}function Lu(){switch(Al){case 223:ml(223);break;default:ml(115)}wl(132),Ou()}function Au(){ql.startNonterminal("FTBigUnit",Ll);switch(Al){case 231:vl(231);break;default:vl(204)}ql.endNonterminal("FTBigUnit",Ll)}function Ou(){switch(Al){case 231:ml(231);break;default:ml(204)}}function Mu(){ql.startNonterminal("FTContent",Ll);switch(Al){case 81:vl(81),wl(117);switch(Al){case 237:vl(237);break;default:vl(126)}break;default:vl(127),wl(42),vl(100)}ql.endNonterminal("FTContent",Ll)}function _u(){switch(Al){case 81:ml(81),wl(117);switch(Al){case 237:ml(237);break;default:ml(126)}break;default:ml(127),wl(42),ml(100)}}function Du(){ql.startNonterminal("FTMatchOptions",Ll);for(;;){vl(259),wl(181),yl(),Hu(),wl(214);if(Al!=259)break}ql.endNonterminal("FTMatchOptions",Ll)}function Pu(){for(;;){ml(259),wl(181),Bu(),wl(214);if(Al!=259)break}}function Hu(){ql.startNonterminal("FTMatchOption",Ll);switch(Al){case 188:El(161);break;default:Cl=Al}switch(Cl){case 169:ta();break;case 268:case 137404:ra();break;case 246:case 126140:zu();break;case 238:case 122044:Ru();break;case 114:Iu();break;case 239:case 122556:Ku();break;case 199:sa();break;default:ju()}ql.endNonterminal("FTMatchOption",Ll)}function Bu(){switch(Al){case 188:El(161);break;default:Cl=Al}switch(Cl){case 169:na();break;case 268:case 137404:ia();break;case 246:case 126140:Wu();break;case 238:case 122044:Uu();break;case 114:qu();break;case 239:case 122556:Qu();break;case 199:oa();break;default:Fu()}}function ju(){ql.startNonterminal("FTCaseOption",Ll);switch(Al){case 88:vl(88),wl(124);switch(Al){case 158:vl(158);break;default:vl(230)}break;case 177:vl(177);break;default:vl(258)}ql.endNonterminal("FTCaseOption",Ll)}function Fu(){switch(Al){case 88:ml(88),wl(124);switch(Al){case 158:ml(158);break;default:ml(230)}break;case 177:ml(177);break;default:ml(258)}}function Iu(){ql.startNonterminal("FTDiacriticsOption",Ll),vl(114),wl(124);switch(Al){case 158:vl(158);break;default:vl(230)}ql.endNonterminal("FTDiacriticsOption",Ll)}function qu(){ml(114),wl(124);switch(Al){case 158:ml(158);break;default:ml(230)}}function Ru(){ql.startNonterminal("FTStemOption",Ll);switch(Al){case 238:vl(238);break;default:vl(188),wl(74),vl(238)}ql.endNonterminal("FTStemOption",Ll)}function Uu(){switch(Al){case 238:ml(238);break;default:ml(188),wl(74),ml(238)}}function zu(){ql.startNonterminal("FTThesaurusOption",Ll);switch(Al){case 246:vl(246),wl(142);switch(Al){case 81:yl(),Xu();break;case 109:vl(109);break;default:vl(34),wl(112);switch(Al){case 81:yl(),Xu();break;default:vl(109)}for(;;){wl(101);if(Al!=41)break;vl(41),wl(31),yl(),Xu()}vl(37)}break;default:vl(188),wl(78),vl(246)}ql.endNonterminal("FTThesaurusOption",Ll)}function Wu(){switch(Al){case 246:ml(246),wl(142);switch(Al){case 81:Vu();break;case 109:ml(109);break;default:ml(34),wl(112);switch(Al){case 81:Vu();break;default:ml(109)}for(;;){wl(101);if(Al!=41)break;ml(41),wl(31),Vu()}ml(37)}break;default:ml(188),wl(78),ml(246)}}function Xu(){ql.startNonterminal("FTThesaurusID",Ll),vl(81),wl(15),vl(7),wl(220),Al==217&&(vl(217),wl(17),vl(11)),wl(216);switch(Al){case 81:El(165);break;default:Cl=Al}if(Cl==130||Cl==140||Cl==88657||Cl==93777)yl(),$u(),wl(58),vl(175);ql.endNonterminal("FTThesaurusID",Ll)}function Vu(){ml(81),wl(15),ml(7),wl(220),Al==217&&(ml(217),wl(17),ml(11)),wl(216);switch(Al){case 81:El(165);break;default:Cl=Al}if(Cl==130||Cl==140||Cl==88657||Cl==93777)Ju(),wl(58),ml(175)}function $u(){ql.startNonterminal("FTLiteralRange",Ll);switch(Al){case 130:vl(130),wl(16),vl(8);break;case 81:vl(81),wl(125);switch(Al){case 173:vl(173),wl(16),vl(8);break;default:vl(183),wl(16),vl(8)}break;default:vl(140),wl(16),vl(8),wl(79),vl(248),wl(16),vl(8)}ql.endNonterminal("FTLiteralRange",Ll)}function Ju(){switch(Al){case 130:ml(130),wl(16),ml(8);break;case 81:ml(81),wl(125);switch(Al){case 173:ml(173),wl(16),ml(8);break;default:ml(183),wl(16),ml(8)}break;default:ml(140),wl(16),ml(8),wl(79),ml(248),wl(16),ml(8)}}function Ku(){ql.startNonterminal("FTStopWordOption",Ll);switch(Al){case 239:vl(239),wl(86),vl(273),wl(142);switch(Al){case 109:vl(109);for(;;){wl(217);if(Al!=131&&Al!=254)break;yl(),Zu()}break;default:yl(),Gu();for(;;){wl(217);if(Al!=131&&Al!=254)break;yl(),Zu()}}break;default:vl(188),wl(75),vl(239),wl(86),vl(273)}ql.endNonterminal("FTStopWordOption",Ll)}function Qu(){switch(Al){case 239:ml(239),wl(86),ml(273),wl(142);switch(Al){case 109:ml(109);for(;;){wl(217);if(Al!=131&&Al!=254)break;ea()}break;default:Yu();for(;;){wl(217);if(Al!=131&&Al!=254)break;ea()}}break;default:ml(188),wl(75),ml(239),wl(86),ml(273)}}function Gu(){ql.startNonterminal("FTStopWords",Ll);switch(Al){case 81:vl(81),wl(15),vl(7);break;default:vl(34),wl(17),vl(11);for(;;){wl(101);if(Al!=41)break;vl(41),wl(17),vl(11)}vl(37)}ql.endNonterminal("FTStopWords",Ll)}function Yu(){switch(Al){case 81:ml(81),wl(15),ml(7);break;default:ml(34),wl(17),ml(11);for(;;){wl(101);if(Al!=41)break;ml(41),wl(17),ml(11)}ml(37)}}function Zu(){ql.startNonterminal("FTStopWordsInclExcl",Ll);switch(Al){case 254:vl(254);break;default:vl(131)}wl(99),yl(),Gu(),ql.endNonterminal("FTStopWordsInclExcl",Ll)}function ea(){switch(Al){case 254:ml(254);break;default:ml(131)}wl(99),Yu()}function ta(){ql.startNonterminal("FTLanguageOption",Ll),vl(169),wl(17),vl(11),ql.endNonterminal("FTLanguageOption",Ll)}function na(){ml(169),wl(17),ml(11)}function ra(){ql.startNonterminal("FTWildCardOption",Ll);switch(Al){case 268:vl(268);break;default:vl(188),wl(84),vl(268)}ql.endNonterminal("FTWildCardOption",Ll)}function ia(){switch(Al){case 268:ml(268);break;default:ml(188),wl(84),ml(268)}}function sa(){ql.startNonterminal("FTExtensionOption",Ll),vl(199),wl(253),yl(),Oa(),wl(17),vl(11),ql.endNonterminal("FTExtensionOption",Ll)}function oa(){ml(199),wl(253),Ma(),wl(17),ml(11)}function ua(){ql.startNonterminal("FTIgnoreOption",Ll),vl(271),wl(42),vl(100),wl(265),yl(),$n(),ql.endNonterminal("FTIgnoreOption",Ll)}function aa(){ml(271),wl(42),ml(100),wl(265),Jn()}function fa(){ql.startNonterminal("CollectionDecl",Ll),vl(95),wl(253),yl(),Oa(),wl(107),Al==79&&(yl(),la()),ql.endNonterminal("CollectionDecl",Ll)}function la(){ql.startNonterminal("CollectionTypeDecl",Ll),vl(79),wl(183),yl(),Ms(),wl(156),Al!=53&&(yl(),vs()),ql.endNonterminal("CollectionTypeDecl",Ll)}function ca(){ql.startNonterminal("IndexName",Ll),Oa(),ql.endNonterminal("IndexName",Ll)}function ha(){ql.startNonterminal("IndexDomainExpr",Ll),Nr(),ql.endNonterminal("IndexDomainExpr",Ll)}function pa(){ql.startNonterminal("IndexKeySpec",Ll),da(),Al==79&&(yl(),va()),wl(146),Al==94&&(yl(),ga()),ql.endNonterminal("IndexKeySpec",Ll)}function da(){ql.startNonterminal("IndexKeyExpr",Ll),Nr(),ql.endNonterminal("IndexKeyExpr",Ll)}function va(){ql.startNonterminal("IndexKeyTypeDecl",Ll),vl(79),wl(253),yl(),ma(),wl(169);if(Al==39||Al==40||Al==64)yl(),vs();ql.endNonterminal("IndexKeyTypeDecl",Ll)}function ma(){ql.startNonterminal("AtomicType",Ll),Oa(),ql.endNonterminal("AtomicType",Ll)}function ga(){ql.startNonterminal("IndexKeyCollation",Ll),vl(94),wl(15),vl(7),ql.endNonterminal("IndexKeyCollation",Ll)}function ya(){ql.startNonterminal("IndexDecl",Ll),vl(155),wl(253),yl(),ca(),wl(65),vl(197),wl(63),vl(192),wl(264),yl(),ha(),vl(87),wl(264),yl(),pa();for(;;){wl(103);if(Al!=41)break;vl(41),wl(264),yl(),pa()}ql.endNonterminal("IndexDecl",Ll)}function ba(){ql.startNonterminal("ICDecl",Ll),vl(161),wl(40),vl(97),wl(253),yl(),Oa(),wl(120);switch(Al){case 197:yl(),wa();break;default:yl(),Ta()}ql.endNonterminal("ICDecl",Ll)}function wa(){ql.startNonterminal("ICCollection",Ll),vl(197),wl(39),vl(95),wl(253),yl(),Oa(),wl(140);switch(Al){case 31:yl(),Ea();break;case 191:yl(),Sa();break;default:yl(),xa()}ql.endNonterminal("ICCollection",Ll)}function Ea(){ql.startNonterminal("ICCollSequence",Ll),ui(),wl(37),vl(92),wl(267),yl(),Nf(),ql.endNonterminal("ICCollSequence",Ll)}function Sa(){ql.startNonterminal("ICCollSequenceUnique",Ll),vl(191),wl(21),yl(),ui(),wl(37),vl(92),wl(80),vl(255),wl(57),vl(168),wl(264),yl(),Nr(),ql.endNonterminal("ICCollSequenceUnique",Ll)}function xa(){ql.startNonterminal("ICCollNode",Ll),vl(138),wl(62),vl(191),wl(21),yl(),ui(),wl(37),vl(92),wl(267),yl(),Nf(),ql.endNonterminal("ICCollNode",Ll)}function Ta(){ql.startNonterminal("ICForeignKey",Ll),vl(139),wl(57),vl(168),wl(51),yl(),Na(),yl(),Ca(),ql.endNonterminal("ICForeignKey",Ll)}function Na(){ql.startNonterminal("ICForeignKeySource",Ll),vl(140),wl(39),yl(),ka(),ql.endNonterminal("ICForeignKeySource",Ll)}function Ca(){ql.startNonterminal("ICForeignKeyTarget",Ll),vl(248),wl(39),yl(),ka(),ql.endNonterminal("ICForeignKeyTarget",Ll)}function ka(){ql.startNonterminal("ICForeignKeyValues",Ll),vl(95),wl(253),yl(),Oa(),wl(62),vl(191),wl(21),yl(),ui(),wl(57),vl(168),wl(264),yl(),Nr(),ql.endNonterminal("ICForeignKeyValues",Ll)}function La(){ml(36);for(;;){Sl(89);if(Al==50)break;switch(Al){case 24:ml(24);break;default:La()}}ml(50)}function Aa(){switch(Al){case 22:ml(22);break;default:La()}}function Oa(){ql.startNonterminal("EQName",Ll),Sl(248);switch(Al){case 82:vl(82);break;case 96:vl(96);break;case 120:vl(120);break;case 121:vl(121);break;case 124:vl(124);break;case 145:vl(145);break;case 152:vl(152);break;case 165:vl(165);break;case 185:vl(185);break;case 191:vl(191);break;case 216:vl(216);break;case 226:vl(226);break;case 227:vl(227);break;case 243:vl(243);break;case 244:vl(244);break;case 253:vl(253);break;default:_a()}ql.endNonterminal("EQName",Ll)}function Ma(){Sl(248);switch(Al){case 82:ml(82);break;case 96:ml(96);break;case 120:ml(120);break;case 121:ml(121);break;case 124:ml(124);break;case 145:ml(145);break;case 152:ml(152);break;case 165:ml(165);break;case 185:ml(185);break;case 191:ml(191);break;case 216:ml(216);break;case 226:ml(226);break;case 227:ml(227);break;case 243:ml(243);break;case 244:ml(244);break;case 253:ml(253);break;default:Da()}}function _a(){ql.startNonterminal("FunctionName",Ll);switch(Al){case 6:vl(6);break;case 70:vl(70);break;case 73:vl(73);break;case 74:vl(74);break;case 75:vl(75);break;case 79:vl(79);break;case 80:vl(80);break;case 84:vl(84);break;case 88:vl(88);break;case 89:vl(89);break;case 90:vl(90);break;case 93:vl(93);break;case 94:vl(94);break;case 103:vl(103);break;case 105:vl(105);break;case 108:vl(108);break;case 109:vl(109);break;case 110:vl(110);break;case 111:vl(111);break;case 112:vl(112);break;case 113:vl(113);break;case 118:vl(118);break;case 119:vl(119);break;case 122:vl(122);break;case 123:vl(123);break;case 126:vl(126);break;case 128:vl(128);break;case 129:vl(129);break;case 131:vl(131);break;case 134:vl(134);break;case 135:vl(135);break;case 136:vl(136);break;case 137:vl(137);break;case 146:vl(146);break;case 148:vl(148);break;case 150:vl(150);break;case 151:vl(151);break;case 153:vl(153);break;case 159:vl(159);break;case 160:vl(160);break;case 162:vl(162);break;case 163:vl(163);break;case 164:vl(164);break;case 170:vl(170);break;case 172:vl(172);break;case 174:vl(174);break;case 178:vl(178);break;case 180:vl(180);break;case 181:vl(181);break;case 182:vl(182);break;case 184:vl(184);break;case 186:vl(186);break;case 198:vl(198);break;case 200:vl(200);break;case 201:vl(201);break;case 202:vl(202);break;case 206:vl(206);break;case 212:vl(212);break;case 213:vl(213);break;case 218:vl(218);break;case 219:vl(219);break;case 220:vl(220);break;case 224:vl(224);break;case 229:vl(229);break;case 235:vl(235);break;case 236:vl(236);break;case 237:vl(237);break;case 248:vl(248);break;case 249:vl(249);break;case 250:vl(250);break;case 254:vl(254);break;case 256:vl(256);break;case 260:vl(260);break;case 266:vl(266);break;case 270:vl(270);break;case 274:vl(274);break;case 72:vl(72);break;case 81:vl(81);break;case 83:vl(83);break;case 85:vl(85);break;case 86:vl(86);break;case 91:vl(91);break;case 98:vl(98);break;case 101:vl(101);break;case 102:vl(102);break;case 104:vl(104);break;case 106:vl(106);break;case 125:vl(125);break;case 132:vl(132);break;case 133:vl(133);break;case 141:vl(141);break;case 154:vl(154);break;case 155:vl(155);break;case 161:vl(161);break;case 171:vl(171);break;case 192:vl(192);break;case 199:vl(199);break;case 203:vl(203);break;case 222:vl(222);break;case 225:vl(225);break;case 228:vl(228);break;case 234:vl(234);break;case 240:vl(240);break;case 251:vl(251);break;case 252:vl(252);break;case 257:vl(257);break;case 261:vl(261);break;case 262:vl(262);break;case 263:vl(263);break;case 267:vl(267);break;case 97:vl(97);break;case 176:vl(176);break;case 221:vl(221);break;case 194:vl(194);break;case 167:vl(167);break;default:vl(78)}ql.endNonterminal("FunctionName",Ll)}function Da(){switch(Al){case 6:ml(6);break;case 70:ml(70);break;case 73:ml(73);break;case 74:ml(74);break;case 75:ml(75);break;case 79:ml(79);break;case 80:ml(80);break;case 84:ml(84);break;case 88:ml(88);break;case 89:ml(89);break;case 90:ml(90);break;case 93:ml(93);break;case 94:ml(94);break;case 103:ml(103);break;case 105:ml(105);break;case 108:ml(108);break;case 109:ml(109);break;case 110:ml(110);break;case 111:ml(111);break;case 112:ml(112);break;case 113:ml(113);break;case 118:ml(118);break;case 119:ml(119);break;case 122:ml(122);break;case 123:ml(123);break;case 126:ml(126);break;case 128:ml(128);break;case 129:ml(129);break;case 131:ml(131);break;case 134:ml(134);break;case 135:ml(135);break;case 136:ml(136);break;case 137:ml(137);break;case 146:ml(146);break;case 148:ml(148);break;case 150:ml(150);break;case 151:ml(151);break;case 153:ml(153);break;case 159:ml(159);break;case 160:ml(160);break;case 162:ml(162);break;case 163:ml(163);break;case 164:ml(164);break;case 170:ml(170);break;case 172:ml(172);break;case 174:ml(174);break;case 178:ml(178);break;case 180:ml(180);break;case 181:ml(181);break;case 182:ml(182);break;case 184:ml(184);break;case 186:ml(186);break;case 198:ml(198);break;case 200:ml(200);break;case 201:ml(201);break;case 202:ml(202);break;case 206:ml(206);break;case 212:ml(212);break;case 213:ml(213);break;case 218:ml(218);break;case 219:ml(219);break;case 220:ml(220);break;case 224:ml(224);break;case 229:ml(229);break;case 235:ml(235);break;case 236:ml(236);break;case 237:ml(237);break;case 248:ml(248);break;case 249:ml(249);break;case 250:ml(250);break;case 254:ml(254);break;case 256:ml(256);break;case 260:ml(260);break;case 266:ml(266);break;case 270:ml(270);break;case 274:ml(274);break;case 72:ml(72);break;case 81:ml(81);break;case 83:ml(83);break;case 85:ml(85);break;case 86:ml(86);break;case 91:ml(91);break;case 98:ml(98);break;case 101:ml(101);break;case 102:ml(102);break;case 104:ml(104);break;case 106:ml(106);break;case 125:ml(125);break;case 132:ml(132);break;case 133:ml(133);break;case 141:ml(141);break;case 154:ml(154);break;case 155:ml(155);break;case 161:ml(161);break;case 171:ml(171);break;case 192:ml(192);break;case 199:ml(199);break;case 203:ml(203);break;case 222:ml(222);break;case 225:ml(225);break;case 228:ml(228);break;case 234:ml(234);break;case 240:ml(240);break;case 251:ml(251);break;case 252:ml(252);break;case 257:ml(257);break;case 261:ml(261);break;case 262:ml(262);break;case 263:ml(263);break;case 267:ml(267);break;case 97:ml(97);break;case 176:ml(176);break;case 221:ml(221);break;case 194:ml(194);break;case 167:ml(167);break;default:ml(78)}}function Pa(){ql.startNonterminal("NCName",Ll);switch(Al){case 19:vl(19);break;case 70:vl(70);break;case 75:vl(75);break;case 79:vl(79);break;case 80:vl(80);break;case 84:vl(84);break;case 88:vl(88);break;case 89:vl(89);break;case 90:vl(90);break;case 94:vl(94);break;case 105:vl(105);break;case 109:vl(109);break;case 113:vl(113);break;case 118:vl(118);break;case 122:vl(122);break;case 123:vl(123);break;case 126:vl(126);break;case 128:vl(128);break;case 131:vl(131);break;case 137:vl(137);break;case 146:vl(146);break;case 148:vl(148);break;case 150:vl(150);break;case 151:vl(151);break;case 160:vl(160);break;case 162:vl(162);break;case 163:vl(163);break;case 164:vl(164);break;case 172:vl(172);break;case 174:vl(174);break;case 178:vl(178);break;case 180:vl(180);break;case 181:vl(181);break;case 186:vl(186);break;case 198:vl(198);break;case 200:vl(200);break;case 201:vl(201);break;case 220:vl(220);break;case 224:vl(224);break;case 236:vl(236);break;case 237:vl(237);break;case 248:vl(248);break;case 249:vl(249);break;case 254:vl(254);break;case 266:vl(266);break;case 270:vl(270);break;case 73:vl(73);break;case 74:vl(74);break;case 82:vl(82);break;case 93:vl(93);break;case 96:vl(96);break;case 103:vl(103);break;case 108:vl(108);break;case 110:vl(110);break;case 111:vl(111);break;case 112:vl(112);break;case 119:vl(119);break;case 120:vl(120);break;case 121:vl(121);break;case 124:vl(124);break;case 129:vl(129);break;case 134:vl(134);break;case 135:vl(135);break;case 136:vl(136);break;case 145:vl(145);break;case 152:vl(152);break;case 153:vl(153);break;case 159:vl(159);break;case 165:vl(165);break;case 170:vl(170);break;case 182:vl(182);break;case 184:vl(184);break;case 185:vl(185);break;case 191:vl(191);break;case 202:vl(202);break;case 206:vl(206);break;case 212:vl(212);break;case 213:vl(213);break;case 216:vl(216);break;case 218:vl(218);break;case 219:vl(219);break;case 226:vl(226);break;case 227:vl(227);break;case 229:vl(229);break;case 235:vl(235);break;case 243:vl(243);break;case 244:vl(244);break;case 250:vl(250);break;case 253:vl(253);break;case 256:vl(256);break;case 260:vl(260);break;case 262:vl(262);break;case 274:vl(274);break;case 72:vl(72);break;case 81:vl(81);break;case 83:vl(83);break;case 85:vl(85);break;case 86:vl(86);break;case 91:vl(91);break;case 98:vl(98);break;case 101:vl(101);break;case 102:vl(102);break;case 104:vl(104);break;case 106:vl(106);break;case 125:vl(125);break;case 132:vl(132);break;case 133:vl(133);break;case 141:vl(141);break;case 154:vl(154);break;case 155:vl(155);break;case 161:vl(161);break;case 171:vl(171);break;case 192:vl(192);break;case 199:vl(199);break;case 203:vl(203);break;case 222:vl(222);break;case 225:vl(225);break;case 228:vl(228);break;case 234:vl(234);break;case 240:vl(240);break;case 251:vl(251);break;case 252:vl(252);break;case 257:vl(257);break;case 261:vl(261);break;case 263:vl(263);break;case 267:vl(267);break;case 97:vl(97);break;case 176:vl(176);break;default:vl(221)}ql.endNonterminal("NCName",Ll)}function Ha(){switch(Al){case 19:ml(19);break;case 70:ml(70);break;case 75:ml(75);break;case 79:ml(79);break;case 80:ml(80);break;case 84:ml(84);break;case 88:ml(88);break;case 89:ml(89);break;case 90:ml(90);break;case 94:ml(94);break;case 105:ml(105);break;case 109:ml(109);break;case 113:ml(113);break;case 118:ml(118);break;case 122:ml(122);break;case 123:ml(123);break;case 126:ml(126);break;case 128:ml(128);break;case 131:ml(131);break;case 137:ml(137);break;case 146:ml(146);break;case 148:ml(148);break;case 150:ml(150);break;case 151:ml(151);break;case 160:ml(160);break;case 162:ml(162);break;case 163:ml(163);break;case 164:ml(164);break;case 172:ml(172);break;case 174:ml(174);break;case 178:ml(178);break;case 180:ml(180);break;case 181:ml(181);break;case 186:ml(186);break;case 198:ml(198);break;case 200:ml(200);break;case 201:ml(201);break;case 220:ml(220);break;case 224:ml(224);break;case 236:ml(236);break;case 237:ml(237);break;case 248:ml(248);break;case 249:ml(249);break;case 254:ml(254);break;case 266:ml(266);break;case 270:ml(270);break;case 73:ml(73);break;case 74:ml(74);break;case 82:ml(82);break;case 93:ml(93);break;case 96:ml(96);break;case 103:ml(103);break;case 108:ml(108);break;case 110:ml(110);break;case 111:ml(111);break;case 112:ml(112);break;case 119:ml(119);break;case 120:ml(120);break;case 121:ml(121);break;case 124:ml(124);break;case 129:ml(129);break;case 134:ml(134);break;case 135:ml(135);break;case 136:ml(136);break;case 145:ml(145);break;case 152:ml(152);break;case 153:ml(153);break;case 159:ml(159);break;case 165:ml(165);break;case 170:ml(170);break;case 182:ml(182);break;case 184:ml(184);break;case 185:ml(185);break;case 191:ml(191);break;case 202:ml(202);break;case 206:ml(206);break;case 212:ml(212);break;case 213:ml(213);break;case 216:ml(216);break;case 218:ml(218);break;case 219:ml(219);break;case 226:ml(226);break;case 227:ml(227);break;case 229:ml(229);break;case 235:ml(235);break;case 243:ml(243);break;case 244:ml(244);break;case 250:ml(250);break;case 253:ml(253);break;case 256:ml(256);break;case 260:ml(260);break;case 262:ml(262);break;case 274:ml(274);break;case 72:ml(72);break;case 81:ml(81);break;case 83:ml(83);break;case 85:ml(85);break;case 86:ml(86);break;case 91:ml(91);break;case 98:ml(98);break;case 101:ml(101);break;case 102:ml(102);break;case 104:ml(104);break;case 106:ml(106);break;case 125:ml(125);break;case 132:ml(132);break;case 133:ml(133);break;case 141:ml(141);break;case 154:ml(154);break;case 155:ml(155);break;case 161:ml(161);break;case 171:ml(171);break;case 192:ml(192);break;case 199:ml(199);break;case 203:ml(203);break;case 222:ml(222);break;case 225:ml(225);break;case 228:ml(228);break;case 234:ml(234);break;case 240:ml(240);break;case 251:ml(251);break;case 252:ml(252);break;case 257:ml(257);break;case 261:ml(261);break;case 263:ml(263);break;case 267:ml(267);break;case 97:ml(97);break;case 176:ml(176);break;default:ml(221)}}function Ba(){ql.startNonterminal("MainModule",Ll),f(),yl(),ja(),ql.endNonterminal("MainModule",Ll)}function ja(){ql.startNonterminal("Program",Ll),Ua(),ql.endNonterminal("Program",Ll)}function Fa(){ql.startNonterminal("Statements",Ll);for(;;){wl(274);switch(Al){case 34:El(269);break;case 35:xl(250);break;case 46:El(281);break;case 47:El(263);break;case 54:xl(4);break;case 55:xl(1);break;case 59:xl(3);break;case 66:El(255);break;case 68:El(271);break;case 77:El(56);break;case 82:El(278);break;case 121:El(277);break;case 132:El(202);break;case 137:El(206);break;case 174:El(204);break;case 218:El(205);break;case 219:El(208);break;case 260:El(209);break;case 276:El(273);break;case 278:El(272);break;case 5:case 45:El(186);break;case 31:case 32:El(253);break;case 40:case 42:El(265);break;case 86:case 102:El(200);break;case 110:case 159:El(207);break;case 124:case 165:El(191);break;case 184:case 216:El(266);break;case 103:case 129:case 235:case 262:El(197);break;case 8:case 9:case 10:case 11:case 44:El(192);break;case 96:case 119:case 202:case 244:case 250:case 256:El(203);break;case 73:case 74:case 93:case 111:case 112:case 135:case 136:case 206:case 212:case 213:case 229:El(198);break;case 6:case 70:case 72:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 88:case 89:case 90:case 91:case 94:case 97:case 98:case 101:case 104:case 105:case 106:case 108:case 109:case 113:case 118:case 120:case 122:case 123:case 125:case 126:case 128:case 131:case 133:case 134:case 141:case 145:case 146:case 148:case 150:case 151:case 152:case 153:case 154:case 155:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 176:case 178:case 180:case 181:case 182:case 185:case 186:case 191:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 220:case 221:case 222:case 224:case 225:case 226:case 227:case 228:case 234:case 236:case 237:case 240:case 243:case 248:case 249:case 251:case 252:case 253:case 254:case 257:case 261:case 263:case 266:case 267:case 270:case 274:El(195);break;default:Cl=Al}if(Cl!=25&&Cl!=282&&Cl!=12805&&Cl!=12806&&Cl!=12808&&Cl!=12809&&Cl!=12810&&Cl!=12811&&Cl!=12844&&Cl!=12845&&Cl!=12846&&Cl!=12870&&Cl!=12872&&Cl!=12873&&Cl!=12874&&Cl!=12875&&Cl!=12878&&Cl!=12879&&Cl!=12880&&Cl!=12881&&Cl!=12882&&Cl!=12883&&Cl!=12884&&Cl!=12885&&Cl!=12886&&Cl!=12888&&Cl!=12889&&Cl!=12890&&Cl!=12891&&Cl!=12893&&Cl!=12894&&Cl!=12896&&Cl!=12897&&Cl!=12898&&Cl!=12901&&Cl!=12902&&Cl!=12903&&Cl!=12904&&Cl!=12905&&Cl!=12906&&Cl!=12908&&Cl!=12909&&Cl!=12910&&Cl!=12911&&Cl!=12912&&Cl!=12913&&Cl!=12918&&Cl!=12919&&Cl!=12920&&Cl!=12921&&Cl!=12922&&Cl!=12923&&Cl!=12924&&Cl!=12925&&Cl!=12926&&Cl!=12928&&Cl!=12929&&Cl!=12931&&Cl!=12932&&Cl!=12933&&Cl!=12934&&Cl!=12935&&Cl!=12936&&Cl!=12937&&Cl!=12941&&Cl!=12945&&Cl!=12946&&Cl!=12948&&Cl!=12950&&Cl!=12951&&Cl!=12952&&Cl!=12953&&Cl!=12954&&Cl!=12955&&Cl!=12959&&Cl!=12960&&Cl!=12961&&Cl!=12962&&Cl!=12963&&Cl!=12964&&Cl!=12965&&Cl!=12967&&Cl!=12970&&Cl!=12971&&Cl!=12972&&Cl!=12974&&Cl!=12976&&Cl!=12978&&Cl!=12980&&Cl!=12981&&Cl!=12982&&Cl!=12984&&Cl!=12985&&Cl!=12986&&Cl!=12991&&Cl!=12992&&Cl!=12994&&Cl!=12998&&Cl!=12999&&Cl!=13e3&&Cl!=13001&&Cl!=13002&&Cl!=13003&&Cl!=13006&&Cl!=13012&&Cl!=13013&&Cl!=13016&&Cl!=13018&&Cl!=13019&&Cl!=13020&&Cl!=13021&&Cl!=13022&&Cl!=13024&&Cl!=13025&&Cl!=13026&&Cl!=13027&&Cl!=13028&&Cl!=13029&&Cl!=13034&&Cl!=13035&&Cl!=13036&&Cl!=13037&&Cl!=13040&&Cl!=13043&&Cl!=13044&&Cl!=13048&&Cl!=13049&&Cl!=13050&&Cl!=13051&&Cl!=13052&&Cl!=13053&&Cl!=13054&&Cl!=13056&&Cl!=13057&&Cl!=13060&&Cl!=13061&&Cl!=13062&&Cl!=13063&&Cl!=13066&&Cl!=13067&&Cl!=13070&&Cl!=13074&&Cl!=16134&&Cl!=20997&&Cl!=20998&&Cl!=21e3&&Cl!=21001&&Cl!=21002&&Cl!=21003&&Cl!=21036&&Cl!=21037&&Cl!=21038&&Cl!=21062&&Cl!=21064&&Cl!=21065&&Cl!=21066&&Cl!=21067&&Cl!=21070&&Cl!=21071&&Cl!=21072&&Cl!=21073&&Cl!=21074&&Cl!=21075&&Cl!=21076&&Cl!=21077&&Cl!=21078&&Cl!=21080&&Cl!=21081&&Cl!=21082&&Cl!=21083&&Cl!=21085&&Cl!=21086&&Cl!=21088&&Cl!=21089&&Cl!=21090&&Cl!=21093&&Cl!=21094&&Cl!=21095&&Cl!=21096&&Cl!=21097&&Cl!=21098&&Cl!=21100&&Cl!=21101&&Cl!=21102&&Cl!=21103&&Cl!=21104&&Cl!=21105&&Cl!=21110&&Cl!=21111&&Cl!=21112&&Cl!=21113&&Cl!=21114&&Cl!=21115&&Cl!=21116&&Cl!=21117&&Cl!=21118&&Cl!=21120&&Cl!=21121&&Cl!=21123&&Cl!=21124&&Cl!=21125&&Cl!=21126&&Cl!=21127&&Cl!=21128&&Cl!=21129&&Cl!=21133&&Cl!=21137&&Cl!=21138&&Cl!=21140&&Cl!=21142&&Cl!=21143&&Cl!=21144&&Cl!=21145&&Cl!=21146&&Cl!=21147&&Cl!=21151&&Cl!=21152&&Cl!=21153&&Cl!=21154&&Cl!=21155&&Cl!=21156&&Cl!=21157&&Cl!=21159&&Cl!=21162&&Cl!=21163&&Cl!=21164&&Cl!=21166&&Cl!=21168&&Cl!=21170&&Cl!=21172&&Cl!=21173&&Cl!=21174&&Cl!=21176&&Cl!=21177&&Cl!=21178&&Cl!=21183&&Cl!=21184&&Cl!=21186&&Cl!=21190&&Cl!=21191&&Cl!=21192&&Cl!=21193&&Cl!=21194&&Cl!=21195&&Cl!=21198&&Cl!=21204&&Cl!=21205&&Cl!=21208&&Cl!=21210&&Cl!=21211&&Cl!=21212&&Cl!=21213&&Cl!=21214&&Cl!=21216&&Cl!=21217&&Cl!=21218&&Cl!=21219&&Cl!=21220&&Cl!=21221&&Cl!=21226&&Cl!=21227&&Cl!=21228&&Cl!=21229&&Cl!=21232&&Cl!=21235&&Cl!=21236&&Cl!=21240&&Cl!=21241&&Cl!=21242&&Cl!=21243&&Cl!=21244&&Cl!=21245&&Cl!=21246&&Cl!=21248&&Cl!=21249&&Cl!=21252&&Cl!=21253&&Cl!=21254&&Cl!=21255&&Cl!=21258&&Cl!=21259&&Cl!=21262&&Cl!=21266&&Cl!=27141&&Cl!=27142&&Cl!=27144&&Cl!=27145&&Cl!=27146&&Cl!=27147&&Cl!=27180&&Cl!=27181&&Cl!=27182&&Cl!=27206&&Cl!=27208&&Cl!=27209&&Cl!=27210&&Cl!=27211&&Cl!=27214&&Cl!=27215&&Cl!=27216&&Cl!=27217&&Cl!=27218&&Cl!=27219&&Cl!=27220&&Cl!=27221&&Cl!=27222&&Cl!=27224&&Cl!=27225&&Cl!=27226&&Cl!=27227&&Cl!=27229&&Cl!=27230&&Cl!=27232&&Cl!=27233&&Cl!=27234&&Cl!=27237&&Cl!=27238&&Cl!=27239&&Cl!=27240&&Cl!=27241&&Cl!=27242&&Cl!=27244&&Cl!=27245&&Cl!=27246&&Cl!=27247&&Cl!=27248&&Cl!=27249&&Cl!=27254&&Cl!=27255&&Cl!=27256&&Cl!=27257&&Cl!=27258&&Cl!=27259&&Cl!=27260&&Cl!=27261&&Cl!=27262&&Cl!=27264&&Cl!=27265&&Cl!=27267&&Cl!=27268&&Cl!=27269&&Cl!=27270&&Cl!=27271&&Cl!=27272&&Cl!=27273&&Cl!=27277&&Cl!=27281&&Cl!=27282&&Cl!=27284&&Cl!=27286&&Cl!=27287&&Cl!=27288&&Cl!=27289&&Cl!=27290&&Cl!=27291&&Cl!=27295&&Cl!=27296&&Cl!=27297&&Cl!=27298&&Cl!=27299&&Cl!=27300&&Cl!=27301&&Cl!=27303&&Cl!=27306&&Cl!=27307&&Cl!=27308&&Cl!=27310&&Cl!=27312&&Cl!=27314&&Cl!=27316&&Cl!=27317&&Cl!=27318&&Cl!=27320&&Cl!=27321&&Cl!=27322&&Cl!=27327&&Cl!=27328&&Cl!=27330&&Cl!=27334&&Cl!=27335&&Cl!=27336&&Cl!=27337&&Cl!=27338&&Cl!=27339&&Cl!=27342&&Cl!=27348&&Cl!=27349&&Cl!=27352&&Cl!=27354&&Cl!=27355&&Cl!=27356&&Cl!=27357&&Cl!=27358&&Cl!=27360&&Cl!=27361&&Cl!=27362&&Cl!=27363&&Cl!=27364&&Cl!=27365&&Cl!=27370&&Cl!=27371&&Cl!=27372&&Cl!=27373&&Cl!=27376&&Cl!=27379&&Cl!=27380&&Cl!=27384&&Cl!=27385&&Cl!=27386&&Cl!=27387&&Cl!=27388&&Cl!=27389&&Cl!=27390&&Cl!=27392&&Cl!=27393&&Cl!=27396&&Cl!=27397&&Cl!=27398&&Cl!=27399&&Cl!=27402&&Cl!=27403&&Cl!=27406&&Cl!=27410&&Cl!=90198&&Cl!=90214&&Cl!=113284&&Cl!=144389&&Cl!=144390&&Cl!=144392&&Cl!=144393&&Cl!=144394&&Cl!=144395&&Cl!=144428&&Cl!=144429&&Cl!=144430&&Cl!=144454&&Cl!=144456&&Cl!=144457&&Cl!=144458&&Cl!=144459&&Cl!=144462&&Cl!=144463&&Cl!=144464&&Cl!=144465&&Cl!=144466&&Cl!=144467&&Cl!=144468&&Cl!=144469&&Cl!=144470&&Cl!=144472&&Cl!=144473&&Cl!=144474&&Cl!=144475&&Cl!=144477&&Cl!=144478&&Cl!=144480&&Cl!=144481&&Cl!=144482&&Cl!=144485&&Cl!=144486&&Cl!=144487&&Cl!=144488&&Cl!=144489&&Cl!=144490&&Cl!=144492&&Cl!=144493&&Cl!=144494&&Cl!=144495&&Cl!=144496&&Cl!=144497&&Cl!=144502&&Cl!=144503&&Cl!=144504&&Cl!=144505&&Cl!=144506&&Cl!=144507&&Cl!=144508&&Cl!=144509&&Cl!=144510&&Cl!=144512&&Cl!=144513&&Cl!=144515&&Cl!=144516&&Cl!=144517&&Cl!=144518&&Cl!=144519&&Cl!=144520&&Cl!=144521&&Cl!=144525&&Cl!=144529&&Cl!=144530&&Cl!=144532&&Cl!=144534&&Cl!=144535&&Cl!=144536&&Cl!=144537&&Cl!=144538&&Cl!=144539&&Cl!=144543&&Cl!=144544&&Cl!=144545&&Cl!=144546&&Cl!=144547&&Cl!=144548&&Cl!=144549&&Cl!=144551&&Cl!=144554&&Cl!=144555&&Cl!=144556&&Cl!=144558&&Cl!=144560&&Cl!=144562&&Cl!=144564&&Cl!=144565&&Cl!=144566&&Cl!=144568&&Cl!=144569&&Cl!=144570&&Cl!=144575&&Cl!=144576&&Cl!=144578&&Cl!=144582&&Cl!=144583&&Cl!=144584&&Cl!=144585&&Cl!=144586&&Cl!=144587&&Cl!=144590&&Cl!=144596&&Cl!=144597&&Cl!=144600&&Cl!=144602&&Cl!=144603&&Cl!=144604&&Cl!=144605&&Cl!=144606&&Cl!=144608&&Cl!=144609&&Cl!=144610&&Cl!=144611&&Cl!=144612&&Cl!=144613&&Cl!=144618&&Cl!=144619&&Cl!=144620&&Cl!=144621&&Cl!=144624&&Cl!=144627&&Cl!=144628&&Cl!=144632&&Cl!=144633&&Cl!=144634&&Cl!=144635&&Cl!=144636&&Cl!=144637&&Cl!=144638&&Cl!=144640&&Cl!=144641&&Cl!=144644&&Cl!=144645&&Cl!=144646&&Cl!=144647&&Cl!=144650&&Cl!=144651&&Cl!=144654&&Cl!=144658){Cl=pl(6,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{Xa(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(6,Ll,Cl)}}if(Cl!=-1&&Cl!=16134&&Cl!=27141&&Cl!=27142&&Cl!=27144&&Cl!=27145&&Cl!=27146&&Cl!=27147&&Cl!=27180&&Cl!=27181&&Cl!=27182&&Cl!=27206&&Cl!=27208&&Cl!=27209&&Cl!=27210&&Cl!=27211&&Cl!=27214&&Cl!=27215&&Cl!=27216&&Cl!=27217&&Cl!=27218&&Cl!=27219&&Cl!=27220&&Cl!=27221&&Cl!=27222&&Cl!=27224&&Cl!=27225&&Cl!=27226&&Cl!=27227&&Cl!=27229&&Cl!=27230&&Cl!=27232&&Cl!=27233&&Cl!=27234&&Cl!=27237&&Cl!=27238&&Cl!=27239&&Cl!=27240&&Cl!=27241&&Cl!=27242&&Cl!=27244&&Cl!=27245&&Cl!=27246&&Cl!=27247&&Cl!=27248&&Cl!=27249&&Cl!=27254&&Cl!=27255&&Cl!=27256&&Cl!=27257&&Cl!=27258&&Cl!=27259&&Cl!=27260&&Cl!=27261&&Cl!=27262&&Cl!=27264&&Cl!=27265&&Cl!=27267&&Cl!=27268&&Cl!=27269&&Cl!=27270&&Cl!=27271&&Cl!=27272&&Cl!=27273&&Cl!=27277&&Cl!=27281&&Cl!=27282&&Cl!=27284&&Cl!=27286&&Cl!=27287&&Cl!=27288&&Cl!=27289&&Cl!=27290&&Cl!=27291&&Cl!=27295&&Cl!=27296&&Cl!=27297&&Cl!=27298&&Cl!=27299&&Cl!=27300&&Cl!=27301&&Cl!=27303&&Cl!=27306&&Cl!=27307&&Cl!=27308&&Cl!=27310&&Cl!=27312&&Cl!=27314&&Cl!=27316&&Cl!=27317&&Cl!=27318&&Cl!=27320&&Cl!=27321&&Cl!=27322&&Cl!=27327&&Cl!=27328&&Cl!=27330&&Cl!=27334&&Cl!=27335&&Cl!=27336&&Cl!=27337&&Cl!=27338&&Cl!=27339&&Cl!=27342&&Cl!=27348&&Cl!=27349&&Cl!=27352&&Cl!=27354&&Cl!=27355&&Cl!=27356&&Cl!=27357&&Cl!=27358&&Cl!=27360&&Cl!=27361&&Cl!=27362&&Cl!=27363&&Cl!=27364&&Cl!=27365&&Cl!=27370&&Cl!=27371&&Cl!=27372&&Cl!=27373&&Cl!=27376&&Cl!=27379&&Cl!=27380&&Cl!=27384&&Cl!=27385&&Cl!=27386&&Cl!=27387&&Cl!=27388&&Cl!=27389&&Cl!=27390&&Cl!=27392&&Cl!=27393&&Cl!=27396&&Cl!=27397&&Cl!=27398&&Cl!=27399&&Cl!=27402&&Cl!=27403&&Cl!=27406&&Cl!=27410&&Cl!=90198&&Cl!=90214&&Cl!=113284)break;yl(),Wa()}ql.endNonterminal("Statements",Ll)}function Ia(){for(;;){wl(274);switch(Al){case 34:El(269);break;case 35:xl(250);break;case 46:El(281);break;case 47:El(263);break;case 54:xl(4);break;case 55:xl(1);break;case 59:xl(3);break;case 66:El(255);break;case 68:El(271);break;case 77:El(56);break;case 82:El(278);break;case 121:El(277);break;case 132:El(202);break;case 137:El(206);break;case 174:El(204);break;case 218:El(205);break;case 219:El(208);break;case 260:El(209);break;case 276:El(273);break;case 278:El(272);break;case 5:case 45:El(186);break;case 31:case 32:El(253);break;case 40:case 42:El(265);break;case 86:case 102:El(200);break;case 110:case 159:El(207);break;case 124:case 165:El(191);break;case 184:case 216:El(266);break;case 103:case 129:case 235:case 262:El(197);break;case 8:case 9:case 10:case 11:case 44:El(192);break;case 96:case 119:case 202:case 244:case 250:case 256:El(203);break;case 73:case 74:case 93:case 111:case 112:case 135:case 136:case 206:case 212:case 213:case 229:El(198);break;case 6:case 70:case 72:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 88:case 89:case 90:case 91:case 94:case 97:case 98:case 101:case 104:case 105:case 106:case 108:case 109:case 113:case 118:case 120:case 122:case 123:case 125:case 126:case 128:case 131:case 133:case 134:case 141:case 145:case 146:case 148:case 150:case 151:case 152:case 153:case 154:case 155:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 176:case 178:case 180:case 181:case 182:case 185:case 186:case 191:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 220:case 221:case 222:case 224:case 225:case 226:case 227:case 228:case 234:case 236:case 237:case 240:case 243:case 248:case 249:case 251:case 252:case 253:case 254:case 257:case 261:case 263:case 266:case 267:case 270:case 274:El(195);break;default:Cl=Al}if(Cl!=25&&Cl!=282&&Cl!=12805&&Cl!=12806&&Cl!=12808&&Cl!=12809&&Cl!=12810&&Cl!=12811&&Cl!=12844&&Cl!=12845&&Cl!=12846&&Cl!=12870&&Cl!=12872&&Cl!=12873&&Cl!=12874&&Cl!=12875&&Cl!=12878&&Cl!=12879&&Cl!=12880&&Cl!=12881&&Cl!=12882&&Cl!=12883&&Cl!=12884&&Cl!=12885&&Cl!=12886&&Cl!=12888&&Cl!=12889&&Cl!=12890&&Cl!=12891&&Cl!=12893&&Cl!=12894&&Cl!=12896&&Cl!=12897&&Cl!=12898&&Cl!=12901&&Cl!=12902&&Cl!=12903&&Cl!=12904&&Cl!=12905&&Cl!=12906&&Cl!=12908&&Cl!=12909&&Cl!=12910&&Cl!=12911&&Cl!=12912&&Cl!=12913&&Cl!=12918&&Cl!=12919&&Cl!=12920&&Cl!=12921&&Cl!=12922&&Cl!=12923&&Cl!=12924&&Cl!=12925&&Cl!=12926&&Cl!=12928&&Cl!=12929&&Cl!=12931&&Cl!=12932&&Cl!=12933&&Cl!=12934&&Cl!=12935&&Cl!=12936&&Cl!=12937&&Cl!=12941&&Cl!=12945&&Cl!=12946&&Cl!=12948&&Cl!=12950&&Cl!=12951&&Cl!=12952&&Cl!=12953&&Cl!=12954&&Cl!=12955&&Cl!=12959&&Cl!=12960&&Cl!=12961&&Cl!=12962&&Cl!=12963&&Cl!=12964&&Cl!=12965&&Cl!=12967&&Cl!=12970&&Cl!=12971&&Cl!=12972&&Cl!=12974&&Cl!=12976&&Cl!=12978&&Cl!=12980&&Cl!=12981&&Cl!=12982&&Cl!=12984&&Cl!=12985&&Cl!=12986&&Cl!=12991&&Cl!=12992&&Cl!=12994&&Cl!=12998&&Cl!=12999&&Cl!=13e3&&Cl!=13001&&Cl!=13002&&Cl!=13003&&Cl!=13006&&Cl!=13012&&Cl!=13013&&Cl!=13016&&Cl!=13018&&Cl!=13019&&Cl!=13020&&Cl!=13021&&Cl!=13022&&Cl!=13024&&Cl!=13025&&Cl!=13026&&Cl!=13027&&Cl!=13028&&Cl!=13029&&Cl!=13034&&Cl!=13035&&Cl!=13036&&Cl!=13037&&Cl!=13040&&Cl!=13043&&Cl!=13044&&Cl!=13048&&Cl!=13049&&Cl!=13050&&Cl!=13051&&Cl!=13052&&Cl!=13053&&Cl!=13054&&Cl!=13056&&Cl!=13057&&Cl!=13060&&Cl!=13061&&Cl!=13062&&Cl!=13063&&Cl!=13066&&Cl!=13067&&Cl!=13070&&Cl!=13074&&Cl!=16134&&Cl!=20997&&Cl!=20998&&Cl!=21e3&&Cl!=21001&&Cl!=21002&&Cl!=21003&&Cl!=21036&&Cl!=21037&&Cl!=21038&&Cl!=21062&&Cl!=21064&&Cl!=21065&&Cl!=21066&&Cl!=21067&&Cl!=21070&&Cl!=21071&&Cl!=21072&&Cl!=21073&&Cl!=21074&&Cl!=21075&&Cl!=21076&&Cl!=21077&&Cl!=21078&&Cl!=21080&&Cl!=21081&&Cl!=21082&&Cl!=21083&&Cl!=21085&&Cl!=21086&&Cl!=21088&&Cl!=21089&&Cl!=21090&&Cl!=21093&&Cl!=21094&&Cl!=21095&&Cl!=21096&&Cl!=21097&&Cl!=21098&&Cl!=21100&&Cl!=21101&&Cl!=21102&&Cl!=21103&&Cl!=21104&&Cl!=21105&&Cl!=21110&&Cl!=21111&&Cl!=21112&&Cl!=21113&&Cl!=21114&&Cl!=21115&&Cl!=21116&&Cl!=21117&&Cl!=21118&&Cl!=21120&&Cl!=21121&&Cl!=21123&&Cl!=21124&&Cl!=21125&&Cl!=21126&&Cl!=21127&&Cl!=21128&&Cl!=21129&&Cl!=21133&&Cl!=21137&&Cl!=21138&&Cl!=21140&&Cl!=21142&&Cl!=21143&&Cl!=21144&&Cl!=21145&&Cl!=21146&&Cl!=21147&&Cl!=21151&&Cl!=21152&&Cl!=21153&&Cl!=21154&&Cl!=21155&&Cl!=21156&&Cl!=21157&&Cl!=21159&&Cl!=21162&&Cl!=21163&&Cl!=21164&&Cl!=21166&&Cl!=21168&&Cl!=21170&&Cl!=21172&&Cl!=21173&&Cl!=21174&&Cl!=21176&&Cl!=21177&&Cl!=21178&&Cl!=21183&&Cl!=21184&&Cl!=21186&&Cl!=21190&&Cl!=21191&&Cl!=21192&&Cl!=21193&&Cl!=21194&&Cl!=21195&&Cl!=21198&&Cl!=21204&&Cl!=21205&&Cl!=21208&&Cl!=21210&&Cl!=21211&&Cl!=21212&&Cl!=21213&&Cl!=21214&&Cl!=21216&&Cl!=21217&&Cl!=21218&&Cl!=21219&&Cl!=21220&&Cl!=21221&&Cl!=21226&&Cl!=21227&&Cl!=21228&&Cl!=21229&&Cl!=21232&&Cl!=21235&&Cl!=21236&&Cl!=21240&&Cl!=21241&&Cl!=21242&&Cl!=21243&&Cl!=21244&&Cl!=21245&&Cl!=21246&&Cl!=21248&&Cl!=21249&&Cl!=21252&&Cl!=21253&&Cl!=21254&&Cl!=21255&&Cl!=21258&&Cl!=21259&&Cl!=21262&&Cl!=21266&&Cl!=27141&&Cl!=27142&&Cl!=27144&&Cl!=27145&&Cl!=27146&&Cl!=27147&&Cl!=27180&&Cl!=27181&&Cl!=27182&&Cl!=27206&&Cl!=27208&&Cl!=27209&&Cl!=27210&&Cl!=27211&&Cl!=27214&&Cl!=27215&&Cl!=27216&&Cl!=27217&&Cl!=27218&&Cl!=27219&&Cl!=27220&&Cl!=27221&&Cl!=27222&&Cl!=27224&&Cl!=27225&&Cl!=27226&&Cl!=27227&&Cl!=27229&&Cl!=27230&&Cl!=27232&&Cl!=27233&&Cl!=27234&&Cl!=27237&&Cl!=27238&&Cl!=27239&&Cl!=27240&&Cl!=27241&&Cl!=27242&&Cl!=27244&&Cl!=27245&&Cl!=27246&&Cl!=27247&&Cl!=27248&&Cl!=27249&&Cl!=27254&&Cl!=27255&&Cl!=27256&&Cl!=27257&&Cl!=27258&&Cl!=27259&&Cl!=27260&&Cl!=27261&&Cl!=27262&&Cl!=27264&&Cl!=27265&&Cl!=27267&&Cl!=27268&&Cl!=27269&&Cl!=27270&&Cl!=27271&&Cl!=27272&&Cl!=27273&&Cl!=27277&&Cl!=27281&&Cl!=27282&&Cl!=27284&&Cl!=27286&&Cl!=27287&&Cl!=27288&&Cl!=27289&&Cl!=27290&&Cl!=27291&&Cl!=27295&&Cl!=27296&&Cl!=27297&&Cl!=27298&&Cl!=27299&&Cl!=27300&&Cl!=27301&&Cl!=27303&&Cl!=27306&&Cl!=27307&&Cl!=27308&&Cl!=27310&&Cl!=27312&&Cl!=27314&&Cl!=27316&&Cl!=27317&&Cl!=27318&&Cl!=27320&&Cl!=27321&&Cl!=27322&&Cl!=27327&&Cl!=27328&&Cl!=27330&&Cl!=27334&&Cl!=27335&&Cl!=27336&&Cl!=27337&&Cl!=27338&&Cl!=27339&&Cl!=27342&&Cl!=27348&&Cl!=27349&&Cl!=27352&&Cl!=27354&&Cl!=27355&&Cl!=27356&&Cl!=27357&&Cl!=27358&&Cl!=27360&&Cl!=27361&&Cl!=27362&&Cl!=27363&&Cl!=27364&&Cl!=27365&&Cl!=27370&&Cl!=27371&&Cl!=27372&&Cl!=27373&&Cl!=27376&&Cl!=27379&&Cl!=27380&&Cl!=27384&&Cl!=27385&&Cl!=27386&&Cl!=27387&&Cl!=27388&&Cl!=27389&&Cl!=27390&&Cl!=27392&&Cl!=27393&&Cl!=27396&&Cl!=27397&&Cl!=27398&&Cl!=27399&&Cl!=27402&&Cl!=27403&&Cl!=27406&&Cl!=27410&&Cl!=90198&&Cl!=90214&&Cl!=113284&&Cl!=144389&&Cl!=144390&&Cl!=144392&&Cl!=144393&&Cl!=144394&&Cl!=144395&&Cl!=144428&&Cl!=144429&&Cl!=144430&&Cl!=144454&&Cl!=144456&&Cl!=144457&&Cl!=144458&&Cl!=144459&&Cl!=144462&&Cl!=144463&&Cl!=144464&&Cl!=144465&&Cl!=144466&&Cl!=144467&&Cl!=144468&&Cl!=144469&&Cl!=144470&&Cl!=144472&&Cl!=144473&&Cl!=144474&&Cl!=144475&&Cl!=144477&&Cl!=144478&&Cl!=144480&&Cl!=144481&&Cl!=144482&&Cl!=144485&&Cl!=144486&&Cl!=144487&&Cl!=144488&&Cl!=144489&&Cl!=144490&&Cl!=144492&&Cl!=144493&&Cl!=144494&&Cl!=144495&&Cl!=144496&&Cl!=144497&&Cl!=144502&&Cl!=144503&&Cl!=144504&&Cl!=144505&&Cl!=144506&&Cl!=144507&&Cl!=144508&&Cl!=144509&&Cl!=144510&&Cl!=144512&&Cl!=144513&&Cl!=144515&&Cl!=144516&&Cl!=144517&&Cl!=144518&&Cl!=144519&&Cl!=144520&&Cl!=144521&&Cl!=144525&&Cl!=144529&&Cl!=144530&&Cl!=144532&&Cl!=144534&&Cl!=144535&&Cl!=144536&&Cl!=144537&&Cl!=144538&&Cl!=144539&&Cl!=144543&&Cl!=144544&&Cl!=144545&&Cl!=144546&&Cl!=144547&&Cl!=144548&&Cl!=144549&&Cl!=144551&&Cl!=144554&&Cl!=144555&&Cl!=144556&&Cl!=144558&&Cl!=144560&&Cl!=144562&&Cl!=144564&&Cl!=144565&&Cl!=144566&&Cl!=144568&&Cl!=144569&&Cl!=144570&&Cl!=144575&&Cl!=144576&&Cl!=144578&&Cl!=144582&&Cl!=144583&&Cl!=144584&&Cl!=144585&&Cl!=144586&&Cl!=144587&&Cl!=144590&&Cl!=144596&&Cl!=144597&&Cl!=144600&&Cl!=144602&&Cl!=144603&&Cl!=144604&&Cl!=144605&&Cl!=144606&&Cl!=144608&&Cl!=144609&&Cl!=144610&&Cl!=144611&&Cl!=144612&&Cl!=144613&&Cl!=144618&&Cl!=144619&&Cl!=144620&&Cl!=144621&&Cl!=144624&&Cl!=144627&&Cl!=144628&&Cl!=144632&&Cl!=144633&&Cl!=144634&&Cl!=144635&&Cl!=144636&&Cl!=144637&&Cl!=144638&&Cl!=144640&&Cl!=144641&&Cl!=144644&&Cl!=144645&&Cl!=144646&&Cl!=144647&&Cl!=144650&&Cl!=144651&&Cl!=144654&&Cl!=144658){Cl=pl(6,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{Xa(),hl(6,t,-1);continue}catch(a){kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(6,t,-2);break}}}if(Cl!=-1&&Cl!=16134&&Cl!=27141&&Cl!=27142&&Cl!=27144&&Cl!=27145&&Cl!=27146&&Cl!=27147&&Cl!=27180&&Cl!=27181&&Cl!=27182&&Cl!=27206&&Cl!=27208&&Cl!=27209&&Cl!=27210&&Cl!=27211&&Cl!=27214&&Cl!=27215&&Cl!=27216&&Cl!=27217&&Cl!=27218&&Cl!=27219&&Cl!=27220&&Cl!=27221&&Cl!=27222&&Cl!=27224&&Cl!=27225&&Cl!=27226&&Cl!=27227&&Cl!=27229&&Cl!=27230&&Cl!=27232&&Cl!=27233&&Cl!=27234&&Cl!=27237&&Cl!=27238&&Cl!=27239&&Cl!=27240&&Cl!=27241&&Cl!=27242&&Cl!=27244&&Cl!=27245&&Cl!=27246&&Cl!=27247&&Cl!=27248&&Cl!=27249&&Cl!=27254&&Cl!=27255&&Cl!=27256&&Cl!=27257&&Cl!=27258&&Cl!=27259&&Cl!=27260&&Cl!=27261&&Cl!=27262&&Cl!=27264&&Cl!=27265&&Cl!=27267&&Cl!=27268&&Cl!=27269&&Cl!=27270&&Cl!=27271&&Cl!=27272&&Cl!=27273&&Cl!=27277&&Cl!=27281&&Cl!=27282&&Cl!=27284&&Cl!=27286&&Cl!=27287&&Cl!=27288&&Cl!=27289&&Cl!=27290&&Cl!=27291&&Cl!=27295&&Cl!=27296&&Cl!=27297&&Cl!=27298&&Cl!=27299&&Cl!=27300&&Cl!=27301&&Cl!=27303&&Cl!=27306&&Cl!=27307&&Cl!=27308&&Cl!=27310&&Cl!=27312&&Cl!=27314&&Cl!=27316&&Cl!=27317&&Cl!=27318&&Cl!=27320&&Cl!=27321&&Cl!=27322&&Cl!=27327&&Cl!=27328&&Cl!=27330&&Cl!=27334&&Cl!=27335&&Cl!=27336&&Cl!=27337&&Cl!=27338&&Cl!=27339&&Cl!=27342&&Cl!=27348&&Cl!=27349&&Cl!=27352&&Cl!=27354&&Cl!=27355&&Cl!=27356&&Cl!=27357&&Cl!=27358&&Cl!=27360&&Cl!=27361&&Cl!=27362&&Cl!=27363&&Cl!=27364&&Cl!=27365&&Cl!=27370&&Cl!=27371&&Cl!=27372&&Cl!=27373&&Cl!=27376&&Cl!=27379&&Cl!=27380&&Cl!=27384&&Cl!=27385&&Cl!=27386&&Cl!=27387&&Cl!=27388&&Cl!=27389&&Cl!=27390&&Cl!=27392&&Cl!=27393&&Cl!=27396&&Cl!=27397&&Cl!=27398&&Cl!=27399&&Cl!=27402&&Cl!=27403&&Cl!=27406&&Cl!=27410&&Cl!=90198&&Cl!=90214&&Cl!=113284)break;Xa()}}function qa(){ql.startNonterminal("StatementsAndExpr",Ll),Fa(),yl(),Q(),ql.endNonterminal("StatementsAndExpr",Ll)}function Ra(){Ia(),G()}function Ua(){ql.startNonterminal("StatementsAndOptionalExpr",Ll),Fa(),Al!=25&&Al!=282&&(yl(),Q()),ql.endNonterminal("StatementsAndOptionalExpr",Ll)}function za(){Ia(),Al!=25&&Al!=282&&G()}function Wa(){ql.startNonterminal("Statement",Ll);switch(Al){case 132:El(189);break;case 137:El(196);break;case 174:El(193);break;case 250:El(190);break;case 262:El(187);break;case 276:El(273);break;case 31:case 32:El(253);break;case 86:case 102:El(188);break;case 152:case 243:case 253:case 267:El(185);break;default:Cl=Al}if(Cl==2836||Cl==3103||Cl==3104||Cl==3348||Cl==4372||Cl==4884||Cl==5396||Cl==5908||Cl==16148||Cl==16660||Cl==17675||Cl==17684||Cl==18196||Cl==20756||Cl==21780||Cl==22804||Cl==23316||Cl==23828||Cl==24340||Cl==27924||Cl==28436||Cl==30484||Cl==34068||Cl==35092||Cl==35871||Cl==35872||Cl==36116||Cl==36895||Cl==36896||Cl==37140||Cl==37407||Cl==37408||Cl==37652||Cl==37919||Cl==37920||Cl==38164||Cl==38431||Cl==38432||Cl==38676||Cl==39700||Cl==39967||Cl==39968||Cl==40212||Cl==40479||Cl==40480||Cl==40724||Cl==40991||Cl==40992||Cl==41236||Cl==41503||Cl==41504||Cl==41748||Cl==42015||Cl==42016||Cl==42260||Cl==42527||Cl==42528||Cl==42772||Cl==43039||Cl==43040||Cl==43284||Cl==43551||Cl==43552||Cl==43796||Cl==44063||Cl==44064||Cl==44308||Cl==45087||Cl==45088||Cl==45332||Cl==45599||Cl==45600||Cl==45844||Cl==46111||Cl==46112||Cl==46356||Cl==46623||Cl==46624||Cl==46868||Cl==47647||Cl==47648||Cl==47892||Cl==48159||Cl==48160||Cl==48404||Cl==49183||Cl==49184||Cl==49428||Cl==49695||Cl==49696||Cl==49940||Cl==50207||Cl==50208||Cl==50452||Cl==51743||Cl==51744||Cl==51988||Cl==52255||Cl==52256||Cl==52500||Cl==52767||Cl==52768||Cl==53012||Cl==53279||Cl==53280||Cl==53524||Cl==53791||Cl==53792||Cl==54036||Cl==54303||Cl==54304||Cl==54548||Cl==55327||Cl==55328||Cl==55572||Cl==55839||Cl==55840||Cl==56084||Cl==56351||Cl==56352||Cl==56596||Cl==56863||Cl==56864||Cl==57108||Cl==57375||Cl==57376||Cl==57620||Cl==57887||Cl==57888||Cl==58132||Cl==60447||Cl==60448||Cl==60692||Cl==60959||Cl==60960||Cl==61204||Cl==61471||Cl==61472||Cl==61716||Cl==61983||Cl==61984||Cl==62228||Cl==62495||Cl==62496||Cl==62740||Cl==63007||Cl==63008||Cl==63252||Cl==63519||Cl==63520||Cl==63764||Cl==64031||Cl==64032||Cl==64276||Cl==64543||Cl==64544||Cl==64788||Cl==65567||Cl==65568||Cl==65812||Cl==66079||Cl==66080||Cl==66324||Cl==67103||Cl==67104||Cl==67348||Cl==67615||Cl==67616||Cl==67860||Cl==68127||Cl==68128||Cl==68372||Cl==68639||Cl==68640||Cl==68884||Cl==69151||Cl==69152||Cl==69396||Cl==69663||Cl==69664||Cl==69908||Cl==70175||Cl==70176||Cl==70420||Cl==72223||Cl==72224||Cl==72468||Cl==74271||Cl==74272||Cl==74516||Cl==74783||Cl==74784||Cl==75028||Cl==75807||Cl==75808||Cl==76052||Cl==76831||Cl==76832||Cl==77076||Cl==77343||Cl==77344||Cl==77588||Cl==77855||Cl==77856||Cl==78100||Cl==78367||Cl==78368||Cl==78612||Cl==78879||Cl==78880||Cl==79124||Cl==79391||Cl==79392||Cl==79636||Cl==81439||Cl==81440||Cl==81684||Cl==81951||Cl==81952||Cl==82196||Cl==82463||Cl==82464||Cl==82708||Cl==82975||Cl==82976||Cl==83220||Cl==83487||Cl==83488||Cl==83732||Cl==83999||Cl==84e3||Cl==84244||Cl==84511||Cl==84512||Cl==84756||Cl==85535||Cl==85536||Cl==85780||Cl==87071||Cl==87072||Cl==87316||Cl==87583||Cl==87584||Cl==87828||Cl==88095||Cl==88096||Cl==88340||Cl==89119||Cl==89120||Cl==89364||Cl==90143||Cl==90144||Cl==90388||Cl==91167||Cl==91168||Cl==91412||Cl==92191||Cl==92192||Cl==92436||Cl==92703||Cl==92704||Cl==92948||Cl==93215||Cl==93216||Cl==93460||Cl==94239||Cl==94240||Cl==94484||Cl==94751||Cl==94752||Cl==94996||Cl==95263||Cl==95264||Cl==95508||Cl==97823||Cl==97824||Cl==98068||Cl==98335||Cl==98336||Cl==98580||Cl==99359||Cl==99360||Cl==99604||Cl==101407||Cl==101408||Cl==101652||Cl==101919||Cl==101920||Cl==102164||Cl==102431||Cl==102432||Cl==102676||Cl==102943||Cl==102944||Cl==103188||Cl==103455||Cl==103456||Cl==103700||Cl==103967||Cl==103968||Cl==104212||Cl==105503||Cl==105504||Cl==105748||Cl==108575||Cl==108576||Cl==108820||Cl==109087||Cl==109088||Cl==109332||Cl==110623||Cl==110624||Cl==110868||Cl==111647||Cl==111648||Cl==111892||Cl==112159||Cl==112160||Cl==112404||Cl==112671||Cl==112672||Cl==112916||Cl==113183||Cl==113184||Cl==113428||Cl==113695||Cl==113696||Cl==113940||Cl==114719||Cl==114720||Cl==114964||Cl==115231||Cl==115232||Cl==115476||Cl==115743||Cl==115744||Cl==115988||Cl==116255||Cl==116256||Cl==116500||Cl==116767||Cl==116768||Cl==117012||Cl==117279||Cl==117280||Cl==117524||Cl==119839||Cl==119840||Cl==120084||Cl==120351||Cl==120352||Cl==120596||Cl==120863||Cl==120864||Cl==121108||Cl==121375||Cl==121376||Cl==121620||Cl==122911||Cl==122912||Cl==123156||Cl==124447||Cl==124448||Cl==124692||Cl==124959||Cl==124960||Cl==125204||Cl==127007||Cl==127008||Cl==127252||Cl==127519||Cl==127520||Cl==127764||Cl==128031||Cl==128032||Cl==128276||Cl==128543||Cl==128544||Cl==128788||Cl==129055||Cl==129056||Cl==129300||Cl==129567||Cl==129568||Cl==129812||Cl==130079||Cl==130080||Cl==130324||Cl==131103||Cl==131104||Cl==131348||Cl==131615||Cl==131616||Cl==131860||Cl==133151||Cl==133152||Cl==133396||Cl==133663||Cl==133664||Cl==133908||Cl==134175||Cl==134176||Cl==134420||Cl==134687||Cl==134688||Cl==134932||Cl==136223||Cl==136224||Cl==136468||Cl==136735||Cl==136736||Cl==136980||Cl==138271||Cl==138272||Cl==138516||Cl==140319||Cl==140320||Cl==140564||Cl==141588||Cl==142612||Cl==144660){Cl=pl(7,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{$a(),Cl=-1}catch(a){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Ka(),Cl=-2}catch(f){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Ga(),Cl=-3}catch(l){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Sf(),Cl=-12}catch(c){Cl=-13}}}}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(7,Ll,Cl)}}switch(Cl){case-2:Ja();break;case-3:Qa();break;case 90198:Ya();break;case 90214:ef();break;case 113284:nf();break;case 16009:case 16046:case 116910:case 119945:case 128649:sf();break;case 17560:ff();break;case 17651:cf();break;case 141562:vf();break;case 17661:gf();break;case-12:case 16134:Ef();break;case-13:xf();break;default:Va()}ql.endNonterminal("Statement",Ll)}function Xa(){switch(Al){case 132:El(189);break;case 137:El(196);break;case 174:El(193);break;case 250:El(190);break;case 262:El(187);break;case 276:El(273);break;case 31:case 32:El(253);break;case 86:case 102:El(188);break;case 152:case 243:case 253:case 267:El(185);break;default:Cl=Al}if(Cl==2836||Cl==3103||Cl==3104||Cl==3348||Cl==4372||Cl==4884||Cl==5396||Cl==5908||Cl==16148||Cl==16660||Cl==17675||Cl==17684||Cl==18196||Cl==20756||Cl==21780||Cl==22804||Cl==23316||Cl==23828||Cl==24340||Cl==27924||Cl==28436||Cl==30484||Cl==34068||Cl==35092||Cl==35871||Cl==35872||Cl==36116||Cl==36895||Cl==36896||Cl==37140||Cl==37407||Cl==37408||Cl==37652||Cl==37919||Cl==37920||Cl==38164||Cl==38431||Cl==38432||Cl==38676||Cl==39700||Cl==39967||Cl==39968||Cl==40212||Cl==40479||Cl==40480||Cl==40724||Cl==40991||Cl==40992||Cl==41236||Cl==41503||Cl==41504||Cl==41748||Cl==42015||Cl==42016||Cl==42260||Cl==42527||Cl==42528||Cl==42772||Cl==43039||Cl==43040||Cl==43284||Cl==43551||Cl==43552||Cl==43796||Cl==44063||Cl==44064||Cl==44308||Cl==45087||Cl==45088||Cl==45332||Cl==45599||Cl==45600||Cl==45844||Cl==46111||Cl==46112||Cl==46356||Cl==46623||Cl==46624||Cl==46868||Cl==47647||Cl==47648||Cl==47892||Cl==48159||Cl==48160||Cl==48404||Cl==49183||Cl==49184||Cl==49428||Cl==49695||Cl==49696||Cl==49940||Cl==50207||Cl==50208||Cl==50452||Cl==51743||Cl==51744||Cl==51988||Cl==52255||Cl==52256||Cl==52500||Cl==52767||Cl==52768||Cl==53012||Cl==53279||Cl==53280||Cl==53524||Cl==53791||Cl==53792||Cl==54036||Cl==54303||Cl==54304||Cl==54548||Cl==55327||Cl==55328||Cl==55572||Cl==55839||Cl==55840||Cl==56084||Cl==56351||Cl==56352||Cl==56596||Cl==56863||Cl==56864||Cl==57108||Cl==57375||Cl==57376||Cl==57620||Cl==57887||Cl==57888||Cl==58132||Cl==60447||Cl==60448||Cl==60692||Cl==60959||Cl==60960||Cl==61204||Cl==61471||Cl==61472||Cl==61716||Cl==61983||Cl==61984||Cl==62228||Cl==62495||Cl==62496||Cl==62740||Cl==63007||Cl==63008||Cl==63252||Cl==63519||Cl==63520||Cl==63764||Cl==64031||Cl==64032||Cl==64276||Cl==64543||Cl==64544||Cl==64788||Cl==65567||Cl==65568||Cl==65812||Cl==66079||Cl==66080||Cl==66324||Cl==67103||Cl==67104||Cl==67348||Cl==67615||Cl==67616||Cl==67860||Cl==68127||Cl==68128||Cl==68372||Cl==68639||Cl==68640||Cl==68884||Cl==69151||Cl==69152||Cl==69396||Cl==69663||Cl==69664||Cl==69908||Cl==70175||Cl==70176||Cl==70420||Cl==72223||Cl==72224||Cl==72468||Cl==74271||Cl==74272||Cl==74516||Cl==74783||Cl==74784||Cl==75028||Cl==75807||Cl==75808||Cl==76052||Cl==76831||Cl==76832||Cl==77076||Cl==77343||Cl==77344||Cl==77588||Cl==77855||Cl==77856||Cl==78100||Cl==78367||Cl==78368||Cl==78612||Cl==78879||Cl==78880||Cl==79124||Cl==79391||Cl==79392||Cl==79636||Cl==81439||Cl==81440||Cl==81684||Cl==81951||Cl==81952||Cl==82196||Cl==82463||Cl==82464||Cl==82708||Cl==82975||Cl==82976||Cl==83220||Cl==83487||Cl==83488||Cl==83732||Cl==83999||Cl==84e3||Cl==84244||Cl==84511||Cl==84512||Cl==84756||Cl==85535||Cl==85536||Cl==85780||Cl==87071||Cl==87072||Cl==87316||Cl==87583||Cl==87584||Cl==87828||Cl==88095||Cl==88096||Cl==88340||Cl==89119||Cl==89120||Cl==89364||Cl==90143||Cl==90144||Cl==90388||Cl==91167||Cl==91168||Cl==91412||Cl==92191||Cl==92192||Cl==92436||Cl==92703||Cl==92704||Cl==92948||Cl==93215||Cl==93216||Cl==93460||Cl==94239||Cl==94240||Cl==94484||Cl==94751||Cl==94752||Cl==94996||Cl==95263||Cl==95264||Cl==95508||Cl==97823||Cl==97824||Cl==98068||Cl==98335||Cl==98336||Cl==98580||Cl==99359||Cl==99360||Cl==99604||Cl==101407||Cl==101408||Cl==101652||Cl==101919||Cl==101920||Cl==102164||Cl==102431||Cl==102432||Cl==102676||Cl==102943||Cl==102944||Cl==103188||Cl==103455||Cl==103456||Cl==103700||Cl==103967||Cl==103968||Cl==104212||Cl==105503||Cl==105504||Cl==105748||Cl==108575||Cl==108576||Cl==108820||Cl==109087||Cl==109088||Cl==109332||Cl==110623||Cl==110624||Cl==110868||Cl==111647||Cl==111648||Cl==111892||Cl==112159||Cl==112160||Cl==112404||Cl==112671||Cl==112672||Cl==112916||Cl==113183||Cl==113184||Cl==113428||Cl==113695||Cl==113696||Cl==113940||Cl==114719||Cl==114720||Cl==114964||Cl==115231||Cl==115232||Cl==115476||Cl==115743||Cl==115744||Cl==115988||Cl==116255||Cl==116256||Cl==116500||Cl==116767||Cl==116768||Cl==117012||Cl==117279||Cl==117280||Cl==117524||Cl==119839||Cl==119840||Cl==120084||Cl==120351||Cl==120352||Cl==120596||Cl==120863||Cl==120864||Cl==121108||Cl==121375||Cl==121376||Cl==121620||Cl==122911||Cl==122912||Cl==123156||Cl==124447||Cl==124448||Cl==124692||Cl==124959||Cl==124960||Cl==125204||Cl==127007||Cl==127008||Cl==127252||Cl==127519||Cl==127520||Cl==127764||Cl==128031||Cl==128032||Cl==128276||Cl==128543||Cl==128544||Cl==128788||Cl==129055||Cl==129056||Cl==129300||Cl==129567||Cl==129568||Cl==129812||Cl==130079||Cl==130080||Cl==130324||Cl==131103||Cl==131104||Cl==131348||Cl==131615||Cl==131616||Cl==131860||Cl==133151||Cl==133152||Cl==133396||Cl==133663||Cl==133664||Cl==133908||Cl==134175||Cl==134176||Cl==134420||Cl==134687||Cl==134688||Cl==134932||Cl==136223||Cl==136224||Cl==136468||Cl==136735||Cl==136736||Cl==136980||Cl==138271||Cl==138272||Cl==138516||Cl==140319||Cl==140320||Cl==140564||Cl==141588||Cl==142612||Cl==144660){Cl=pl(7,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{$a(),hl(7,t,-1),Cl=-14}catch(a){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Ka(),hl(7,t,-2),Cl=-14}catch(f){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Ga(),hl(7,t,-3),Cl=-14}catch(l){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Sf(),hl(7,t,-12),Cl=-14}catch(c){Cl=-13,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(7,t,-13)}}}}}}switch(Cl){case-2:Ka();break;case-3:Ga();break;case 90198:Za();break;case 90214:tf();break;case 113284:rf();break;case 16009:case 16046:case 116910:case 119945:case 128649:of();break;case 17560:lf();break;case 17651:hf();break;case 141562:mf();break;case 17661:yf();break;case-12:case 16134:Sf();break;case-13:Tf();break;case-14:break;default:$a()}}function Va(){ql.startNonterminal("ApplyStatement",Ll),kf(),vl(53),ql.endNonterminal("ApplyStatement",Ll)}function $a(){Lf(),ml(53)}function Ja(){ql.startNonterminal("AssignStatement",Ll),vl(31),wl(253),yl(),fi(),wl(27),vl(52),wl(267),yl(),Nf(),vl(53),ql.endNonterminal("AssignStatement",Ll)}function Ka(){ml(31),wl(253),li(),wl(27),ml(52),wl(267),Cf(),ml(53)}function Qa(){ql.startNonterminal("BlockStatement",Ll),vl(276),wl(273),yl(),Fa(),vl(282),ql.endNonterminal("BlockStatement",Ll)}function Ga(){ml(276),wl(273),Ia(),ml(282)}function Ya(){ql.startNonterminal("BreakStatement",Ll),vl(86),wl(59),vl(176),wl(28),vl(53),ql.endNonterminal("BreakStatement",Ll)}function Za(){ml(86),wl(59),ml(176),wl(28),ml(53)}function ef(){ql.startNonterminal("ContinueStatement",Ll),vl(102),wl(59),vl(176),wl(28),vl(53),ql.endNonterminal("ContinueStatement",Ll)}function tf(){ml(102),wl(59),ml(176),wl(28),ml(53)}function nf(){ql.startNonterminal("ExitStatement",Ll),vl(132),wl(71),vl(221),wl(267),yl(),Nf(),vl(53),ql.endNonterminal("ExitStatement",Ll)}function rf(){ml(132),wl(71),ml(221),wl(267),Cf(),ml(53)}function sf(){ql.startNonterminal("FLWORStatement",Ll),et();for(;;){wl(173);if(Al==220)break;yl(),nt()}yl(),uf(),ql.endNonterminal("FLWORStatement",Ll)}function of(){tt();for(;;){wl(173);if(Al==220)break;rt()}af()}function uf(){ql.startNonterminal("ReturnStatement",Ll),vl(220),wl(267),yl(),Wa(),ql.endNonterminal("ReturnStatement",Ll)}function af(){ml(220),wl(267),Xa()}function ff(){ql.startNonterminal("IfStatement",Ll),vl(152),wl(22),vl(34),wl(267),yl(),Q(),vl(37),wl(77),vl(245),wl(267),yl(),Wa(),wl(48),vl(122),wl(267),yl(),Wa(),ql.endNonterminal("IfStatement",Ll)}function lf(){ml(152),wl(22),ml(34),wl(267),G(),ml(37),wl(77),ml(245),wl(267),Xa(),wl(48),ml(122),wl(267),Xa()}function cf(){ql.startNonterminal("SwitchStatement",Ll),vl(243),wl(22),vl(34),wl(267),yl(),Q(),vl(37);for(;;){wl(35),yl(),pf(),wl(113);if(Al!=88)break}vl(109),wl(70),vl(220),wl(267),yl(),Wa(),ql.endNonterminal("SwitchStatement",Ll)}function hf(){ml(243),wl(22),ml(34),wl(267),G(),ml(37);for(;;){wl(35),df(),wl(113);if(Al!=88)break}ml(109),wl(70),ml(220),wl(267),Xa()}function pf(){ql.startNonterminal("SwitchCaseStatement",Ll);for(;;){vl(88),wl(267),yl(),cn();if(Al!=88)break}vl(220),wl(267),yl(),Wa(),ql.endNonterminal("SwitchCaseStatement",Ll)}function df(){for(;;){ml(88),wl(267),hn();if(Al!=88)break}ml(220),wl(267),Xa()}function vf(){ql.startNonterminal("TryCatchStatement",Ll),vl(250),wl(87),yl(),Qa();for(;;){wl(36),vl(91),wl(255),yl(),An(),yl(),Qa(),wl(274);switch(Al){case 91:El(276);break;default:Cl=Al}if(Cl==38491||Cl==45659||Cl==46171||Cl==60507||Cl==65627||Cl==67163||Cl==74843||Cl==76891||Cl==77403||Cl==82011||Cl==83035||Cl==84059||Cl==88155||Cl==91227||Cl==92251||Cl==95323||Cl==102491||Cl==127067||Cl==127579||Cl==130139){Cl=pl(8,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{wl(36),ml(91),wl(255),On(),Ga(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(8,Ll,Cl)}}if(Cl!=-1&&Cl!=2651&&Cl!=3163&&Cl!=35931&&Cl!=36955&&Cl!=37467&&Cl!=37979&&Cl!=40027&&Cl!=40539&&Cl!=41051&&Cl!=41563&&Cl!=42075&&Cl!=42587&&Cl!=43099&&Cl!=43611&&Cl!=44123&&Cl!=45147&&Cl!=46683&&Cl!=47707&&Cl!=48219&&Cl!=49243&&Cl!=49755&&Cl!=50267&&Cl!=51803&&Cl!=52315&&Cl!=52827&&Cl!=53339&&Cl!=53851&&Cl!=54363&&Cl!=55387&&Cl!=55899&&Cl!=56411&&Cl!=56923&&Cl!=57435&&Cl!=57947&&Cl!=61019&&Cl!=61531&&Cl!=62043&&Cl!=62555&&Cl!=63067&&Cl!=63579&&Cl!=64091&&Cl!=64603&&Cl!=66139&&Cl!=67675&&Cl!=68187&&Cl!=68699&&Cl!=69211&&Cl!=69723&&Cl!=70235&&Cl!=72283&&Cl!=74331&&Cl!=75867&&Cl!=77915&&Cl!=78427&&Cl!=78939&&Cl!=79451&&Cl!=81499&&Cl!=82523&&Cl!=83547&&Cl!=84571&&Cl!=85595&&Cl!=87131&&Cl!=87643&&Cl!=89179&&Cl!=90203&&Cl!=92763&&Cl!=93275&&Cl!=94299&&Cl!=94811&&Cl!=97883&&Cl!=98395&&Cl!=99419&&Cl!=101467&&Cl!=101979&&Cl!=103003&&Cl!=103515&&Cl!=104027&&Cl!=105563&&Cl!=108635&&Cl!=109147&&Cl!=110683&&Cl!=111707&&Cl!=112219&&Cl!=112731&&Cl!=113243&&Cl!=113755&&Cl!=114779&&Cl!=115291&&Cl!=115803&&Cl!=116315&&Cl!=116827&&Cl!=117339&&Cl!=119899&&Cl!=120411&&Cl!=120923&&Cl!=121435&&Cl!=122971&&Cl!=124507&&Cl!=125019&&Cl!=128091&&Cl!=128603&&Cl!=129115&&Cl!=129627&&Cl!=131163&&Cl!=131675&&Cl!=133211&&Cl!=133723&&Cl!=134235&&Cl!=134747&&Cl!=136283&&Cl!=136795&&Cl!=138331&&Cl!=140379)break}ql.endNonterminal("TryCatchStatement",Ll)}function mf(){ml(250),wl(87),Ga(),wl(36),ml(91),wl(255),On(),Ga();for(;;){wl(274);switch(Al){case 91:El(276);break;default:Cl=Al}if(Cl==38491||Cl==45659||Cl==46171||Cl==60507||Cl==65627||Cl==67163||Cl==74843||Cl==76891||Cl==77403||Cl==82011||Cl==83035||Cl==84059||Cl==88155||Cl==91227||Cl==92251||Cl==95323||Cl==102491||Cl==127067||Cl==127579||Cl==130139){Cl=pl(8,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{wl(36),ml(91),wl(255),On(),Ga(),hl(8,t,-1);continue}catch(a){kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(8,t,-2);break}}}if(Cl!=-1&&Cl!=2651&&Cl!=3163&&Cl!=35931&&Cl!=36955&&Cl!=37467&&Cl!=37979&&Cl!=40027&&Cl!=40539&&Cl!=41051&&Cl!=41563&&Cl!=42075&&Cl!=42587&&Cl!=43099&&Cl!=43611&&Cl!=44123&&Cl!=45147&&Cl!=46683&&Cl!=47707&&Cl!=48219&&Cl!=49243&&Cl!=49755&&Cl!=50267&&Cl!=51803&&Cl!=52315&&Cl!=52827&&Cl!=53339&&Cl!=53851&&Cl!=54363&&Cl!=55387&&Cl!=55899&&Cl!=56411&&Cl!=56923&&Cl!=57435&&Cl!=57947&&Cl!=61019&&Cl!=61531&&Cl!=62043&&Cl!=62555&&Cl!=63067&&Cl!=63579&&Cl!=64091&&Cl!=64603&&Cl!=66139&&Cl!=67675&&Cl!=68187&&Cl!=68699&&Cl!=69211&&Cl!=69723&&Cl!=70235&&Cl!=72283&&Cl!=74331&&Cl!=75867&&Cl!=77915&&Cl!=78427&&Cl!=78939&&Cl!=79451&&Cl!=81499&&Cl!=82523&&Cl!=83547&&Cl!=84571&&Cl!=85595&&Cl!=87131&&Cl!=87643&&Cl!=89179&&Cl!=90203&&Cl!=92763&&Cl!=93275&&Cl!=94299&&Cl!=94811&&Cl!=97883&&Cl!=98395&&Cl!=99419&&Cl!=101467&&Cl!=101979&&Cl!=103003&&Cl!=103515&&Cl!=104027&&Cl!=105563&&Cl!=108635&&Cl!=109147&&Cl!=110683&&Cl!=111707&&Cl!=112219&&Cl!=112731&&Cl!=113243&&Cl!=113755&&Cl!=114779&&Cl!=115291&&Cl!=115803&&Cl!=116315&&Cl!=116827&&Cl!=117339&&Cl!=119899&&Cl!=120411&&Cl!=120923&&Cl!=121435&&Cl!=122971&&Cl!=124507&&Cl!=125019&&Cl!=128091&&Cl!=128603&&Cl!=129115&&Cl!=129627&&Cl!=131163&&Cl!=131675&&Cl!=133211&&Cl!=133723&&Cl!=134235&&Cl!=134747&&Cl!=136283&&Cl!=136795&&Cl!=138331&&Cl!=140379)break;wl(36),ml(91),wl(255),On(),Ga()}}function gf(){ql.startNonterminal("TypeswitchStatement",Ll),vl(253),wl(22),vl(34),wl(267),yl(),Q(),vl(37);for(;;){wl(35),yl(),bf(),wl(113);if(Al!=88)break}vl(109),wl(95),Al==31&&(vl(31),wl(253),yl(),fi()),wl(70),vl(220),wl(267),yl(),Wa(),ql.endNonterminal("TypeswitchStatement",Ll)}function yf(){ml(253),wl(22),ml(34),wl(267),G(),ml(37);for(;;){wl(35),wf(),wl(113);if(Al!=88)break}ml(109),wl(95),Al==31&&(ml(31),wl(253),li()),wl(70),ml(220),wl(267),Xa()}function bf(){ql.startNonterminal("CaseStatement",Ll),vl(88),wl(260),Al==31&&(vl(31),wl(253),yl(),fi(),wl(30),vl(79)),wl(259),yl(),ps(),wl(70),vl(220),wl(267),yl(),Wa(),ql.endNonterminal("CaseStatement",Ll)}function wf(){ml(88),wl(260),Al==31&&(ml(31),wl(253),li(),wl(30),ml(79)),wl(259),ds(),wl(70),ml(220),wl(267),Xa()}function Ef(){ql.startNonterminal("VarDeclStatement",Ll);for(;;){wl(98);if(Al!=32)break;yl(),H()}vl(262),wl(21),vl(31),wl(253),yl(),fi(),wl(157),Al==79&&(yl(),cs()),wl(145),Al==52&&(vl(52),wl(267),yl(),Nf());for(;;){if(Al!=41)break;vl(41),wl(21),vl(31),wl(253),yl(),fi(),wl(157),Al==79&&(yl(),cs()),wl(145),Al==52&&(vl(52),wl(267),yl(),Nf())}vl(53),ql.endNonterminal("VarDeclStatement",Ll)}function Sf(){for(;;){wl(98);if(Al!=32)break;B()}ml(262),wl(21),ml(31),wl(253),li(),wl(157),Al==79&&hs(),wl(145),Al==52&&(ml(52),wl(267),Cf());for(;;){if(Al!=41)break;ml(41),wl(21),ml(31),wl(253),li(),wl(157),Al==79&&hs(),wl(145),Al==52&&(ml(52),wl(267),Cf())}ml(53)}function xf(){ql.startNonterminal("WhileStatement",Ll),vl(267),wl(22),vl(34),wl(267),yl(),Q(),vl(37),wl(267),yl(),Wa(),ql.endNonterminal("WhileStatement",Ll)}function Tf(){ml(267),wl(22),ml(34),wl(267),G(),ml(37),wl(267),Xa()}function Nf(){ql.startNonterminal("ExprSingle",Ll);switch(Al){case 137:El(233);break;case 174:El(231);break;case 250:El(230);break;case 152:case 243:case 253:El(228);break;default:Cl=Al}switch(Cl){case 16009:case 16046:case 116910:case 119945:case 128649:Y();break;case 17560:bn();break;case 17651:un();break;case 141562:En();break;case 17661:pn();break;default:kf()}ql.endNonterminal("ExprSingle",Ll)}function Cf(){switch(Al){case 137:El(233);break;case 174:El(231);break;case 250:El(230);break;case 152:case 243:case 253:El(228);break;default:Cl=Al}switch(Cl){case 16009:case 16046:case 116910:case 119945:case 128649:Z();break;case 17560:wn();break;case 17651:an();break;case 141562:Sn();break;case 17661:dn();break;default:Lf()}}function kf(){ql.startNonterminal("ExprSimple",Ll);switch(Al){case 218:El(232);break;case 219:El(235);break;case 110:case 159:El(234);break;case 103:case 129:case 235:El(229);break;default:Cl=Al}switch(Cl){case 16001:case 16107:sn();break;case 97951:case 98463:ko();break;case 97902:case 98414:Ao();break;case 98010:Do();break;case 98011:case 133851:Mo();break;case 15975:Ro();break;case 85102:Af();break;case 85151:Mf();break;case 85210:Df();break;case 85211:Hf();break;case 77:jf();break;default:Mn()}ql.endNonterminal("ExprSimple",Ll)}function Lf(){switch(Al){case 218:El(232);break;case 219:El(235);break;case 110:case 159:El(234);break;case 103:case 129:case 235:El(229);break;default:Cl=Al}switch(Cl){case 16001:case 16107:on();break;case 97951:case 98463:Lo();break;case 97902:case 98414:Oo();break;case 98010:Po();break;case 98011:case 133851:_o();break;case 15975:Uo();break;case 85102:Of();break;case 85151:_f();break;case 85210:Pf();break;case 85211:Bf();break;case 77:Ff();break;default:_n()}}function Af(){ql.startNonterminal("JSONDeleteExpr",Ll),vl(110),wl(56),vl(166),wl(262),yl(),Kr(),ql.endNonterminal("JSONDeleteExpr",Ll)}function Of(){ml(110),wl(56),ml(166),wl(262),Qr()}function Mf(){ql.startNonterminal("JSONInsertExpr",Ll),vl(159),wl(56),vl(166),wl(267),yl(),Nf(),vl(163),wl(267),yl(),Nf();switch(Al){case 81:El(69);break;default:Cl=Al}if(Cl==108113){Cl=pl(9,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(81),wl(69),ml(211),wl(267),Cf(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(9,Ll,Cl)}}Cl==-1&&(vl(81),wl(69),vl(211),wl(267),yl(),Nf()),ql.endNonterminal("JSONInsertExpr",Ll)}function _f(){ml(159),wl(56),ml(166),wl(267),Cf(),ml(163),wl(267),Cf();switch(Al){case 81:El(69);break;default:Cl=Al}if(Cl==108113){Cl=pl(9,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(81),wl(69),ml(211),wl(267),Cf(),hl(9,t,-1)}catch(a){kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(9,t,-2)}Cl=-2}}Cl==-1&&(ml(81),wl(69),ml(211),wl(267),Cf())}function Df(){ql.startNonterminal("JSONRenameExpr",Ll),vl(218),wl(56),vl(166),wl(262),yl(),Kr(),vl(79),wl(267),yl(),Nf(),ql.endNonterminal("JSONRenameExpr",Ll)}function Pf(){ml(218),wl(56),ml(166),wl(262),Qr(),ml(79),wl(267),Cf()}function Hf(){ql.startNonterminal("JSONReplaceExpr",Ll),vl(219),wl(56),vl(166),wl(82),vl(261),wl(64),vl(196),wl(262),yl(),Kr(),vl(270),wl(267),yl(),Nf(),ql.endNonterminal("JSONReplaceExpr",Ll)}function Bf(){ml(219),wl(56),ml(166),wl(82),ml(261),wl(64),ml(196),wl(262),Qr(),ml(270),wl(267),Cf()}function jf(){ql.startNonterminal("JSONAppendExpr",Ll),vl(77),wl(56),vl(166),wl(267),yl(),Nf(),vl(163),wl(267),yl(),Nf(),ql.endNonterminal("JSONAppendExpr",Ll)}function Ff(){ml(77),wl(56),ml(166),wl(267),Cf(),ml(163),wl(267),Cf()}function If(){ql.startNonterminal("CommonContent",Ll);switch(Al){case 12:vl(12);break;case 23:vl(23);break;case 277:vl(277);break;case 283:vl(283);break;default:fl()}ql.endNonterminal("CommonContent",Ll)}function qf(){switch(Al){case 12:ml(12);break;case 23:ml(23);break;case 277:ml(277);break;case 283:ml(283);break;default:ll()}}function Rf(){ql.startNonterminal("ContentExpr",Ll),qa(),ql.endNonterminal("ContentExpr",Ll)}function Uf(){Ra()}function zf(){ql.startNonterminal("CompDocConstructor",Ll),vl(119),wl(87),yl(),fl(),ql.endNonterminal("CompDocConstructor",Ll)}function Wf(){ml(119),wl(87),ll()}function Xf(){ql.startNonterminal("CompAttrConstructor",Ll),vl(82),wl(256);switch(Al){case 276:vl(276),wl(267),yl(),Q(),vl(282);break;default:yl(),Oa()}wl(87);switch(Al){case 276:El(273);break;default:Cl=Al}if(Cl==144660){Cl=pl(10,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(276),wl(88),ml(282),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(10,Ll,Cl)}}switch(Cl){case-1:vl(276),wl(88),vl(282);break;default:yl(),fl()}ql.endNonterminal("CompAttrConstructor",Ll)}function Vf(){ml(82),wl(256);switch(Al){case 276:ml(276),wl(267),G(),ml(282);break;default:Ma()}wl(87);switch(Al){case 276:El(273);break;default:Cl=Al}if(Cl==144660){Cl=pl(10,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(276),wl(88),ml(282),hl(10,t,-1),Cl=-3}catch(a){Cl=-2,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(10,t,-2)}}}switch(Cl){case-1:ml(276),wl(88),ml(282);break;case-3:break;default:ll()}}function $f(){ql.startNonterminal("CompPIConstructor",Ll),vl(216),wl(249);switch(Al){case 276:vl(276),wl(267),yl(),Q(),vl(282);break;default:yl(),Pa()}wl(87);switch(Al){case 276:El(273);break;default:Cl=Al}if(Cl==144660){Cl=pl(11,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(276),wl(88),ml(282),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(11,Ll,Cl)}}switch(Cl){case-1:vl(276),wl(88),vl(282);break;default:yl(),fl()}ql.endNonterminal("CompPIConstructor",Ll)}function Jf(){ml(216),wl(249);switch(Al){case 276:ml(276),wl(267),G(),ml(282);break;default:Ha()}wl(87);switch(Al){case 276:El(273);break;default:Cl=Al}if(Cl==144660){Cl=pl(11,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(276),wl(88),ml(282),hl(11,t,-1),Cl=-3}catch(a){Cl=-2,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(11,t,-2)}}}switch(Cl){case-1:ml(276),wl(88),ml(282);break;case-3:break;default:ll()}}function Kf(){ql.startNonterminal("CompCommentConstructor",Ll),vl(96),wl(87),yl(),fl(),ql.endNonterminal("CompCommentConstructor",Ll)}function Qf(){ml(96),wl(87),ll()}function Gf(){ql.startNonterminal("CompTextConstructor",Ll),vl(244),wl(87),yl(),fl(),ql.endNonterminal("CompTextConstructor",Ll)}function Yf(){ml(244),wl(87),ll()}function Zf(){ql.startNonterminal("PrimaryExpr",Ll);switch(Al){case 184:El(254);break;case 216:El(252);break;case 276:El(273);break;case 82:case 121:El(257);break;case 96:case 244:El(93);break;case 119:case 202:case 256:El(139);break;case 6:case 70:case 72:case 73:case 74:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 86:case 88:case 89:case 90:case 91:case 93:case 94:case 97:case 98:case 101:case 102:case 103:case 104:case 105:case 106:case 108:case 109:case 110:case 111:case 112:case 113:case 118:case 122:case 123:case 125:case 126:case 128:case 129:case 131:case 132:case 133:case 134:case 135:case 136:case 137:case 141:case 146:case 148:case 150:case 151:case 153:case 154:case 155:case 159:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 174:case 176:case 178:case 180:case 181:case 182:case 186:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 206:case 212:case 213:case 218:case 219:case 220:case 221:case 222:case 224:case 225:case 228:case 229:case 234:case 235:case 236:case 237:case 240:case 248:case 249:case 250:case 251:case 252:case 254:case 257:case 260:case 261:case 262:case 263:case 266:case 267:case 270:case 274:El(92);break;default:Cl=Al}if(Cl==2836||Cl==3348||Cl==4372||Cl==4884||Cl==5396||Cl==5908||Cl==16148||Cl==16660||Cl==17684||Cl==18196||Cl==20756||Cl==21780||Cl==22804||Cl==23316||Cl==23828||Cl==24340||Cl==27924||Cl==28436||Cl==30484||Cl==34068||Cl==35092||Cl==36116||Cl==37140||Cl==37652||Cl==38164||Cl==38676||Cl==39700||Cl==40212||Cl==40724||Cl==41236||Cl==41748||Cl==42260||Cl==42772||Cl==43284||Cl==43796||Cl==44308||Cl==45332||Cl==45844||Cl==46356||Cl==46868||Cl==47892||Cl==48404||Cl==49428||Cl==49940||Cl==50452||Cl==51988||Cl==52500||Cl==53012||Cl==53524||Cl==54036||Cl==54548||Cl==55572||Cl==56084||Cl==56596||Cl==57108||Cl==57620||Cl==58132||Cl==60692||Cl==61204||Cl==61716||Cl==62228||Cl==62740||Cl==63252||Cl==63764||Cl==64276||Cl==64788||Cl==65812||Cl==66324||Cl==67348||Cl==67860||Cl==68372||Cl==68884||Cl==69396||Cl==69908||Cl==70420||Cl==72468||Cl==74516||Cl==75028||Cl==76052||Cl==77076||Cl==77588||Cl==78100||Cl==78612||Cl==79124||Cl==79636||Cl==81684||Cl==82196||Cl==82708||Cl==83220||Cl==83732||Cl==84244||Cl==84756||Cl==85780||Cl==87316||Cl==87828||Cl==88340||Cl==89364||Cl==90388||Cl==91412||Cl==92436||Cl==92948||Cl==93460||Cl==94484||Cl==94996||Cl==95508||Cl==98068||Cl==98580||Cl==99604||Cl==101652||Cl==102164||Cl==102676||Cl==103188||Cl==103700||Cl==104212||Cl==105748||Cl==108820||Cl==109332||Cl==110868||Cl==111892||Cl==112404||Cl==112916||Cl==113428||Cl==113940||Cl==114964||Cl==115476||Cl==115988||Cl==116500||Cl==117012||Cl==117524||Cl==120084||Cl==120596||Cl==121108||Cl==121620||Cl==123156||Cl==124692||Cl==125204||Cl==127252||Cl==127764||Cl==128276||Cl==128788||Cl==129300||Cl==129812||Cl==130324||Cl==131348||Cl==131860||Cl==133396||Cl==133908||Cl==134420||Cl==134932||Cl==136468||Cl==136980||Cl==138516||Cl==140564||Cl==141588||Cl==142612||Cl==144660){Cl=pl(12,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ll(),Cl=-10}catch(a){Cl=-11}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(12,Ll,Cl)}}switch(Cl){case 8:case 9:case 10:case 11:ri();break;case 31:ui();break;case 34:ci();break;case 44:pi();break;case 17414:case 17478:case 17480:case 17481:case 17482:case 17483:case 17486:case 17487:case 17488:case 17489:case 17491:case 17492:case 17493:case 17494:case 17496:case 17497:case 17498:case 17499:case 17501:case 17502:case 17505:case 17506:case 17509:case 17510:case 17511:case 17512:case 17513:case 17514:case 17516:case 17517:case 17518:case 17519:case 17520:case 17521:case 17526:case 17527:case 17530:case 17531:case 17533:case 17534:case 17536:case 17537:case 17539:case 17540:case 17541:case 17542:case 17543:case 17544:case 17545:case 17549:case 17554:case 17556:case 17558:case 17559:case 17561:case 17562:case 17563:case 17567:case 17568:case 17569:case 17570:case 17571:case 17572:case 17575:case 17578:case 17579:case 17580:case 17582:case 17584:case 17586:case 17588:case 17589:case 17590:case 17592:case 17594:case 17600:case 17602:case 17606:case 17607:case 17608:case 17609:case 17610:case 17611:case 17614:case 17620:case 17621:case 17626:case 17627:case 17628:case 17629:case 17630:case 17632:case 17633:case 17636:case 17637:case 17642:case 17643:case 17644:case 17645:case 17648:case 17656:case 17657:case 17658:case 17659:case 17660:case 17662:case 17664:case 17665:case 17668:case 17669:case 17670:case 17671:case 17674:case 17675:case 17678:case 17682:bi();break;case 141514:vi();break;case 141568:gi();break;case 32:case 120:case 124:case 145:case 152:case 165:case 185:case 191:case 226:case 227:case 243:case 253:case 14854:case 14918:case 14920:case 14921:case 14922:case 14923:case 14926:case 14927:case 14928:case 14929:case 14930:case 14931:case 14932:case 14933:case 14934:case 14936:case 14937:case 14938:case 14939:case 14941:case 14942:case 14944:case 14945:case 14946:case 14949:case 14950:case 14951:case 14952:case 14953:case 14954:case 14956:case 14957:case 14958:case 14959:case 14960:case 14961:case 14966:case 14967:case 14969:case 14970:case 14971:case 14973:case 14974:case 14976:case 14977:case 14979:case 14980:case 14981:case 14982:case 14983:case 14984:case 14985:case 14989:case 14994:case 14996:case 14998:case 14999:case 15001:case 15002:case 15003:case 15007:case 15008:case 15009:case 15010:case 15011:case 15012:case 15015:case 15018:case 15019:case 15020:case 15022:case 15024:case 15026:case 15028:case 15029:case 15030:case 15032:case 15034:case 15040:case 15042:case 15046:case 15047:case 15048:case 15049:case 15050:case 15051:case 15054:case 15060:case 15061:case 15064:case 15066:case 15067:case 15068:case 15069:case 15070:case 15072:case 15073:case 15076:case 15077:case 15082:case 15083:case 15084:case 15085:case 15088:case 15092:case 15096:case 15097:case 15098:case 15099:case 15100:case 15102:case 15104:case 15105:case 15108:case 15109:case 15110:case 15111:case 15114:case 15115:case 15118:case 15122:rs();break;case-10:fl();break;case-11:rl();break;case 68:ul();break;case 278:tl();break;default:Ni()}ql.endNonterminal("PrimaryExpr",Ll)}function el(){switch(Al){case 184:El(254);break;case 216:El(252);break;case 276:El(273);break;case 82:case 121:El(257);break;case 96:case 244:El(93);break;case 119:case 202:case 256:El(139);break;case 6:case 70:case 72:case 73:case 74:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 86:case 88:case 89:case 90:case 91:case 93:case 94:case 97:case 98:case 101:case 102:case 103:case 104:case 105:case 106:case 108:case 109:case 110:case 111:case 112:case 113:case 118:case 122:case 123:case 125:case 126:case 128:case 129:case 131:case 132:case 133:case 134:case 135:case 136:case 137:case 141:case 146:case 148:case 150:case 151:case 153:case 154:case 155:case 159:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 174:case 176:case 178:case 180:case 181:case 182:case 186:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 206:case 212:case 213:case 218:case 219:case 220:case 221:case 222:case 224:case 225:case 228:case 229:case 234:case 235:case 236:case 237:case 240:case 248:case 249:case 250:case 251:case 252:case 254:case 257:case 260:case 261:case 262:case 263:case 266:case 267:case 270:case 274:El(92);break;default:Cl=Al}if(Cl==2836||Cl==3348||Cl==4372||Cl==4884||Cl==5396||Cl==5908||Cl==16148||Cl==16660||Cl==17684||Cl==18196||Cl==20756||Cl==21780||Cl==22804||Cl==23316||Cl==23828||Cl==24340||Cl==27924||Cl==28436||Cl==30484||Cl==34068||Cl==35092||Cl==36116||Cl==37140||Cl==37652||Cl==38164||Cl==38676||Cl==39700||Cl==40212||Cl==40724||Cl==41236||Cl==41748||Cl==42260||Cl==42772||Cl==43284||Cl==43796||Cl==44308||Cl==45332||Cl==45844||Cl==46356||Cl==46868||Cl==47892||Cl==48404||Cl==49428||Cl==49940||Cl==50452||Cl==51988||Cl==52500||Cl==53012||Cl==53524||Cl==54036||Cl==54548||Cl==55572||Cl==56084||Cl==56596||Cl==57108||Cl==57620||Cl==58132||Cl==60692||Cl==61204||Cl==61716||Cl==62228||Cl==62740||Cl==63252||Cl==63764||Cl==64276||Cl==64788||Cl==65812||Cl==66324||Cl==67348||Cl==67860||Cl==68372||Cl==68884||Cl==69396||Cl==69908||Cl==70420||Cl==72468||Cl==74516||Cl==75028||Cl==76052||Cl==77076||Cl==77588||Cl==78100||Cl==78612||Cl==79124||Cl==79636||Cl==81684||Cl==82196||Cl==82708||Cl==83220||Cl==83732||Cl==84244||Cl==84756||Cl==85780||Cl==87316||Cl==87828||Cl==88340||Cl==89364||Cl==90388||Cl==91412||Cl==92436||Cl==92948||Cl==93460||Cl==94484||Cl==94996||Cl==95508||Cl==98068||Cl==98580||Cl==99604||Cl==101652||Cl==102164||Cl==102676||Cl==103188||Cl==103700||Cl==104212||Cl==105748||Cl==108820||Cl==109332||Cl==110868||Cl==111892||Cl==112404||Cl==112916||Cl==113428||Cl==113940||Cl==114964||Cl==115476||Cl==115988||Cl==116500||Cl==117012||Cl==117524||Cl==120084||Cl==120596||Cl==121108||Cl==121620||Cl==123156||Cl==124692||Cl==125204||Cl==127252||Cl==127764||Cl==128276||Cl==128788||Cl==129300||Cl==129812||Cl==130324||Cl==131348||Cl==131860||Cl==133396||Cl==133908||Cl==134420||Cl==134932||Cl==136468||Cl==136980||Cl==138516||Cl==140564||Cl==141588||Cl==142612||Cl==144660){Cl=pl(12,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ll(),hl(12,t,-10),Cl=-14}catch(a){Cl=-11,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(12,t,-11)}}}switch(Cl){case 8:case 9:case 10:case 11:ii();break;case 31:ai();break;case 34:hi();break;case 44:di();break;case 17414:case 17478:case 17480:case 17481:case 17482:case 17483:case 17486:case 17487:case 17488:case 17489:case 17491:case 17492:case 17493:case 17494:case 17496:case 17497:case 17498:case 17499:case 17501:case 17502:case 17505:case 17506:case 17509:case 17510:case 17511:case 17512:case 17513:case 17514:case 17516:case 17517:case 17518:case 17519:case 17520:case 17521:case 17526:case 17527:case 17530:case 17531:case 17533:case 17534:case 17536:case 17537:case 17539:case 17540:case 17541:case 17542:case 17543:case 17544:case 17545:case 17549:case 17554:case 17556:case 17558:case 17559:case 17561:case 17562:case 17563:case 17567:case 17568:case 17569:case 17570:case 17571:case 17572:case 17575:case 17578:case 17579:case 17580:case 17582:case 17584:case 17586:case 17588:case 17589:case 17590:case 17592:case 17594:case 17600:case 17602:case 17606:case 17607:case 17608:case 17609:case 17610:case 17611:case 17614:case 17620:case 17621:case 17626:case 17627:case 17628:case 17629:case 17630:case 17632:case 17633:case 17636:case 17637:case 17642:case 17643:case 17644:case 17645:case 17648:case 17656:case 17657:case 17658:case 17659:case 17660:case 17662:case 17664:case 17665:case 17668:case 17669:case 17670:case 17671:case 17674:case 17675:case 17678:case 17682:wi();break;case 141514:mi();break;case 141568:yi();break;case 32:case 120:case 124:case 145:case 152:case 165:case 185:case 191:case 226:case 227:case 243:case 253:case 14854:case 14918:case 14920:case 14921:case 14922:case 14923:case 14926:case 14927:case 14928:case 14929:case 14930:case 14931:case 14932:case 14933:case 14934:case 14936:case 14937:case 14938:case 14939:case 14941:case 14942:case 14944:case 14945:case 14946:case 14949:case 14950:case 14951:case 14952:case 14953:case 14954:case 14956:case 14957:case 14958:case 14959:case 14960:case 14961:case 14966:case 14967:case 14969:case 14970:case 14971:case 14973:case 14974:case 14976:case 14977:case 14979:case 14980:case 14981:case 14982:case 14983:case 14984:case 14985:case 14989:case 14994:case 14996:case 14998:case 14999:case 15001:case 15002:case 15003:case 15007:case 15008:case 15009:case 15010:case 15011:case 15012:case 15015:case 15018:case 15019:case 15020:case 15022:case 15024:case 15026:case 15028:case 15029:case 15030:case 15032:case 15034:case 15040:case 15042:case 15046:case 15047:case 15048:case 15049:case 15050:case 15051:case 15054:case 15060:case 15061:case 15064:case 15066:case 15067:case 15068:case 15069:case 15070:case 15072:case 15073:case 15076:case 15077:case 15082:case 15083:case 15084:case 15085:case 15088:case 15092:case 15096:case 15097:case 15098:case 15099:case 15100:case 15102:case 15104:case 15105:case 15108:case 15109:case 15110:case 15111:case 15114:case 15115:case 15118:case 15122:is();break;case-10:ll();break;case-11:il();break;case 68:al();break;case 278:nl();break;case-14:break;default:Ci()}}function tl(){ql.startNonterminal("JSONSimpleObjectUnion",Ll),vl(278),wl(272),Al!=281&&(yl(),Q()),vl(281),ql.endNonterminal("JSONSimpleObjectUnion",Ll)}function nl(){ml(278),wl(272),Al!=281&&G(),ml(281)}function rl(){ql.startNonterminal("ObjectConstructor",Ll),vl(276),wl(273);if(Al!=282){yl(),sl();for(;;){if(Al!=41)break;vl(41),wl(267),yl(),sl()}}vl(282),ql.endNonterminal("ObjectConstructor",Ll)}function il(){ml(276),wl(273);if(Al!=282){ol();for(;;){if(Al!=41)break;ml(41),wl(267),ol()}}ml(282)}function sl(){ql.startNonterminal("PairConstructor",Ll),Nf(),vl(49),wl(267),yl(),Nf(),ql.endNonterminal("PairConstructor",Ll)}function ol(){Cf(),ml(49),wl(267),Cf()}function ul(){ql.startNonterminal("ArrayConstructor",Ll),vl(68),wl(271),Al!=69&&(yl(),Q()),vl(69),ql.endNonterminal("ArrayConstructor",Ll)}function al(){ml(68),wl(271),Al!=69&&G(),ml(69)}function fl(){ql.startNonterminal("BlockExpr",Ll),vl(276),wl(273),yl(),Ua(),vl(282),ql.endNonterminal("BlockExpr",Ll)}function ll(){ml(276),wl(273),za(),ml(282)}function cl(){ql.startNonterminal("FunctionDecl",Ll),vl(145),wl(253),yl(),Oa(),wl(22),vl(34),wl(94),Al==31&&(yl(),R()),vl(37),wl(148),Al==79&&(vl(79),wl(259),yl(),ps()),wl(118);switch(Al){case 276:vl(276),wl(273),yl(),Ua(),vl(282);break;default:vl(133)}ql.endNonterminal("FunctionDecl",Ll)}function hl(e,t,n){Rl[(t<<4)+e]=n}function pl(e,t){var n=Rl[(t<<4)+e];return typeof n!="undefined"?n:0}function dl(e,t,n,r,i){throw t>Bl&&(Hl=e,Bl=t,jl=n,Fl=r,Il=i),new Nl.ParseException(Hl,Bl,jl,Fl,Il)}function vl(e){Al==e?(yl(),ql.terminal(i.TOKEN[Al],Ol,Ml>zl?zl:Ml),kl=Ol,Ll=Ml,Al=_l,Al!=0&&(Ol=Dl,Ml=Pl,_l=0)):dl(Ol,Ml,0,Al,e)}function ml(e){Al==e?(kl=Ol,Ll=Ml,Al=_l,Al!=0&&(Ol=Dl,Ml=Pl,_l=0)):dl(Ol,Ml,0,Al,e)}function gl(e){var t=kl,n=Ll,r=Al,i=Ol,s=Ml;Al=e,Ol=Wl,Ml=Xl,_l=0,Aa(),kl=t,Ll=n,Al=r,Al!=0&&(Ol=i,Ml=s)}function yl(){Ll!=Ol&&(kl=Ll,Ll=Ol,ql.whitespace(kl,Ll))}function bl(e){var t;for(;;){t=Tl(e);if(t!=22){if(t!=36)break;gl(t)}}return t}function wl(e){Al==0&&(Al=bl(e),Ol=Wl,Ml=Xl)}function El(e){_l==0&&(_l=bl(e),Dl=Wl,Pl=Xl),Cl=_l<<9|Al}function Sl(e){Al==0&&(Al=Tl(e),Ol=Wl,Ml=Xl)}function xl(e){_l==0&&(_l=Tl(e),Dl=Wl,Pl=Xl),Cl=_l<<9|Al}function Tl(e){var t=!1;Wl=Xl;var n=Xl,r=i.INITIAL[e],s=0;for(var o=r&4095;o!=0;){var u,a=n<zl?Ul.charCodeAt(n):0;++n;if(a<128)u=i.MAP0[a];else if(a<55296){var f=a>>4;u=i.MAP1[(a&15)+i.MAP1[(f&31)+i.MAP1[f>>5]]]}else{if(a<56320){var f=n<zl?Ul.charCodeAt(n):0;f>=56320&&f<57344&&(++n,a=((a&1023)<<10)+(f&1023)+65536,t=!0)}var l=0,c=5;for(var h=3;;h=c+l>>1){if(i.MAP2[h]>a)c=h-1;else{if(!(i.MAP2[6+h]<a)){u=i.MAP2[12+h];break}l=h+1}if(l>c){u=0;break}}}s=o;var p=(u<<12)+o-1;o=i.TRANSITION[(p&15)+i.TRANSITION[p>>4]],o>4095&&(r=o,o&=4095,Xl=n)}r>>=12;if(r==0){Xl=n-1;var f=Xl<zl?Ul.charCodeAt(Xl):0;return f>=56320&&f<57344&&--Xl,dl(Wl,Xl,s,-1,-1)}if(t)for(var d=r>>9;d>0;--d){--Xl;var f=Xl<zl?Ul.charCodeAt(Xl):0;f>=56320&&f<57344&&--Xl}else Xl-=r>>9;return(r&511)-1}n(e,t);var Nl=this;this.ParseException=function(e,t,n,r,i){var s=e,o=t,u=n,a=r,f=i;this.getBegin=function(){return s},this.getEnd=function(){return o},this.getState=function(){return u},this.getExpected=function(){return f},this.getOffending=function(){return a},this.getMessage=function(){return a<0?"lexical analysis failed":"syntax error"}},this.getInput=function(){return Ul},this.getOffendingToken=function(e){var t=e.getOffending();return t>=0?i.TOKEN[t]:null},this.getExpectedTokenSet=function(e){var t;return e.getExpected()<0?t=i.getTokenSet(-e.getState()):t=[i.TOKEN[e.getExpected()]],t},this.getErrorMessage=function(e){var t=this.getExpectedTokenSet(e),n=this.getOffendingToken(e),r=Ul.substring(0,e.getBegin()),i=r.split("\n"),s=i.length,o=i[s-1].length+1,u=e.getEnd()-e.getBegin();return e.getMessage()+(n==null?"":", found "+n)+"\nwhile expecting "+(t.length==1?t[0]:"["+t.join(", ")+"]")+"\n"+(u==0||n!=null?"":"after successfully scanning "+u+" characters beginning ")+"at line "+s+", column "+o+":\n..."+Ul.substring(e.getBegin(),Math.min(Ul.length,e.getBegin()+64))+"..."},this.parse_XQuery=function(){ql.startNonterminal("XQuery",Ll),wl(268),yl(),s(),vl(25),ql.endNonterminal("XQuery",Ll)};var Cl,kl,Ll,Al,Ol,Ml,_l,Dl,Pl,Hl,Bl,jl,Fl,Il,ql,Rl,Ul,zl,Wl,Xl};r.getTokenSet=function(e){var t=[],n=e<0?-e:INITIAL[e]&4095;for(var i=0;i<284;i+=32){var s=i,o=(i>>5)*3684+n-1,u=o>>2,a=u>>2,f=r.EXPECTED[(o&3)+r.EXPECTED[(u&3)+r.EXPECTED[(a&7)+r.EXPECTED[a>>3]]]];for(;f!=0;f>>>=1,++s)(f&1)!=0&&t.push(r.TOKEN[s])}return t},r.MAP0=[70,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,17,17,17,17,17,17,17,17,17,18,19,20,21,22,23,24,25,26,27,28,29,26,30,30,30,30,30,31,32,33,30,30,34,30,30,35,30,30,30,36,30,30,37,38,39,38,30,38,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,38,38],r.MAP1=[108,124,214,214,214,214,214,214,214,214,214,214,214,214,214,214,156,181,181,181,181,181,214,215,213,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,247,261,277,293,309,355,371,387,423,423,423,415,339,331,339,331,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,440,440,440,440,440,440,440,324,339,339,339,339,339,339,339,339,401,423,423,424,422,423,423,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,338,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,423,70,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,17,17,17,17,17,17,17,17,17,18,19,20,21,22,23,24,25,26,27,28,29,26,30,30,30,30,30,31,32,33,30,30,30,30,30,30,30,30,30,30,30,30,30,30,38,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,34,30,30,35,30,30,30,36,30,30,37,38,39,38,30,38,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,38,38,38,38,38,38,38,38,38,38,38,38,30,30,38,38,38,38,38,38,38,69,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69],r.MAP2=[57344,63744,64976,65008,65536,983040,63743,64975,65007,65533,983039,1114111,38,30,38,30,30,38],r.INITIAL=[1,12290,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,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,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284],r.TRANSITION=[23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22007,18176,18196,18196,18196,18203,18196,18196,18196,18196,18230,18196,18196,18196,18196,18219,18196,18180,18246,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,18411,20907,20920,20932,20944,22539,18416,20967,23546,23546,23546,35799,23546,23546,51042,37625,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,21008,21032,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21632,21055,23546,23546,23546,21178,23546,23546,23916,42362,21241,23546,23546,23546,23546,19298,47203,21077,21110,23546,23546,23546,35799,23546,23546,21194,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,21229,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21358,21323,23546,23546,23546,26152,23546,23546,27593,23546,21369,29482,21257,21282,21273,21304,21317,21346,20967,23546,23546,23546,28947,23546,23546,21385,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,20711,21423,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,21446,26048,18745,18766,18771,20561,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23540,23546,23546,23546,25880,23545,23546,31245,23546,21468,23534,21504,23546,21511,23546,21527,21539,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,21567,23546,23546,23546,31874,23546,23546,21586,23546,23546,21608,21620,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,35211,23546,23546,23546,23546,23546,23546,23424,21648,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,21681,18544,18567,18590,50977,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21736,21705,23546,23546,23546,44539,23546,23546,24265,25689,25607,23546,23546,23546,23546,26450,47502,21724,21752,23546,23546,23546,35799,23546,23546,21783,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,20237,21819,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21551,21857,21913,21913,21913,21864,21908,21913,21918,21967,21842,21949,21880,21961,21896,21934,21983,21995,20967,23546,23546,23546,26225,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,22023,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,28636,23546,23546,23546,25912,50946,23546,50080,50952,21369,28635,23546,22054,22060,22076,22111,22121,22137,23546,23546,23546,30755,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,22183,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,27655,23546,23546,23546,25841,23546,23546,23546,51066,39748,22869,22242,22228,22245,22261,22277,22288,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,20285,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,18648,40763,24585,22304,22324,22304,22338,24585,22308,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,22361,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,22386,23546,23546,23546,25841,18403,23546,19576,22382,44281,22402,22429,22434,22434,22450,22385,22413,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22473,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,25653,22498,22518,22498,22532,25653,22502,22555,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27132,23546,42897,23546,44844,38626,22584,22361,37471,23546,23546,23546,23546,22587,47563,46856,47563,47563,22603,35356,22824,22824,34828,22804,22621,22804,22804,33187,36943,23546,23546,23546,23546,23546,26071,23546,22641,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,43701,32739,23546,23546,23546,23546,23546,29474,22702,23546,33124,44563,47563,47563,47563,47564,22719,35350,22824,22764,22824,22767,35689,22783,22804,22803,22804,29879,33195,23546,23546,23546,23546,23546,27587,23546,23546,47562,46826,47563,47563,27195,22821,42846,22824,22824,22824,30376,22804,22841,22804,22804,29883,33199,23546,23546,21430,23546,49502,48973,47563,47563,36153,45209,22824,22824,39816,27834,22804,22804,43796,30403,39964,23546,23546,22861,23546,47560,22885,47563,23113,22903,22824,33078,22920,22804,38116,23546,23546,22937,29174,22980,47563,34384,42527,22825,23019,22804,31964,47447,46606,23083,36624,23105,32340,30673,23131,36549,23164,40907,43074,23200,23229,23275,36645,36686,33550,48975,23107,30672,23141,39417,23313,23334,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,24855,21369,23546,23546,23546,23546,23546,20980,20992,23383,23546,23546,23546,35799,23546,23546,23420,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,23440,27132,23546,23546,23546,44844,23546,23546,18368,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,22603,22824,22824,22824,34828,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,26071,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23485,23546,23546,23546,26606,23546,23546,23546,23546,21369,28080,23505,23528,23563,23575,28081,23512,20967,23546,23546,23546,35799,23546,23546,51042,30821,23546,37478,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23598,23546,23546,23546,25841,23546,23546,23546,23184,21369,23546,23546,23546,23546,23546,22653,22665,23615,23546,23546,23546,35799,23546,23546,23644,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,23664,27132,23546,23546,23546,44844,23546,23546,23688,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,22603,22824,22824,22824,34828,22804,22804,22804,22804,39677,48779,23733,23546,23546,23546,23546,34921,23753,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,23777,48792,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,41753,22821,22824,22824,22824,22824,44122,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,34866,22821,22824,22824,22824,22824,23826,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,39721,23546,23546,23546,30797,25982,23546,23546,23849,21369,20313,44188,23887,23893,23909,23546,49114,23932,23546,23546,23546,36603,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,24187,24465,24820,25200,24258,18282,18849,18305,23964,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,23993,24116,24017,24046,24001,24088,25090,24132,24812,24103,24159,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,24182,25436,24884,24206,24190,24890,24819,24363,24227,24819,24414,24143,25214,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,24243,24030,25425,24281,24706,24308,24337,24350,24389,24405,24517,24423,25208,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,24439,19364,24455,25063,24489,24505,24533,25266,24373,24545,24561,24577,18900,19554,23717,19574,19592,19632,19657,20190,20797,19809,24679,24601,25048,19406,24473,24617,25251,25017,24736,26492,19746,41094,19782,18942,19201,19798,24633,24673,24695,24722,24779,24801,24836,23977,20842,20016,18679,20827,20042,24871,24906,24935,24951,25006,25411,25295,20159,20175,20206,25033,24292,25079,25281,25106,20376,20392,19394,24919,24657,20462,19676,24211,24785,32258,19353,24647,24966,20473,24060,25136,20616,25172,25188,25236,24072,25311,25362,25396,25452,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,21328,23546,23546,23546,25841,25477,23546,23546,25472,32915,25493,25501,25501,25501,25517,21330,25540,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,25581,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20499,25597,18792,18808,18830,23628,18814,25623,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,21016,25645,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,25669,25705,25721,19477,25754,19498,25737,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,18708,21452,19692,19708,20143,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,50535,23259,25770,25770,25770,25779,21123,21135,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,25220,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,25802,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21147,20888,23546,23546,23546,25841,23546,23546,23546,23546,21369,22959,25825,25825,25825,25834,20891,22964,25857,23546,23546,23546,35799,23546,23546,51042,23546,23546,27140,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,25873,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,25552,25561,23546,23546,23546,26852,23546,23546,23546,23546,21369,33245,25896,25896,25896,25905,36950,33250,25928,23546,23546,23546,35799,23546,23546,51042,23546,23546,22366,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,25964,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,25998,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,26099,23546,23546,23546,23546,25841,21661,23546,23546,21094,43925,23546,23546,23546,21665,26069,21092,26087,20967,23546,23546,23546,35799,23546,23546,51042,31389,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,26115,26145,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,23546,23546,23546,23546,23546,43987,26168,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,26285,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,26302,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,26321,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,19867,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,26341,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,26341,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,23049,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26364,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,19293,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,31312,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,37937,26399,26410,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,26426,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,26445,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,41698,26466,26486,26508,26520,41701,26470,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,38227,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,26543,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,23546,23546,23546,23546,23546,23546,23424,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,28554,23546,26577,26583,26599,47449,44239,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,26622,20175,20206,20222,51139,20274,51143,20301,26638,20392,51127,20418,50802,26654,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,27306,23546,23546,23546,26527,26683,26714,28322,26699,26731,50814,50823,26775,26789,26801,26817,26829,26204,26845,23599,23546,25326,21171,35898,34903,26868,26909,26948,33311,26979,26959,26995,27011,45967,27047,27063,27101,27117,34536,27156,23546,23546,44844,41240,34846,23546,42415,27173,27664,23546,42356,28101,47563,47563,47563,27192,27418,22824,22824,42533,43762,22804,22804,22804,27211,27231,36943,23546,44839,40944,23546,27267,27287,46640,23546,27304,35519,43402,27322,27344,47563,47563,27380,27403,27436,31453,22824,33011,27464,27493,27533,27556,22804,38069,35418,30315,27573,26241,27609,23546,44532,27629,39107,50620,23546,45009,27646,31107,27698,47563,27746,27765,23297,27785,27825,36368,22824,27859,48139,23833,27991,44504,49256,22804,43572,23672,27877,42988,25683,23546,27893,27913,46094,23546,21213,44018,47563,30489,32462,27941,34820,22824,45399,49012,28821,27978,22804,22804,28014,28034,49064,28072,35792,28097,51046,28117,50856,22994,28137,47563,41728,28206,28229,22824,41433,28267,28290,22804,34572,28320,28338,23546,23546,39715,47560,28358,45550,23113,28379,35308,33078,28399,36714,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,41649,28419,28455,40472,38341,28471,38828,40452,28791,24756,33030,27540,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,28526,23546,23546,26527,23546,23546,23546,23546,34078,28545,23546,28652,28658,28674,28690,28701,26204,23546,23546,23546,35799,23546,23546,23546,23546,26963,23546,23546,23546,23546,23546,48973,47563,22605,35842,45303,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,46230,50621,28718,23546,28717,23546,48975,47563,47563,47563,27769,28735,22823,22824,22824,22824,49361,49439,22804,22804,22804,22804,28781,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,18289,23546,23546,44779,49528,23546,36898,47563,47563,47563,40417,28807,22824,22824,22824,50340,31197,28844,22804,22804,22804,28863,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,21205,28900,28924,28940,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,28963,23546,23546,26527,23546,28992,23546,29010,36977,29029,29038,29054,29069,29081,29097,29109,26204,23546,23546,33645,49739,23546,28529,23546,23546,31365,23546,23546,23546,35995,23546,29125,31167,22824,29149,40337,48749,32108,23546,29172,23546,44844,29190,42384,23546,31347,50774,29209,23546,25948,29214,29230,29291,47563,47563,29309,29325,22824,22824,45608,49036,29349,22804,22804,39677,36943,30220,23546,23546,47099,23546,22095,50621,37205,27682,23546,23546,48975,28152,40051,47563,29366,37135,45217,46920,46953,36665,22824,49439,49901,29385,29404,34563,22804,29885,40883,26241,23546,23546,47600,23546,23546,29423,23546,29445,23546,48976,47563,47563,47563,44406,47564,22821,22824,22824,49328,42575,22767,35849,22804,22804,39288,28274,50448,23672,29464,23546,23546,23546,29498,42828,23546,23546,47562,47563,47563,46820,29369,22821,22824,22824,37856,22824,28821,22804,22804,30184,22804,29883,33199,23546,23546,29517,23546,47519,29538,47563,46768,47563,41728,22824,49353,22824,41433,22804,41641,22804,27843,29565,23546,23546,23546,29581,33988,49629,29610,50265,49148,29627,30732,37573,29644,31970,23546,23546,28626,22586,47563,47563,29661,22824,47375,22804,22804,29679,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,45087,23089,29701,47077,23141,24756,33030,33551,47559,33030,33552,39426,42307,27251,29717,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,21570,23546,23546,26527,23546,29745,24166,23546,32508,29764,29773,29789,29803,29812,29828,29839,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,34673,34671,23546,38486,38493,29855,28213,35842,29875,43066,27800,23546,40629,29901,44844,23546,29926,30774,23546,23546,41541,20026,29946,29989,29293,38320,30005,40270,30031,42116,30052,30082,30100,49972,39453,30135,41942,39677,36943,23546,23546,23546,42078,23546,30162,50621,23546,23546,23546,39564,48975,47563,47563,47563,48721,37135,22823,22824,22824,22824,42777,49439,22804,22804,22804,22804,30182,30146,30200,30236,23546,23546,23546,30252,30271,50620,23546,23546,45468,23469,31420,34156,47563,47563,45201,30292,30331,30348,22824,22824,30365,29156,29407,22804,22804,22804,30399,23672,23807,23546,23546,23546,23546,45523,28572,23546,33872,47563,47563,30419,29369,30438,22824,22824,48645,22824,31904,22804,22804,50360,22804,30539,33199,49920,23546,30462,23546,50724,48973,36270,47563,30480,41728,35391,22824,30505,41433,50493,22804,30530,30403,47447,49732,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23251,23546,22586,47563,47563,30555,22824,36108,22804,22804,30575,47447,46606,22585,47563,24761,22824,30673,22804,30597,46609,47561,23111,30673,39296,30622,30648,30668,30689,19013,30707,30727,30748,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23547,30771,23546,26527,25156,30790,23546,30813,24321,30837,30846,30862,30876,30888,30904,30915,26204,22703,30931,26561,35799,30978,26921,26341,27925,30994,31013,31032,31061,31045,31097,31131,31147,31183,31227,31261,31277,39237,39476,31293,33748,31328,22212,31363,31381,41158,23546,23546,40033,23546,22587,32449,31405,47817,28510,31441,31475,46890,31498,30304,31538,22625,36744,47681,39677,36943,23698,29973,31554,29930,31590,23708,31634,39997,31661,48812,31689,31711,31727,31763,31798,31814,29245,31850,40093,31890,34721,31940,35662,31956,31986,27076,32035,32066,32093,32133,26241,50755,23546,43683,23546,32169,19239,32192,32249,22951,24750,43255,32274,47563,32292,45560,22821,32317,22824,42593,48588,50230,35849,32356,22804,45665,32384,32405,32421,23807,25150,32478,32497,47176,23546,32524,45835,36145,40407,31425,32550,44054,32586,34739,22824,32631,32657,30066,33080,32683,47042,40501,29883,33199,23546,45717,33237,23546,23546,32701,31115,42955,32563,41728,45894,41614,32608,41433,33712,42499,35727,30403,47447,28590,32719,48060,32755,32790,42232,33671,32806,37745,39609,32837,40736,33730,32892,32931,32953,19435,22586,32974,48106,28046,33009,33027,33047,48381,35461,47447,40617,22585,47563,50257,22824,33074,36473,36549,33096,40786,36807,32667,39296,33119,43227,48451,49953,33140,24763,23318,45645,33156,33172,33217,47559,33030,30691,33266,33282,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,33306,23546,26527,33327,33345,25456,24849,33370,33400,23546,33386,33428,33437,33453,33464,26204,23546,23546,33480,35799,23546,23546,23546,23546,27288,23546,23546,34477,23546,34484,31605,33499,33519,43660,33545,33568,27800,23546,33621,23546,44844,33621,23546,23546,30997,23546,33640,34051,23546,22587,33661,47563,47563,47563,33687,22824,22824,22824,43762,33703,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,33746,48975,47563,47563,47563,43863,37135,22823,22824,22824,22824,34733,49439,22804,22804,22804,22804,33764,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,20258,23546,48976,47563,47563,46759,47563,47564,22821,22824,22824,37850,22824,22767,35849,22804,22804,33781,22804,29879,23672,23807,23546,23546,23546,23546,23546,43159,23546,47562,47563,47563,31773,29369,22821,22824,22824,49239,22824,28821,22804,22804,22804,33801,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,33820,23546,23546,22586,44762,47563,23109,33840,22825,34299,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,23335,32233,42307,22729,33859,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,32176,23546,23546,41552,33893,33902,33918,33924,33940,33956,33967,26204,23546,23546,23546,35799,23546,23546,37894,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,28765,41920,23546,23546,44844,23546,23546,23546,39585,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,43177,23546,23546,45738,48975,47563,47563,47563,47563,37135,41960,22824,22824,22824,22824,47410,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,20340,23546,23178,20358,23546,23546,20360,33983,47563,47563,34004,47563,47564,22821,22824,36824,22824,22824,22767,35849,22804,33785,22804,22804,29879,34024,23546,23546,23546,34050,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,32147,47539,23546,48973,47563,47563,39206,45209,22824,22824,43898,27834,22804,22804,34943,30403,47447,34067,47158,34094,23546,34121,32984,34141,34177,43533,34196,34244,36447,34263,31970,28608,23546,34315,34336,34355,34372,28875,33605,34412,34436,34454,31964,47447,46606,43054,32993,34501,34521,30673,34552,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,43326,34588,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,41690,23546,26286,34628,23546,23546,23546,34692,23546,34693,23546,23546,34656,34689,40521,22887,37164,34396,43815,34709,34755,23546,23546,29501,44844,26383,30255,23546,23546,41921,23546,23546,23546,22587,47563,47563,32276,47563,27418,22824,22824,35655,43762,22804,22804,35850,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,34780,43953,48975,47563,47563,47563,47563,29859,22823,22824,22824,22824,22824,30446,22804,22804,22804,22804,22804,34799,33201,23546,34844,23546,23546,23546,23546,23546,23546,23546,42714,48976,34862,47563,47563,47563,47564,34882,22824,22824,22824,22824,22767,30383,22804,22804,22804,22804,29879,33195,23546,23546,23546,34898,23546,23546,23546,23546,47562,47563,47563,49594,27195,22821,22824,22824,22824,49007,30376,22804,22804,22804,28251,29883,33199,23546,23546,45156,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,28617,23546,48860,47563,47563,23109,22824,22825,22804,22804,48020,34919,46606,50168,47563,35289,22824,34937,22804,34959,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,26217,23546,26527,28994,29429,32937,21397,21407,19607,19616,34984,34999,35011,35027,35038,26204,23546,23546,23546,21159,35548,23546,23546,29013,35054,32876,23546,35263,35074,35112,39498,35166,47961,27448,49402,46199,35202,23546,23546,23546,38910,23546,47123,35227,23546,23546,23546,35244,44990,22587,44754,35279,47563,35324,35372,48187,22824,29333,35407,49176,35434,22804,35477,39677,36943,23546,35515,50019,41319,42187,35535,23546,19253,43384,35575,35592,35612,35186,47563,42920,37391,20600,22823,35386,22824,40181,35635,35678,29350,22804,33765,35713,35750,48433,33201,23546,23546,23546,23546,35766,20349,35815,44388,23546,23546,40380,47253,47563,47563,41209,36250,35833,43893,22824,22824,48653,43541,43789,35866,22804,22804,31917,36853,33195,23546,19730,35885,35914,32534,35930,35957,45488,36011,28363,36030,36050,36074,36103,39870,50408,42260,32597,45635,22804,36124,36169,36204,27085,31863,36220,46659,44955,21826,38142,32958,36266,47872,36286,36321,36366,36384,36409,36435,36471,36489,36514,36540,36572,23546,23546,18340,36595,30632,36619,36640,39370,36661,36681,36702,36740,36760,31970,23546,36781,18841,22586,47563,47563,23109,22824,22825,22804,22804,31964,34034,46606,22585,31741,36801,36823,36840,38424,36549,46609,36869,23111,30673,39296,36886,35338,36933,36966,48975,23107,30672,23141,24756,33030,33551,42313,47646,36993,39426,42307,22729,23448,37021,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,39988,23546,26527,23546,23546,23546,23546,21369,50028,21708,39996,40225,24990,37071,37082,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,31016,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,27420,22824,43762,22804,22804,48012,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,25524,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,37098,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,37115,23546,23546,23546,23546,23546,23546,23546,23546,48976,37134,47563,47563,47563,47564,37151,22824,22824,22824,22824,22767,28828,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,41164,23546,26527,23546,34764,23546,19155,37185,37221,37234,37250,37256,37272,37288,37299,26204,23546,37315,23546,35799,23546,43426,26746,23546,23546,37335,23546,32153,42194,37334,37351,37380,37407,37443,40833,37430,32821,37459,23546,23546,34612,23546,23546,40581,34220,23546,41122,29193,49795,34228,47262,37494,29549,41774,37514,42784,22904,45886,37530,38036,37570,36188,37589,23034,37618,28342,23546,23546,23546,23546,50126,23546,23546,23546,23546,23546,48975,28498,44484,47563,28434,44023,37641,37671,39810,30349,22824,39853,47704,29645,22804,49383,22804,37657,33201,23546,23546,50909,37693,23546,32019,38379,23546,23546,23546,48976,47563,47563,46474,32220,37710,22821,22824,22824,49321,37734,37761,35849,22804,22804,37788,37809,29879,33195,23546,37872,23546,23546,37889,23546,23546,23546,47562,27357,47563,47563,27195,22821,40293,22824,22824,22824,30376,34247,22804,22804,22804,29883,33199,37910,31075,23546,37928,47744,48973,37953,47563,47563,37979,38003,22824,22824,38027,38061,22804,22804,38085,47447,23404,23546,28599,23546,47560,31782,47563,23113,38011,22824,33078,33721,22804,31970,23546,21592,23546,22586,47563,50097,23109,22824,40810,22804,22804,38110,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,33290,45056,38132,38158,38179,33552,39426,27505,38215,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23648,23546,26527,23546,26305,23546,23546,29594,20530,20539,38250,38264,38273,38289,38300,26364,23546,23948,23546,35799,23546,34320,23546,23546,23546,23948,23546,35554,36579,23947,35559,38316,33588,36393,38336,43066,27800,23546,23546,38357,44844,23546,39344,42555,23546,39071,23546,23546,38375,41192,48530,47563,47812,38395,28750,22824,42121,31482,43762,38449,22804,38419,38440,32050,38473,38509,46688,34783,23546,23546,23546,23546,23546,38530,23546,23546,48975,47883,38550,42949,47563,37135,22823,38568,30084,22824,22824,49439,42031,34293,41837,22804,22804,29885,33201,23546,38929,23546,38602,23546,44369,37873,23791,38621,23546,48976,27031,38642,47563,38659,47564,38683,47916,22824,22824,38702,33843,35849,39277,22804,33804,38724,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,36556,23546,23546,23546,23546,47560,38744,47563,30559,22824,22824,46066,22804,22804,31970,23546,23546,49685,22586,47563,47563,23109,47427,22825,22804,35452,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,38761,47561,38782,38802,43621,23464,38824,38844,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,38045,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23810,23546,46101,23546,29522,38860,33103,38895,38945,38984,38970,38989,38954,39005,39016,26204,23546,24981,39032,39052,39135,26183,26715,27157,23546,39087,39123,35972,23871,39151,32436,39187,39222,39262,39312,39360,27800,27271,23546,23546,40856,29748,35256,26269,47340,39386,28121,33483,41086,39406,48539,39200,45029,47563,29260,30036,22824,47369,43762,41883,39448,22787,22804,32852,39469,27673,33624,23546,39492,23546,23546,30166,23546,19760,23546,25974,48975,39514,47563,47563,47563,37135,37987,39541,30332,22824,22824,49439,34278,22804,48403,22804,22804,29885,33201,23546,23546,23546,23546,49277,23546,23546,39561,44662,39580,2e4,47563,47563,38745,47563,41583,39601,22824,22824,42751,22824,39625,36344,22804,22804,49650,22804,39663,33195,39390,39701,21803,40964,23546,28563,39737,39764,42864,39780,30015,27711,27195,22821,39796,39832,37838,39869,30376,37543,39886,39910,39936,47724,39958,49087,33227,48840,39980,40013,20680,50204,40049,40067,40083,45419,22824,40109,40125,36765,22804,40151,40167,47447,40217,23546,23546,19121,40241,48114,40263,48445,44596,40286,40309,42808,40330,30581,40353,23546,23546,40374,28485,40396,27517,40433,40468,40722,40488,31964,30114,48477,40517,36058,24761,45115,30673,40537,36549,40555,19020,29663,30673,40603,40652,40668,40708,40752,40779,40802,40826,40849,24756,33030,33551,47559,33030,33552,40872,40899,22729,23448,40923,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,40939,26527,23546,35150,40960,23546,26932,40980,40989,41005,41019,41028,41044,41055,26204,41071,27176,35142,41110,22748,41145,23546,41180,29961,41225,35127,41274,41299,41335,41350,41366,41401,41487,41458,41474,41503,23546,18442,27630,46235,23546,41314,19147,41528,40358,23546,23546,45375,22587,47563,36909,41568,47891,27418,38686,27953,41607,41630,22804,23213,41665,46983,39677,36943,23546,45937,23546,37118,23546,39337,41681,33824,35058,38605,23546,41717,41752,28167,41769,47563,43475,41790,42050,41800,22824,22824,41816,41853,50302,41874,22804,49204,29885,47656,41907,23546,38879,36785,23546,23546,23546,23546,23546,39036,48976,47563,46791,34008,47563,47564,22821,22824,44589,46895,22824,22767,35849,22804,41937,38457,22804,29879,33195,23546,23546,49550,23546,45766,23546,23546,23546,47562,47563,47563,47563,32301,41958,22824,22824,22824,46046,28243,22804,22804,22804,22804,41977,33199,20951,42005,23546,23546,23546,44350,47563,31827,47563,41591,22824,49433,22824,28884,22804,42026,22804,30403,31211,23546,23546,23546,23546,27328,40247,47563,27241,38708,22824,42285,31924,22804,29685,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,22739,46606,49667,46712,38403,42047,44103,22804,44463,42066,42221,42103,42137,42175,42210,42248,42276,42301,48975,23107,30672,23141,24756,33030,33551,47559,33030,35697,39426,36136,22729,23448,42329,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,26377,26527,23546,23546,42378,33354,42400,20758,23546,26429,42436,42448,42464,42475,26204,23546,23546,25120,35799,23546,23546,23546,31573,31305,23546,23546,31567,25118,23546,48973,37963,23115,42491,47011,42515,27800,23546,42549,23546,44844,23546,38766,18352,23546,39064,23546,23546,22159,22587,48548,38163,45793,48521,47316,42571,42591,47404,42609,44147,39942,22845,35499,47057,42343,42636,23546,42657,23546,42010,42641,26759,23546,23546,23546,23546,48975,47563,47563,36917,47563,37135,22823,22824,22824,42693,22824,49439,22804,22804,28847,22804,22804,29885,45066,44270,23546,42713,23546,23546,26553,42677,42730,31574,23546,48976,47563,48931,47563,47563,47564,42748,22824,42767,22824,22824,34180,35849,22804,42800,22804,22804,29879,33195,23546,44983,23546,23546,23546,23546,42824,23546,47562,47563,36034,47563,27749,22821,22824,22824,42844,22824,48373,22804,22804,38192,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,18259,23546,23546,42862,47563,47563,23113,22824,22824,33078,22804,22804,39325,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,48281,42880,42913,28181,33529,39296,42936,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,38514,23546,23546,23546,44073,44076,50916,44069,36233,42971,33598,40201,40539,43066,29275,42987,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,43004,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,43023,22824,22824,22824,22824,43497,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,30422,47563,23109,38579,22825,32685,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,22195,38234,23546,23546,22088,23546,31645,43040,31695,43090,43103,43112,43128,43139,26204,23546,31341,32732,35799,43366,43155,43175,36087,40692,50768,31673,43193,32904,31522,31081,43243,43271,43287,43315,43342,40683,23546,23546,23546,45381,43358,40568,43382,43400,43418,23546,23546,30119,43208,47563,43442,27364,43462,43491,28908,22824,43513,43557,22804,43588,41858,43607,43637,43676,23546,23546,23546,18266,35576,23546,23546,43699,43717,43736,20331,32703,47563,41378,47563,46720,41989,43754,29628,22824,22824,43651,43778,43812,46171,22804,44212,43831,43879,33201,23546,23546,45346,23546,43914,43941,23546,27809,23863,43976,44003,47563,48620,44039,35181,49990,44092,22824,45449,39545,44119,42697,44138,22804,44163,27998,44211,35734,33195,39171,23546,23546,23067,44228,32012,23546,44255,36870,46433,23003,47563,27195,22821,44297,46134,22824,22824,30376,39647,22804,44322,22804,41442,44340,23546,44366,44385,23546,23546,34339,44404,47563,47563,44422,22824,22824,22824,44438,22804,22804,22804,44454,47447,48298,23546,23546,23546,44479,47563,47563,46130,22824,22824,44500,22804,22804,44520,23546,40027,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,38094,49704,44555,44579,44612,44650,23464,24759,33031,33550,44685,30652,34420,36724,24756,33030,33551,47559,33030,45310,44716,44744,32641,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,25786,26527,44778,28976,18999,44795,44824,44860,44808,44885,44899,44911,44927,44938,26204,44954,40587,23546,44971,23546,23546,43960,23546,50132,23546,45006,35089,26325,35096,32207,45025,45045,44306,45082,45103,27800,35987,37200,44669,44844,34640,23546,23546,23546,23546,45137,45172,23546,19324,45188,43446,47563,47563,45233,45249,45268,22824,43762,45291,40314,22804,22804,39677,36943,37912,23546,23546,45326,45362,23546,23546,23546,23546,23546,37055,48975,48512,31834,47563,47563,46028,22823,45397,45415,22824,22824,36333,38728,44324,22804,22804,22804,45435,33201,23546,23546,26251,43720,23546,45465,26758,45484,45504,23546,45539,47563,47563,47285,43856,45576,45600,22824,22824,47994,48169,45624,45661,22804,22804,42152,45681,29879,45697,45713,45733,23546,25942,23546,23546,30214,45754,47562,47563,27730,45789,27195,22821,22824,47619,47969,22824,30376,22804,22804,45809,22804,29883,33199,23546,21039,23546,49467,37049,48973,47563,45851,48716,45584,47934,22824,45868,48003,35869,22804,45910,30403,47447,23546,48332,18869,22345,47560,47563,47563,23113,22824,22824,33078,22804,22804,32e3,21288,23546,45931,45953,47563,37498,23109,22824,40444,22804,34438,36455,45997,44634,19558,46021,50382,46044,28056,22804,34468,46609,35619,30711,46062,46082,23464,24759,33031,33550,19538,36296,49945,23141,46117,38586,45823,48503,46150,46187,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23737,26527,23546,23546,34968,23546,46215,26881,26893,46251,46267,46279,46295,46306,26204,46322,23241,25565,35799,25341,42889,46340,22204,44869,46352,46368,46377,46393,46349,46420,46455,46490,46547,46518,46534,32867,46005,19766,34600,44844,46563,23546,26188,46580,41258,46596,46625,46675,46736,46784,46807,46842,38552,46877,45877,46911,46944,36419,46977,46999,47027,27557,39677,37035,47093,47115,35228,23546,47139,47174,23546,47766,23546,49770,47192,20591,47219,47244,47278,38643,47301,41736,47356,47391,47426,31459,49439,36524,39920,40135,22804,35492,33058,47443,23546,20251,43007,37694,47465,46324,47491,47518,23546,47535,47555,39525,47841,47563,34125,47580,47616,47635,39844,22824,37169,48362,35849,47672,47697,22804,41891,47720,33195,23058,47740,23546,45516,47760,23546,47782,18627,47798,50186,47833,47857,27195,47907,47932,47950,47985,48036,39636,46165,37602,50472,50517,37554,27477,48056,18311,23546,35780,48076,48095,44700,47563,47563,48130,48155,37677,22824,48203,48236,49183,22804,48272,47447,18372,48297,48314,48330,41202,45981,33877,34811,48348,48040,48397,48419,37793,31970,48467,23546,23546,48493,46466,31618,34505,49612,47069,35443,43299,48564,28304,47475,19993,48611,37364,48636,48669,43591,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,44177,29729,48685,36498,48701,45275,48737,39426,42307,22729,39685,48765,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,48828,23546,23546,48856,23546,35941,30944,30953,48876,30953,30962,48892,48903,26204,23546,23546,23546,40636,23546,26348,23546,23546,23546,23546,26345,23546,38923,23546,48973,48919,48178,48947,38808,37005,31513,38873,23546,23546,44844,23546,23546,27897,48963,23546,23546,23546,23546,48971,46750,47563,47563,34356,48992,22824,22824,22824,36305,49028,22804,22804,22804,49052,44728,49080,23546,49103,45341,23546,23546,42732,48802,47595,38359,35596,48975,47563,49130,41385,43221,47228,22823,48595,46928,41415,49146,49164,22804,49199,49220,45915,29388,37824,33201,23546,25346,23546,26261,23546,23546,23546,49474,23546,23546,48976,33503,47563,47563,47563,47564,49236,37414,22824,22824,22824,22767,49255,36180,22804,22804,22804,29879,33195,49272,23546,49293,23546,23546,23546,23546,28581,36243,47563,47563,47563,27195,49311,22824,22824,22824,22824,37772,22804,22804,22804,22804,29883,46502,23546,23546,50321,46564,23546,30276,23289,47563,47563,37718,49344,22824,22824,30514,49377,22804,22804,42620,47447,39101,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,46439,24761,43524,30673,49399,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,49418,45121,44624,47559,33030,33552,39426,32368,49455,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,49490,49547,33412,49525,23546,34105,23546,33409,49544,42420,41283,49566,49577,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,49593,35299,27962,22805,43066,27800,23546,33329,27613,44844,23546,23546,23546,23546,23546,32481,23546,23546,22587,32570,47563,46861,47563,27418,49610,22824,32331,43762,42159,22804,27215,22804,39677,36943,23546,23546,23546,23546,23546,37318,23546,23546,23546,20322,23546,48975,47563,47563,49628,47563,37135,22823,22824,32615,22824,22824,49439,22804,22804,49645,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,49666,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,49683,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,49701,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,49720,23546,50953,23546,25809,49755,49786,23546,49811,49825,49837,49853,49864,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,27387,22824,49893,38199,49880,34211,23546,23546,23546,44844,23546,23546,23546,23546,42672,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,49917,23546,23546,23546,22167,47563,47563,47563,47563,47564,49936,22824,22824,22824,22824,22767,49969,22804,22804,22804,22804,29879,33195,23546,23546,45149,23546,23546,23546,23546,23546,47562,47563,49988,47563,50006,22821,22824,48578,22824,41424,30376,22804,39894,22804,32389,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,26445,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,41512,50052,50063,26204,23546,23546,23546,35799,50079,30464,23546,23546,23546,23546,32774,23546,41129,32770,46701,50096,40191,28190,22805,43066,27800,23546,23546,23546,50113,28719,34485,45773,23546,23546,23546,23546,23546,22587,47563,29611,47563,27026,27418,22824,35645,28383,43762,22804,22921,22804,48250,39677,50148,50164,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,41250,23546,23546,23546,48976,47563,47563,50184,47563,45852,22821,22824,38786,22824,22824,45252,35849,22804,48256,22804,22804,29879,33195,48079,23546,23546,23546,23546,23546,23546,23546,47562,50202,47563,47563,27195,22821,50220,22824,22824,22824,30376,48220,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,21798,23546,23546,35799,23546,23546,46652,23546,23546,23546,23546,46656,23546,23546,50246,28439,22824,50294,36350,50281,47331,23546,29448,23546,44844,23546,23546,23546,23546,23546,23546,23546,35817,22587,47563,47563,47563,27723,27418,22824,22824,27861,43762,22804,22804,22804,48212,39677,36943,23546,50318,23546,23546,23546,23546,23546,23546,37099,23546,23546,48975,38667,47563,36014,47563,37135,22823,50337,22824,46961,22824,49439,28018,22804,22804,50356,22804,29885,33201,23546,43738,23546,23546,23546,23546,23546,38534,23546,23546,48976,47563,50376,47563,47563,47564,50398,41961,50424,22824,22824,22767,50443,28403,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,21488,23546,47562,47563,31747,47563,34161,22821,22824,43024,22824,22824,50464,22804,22804,50488,22804,43844,33199,23546,23546,18921,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,31241,23546,23546,39165,23546,29133,47563,47563,33578,22824,22824,50509,22804,22804,31970,23546,49295,23546,22586,47563,31161,23109,50427,22825,22804,41830,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,21483,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,46404,21767,21765,32117,22038,50563,21058,21061,50533,22036,50551,50579,50591,20967,23546,23546,23546,35799,23546,23546,50607,23546,23546,23546,23546,23546,23546,23546,25629,19208,50637,19916,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,50655,18544,18567,18590,19934,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,22150,23546,21369,20766,50679,50692,50708,50717,49509,50740,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23761,23546,23546,23758,25629,19208,50639,19926,50639,50790,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,42087,23546,23546,23546,23546,22568,29910,50839,50872,50878,50849,23148,50894,20967,23546,23546,23546,35799,23546,23546,50932,23546,23546,22686,23546,23546,23546,22682,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,50969,18544,18567,18590,21689,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,23546,23546,23546,23546,23546,23546,23489,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27132,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,22603,22824,22824,22824,34828,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22457,23546,23546,22482,50993,50998,50998,51019,22480,51014,51035,23546,23546,23546,23546,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,51062,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,50655,18544,18567,18590,19934,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,51082,20175,20206,20222,51139,20274,51143,20301,51098,20392,51127,20418,50802,51114,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,94503,94503,90406,90406,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,1,12290,3,0,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,362,94503,90406,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,0,94503,90406,94503,94503,94503,94503,94503,94503,94503,69632,73728,94503,94503,94503,94503,94503,65536,94503,0,2183168,0,0,0,90406,94503,296,297,0,2134016,300,301,0,0,0,0,0,0,2985,0,0,0,0,0,0,0,0,0,1631,0,0,0,0,0,1637,0,0,2424832,2433024,0,0,2457600,0,0,0,0,0,0,0,0,0,0,2454,0,0,0,0,0,0,0,0,0,2904064,2908160,0,0,0,0,0,0,0,0,0,0,0,2751,0,0,0,0,0,0,0,3117056,0,0,0,0,0,0,0,362,362,0,0,0,0,0,0,2997,0,0,0,0,3001,0,0,0,0,0,0,1186,0,0,0,1191,0,0,0,0,1107,0,0,0,2138112,0,0,0,0,0,0,0,0,0,0,0,0,0,2978,0,0,0,2424832,0,0,0,0,0,0,0,0,0,0,0,0,2625536,0,0,0,0,0,172032,0,172032,0,0,0,0,0,0,0,0,0,111050,111050,111050,111050,111050,111050,111050,111050,1,12290,3,0,2699264,2715648,0,0,2772992,2805760,2830336,0,2863104,2920448,0,0,0,0,0,0,0,1114,0,0,0,0,1118,0,0,1121,0,2805760,2920448,0,0,0,0,0,2920448,0,0,0,0,0,0,0,2732032,0,2179072,2179072,2179072,2424832,2433024,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2625536,2805760,2179072,2830336,2179072,2179072,2863104,2179072,2179072,2179072,2920448,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2801664,2813952,2179072,2838528,2179072,2179072,2179072,2179072,2179072,0,914,2125824,2125824,2125824,2125824,2424832,2433024,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2625536,2125824,2125824,2125824,2125824,2125824,2125824,2625536,2125824,2125824,2125824,2125824,2125824,2125824,2699264,2125824,2715648,2125824,2723840,2125824,2732032,2772992,2125824,2125824,2125824,2723840,2125824,2732032,2772992,2125824,2125824,2125824,2805760,2125824,2830336,2125824,2125824,2863104,2125824,2125824,2125824,2125824,2920448,2125824,2125824,2125824,2125824,2125824,2125824,2920448,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3117056,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3207168,2125824,2125824,2179072,2125824,2125824,2125824,2125824,2457600,2125824,2125824,2125824,2125824,2183168,0,0,0,0,0,0,0,0,0,0,2518,0,0,0,0,0,0,0,0,0,2375680,0,0,0,0,0,0,0,0,0,0,0,0,167936,0,0,0,0,0,0,2408448,0,0,2584576,0,0,0,0,2838528,0,0,2838528,0,0,0,0,0,2469888,2506752,2756608,0,0,2580480,0,0,0,2396160,2400256,2412544,0,0,2838528,0,0,0,0,0,2179072,2179072,2179072,2408448,2179072,2179072,2179072,2179072,2179072,2179072,3223552,914,0,2125824,2125824,2125824,2125824,2125824,2445312,2125824,0,2125824,2125824,2125824,2408448,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,2502656,0,0,3010560,2125824,2125824,2125824,2125824,2125824,2662400,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2801664,2813952,2125824,2838528,2125824,2801664,2813952,2125824,2838528,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3125248,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2461696,0,0,0,0,0,0,0,0,0,0,0,0,2600960,0,2674688,0,2768896,2777088,2781184,0,2822144,0,0,2883584,0,0,0,0,0,0,0,0,0,0,0,0,3055616,0,0,0,3080192,3100672,3104768,0,0,0,0,3186688,0,0,0,0,0,0,0,3182,0,0,0,0,0,0,0,0,0,2732032,0,0,0,0,0,0,0,0,0,3133440,0,0,0,0,0,0,0,0,0,0,0,0,0,3003,3004,0,2719744,0,0,0,0,0,0,0,0,0,0,3014656,3207168,0,2691072,0,0,0,0,0,2818048,2846720,0,2916352,0,0,3002368,0,0,3022848,0,0,0,0,0,2871296,0,0,0,0,0,0,0,0,0,0,0,2766,0,0,0,0,0,3215360,0,0,0,0,0,0,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2494464,2179072,2179072,2514944,2179072,2179072,2461696,2465792,2179072,2179072,2179072,2179072,2179072,2179072,2523136,2179072,2179072,2179072,2179072,2179072,2179072,2699264,2179072,2715648,2179072,2723840,2179072,2732032,2772992,2179072,2179072,3100672,2179072,2179072,3133440,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,3207168,2179072,0,0,0,0,391,392,0,393,0,0,0,0,0,393,0,0,0,0,0,3504,0,0,0,540,540,540,540,540,540,540,540,540,540,540,3399,540,540,0,0,0,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2461696,2465792,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2523136,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2600960,2125824,2125824,2125824,2125824,2125824,2125824,2641920,2125824,2125824,2125824,2125824,2125824,2125824,2719744,2125824,2125824,2125824,2125824,2125824,2768896,2777088,2768896,2777088,2125824,2797568,2822144,2125824,2125824,2125824,2883584,2125824,2912256,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3133440,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3207168,2125824,0,0,0,0,0,0,3011,0,0,0,0,0,0,3018,0,0,0,0,2605056,0,0,0,0,2887680,0,2924544,0,0,0,0,0,0,0,1135,0,0,0,0,0,0,0,0,400,0,0,0,0,0,0,0,0,0,0,3162112,3170304,0,0,3219456,3035136,0,0,0,0,0,3072e3,2650112,2179072,2179072,2179072,2707456,2179072,2736128,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2887680,2179072,2179072,2543616,2547712,2179072,2179072,2596864,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2584576,0,0,2809856,0,0,0,0,0,0,0,0,0,0,3088384,0,0,0,0,0,1670,0,0,0,0,0,0,0,2112,0,0,0,0,0,1680,1681,0,1683,0,0,0,0,0,0,0,540,561,540,561,540,540,561,540,585,0,0,2576384,0,0,0,0,0,0,0,0,0,0,0,2420736,0,0,0,0,429,0,0,0,0,0,0,0,0,0,0,0,300,0,0,0,0,0,0,3121152,3141632,0,0,0,2924544,0,2682880,0,0,0,0,0,0,0,1242,1272,1273,0,1242,0,540,540,540,3112960,2387968,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2453504,2179072,2473984,2482176,2179072,2179072,2179072,2179072,2179072,3010560,2179072,2179072,2126737,2126737,2503569,2126737,2126737,2126737,2126737,2126737,2126737,2532241,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2605969,2126737,2924544,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,3035136,2179072,2179072,3072e3,2179072,2179072,2179072,3137536,2126737,2126737,2499473,2126737,2126737,2126737,2556817,2565009,2126737,2126737,2126737,2126737,2126737,2126737,3224465,0,0,2126810,2126810,2126810,2126810,2126810,2446298,2126810,3121152,2179072,2179072,3141632,2179072,2179072,2179072,3170304,2179072,2179072,3190784,3194880,2179072,0,0,0,0,0,0,3181,0,0,0,3184,3185,3186,0,0,3189,3194880,2125824,0,0,0,0,0,0,2387968,2125824,2125824,2420736,2125824,2125824,2125824,2125824,2125824,2453504,2125824,2473984,2482176,2125824,2125824,2125824,2605056,2125824,2629632,2125824,2125824,2650112,2125824,2125824,2125824,2707456,2125824,2736128,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3035136,2125824,2125824,3072e3,2125824,2125824,3121152,2125824,2125824,3141632,2125824,2125824,2125824,3170304,2125824,2125824,3190784,2125824,3170304,2125824,2125824,3190784,3194880,2125824,2125824,2179072,2125824,2125824,2125824,2179072,2179072,3112960,3219456,2125824,2125824,3112960,3219456,2125824,2125824,3112960,3219456,0,0,0,0,0,0,0,0,0,3507,540,540,540,540,540,540,0,3145728,0,3203072,0,0,0,0,0,0,0,0,0,0,0,0,0,3314,0,540,0,3067904,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,172032,0,0,0,0,2895872,0,0,0,2445312,0,2842624,0,0,0,2637824,0,0,0,0,432,0,0,0,329,467,467,467,467,467,467,467,467,467,467,467,467,467,467,467,467,0,0,0,2621440,0,3182592,2899968,0,2961408,0,0,2179072,2179072,2179072,2179072,2179072,2592768,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2125824,2445312,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2551808,2179072,2179072,2179072,2179072,2179072,3117056,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2126737,2126737,2126737,2126737,2637824,2125824,2125824,2125824,2125824,2727936,2752512,2125824,2125824,2125824,2125824,2842624,2846720,2125824,2895872,2916352,2125824,2125824,2945024,2125824,2125824,2994176,2125824,3002368,2125824,2125824,3022848,2125824,3067904,3084288,3096576,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,0,2442,2443,0,0,2446,0,0,0,0,0,2928640,0,0,0,3059712,0,2543616,2666496,0,2633728,0,0,0,0,0,1697,0,0,0,0,0,0,0,0,0,0,1116,0,0,0,0,0,2494464,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3211264,2179072,2928640,2179072,2179072,2179072,2998272,2179072,2179072,2179072,2179072,3059712,2179072,2179072,2179072,2179072,2179072,2179072,3223552,0,0,2126737,2126737,2126737,2126737,2126737,2446225,2126737,2179072,3178496,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2494464,2125824,2125824,2514944,2125824,2125824,2125824,2125824,2125824,2125824,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2125824,2125824,0,0,0,0,0,0,2510848,2514944,0,0,2547712,2596864,0,0,0,0,0,1670,0,0,0,0,0,0,0,0,2113,0,2125824,2543616,2547712,2125824,2125824,2596864,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,2125824,2125824,2125824,2408448,2125824,2928640,2125824,2125824,2125824,2998272,2125824,2125824,2125824,2125824,3059712,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,2125824,2126811,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,0,2125824,2125824,2125824,2125824,2424832,2125824,3178496,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2494464,2125824,2125824,2514944,2125824,2125824,2125824,2125824,2125824,2125824,3223552,0,0,2125824,2125824,2125824,2125824,2125824,2445312,2125824,2125824,3178496,2125824,2179072,2125824,2125824,2179072,2179072,2125824,2125824,2125824,2125824,2441216,0,0,0,0,0,0,3311,0,0,0,0,0,0,0,0,540,540,540,2165,540,540,540,540,0,0,0,2740224,0,0,0,0,0,2793472,0,0,0,0,0,0,0,1244,0,0,0,0,1247,0,1194,0,2646016,2179072,2179072,2695168,2756608,2179072,2179072,2179072,2932736,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,3039232,2179072,3063808,2179072,2179072,2179072,2179072,3129344,2179072,2179072,3153920,3166208,3174400,2396160,2400256,2125824,2125824,2441216,2125824,2469888,2125824,2125824,2125824,2519040,2125824,2125824,2125824,2125824,2588672,2125824,2519040,2125824,2125824,2125824,2125824,2588672,2125824,2613248,2646016,2125824,2125824,2695168,2756608,2125824,2125824,2125824,2125824,2932736,2125824,2125824,2125824,2125824,2125824,2125824,2932736,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3129344,2125824,2125824,3153920,3166208,3174400,2396160,2125824,2125824,3129344,2125824,2125824,3153920,3166208,3174400,2125824,2506752,2506752,2506752,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,3223552,987,0,2125824,2125824,2125824,2125824,2125824,2445312,2125824,0,3043328,0,3149824,2936832,0,2760704,3176,0,0,0,0,2953216,0,0,2826240,3158016,2437120,0,2785280,0,0,0,2428928,0,3018752,2764800,2572288,0,0,3051520,2179072,2179072,2637824,2179072,2179072,2179072,2179072,2727936,2752512,2179072,2179072,2179072,2842624,2846720,2179072,2916352,2428928,2437120,2179072,2486272,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2654208,2678784,2760704,2764800,2854912,2969600,2179072,3006464,2179072,3018752,2179072,2179072,2179072,3149824,2125824,2428928,2437120,2125824,2486272,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,297,0,0,0,0,0,2043,2044,0,0,0,0,0,0,0,0,0,2140,0,0,0,0,0,0,2125824,3018752,2125824,2125824,2125824,3149824,2125824,2428928,2437120,2125824,2486272,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,24576,987,2125824,2125824,2125824,2125824,2424832,2125824,3149824,2125824,2179072,3051520,2125824,3051520,2125824,3051520,0,2490368,2498560,0,0,0,0,0,0,304,0,204800,0,0,0,0,0,0,0,0,1713,0,0,0,0,0,0,0,0,1727,0,0,0,0,0,0,0,0,2068,0,0,0,0,0,0,0,0,2095,0,0,0,0,0,0,0,0,2107,0,0,0,0,0,0,0,0,0,2875392,0,0,0,3176,0,0,2834432,0,3227648,2568192,0,0,0,0,2564096,0,2940928,2179072,2179072,2498560,2179072,2179072,2179072,2555904,2564096,2179072,2179072,2179072,2179072,2179072,2179072,3223552,0,0,2125824,2125824,2125824,2125824,2125824,2445312,2125824,2125824,2125824,2125824,2125824,2125824,3137536,2125824,2125824,2498560,2125824,2125824,2125824,2555904,2564096,2125824,2125824,2125824,2125824,2125824,2125824,3223552,2125824,2179072,2416640,2125824,2125824,2179072,2179072,2125824,2125824,0,2486272,0,0,0,0,0,2678784,2854912,3006464,0,3108864,3198976,0,0,2748416,2879488,0,3176,0,0,0,0,0,0,0,0,2179072,2179072,2179072,2179072,2179072,2592768,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2126737,2125824,2125824,2125824,2125824,3010560,2125824,2125824,2125824,2125824,2502656,2125824,2125824,2125824,2125824,2125824,2125824,296,0,0,0,296,0,297,0,0,0,2125824,2125824,2125824,3010560,2125824,2125824,2125824,0,0,0,0,0,0,0,2592768,0,0,0,0,433,0,0,0,453,469,469,469,469,469,469,469,469,469,479,469,469,469,469,469,469,2125824,2125824,2125824,2125824,2592768,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,1918,2125824,2125824,2125824,2408448,2125824,2592768,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2449408,0,2535424,3031040,0,0,0,0,0,1734,0,1736,1710,540,540,540,540,540,540,540,540,1816,1818,540,540,540,540,540,1360,0,2859008,0,0,2179072,2449408,2179072,2535424,2179072,2609152,2179072,2859008,2179072,2179072,2179072,3031040,2125824,2449408,2125824,2535424,2125824,2609152,2125824,2859008,2125824,2125824,2125824,3031040,2125824,2449408,2125824,2535424,2125824,2609152,2125824,2859008,2125824,2125824,2125824,3031040,2125824,2527232,0,0,0,0,0,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,0,0,2804,540,540,540,540,2527232,2179072,2179072,2179072,2179072,2179072,2125824,2527232,2125824,2125824,2125824,2125824,2125824,2125824,2527232,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,0,0,1080,1084,0,0,1088,2125824,2125824,2125824,2125824,3092480,0,0,0,0,3026944,2404352,2179072,2179072,2179072,2179072,3026944,2404352,2125824,2125824,2125824,2125824,3026944,2404352,2125824,2125824,2125824,2125824,3026944,2539520,0,2949120,0,0,0,0,434,0,0,446,0,0,0,0,0,0,0,0,457,1147354,1147354,1147354,1147354,1147354,1147354,1147354,2179072,2658304,2973696,2179072,2125824,2658304,2973696,2125824,2125824,2658304,2973696,2125824,2711552,0,256e4,2179072,2179072,2945024,2179072,2179072,2994176,2179072,3002368,2179072,2179072,3022848,2179072,3067904,3084288,3096576,2179072,2179072,2600960,2179072,2179072,2179072,2179072,2641920,2179072,2179072,2179072,2179072,2179072,2179072,2719744,2179072,2179072,2441216,2179072,2469888,2179072,2179072,2179072,2519040,2179072,2179072,2179072,2179072,2588672,2179072,2613248,2703360,0,0,0,0,2977792,0,0,3047424,3129344,0,2981888,2396160,0,3153920,256e4,2125824,256e4,2125824,0,2179072,2125824,2125824,0,2179072,2125824,2125824,0,2179072,2125824,2125824,2125824,2457600,2179072,2179072,2179072,2179072,2457600,2125824,2125824,2125824,2985984,2985984,2985984,2985984,0,0,0,0,0,0,0,0,0,0,0,0,0,249856,0,0,0,0,0,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,458,458,111050,458,458,458,458,458,458,458,458,458,458,111050,111050,111050,111050,111050,111050,111050,111050,111050,458,111050,111050,111050,111050,111050,0,0,0,0,0,0,0,0,0,0,2738,0,0,0,0,0,0,2183168,0,0,0,0,0,296,297,0,2134016,300,301,0,0,0,0,0,0,184723,184931,184931,184931,0,184931,184931,184931,184931,184931,0,0,0,0,0,184931,0,184931,1,12290,3,78112,1059,0,0,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,296,0,297,0,2125824,1059,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,0,2750,0,0,0,0,2755,0,300,118784,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1134592,0,0,0,0,300,300,300,300,0,0,0,0,0,300,0,300,1,12290,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,266240,0,0,0,0,2183168,0,0,0,0,0,33403,297,0,2134016,49791,301,0,0,0,0,0,0,225889,225889,225889,225889,225740,225889,225889,225889,225889,225889,225740,225740,225740,225740,225740,225906,225740,225906,1,12290,3,0,0,0,0,249856,0,0,0,249856,0,0,0,0,0,0,697,698,0,362,362,362,0,0,0,0,0,0,711,0,0,0,0,0,0,0,0,0,362,296,0,0,0,0,0,0,0,0,2134016,0,0,0,0,0,0,57344,0,0,0,0,0,0,0,3506,0,540,540,540,540,540,540,540,2530,540,540,540,540,540,540,540,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,0,296,0,0,0,300,0,0,0,300,119195,73728,0,0,0,0,0,65536,0,0,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,0,0,0,0,122880,122880,122880,122880,122880,122880,122880,122880,0,0,122880,0,0,0,0,0,0,0,0,0,0,0,3166,3167,0,0,0,0,0,122880,0,122880,122880,122880,0,0,0,0,0,122880,0,122880,0,0,0,0,0,0,0,0,122880,0,0,0,0,0,0,0,0,0,0,0,0,221184,0,0,0,0,0,0,0,0,0,122880,122880,122880,122880,122880,0,122880,0,2105629,12290,3,0,0,291,0,0,0,0,291,0,0,0,0,0,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,2134016,0,0,0,0,0,0,0,746,0,0,0,0,0,0,328,0,0,0,0,0,0,0,328,0,0,69632,73728,0,416,416,0,0,65536,416,1092,0,2424832,2433024,0,0,2457600,0,0,0,0,0,0,0,0,0,0,2765,0,0,0,0,0,1824,2125824,2125824,2125824,2408448,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2551808,2125824,2125824,2125824,2125824,2125824,0,0,0,131072,0,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,435,0,0,0,0,0,0,0,0,0,0,0,2507,0,0,0,0,0,131072,0,0,131072,131072,0,0,0,0,0,0,131072,0,131072,0,131072,0,0,0,0,0,0,0,0,0,0,131072,0,131072,131072,131072,131072,0,131072,131072,131072,131072,131072,0,0,0,0,0,131072,0,131072,1,12290,3,0,0,0,0,0,0,0,0,0,0,0,0,298,0,135168,135168,0,0,0,0,0,0,0,0,0,0,0,0,0,320,321,0,0,0,135168,0,0,135168,0,0,0,0,0,0,0,0,0,0,0,3174,0,0,0,0,0,0,0,135168,135168,135168,135168,135168,135168,135168,0,135168,135168,135168,135168,135168,0,0,0,0,0,135168,0,135168,1,12290,3,0,0,0,0,0,0,0,0,0,0,0,118784,296,0,2183168,0,0,0,0,0,636,637,0,2134016,640,641,0,0,0,0,0,0,266240,0,0,0,0,0,0,0,0,0,0,266240,0,0,0,1361,2125824,2125824,2125824,2125824,2424832,2433024,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,986,2125824,2125824,2125824,2125824,2424832,0,301,139264,0,0,0,0,0,0,0,0,0,0,0,0,0,331,0,331,301,301,301,301,0,0,0,0,0,301,0,301,1,12290,3,0,0,0,0,0,0,0,0,0,0,0,139264,297,0,2183168,0,0,0,0,0,296,33406,0,2134016,300,49794,0,0,0,0,0,0,1134592,0,0,0,0,0,0,0,0,0,0,1134592,0,0,0,2134016,0,0,0,0,0,0,0,0,0,0,61440,0,0,0,0,647,0,0,0,0,0,0,0,0,0,0,0,2455,0,0,0,0,0,301,2424832,2433024,0,0,2457600,0,0,0,0,0,0,0,0,0,0,2779,0,0,0,0,0,298,298,143728,298,298,298,143728,69632,73728,298,298,143658,298,298,65536,298,298,0,0,298,298,143658,298,298,298,298,298,298,298,298,298,363,298,0,143658,298,298,298,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,298,298,298,298,143658,143658,143658,143658,143658,143658,143658,143658,298,298,298,143658,368,298,298,298,298,298,298,298,298,298,298,298,298,298,298,298,298,143658,298,298,143658,298,298,143658,143658,143658,143658,143658,143658,298,0,298,0,298,298,298,143658,298,298,298,298,298,298,298,298,298,143658,298,143658,143658,143658,143658,298,298,143658,298,298,298,298,298,298,298,298,298,298,298,143728,298,298,298,298,298,298,298,143658,143658,143658,143658,143658,143658,143728,143658,143728,143728,143728,143728,143728,143658,143658,143658,143658,143658,143658,143658,143658,1,12290,3,0,0,0,0,0,0,0,90406,90406,90406,90406,0,94503,0,0,0,3117056,0,0,0,0,0,0,0,2200252,2200252,0,0,0,0,0,0,1134592,0,0,0,0,0,0,1134592,0,0,0,0,0,0,0,155648,155648,0,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,0,0,0,0,155648,0,0,0,0,0,0,345,0,0,0,0,0,0,0,0,0,1663,0,0,0,0,0,0,0,0,155648,0,0,155648,0,0,0,0,0,0,0,155648,0,0,0,155648,155648,0,155648,155648,0,12290,3,0,0,2183168,126976,0,0,0,0,296,297,0,2134016,300,301,0,0,0,0,0,0,1146880,0,1146880,0,0,0,0,0,0,0,1107,0,0,0,0,0,0,0,0,540,2163,540,540,540,540,540,540,0,0,0,3117056,0,0,0,0,0,0,0,362,0,0,0,0,0,0,345,346,347,0,0,0,0,0,0,0,757,0,0,0,0,0,0,0,0,1156,0,0,0,0,0,0,0,159744,159744,159744,0,0,159744,0,0,0,0,0,0,0,0,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,163840,159744,159744,159744,163840,159744,159744,159744,159744,159744,0,0,0,0,0,0,0,0,25160,0,0,159744,0,0,0,0,25160,25160,25160,159744,25160,25160,25160,25160,25160,159744,159744,159744,159744,25160,159744,25160,1,12290,3,0,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,1,12290,3,0,167936,167936,167936,0,0,167936,0,0,0,0,0,0,0,0,167936,167936,167936,167936,167936,167936,167936,0,0,0,0,0,0,0,0,0,0,3015,0,0,0,0,0,0,0,0,2138112,1183,0,0,0,0,0,0,0,0,0,0,0,0,262144,0,0,0,0,172032,172032,0,0,0,0,0,0,0,0,0,0,172032,0,0,0,0,0,0,172032,172032,0,172032,0,0,172032,0,172032,0,172032,0,0,0,0,172032,172032,172032,172032,172032,172032,172032,172032,1,12290,3,0,172032,0,172032,172032,0,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,0,0,0,0,0,0,0,0,0,0,106496,0,0,0,0,0,1,286,3,0,0,0,292,0,0,0,0,0,0,0,0,0,0,106496,0,106496,0,0,0,0,106496,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,1,0,3,78112,176128,176128,176128,0,0,176128,0,0,0,0,0,0,0,0,176128,176128,176128,176128,176128,176128,176128,0,0,0,0,0,0,0,0,0,0,111050,0,0,0,0,0,78112,290,0,634,0,0,0,296,297,0,2134016,300,301,0,0,0,0,0,0,1159168,414,414,0,0,0,0,0,414,0,1164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,540,540,540,0,914,561,561,561,561,561,561,561,561,561,561,561,561,561,561,959,561,585,585,585,1490,585,585,585,585,585,585,585,585,585,585,585,585,585,1498,585,585,0,0,229376,0,0,0,0,0,0,0,0,1686,0,0,0,0,0,0,404,404,404,404,0,404,404,404,404,404,0,0,0,0,0,404,0,404,1,12290,3,78112,290,0,0,0,0,0,0,0,0,0,0,0,0,1155072,0,0,0,0,0,0,0,2131,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,658,0,0,0,561,561,561,561,561,561,2250,561,561,561,561,561,561,585,585,585,585,585,585,0,0,0,0,0,0,3295,0,0,0,0,0,0,0,712,0,0,0,716,0,0,719,0,561,561,2287,561,561,561,561,561,561,561,561,561,561,561,561,561,0,0,0,585,585,585,2347,585,585,585,585,585,585,585,585,585,585,585,585,585,1514,585,585,2372,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,561,0,0,0,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,585,585,585,585,2671,585,585,585,585,585,585,585,585,585,585,585,585,585,1515,585,585,0,0,0,2994,0,0,0,2998,0,0,0,0,0,0,0,0,0,159744,159744,159744,159744,159744,159744,159744,540,3035,540,540,540,540,540,540,540,540,540,540,540,540,540,540,910,540,3075,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1417,3116,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1501,0,0,3178,0,0,0,0,0,0,0,0,0,0,3187,0,0,0,0,0,2046,0,2149,0,0,0,0,0,0,0,0,0,249856,249856,249856,249856,249856,249856,249856,249856,1,12290,3,0,540,540,540,3203,540,540,540,540,540,540,540,540,540,3211,540,540,540,540,540,2813,540,540,2817,540,540,540,540,540,540,540,540,540,2555,540,540,540,540,540,540,3255,585,585,585,3258,585,585,585,585,585,585,585,585,585,3266,585,561,0,1287,585,1467,1376,540,540,1339,540,540,561,561,1430,561,0,585,585,585,585,585,288,1079,0,0,0,0,0,0,0,0,2427,0,0,0,0,0,0,0,0,2465,0,0,2468,0,0,0,0,0,0,0,0,3309,0,0,0,0,0,0,0,0,0,0,540,3508,540,3509,540,540,540,3326,3327,540,540,540,540,540,540,540,540,561,561,561,561,561,561,561,561,561,561,561,561,561,561,961,561,585,585,585,3361,585,585,585,585,3362,3363,585,585,585,585,585,585,561,0,0,0,0,0,0,0,0,0,0,1159168,0,0,0,0,0,0,0,0,0,3176,0,0,0,0,0,0,0,0,3387,0,0,0,0,0,2092,0,0,0,0,0,0,0,0,0,0,404,0,0,0,0,0,561,3416,561,561,561,561,585,585,585,585,585,585,3425,585,585,585,585,585,585,1492,585,585,585,585,585,585,585,1499,585,585,585,585,3431,585,585,585,585,3435,540,561,585,0,0,0,0,0,0,665,0,0,668,0,0,0,0,0,0,0,3172,0,0,0,0,0,0,0,0,0,225740,225740,225740,225740,225740,225740,225740,0,0,0,0,3176,0,0,0,0,0,0,0,0,3450,540,540,540,540,540,2814,540,2816,540,540,540,540,540,540,540,540,540,2233,540,540,540,540,540,0,561,561,561,3573,561,561,561,561,561,561,561,561,585,585,585,585,585,585,3538,585,585,3585,585,585,585,585,585,585,585,585,561,0,0,0,0,0,0,3627,561,561,585,585,0,540,561,585,0,540,561,585,0,540,561,585,0,0,0,0,0,0,0,0,0,0,0,0,0,2662400,0,2813952,78112,290,0,0,0,0,0,296,297,0,2134016,300,301,0,0,0,0,0,0,2473984,2478080,0,0,0,0,0,0,0,0,0,2976,0,0,0,0,0,0,0,0,0,2134756,0,0,0,0,0,0,0,0,0,0,0,0,1,12290,3,0,0,0,188416,540,585,585,561,540,540,540,540,540,561,561,561,561,585,585,585,585,0,0,540,540,0,0,0,0,3176,0,0,0,0,0,0,0,0,540,540,540,540,540,540,540,2169,0,0,0,302,0,0,0,0,0,0,0,0,0,0,0,0,1,12290,3,78112,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,0,192971,0,1,12290,3,0,192971,192971,192971,0,0,192971,0,0,0,0,0,0,0,0,0,0,0,131072,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,322,0,0,0,0,192971,192971,192971,192971,192971,192971,192971,192971,192971,0,192971,192971,192971,192971,192971,0,0,0,0,0,0,0,0,0,0,2801664,0,0,0,0,2142208,299,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,674,78112,290,0,0,0,0,0,296,297,0,299,300,301,0,0,0,0,0,0,2797568,0,0,0,0,0,0,0,2850816,2867200,0,0,740,404,0,0,0,0,0,0,0,0,0,0,0,0,335,0,0,0,0,0,740,540,585,585,561,540,540,540,540,540,561,561,561,561,585,585,585,585,2029,0,2031,0,0,0,0,740,1184,0,0,0,0,1188,0,0,0,0,0,0,0,1583,0,1585,0,0,0,0,0,0,0,1661,1662,0,0,0,0,0,0,0,0,2727936,0,0,0,3084288,0,0,0,0,0,0,1577,0,0,0,0,0,0,0,0,0,0,0,0,351,352,353,354,0,0,0,1188,1670,0,0,0,0,0,0,0,0,0,0,0,0,1150976,0,0,0,0,0,0,561,561,585,585,585,585,1559,2029,0,0,0,0,1565,2031,0,0,0,0,0,2120,0,0,0,0,0,0,0,0,0,2130,2033,0,2035,0,0,0,0,0,0,0,0,0,0,0,0,0,336,337,338,561,561,2323,2648,0,0,0,0,585,585,585,585,585,585,585,585,585,585,585,2339,585,585,2342,0,304,0,304,0,0,0,0,0,0,0,0,0,304,0,0,0,0,0,2136,0,2138,0,0,0,0,0,0,0,0,791,817,0,817,812,0,0,0,0,0,0,204800,204800,0,204800,204800,204800,204800,204800,204800,204800,204800,204800,204800,204800,204800,204800,205104,204800,204800,205103,205104,204800,205103,205103,204800,204800,0,0,0,0,0,0,0,0,0,296,0,0,0,0,0,0,0,2183801,0,0,0,0,0,296,297,151552,2134016,300,301,0,212992,0,0,0,0,662,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3117056,0,0,0,0,0,0,0,0,2200253,0,0,0,0,0,0,2932736,2965504,0,0,3076096,0,0,2695168,3174400,2646016,0,914,2126737,2126737,2126737,2126737,2425745,2433937,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,0,0,987,2126810,2126810,2126810,2126810,2425818,2724753,2126737,2732945,2773905,2126737,2126737,2126737,2806673,2126737,2831249,2126737,2126737,2864017,2126737,2126737,2126737,2126737,2126737,2524049,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2601873,2126737,2126737,2921361,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3117969,2126737,2126737,2126737,2126737,2593681,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126810,2126810,2126810,2126810,3093393,0,0,0,0,3026944,2404352,2179072,2179072,2179072,2179072,3026944,2434010,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2626522,2126810,2126737,0,2179072,2126810,2126810,2126737,2457600,2179072,2179072,2179072,2179072,2458513,2126737,2126737,2126737,2126737,2126737,2626449,2126737,2126737,2126737,2126737,2126737,2126737,2700177,2126737,2716561,2126737,2806746,2126810,2831322,2126810,2126810,2864090,2126810,2126810,2126810,2126810,2921434,2126810,2126810,2126810,2126810,2126810,2126737,2179072,2126810,2126810,2126737,2179072,2179072,2179072,2179072,2126737,2126737,2126737,2458586,2126810,2126810,2126810,2126810,2183168,0,0,0,0,0,0,0,0,0,321,395,0,0,0,321,0,0,2126737,2126737,2126737,2409361,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3126161,2126737,2126737,2126737,2802577,2814865,2126737,2839441,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126810,2126810,2126810,2126810,2126810,2663386,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2802650,2814938,2126810,2839514,0,0,0,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2462609,2466705,2126737,0,2126810,2126810,2126810,2126810,2126810,0,0,0,0,0,0,0,0,0,297,0,0,0,0,0,0,2769809,2778001,2126737,2798481,2823057,2126737,2126737,2126737,2884497,2126737,2913169,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2655121,2679697,2761617,2765713,2786193,2855825,2970513,2126737,3007377,2126737,3134353,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3208081,2126737,0,0,0,0,0,325,0,69632,73728,0,0,0,0,0,65536,0,0,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2462682,2466778,2126810,2126810,2126810,2524122,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2601946,2126810,2126810,2126810,2585562,2126810,2126810,2126810,2126810,2126810,2618330,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2888666,2126810,2126810,2925530,2126810,2126810,2126810,2126810,2126810,2126810,2642906,2126810,2126810,2126810,2126810,2126810,2126810,2720730,2126810,2126810,2126810,2126810,2126810,2769882,2778074,2126810,2798554,2823130,2126810,2126810,2126810,2884570,2126810,2913242,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,3126234,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,3208154,2126810,2126737,2179072,2126810,2126810,2126737,0,0,0,2388881,2126737,2126737,2421649,2126737,2126737,2126737,2126737,2126737,2454417,2126737,2474897,2483089,2630545,2126737,2126737,2651025,2126737,2126737,2126737,2708369,2126737,2737041,2126737,2126737,2126737,2126737,2126737,2126737,2126737,985,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2552794,2126810,2126810,2126810,2126810,2126810,2126737,2126737,3072913,2126737,2126737,3122065,2126737,2126737,3142545,2126737,2126737,2126737,3171217,2126737,2126737,3191697,3195793,2126737,0,0,0,0,0,0,2388954,2126810,2126810,2421722,2126810,2126810,2126810,2126810,2126810,3040218,2126810,3064794,2126810,2126810,2126810,2126810,3101658,2126810,2126810,3134426,2126810,2454490,2126810,2474970,2483162,2126810,2126810,2126810,2126810,2126810,2126810,2532314,2126810,2126810,2126810,2126810,3036122,2126810,2126810,3072986,2126810,2126810,3122138,2126810,2126810,3142618,2126810,2126810,2126810,3171290,2126810,2126810,3191770,3195866,2126810,2126737,2179072,2126810,2126810,2126737,2179072,2179072,3112960,3219456,2126737,2126737,3113873,3220369,2126810,2126810,3113946,3220442,0,0,0,0,0,0,0,0,0,167936,167936,167936,167936,167936,167936,167936,2638737,2126737,2126737,2126737,2126737,2728849,2753425,2126737,2126737,2126737,2126737,2843537,2847633,2126737,2896785,2917265,2638810,2126810,2126810,2126810,2126810,2728922,2753498,2126810,2126810,2126810,2126810,2843610,2847706,2126810,2896858,2917338,2179072,3178496,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2495377,2126737,2126737,2515857,2126737,2126737,2126737,2126737,3011473,2126737,2126737,2126810,2126810,2503642,2126810,2126810,2126810,2126810,2126810,2126810,2126810,3138522,2126737,2940928,2941841,2941914,0,0,0,0,2126737,2544529,2548625,2126737,2126737,2597777,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2552721,2126737,2126737,2126737,2126737,2126737,2126737,2929553,2126737,2126737,2126737,2999185,2126737,2126737,2126737,2126737,3060625,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3040145,2126737,3064721,2126737,2126737,2126737,2126737,3101585,2126737,2126737,3179409,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2495450,2126810,2126810,2515930,2126810,2126810,0,0,0,0,0,0,2510848,2514944,0,0,2547712,2596864,0,0,0,0,0,2160,0,0,540,540,540,540,540,540,540,540,540,540,540,540,540,561,561,561,561,561,561,3525,561,2126810,2544602,2548698,2126810,2126810,2597850,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126737,0,2502656,0,0,3010560,2126810,2929626,2126810,2126810,2126810,2999258,2126810,2126810,2126810,2126810,3060698,2126810,2126810,2126810,2126810,2126810,2126810,3118042,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126737,2126810,3179482,2126737,2179072,2126810,2126737,2179072,2179072,2126737,2126737,2126810,2126810,2441216,0,0,0,0,0,326,0,0,0,0,0,0,0,0,0,0,403,0,0,0,0,0,3129344,2179072,2179072,3153920,3166208,3174400,2397073,2401169,2126737,2126737,2442129,2126737,2470801,2126737,2126737,2126737,2126737,2126737,2663313,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,0,0,2126810,2126810,2126810,2409434,2519953,2126737,2126737,2126737,2126737,2589585,2126737,2614161,2646929,2126737,2126737,2696081,2757521,2126737,2126737,2126737,2126737,2126737,3138449,2126810,2126810,2499546,2126810,2126810,2126810,2556890,2565082,2126810,2126810,2126737,2933649,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3130257,2126737,2126737,3154833,3167121,3175313,2397146,2401242,2126810,2126810,2442202,2126810,2470874,2126810,2126810,2126810,2520026,2126810,2126810,2126810,2126810,2589658,2126810,2126810,2126810,3011546,2126810,2126810,2126737,0,0,0,0,0,0,0,2592768,0,0,0,0,663,0,0,666,667,0,0,0,0,0,0,0,540,571,540,571,540,540,571,540,595,2614234,2647002,2126810,2126810,2696154,2757594,2126810,2126810,2126810,2126810,2933722,2126810,2126810,2126810,2126810,2126810,2126810,3224538,2126737,2179072,2417626,2126810,2126737,2179072,2179072,2126737,2126737,2854912,2969600,2179072,3006464,2179072,3018752,2179072,2179072,2179072,3149824,2126737,2429841,2438033,2126737,2487185,2126737,2126737,2945937,2126737,2126737,2995089,2126737,3003281,2126737,2126737,3023761,2126737,3068817,3085201,3097489,2126737,2126737,2888593,2126737,2126737,2925457,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3036049,2126737,3019665,2126737,2126737,2126737,3150737,2126810,2429914,2438106,2126810,2487258,2126810,2126810,2126810,2126810,2126810,2700250,2126810,2716634,2126810,2724826,2126810,2733018,2773978,2126810,2126810,2126810,2126810,3150810,2126737,2179072,3051520,2126737,3052433,2126810,3052506,0,2490368,2498560,0,0,0,0,0,0,679,0,0,0,0,0,0,0,0,0,0,0,2126810,2593754,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126737,2449408,0,2535424,3031040,0,0,0,0,0,2439,0,0,0,0,0,0,0,0,0,0,369,0,0,370,0,0,2126737,2450321,2126737,2536337,2126737,2610065,2126737,2859921,2126737,2126737,2126737,3031953,2126810,2450394,2126810,2536410,2126810,2610138,2126810,2859994,2126810,2126810,2126810,3032026,2126737,2527232,0,0,0,0,0,2179072,2126810,2126810,2126737,2179072,2179072,2179072,2179072,2179072,2126737,2126737,2126737,2126737,2126810,2126810,2126810,2126810,0,0,0,0,0,0,0,0,0,0,0,237568,0,0,0,0,2527232,2179072,2179072,2179072,2179072,2179072,2126737,2528145,2126737,2126737,2126737,2126737,2126737,2126810,2528218,2126810,2126810,2946010,2126810,2126810,2995162,2126810,3003354,2126810,2126810,3023834,2126810,3068890,3085274,3097562,2126810,2126810,2126810,2606042,2126810,2630618,2126810,2126810,2651098,2126810,2126810,2126810,2708442,2126810,2737114,2126810,2126810,2126810,2655194,2679770,2761690,2765786,2786266,2855898,2970586,2126810,3007450,2126810,3019738,2126810,2126810,0,2486272,0,0,0,0,0,2678784,2854912,3006464,0,3108864,3198976,0,2405265,2126737,2126737,2126737,2126737,3027857,2405338,2126810,2126810,2126810,2126810,3027930,2539520,0,2949120,0,0,0,0,695,0,0,0,0,362,362,362,0,0,704,0,0,0,0,709,0,0,0,0,0,0,0,0,0,0,0,2049,0,0,0,0,2179072,2658304,2973696,2179072,2126737,2659217,2974609,2126737,2126810,2659290,2974682,2126810,2711552,0,256e4,2179072,2179072,3125248,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2560913,2126737,2560986,2126810,0,2179072,2126737,2126810,0,2179072,2126737,2126810,0,2179072,2126737,2126810,2126810,3130330,2126810,2126810,3154906,3167194,3175386,2126737,2506752,2507738,2507665,2179072,2179072,2126737,2126737,2126737,2642833,2126737,2126737,2126737,2126737,2126737,2126737,2720657,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2585489,2126737,2126737,2126737,2126737,2126737,2618257,2126737,2985984,2985984,2986897,2986970,0,0,0,0,0,0,0,0,0,0,0,0,397,0,0,0,0,221184,221184,0,0,0,0,0,0,0,0,0,221184,221184,0,0,221184,221184,221184,0,0,0,0,0,0,221184,0,0,0,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,0,0,0,0,0,0,0,0,0,332,0,0,0,0,0,0,0,0,0,0,221184,221184,221184,221184,221184,221184,221184,221184,1,12290,3,0,0,0,0,0,253952,0,0,0,253952,0,0,0,0,0,0,0,0,0,0,0,0,687,688,0,0,0,0,0,98304,0,0,0,53248,0,0,0,0,0,2662400,0,2813952,297,0,300,0,0,0,300,0,301,0,0,0,301,0,0,0,301,69632,139679,0,0,0,0,0,65536,0,0,0,0,3133440,0,98304,0,0,0,0,0,0,0,0,0,0,0,2179072,2179072,2179072,2179072,2179072,300,0,301,0,0,0,2473984,2478080,0,0,0,0,0,0,0,0,0,176128,176128,176128,176128,176128,176128,176128,3121152,2179072,2179072,3141632,2179072,2179072,2179072,3170304,2179072,2179072,3190784,3194880,2179072,914,0,0,0,0,0,2451,0,0,0,0,0,0,0,0,0,0,301,301,0,0,0,0,0,914,0,2387968,2125824,2125824,2420736,2125824,2125824,2125824,2125824,2125824,2453504,2125824,2473984,2482176,2125824,2125824,2125824,2125824,2125824,2125824,2531328,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2605056,2125824,3194880,2125824,987,0,0,0,987,0,2387968,2125824,2125824,2420736,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2887680,2125824,2125824,2924544,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3035136,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,0,0,0,0,0,0,0,0,0,348,349,350,0,0,0,0,2125824,237568,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,358,0,0,0,0,0,358,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,0,0,0,0,0,0,0,0,0,362,0,0,0,0,0,0,0,2183168,0,0,0,0,0,296,297,0,2134016,300,301,0,0,217088,2125824,241664,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,362,0,0,0,0,131072,131072,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,0,0,0,0,0,0,0,0,0,362,0,0,0,0,155648,0,0,2183168,0,0,270336,0,0,296,297,0,2134016,300,301,200704,0,0,0,0,0,2462,0,0,0,0,0,0,0,0,0,0,1261,0,0,0,0,0,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,180224,0,0,0,0,0,0,0,1726,0,0,0,0,0,0,0,0,304,304,304,0,0,0,0,0,0,2748416,2879488,0,20480,0,0,0,0,0,0,0,0,2179072,2179072,2179072,2179072,2768896,2777088,2797568,2822144,2179072,2179072,2179072,2883584,2912256,2179072,2179072,2179072,2179072,2179072,2617344,2179072,2179072,2179072,2179072,2179072,2179072,2662400,2179072,2179072,2179072,2179072,2179072,3010560,2179072,2179072,2125824,2125824,2502656,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2584576,2125824,2125824,2125824,2125824,2125824,2617344,2125824,2125824,2125824,2125824,2125824,2125824,0,266240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2142208,0,0,0,266240,0,0,0,0,0,0,0,0,1,12290,2113823,0,0,0,0,0,0,293,0,0,0,293,0,0,245760,0,0,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3039232,2125824,3063808,2125824,2125824,2125824,2125824,3100672,2125824,2125824,3133440,2125824,245760,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,362,0,0,122880,122880,0,0,274432,274432,274432,274432,0,0,0,0,0,274432,0,274432,1,12290,3,0,0,0,0,725,0,0,0,0,0,0,0,0,0,0,0,1192,0,1195,0,0,78112,290,0,0,0,0,0,296,297,0,0,300,301,0,0,0,0,0,328,329,330,0,0,0,0,0,0,0,0,0,2200252,2200252,2200252,0,0,0,0,0,0,0,2033,0,0,0,0,0,2035,0,0,0,0,0,0,0,2055,0,2056,0,0,0,0,0,0,0,2067,0,0,0,0,0,0,0,0,1187,0,0,0,0,0,0,1104,2483,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,690,0,0,2993,0,0,0,0,0,0,0,0,0,0,0,0,0,383,335,0,0,0,0,1679,0,0,0,0,0,0,0,0,0,0,0,0,694,0,0,0,0,0,0,741,0,0,0,0,0,0,0,0,0,0,0,0,730,0,0,0,0,0,0,78456,290,0,0,0,0,0,296,297,0,0,300,301,0,0,0,0,0,344,0,0,0,0,0,0,0,0,0,0,1158,0,0,0,0,0,562,562,562,562,562,562,562,586,586,586,540,586,586,586,586,586,562,562,540,562,586,562,586,1,12290,3,78112,0,0,2771,0,0,0,0,0,0,0,0,0,0,0,0,0,514,521,521,1,12290,3,78113,290,0,0,0,0,0,0,0,0,0,0,0,301,0,0,0,0,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,1,12290,3,0,282624,282624,282624,0,0,282624,0,0,0,0,0,0,0,0,0,0,0,3178496,2670592,0,2744320,0,0,0,0,0,282624,282624,282624,282624,282624,282624,282624,282624,282624,0,282624,282624,282624,282624,282624,0,0,0,0,0,0,0,0,0,362,0,290,0,0,0,0,3176,0,0,2740224,0,0,0,0,0,2793472,0,0,0,0,0,0,0,2094,0,0,0,0,0,0,0,0,683,684,685,0,0,0,689,0,0,0,0,286720,286720,0,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,0,0,0,0,0,0,0,0,0,362,0,302,0,0,0,0,0,3043328,0,3149824,2936832,0,2760704,3301,0,0,0,0,2953216,0,0,2826240,2875392,0,0,0,3381,0,0,2834432,0,3227648,2568192,0,0,0,0,2564096,0,2748416,2879488,0,3381,0,0,0,0,0,0,0,0,2179072,2179072,2179072,2531328,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2605056,2179072,2629632,2179072,2179072,0,0,0,306,0,0,0,0,0,305,0,305,306,0,305,305,0,0,0,305,305,306,306,0,0,0,0,0,0,305,405,306,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,750,0,0,0,306,410,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,742,0,0,0,0,742,0,748,0,0,0,0,0,0,1192,0,0,0,0,0,0,0,0,0,0,462,462,462,488,488,462,488,488,488,488,488,488,488,513,488,488,488,488,488,488,488,488,488,488,488,488,488,533,488,488,488,488,488,541,563,541,563,541,541,563,541,587,563,563,563,563,563,563,563,587,587,587,541,613,613,613,613,613,587,563,563,541,563,587,563,587,1,12290,3,78112,0,0,645,0,0,648,649,0,0,0,0,0,0,0,0,0,362,0,253952,0,0,0,0,0,645,0,0,0,0,0,0,0,0,0,0,762,0,0,0,0,0,353,0,351,0,472,472,472,472,472,472,472,477,472,472,472,472,472,472,472,472,472,477,472,0,768,0,0,772,0,0,0,0,0,0,781,0,0,0,0,0,0,727,0,0,0,731,0,0,0,0,0,0,0,69632,73728,0,0,0,343,342,65536,341,0,788,0,0,0,0,792,0,0,0,0,0,0,0,796,0,0,0,0,0,0,0,0,0,0,0,0,782,0,0,0,0,736,0,796,0,0,0,0,648,0,0,0,0,0,0,820,0,0,648,0,0,0,0,0,837,792,0,0,0,0,0,841,842,792,792,0,0,0,0,792,736,792,0,540,540,851,855,540,540,540,540,1345,540,540,540,540,540,540,540,540,540,540,540,2181,540,540,540,540,561,561,561,921,925,561,561,561,561,561,561,951,561,956,561,963,561,966,561,561,980,561,561,0,585,585,585,994,998,585,585,585,585,585,585,1963,1964,1966,585,585,585,585,585,585,585,561,2713,585,2715,2716,540,540,540,540,585,585,585,1024,585,1029,585,1036,585,1039,585,585,1053,585,585,966,0,0,0,855,585,998,925,851,1065,894,540,540,921,1070,966,561,0,585,585,585,585,585,78112,0,0,0,0,0,0,0,0,0,114688,0,241664,258048,0,0,0,1093,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,766,0,0,1214,0,0,0,0,0,0,0,0,0,0,0,0,0,672,673,0,540,540,1342,540,540,540,540,540,540,540,540,540,540,540,540,540,0,0,0,585,585,585,1524,585,585,585,585,585,585,585,585,585,585,585,585,585,1517,585,585,585,1433,0,540,585,585,561,540,540,540,540,540,561,561,561,561,561,561,561,3070,561,561,561,561,561,561,585,585,585,585,585,585,0,0,0,3662,0,0,0,1641,0,0,0,0,0,0,0,0,0,0,0,0,1103,1104,1105,1106,1654,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,785,0,1693,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,306,0,1732,0,0,1733,0,0,0,0,540,540,540,540,540,540,540,3030,540,540,540,540,540,540,540,1745,540,540,540,540,540,540,540,540,540,1758,540,540,540,540,540,540,2540,540,540,540,540,540,540,540,540,540,540,1329,540,540,540,540,540,540,540,540,1795,540,540,1798,540,540,540,540,540,540,540,540,540,540,900,540,540,540,540,540,540,1810,540,540,540,540,540,1815,540,540,540,540,540,540,540,1360,914,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1416,561,1825,561,561,561,561,1831,561,561,561,561,561,1837,561,561,561,561,561,983,561,0,585,585,585,585,585,1002,585,1010,561,1892,561,561,561,561,561,561,561,561,561,561,1904,561,561,561,561,585,585,585,585,0,0,0,2726,0,0,2729,2730,561,561,1909,561,561,561,561,561,561,561,26027,1919,585,585,585,585,561,0,0,0,0,0,540,3649,540,540,540,540,540,540,561,561,561,561,561,561,561,3231,3232,561,1925,585,585,585,585,585,1931,585,585,585,585,585,585,585,585,585,561,0,0,0,0,0,3596,1944,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1540,561,561,2025,585,585,585,0,2029,0,0,0,0,0,2031,0,0,0,0,0,2487,0,0,0,0,0,0,0,0,0,0,0,122880,0,0,0,0,0,0,0,2041,0,0,0,0,0,0,0,0,0,0,0,0,1132,0,0,0,2075,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1135,0,2145,0,0,0,2143,0,0,2150,0,0,0,0,0,0,0,0,159744,0,0,0,0,0,0,0,0,1234,0,0,0,0,0,0,0,0,1584,0,0,0,0,0,0,0,0,1700,0,0,0,0,1705,0,0,540,540,2171,540,540,2174,540,540,540,540,540,540,2182,540,540,540,540,540,540,2568,540,540,540,540,2572,540,540,540,540,540,540,1347,540,540,540,540,540,540,540,540,540,540,2556,540,540,540,540,540,540,540,2201,540,540,540,540,540,540,540,540,540,540,540,540,540,0,0,2242,540,540,540,2214,540,540,540,540,540,540,540,540,540,540,540,540,540,1805,540,540,0,0,0,561,561,561,561,561,561,561,561,561,561,561,2254,561,0,585,585,585,585,585,78112,1079,0,0,0,0,0,0,0,0,2123,0,2125,2126,0,0,0,0,561,2257,561,561,561,561,561,561,2265,561,561,561,561,561,561,561,0,0,585,585,585,585,585,585,585,561,540,585,585,561,540,2952,561,2954,561,2299,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1438,561,2033,0,2035,0,0,2426,0,0,0,0,0,0,0,0,0,2434,0,0,0,2475,0,0,0,0,0,0,0,0,0,0,0,0,1193,0,0,0,0,2484,0,0,0,0,0,0,0,0,0,2493,0,0,0,0,0,0,756,0,0,0,0,0,0,763,0,0,0,0,0,561,561,561,561,561,561,561,561,2592,561,561,561,561,561,1408,561,561,1412,561,561,561,561,561,561,561,0,585,585,585,585,585,585,1008,585,2656,585,585,585,585,585,585,585,585,585,585,585,2664,585,585,585,585,585,585,2350,585,585,585,585,585,585,585,585,585,585,2379,585,585,585,585,585,585,585,585,2699,585,585,585,585,585,585,585,585,585,585,585,585,585,1940,585,585,2708,585,585,585,585,585,585,561,540,585,585,561,540,540,540,540,540,540,561,561,561,3229,561,561,561,561,561,561,585,585,585,3352,585,585,585,3355,585,585,2731,0,0,0,0,0,0,2736,0,0,0,0,0,0,0,0,0,192971,192971,192971,192971,192971,192971,192971,192971,0,0,0,2759,0,0,0,0,0,0,0,0,0,0,0,0,1234,540,540,540,0,0,0,2788,0,0,0,0,0,0,0,0,0,0,0,0,1238,0,0,0,540,540,540,2826,540,540,540,540,540,540,540,540,540,540,2833,540,540,540,540,1748,540,540,540,540,540,540,540,540,540,1760,540,540,540,540,1765,540,540,540,540,540,540,540,540,1772,540,540,540,540,561,3406,561,561,3408,561,561,561,561,561,561,561,0,585,585,585,585,585,585,1009,585,561,561,561,2860,561,561,2864,561,561,561,561,561,561,561,561,561,944,561,561,561,561,561,561,561,2873,561,561,561,561,561,561,561,561,561,561,561,2881,561,561,0,0,0,2649,0,1920,585,585,585,585,585,585,585,585,585,2703,585,585,585,585,585,585,585,585,585,2908,585,585,2912,585,585,585,585,585,585,585,585,585,585,2393,2394,585,585,585,585,585,2921,585,585,585,585,585,585,585,585,585,585,585,2929,585,585,0,0,0,3292,0,0,0,0,0,0,0,0,0,3297,2955,585,0,0,0,0,0,0,0,0,0,0,0,0,0,0,306,305,0,0,0,2970,0,0,0,0,0,0,0,0,0,0,0,0,1588,1589,0,0,540,540,540,540,3036,540,540,540,540,540,540,540,540,540,540,540,540,2546,540,540,540,561,561,561,3076,561,561,561,561,561,561,561,561,561,561,561,561,1436,561,561,561,585,585,585,3117,585,585,585,585,585,585,585,585,585,585,585,585,585,2356,585,2358,0,0,0,0,3176,3442,0,3444,0,0,0,0,0,540,3451,540,540,540,540,1796,540,540,540,540,540,540,540,540,540,540,540,905,540,540,540,540,3453,540,540,540,540,540,540,540,540,540,540,540,561,3466,561,3468,0,0,3501,0,0,0,0,0,0,540,540,540,540,3510,540,540,540,540,540,3204,3205,540,540,540,540,3209,3210,540,540,540,540,540,1749,1750,540,540,540,540,1757,540,540,540,540,540,540,1346,540,540,540,540,540,540,1356,540,540,307,308,309,0,0,0,0,0,0,0,0,0,0,0,0,0,734,0,0,0,0,418,0,0,0,0,0,449,0,0,0,0,0,0,0,0,286720,0,0,0,0,0,0,0,0,2490,0,0,0,0,0,0,0,0,2504,0,0,0,0,0,0,0,0,2517,0,0,0,0,0,0,0,0,2975,0,0,0,0,0,0,0,0,2999,0,0,0,0,0,0,0,0,3164,0,0,0,0,0,0,0,0,3173,0,0,0,0,0,0,0,0,3183,0,0,0,0,0,0,0,0,155648,0,0,0,0,0,0,0,0,0,0,0,449,449,418,449,449,449,449,449,449,449,449,449,449,449,449,532,449,532,532,532,449,532,532,532,532,449,542,564,542,564,542,542,564,542,588,564,564,564,564,564,564,564,588,588,588,542,588,588,588,588,588,564,564,616,621,588,621,627,1,12290,3,78112,0,1677,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1163,540,540,540,1811,540,540,540,540,540,540,540,540,540,540,540,1360,914,561,561,561,561,561,561,561,561,561,561,561,561,1377,561,0,585,585,585,585,585,78112,1079,0,0,1082,1086,0,0,1090,585,585,585,1993,585,585,585,585,585,1999,585,585,585,585,585,585,561,0,0,0,0,3551,0,3553,0,0,0,0,0,561,561,561,561,561,2589,561,561,561,561,2593,561,561,0,2648,0,0,0,0,585,585,585,585,585,585,585,585,585,2338,585,585,585,585,585,585,585,2657,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1971,585,585,585,2709,585,585,585,585,561,540,585,585,561,540,540,540,540,540,540,561,561,3228,561,561,561,561,561,561,561,0,0,585,2900,585,585,585,585,585,540,3514,540,3516,540,540,3518,540,561,561,561,561,561,561,561,561,1396,1398,561,561,561,561,561,561,3527,561,3529,561,561,3531,561,585,585,585,585,585,585,585,585,3540,585,3542,585,585,3544,585,561,0,0,0,0,0,0,0,0,0,362,362,362,0,0,0,147456,0,0,0,310,311,312,313,314,315,316,317,318,319,0,0,0,0,0,373,0,0,0,0,365,0,382,0,348,0,0,310,0,0,0,0,0,0,0,0,0,0,0,0,0,0,328,0,0,0,313,0,0,0,0,0,0,0,0,0,0,0,0,0,764,0,0,420,428,419,428,0,310,428,441,450,463,463,463,463,463,463,463,463,463,463,463,463,463,463,463,463,463,463,484,489,489,500,489,489,489,489,489,489,489,489,515,515,528,528,529,529,529,529,529,529,529,529,529,529,515,529,529,529,529,529,543,565,543,565,543,543,565,543,589,565,565,565,565,565,565,565,589,589,589,612,589,589,589,589,589,614,615,615,612,615,614,615,614,1,12290,3,78112,0,702,0,0,0,0,0,702,0,0,0,540,540,540,540,540,3028,540,540,540,540,540,540,540,561,967,561,561,561,561,561,0,585,585,585,585,585,585,585,585,2337,585,585,585,585,2341,585,0,1108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,540,3200,0,1150,1108,0,0,0,0,0,0,0,0,0,0,0,0,0,1102,0,0,0,1228,0,0,0,0,0,0,0,0,0,0,0,0,0,1240,0,0,540,540,1276,1278,540,540,540,540,540,540,540,540,1292,540,1297,540,540,1301,540,540,540,540,1812,540,540,540,540,540,540,540,540,540,1823,1360,914,561,561,561,561,561,561,561,561,561,561,561,561,1378,561,0,585,585,585,585,585,78112,1079,0,0,1083,1087,0,0,1091,540,1304,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1302,540,1360,914,561,561,1364,561,1367,561,561,561,561,561,561,561,561,1381,561,1386,561,561,1390,561,561,1393,561,561,561,561,561,561,561,561,1431,561,561,1435,561,561,561,561,1484,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1942,540,1793,1794,540,540,540,540,540,540,540,540,540,540,540,540,540,0,2584,0,585,585,1946,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2005,585,585,585,1959,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2357,585,2102,0,0,0,0,1670,0,0,0,0,0,0,0,0,0,0,328,379,381,0,0,0,0,0,2133,0,0,0,0,0,0,0,0,0,0,0,0,0,1119,0,0,2033,0,2035,0,0,0,0,0,0,2428,0,0,0,0,0,0,0,2122,0,0,0,0,0,0,0,0,0,122880,0,122880,122880,122880,122880,122880,0,0,2474,0,0,0,0,0,0,0,0,0,0,0,0,0,1133,0,0,0,0,0,0,2760,0,0,0,0,0,0,0,0,0,0,0,380,0,0,0,384,0,0,2799,0,0,0,0,0,0,0,2803,540,540,540,540,540,540,540,1326,540,540,540,540,540,540,540,1339,585,2956,0,0,0,0,0,2962,0,0,0,0,0,0,0,2966,0,0,0,3008,0,0,0,0,0,0,0,0,3017,0,0,0,0,0,383,0,69632,73728,0,0,0,0,0,65536,0,3048,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1320,3089,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1858,3130,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1957,540,3225,540,540,540,540,561,561,561,561,561,561,561,561,561,561,561,3414,585,585,585,3281,585,585,585,585,561,540,585,561,540,540,561,561,585,585,0,0,0,3157,3513,540,540,540,540,540,540,540,561,3521,561,3522,561,561,561,3526,540,540,540,3664,561,561,561,3666,585,585,585,3668,0,0,540,540,540,3560,540,540,540,540,540,540,540,540,3568,561,321,321,371,0,0,0,0,0,0,0,0,0,0,0,0,0,1161,0,0,0,0,371,0,430,436,0,442,451,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,490,490,501,490,490,490,490,490,490,490,490,516,516,516,516,516,516,516,516,516,516,516,516,516,516,516,516,544,566,544,566,544,544,566,544,590,566,566,566,566,566,566,566,590,590,590,544,590,590,590,590,590,566,566,544,566,590,566,590,1,12290,3,78112,540,540,540,874,540,540,540,540,540,540,540,540,540,540,540,540,540,1822,540,1360,585,1017,585,585,585,585,585,585,585,585,585,585,585,585,585,561,540,585,585,561,540,540,540,540,561,561,1122,0,1124,1125,0,0,0,1127,1128,0,0,0,0,0,0,0,0,1159168,0,1159168,0,0,0,0,1159168,0,0,1166,1167,0,0,0,0,0,0,0,0,0,0,0,0,1634,0,0,0,1113,0,1253,0,0,0,0,0,1128,0,0,0,0,0,1236,0,0,0,0,773,774,0,0,778,779,0,675,0,0,0,0,0,0,1598,0,0,0,0,0,0,0,0,1605,0,0,1268,1127,0,0,0,0,0,0,0,0,0,540,540,1277,540,540,540,1323,540,540,1325,540,540,1328,540,540,540,540,540,540,540,540,2554,540,540,540,540,540,540,2560,1360,914,561,561,1365,561,561,561,561,561,561,561,561,561,561,561,1400,561,561,561,561,561,561,1404,561,561,561,561,561,561,561,1413,561,561,1415,561,561,0,2648,0,0,0,0,585,585,585,585,585,585,585,2655,561,1419,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1874,561,561,561,1443,561,561,561,561,561,26027,1360,987,585,585,1456,585,585,0,0,3291,0,0,0,0,0,0,0,0,0,0,0,1262,0,0,0,1266,585,585,585,1504,585,585,1506,585,585,585,1510,585,585,585,585,585,561,540,585,585,561,540,540,540,2020,561,561,0,0,0,1657,0,0,0,0,0,0,0,0,0,0,0,0,1675,0,0,0,585,1991,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2695,561,2024,585,585,585,2028,0,2029,0,0,0,0,0,2031,0,0,0,0,0,2502,0,0,0,0,0,0,0,0,0,0,1586,1587,0,0,0,0,0,0,0,2033,0,0,0,0,0,2035,0,0,0,0,0,2038,0,0,2077,0,0,0,0,0,0,0,0,0,0,0,0,0,1177,0,0,0,0,0,0,2091,0,0,0,0,0,0,0,0,0,0,0,540,540,540,2807,540,0,0,0,561,561,561,561,561,561,561,561,2252,561,561,561,561,561,1447,561,561,26027,1360,987,585,585,585,585,585,561,540,585,585,561,2017,540,540,540,2021,561,2256,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1875,2272,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1890,561,561,561,2314,561,2316,561,561,561,561,561,561,561,0,0,0,0,0,0,585,585,585,585,585,585,585,585,585,585,585,585,2340,585,585,585,2399,585,2401,585,585,585,585,585,585,585,561,540,585,585,561,540,540,561,561,540,540,2564,540,540,540,540,540,540,540,540,540,540,540,540,540,540,3212,540,0,0,0,561,561,561,561,2588,561,561,561,561,561,561,561,561,1916,561,26027,0,585,585,585,585,0,2757,0,0,0,0,0,0,0,0,0,0,0,0,0,0,735,0,2834,540,540,540,540,540,540,540,2840,540,540,540,540,540,540,540,540,540,2571,540,540,540,540,540,540,2882,561,561,561,561,561,561,561,2888,561,561,561,561,561,561,561,0,0,585,585,585,2902,585,585,585,2930,585,585,585,585,585,585,585,2936,585,585,585,585,585,585,585,561,540,2714,585,561,540,540,540,540,540,540,3226,540,540,540,561,561,561,561,561,561,561,561,561,561,561,561,561,3074,585,585,585,585,3282,585,585,585,561,540,585,561,540,540,561,561,585,585,0,0,3156,0,585,585,3369,540,540,561,561,585,585,0,0,0,0,0,0,0,0,2617344,0,0,0,0,0,2789376,0,0,0,0,0,3176,0,0,0,3445,0,0,0,0,540,540,540,540,3027,540,540,540,540,3031,540,540,540,540,540,540,3456,540,540,540,540,540,540,540,540,561,561,561,561,561,3524,561,561,561,561,3471,561,561,561,561,561,561,561,561,585,585,585,585,585,585,585,585,585,585,585,3486,585,585,585,585,585,585,585,585,561,0,0,0,0,0,3626,540,540,540,3515,540,540,540,540,540,561,561,561,561,561,561,561,561,561,561,3413,561,561,3528,561,561,561,561,561,585,585,585,585,585,585,585,585,585,585,3113,585,585,585,3541,585,585,585,585,585,561,0,0,0,0,0,0,0,0,0,362,362,208896,0,0,0,0,323,324,325,0,0,0,0,0,0,0,0,0,0,0,0,0,1194,1196,0,0,0,0,322,370,325,369,0,0,0,0,0,0,0,0,0,364,0,0,0,0,0,0,322,0,0,369,369,399,0,325,0,0,0,0,0,0,0,0,0,233472,0,0,0,0,0,0,0,0,0,324,0,0,0,322,452,465,465,465,465,465,465,465,478,465,465,465,465,465,465,465,465,465,465,465,491,491,465,491,491,506,508,491,491,506,491,517,517,517,517,517,517,517,517,517,517,517,517,517,534,517,517,517,517,517,545,567,545,567,545,545,567,545,591,567,567,567,567,567,567,567,591,591,591,545,591,591,591,591,591,567,567,545,567,591,567,591,1,12290,3,78112,659,0,0,0,0,0,0,0,0,0,0,670,671,0,0,0,0,0,439,0,0,0,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,557,580,557,580,557,557,580,557,604,0,0,707,708,0,0,0,0,0,714,0,0,0,718,0,720,0,769,770,0,0,0,0,0,0,0,0,0,0,0,0,0,1209,0,0,787,0,789,0,0,0,0,0,0,0,0,0,0,0,0,0,1224,0,0,0,801,0,806,0,809,0,0,0,0,806,809,0,0,0,809,0,707,0,0,826,0,0,0,0,0,826,826,829,809,806,0,0,0,0,0,0,0,789,0,801,0,818,0,0,0,0,0,2745,0,0,0,0,0,0,0,0,0,0,811,540,540,854,540,540,0,0,0,789,0,0,0,0,0,838,0,0,0,0,0,0,0,2142,540,540,540,540,540,540,540,540,540,540,2819,540,540,540,540,540,0,0,0,787,0,0,0,838,818,838,0,540,540,852,540,858,540,540,871,540,881,540,886,540,540,893,896,901,540,909,540,540,540,540,540,3215,540,540,540,540,540,540,540,540,540,540,895,540,540,540,540,540,561,561,561,922,561,928,561,561,941,561,561,952,561,957,561,561,0,2648,0,0,0,0,585,585,585,585,585,2653,585,585,0,0,2959,0,0,0,0,0,0,0,0,0,2965,0,965,968,973,561,981,561,561,0,585,585,585,995,585,1001,585,585,0,2958,0,0,0,0,0,0,0,0,0,0,0,0,131072,131072,0,0,1014,585,585,1025,585,1030,585,585,1038,1041,1046,585,1054,585,585,968,0,0,0,540,585,585,561,852,540,1066,901,540,922,561,1071,973,0,0,0,1110,0,0,0,0,0,0,0,1117,0,0,0,0,0,0,775,0,0,0,0,0,0,0,0,0,1205,0,0,0,0,0,0,0,1137,1138,0,0,0,0,1142,0,0,0,362,362,0,0,0,0,0,664,0,0,0,0,0,0,0,0,0,0,1206,0,0,0,0,0,0,1165,0,0,0,0,0,0,0,0,0,0,0,0,0,0,784,0,0,0,1182,741,0,0,0,1134,0,0,0,0,0,0,0,0,0,245760,0,0,0,0,0,0,1303,540,540,540,540,540,540,540,540,540,540,540,540,540,1318,540,540,540,540,2173,540,540,540,540,540,540,540,540,540,540,540,540,2558,540,540,540,1360,914,561,561,561,561,561,561,561,561,561,1372,561,561,561,561,561,1850,561,561,561,561,561,561,561,561,561,561,1902,1903,561,561,561,561,561,561,1387,561,561,561,1392,561,561,561,561,561,561,561,561,561,1432,561,561,561,561,561,1439,561,561,561,1421,561,561,561,561,561,561,561,561,561,561,1437,561,0,585,585,585,1049,585,78112,1079,0,0,0,0,0,0,0,836,0,0,0,0,0,0,811,0,585,585,585,585,1463,585,585,585,585,585,585,1478,585,585,585,1483,0,0,1608,1609,1610,0,1612,1613,0,0,0,0,1618,0,0,0,0,0,679,751,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2144,0,0,1640,0,0,1643,0,1645,0,0,0,0,0,1651,1652,0,0,0,0,785,0,0,0,0,0,0,540,846,540,540,540,540,540,540,3216,540,540,540,540,540,3221,540,3223,540,0,1668,0,0,1670,0,0,0,0,1672,1673,0,0,0,0,0,0,0,69632,73728,0,0,0,347,345,65536,0,1692,0,0,0,0,0,1698,1699,0,1701,1702,1703,0,0,0,0,0,0,810,811,0,0,0,0,811,0,0,0,1719,0,0,0,1723,1724,0,0,0,0,0,0,0,0,0,0,346,0,0,0,0,0,0,0,1715,0,0,0,1735,1585,1585,1737,540,1739,540,1740,540,1742,540,540,540,1746,540,540,540,540,540,540,540,540,540,1759,540,540,540,540,540,3318,540,540,540,540,540,540,540,540,540,540,540,2557,540,540,540,540,540,540,1763,540,540,540,540,1767,540,1769,540,540,540,540,540,540,540,540,2570,540,540,540,540,540,540,540,540,540,3041,540,540,540,540,540,540,540,540,1777,1778,1780,540,540,540,540,540,540,1787,1788,540,540,1791,1792,540,540,540,540,540,540,540,1800,540,540,540,1804,540,540,540,540,540,540,2829,540,540,540,540,540,540,540,540,540,540,1770,540,540,540,540,540,0,1828,561,1830,561,561,1832,561,1834,561,561,561,1838,561,561,561,561,585,585,585,585,0,0,2725,0,0,0,0,0,0,0,69632,73728,0,135168,135168,0,0,65536,135168,1859,561,1861,561,561,561,561,561,561,561,561,1869,1870,1872,561,561,0,2648,0,0,0,0,585,585,585,585,2652,585,585,585,585,585,585,2390,585,585,585,585,585,585,585,585,585,585,3124,585,585,585,585,585,561,561,561,1894,561,561,561,1898,561,561,561,561,561,561,561,1906,585,1926,585,1928,585,585,585,1932,585,585,585,585,585,585,585,585,561,540,585,561,540,540,561,561,585,585,0,0,0,0,585,1945,585,585,585,585,1949,585,585,585,585,1953,585,1955,585,585,561,3146,3147,3148,540,540,561,561,585,585,0,0,0,0,0,0,2488,0,0,0,0,0,0,0,0,0,2096,0,0,0,0,0,0,1974,1975,1976,585,585,1979,1980,585,585,585,585,585,585,585,1988,585,561,0,1288,585,1468,1377,540,540,540,1549,540,561,561,561,1553,585,585,1992,585,585,585,585,585,585,585,2e3,585,585,585,585,585,561,561,540,561,585,561,585,1,12290,3,78112,585,585,585,585,2011,561,540,2014,585,561,1792,540,2019,540,1886,561,0,585,585,1040,585,585,78112,1079,0,0,0,0,0,0,0,0,1134592,0,0,1134592,0,0,0,0,2023,561,1980,585,2027,585,0,2029,0,0,0,0,0,2031,0,0,0,0,0,2761,0,0,0,0,0,0,0,0,0,0,661,0,0,0,0,0,0,2089,0,0,0,0,2093,0,0,0,0,0,0,0,0,0,377,0,0,0,0,0,0,0,0,0,0,2119,0,2121,0,0,0,0,0,0,0,2129,0,0,0,0,786,0,805,0,0,0,0,540,849,540,540,540,540,540,2216,540,540,540,540,540,540,2221,540,540,540,540,540,540,3633,561,561,561,561,561,561,3639,585,585,0,0,0,2134,0,0,0,0,2139,0,0,0,0,0,0,0,0,2990080,2179072,2179072,2502656,2179072,2179072,2179072,2179072,540,2187,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1337,540,2211,2212,540,540,540,540,540,540,2219,540,540,540,540,540,540,540,540,540,2582,540,540,540,0,0,0,561,561,2258,561,2260,561,561,561,561,561,561,2268,561,2270,561,561,561,561,1426,561,561,561,561,561,561,561,561,561,561,561,3343,561,561,561,561,3344,3345,561,561,2343,585,2345,585,585,585,585,585,585,2353,585,2355,585,585,585,585,561,0,0,0,3648,0,540,540,540,540,3652,540,585,585,585,585,2389,585,585,585,585,585,585,585,585,585,585,585,585,2705,585,585,585,585,585,585,585,2402,585,585,2405,2406,585,585,561,2177,585,2345,2260,540,2414,540,540,561,2418,561,561,585,2422,585,585,2029,0,2031,0,0,0,0,795,663,844,0,0,0,0,540,848,540,540,540,540,540,1283,540,540,540,540,540,540,1298,540,540,540,540,540,540,2580,540,540,540,540,540,540,0,2584,0,0,0,2450,0,0,0,0,0,0,0,0,0,0,0,0,0,1239,0,0,0,2459,0,0,0,0,0,2464,0,2466,2467,0,0,0,0,0,0,0,69632,73728,0,0,0,371,0,65536,0,0,2498,0,0,0,0,0,0,0,2505,0,0,0,0,0,0,0,2479,0,0,0,2481,0,0,0,0,2561,540,540,540,2566,540,540,540,540,540,540,540,2573,540,540,540,540,540,540,2838,540,540,540,540,540,540,540,540,540,540,1296,540,540,540,540,540,0,0,0,561,561,561,561,561,561,561,2591,561,561,561,561,561,561,2640,561,561,561,2643,561,561,561,561,561,561,2886,561,561,561,561,561,561,561,561,561,1867,561,561,561,561,561,561,2621,561,561,561,561,2625,561,561,561,2630,561,561,561,561,561,561,585,585,585,585,585,585,0,3661,0,0,561,2637,561,561,561,561,561,561,561,2642,561,561,561,561,561,561,585,585,585,585,585,585,585,585,585,3427,585,2669,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3267,2797,2798,0,0,0,0,0,0,0,0,0,540,540,540,540,540,1741,540,0,0,2982,2983,0,2984,0,2986,0,0,0,0,2988,0,0,0,0,0,680,681,0,0,0,0,0,0,0,0,0,2047,0,0,0,0,0,0,0,0,3007,0,0,2988,0,0,3013,3014,0,3016,0,0,3019,0,0,0,0,800,0,0,0,0,0,0,0,0,0,0,0,0,800,0,0,0,0,3022,540,540,540,540,540,540,3029,540,540,540,540,540,3033,3062,540,561,561,561,561,561,561,3069,561,561,561,561,561,3073,561,0,585,585,1042,585,585,288,1079,0,0,1082,1086,0,0,1090,3103,561,585,585,585,585,585,585,3110,585,585,585,585,585,3114,585,561,0,1543,585,1545,1546,540,540,1548,540,540,561,561,1552,561,0,585,585,1044,585,585,78112,1079,0,0,0,0,0,0,0,794,0,0,0,0,0,0,0,798,3144,585,561,540,585,561,540,3150,561,3152,585,3154,0,0,0,0,0,0,825,0,819,0,664,0,0,0,0,0,0,0,69632,73728,221184,0,0,0,0,65536,0,0,0,3160,0,0,3163,0,0,0,0,0,0,0,0,0,0,396,0,0,0,0,0,0,0,0,0,3170,0,0,0,0,0,0,0,0,0,0,0,540,540,2806,540,540,540,3202,540,540,540,540,540,540,540,3207,540,540,540,540,540,540,540,540,3040,540,540,540,540,540,540,540,540,540,3322,540,540,540,540,540,540,561,3234,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1889,561,3245,561,561,561,561,561,561,561,561,561,561,561,561,561,561,585,585,585,585,585,585,585,3257,585,585,585,585,585,585,585,3262,585,585,585,585,585,561,2013,585,2015,2016,540,2018,540,540,561,2022,561,561,561,3349,561,561,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2667,0,3378,3379,0,3176,0,3383,0,0,0,0,0,0,0,0,0,384,0,0,0,0,0,384,0,0,0,3441,3176,0,0,0,0,0,0,0,0,540,540,540,540,540,2167,540,540,0,0,0,0,3503,0,0,0,0,540,540,540,540,540,540,3512,0,0,3557,3558,3559,540,540,540,3562,540,3564,540,540,540,540,3569,3570,3571,561,561,561,3574,561,3576,561,561,561,561,3581,3582,3583,585,561,1203,540,585,585,561,540,540,540,540,540,561,561,561,561,585,585,585,585,0,0,0,0,0,0,0,0,0,0,585,585,3586,585,3588,585,585,585,585,3593,0,0,0,0,0,0,0,2747,2748,2749,0,0,0,0,0,0,0,2763,0,0,0,0,0,0,0,0,0,254413,254413,254413,254413,254413,254413,254413,254413,1,12290,0,0,540,3628,540,540,540,3632,561,561,3634,561,561,561,3638,585,585,3640,585,585,585,3644,561,0,0,0,0,0,540,540,540,540,540,540,540,3563,540,3565,540,540,540,561,0,0,0,326,327,0,0,0,0,0,0,0,0,0,0,0,674,0,0,0,0,0,366,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1120,0,0,0,0,366,0,0,0,374,376,0,0,0,0,0,0,0,344,0,402,0,0,0,0,0,402,0,0,409,0,0,0,409,69632,73728,0,366,366,0,421,65536,366,0,0,366,421,498,502,498,498,507,498,498,498,507,498,421,421,327,421,0,0,421,0,421,0,0,0,0,0,0,0,372,0,0,0,0,0,0,0,0,0,0,0,421,421,421,421,421,421,421,421,421,421,421,421,421,421,421,421,546,568,546,568,546,546,568,546,592,568,568,568,568,568,568,568,592,592,592,546,592,592,592,592,592,568,568,546,568,592,568,592,1,12290,3,78112,0,0,677,0,0,0,0,0,0,0,0,0,0,0,0,0,1248,0,0,540,540,540,875,540,540,540,540,540,540,540,540,540,540,540,540,540,2183,540,540,561,561,915,561,561,561,561,561,561,945,561,561,561,561,561,561,585,3421,585,585,3423,585,585,585,585,585,585,1018,585,585,585,585,585,585,585,585,585,585,585,585,585,561,0,0,0,0,0,0,540,0,0,0,540,988,585,561,540,540,540,540,540,561,561,561,561,561,3068,561,561,561,561,561,561,561,561,932,561,561,946,561,561,561,561,561,561,934,561,561,561,561,561,561,561,561,561,3240,561,561,561,561,561,561,0,0,1109,0,0,0,0,0,0,0,0,0,0,0,0,0,1604,0,0,0,0,1229,0,1109,0,0,0,0,0,0,0,0,0,0,0,686,0,0,0,0,540,540,540,1281,540,540,540,540,540,1293,540,540,540,540,540,540,540,540,3054,3056,540,540,540,3059,540,3061,1360,914,561,561,561,561,561,561,561,1370,561,561,561,561,561,1382,585,585,1461,585,585,585,585,585,1473,585,585,585,585,585,585,585,585,2914,585,585,585,585,585,585,585,585,3122,585,585,585,585,585,585,585,585,3136,3138,585,585,585,3141,585,3143,0,1720,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1134,0,1990,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1972,585,585,585,2373,585,585,585,585,585,585,585,585,585,585,585,585,585,2370,585,585,585,585,2698,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2383,585,0,0,0,3161,0,0,0,0,0,0,0,0,0,0,0,0,1688,0,0,0,561,561,3235,561,561,561,561,561,561,561,561,561,561,561,561,561,0,2325,0,3663,540,540,540,3665,561,561,561,3667,585,585,585,0,0,540,540,540,2526,540,540,540,540,540,540,540,540,540,540,540,540,3058,540,540,540,422,422,0,422,431,0,422,0,422,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,492,492,466,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,547,569,547,569,547,547,569,547,593,569,569,569,569,569,569,569,593,593,593,547,593,593,593,593,593,569,569,547,569,593,569,593,1,12290,3,78112,0,0,0,0,2159,0,0,0,540,540,540,540,540,540,540,540,540,540,3032,540,540,540,540,540,2202,540,540,540,540,540,540,540,540,540,540,540,540,540,2208,540,540,2413,540,540,540,2417,561,561,561,2421,585,585,585,0,0,0,0,3293,0,0,0,0,0,3296,0,0,0,2458,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1250,2967,0,0,0,2971,0,0,0,0,0,2977,0,0,0,0,0,0,0,69632,73728,0,0,0,418,0,65536,0,0,2992,0,0,2995,0,0,0,0,0,3e3,0,0,0,0,0,0,0,69632,73728,0,367,367,0,0,65536,367,0,0,0,3023,540,540,540,540,540,540,540,540,540,540,540,540,540,2222,540,540,540,540,3049,540,540,540,540,540,540,540,540,3057,540,540,3060,540,540,540,540,2189,540,540,540,540,540,540,540,540,540,540,540,540,2583,0,0,0,540,540,3063,561,561,561,561,561,561,561,561,561,561,561,561,561,0,2326,0,561,561,3090,561,561,561,561,561,561,561,561,3098,561,561,3101,561,0,585,585,1045,585,585,78112,1079,0,0,0,0,0,0,0,1102,1101,0,0,0,0,0,0,0,0,0,0,0,0,540,1275,540,561,561,3104,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2666,585,585,585,3131,585,585,585,585,585,585,585,585,3139,585,585,3142,585,585,585,585,585,1930,585,585,585,585,585,585,585,585,1941,585,585,585,585,585,1948,585,585,585,585,585,585,585,585,585,585,585,3263,585,585,585,585,0,0,0,0,3179,0,0,0,0,0,0,0,0,0,0,0,732,0,0,0,0,0,0,3192,0,0,0,0,0,0,0,0,0,0,0,540,540,540,540,2808,3201,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1359,540,3213,540,540,540,540,540,540,540,3218,540,3220,540,540,540,540,540,540,561,3227,561,561,561,3230,561,561,561,561,561,982,561,0,585,585,585,585,999,585,585,585,561,561,3246,561,3248,561,561,561,561,561,561,561,561,561,561,585,585,585,585,585,3537,585,585,585,585,3256,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3278,585,585,3268,585,585,585,585,585,585,585,585,3274,585,3276,585,585,561,3370,540,3371,561,3372,585,0,0,0,0,0,0,0,785,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1179,540,540,3328,540,540,540,540,540,540,540,561,561,561,561,561,561,561,561,561,3233,561,561,561,561,3340,561,561,561,561,561,561,561,561,561,3346,561,0,994,1075,1039,585,585,78112,1079,0,0,1081,1085,0,0,1089,3358,585,585,585,585,585,585,585,585,585,3364,585,585,585,585,585,585,585,1981,1982,585,585,585,585,585,585,585,561,540,585,585,561,2951,540,2953,561,561,561,3654,3655,561,561,585,585,3658,3659,585,585,0,0,0,0,0,0,1126,0,0,0,1130,1131,0,0,0,0,0,0,1141,0,1143,0,0,362,362,0,0,0,691,0,0,0,0,696,0,0,0,362,362,362,0,0,0,0,0,0,1154,0,0,0,0,0,1160,0,1162,0,758,0,0,0,0,0,0,758,0,0,0,0,0,758,758,0,0,0,0,803,0,0,0,0,0,0,0,0,0,0,0,0,0,0,832,0,0,0,0,0,0,0,0,0,758,0,0,0,0,0,0,0,0,0,0,0,856,585,999,926,540,540,540,540,910,561,561,561,561,561,1880,1881,1882,561,561,1885,1886,561,561,561,561,561,1896,561,561,561,561,561,561,561,561,561,561,2603,561,2605,561,561,561,982,0,585,585,585,585,1055,78112,1079,0,0,0,0,0,0,0,375,0,378,0,0,0,378,0,0,0,0,1709,0,0,0,0,0,0,0,0,0,0,0,0,0,1619,0,0,585,585,585,2010,585,561,540,585,585,561,540,540,540,540,561,561,561,3066,561,561,561,561,561,561,561,561,561,561,2600,561,561,561,561,561,561,561,561,0,0,987,585,585,585,585,585,0,2039,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1178,0,540,540,540,2172,540,540,540,540,540,540,540,540,540,540,540,540,540,2238,2584,0,0,0,0,561,561,561,561,561,561,561,561,561,561,561,561,2255,0,0,0,0,2461,0,0,0,0,0,0,0,0,0,0,0,747,0,0,0,0,3288,585,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1184,1184,561,561,561,561,3350,561,585,585,585,585,585,585,585,585,585,585,585,2939,585,585,585,585,3368,585,561,540,540,561,561,585,585,0,0,0,0,0,0,0,394,0,0,0,0,0,394,0,0,467,467,485,493,493,485,493,493,493,493,493,493,493,493,518,526,526,526,526,526,526,526,526,526,526,526,526,526,535,526,526,526,526,526,548,570,548,570,548,548,570,548,594,570,570,570,570,570,570,570,594,594,594,548,594,594,594,594,594,570,570,548,570,594,570,594,1,12290,3,78112,767,0,0,771,0,0,0,0,0,0,0,0,0,0,0,0,1704,0,0,0,821,0,0,0,798,0,0,821,0,0,0,0,0,821,821,0,0,0,0,805,0,0,786,0,0,0,0,805,0,0,0,0,0,0,0,805,0,0,0,0,0,798,0,0,0,0,0,0,839,794,0,0,839,0,0,0,0,808,0,0,692,0,0,672,0,692,0,813,675,676,0,0,0,0,0,682,0,0,0,0,0,0,0,0,340,0,0,0,0,0,0,0,540,867,540,540,540,540,540,540,540,540,540,540,540,540,911,540,540,540,540,2215,540,540,540,540,540,540,540,540,540,540,540,1756,540,540,540,540,983,0,585,585,585,1077,1056,78112,1079,0,0,0,0,0,0,0,412,412,0,0,0,0,0,412,0,1180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1621,0,0,1241,0,0,0,0,0,0,0,0,1246,0,0,0,0,0,0,1170,0,0,0,0,0,0,0,0,0,816,0,0,0,0,0,0,540,1305,540,540,540,540,540,540,540,1313,540,540,540,540,540,540,540,540,3332,540,561,561,561,561,561,561,935,561,561,561,561,561,561,561,561,561,3094,561,3096,561,561,561,561,561,561,1340,540,540,1344,540,540,540,540,540,1350,540,540,540,1357,540,540,540,540,540,3458,540,3460,3461,540,3463,540,561,561,561,561,561,2262,561,561,561,561,561,561,561,561,561,561,1399,561,561,561,561,561,1360,914,561,561,561,561,561,561,561,561,561,561,561,1375,561,561,561,561,1848,561,561,561,561,561,561,561,561,561,561,561,2868,561,561,561,561,561,1441,561,561,561,1448,561,561,26027,1360,987,585,585,585,585,585,585,585,1998,585,585,585,585,585,2003,585,585,1485,585,585,585,585,585,585,585,1493,585,585,585,585,585,585,585,585,3261,585,585,585,585,585,585,585,585,3272,585,585,585,585,585,585,585,585,3283,540,585,561,540,540,561,561,585,1522,585,585,1526,585,585,585,585,585,1532,585,585,585,1539,585,585,585,585,585,1996,1997,585,585,585,585,585,585,585,585,585,1531,585,585,585,585,585,585,0,0,0,1595,0,0,0,0,0,0,0,0,0,0,0,0,1716,0,0,0,0,0,1656,0,0,0,0,0,0,0,0,0,1665,0,0,0,0,0,710,0,0,0,0,0,0,0,0,0,0,662,0,0,0,0,0,540,540,540,540,540,1708,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1653,0,0,0,1722,0,0,0,0,0,0,0,0,0,0,0,0,1729,0,0,0,0,0,0,1706,0,0,0,0,0,540,540,540,540,540,540,540,540,540,540,3398,540,3400,540,561,561,1893,561,561,561,561,561,561,1901,561,561,561,561,561,561,1410,561,561,561,561,561,561,561,561,561,1428,561,561,561,561,561,561,561,561,561,1917,26027,0,1922,585,1924,585,561,561,561,1910,1912,561,561,561,561,561,26027,0,585,585,585,585,585,585,2335,585,585,585,585,585,585,585,585,561,0,3622,0,3624,0,0,540,585,585,585,585,1978,585,585,585,585,585,585,585,585,1987,585,585,585,585,585,585,2934,585,585,585,585,585,585,585,585,585,585,2407,561,540,585,585,561,585,585,585,585,1995,585,585,585,585,585,585,585,585,585,2004,2006,0,0,0,2078,0,0,0,2081,0,0,0,0,0,2087,0,0,0,0,0,2774,0,0,0,2778,0,2780,0,0,0,0,0,0,2746,0,0,0,0,0,0,0,0,0,362,362,362,0,0,0,0,0,2103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1265,0,0,0,0,561,561,561,561,561,2249,561,561,561,561,561,561,561,0,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1519,585,585,2346,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2919,585,2448,0,0,0,0,0,0,0,0,2453,0,0,2456,0,0,0,0,0,726,0,0,0,0,0,0,0,0,0,736,0,0,0,2460,0,0,0,0,0,0,0,0,0,0,0,2471,0,0,0,2485,2486,0,0,2489,0,0,2492,0,0,0,0,0,0,0,69632,73728,0,417,417,0,0,65536,417,0,0,2499,0,0,0,0,0,0,0,0,0,0,0,2510,0,0,0,0,815,0,812,795,0,0,817,0,667,0,791,0,0,0,0,1096,0,0,1098,0,0,0,0,0,0,0,0,827,0,0,0,0,0,0,0,0,540,2524,540,540,540,540,540,540,540,540,540,540,540,540,540,1789,540,540,540,540,540,2551,540,540,540,540,540,540,540,540,540,540,540,540,540,2559,540,540,2562,540,540,540,540,540,540,2569,540,540,540,540,540,540,540,540,540,540,3323,540,540,540,540,540,540,2576,540,540,540,2579,540,540,540,540,540,540,540,0,0,0,0,0,755,0,0,0,0,0,0,0,0,765,0,0,0,0,561,2586,561,561,561,561,561,561,561,561,561,561,561,3254,561,561,561,585,585,585,585,585,2672,585,585,585,585,585,585,2677,585,585,585,585,561,0,3646,0,0,0,540,540,540,540,540,540,2529,540,540,540,540,540,540,540,540,540,540,2842,540,540,540,540,540,585,585,585,2683,585,585,585,585,585,585,2690,585,585,585,585,585,585,585,2351,585,585,585,585,585,585,585,585,1508,585,585,585,585,585,585,585,585,2697,585,585,585,585,585,585,585,585,585,2704,585,585,585,2707,0,0,0,0,2735,0,0,0,0,0,0,0,2739,0,0,0,0,0,799,0,0,0,0,0,540,540,540,540,540,2528,540,540,540,540,540,540,540,540,540,540,2234,540,540,540,540,0,540,540,540,2811,540,540,540,540,540,540,540,540,540,540,540,540,540,2821,540,540,540,540,540,2836,540,540,540,2839,540,2841,540,540,540,540,540,540,540,540,3520,561,561,561,561,561,561,561,1450,26027,1360,987,585,585,585,585,585,2845,540,540,540,540,540,540,0,0,561,561,2853,561,561,561,561,561,1913,561,561,561,561,26027,0,585,585,585,585,2333,585,585,585,585,585,585,585,585,585,585,1050,585,585,585,585,561,561,2858,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2284,561,561,561,2874,2875,561,561,561,561,2878,561,561,561,561,561,561,561,0,585,585,585,585,585,585,1005,585,561,561,561,2884,561,561,561,2887,561,2889,561,561,561,561,561,561,1449,561,26027,1360,987,1453,585,585,585,585,2893,561,561,561,561,561,561,0,0,585,585,2901,585,585,585,585,585,585,585,3121,585,585,585,585,585,585,585,585,561,540,585,561,540,3285,561,3287,585,2906,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3367,585,585,2922,2923,585,585,585,585,2926,585,585,585,585,585,585,585,585,3592,561,0,0,0,0,3595,0,585,585,585,2932,585,585,585,2935,585,2937,585,585,585,585,585,585,585,1933,585,585,585,585,1939,585,585,585,2941,585,585,585,585,585,585,561,540,585,585,561,540,540,561,561,585,585,0,0,0,0,0,0,0,0,2963,0,0,0,0,0,585,585,2957,0,0,2960,2961,0,0,0,0,0,0,0,0,0,662,0,662,0,0,0,0,0,0,0,0,3009,0,0,3012,0,0,0,0,0,0,0,0,0,2200253,151552,2200253,0,0,0,151552,540,540,540,540,3037,540,540,540,540,540,540,540,540,540,540,540,540,3325,540,540,540,540,540,540,540,3051,540,540,540,540,540,540,540,540,540,540,540,540,3465,561,561,561,561,561,561,3077,561,561,561,561,561,561,561,561,561,561,561,561,1887,1888,561,561,561,561,561,561,3092,561,561,561,561,561,561,561,561,561,561,561,3480,585,585,585,585,561,561,585,585,585,585,3108,585,585,585,585,3112,585,585,585,585,585,585,585,3135,585,3137,585,585,585,585,585,585,561,0,0,0,0,0,3552,0,0,0,585,585,585,3118,585,585,585,585,585,585,585,585,585,585,585,585,1512,585,585,585,585,585,585,585,3133,585,585,585,585,585,585,585,585,585,585,585,585,2917,585,585,2920,0,0,3168,3169,0,0,0,0,0,0,0,0,0,0,0,0,2071,0,0,0,540,540,540,540,3329,540,540,540,540,540,561,561,561,561,561,561,561,561,561,3412,561,561,3336,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2285,3347,561,561,561,561,561,585,585,585,585,585,585,3354,585,585,585,585,585,585,2404,585,585,585,585,561,2178,585,2346,2261,3389,0,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2534,0,0,0,0,3176,0,0,0,0,0,3447,3448,0,540,540,540,540,2527,540,540,540,540,2531,540,540,540,540,540,540,540,1312,540,540,540,540,540,540,540,540,540,1784,540,540,540,540,540,540,561,561,561,561,3473,561,3475,3476,561,3478,561,585,585,585,585,585,1079,0,0,0,0,0,0,0,0,0,0,254413,0,0,0,0,0,585,585,585,3488,585,3490,3491,585,3493,585,3495,0,0,0,0,0,0,0,69632,73728,313,314,314,419,420,65536,427,585,585,3617,585,3618,585,585,585,561,0,0,0,0,0,0,540,585,585,561,540,540,540,904,540,561,561,561,976,561,561,585,585,3673,3674,3675,3676,0,540,561,585,0,540,561,585,585,585,585,585,1079,0,0,1563,0,0,0,1569,0,0,0,0,0,2789,0,0,0,0,0,0,0,0,0,0,1591,0,0,0,0,0,571,571,571,571,571,571,571,595,595,595,540,595,595,595,595,595,571,571,540,571,595,571,595,1,12290,3,78112,737,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1707,0,0,2040,0,0,0,0,0,0,0,0,0,0,0,0,0,1635,0,0,2170,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1360,0,0,0,561,561,561,561,561,561,561,561,561,2253,561,561,561,561,926,561,561,561,561,561,561,561,561,561,561,561,2307,561,561,561,2310,400,0,0,0,0,378,0,69632,73728,0,0,0,0,423,65536,0,0,0,0,1111,0,0,0,0,0,0,0,0,0,0,0,1687,0,1689,0,0,423,423,0,423,0,437,423,0,423,468,468,468,475,468,468,468,468,468,468,468,468,475,468,468,468,468,468,468,468,468,482,468,494,494,468,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,537,549,572,549,572,549,549,572,549,596,572,572,572,572,572,572,572,596,596,596,549,596,596,596,596,596,572,572,549,572,596,572,596,1,12290,3,78112,0,660,661,0,0,0,0,0,0,0,0,0,0,0,0,0,1666,0,0,830,0,0,0,661,0,0,0,0,0,0,0,0,0,0,0,0,0,0,729,0,742,661,0,0,0,0,0,540,847,540,540,540,540,540,540,3330,540,540,540,561,561,561,561,561,3335,861,540,540,540,540,540,540,540,540,540,897,540,540,540,540,540,540,540,1799,540,540,540,540,540,540,1807,540,561,561,916,561,561,561,931,561,561,561,561,561,561,561,561,561,2266,561,561,561,561,561,561,0,0,0,540,989,585,561,540,540,897,540,540,561,561,969,561,561,561,561,561,0,585,585,989,585,585,585,1004,585,1094,0,0,0,0,0,0,0,0,0,1101,1102,0,0,0,0,0,0,1203,0,0,0,0,0,0,0,0,0,0,196608,0,0,0,0,0,540,540,540,1308,540,540,540,540,540,540,540,540,540,540,540,540,540,3222,540,540,1360,914,561,1363,561,561,561,561,561,561,561,561,561,561,1376,1383,561,561,561,1444,561,561,561,561,26027,1360,987,585,1454,585,585,585,585,585,585,2659,585,585,2662,2663,585,585,585,585,585,585,585,2712,540,585,585,561,540,540,540,540,585,585,1488,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3128,585,1521,585,585,585,585,585,585,585,585,585,585,585,1535,585,585,585,585,585,585,2673,585,585,585,2676,585,585,2678,585,2679,561,585,585,1521,585,585,1079,0,0,0,0,0,0,0,0,0,759,0,0,0,0,0,0,1826,561,561,561,561,561,561,561,561,561,561,561,561,561,1841,1842,585,585,2009,585,585,561,540,585,585,561,540,540,540,540,561,561,561,561,1849,561,561,561,561,561,561,561,561,561,561,561,2880,561,561,561,561,561,2063,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2074,540,540,2226,540,540,540,540,540,540,540,540,540,540,540,540,0,0,561,561,561,2854,561,561,561,561,561,561,2301,561,561,561,561,561,561,2306,561,561,561,561,561,561,3079,561,561,561,561,561,3085,561,561,3088,2311,561,561,561,561,561,561,561,561,561,561,561,561,0,0,0,0,0,0,585,585,585,585,585,585,2654,585,585,585,585,585,2374,585,585,585,585,585,585,585,585,585,585,585,585,3140,585,585,585,585,2386,585,585,585,585,585,585,2391,585,585,585,585,585,2396,585,585,585,585,585,2012,540,585,585,561,540,540,540,540,561,561,561,561,2624,561,561,561,561,561,561,2632,561,561,561,561,561,2288,561,561,561,561,561,561,561,561,561,561,2631,561,561,561,561,561,2435,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2114,0,0,0,0,2476,0,0,0,0,0,0,0,0,0,0,0,748,0,0,0,0,0,2732,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1590,1591,0,0,0,2772,0,0,0,0,2777,0,0,0,0,0,0,0,540,562,540,562,540,540,562,540,586,540,540,2810,540,540,540,540,540,540,2818,540,540,540,540,540,540,540,889,540,540,540,540,907,540,540,540,540,540,540,540,2849,540,540,0,0,561,561,561,561,561,561,561,561,561,1836,561,561,561,561,561,2857,561,561,561,561,561,561,2865,561,561,561,561,561,561,561,561,3081,561,561,561,561,561,561,561,561,561,561,561,2897,561,561,0,0,585,585,585,585,585,585,585,1467,1474,585,585,585,585,585,585,585,585,3621,0,0,0,0,0,0,540,2905,585,585,585,585,585,585,2913,585,585,585,585,585,585,585,585,585,1983,585,585,1986,585,585,585,585,585,585,585,2945,585,585,561,540,585,585,561,540,540,561,561,585,585,0,0,0,0,0,3376,0,585,3280,585,585,585,585,585,585,561,540,585,561,540,540,561,561,585,585,0,3155,0,0,585,585,585,3587,585,3589,585,585,585,561,0,0,0,0,0,0,0,2791,0,0,0,2793,0,0,0,0,0,0,0,0,3600,540,540,540,540,540,540,540,540,540,540,540,1314,540,540,540,540,3607,561,561,561,561,561,561,561,561,561,561,561,3614,585,585,585,585,585,585,2686,585,585,585,585,585,585,585,585,585,1045,585,585,585,585,585,972,561,3653,561,561,561,561,585,3657,585,585,585,585,0,0,0,0,0,0,1204,0,0,0,0,0,0,0,0,0,362,0,290,0,0,0,345,469,469,469,453,453,469,453,453,453,453,453,453,453,453,519,519,519,519,519,519,519,519,519,519,519,519,519,519,519,519,550,573,550,573,550,550,573,550,597,573,573,573,573,573,573,573,597,597,597,550,597,597,597,597,597,573,573,550,573,597,573,597,1,12290,3,78112,862,540,540,876,540,540,540,540,540,540,540,540,540,540,540,540,1315,540,540,540,585,1019,585,585,585,585,585,585,585,585,585,585,585,585,585,561,0,0,0,3498,0,0,1123,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1607,0,0,0,0,1254,0,0,0,0,0,0,0,0,0,0,0,0,2111,0,0,0,540,1341,540,540,540,540,540,1348,540,540,540,540,540,540,540,540,540,540,3333,561,561,561,561,561,585,585,585,585,1505,585,585,585,585,585,585,585,585,585,585,585,585,3365,585,585,585,585,585,1523,585,585,585,585,585,1530,585,585,585,585,585,585,585,1468,585,585,585,585,585,585,585,585,585,2378,585,585,585,585,585,585,561,585,585,585,1557,585,1079,0,1561,0,0,0,1567,0,0,0,0,0,803,0,0,0,0,0,0,0,803,0,0,0,0,540,540,540,540,540,1573,0,0,0,1579,0,0,0,0,0,0,0,0,0,0,0,749,0,0,0,0,0,0,0,1695,0,0,0,0,0,0,0,0,0,0,0,0,2127,0,0,0,540,1762,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1358,540,1843,561,561,561,561,561,561,561,561,561,1854,561,561,561,561,561,561,3239,561,561,561,561,561,561,561,561,561,3578,561,561,585,585,585,585,0,2064,2065,0,0,0,0,0,0,0,0,0,0,0,0,0,1717,0,0,0,0,0,0,2135,0,0,0,0,0,0,0,0,0,0,0,1159,0,0,0,0,2186,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1808,540,540,2213,540,540,540,540,2218,540,540,540,540,540,540,540,540,540,1754,540,540,540,540,540,540,2240,0,0,561,561,561,561,561,561,561,561,561,561,561,561,561,1401,561,561,2298,561,561,561,561,2303,561,561,561,561,561,561,561,561,561,561,3083,561,561,561,561,561,585,585,585,2388,585,585,585,585,585,585,585,585,585,585,585,585,1938,585,585,585,3034,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2210,0,0,0,3380,3176,0,0,0,0,0,0,0,0,0,0,0,1175,0,0,0,0,540,540,3404,540,561,561,561,561,561,561,561,561,561,561,561,561,2282,561,561,561,561,561,561,561,3419,561,585,585,585,585,585,585,585,585,585,585,1049,585,585,585,585,561,540,3454,540,540,540,540,540,540,540,540,540,540,561,561,561,561,3523,561,561,561,3469,561,561,561,561,561,561,561,561,561,561,585,585,585,585,3484,385,387,337,0,0,0,0,0,0,336,0,0,337,0,0,0,0,0,1097,0,0,0,0,0,0,0,0,0,0,2057,0,0,0,0,0,0,0,0,384,0,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,1139,1140,0,0,0,0,0,362,362,0,0,0,0,0,703,0,0,0,0,0,0,0,0,0,0,2048,0,0,0,0,0,0,0,336,0,0,438,0,444,0,470,470,470,470,470,470,470,551,574,551,574,551,551,574,551,598,480,470,470,470,499,476,499,499,499,499,499,499,499,499,470,470,476,470,470,470,470,470,470,470,470,470,470,480,470,481,480,470,470,470,470,574,574,574,574,574,574,574,598,598,598,551,598,598,598,598,598,574,574,551,574,598,574,598,1,12290,3,78112,0,0,0,678,0,0,0,0,0,0,0,0,0,0,0,0,2153,0,0,0,0,0,693,0,0,0,0,0,0,362,362,362,0,0,0,0,0,0,1217,0,0,0,0,0,0,0,0,0,1220,0,0,1223,0,0,0,0,0,0,663,0,791,0,0,0,0,0,0,0,795,0,0,0,0,0,2972,0,0,0,0,0,0,0,0,0,0,2097,0,2099,0,0,0,0,0,804,0,0,0,0,0,812,0,0,0,0,706,0,0,0,0,0,0,0,0,715,0,717,0,0,0,831,0,0,0,663,834,0,791,0,0,0,0,0,840,0,0,0,0,0,2996,0,0,0,0,0,0,0,0,0,0,2429,2430,0,0,0,0,863,540,540,877,540,540,540,888,540,540,540,540,906,540,540,540,540,540,1311,540,540,540,540,540,540,540,540,540,540,540,2843,540,540,540,540,561,561,917,561,561,561,933,561,561,947,561,561,561,561,960,561,0,995,585,1076,1046,585,78112,1079,0,0,0,0,0,0,0,0,2686976,2736128,0,0,2531328,2707456,0,3190784,561,561,561,978,561,561,561,0,585,585,990,585,585,585,1006,585,585,585,585,585,2349,585,585,585,585,2354,585,585,585,585,585,585,585,2377,585,585,585,585,585,585,585,585,561,540,561,585,0,0,0,0,585,1020,585,585,585,585,1033,585,585,585,585,1051,585,585,585,561,540,585,561,3149,540,3151,561,3153,585,0,0,0,0,0,0,1660,0,0,0,0,0,0,0,0,0,1173,0,0,0,0,0,0,0,0,0,540,990,585,561,540,540,540,540,540,561,561,561,561,3067,561,561,561,561,3071,561,561,561,561,0,0,0,1215,0,0,0,0,0,0,0,0,0,0,0,0,2431,0,2433,0,1238,0,0,0,0,1270,0,0,0,0,0,0,0,540,540,540,540,3561,540,540,540,540,540,540,540,540,561,561,561,561,561,561,561,585,585,585,540,585,585,585,585,585,585,585,585,585,1491,585,585,585,585,585,585,585,585,585,585,585,1495,585,585,585,585,561,585,585,1556,585,585,1079,0,0,0,0,0,0,0,0,0,1100,0,0,0,0,0,0,1622,0,0,1625,0,1627,0,0,0,0,0,0,0,0,0,0,839,540,540,540,540,859,540,1744,540,540,540,540,540,540,540,540,1755,540,540,540,540,540,540,540,2176,540,540,2180,540,540,540,2184,540,561,561,561,1847,561,561,561,561,561,561,561,561,561,561,561,561,2294,561,561,561,0,0,2117,0,0,0,0,0,0,0,0,0,0,0,0,0,1730,0,0,0,0,0,0,2148,0,0,0,0,0,0,0,0,0,0,0,1207,0,0,0,0,0,0,0,561,561,561,561,2248,561,561,561,561,561,561,561,561,3095,3097,561,561,561,3100,561,3102,561,561,2313,561,561,561,561,561,561,561,561,561,561,0,0,0,0,0,0,585,585,2651,585,585,585,585,585,585,585,2660,585,585,585,585,585,2665,585,585,2398,585,585,585,585,585,585,585,585,585,585,561,540,2410,585,561,0,540,585,585,561,540,540,540,540,540,561,561,561,561,585,585,585,585,0,3669,540,3670,0,2436,0,0,0,0,0,0,2441,0,0,0,2444,2445,0,0,0,0,0,3010,0,0,0,0,0,0,0,0,0,0,303,304,0,0,0,0,2497,0,0,0,0,0,0,0,0,0,2506,0,0,0,0,0,0,0,69632,73728,163840,0,0,0,0,65536,0,2512,0,0,0,0,2515,0,0,0,0,0,0,0,0,0,2523,540,2536,2537,540,540,540,540,540,2542,540,2544,540,540,540,540,2548,561,2595,561,561,2598,2599,561,561,561,561,561,2604,561,2606,561,561,561,561,1863,561,561,561,561,561,561,561,561,561,561,561,2890,561,561,561,561,561,561,561,2610,561,561,561,561,561,561,561,561,2616,561,561,561,561,561,2276,561,561,2279,561,561,561,561,561,561,561,1915,561,561,26027,1920,585,585,585,585,2636,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2608,2668,585,2670,585,585,585,585,2674,585,585,585,585,585,585,585,585,585,2675,585,585,585,585,585,585,2680,585,585,585,585,585,585,585,585,2688,585,585,585,585,585,585,585,1950,585,585,585,585,1954,585,585,585,2696,585,585,585,585,2700,585,585,585,585,585,585,585,585,585,585,1494,585,585,585,585,585,561,2720,561,561,585,2722,585,585,0,0,0,0,0,0,0,0,0,2964,0,0,0,0,2770,0,0,0,2773,0,0,2776,0,0,0,0,0,0,0,0,331,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1691,0,2786,0,0,0,0,0,0,0,0,0,0,0,2795,0,0,0,0,0,3171,0,0,0,0,0,0,0,0,0,0,1245,0,0,0,0,0,540,2825,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1773,540,540,2835,540,540,540,540,540,540,540,540,540,540,540,540,540,2844,540,540,2847,540,540,2850,540,0,0,2851,561,561,561,561,561,561,1851,561,561,561,561,1855,561,561,561,561,561,2883,561,561,561,561,561,561,561,561,561,561,561,561,561,2892,561,561,2895,561,561,2898,561,0,0,2899,585,585,585,585,585,585,585,1965,585,585,585,1970,585,585,585,585,585,2931,585,585,585,585,585,585,585,585,585,585,585,585,585,2940,585,585,2943,585,585,2946,585,561,2948,585,2949,2950,540,540,561,561,561,561,1878,561,561,561,561,1884,561,561,561,561,561,561,936,561,561,561,561,561,561,561,561,561,984,0,585,585,585,585,585,585,1007,585,0,2968,2969,0,0,0,0,2974,0,0,0,0,0,0,0,0,331,0,331,331,0,0,0,0,3020,0,0,540,540,3025,540,540,540,540,540,540,540,540,540,540,540,3043,540,540,540,540,540,540,540,3050,540,540,3052,540,540,540,540,540,540,540,540,540,540,1352,540,540,540,540,540,561,561,561,3091,561,561,3093,561,561,561,561,561,561,561,561,561,2602,561,561,561,561,561,561,561,561,585,585,3106,585,585,585,585,585,585,585,585,585,585,585,1496,585,585,585,1500,585,585,585,3132,585,585,3134,585,585,585,585,585,585,585,585,585,1040,585,585,585,585,585,967,3158,0,0,0,3162,0,0,0,0,0,0,0,0,0,0,0,1222,0,0,1225,0,3190,0,0,3193,0,0,0,0,0,0,0,0,0,0,540,540,540,540,2166,540,540,540,540,540,3214,540,540,540,540,540,540,540,3219,540,540,540,540,540,540,540,2541,540,2543,540,540,540,540,540,540,540,540,2581,540,540,540,540,0,2584,0,561,561,561,3236,3237,561,561,561,561,561,3241,561,561,561,561,561,561,3250,561,561,561,561,561,561,561,561,585,585,585,585,3536,585,585,585,585,561,561,561,3247,561,561,561,561,561,561,561,561,561,561,561,585,3481,585,3483,585,585,585,585,3269,585,585,585,585,585,585,585,585,3275,585,585,585,585,585,585,2701,585,585,585,585,585,585,585,2706,585,0,0,3308,0,0,0,0,0,0,0,0,0,0,0,0,540,540,540,856,540,585,3359,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1057,561,0,0,0,0,3176,0,0,0,0,0,0,0,3386,0,0,0,0,0,1169,0,1171,0,0,0,0,1176,0,0,0,0,0,1185,0,0,0,0,0,0,0,0,0,0,669,0,0,0,0,0,585,3429,585,585,585,585,585,585,561,540,561,585,0,3437,0,0,0,0,0,3300,0,3176,3302,0,0,3305,0,0,0,0,0,0,1113,0,0,0,0,0,0,0,0,0,362,362,362,0,703,0,0,3440,0,0,0,3176,0,0,0,0,0,0,0,0,540,540,3452,540,540,540,540,3457,540,540,540,540,3462,540,540,561,561,3467,561,0,997,1037,585,1048,585,78112,1079,0,0,0,0,0,0,0,776,0,0,0,0,0,783,0,0,561,561,561,3472,561,561,561,561,3477,561,561,585,585,3482,585,585,585,585,585,585,3259,3260,585,585,585,585,3264,3265,585,585,585,585,585,585,3120,585,585,585,585,585,3126,585,585,3129,585,585,3487,585,585,585,585,3492,585,585,561,0,0,0,0,0,0,0,69632,73728,167936,0,0,0,0,65536,0,3499,0,0,0,0,0,3505,0,0,540,540,540,540,540,540,540,540,540,3397,540,540,540,540,540,540,540,540,3517,540,540,3519,561,561,561,561,561,561,561,561,3252,561,561,561,561,561,561,585,561,561,561,3530,561,561,3532,585,585,585,585,585,585,585,585,585,1042,585,585,585,585,585,969,585,585,3543,585,585,3545,561,0,0,0,0,0,0,0,0,0,1144,0,362,362,0,1147,0,540,540,3629,3630,540,540,561,561,561,3635,3636,561,561,585,585,585,585,0,2029,0,0,0,0,0,2031,0,0,3641,3642,585,585,561,0,0,0,0,0,540,540,540,540,540,540,3395,540,540,540,540,540,540,3401,561,561,585,585,0,540,561,585,0,540,561,585,3681,3682,3683,3684,339,340,341,342,343,0,0,0,0,0,0,0,0,0,0,0,1617,0,0,0,0,0,0,0,388,0,0,0,0,0,0,0,0,0,0,0,0,2469,0,2470,0,342,342,343,342,0,341,342,445,454,471,471,471,471,471,471,471,471,471,471,471,471,471,471,471,471,471,471,486,495,495,503,495,505,495,495,505,505,495,505,520,520,520,520,520,520,520,520,520,520,520,520,520,520,520,520,552,575,552,575,552,552,575,552,599,575,575,575,575,575,575,575,599,599,599,552,599,599,599,599,599,575,575,552,575,599,575,599,1,12290,3,78112,0,0,0,646,0,0,0,0,651,652,653,654,655,656,657,0,0,0,0,1144,0,0,1259,0,0,0,0,0,0,0,0,0,2957312,0,0,0,0,0,0,0,692,0,0,0,0,0,0,699,362,362,362,0,0,0,0,0,0,1232,0,0,0,0,0,0,0,0,0,735,0,800,0,0,0,0,721,0,723,0,0,0,0,0,0,0,0,0,733,0,0,0,0,0,1202,0,0,0,0,0,0,0,0,0,0,333,334,0,0,0,0,0,646,752,753,754,0,0,0,0,0,760,761,0,0,0,0,0,0,1271,0,0,0,0,0,0,540,540,540,3026,540,540,540,540,540,540,540,540,540,540,2220,540,540,540,540,540,0,761,0,0,790,0,0,0,0,0,0,0,0,0,797,0,0,0,0,1152,0,0,0,0,1157,0,0,0,0,0,0,0,2106,0,0,0,0,0,0,0,0,1219,0,0,0,0,0,0,0,723,0,692,814,0,0,0,0,761,0,0,0,0,0,0,0,558,581,558,581,558,558,581,558,605,0,754,823,824,0,0,0,0,0,0,754,0,0,828,699,0,0,0,0,1168,0,0,0,0,0,0,0,0,0,0,0,1633,0,0,0,0,0,0,833,0,0,0,835,0,0,0,692,699,0,0,692,833,0,0,0,0,0,0,0,0,0,692,540,540,853,857,860,540,868,540,540,882,884,887,540,540,540,898,902,540,540,540,540,540,540,1766,540,540,540,540,540,540,540,540,540,540,1786,540,540,540,540,540,561,561,561,923,927,930,561,938,561,561,561,953,955,958,561,561,561,561,1879,561,561,561,561,561,561,561,561,561,561,561,2641,561,561,561,561,561,561,561,561,2648,0,585,585,585,585,585,585,585,561,540,585,585,561,2717,540,540,540,585,585,585,1026,1028,1031,585,585,585,1043,1047,585,585,585,585,970,0,0,0,1060,585,1062,1063,853,540,898,902,1068,923,561,970,974,561,561,561,561,0,585,585,585,996,1e3,1003,585,1011,1073,0,996,585,1043,1047,1078,78112,1079,0,0,0,0,0,0,0,560,583,560,583,560,560,583,560,607,0,0,1199,0,0,0,0,0,0,0,0,0,1208,0,0,0,0,0,1231,0,0,0,0,1236,0,0,0,0,0,0,0,69632,73728,0,0,0,0,422,65536,0,540,1322,540,540,540,540,540,540,540,540,540,1331,540,540,1338,540,540,540,540,2228,540,540,540,540,540,540,540,540,540,540,0,0,561,2852,561,561,561,561,561,561,561,561,1422,561,561,1429,561,561,561,561,561,561,561,561,561,2879,561,561,561,561,561,561,561,1442,561,561,561,561,561,561,26027,1360,987,585,585,585,585,585,585,585,2925,585,585,585,585,585,585,585,585,561,540,561,585,3436,0,3438,0,585,1503,585,585,585,585,585,585,585,585,585,585,1513,585,585,1520,1667,0,1669,0,0,0,1671,0,748,0,0,0,0,0,0,0,650,0,0,0,0,0,0,0,0,0,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,0,0,1602,0,0,0,0,0,0,540,1738,540,540,540,540,540,540,540,2584,0,561,561,561,561,561,561,561,561,561,561,561,1839,561,561,561,1743,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2238,540,1776,540,540,1781,540,540,540,540,540,540,540,540,540,540,540,1353,540,540,540,540,0,561,1829,561,561,561,561,561,561,1835,561,561,561,561,561,561,1864,561,561,561,1868,561,561,1873,561,561,1907,561,561,561,561,561,561,561,561,561,26027,0,585,1923,585,585,585,585,585,585,3270,585,585,585,585,585,585,585,585,585,1968,585,585,585,585,585,585,585,585,585,585,1929,585,585,585,585,585,585,585,585,585,585,585,1511,585,585,585,585,585,1958,585,585,585,1962,585,585,1967,585,585,585,585,585,585,585,1469,585,585,585,585,585,585,585,585,585,2392,585,585,585,2395,585,585,0,1086,0,0,0,2034,0,1090,0,0,0,2036,0,1094,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1226,585,585,585,585,2362,585,585,585,585,585,585,585,585,585,585,585,1534,585,585,585,585,2585,0,1826,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2271,585,585,585,2710,585,585,585,561,540,585,585,561,540,540,540,540,540,540,1814,540,540,540,540,1820,540,540,540,1360,0,0,0,0,2744,0,0,0,0,0,0,0,0,0,0,0,1649,0,0,0,0,585,585,585,585,2924,585,585,585,585,585,585,585,585,585,585,585,1937,585,585,585,585,561,561,3338,561,561,561,561,561,561,561,561,561,561,561,561,561,1857,561,561,0,0,0,0,3176,0,0,0,0,0,0,3385,0,0,0,0,0,0,1628,1629,1630,0,0,0,0,0,0,0,0,1159168,362,0,0,0,0,0,0,3402,540,540,540,561,561,561,3407,561,561,561,561,3411,561,561,561,561,1391,561,561,561,561,561,561,561,561,561,561,561,1414,561,561,561,561,561,561,3417,561,561,561,585,585,585,3422,585,585,585,585,3426,585,585,585,585,585,2375,2376,585,585,585,585,585,585,585,585,585,1476,585,585,585,585,585,585,585,585,585,585,3432,585,585,585,561,540,561,585,0,0,0,0,0,0,1644,0,0,0,0,0,0,0,0,0,661,0,661,0,0,0,0,0,0,0,0,3176,0,0,0,0,3446,0,0,0,540,540,540,3392,540,540,540,540,3396,540,540,540,540,540,540,540,3039,540,540,540,540,540,3045,540,540,540,540,3455,540,540,540,3459,540,540,540,540,540,561,561,561,561,561,2626,561,561,561,561,561,561,2633,561,561,561,561,3470,561,561,561,3474,561,561,561,561,561,585,585,585,585,585,585,585,3111,585,585,585,585,585,585,3485,585,585,585,3489,585,585,585,585,585,561,0,0,0,0,0,540,540,540,540,540,540,3603,540,3604,540,540,540,561,561,585,585,0,540,561,585,3677,3678,3679,3680,0,540,561,585,585,585,585,585,1079,0,1562,0,0,0,1568,0,0,0,0,0,1256,0,0,0,0,0,0,0,0,0,0,300,300,0,0,0,0,386,0,0,0,390,386,0,0,0,0,0,0,0,0,0,0,1174,0,0,0,0,0,0,0,0,402,0,344,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,1201,0,0,0,0,0,0,0,0,0,0,0,357,0,0,0,0,521,521,521,521,0,0,0,0,0,0,0,0,521,521,521,521,521,521,521,553,576,553,576,553,553,576,553,600,576,576,576,576,576,576,576,600,600,600,553,600,600,600,600,600,576,576,617,622,600,622,628,1,12290,3,78112,561,561,561,979,561,561,561,0,585,585,585,585,585,585,585,585,585,2927,585,585,585,585,585,585,0,0,0,540,1061,585,561,540,540,540,540,540,561,561,561,561,561,3238,561,561,561,561,561,561,561,561,561,561,1433,561,561,561,561,561,1107,0,0,0,0,1112,0,0,0,0,0,0,0,0,0,0,1190,0,0,0,0,0,561,561,561,1389,561,561,561,561,561,561,561,561,561,561,561,561,2308,2309,561,561,561,1403,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2296,2297,1440,561,561,561,561,561,561,561,26027,1360,987,585,585,585,585,585,585,585,2947,540,585,585,561,540,540,561,561,1574,0,0,0,1580,0,0,0,0,0,0,0,0,0,0,0,1664,0,0,0,0,1606,0,0,0,0,0,0,0,0,0,0,0,0,0,1620,0,0,0,0,1216,0,0,0,0,0,0,0,0,0,0,0,2110,0,0,0,0,561,561,561,1877,561,561,561,561,561,561,561,561,561,561,561,561,2322,0,0,0,2052,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2155,0,2116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1676,0,2241,0,0,561,561,561,561,561,561,561,561,561,561,561,561,561,2295,561,561,561,561,2274,561,561,561,561,2278,561,2280,561,561,561,561,561,561,1897,561,561,561,561,561,561,561,561,561,1397,561,561,561,561,561,561,2359,585,585,585,585,2363,585,2365,585,585,585,585,585,585,585,585,585,3123,585,3125,585,585,585,585,0,0,0,2500,0,0,0,0,0,0,0,0,0,0,0,0,2494,2495,0,0,561,2622,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2607,561,0,3021,0,540,540,540,540,540,540,540,540,540,540,540,540,540,2533,540,0,0,0,0,3176,3382,0,0,3384,0,0,0,0,0,0,0,728,0,0,0,0,0,0,0,0,1115,0,0,0,0,0,0,0,0,0,540,3391,540,540,3393,540,540,540,540,540,540,540,540,540,540,1785,540,540,540,1790,540,0,0,0,0,3176,0,3443,0,0,0,0,0,3449,540,540,540,540,540,1782,540,540,540,540,540,540,540,540,540,540,540,2832,540,540,540,540,864,540,540,540,540,540,540,540,540,540,540,540,540,540,540,912,1095,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2447,0,0,1624,0,0,0,0,0,0,0,0,0,0,0,0,0,2060,0,0,1827,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2620,345,345,347,345,0,0,345,0,345,0,0,0,0,346,0,0,0,0,0,3310,0,0,3312,0,0,0,0,0,0,540,585,585,561,540,540,540,540,540,561,561,561,561,561,561,3410,561,561,561,561,561,0,0,0,345,345,347,345,345,345,345,345,345,512,345,345,345,345,345,345,345,345,345,345,345,345,345,345,345,345,554,577,554,577,554,554,577,554,601,577,577,577,577,577,577,577,601,601,601,554,601,601,601,601,601,577,577,554,577,601,577,601,1,12290,3,78112,0,722,0,724,0,0,0,0,0,0,0,0,0,0,0,0,2508,0,0,0,0,739,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1690,0,0,0,811,0,0,810,0,0,0,0,0,755,0,0,819,0,0,0,0,1269,0,0,0,0,0,0,0,1181,540,540,540,540,540,1797,540,540,540,540,540,540,540,540,540,540,540,3464,561,561,561,561,540,540,872,540,540,540,540,890,892,540,540,903,540,540,540,540,540,540,2175,540,2177,540,540,540,540,540,540,2185,561,561,918,924,561,561,561,561,942,561,561,561,561,561,962,964,561,561,975,561,561,561,561,0,585,585,991,997,585,585,585,585,585,585,585,3271,585,585,585,585,585,585,3277,585,1015,585,585,585,585,585,1035,1037,585,585,1048,585,585,585,585,561,0,0,0,0,0,540,540,3650,3651,540,540,0,0,0,540,991,585,561,854,892,540,903,540,924,964,561,975,0,0,0,1151,0,1153,0,1155,0,0,0,0,0,0,0,0,713,0,0,0,0,0,0,0,0,1181,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1706,0,0,1198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1731,0,1212,1213,0,0,0,0,0,1218,0,0,0,0,0,0,0,0,729,0,0,0,0,0,0,0,540,540,1307,1309,540,540,540,540,540,540,540,540,540,540,540,540,1316,540,540,1319,540,540,1343,540,540,540,540,540,540,540,540,1354,1355,540,540,540,540,540,1813,540,540,540,540,540,540,540,540,540,1360,1360,914,561,561,561,1366,561,561,561,561,561,561,561,561,561,561,26027,1921,585,585,585,585,561,561,1420,561,561,561,561,561,561,561,1434,561,561,561,561,561,561,3342,561,561,561,561,561,561,561,561,561,3080,561,561,561,561,561,561,561,561,2319,561,561,561,561,0,0,0,561,561,561,1445,1446,561,561,561,26027,1360,987,585,585,585,1457,585,585,585,585,585,2403,585,585,585,585,585,561,2409,585,2411,2412,585,1487,1489,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3366,585,585,585,585,1525,585,585,585,585,585,585,585,585,1536,1537,585,585,585,585,585,585,3434,585,561,540,561,585,0,0,0,3439,585,1542,0,540,585,585,561,540,1547,540,540,1550,561,1551,561,561,561,561,1895,561,561,561,1900,561,561,561,561,561,561,561,0,585,585,988,585,585,585,585,585,1554,585,1555,585,585,1558,1079,0,0,0,0,0,0,0,0,0,2069,0,0,0,0,2073,0,0,1678,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2037,0,0,0,1694,0,0,0,0,0,0,0,0,0,0,0,0,0,2072,0,0,0,1637,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2051,0,0,561,561,561,561,561,561,1833,561,561,561,561,561,561,561,561,26027,1360,987,585,585,585,585,585,561,1908,561,561,561,561,1914,561,561,561,26027,0,585,585,585,585,585,2334,585,585,585,585,585,585,585,585,585,585,2938,585,585,585,585,585,585,585,1927,585,585,585,585,585,585,585,585,585,585,585,585,585,1055,585,561,585,585,585,1994,585,585,585,585,585,585,585,585,2002,585,585,585,585,585,585,2711,561,540,585,585,561,540,540,540,540,540,540,2217,540,540,540,540,540,540,540,540,540,540,1802,540,540,540,540,540,585,2008,585,585,585,561,540,585,585,561,540,540,540,540,561,561,561,561,2261,561,561,561,561,561,561,561,561,561,561,561,2891,561,561,561,561,0,2076,0,0,0,0,0,0,0,0,2084,0,0,0,0,0,0,0,69632,73728,266240,0,0,0,0,65536,0,2088,0,0,2090,0,0,0,0,0,0,0,2098,0,0,0,0,0,0,1725,0,0,0,0,0,0,0,0,0,643,0,0,0,0,0,0,0,0,2146,0,0,0,2146,0,0,2151,2152,0,0,0,0,0,0,0,274432,274432,274432,0,274432,274432,274432,274432,274432,2156,0,0,0,0,0,0,0,2162,540,540,540,540,540,2168,540,540,540,540,2538,540,540,540,540,540,540,540,540,540,540,540,540,1821,540,540,1360,540,2200,540,2203,540,540,540,540,540,540,540,540,540,540,2209,540,540,540,540,2578,540,540,540,540,540,540,540,540,0,2584,0,0,0,0,799,0,0,0,0,0,0,0,0,0,0,0,0,799,0,0,0,0,0,0,0,0,2244,561,561,561,561,561,561,2251,561,561,561,561,561,561,3351,585,585,585,585,585,585,585,3356,585,561,561,2300,561,561,561,561,561,561,561,561,561,561,561,561,561,2323,0,0,0,2329,585,585,585,585,585,585,2336,585,585,585,585,585,585,585,1470,585,585,585,585,1480,585,585,585,585,585,2360,585,585,585,585,585,585,2366,585,2368,585,2371,585,585,585,585,585,585,3546,0,0,3549,3550,0,0,0,0,0,0,303,0,0,0,0,0,0,0,0,0,0,2912256,0,3207168,2465792,0,0,2385,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1989,2472,0,0,0,0,0,0,0,0,0,2480,0,0,0,0,0,0,0,286720,286720,0,286720,286720,1,12290,3,0,0,0,0,0,2514,0,0,0,0,0,0,0,0,0,2522,0,0,0,0,1575,0,0,0,0,0,1581,0,0,0,0,0,0,0,69632,73728,172032,0,0,0,0,65536,0,561,561,2596,561,561,561,561,561,2601,561,561,561,561,561,561,561,0,585,585,992,585,585,585,585,585,585,2681,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1956,585,2719,561,561,561,2721,585,585,585,2723,2724,0,0,0,0,0,0,0,2801,0,0,0,540,2805,540,540,540,2742,0,2743,0,0,0,0,0,0,0,0,0,0,0,0,0,2100,0,0,0,0,2758,0,0,0,0,0,0,0,0,0,0,0,0,0,2128,0,0,540,2809,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2223,2224,540,2846,540,540,540,540,540,0,0,561,561,561,561,2855,561,2856,561,2894,561,561,561,561,561,0,0,585,585,585,585,2903,585,2904,585,2942,585,585,585,585,585,561,540,585,585,561,540,540,561,561,585,585,0,0,0,3374,0,0,3377,0,0,0,540,3024,540,540,540,540,540,540,540,540,540,540,540,1771,540,540,540,540,561,561,585,3105,585,585,585,585,585,585,585,585,585,585,585,585,2369,585,585,585,585,585,3145,540,585,561,540,540,561,561,585,585,0,0,0,0,0,0,2066,0,0,0,0,0,0,0,0,0,362,297,0,0,0,0,0,0,0,3390,540,540,540,540,3394,540,540,540,540,540,540,540,540,540,2179,540,540,540,540,540,540,540,3403,540,540,3405,561,561,561,561,3409,561,561,561,561,561,561,2277,561,561,561,561,561,561,561,561,561,3082,561,3084,561,561,561,561,561,561,561,3418,561,561,3420,585,585,585,585,3424,585,585,585,585,585,585,585,3591,585,561,0,0,0,0,0,0,0,3176,0,3303,0,0,0,0,3307,0,585,585,585,585,585,3433,585,585,561,540,561,585,0,0,0,0,0,0,2137,0,0,0,0,0,0,0,0,0,1129,0,0,0,0,0,0,0,3500,0,3502,0,0,0,0,0,540,540,540,540,540,3511,540,540,540,540,2812,540,2815,540,540,540,540,2820,540,540,540,2823,540,540,540,540,3631,540,561,561,561,561,561,3637,561,585,585,585,585,585,1079,0,0,0,1564,0,0,0,1570,0,585,585,3643,585,561,3645,0,3647,0,0,540,540,540,540,540,540,540,1286,540,540,540,540,540,540,540,540,540,540,3208,540,540,540,540,540,365,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2496,398,0,0,0,0,0,365,373,401,0,0,0,0,0,365,0,0,393,0,0,0,0,348,0,0,365,0,393,0,406,408,0,0,365,373,0,69632,73728,0,0,0,0,424,65536,0,0,0,0,1596,0,0,0,0,0,0,0,0,0,0,0,362,362,0,0,0,424,424,0,424,0,408,424,447,455,0,0,0,0,0,0,0,777,0,0,0,0,0,0,0,644,0,406,0,496,496,0,496,496,496,496,496,496,496,496,522,522,522,522,455,455,455,530,455,531,455,455,522,536,522,522,522,522,538,555,578,555,578,555,555,578,555,602,578,578,578,608,608,608,578,602,602,602,555,602,602,602,602,602,578,578,618,623,602,623,629,1,12290,3,78112,643,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2769,0,0,0,694,0,0,0,0,0,362,362,362,0,0,0,0,0,0,2440,0,0,0,0,0,0,0,0,0,1260,0,0,0,0,0,0,0,0,805,0,0,0,0,0,0,0,0,0,0,0,0,0,2142,2143,0,540,540,540,878,540,540,540,540,540,540,540,540,540,540,540,540,1332,540,540,540,561,561,919,561,561,561,561,561,561,948,950,561,561,561,561,561,561,3575,561,3577,561,561,561,585,585,585,585,0,0,1563,0,0,0,0,0,1569,0,585,1021,1023,585,585,585,585,585,585,585,585,585,585,585,585,561,3496,0,3497,0,0,0,0,0,540,992,585,561,540,540,540,540,540,561,561,561,561,561,3341,561,561,561,561,561,561,561,561,561,561,3579,561,585,585,585,585,0,0,0,1098,1230,0,0,0,0,0,0,1237,0,0,0,0,0,0,2452,0,0,0,0,0,0,0,0,0,2764,0,0,0,0,0,0,0,0,0,1242,0,0,0,0,0,0,0,0,0,0,1242,1251,540,540,1280,540,540,540,1284,540,540,1295,540,540,1299,540,540,540,540,540,2229,540,2231,540,540,540,540,540,540,540,0,0,561,561,561,561,561,561,561,561,561,561,561,561,1840,561,561,1360,914,561,561,561,561,561,561,1369,561,561,561,1373,561,561,1384,561,561,1388,561,561,561,561,561,561,561,561,561,561,561,561,561,2324,0,0,561,561,1405,561,561,561,1409,561,561,561,561,561,561,561,561,561,3612,3613,561,585,585,585,585,585,1460,585,585,585,1464,585,585,1475,585,585,1479,585,585,585,585,585,585,1032,585,585,585,585,585,585,585,585,561,0,0,0,0,3625,0,540,0,1623,0,0,0,0,0,0,0,0,0,0,0,0,1636,0,0,0,0,1626,0,0,0,0,0,0,0,0,0,0,0,2058,2059,0,2061,2062,1638,0,0,0,1642,0,0,0,1646,0,0,0,1650,0,0,0,0,0,1257,0,0,0,0,0,0,0,0,0,0,1145,362,362,0,0,1148,561,1844,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2635,561,561,561,561,1862,561,561,561,561,561,561,561,561,561,561,561,561,2869,561,561,2872,2007,585,585,585,585,561,1752,585,1938,1844,540,540,540,540,561,561,561,561,2275,561,561,561,561,561,561,2281,561,2283,561,2286,0,0,2056,0,0,0,0,0,0,0,0,0,0,0,0,0,2154,0,0,0,0,0,2118,0,0,0,0,0,0,0,0,0,0,0,0,2520,0,0,0,0,2132,0,0,0,0,0,0,0,0,0,2141,0,0,0,0,0,0,2463,0,0,0,0,0,0,0,0,0,2491,0,0,0,0,0,0,0,0,0,2158,0,0,2161,0,540,540,2164,540,540,540,540,540,540,540,3053,540,3055,540,540,540,540,540,540,540,540,2232,540,540,2235,2236,540,540,0,540,540,540,2227,540,540,540,540,540,540,540,540,540,540,540,0,2242,561,561,561,561,561,561,561,0,0,0,561,561,2246,561,561,561,561,561,561,561,561,561,561,26027,1360,987,585,585,1455,585,1458,561,2312,561,561,561,561,561,561,561,561,561,561,561,0,0,0,0,0,0,585,2650,585,585,585,585,585,585,561,3547,3548,0,0,0,0,0,0,3554,0,585,585,2331,585,585,585,585,585,585,585,585,585,585,585,585,2381,2382,585,585,585,585,2387,585,585,585,585,585,585,585,585,585,585,585,585,2397,540,540,2415,2416,561,561,2419,2420,585,585,2423,2424,0,1563,0,1569,0,1575,0,1581,0,0,0,0,0,0,0,0,0,0,0,0,2752,0,0,0,0,0,0,0,2438,0,0,0,0,0,0,0,0,0,0,0,1728,0,0,0,0,0,2513,0,0,0,0,0,0,0,0,0,2519,0,0,0,0,0,0,2478,0,0,0,0,0,0,0,0,0,1189,0,0,0,0,0,0,540,540,540,2565,540,540,540,540,540,540,540,540,540,540,540,540,1333,540,540,540,585,585,2682,585,585,585,585,585,585,585,585,585,585,2693,585,585,585,585,585,585,3590,585,585,561,0,3594,0,0,0,0,0,0,2516,2466,0,0,0,0,0,2521,0,0,2824,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2239,561,561,561,561,2885,561,561,561,561,561,561,561,561,561,561,561,1395,561,561,561,561,561,561,561,561,1430,561,561,561,561,561,561,561,561,2866,561,561,561,561,561,561,561,585,585,585,585,2933,585,585,585,585,585,585,585,585,585,585,585,1985,585,585,585,585,0,3177,0,0,0,3180,0,0,0,0,0,0,0,0,0,0,1601,1602,0,0,0,0,0,0,0,0,3194,0,0,0,0,0,0,3197,0,3199,540,540,540,540,880,540,885,540,891,540,894,540,540,908,540,540,540,540,540,3038,540,540,540,540,540,540,540,540,3046,540,585,3289,3290,0,0,0,0,3294,0,0,0,0,0,0,0,0,1099,0,0,0,0,0,0,0,540,540,3316,540,540,540,3319,540,540,540,540,540,540,540,540,540,540,1819,540,540,540,540,1360,561,3337,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2646,561,3415,561,561,561,561,561,585,585,585,585,585,585,585,585,585,585,585,585,585,3115,3428,585,3430,585,585,585,585,585,561,540,561,585,0,0,0,0,0,0,2503,0,0,0,0,0,0,0,0,0,362,336,290,0,0,0,0,3555,0,540,540,540,540,540,540,540,540,540,540,3566,540,540,561,3064,561,561,561,561,561,561,561,561,561,561,561,561,2617,561,561,561,561,561,3608,561,3609,561,561,561,561,561,561,561,585,585,3615,585,585,585,585,585,2658,585,585,585,585,585,585,585,585,585,585,1952,585,585,585,585,585,3616,585,585,585,585,585,585,585,561,0,0,0,0,0,0,540,585,585,561,540,540,540,1067,911,561,561,561,1072,407,353,0,0,0,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,1658,0,0,0,0,0,0,0,0,0,0,0,362,362,1146,0,0,472,483,472,0,0,472,0,0,0,0,0,0,0,0,523,523,527,527,527,527,472,472,472,472,472,477,472,472,527,523,527,527,527,527,539,556,579,556,579,556,556,579,556,603,579,579,579,579,579,579,579,603,603,603,556,603,603,603,603,603,579,579,619,624,603,624,630,1,12290,3,78112,0,644,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2101,0,738,0,0,0,644,738,0,744,745,644,0,0,0,0,0,0,0,0,793,0,0,0,0,0,0,0,0,0,0,802,0,807,0,0,0,0,0,0,807,0,0,0,0,0,644,0,0,0,802,0,807,0,793,0,822,0,0,0,665,0,0,0,0,822,0,0,0,0,0,0,0,1134592,0,362,0,0,0,1134592,0,0,0,793,793,0,644,0,0,793,807,845,0,540,850,540,540,540,540,540,2539,540,540,540,540,540,540,540,540,540,540,540,3324,540,540,540,540,540,869,873,879,883,540,540,540,540,540,899,540,540,540,540,540,540,540,3206,540,540,540,540,540,540,540,540,540,2205,540,540,540,540,540,540,561,561,920,561,561,561,561,939,943,949,561,954,561,561,561,561,585,585,585,585,0,0,0,0,0,2728,0,0,1016,1022,585,1027,585,585,585,585,585,1044,585,585,585,585,585,1058,0,0,0,540,993,585,561,540,540,899,540,540,561,561,971,561,561,561,561,561,0,585,585,993,585,585,585,585,1012,1149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2784,0,0,0,1200,0,0,0,0,0,0,0,0,0,0,0,1211,1227,0,0,1099,0,0,0,1233,0,1235,0,0,0,0,0,0,0,3176,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1243,0,0,0,0,0,0,0,0,0,0,1249,0,0,0,0,1670,0,0,0,0,0,0,1674,0,0,0,0,0,0,743,0,0,0,0,0,0,0,0,0,0,0,0,0,2753,2754,0,1252,1200,0,1233,1255,0,1258,0,0,0,0,0,1130,0,0,0,0,0,1597,0,0,0,1600,0,0,1603,0,0,0,0,0,843,0,0,0,0,0,540,540,540,540,540,540,540,3320,540,540,540,540,540,540,540,540,540,1801,540,540,540,1806,540,540,0,1267,0,0,0,0,0,1267,0,0,1149,1267,0,1274,540,540,540,540,1282,540,540,540,1291,540,540,540,540,540,540,540,540,2204,540,540,540,540,540,540,540,540,540,2830,540,540,540,540,540,540,540,1279,540,540,540,540,1285,540,540,540,540,540,540,540,540,540,540,2194,540,540,540,540,540,540,1306,540,540,540,540,540,540,540,540,540,540,1317,540,540,540,540,540,2567,540,540,540,540,540,540,540,540,540,540,540,2545,540,540,540,540,1321,540,540,540,540,540,540,540,1327,540,540,540,1334,1336,540,540,540,540,1310,540,540,540,540,540,540,540,540,540,540,540,540,1335,540,540,540,1360,914,1362,561,561,561,561,1368,561,561,561,561,1374,561,561,561,561,1407,561,561,561,561,561,561,561,561,561,561,561,2293,561,561,561,561,561,561,1406,561,561,561,561,1411,561,561,561,561,561,561,561,561,1852,561,561,561,561,561,561,561,561,1866,561,561,561,561,561,561,561,1418,561,561,561,1425,1427,561,561,561,561,561,561,561,561,561,561,1865,561,561,561,561,561,561,561,561,1883,561,561,561,561,561,561,561,1459,585,585,585,585,1465,585,585,585,585,585,585,585,585,585,585,1533,585,585,585,585,585,1486,585,585,585,585,585,585,585,585,585,585,1497,585,585,585,585,585,585,1034,585,585,585,585,1052,585,585,585,561,1502,585,585,585,585,585,585,585,585,1509,585,585,585,1516,1518,585,585,585,585,585,2685,585,585,585,585,2689,585,585,585,2694,585,561,0,1290,1544,1470,1379,540,540,540,540,540,561,561,561,561,561,3249,561,3251,561,561,561,561,561,561,561,585,3534,585,3535,585,585,585,3539,585,0,1575,0,0,0,1581,0,0,0,0,0,0,0,0,0,0,1632,0,0,0,0,0,1592,1593,0,0,0,0,0,1599,0,0,0,0,0,0,0,0,1172,0,0,0,0,0,0,0,0,1639,0,0,0,0,0,0,0,1647,1648,0,0,0,0,0,0,0,2387968,0,0,0,0,0,0,0,0,0,2987,0,0,0,0,0,2990,0,1655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2482,0,0,0,1721,0,0,0,0,0,0,0,1718,0,0,0,0,0,0,300,300,300,300,0,300,300,300,300,300,540,540,540,1747,540,540,540,540,1753,540,540,540,540,540,540,540,540,1817,540,540,540,540,540,540,1360,540,540,540,1764,540,540,540,540,1768,540,540,540,540,540,540,540,540,2178,540,540,540,540,540,540,540,540,1287,1294,540,540,540,540,540,540,540,540,540,1779,540,540,1783,540,540,540,540,540,540,540,540,540,540,2206,2207,540,540,540,540,1809,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1360,914,561,561,561,561,561,561,561,561,561,561,561,561,1379,561,0,1074,585,585,1050,585,78112,1079,0,0,0,0,0,0,0,1106,0,0,0,0,0,0,1210,0,561,1845,561,561,561,561,561,561,561,561,561,561,1856,561,561,561,561,1423,561,561,561,561,561,561,561,561,561,561,561,3253,561,561,561,561,585,561,1860,561,561,561,561,561,561,561,561,561,561,1871,561,561,561,561,1424,561,561,561,561,561,561,561,561,561,561,561,26027,1920,585,585,585,585,1876,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,3244,561,561,585,2026,585,585,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,286720,0,0,0,0,2079,2080,0,0,2082,2083,0,0,0,0,0,0,0,3176,0,0,0,0,0,3306,0,0,0,0,0,0,2105,0,0,0,0,2108,2109,0,0,0,0,0,0,301,301,301,301,0,301,301,301,301,301,2115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2796,0,0,0,2147,0,0,0,0,0,0,0,0,0,0,0,0,2781,0,0,0,0,0,2157,0,0,0,0,0,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,0,540,2225,540,540,540,540,2230,540,540,540,540,540,540,540,540,0,0,0,0,1696,0,0,0,0,0,0,0,0,0,0,0,2070,0,0,0,0,0,2242,0,561,561,561,561,561,561,561,561,561,561,561,561,561,2618,561,561,561,561,561,2259,561,561,2263,561,561,561,2267,561,561,561,561,561,561,3610,561,3611,561,561,561,585,585,585,585,0,0,0,2030,0,1082,0,0,0,2032,585,2344,585,585,2348,585,585,585,2352,585,585,585,585,585,585,585,1528,585,585,585,585,585,585,1538,585,585,585,585,2361,585,585,2364,585,585,585,585,585,585,585,585,585,1935,1936,585,585,585,585,1943,585,585,2400,585,585,585,585,585,585,585,585,561,540,585,585,561,540,2718,540,540,0,0,0,2437,0,0,0,0,0,0,0,0,0,0,0,0,2794,0,0,0,0,2473,0,0,0,2477,0,0,0,0,0,0,0,0,0,0,1685,0,0,0,0,0,0,0,0,0,2501,0,0,0,0,0,0,0,0,0,0,2511,0,540,540,2525,540,540,540,540,540,540,540,540,540,2532,540,540,540,540,1324,540,540,540,540,540,540,540,540,540,540,540,1330,540,540,540,540,540,540,2550,540,540,2552,540,2553,540,540,540,540,540,540,540,540,540,2193,540,540,2196,540,540,540,540,2563,540,540,540,540,540,540,540,540,540,540,540,540,2574,540,540,540,540,2827,2828,540,540,540,540,2831,540,540,540,540,540,540,540,1751,540,540,540,540,540,540,540,540,540,1351,540,540,540,540,540,540,0,0,0,561,561,2587,561,561,561,561,561,561,561,561,561,561,2264,561,561,561,561,2269,561,561,561,2594,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2871,561,561,2609,561,561,561,2612,561,561,2614,561,2615,561,561,561,561,561,929,561,937,561,561,561,561,561,561,561,561,2629,561,561,561,561,561,561,561,561,561,561,2623,561,561,2627,561,561,561,561,561,561,561,561,561,2290,2291,561,561,561,561,561,561,561,0,2327,585,585,585,585,585,585,585,1507,585,585,585,585,585,585,585,585,561,540,585,561,3284,540,3286,561,561,561,561,2638,561,561,561,561,561,561,561,561,561,561,561,561,3099,561,561,561,0,0,2733,2734,0,0,0,0,0,0,0,0,0,0,0,0,3002,0,0,0,2785,0,2787,0,0,0,0,0,0,0,0,0,0,0,0,0,2432,0,0,0,0,0,0,2800,0,0,0,0,0,0,540,540,540,540,540,540,540,3217,540,540,540,540,540,540,540,540,540,540,3042,540,3044,540,540,540,540,540,540,2848,540,540,540,0,0,561,561,561,561,561,561,561,2318,561,561,561,561,561,0,0,0,561,561,2859,561,2862,561,561,561,561,2867,561,561,561,2870,561,561,561,561,2302,561,561,561,561,561,561,561,561,561,561,561,940,561,561,561,561,561,561,561,561,1394,561,561,561,561,561,561,561,1402,561,561,561,2896,561,561,561,0,0,585,585,585,585,585,585,585,1529,585,585,585,585,585,585,585,585,2661,585,585,585,585,585,585,585,585,585,2907,585,2910,585,585,585,585,2915,585,585,585,2918,585,585,585,585,585,1527,585,585,585,585,585,585,585,585,585,585,2367,585,585,585,585,585,585,585,585,2944,585,585,585,561,540,585,585,561,540,540,561,561,585,585,3373,0,0,0,3375,0,0,2980,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2979,2991,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3005,0,3006,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2989,0,561,561,561,561,3078,561,561,561,561,561,561,561,561,3086,561,561,561,561,2315,561,561,561,561,561,561,561,561,0,0,2327,0,0,0,585,585,585,585,585,585,585,585,585,3273,585,585,585,585,585,585,561,561,585,585,585,3107,585,585,585,585,585,585,585,585,585,585,1969,585,585,585,585,585,585,585,585,585,3119,585,585,585,585,585,585,585,585,3127,585,585,585,585,585,1901,540,585,585,561,540,540,540,540,561,561,3065,561,561,561,561,561,561,561,561,561,561,561,3479,585,585,585,585,585,0,3159,0,0,0,0,0,0,0,3165,0,0,0,0,0,0,0,3176,0,0,3304,0,0,0,0,0,0,3191,0,0,0,0,0,0,3195,3196,0,0,0,0,540,540,3601,540,3602,540,540,540,540,540,540,540,540,1752,540,540,540,540,540,540,540,540,1349,540,540,540,540,540,540,540,540,1288,540,540,540,540,540,540,540,540,1289,540,540,540,540,540,540,540,540,1290,540,540,540,540,1300,540,540,3279,585,585,585,585,585,585,585,561,540,585,561,540,540,561,561,561,561,2611,561,561,561,561,561,561,561,561,561,561,561,2304,561,561,561,561,561,561,561,561,561,1853,561,561,561,561,561,561,540,540,540,540,3317,540,540,540,3321,540,540,540,540,540,540,540,540,2192,540,540,540,540,540,540,2198,561,561,561,3339,561,561,561,561,561,561,561,561,561,561,561,561,2628,561,561,561,561,561,561,561,561,2305,561,561,561,561,561,561,561,561,561,3348,561,561,561,585,585,585,585,585,3353,585,585,585,3357,561,561,3572,561,561,561,561,561,561,561,561,3580,585,585,585,3584,3597,0,3598,3599,540,540,540,540,540,540,540,540,540,3605,3606,540,540,540,540,2837,540,540,540,540,540,540,540,540,540,540,540,1803,540,540,540,540,585,585,585,585,585,3619,3620,585,561,0,0,3623,0,0,0,540,585,585,561,540,540,895,540,540,561,561,967,561,561,3671,585,3672,0,540,561,585,0,540,561,585,0,540,561,585,585,585,585,585,1079,1559,0,0,0,1565,0,0,0,1571,2033,0,0,0,0,1577,2035,0,0,0,0,0,0,0,1682,0,1684,0,0,0,0,0,0,0,1712,0,0,1715,0,0,0,0,0,355,356,0,0,0,0,0,0,0,362,0,290,0,0,0,0,0,0,2762,0,0,0,0,0,0,0,2768,0,0,0,0,389,0,0,0,0,0,0,0,0,0,0,0,0,3198,0,540,540,473,473,487,0,0,487,356,356,356,509,356,356,356,356,473,473,580,580,580,580,580,580,580,604,604,604,557,604,604,604,604,604,580,580,557,580,604,580,604,1,12290,3,78112,540,870,540,540,540,540,540,540,540,540,540,904,540,540,540,540,540,540,2191,540,540,540,540,2195,540,2197,540,540,561,561,976,561,561,561,561,0,585,585,585,585,585,585,585,1013,1197,0,0,0,0,0,0,0,1197,0,0,0,0,0,0,0,0,0,0,0,0,540,540,540,540,540,540,540,540,1360,914,561,561,561,561,561,561,561,561,1371,561,561,561,1380,561,561,561,561,2639,561,561,561,561,561,561,561,561,561,561,561,2644,561,561,561,561,585,585,585,1462,585,585,585,1471,585,585,585,585,585,585,585,585,1472,585,1477,585,585,1481,585,585,1541,561,0,1291,585,1471,1380,540,540,540,540,540,561,561,561,561,585,585,585,585,0,0,0,0,2727,0,0,0,0,0,1576,0,0,0,1582,0,0,0,0,0,0,0,0,0,2737,0,0,0,0,0,2741,0,1607,0,0,0,0,0,0,0,1615,1616,0,0,0,0,0,0,303,204800,204800,0,205103,204800,1,12290,3,0,1761,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1774,1891,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,3087,561,561,561,561,1911,561,561,561,561,561,561,26027,0,585,585,585,585,585,585,1466,585,585,585,585,585,585,585,585,585,585,2928,585,585,585,585,585,585,585,585,585,1947,585,585,585,585,585,585,585,585,585,585,585,2001,585,585,585,585,585,585,585,1960,585,585,585,585,585,585,585,585,585,585,585,1973,0,0,2243,561,561,561,561,561,561,561,561,561,561,561,561,561,2634,561,561,2328,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2384,0,0,0,0,2425,0,0,0,0,0,0,0,0,0,0,0,2085,2086,0,0,0,0,2449,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3175,0,0,0,0,561,561,561,561,561,561,2590,561,561,561,561,561,561,2289,561,561,561,561,561,561,561,561,561,2292,561,561,561,561,561,561,561,561,561,2861,561,2863,561,561,561,561,561,561,561,561,561,561,2877,561,561,561,561,561,561,561,561,1899,561,561,561,561,561,1905,561,585,585,585,2909,585,2911,585,585,585,585,585,585,585,585,585,585,1984,585,585,585,585,585,585,585,3360,585,585,585,585,585,585,585,585,585,585,585,585,585,1056,585,561,0,3556,540,540,540,540,540,540,540,540,540,540,540,3567,540,561,561,561,561,2876,561,561,561,561,561,561,561,561,561,561,561,26027,0,585,585,585,585,561,561,561,561,3656,561,585,585,585,585,3660,585,0,0,0,0,0,0,2775,0,0,0,0,0,0,0,0,0,2124,0,0,0,0,0,0,0,0,357,0,0,0,0,0,0,362,0,290,0,0,0,0,0,0,2790,0,0,0,0,0,0,0,0,0,0,1147354,0,0,0,0,0,0,0,357,0,0,0,0,0,0,0,0,0,0,0,0,0,2509,0,0,357,0,367,0,0,367,0,0,0,0,0,0,0,0,0,0,0,0,0,2457,0,0,581,581,581,581,581,581,581,605,605,605,558,605,605,605,605,605,581,581,558,581,605,581,605,1,12290,3,78112,865,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2575,1385,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,3243,561,1775,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,3047,585,585,585,585,1961,585,585,585,585,585,585,585,585,585,585,585,2380,585,585,585,585,2756,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3315,0,2981,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3188,0,3298,0,3299,0,0,0,0,3176,0,0,0,0,0,0,0,0,0,3388,0,0,0,0,358,359,360,361,0,0,362,0,290,0,0,0,0,0,0,2973,0,0,0,0,0,0,0,0,0,362,362,362,702,0,0,0,0,359,0,358,0,0,0,69632,73728,0,0,0,0,425,65536,0,0,0,0,1710,1711,0,0,0,1714,0,0,0,0,0,1718,425,425,0,425,0,359,425,0,456,0,0,0,0,0,0,0,1102,0,0,0,0,1263,1264,0,0,0,0,0,497,497,0,504,504,504,504,510,511,504,504,524,524,524,524,456,456,456,456,456,456,456,456,524,524,524,524,524,524,524,559,582,559,582,559,559,582,559,606,582,582,582,582,582,582,582,606,606,606,559,606,606,606,606,606,582,582,620,625,606,625,631,1,12290,3,78112,0,0,0,540,585,585,561,540,540,900,540,540,561,561,972,561,561,561,561,561,0,585,585,585,585,585,585,585,585,1934,585,585,585,585,585,585,585,0,0,2104,0,0,0,0,0,0,0,0,0,0,0,0,0,2740,0,0,0,0,0,561,2245,561,561,561,561,561,561,561,561,561,561,561,3533,585,585,585,585,585,585,585,585,585,3494,561,0,0,0,0,0,0,585,2330,585,585,585,585,585,585,585,585,585,585,585,585,585,1482,585,585,540,2549,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2237,0,540,540,2577,540,540,540,540,540,540,540,540,540,540,0,0,0,0,0,1611,0,0,1614,0,0,0,0,0,0,0,443,0,0,0,0,0,0,0,0,0,2891776,0,0,0,0,0,2392064,583,583,583,583,583,583,583,607,607,607,560,607,607,607,607,607,583,583,560,583,607,583,607,1,12290,3,78112,705,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,155648,866,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,3224,1136,0,0,0,0,0,0,0,0,0,0,362,362,0,0,0,0,0,1659,0,0,0,0,0,0,0,0,0,0,780,0,0,0,0,786,561,585,585,585,585,585,1079,1560,0,0,0,1566,0,0,0,1572,0,0,0,1578,0,0,0,0,0,0,0,0,0,0,0,0,3313,0,0,540,2199,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2547,540,2535,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2822,540,561,561,561,2597,561,561,561,561,561,561,561,561,561,561,561,561,2317,561,561,2320,2321,561,561,0,0,0,0,0,0,647,0,0,0,0,0,0,743,540,540,540,540,540,540,540,3331,540,540,561,561,561,561,561,561,561,561,561,561,3072,561,561,561,0,0,0,540,585,585,561,1064,540,540,905,540,1069,561,561,977,561,561,561,561,0,585,585,585,585,585,585,585,585,1951,585,585,585,585,585,585,585,0,0,1594,0,0,0,0,0,0,0,0,0,0,0,0,0,2767,0,0,561,561,1846,561,561,561,561,561,561,561,561,561,561,561,561,561,2645,561,561,585,585,585,1977,585,585,585,585,585,585,585,585,585,585,585,585,2692,585,585,585,540,540,540,2188,540,2190,540,540,540,540,540,540,540,540,540,540,561,561,561,3334,561,561,0,0,0,561,561,561,2247,561,561,561,561,561,561,561,561,561,2613,561,561,561,561,561,561,561,2619,561,561,2273,561,561,561,561,561,561,561,561,561,561,561,561,561,561,3242,561,561,0,585,585,585,2332,585,585,585,585,585,585,585,585,585,585,585,2408,540,585,585,561,561,2647,0,0,0,0,0,0,585,585,585,585,585,585,585,585,2687,585,585,2691,585,585,585,585,585,585,585,585,2684,585,585,585,585,585,585,585,585,585,585,585,2916,585,585,585,585,561,561,585,585,585,585,585,3109,585,585,585,585,585,585,585,585,2702,585,585,585,585,585,585,585,0,1134592,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225706,0,0,1134592,0,0,0,1134592,1134592,0,0,1134592,0,0,1134592,0,1134592,0,0,0,1134592,1135005,1135005,0,0,0,0,0,1135005,0,1134592,1134592,0,0,0,0,1135202,1135202,1135202,1135202,1134592,1135202,1135202,1135202,1135202,1135202,0,1134592,1134592,1134592,1134592,1135202,1134592,1135202,1,12290,3,0,0,0,0,2134016,0,0,0,0,0,0,0,0,1138688,0,0,0,0,0,1670,0,0,0,0,0,0,0,0,0,0,0,2125824,2126738,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,2125824,2125824,2125824,2125824,2424832,2433024,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,987,2125824,2125824,2125824,2125824,2424832,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,457,457,1147354,457,457,457,457,457,457,457,457,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,0,0,0,0,0,0,0,0,0,2792,0,0,0,0,0,0,457,0,0,0,1147354,1147354,1147354,1147405,1147405,1147354,1147405,1147405,1,12290,3,0,0,0,0,2042,0,0,2045,2046,0,0,0,2050,0,0,0,0,0,680,0,0,0,0,0,0,0,0,0,0,1221,0,0,0,0,0,0,1142784,0,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3137536,2125824,2940928,2940928,2940928,0,0,0,0,0,0,305,440,448,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,1159168,0,0,1159168,0,1159168,1159168,0,1159168,0,1159168,1159168,1159168,1159168,1159168,1159168,1159168,0,0,0,0,0,0,0,0,0,2802,0,540,540,540,540,540,1159168,1159168,0,1159168,1159168,0,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,0,1159168,1159168,0,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1,12290,3,0,0,0,0,2053,0,2054,0,0,0,0,0,0,0,0,0,799,0,799,0,0,0,0,0,0,0,2134016,0,0,0,0,0,0,0,0,0,1163264,0,0,0,0,0,155648,155648,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,358,0,913,2125824,2125824,2125824,2125824,2424832,2433024,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,1452,2125824,2125824,2125824,2125824,2424832,106496,0,106496,106496,0,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,0,0,106496,0,106496,106496,106496,106496,106496,106496,106496,106496,0,0,0,0,0,0,0,0,0,0,2183168,0,0,0,0,0,0,0,0,2134016,0,0,0,0,0,0,0,0,0,0,0,0,0,2782,2783,0,0,0,0,3117056,0,0,0,0,0,0,0,0,0,0,0,0,163840,0,0,0,0,3043328,0,3149824,2936832,0,2760704,0,0,0,0,0,2953216,0,0,2826240,2875392,0,0,0,0,0,0,2834432,0,3227648,2568192,0,0,0,0,2564096,0,2748416,2879488,0,0,0,0,0,0,0,0,0,0,2179072,2179072,2179072,3137536,2125824,2125824,2498560,2125824,2125824,2125824,2555904,2564096,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2654208,2678784,2760704,2764800,2785280,2854912,2969600,2125824,3006464,2125824,3018752,2125824,2125824],r.EXPECTED=[260,268,276,283,296,304,881,312,318,331,366,339,350,361,369,342,288,886,1555,1545,377,384,1551,392,400,415,423,431,439,447,455,463,486,553,490,500,500,499,498,500,500,500,500,500,500,500,500,500,500,500,500,500,500,500,500,500,500,353,1871,509,517,525,1149,688,533,1759,407,548,949,561,323,569,1480,1303,866,577,1034,592,596,1439,1444,604,1857,628,636,644,1919,1049,652,673,660,668,681,696,995,710,718,731,1324,739,761,1116,776,784,792,1170,1200,1204,807,843,851,859,894,902,910,723,918,926,934,942,753,957,1568,965,980,611,988,1738,1003,1011,616,1185,1827,871,1539,1029,1042,1418,584,1424,972,1057,1065,1073,1598,1087,1095,1103,1111,1134,1142,768,478,1163,1289,620,1155,1178,876,1620,1643,1193,702,1812,799,1789,1212,1753,1218,1226,1234,1242,500,1250,1258,828,1266,1274,1282,1297,1850,1311,1319,1332,1079,540,1345,1017,1337,1359,1021,1367,1375,1390,1398,1403,1411,1432,1452,1460,1468,1476,1488,1496,1382,1516,1524,1532,1563,1576,746,1584,1592,1502,1606,1614,814,1628,1636,469,821,1661,1665,1673,1678,1686,1694,1702,1710,1718,501,1726,1734,1746,1767,1775,1783,1351,1126,1797,1805,1121,835,1820,474,1835,1843,1865,1508,1879,1649,1653,1887,1892,1900,1908,1916,500,500,1927,1975,1928,1939,1939,1939,1934,1938,1939,1930,1943,1950,1946,1954,1958,1961,1964,1968,1972,1979,2007,2007,2007,3094,2007,1983,3521,2007,2812,2007,2007,2007,2007,2779,2007,2007,2132,2007,4152,3820,3824,1987,2098,1994,2e3,2006,2007,2007,3996,2007,2007,2012,4079,3820,3824,3824,3824,3824,2019,2097,2097,2026,2170,2032,2007,2007,2007,2007,2919,2007,2428,3887,2007,3734,2038,2089,2007,2007,2007,3390,3824,3824,2045,2097,2097,2097,2097,2097,2099,1996,2067,2059,2063,2003,2007,2007,2007,2007,2007,2259,3005,2007,3049,2007,2007,2007,3818,3820,3820,3820,3820,2133,3824,3824,3824,3824,3824,2055,3820,2139,3824,3824,3824,3827,2097,2097,2022,2072,2007,2007,4080,2007,2162,2077,2007,2007,2779,3400,3820,3820,2053,3824,3825,2097,2097,2084,2072,2088,4151,2385,2007,2007,2007,2007,3112,2752,3820,2052,3824,2095,2097,2104,2778,2050,3823,2095,2115,2129,3821,3826,1989,3390,3822,3827,1990,2137,2141,2149,3819,2141,2159,2167,2048,2174,2028,2181,2184,2188,2192,2202,2202,2193,2197,2201,2203,2207,2211,2215,2219,2222,2226,2230,2234,2238,2732,2242,2007,2007,2737,2247,2007,2007,2007,3028,4134,2007,2007,2007,3213,2007,2007,2007,2007,2702,3310,2007,3694,2243,2007,4531,2253,2007,2007,2007,2007,2007,4488,2007,2007,2007,4489,2007,2007,2007,2007,2007,2007,2007,2007,4297,2280,2282,2286,2289,2293,2297,2301,2662,2386,2007,2007,2007,2007,2387,2307,2314,2318,4376,4208,2325,2681,3075,3584,2645,2353,2359,2620,2007,2007,2381,2363,2007,2007,3675,2007,3534,4411,3291,4070,3348,2391,2007,2395,2399,2007,2007,2007,2007,3092,3298,2007,2007,2402,2007,2007,2007,3382,2007,2007,2418,3423,2432,2007,2007,2007,2007,2797,2433,2797,2457,2007,2007,2007,2007,2463,2007,2007,3716,3131,2917,2007,2007,3777,4457,4344,2470,2007,2007,2007,2477,2007,2007,2007,2484,2007,2107,3702,2007,3700,2493,2007,2111,2007,2007,3723,3037,2007,2007,2007,2090,3072,2007,2007,2007,2007,2261,3346,2007,2007,2500,2007,2505,4255,4115,4254,2007,4238,2510,4117,3651,3491,2511,4118,4239,4255,3650,4117,2516,4116,4117,3593,3670,3596,2528,2531,2535,2538,2542,2007,3509,2620,4365,4173,2562,2566,2570,2007,2674,2672,3782,2574,2007,3457,2579,2007,2501,2007,4424,3255,2555,2588,4214,4424,4450,2584,2592,2599,3102,4176,2007,2007,3778,2008,2342,4482,2348,4126,4353,2007,2007,2007,2721,2607,2007,2007,2007,3379,2007,2007,2007,3480,2619,2007,4362,2007,4150,4231,2625,4223,2632,2636,2007,4444,2654,2007,2007,2007,2007,3897,2007,2007,4225,2675,2642,2007,2007,2007,2007,4443,2653,4024,2007,4424,4341,2118,4304,2679,2007,2007,3794,2734,2268,4056,2403,2007,2007,3896,2007,2655,2910,4541,3011,2685,2775,2007,2007,2007,3576,2686,2007,2007,4010,3290,2007,2007,3151,3295,3238,2007,2697,2007,3451,2403,4245,2586,4285,2701,3577,2715,2007,2007,2007,3620,2706,2007,2007,2007,2007,2713,2775,2007,2007,4082,3399,2007,2007,4082,3399,2741,2769,2855,2774,2007,3410,2751,2007,2007,4104,2007,2007,2007,2007,2506,4140,4109,4114,3788,2803,4147,2007,2007,4385,3699,2007,3534,4411,2007,2041,4469,4448,2007,2007,2007,2709,3410,2751,2702,2784,3450,4048,2121,2770,3436,2007,3434,3438,2007,2791,2007,2795,2801,2328,2810,2787,2452,2816,2453,2007,2443,2450,2424,2465,2007,2007,2007,2007,3098,2007,2007,2007,2007,3372,2007,2007,2007,2007,3389,3820,3820,3820,2163,3824,3824,3824,3824,4039,2821,2787,2832,2786,3985,2838,2843,4030,3312,2839,2844,4031,4431,2848,2834,2852,2859,2860,2177,2864,3301,4460,4463,2871,4547,2875,2879,2883,2886,2890,2894,2897,2899,2900,2007,2007,2904,2007,3808,2910,4541,3081,2914,2007,2007,2924,2928,2937,2944,2952,2961,2968,3274,2970,2007,2473,2408,2007,2007,2007,2007,2414,3024,2007,2495,2976,2980,4495,4081,2986,2999,2007,2007,2007,2007,2007,3335,2007,2489,2007,3285,2007,3286,2007,3109,2656,3009,3015,3021,3139,2007,4251,2344,3032,2007,2007,2007,2007,3722,3036,2007,2612,2007,2007,3782,2574,2007,3508,4541,3046,3053,2702,3058,2007,2007,3062,3067,2007,2007,2007,2007,3063,2007,2007,2007,3691,2007,2007,2007,2007,2338,3741,2007,2007,3119,2007,2007,2007,3125,2007,2007,2007,2550,4047,2007,2007,2920,3125,2007,2007,3428,4501,2355,3026,2007,2615,2654,4143,3807,3464,2520,2524,3111,2918,2007,3114,3109,3780,3113,3150,3110,3781,3147,4236,3779,2920,3137,2919,2920,3489,4183,3144,3155,2155,2007,2007,2007,4522,3741,2007,3667,2007,3121,3163,3167,3171,3175,3179,3183,3187,3191,2007,2007,2817,3354,2007,2765,3195,3974,3201,3218,4237,3222,3226,3236,4136,3242,3713,3038,3248,3246,2007,2007,2007,2575,2690,2007,2007,2007,2007,4428,2007,2007,2007,2249,4402,4409,2007,2007,3231,3253,2007,2765,3195,3974,3259,3475,4398,3265,3269,3278,2007,2007,3282,2007,2647,2638,3815,3004,2336,2007,2007,2007,3352,2007,2765,3195,2780,3316,2068,3260,3320,3417,3327,3333,2007,2719,3457,2007,2725,2730,2741,4471,3360,3364,3407,2007,2007,2007,3368,2007,2736,3608,3079,3085,3140,2702,4437,3054,3399,2007,2007,2007,4081,3398,2007,2745,2007,2007,3576,2749,2007,2007,2719,2756,2763,3971,3448,2007,2007,3455,2007,2007,3455,2007,2255,2007,3975,3472,3484,2007,3497,2971,3449,2972,2007,3503,3273,4555,4530,4554,3513,4094,4553,3271,4553,4095,4554,3272,4093,4528,3271,3515,4528,4529,2007,4379,2620,3519,2007,3525,4151,3529,3538,3542,3546,3550,3554,3558,3562,3566,2828,3729,2918,2410,4192,3571,3230,4556,3575,3581,3356,3619,3590,2007,2007,4378,3676,2007,3534,4488,2007,2948,3600,2007,2867,3355,2007,2007,2007,2007,3339,4185,3612,2007,2007,2580,3618,2007,2007,2549,2551,2386,2007,2007,3132,3630,2007,2007,2608,3641,2007,3647,4412,2007,3655,3866,3249,3663,2007,2007,2007,2660,2007,2007,2666,2007,4405,2007,2007,2007,2007,2337,3687,2007,2594,3230,4081,3698,2007,2805,3682,2007,2007,2007,3686,2007,2007,2824,2007,2007,2007,2007,2826,4487,2995,2957,2349,3606,2007,2007,3706,2007,4081,3710,2007,2595,2007,3720,4485,2946,3727,3068,3733,2007,3738,2620,2007,2940,2777,3753,3945,3949,3954,3868,2007,3747,2620,2007,2007,3747,2620,3751,2378,2034,3757,3764,3636,2007,4288,2007,2007,4288,3428,3769,2466,2015,3765,3773,2007,3786,2007,3127,2007,2954,2007,2007,3775,2007,2007,3775,2007,2007,2956,2007,2548,2459,2007,3792,3751,3798,3760,3637,2602,2007,3149,4508,2110,2488,2007,3701,2494,2007,2007,4046,2007,3780,2603,2007,3802,3806,3812,3837,4356,3836,3831,2331,3835,3677,3841,2332,3836,3678,4221,3854,3848,4359,3847,3845,3852,3877,3863,3874,3881,3884,2007,2007,2007,2007,2480,2437,2007,2007,2964,2776,2007,3893,3901,3905,3909,3913,3917,3921,3925,3929,3933,3937,2007,2007,2982,4068,4074,4253,2007,2007,3212,4493,2007,2007,2007,2248,3959,3964,3968,4202,3979,3983,3989,3950,2007,4e3,4007,4014,2007,2007,2963,2421,3753,4019,4023,2040,3626,4028,4035,2007,3229,3106,3743,3026,2726,2007,2007,2007,4080,2007,4152,3820,3820,2054,3824,3824,2096,2097,2097,2097,2097,2100,2143,4043,2007,2007,3205,3209,2007,2007,2007,2990,2994,2007,2007,2248,3207,2007,2007,2007,3197,4052,2310,4253,4060,2669,2007,4114,2007,2007,2007,2628,3210,2007,2007,2007,2506,4064,2007,2007,3232,3254,3975,2007,4119,3159,2962,4078,3753,4086,2404,2007,4090,2620,4114,2007,2007,2007,4099,2620,2007,2007,3376,2007,2007,2007,2007,2933,4100,4108,4113,2007,2439,4123,3603,4423,2007,3870,3133,2007,2007,2007,4130,2007,3386,2068,4158,3394,3506,2007,2007,2007,4526,2007,2007,2007,4526,2007,3992,2370,4535,4156,2920,2007,2007,4162,2007,2007,2007,4162,2558,2007,4166,4170,2007,4180,2007,2007,4189,2007,2007,4196,4200,4206,4212,3859,4218,2007,2693,2007,2007,4229,2007,3586,2152,2145,4235,3487,2007,4243,3642,2775,3643,4249,4440,2806,3659,4259,4264,3657,3857,3940,2080,3658,3858,3941,4274,3939,3857,4278,3856,3857,4282,3017,4292,4293,4270,2321,4301,4003,4311,4315,4319,4323,4327,4330,4334,4338,2007,2007,2007,2007,2621,3230,3492,3042,4267,3478,2931,3955,4350,4514,4396,3306,3462,3468,3444,2007,4516,2007,2007,2446,2007,2007,2007,2759,2375,3002,4369,4307,2007,4015,2007,2546,2544,4373,4383,2007,2007,2007,4389,3478,2931,2068,3670,3532,4437,2007,4393,2007,2007,3427,3432,2303,3443,3422,2007,2007,4416,4081,2007,2091,3671,3422,3203,4420,2007,2007,2007,2007,2007,3342,2007,3388,3404,3414,3421,2007,2254,3381,3994,2931,4346,4454,4260,3567,3304,2007,3439,3100,2007,2007,2007,2007,3089,2007,4467,2007,2007,2007,2007,2007,3214,2124,2007,2007,4475,2365,3889,3499,2007,3616,2007,2007,2007,2337,3624,2007,2906,2007,3329,3633,2007,2499,3960,4434,2007,2007,2007,2007,4479,2007,2007,3493,2265,2007,2272,3323,2276,4499,2125,2007,4505,2367,4512,2007,4520,2512,2007,2007,3211,4539,2007,3211,4539,2073,4037,4454,2007,2007,2007,4545,2007,2649,2007,2007,4551,3115,4157,3422,2007,2369,2007,2370,2007,2371,3261,2007,2007,2007,2007,2007,2007,2007,3458,2007,2007,2080,4576,4599,4601,4601,4596,4590,4601,4601,5213,4588,4600,4601,4601,4601,4601,4601,4601,4605,4601,4601,4624,4632,4592,4611,4609,4615,4626,4639,4641,4646,4628,4651,4653,4653,4647,4635,4657,4642,4661,4665,4669,4673,4676,4680,4682,4686,4690,4560,6008,4569,4572,6007,4694,4697,4751,6953,4752,5681,6931,4707,6326,4735,4735,4712,4752,4752,5273,4792,6322,4707,4735,5096,4719,4736,5094,5098,4748,4748,4750,4752,4752,4752,4752,4564,5125,5113,4729,5190,6233,4752,5981,4707,4707,4734,4735,4711,4791,6324,5279,4792,6322,4707,4735,6320,4748,4749,4752,4752,4582,6339,6230,4730,5190,4752,4752,4752,6892,4707,4707,6327,4735,4714,6320,6322,6322,6322,6324,4707,4707,4707,4710,4735,4793,4788,6324,4709,4765,5096,5096,4748,4752,4752,4752,4758,4721,4752,4752,4752,4777,4792,4788,4709,4752,4561,4752,5750,4735,4735,4794,6324,4752,5743,4752,4752,4752,4757,4752,4707,4709,4735,4735,4735,4735,4711,4791,6322,4792,5276,4722,4752,4563,5399,6420,4752,6238,5201,5242,4735,4735,4785,4752,4563,5663,4752,4563,6254,5386,5386,5386,4752,4752,4752,5746,4752,6321,6322,6322,6322,6323,6320,6322,6322,6323,4707,4707,4707,4735,4752,4752,4584,5193,4735,4735,4713,4752,4563,6913,6240,6240,6240,6929,4735,4735,4714,5739,6322,6322,6322,6325,6322,6324,4707,4710,4740,5096,5097,4707,4709,4735,4752,4698,4752,6653,4709,5467,5467,5467,4752,5513,5517,5483,4804,4818,4798,4802,4844,4844,4844,4808,4815,4812,4828,4832,4842,4844,4844,4844,4844,4845,4838,4926,4844,4852,4850,4913,4853,4857,4861,4865,4835,4869,4872,4879,4876,4881,4883,4887,4889,4891,4893,4900,4900,4897,4907,4910,4923,4846,4916,4919,4930,4933,4935,4939,4903,4943,4752,4752,4752,4948,4715,4752,4752,4752,4977,6877,4954,4752,4752,4752,4978,6115,4759,4759,4752,4752,4753,6060,5603,6128,4975,4752,4714,4752,6620,4752,6554,6723,6126,4984,5424,5283,4988,4992,4993,4993,4993,4997,5e3,5002,5006,5009,5013,5017,5017,5019,5023,5024,5028,5030,5034,5038,5037,5042,5046,4752,4752,4760,5740,4752,5065,4752,5423,4752,4725,4724,4723,4565,5750,4752,5657,4752,5671,5072,4752,4743,4752,5390,5082,4752,6010,4752,4751,5572,6253,5505,4752,5971,6389,5056,4752,4752,4752,5074,5535,6350,4752,4752,6930,5401,4752,5494,4752,4752,4752,5125,4752,6136,6009,4752,5110,6936,6567,5134,5141,5150,5143,5152,4752,4752,4754,4752,4752,4752,4755,4752,4752,4752,4752,6233,6232,4752,4752,6347,4752,4752,6356,5137,5161,5250,4752,4752,4752,5060,6584,5222,5223,5186,4752,6234,5190,6523,5174,5165,5171,5181,4752,4752,4752,5190,4752,5143,5180,4752,4752,4756,6223,4752,6358,5781,5171,4752,6600,5055,5251,4752,5745,4752,4752,6357,5166,4752,5700,4752,6585,5199,5167,5205,5153,4752,5211,5207,4752,4752,4757,5714,4752,5698,4752,5191,5136,5142,5151,5221,6420,4752,4752,4757,5946,5568,5167,6098,6009,4752,5973,4752,5175,5166,6097,5153,4752,4752,4583,6238,5201,5241,4752,4752,6357,5780,6547,5167,5243,4752,4752,6357,5781,4960,4752,6600,5250,5242,4752,4752,4752,5291,5782,5243,4752,4752,4752,5293,6836,6078,4752,4752,4752,5346,5256,4752,4752,4752,5355,4752,6927,4752,4752,4752,5377,5972,4752,4752,6928,5301,5305,5306,5306,5307,5306,5306,5311,5314,5316,5318,5320,5320,5320,5320,5321,5325,5325,5325,5327,5325,5325,5331,5331,4752,4752,4761,6855,4752,4752,4960,4752,4752,4752,5217,4752,6405,5353,5571,4752,6913,6240,5376,5259,4752,5068,5397,4752,5067,5385,5396,4752,6696,6700,5406,4752,4752,4752,5471,5263,4752,4752,4752,5531,6256,5416,4752,5572,4752,5665,4752,5365,4752,5664,4752,4752,4961,4961,4961,5670,4752,6018,4752,4752,6375,6009,4752,6535,4752,4752,4752,5581,5083,5429,6534,4752,4752,6428,6383,5341,6009,4752,4752,4752,5187,5417,4752,5573,4753,5358,6639,6644,6017,4752,6260,6601,4752,6413,4752,4752,4968,5118,5439,5444,5449,4752,4752,6578,5109,4752,4752,4753,6958,5445,5153,4752,4752,4752,5387,6259,6593,5458,4752,4752,5050,5054,5721,5336,5342,4752,4752,6591,4752,4752,6698,4752,4752,4752,5434,5465,6603,4752,4752,5080,4752,6569,5473,5477,5445,6429,5475,5869,5481,4752,4752,6717,6721,4752,5720,5335,5491,6602,4752,4752,4752,5747,5525,5477,5500,4752,4752,6740,6908,6569,5524,5476,5499,6429,4752,4752,6712,4752,4752,5084,5430,6860,4752,4752,4752,5748,5187,4752,4752,5223,4752,5745,6422,4752,4752,4752,6219,4752,5571,4752,5665,6571,5548,5869,5516,5812,5477,5871,4752,4752,4752,5750,5720,5335,5504,4752,4752,6868,5157,4752,6861,4752,4752,5111,6426,5386,5748,5510,4752,4752,5870,6429,4752,4752,4752,5746,4752,4752,4752,4760,5529,4752,4752,5560,5567,4752,4752,4757,5546,5554,6429,4752,6713,4752,4752,5191,5176,5559,5113,4752,4752,5192,4752,4752,4752,6727,4752,6319,4752,4752,5228,4752,5568,4752,4752,4752,5811,5225,6277,5386,4752,4752,6874,6878,4752,4752,6206,4752,5720,5814,5569,4752,5687,5691,5225,6255,6934,5689,5570,5570,4752,5944,5690,4752,5689,5570,4752,5688,4752,6238,5563,4752,4753,5522,5548,5687,5577,4752,5687,5577,6238,5401,6651,4752,4753,6054,6070,5386,6364,5586,6009,6256,5600,4752,6419,5378,5602,5607,5620,5611,5619,5614,5615,5615,5615,5615,5624,5631,5628,5635,5637,5637,5637,5642,5638,5646,5646,5646,5646,4752,4752,6449,4752,4752,5247,5251,6259,4778,5412,6009,4752,5705,4752,6945,4752,4752,4752,6239,4752,4752,5678,4752,4752,5650,4752,5656,5652,4752,4756,4752,4752,6103,4752,5661,5669,5675,4752,4757,5847,5927,4752,5685,4752,6232,4752,5377,6310,4752,4752,5695,4752,4752,5289,5389,4752,4752,5957,6439,4752,4752,4752,5845,5211,5251,4752,6437,6441,4752,4752,4752,5860,4581,5709,4752,4752,5227,4752,5718,4752,4752,5356,6055,5761,5726,5732,5738,4752,5759,5763,5728,5734,4752,4752,4752,5980,5762,5727,5733,4752,4758,4752,4752,6124,5052,5056,4779,6862,4752,4752,5380,5228,4752,5767,6936,4752,6937,6934,5378,4752,5228,5704,4752,4752,6947,4752,4752,5356,5549,5774,5786,6683,5251,5787,6684,4752,4752,4752,5990,6258,4778,5412,6009,4752,6557,5986,4752,4775,4752,5744,6946,4752,4752,4752,6094,6233,4752,4752,5791,4752,5805,6900,6682,6686,6686,4752,4752,4752,6117,5774,6902,6684,4752,4950,5088,5102,5411,6870,4752,4752,5380,6635,5768,6937,5802,4744,5810,6902,6685,4752,4959,4752,4752,4702,4752,4752,5809,6901,5818,4752,4752,5421,4954,4752,5798,4780,6870,5972,4752,4752,4752,6241,4752,4752,4752,5188,6e3,5824,5251,4752,4752,5842,5822,5828,4752,4752,5453,5153,5281,4752,4752,4752,6238,6233,6238,4752,4752,5971,5570,4752,4752,6241,5972,4752,6241,4752,4752,6238,4752,4752,4752,5230,6239,4752,6241,5973,5838,5237,4752,6254,6635,5226,5851,6443,5858,5866,5875,5879,5884,5886,5880,5890,5893,5896,5899,5901,5903,5907,5907,5913,5907,5907,5909,5920,5921,5917,5917,5919,5917,5917,5918,5917,5931,5265,4752,4752,5460,5360,4757,4752,6931,4752,4752,4752,5461,5361,6613,5542,4752,4752,4752,6896,5776,6882,4752,4752,5742,5936,5195,4752,6225,5942,6564,5950,5953,5961,4752,4961,4752,4752,4752,6e3,6367,5966,6419,4752,4752,5487,4752,6294,4752,6293,5985,4752,5990,5994,4752,4752,4752,6298,6367,5927,4752,4752,4752,6243,4759,6930,4752,4752,5741,4752,4752,6938,6005,6421,6050,6014,4752,4752,5505,4752,4752,4752,6437,4752,6209,5755,5755,6022,6026,6110,4752,4962,4961,4752,4752,6111,4752,4752,4752,6317,6031,6026,6110,4752,4966,4752,5225,5398,4752,5400,4752,4752,4752,6254,4752,6366,5926,4752,4752,5561,5225,5266,4752,4752,5224,6352,4752,6628,4752,4972,5386,5066,6048,5970,4752,4752,5573,5398,4752,6208,4752,4752,5596,4752,6059,5779,6064,4752,4977,4821,6882,6069,6065,4752,4752,5699,4752,4752,6001,5925,5251,4752,4752,4752,6247,4752,5739,4752,6353,4752,6629,4752,5973,4752,6569,6074,6089,6569,6084,6088,5251,6082,6086,6090,4752,4979,4579,4752,4752,4752,6422,4752,6423,6722,4752,4752,4752,6321,6322,5389,6627,4752,5971,4980,4580,4752,4752,4752,6320,4757,4752,5740,4752,5075,5968,4752,4977,5523,6665,6354,6627,4752,5972,4752,4752,6036,4753,6937,4752,4752,4752,6418,6252,4752,4752,4752,6423,6860,6869,4752,4752,5720,5813,5555,4752,4752,4752,5809,6354,6627,4752,4753,6937,4978,4581,4752,4752,4752,6429,4752,4979,4581,4752,4752,5722,5337,5263,4752,6861,6870,4752,5287,5297,4758,4752,5742,6353,6860,6869,4758,5740,5390,5998,6234,4752,4752,4752,6102,4752,5386,6234,5505,6935,4755,6239,4752,5971,4752,4752,4752,5386,4754,5720,4581,4752,4752,5741,6936,4752,6863,5739,4752,5076,4752,4752,5720,5335,5341,4752,6869,4752,6313,4752,6311,4752,6608,4752,4752,5745,4752,6259,4752,4618,6121,6232,6230,6230,5741,6935,4752,4752,6201,5189,4752,6134,6132,6140,6144,6151,6145,6145,6150,6146,6155,6159,6163,6167,6169,6174,6176,6169,6169,6170,6186,6187,6180,6180,6185,6180,6180,6181,6191,4752,4752,4752,6545,6229,6841,5573,5061,6250,4752,4752,4752,6569,5524,4752,6247,6251,4752,5107,4752,4752,4753,6719,6266,6265,6267,4752,5110,4752,5111,4752,5113,5111,4752,5956,4752,5192,4752,6621,5747,6333,4752,4752,5797,5191,6271,6276,5252,4961,4752,6281,6287,6251,4752,4752,4752,6570,6286,6291,4752,4752,5751,4752,5833,5832,5831,4752,5110,6077,4752,4752,6362,4752,4752,4770,4752,4752,4752,6717,5589,4752,6202,5190,4752,5110,6929,4752,4752,6307,4752,4752,6934,4752,4752,4752,6934,4759,6304,5573,4961,5831,5831,5831,4752,5112,4752,4752,5742,5580,4769,6009,4752,4752,6387,4752,5126,4752,6331,4961,4753,5534,5538,5542,4752,6282,5536,5540,4752,5112,6427,5932,5582,4771,4752,4752,4752,6546,5782,5243,4752,5579,5536,5540,5862,5538,5542,4752,5114,5993,4752,4961,4752,5797,4768,5153,4752,4752,5804,6899,5787,6318,4752,4752,5957,4752,6213,6334,4752,4752,4752,6731,4752,6234,6343,5539,6009,4752,4752,5769,4752,4752,5938,6343,5539,4752,6425,4961,4752,5193,4752,4752,6231,4752,5377,5401,4752,6254,6318,4752,4752,6255,4752,6425,4752,4752,5409,6311,4961,4752,4752,5823,4752,4752,4752,6240,4752,4752,4752,5103,5454,6009,4752,4752,5844,5146,5452,6377,4752,4752,5846,5145,6860,6009,4752,5190,6375,6009,6422,6424,4752,6868,4752,4752,4752,5388,5380,6254,6362,4752,5124,5122,4752,4752,6322,6322,6322,6322,4707,4707,4707,4707,4708,4735,4735,6381,4752,6009,5377,6389,4752,4752,6885,6009,4752,4752,6868,5377,6253,6887,4752,4752,6887,4752,4752,6886,4752,6403,5971,6255,4752,4752,5853,4752,4752,4752,6936,6255,6886,5971,6255,5191,4752,4752,5752,4752,4756,6589,6886,6401,6885,6885,4752,6886,5377,6885,6394,6394,4703,4703,4703,4752,5185,4752,4752,4757,5110,4960,5744,6398,4752,5187,6451,4752,4752,6409,4752,6411,5750,6215,6417,5744,6435,6217,4752,5189,6447,6457,6461,6462,6466,6486,6469,6484,6472,6478,6475,6480,6498,6492,6490,6496,6496,6500,6506,6506,6507,6504,6506,6506,6506,6511,6514,4752,4752,5854,4752,4752,4752,6619,4824,5749,6417,6518,4752,4752,4752,6756,5187,4752,4752,4752,6834,6431,4752,4752,4752,6836,5834,6009,6522,6527,6869,4752,6430,4752,5188,4752,5223,4752,4752,4752,6253,4752,6540,6551,6561,5402,6575,4752,4752,5945,4752,4752,6755,6009,4752,5188,5194,4752,4752,4752,6252,6255,4752,6756,5962,4752,5222,5392,5390,4752,6849,6848,4752,5231,6032,6027,6850,4752,4752,4752,6854,6619,4824,5749,6582,5518,4752,4752,4752,6861,4753,6634,4752,4752,5945,5691,4752,4752,6589,4752,4753,4752,4757,5561,4752,6597,4752,6607,4752,5235,4752,4752,4752,5225,6612,5541,4752,6617,5229,6351,5401,6625,4752,5753,4752,6633,5359,6640,6645,6009,4944,5540,4752,4752,5955,4752,6649,6238,5686,5686,5144,4752,5744,4752,4752,4752,4753,4980,6619,4824,6272,6654,5754,4753,4752,6311,4752,4752,6312,4752,4752,5355,5359,5550,6658,6009,5357,6678,4944,5541,4752,5571,4752,6597,6597,6597,6597,4752,4752,4752,6928,4752,4752,5110,6426,4752,5746,6423,4752,5266,4752,4564,4752,6662,5550,6671,6670,6009,4752,4752,5977,4752,6664,6669,5153,4752,5270,6423,5505,4823,5748,5401,5189,4752,4752,4752,5739,6322,5752,4753,4752,4752,5741,5390,4752,6675,6690,6429,6694,4752,4752,5193,6234,4824,5750,4752,5369,4752,4955,4752,4752,5385,5753,4756,4752,6239,4752,6240,4752,5349,4758,4752,6705,6429,4752,5372,4758,5592,4752,6705,6429,5572,6238,6913,4752,4752,6009,4752,4752,5712,4752,4752,6010,6536,4714,6709,4752,4752,6016,4752,4756,4752,6240,4752,5379,6255,4752,5388,4752,6257,6419,5074,6720,4752,4752,6042,4752,5749,4752,4752,4752,6929,4752,4752,5971,6717,6429,4752,4752,6042,5417,6914,6241,4752,5747,6233,4752,4752,4752,6926,4752,6729,4752,4752,4752,6933,6727,4563,4752,5747,6741,5389,5192,5222,4752,5986,4561,5748,4752,6936,6934,4562,5749,6934,5853,4563,6935,4752,5387,5748,4752,4752,6735,6371,4563,6936,6934,4752,4752,6739,6680,6421,4744,6300,6231,5091,4752,5389,5748,4752,4752,6701,4581,6039,6745,6748,4620,6733,6752,6760,6768,6762,6764,6771,6775,6779,6782,6784,6788,6790,6794,6797,6801,6804,6809,6808,6813,6815,6819,6817,6823,6827,6830,4752,5391,5223,5222,6421,4752,4752,4759,5112,4760,4752,5113,4752,5428,6533,4752,4752,6388,4752,4752,6393,4752,4752,6428,4752,4752,6428,6260,6840,5381,4752,6845,4584,4752,6043,4752,5495,4752,4752,4753,6197,4769,6859,6044,4752,4752,6195,5582,4752,6739,6907,5191,4752,6867,6915,4752,5506,5505,4752,5973,4752,4563,4752,5386,4752,5533,5537,5541,5389,5388,4752,4752,6232,4752,4752,5747,6741,6355,6235,4752,6543,6238,5400,4752,5188,4752,4752,6891,5777,5700,4752,5562,6253,4752,4752,6912,4752,4752,6932,4752,4752,6935,4752,4753,5435,5440,5445,5388,5388,4752,4752,6242,6042,4752,5739,6934,4752,5571,4752,5398,4752,4751,5401,5401,5399,5793,4753,6898,5778,4563,4752,5388,5749,6601,5747,6906,5192,6236,4752,6897,5777,4563,4752,5130,4752,4752,6338,4752,4752,6231,4752,4752,6920,4752,4752,4752,6261,4752,5775,6919,4752,5386,6258,4781,5595,5193,6237,4752,5571,4752,5399,4760,4752,5740,6935,4752,4752,6107,4752,4752,6924,4752,4752,6281,5535,6896,6942,4752,4752,6311,4752,4752,4752,6530,4759,4752,5740,6935,6951,4752,4752,4752,6311,5770,4977,6959,4752,4752,6312,5113,4752,6957,4752,4752,6313,4752,4752,4752,6453,2,4,8,262144,0,0,0,2147483648,1073741824,0,0,1075838976,2097152,2097152,268435456,4194432,4194560,4196352,270532608,2097152,4194304,50331648,0,0,0,4194304,0,0,541065216,541065216,-2143289344,-2143289344,4194304,4194304,4196352,-2143289344,4194304,4194432,37748736,541065216,-2143289344,4194304,4194304,4194304,4194304,4194304,4194304,4198144,4196352,8540160,4194304,4194304,4194304,4196352,276901888,4194304,4194304,8425488,4194304,1,0,1024,137363456,66,37748736,742391808,239075328,-1405091840,775946240,775946240,775946240,171966464,742391808,742391808,742391808,775946240,-1371537408,775946240,775946240,-1405091840,-1371537408,775946240,775946240,775946240,775946240,4718592,-1371537408,775946240,-1371537408,775946240,-1371537408,171966464,775946240,171966464,171966464,171966464,171966464,239075328,171966464,775946240,239075328,64,4718592,2097216,4720640,541589504,4194368,541589504,4194400,4194368,541065280,4194368,4194368,-2143289280,4194368,-2143285440,-2143285408,-2143285408,776470528,-2143285408,-2109730976,-2143285408,-2143285408,-2143285408,-2109730976,-2143285408,775946336,775946304,775946304,776470528,775946304,-1908404384,775946304,-1908404384,0,2097152,4194304,128,0,256,2048,0,0,16777216,16777216,16777216,16777216,64,64,64,64,96,96,96,64,0,0,0,24,64,0,96,96,0,0,0,288,8388608,0,0,8388608,4096,4096,4096,32,96,96,96,96,262144,96,96,1048576,128,0,1048576,0,0,2048,2048,2048,2048,0,0,0,0,1,0,0,0,2,0,0,0,3,96,96,128,128,2048,524288,268435456,536870912,1073741824,0,0,8388608,4096,0,64,0,2048,524288,536870912,0,64,524288,64,96,64,524288,524288,96,96,64,524288,96,64,80,528,524304,1048592,2097168,268435472,16,16,2,536936448,16,262160,16,536936448,16,17,17,20,16,48,16,16,20,48,64,128,1024,134217728,0,0,24,560,48,2097680,3145744,1048592,1048592,2097168,16,1049104,16,16,20,560,2097168,2097168,16,16,16,16,20,16,2097552,3146256,16,16,16,28,0,2,2098064,17,21,16,16,163577856,17,528,528,16,528,2228784,-161430188,-161429680,-161430188,-161430188,-161430188,-161429680,-161430188,-161429676,-160905388,-161429676,-161430188,-161429676,-161429676,-161429676,-161429676,-161429675,-161349072,-161349072,-161429675,-161349072,-161349072,-161349072,-161349072,-161347728,-161347728,-161347728,-161347728,-161298576,-160299088,-161298576,-161298572,-161298572,-161298572,-161298572,-18860267,-160774284,-18729163,-160774288,-160299084,-161298572,-160774284,-161298572,-161298572,16,16,28,16,16,112,21,53,146804757,146812949,0,16,0,48,3146256,2097680,1048592,146862101,146863389,-161429676,146863389,146863421,146863389,146863389,146863389,146863421,-161429740,-161429676,-160905388,-161298572,0,65536,524288,1048576,33554432,0,159383552,0,0,0,1157627904,-1073741824,0,0,0,300,142606336,0,8192,0,0,0,384,0,243269632,0,0,0,1862270976,1,32768,131328,131072,16777216,0,0,1,2,4,128,2097152,0,1073741825,2147483648,2147483648,8,16777216,1073774592,278528,1226014816,100665360,100665360,100665360,100665360,100665360,100665360,-2046818288,1091799136,-2044196848,1091799136,1091799136,1091799136,1091799136,1091799136,1091803360,1091799136,1091799136,1158908e3,1158908001,1192462432,1192462448,1192462448,1192462448,1192462448,1200851056,1091799393,1200851056,1200851056,1192462448,1870630720,1870647104,1870630720,1870647104,1870630720,1870647104,1870647104,1870647104,1870647104,1870647104,1870647120,1870647124,1870647124,1870647124,1870630736,1870655316,1870655316,1870655316,1870655317,1870655348,1870647120,1870647120,1870647120,1879019376,1879035760,1870647124,1879035760,1879035764,32768,131072,524288,2097152,8388608,16777216,134217728,268435456,1073741824,2147483648,131328,0,0,0,832,0,164096,0,0,0,520,4333568,1048576,1224736768,0,0,1,4,0,0,235712,0,1090519040,0,0,0,999,259072,1191182336,0,0,9437184,0,0,1048576,0,128,128,128,128,2048,2048,231744,0,0,0,1007,495424,7864320,1862270976,0,0,0,1024,0,0,0,63,52e4,1862270976,1862270976,16252928,0,0,16252928,0,0,0,1536,2147483648,64,98304,1048576,150994944,0,64,256,3584,16384,98304,393216,98304,393216,524288,1048576,2097152,4194304,2147483648,0,0,2097152,4194304,251658240,536870912,1073741824,0,0,8192,1073741824,1073741824,8388608,2097152,16777216,134217728,268435456,2048,65536,262144,524288,1048576,2097152,1048576,2097152,4194304,117440512,64,256,1536,16384,65536,117440512,134217728,536870912,1073741824,0,0,100663296,0,0,0,4096,0,0,0,64,0,0,128,-2113929216,64,256,1536,65536,262144,524288,4194304,16777216,100663296,134217728,536870912,1073741824,1048576,2097152,4194304,16777216,4194432,3145728,524288,2097152,134217728,268435456,65536,1048576,0,0,0,2048,0,0,134217728,0,0,0,15,16,524288,2097152,1073741824,2147483648,2147483648,0,1048576,2097152,67108864,1073741824,0,0,0,0,2097152,1073741824,2147483648,0,0,0,768,0,2097152,2147483648,0,-872415232,0,-872415232,67108864,134217728,1073741824,0,2147483648,0,0,0,8192,4096,0,0,1536,524288,64,64,96,64,0,524288,0,1073741824,2621440,1073741824,9476,512,0,32,384,8192,0,0,1,8,512,512,9476,134218240,1050624,262144,512,50331649,1275208192,4194312,4194312,4194312,4194312,541065224,4194312,4194312,4194344,-869654016,4203820,-869654016,-869654016,-869654016,-869654016,1279402504,1279402504,1279402504,1279402504,2143549415,2143549415,2143549415,2143549415,2143549415,2143549423,2143549415,2143549423,2143549423,2143549423,2143549423,16,32,256,1024,8192,33554432,8192,33554432,67108864,134217728,0,0,536870912,9216,0,0,1792,2147483648,0,1050624,0,0,1,14,16,32,1024,2048,77824,524288,0,512,139264,1275068416,512,2760704,-872415232,0,0,1856,2147483648,4203520,0,0,0,32768,0,0,0,58624,520,0,0,0,131072,0,0,0,512,0,1048576,0,1275068416,0,0,0,65536,0,0,0,12561,0,1007,1007,0,0,2048,524288,0,536870912,0,512,0,2048,1048576,0,0,40,0,2621440,0,0,2147483648,999,259072,4194304,25165824,100663296,402653184,1,102,384,512,5120,5120,8192,16384,229376,4194304,4194304,25165824,33554432,67108864,402653184,402653184,536870912,1073741824,0,0,2048,3145728,16777216,536870912,110,110,0,0,1,30,32,0,40,0,524288,64,96,1,6,96,384,512,1024,4096,8192,16384,229376,67108864,402653184,536870912,0,2,16,104,0,104,104,8192,33554432,134217728,0,0,2048,100663296,0,229376,25165824,33554432,402653184,536870912,8192,33554432,0,0,0,17408,0,524288,2097152,0,0,2048,268435456,536870912,0,0,268435456,49152,2,4,32,64,256,512,1024,8,8,0,0,1,64,128,3584,16384,3145728,16777216,67108864,134217728,805306368,1073741824,0,0,4,64,256,1024,4096,8192,65536,524288,98304,131072,25165824,268435456,536870912,0,2,4,256,1024,0,2048,0,98304,131072,16777216,268435456,0,0,0,262144,0,0,65536,268435456,0,0,1,128,512,2048,524288,2048,524288,67108864,536870912,0,262144,0,0,2432,0,0,4096,8192,0,32,4100,67108864,0,32768,0,32768,0,0,134348800,134348800,1049088,1049088,8192,1049088,12845065,12845065,12845065,12845065,270532608,0,1049088,0,134348800,12845065,12845065,147193865,5505537,5591557,5587465,5587457,5587457,147202057,5587457,5587457,5591557,5587457,13894153,13894153,13894153,13894153,-1881791493,13894153,81003049,13894153,13894153,-1881791493,-1881791493,-1881791493,-1881791493,0,9,0,0,1,5505024,142606336,0,0,0,278528,0,82432,0,0,1,16777216,0,0,0,139264,0,0,0,229440,0,5,86528,9,4456448,8388608,0,0,8192,8392704,9,8388608,0,0,256,1024,65536,16777216,268435456,0,0,41,75497472,0,0,16384,262144,0,0,0,512,1048576,0,0,262144,4194304,8388608,0,0,16384,4194304,2147483648,0,0,81920,0,0,2,4,16,32,8192,131072,262144,1048576,4194304,8388608,4194304,8388608,16777216,33554432,-1946157056,0,-1946157056,0,0,0,524288,0,0,0,16,0,0,0,8,0,0,0,12,0,0,0,13,0,1,2,56,64,896,8192,131072,0,0,33554432,1024,0,4,0,8,16,32,64,128,1024,2048,16384,65536,262144,524288,2097152,384,512,8192,131072,1048576,0,16384,65536,0,65536,0,0,131072,0,32,0,32768,134217728,0,0,2,8,16,0,2,8,32,64,256,1024,98304,131072,1048576,33554432,134217728,2147483648,8,32,384,8192,131072,33554432,131072,33554432,2147483648,0,0,24576,0,0,0,50331648,0,8396800,4194304,134217728,2048,134217728,0,0,2,16384,32768,1048576,2097152,0,8396800,0,0,4,8,0,0,16384,0,2,4,128,3584,16384,16384,16384,16777216,16384,229376,25165824,33554432,268435456,536870912,524288,268567040,16384,-2113929088,2113544,68423701,68423701,68423701,68423701,68489237,68423701,68423701,68423701,85200917,68423701,68489237,72618005,68423701,68423701,-2079059883,68423701,-2079059883,68425749,68423703,69488664,85200919,69488664,69488664,69488664,69488664,70537244,70537245,70537245,70537245,70537245,70537245,70539293,-2022351809,-2076946339,70537245,-2076946339,-2076946339,-2022351681,-2022351681,-2022351681,-2022351681,-2022351809,-2022351681,-2022351809,-2022351681,32768,65536,4194304,16777216,2147483648,0,0,0,8388608,134217728,1073741824,131584,268435456,0,0,4,128,1048576,67108864,0,0,4,256,1024,98304,0,0,5242880,-2080374784,268288,0,0,4,16777216,0,0,23,0,0,0,867391,24,282624,0,0,6,0,0,0,2097152,0,0,0,28,3145728,0,0,32768,65536,0,284672,0,0,0,1048576,0,63,128,351232,7340032,-2030043136,0,0,131072,268435456,0,0,8,32,64,16,4096,262144,1048576,1073741824,0,0,0,-2046820352,0,20480,0,0,8,4194304,0,0,15,16,32,3072,20480,65536,262144,7340032,50331648,16,32,128,3072,20480,0,1,4,1048576,4096,1048576,512,0,0,0,150528,0,0,0,5242880,0,7,0,14,32,1024,2048,12288,1,14,32,128,1024,7340032,50331648,2147483648,0,0,2048,16384,65536,7340032,50331648,8,32,1024,65536,262144,2097152,1073741824,0,1,6,8,32,128,1024,65536,2097152,4194304,50331648,2147483648,0,1,2,4,2097152,4194304,67108864,134217728,536870912,0,32768,4194304,16777216,0,1,2,4,50331648,67108864,2147483648,0,0,128,50331648,0,0,8,33554432,4096,4194304,268435456,0,0,32768,131072,131072,0,32768,32768,268435968,268435968,1073743872,268435968,0,128,6144,0,229376,128,268435968,16777220,268436032,256,256,256,256,257,256,256,536871168,256,256,256,256,384,-1879046336,-1879046334,1073744256,-1879046334,-1879046326,-1879046334,-1879046334,-1879046326,-1879046326,-1845491902,-1878784182,268444480,268444480,268444480,268444480,2100318145,268436288,268436288,268436288,268436288,268436289,268436288,2100318149,2100318149,2100318149,2100318149,2100326337,2100318149,2100318149,2100318145,2100318149,2100318145,2100318149,2100326341,2100318149,2100326341,2100326341,0,1,16,32,128,512,0,4194304,1,1024,0,0,229376,0,0,12,3145728,0,0,576,0,0,16,8192,0,0,16,262144,0,384,0,0,21,266240,1864,0,0,0,8388608,0,0,0,128,0,0,0,256,0,0,0,260,512,0,1,4036,19939328,2080374784,0,0,0,16777216,0,0,0,32,0,0,0,40,67108864,0,19947520,0,0,0,19947520,2304,0,8,0,512,301989888,0,0,262144,16777216,0,1,4,64,128,64,128,3840,16384,19922944,19922944,2080374784,0,0,29,0,0,1536,2147483648,0,0,32,1,8,0,33554432,0,0,32768,196608,0,0,0,33554432,0,0,32768,65536,131072,0,0,524288,524288,524288,524288,64,64,64,32,96,8,0,33554432,262144,8192,0,0,4194304,1024,0,4096,0,1024,2048,16384,3145728,2048,524288,536870912,1073741824,8,0,0,512,131072,0,0,64,256,1536,2048,33554432,8192,0,0,32,64,256,32768,65536,16777216,134217728,536870912,1073741824,0,3145728,16777216,536870912,1073741824,0,0,8192,8192,8192,9216,33554432,0,2097152,16777216,1073741824,0,0,32768,0,16777216,0,16777216,64,0,2,0,0,32768,16777216,0,0,32,512,128,131072,0,134218752,0,0,44,0,66048,0,0,0,67108864,0,0,0,8192,0,8192,0,536870912,0,0,0,12289,0,268500992,4243456,0,0,59,140224,5505024,-1887436800,0,0,2,2,4096,4096,0,4096,8192,67108864,0,0,1,4032,0,4243456,4096,1048588,12289,1124073472,1124073472,1124073472,1124073472,1124073472,1124073488,1124073472,1124073472,1124073474,1124073472,1124073472,1392574464,1124073472,12289,1073754113,12289,12289,1124073472,12289,12289,1098920193,1098920193,1124073488,1124073472,1258292224,1124073472,1124073472,1124073472,1124085761,1258304513,1124085761,1124085761,1124085761,1124085777,1132474625,1098920209,1132474625,1132474625,1132474625,1132474625,1400975617,2132360255,2132622399,2132622399,2132360255,2132360255,2132360255,2132360255,2132622399,2132360255,2132360255,2132360255,2140749119,2132360255,2140749119,2140749119,0,65536,268435456,49152,184549376,0,0,0,83886080,0,0,318767104,0,0,32768,100663296,402653184,1610612736,0,0,0,231488,0,12545,25165824,0,0,49152,0,0,256,1536,65536,0,0,58720256,0,0,131072,32768,0,0,134217728,0,12305,13313,0,0,331776,83886080,117440512,0,0,1,6,32,64,0,78081,327155712,0,0,511808,7864320,512,65536,0,0,64,65536,1048576,0,0,33554432,1073741824,0,0,110,0,0,256,8388608,0,0,524288,2097152,2147483648,0,0,77824,0,0,0,268435456,524288,1048576,16777216,100663296,134217728,0,339968,0,0,128,131072,1024,134217728,0,268435456,0,0,128,33554432,0,0,1,12288,0,0,0,134217728,2048,12288,65536,524288,1048576,1048576,33554432,67108864,134217728,805306368,0,327680,0,0,256,65536,0,0,268435456,1048576,33554432,134217728,805306368,1,14,16,1024,4096,8192,229376,65536,524288,33554432,134217728,536870912,1073741824,0,1,14,1024,2048,4096,8192,131072,1048576,8388608,33554432,134217728,2147483648,0,0,4096,65536,524288,134217728,16384,4194304,0,0,999,29619200,2113929216,0,0,0,148480,1,12,1024,134217728,0,128,134217728,8,0,8,8,8,0,1,4,8,134217728,536870912,0,0,1073741824,32768,0,4,8,536870912,0,0,1024,1024,0,1024,2048,3145728,0,8,32,512,4096,8192,0,0,68157440,137363456,0,66,66,524288,4100,1024,0,0,605247,1058013184,1073741824,100680704,25165824,92274688,25165824,25165824,92274688,92274688,25165952,25165824,25165824,26214400,92274688,25165824,92274688,93323264,92274688,92274688,92274688,92274688,92274720,93323264,25165890,100721664,25165890,100721928,100721928,100787464,100853e3,100721928,100721928,125977600,125977600,125977600,125977600,125846528,125846528,126895104,125846528,125846528,125846528,125846560,125977600,127026176,125977600,125977600,127026176,127026176,281843,1330419,281843,1330419,281843,281843,1330419,1330419,281843,281843,5524723,5524723,5524723,5524723,93605107,5524723,39079155,72633587,72633587,5524723,92556531,93605107,93605107,127290611,97799411,127290611,131484915,2097152,134217728,0,0,1024,65536,58368,0,0,0,301989888,8,124160,189696,0,0,605503,1066401792,0,0,3,240,19456,262144,0,150528,0,0,0,536870912,0,1073741824,0,57344,0,0,0,1073741824,0,0,0,1,2,112,128,3072,16384,262144,2048,16384,262144,0,0,2097152,16777216,0,0,0,1,2,48,64,0,1,2,16,32,64,384,8192,131072,1048576,32,4096,8192,131072,0,0,32768,0,256,0,256,0,65536,1024,2048,262144,0,0,32768,256,0,0,1024,2097152,0,0,0,16384,0,0,0,4,0,0,0,5,64,128,262144,0,0,2097152,268435456,0,0,64,128,0,0,1536,1792,1,2,16,64,0,0],r.TOKEN=["(0)","PragmaContents","DirCommentContents","DirPIContents","CDataSection","Wildcard","EQName","URILiteral","IntegerLiteral","DecimalLiteral","DoubleLiteral","StringLiteral","PredefinedEntityRef","'\"\"'","EscapeApos","ElementContentChar","QuotAttrContentChar","AposAttrContentChar","PITarget","NCName","QName","S","S","CharRef","CommentContents","EOF","'!'","'!='","'\"'","'#'","'#)'","'$'","'%'","''''","'('","'(#'","'(:'","')'","'*'","'*'","'+'","','","'-'","'-->'","'.'","'..'","'/'","'//'","'/>'","':'","':)'","'::'","':='","';'","'<'","'<!--'","'</'","'<<'","'<='","'<?'","'='","'>'","'>='","'>>'","'?'","'?>'","'@'","'NaN'","'['","']'","'after'","'all'","'allowing'","'ancestor'","'ancestor-or-self'","'and'","'any'","'append'","'array'","'as'","'ascending'","'at'","'attribute'","'base-uri'","'before'","'boundary-space'","'break'","'by'","'case'","'cast'","'castable'","'catch'","'check'","'child'","'collation'","'collection'","'comment'","'constraint'","'construction'","'contains'","'content'","'context'","'continue'","'copy'","'copy-namespaces'","'count'","'decimal-format'","'decimal-separator'","'declare'","'default'","'delete'","'descendant'","'descendant-or-self'","'descending'","'diacritics'","'different'","'digit'","'distance'","'div'","'document'","'document-node'","'element'","'else'","'empty'","'empty-sequence'","'encoding'","'end'","'entire'","'eq'","'every'","'exactly'","'except'","'exit'","'external'","'first'","'following'","'following-sibling'","'for'","'foreach'","'foreign'","'from'","'ft-option'","'ftand'","'ftnot'","'ftor'","'function'","'ge'","'greatest'","'group'","'grouping-separator'","'gt'","'idiv'","'if'","'import'","'in'","'index'","'infinity'","'inherit'","'insensitive'","'insert'","'instance'","'integrity'","'intersect'","'into'","'is'","'item'","'json'","'json-item'","'key'","'language'","'last'","'lax'","'le'","'least'","'let'","'levels'","'loop'","'lowercase'","'lt'","'minus-sign'","'mod'","'modify'","'module'","'most'","'namespace'","'namespace-node'","'ne'","'next'","'no'","'no-inherit'","'no-preserve'","'node'","'nodes'","'not'","'object'","'occurs'","'of'","'on'","'only'","'option'","'or'","'order'","'ordered'","'ordering'","'paragraph'","'paragraphs'","'parent'","'pattern-separator'","'per-mille'","'percent'","'phrase'","'position'","'preceding'","'preceding-sibling'","'preserve'","'previous'","'processing-instruction'","'relationship'","'rename'","'replace'","'return'","'returning'","'revalidation'","'same'","'satisfies'","'schema'","'schema-attribute'","'schema-element'","'score'","'self'","'sensitive'","'sentence'","'sentences'","'skip'","'sliding'","'some'","'stable'","'start'","'stemming'","'stop'","'strict'","'strip'","'structured-item'","'switch'","'text'","'then'","'thesaurus'","'times'","'to'","'treat'","'try'","'tumbling'","'type'","'typeswitch'","'union'","'unique'","'unordered'","'updating'","'uppercase'","'using'","'validate'","'value'","'variable'","'version'","'weight'","'when'","'where'","'while'","'wildcards'","'window'","'with'","'without'","'word'","'words'","'xquery'","'zero-digit'","'{'","'{{'","'{|'","'|'","'||'","'|}'","'}'","'}}'"]}),define("ace/mode/xquery/visitors/SemanticHighlighter",["require","exports","module"],function(e,t,n){var r=t.SemanticHighlighter=function(e){this.tokens={},this.getTokens=function(){return this.visit(e),this.tokens},this.EQName=this.NCName=function(e){var t=e.pos.sl;return this.tokens[t]=this.tokens[t]===undefined?[]:this.tokens[t],e.pos.type="support.function",this.tokens[t].push(e.pos),!0},this.visit=function(e){var t=e.name,n=!1;typeof this[t]=="function"&&(n=this[t](e)===!0?!0:!1),n||this.visitChildren(e)},this.visitChildren=function(e,t){for(var n=0;n<e.children.length;n++){var r=e.children[n];t!==undefined&&typeof t[r.name]=="function"?t[r.name](r):this.visit(r)}}}})
4089^
4090
4091./lib/viewers/text/worker-xquery.js:1: WARNING - Suspicious code. The result of the 'eq' operator is not being used.
4092"no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console={log:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},error:function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})}},e.window=e,e.ace=e,e.normalizeModule=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return normalizeModule(e,n[0])+"!"+normalizeModule(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&i!=t){var i=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},e.require=function(e,t){if(!t.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");t=normalizeModule(e,t);var n=require.modules[t];if(n)return n.initialized||(n.initialized=!0,n.exports=n.factory().exports),n.exports;var r=t.split("/");r[0]=require.tlns[r[0]]||r[0];var i=r.join("/")+".js";return require.id=t,importScripts(i),require(e,t)},require.modules={},require.tlns={},e.define=function(e,t,n){arguments.length==2?(n=t,typeof e!="string"&&(t=e,e=require.id)):arguments.length==1&&(n=e,e=require.id);if(e.indexOf("text!")===0)return;var r=function(t,n){return require(e,t,n)};require.modules[e]={factory:function(){var e={exports:{}},t=n(r,e.exports,e);return t&&(e.exports=t),e}}},e.initBaseUrls=function(t){require.tlns=t},e.initSender=function(){var t=require(null,"ace/lib/event_emitter").EventEmitter,n=require(null,"ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require(null,"ace/lib/fixoldbrowsers"),sender=initSender();var n=require(null,t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function r(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function i(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var s={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},o=s.exec.call(/()??/,"")[1]===undefined,u=function(){var e=/^/g;return s.test.call(e,""),!e.lastIndex}();if(u&&o)return;RegExp.prototype.exec=function(e){var t=s.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!o&&t.length>1&&i(t,"")>-1&&(a=RegExp(this.source,s.replace.call(r(this),"g","")),s.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!u&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},u||(RegExp.prototype.test=function(e){var t=s.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n \f\r ?????????????????\u2028\u2029?";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s);for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){this._defaultHandlers=this._defaultHandlers||{};if(this._defaultHandlers[e])throw new Error("The default handler for '"+e+"' is already set");this._defaultHandlers[e]=t},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(){var e=function(){};return function(t,n){e.prototype=n.prototype,t.super_=n.prototype,t.prototype=new e,t.prototype.constructor=t}}(),t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/mode/xquery_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/xquery/JSONParseTreeHandler","ace/mode/xquery/XQueryParser","ace/mode/xquery/visitors/SemanticHighlighter"],function(e,t,n){var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("./xquery/JSONParseTreeHandler").JSONParseTreeHandler,o=e("./xquery/XQueryParser").XQueryParser,u=e("./xquery/visitors/SemanticHighlighter").SemanticHighlighter,a=t.XQueryWorker=function(e){i.call(this,e),this.setTimeout(200)};r.inherits(a,i),function(){this.onUpdate=function(){this.sender.emit("start");var e=this.doc.getValue(),t=new s(e),n=new o(e,t);try{n.parse_XQuery(),this.sender.emit("ok");var r=t.getParseTree(),i=new u(r,e),a=i.getTokens();this.sender.emit("highlight",{tokens:a,lines:i.lines})}catch(f){if(!(f instanceof n.ParseException))throw f;var l=e.substring(0,f.getBegin()),c=l.split("\n").length,h=f.getBegin()-l.lastIndexOf("\n"),p=n.getErrorMessage(f);this.sender.emit("error",{row:c-1,column:h,text:p,type:"error"})}}}.call(a.prototype)}),define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas([e.data]),n.schedule(s.$timeout)})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){}}).call(s.prototype)}),define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this.insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.$lines[e.start.row].substring(e.start.column,e.end.column);var t=this.getLines(e.start.row+1,e.end.row-1);return t.unshift((this.$lines[e.start.row]||"").substring(e.start.column)),t.push((this.$lines[e.end.row]||"").substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this.insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this.insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this.removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this.insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length;return i+r*o+e.column}}).call(u.prototype),t.Document=u}),define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||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 i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.document=e,typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n),this.$onChange=this.onChange.bind(this),e.on("change",this.$onChange)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;t.action==="insertText"?s.row===r&&s.column<=i?s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row):s.row!==o.row&&s.row<r&&(r+=o.row-s.row):t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0)),this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object")return e;var t=e.constructor();for(var n in e)typeof e[n]=="object"?t[n]=this.deepCopy(e[n]):t[n]=e[n];return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)};return i.delay=i,i.schedule=function(e){n==null&&(n=setTimeout(r,e||0))},i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/mode/xquery/JSONParseTreeHandler",["require","exports","module"],function(e,t,n){var r=t.JSONParseTreeHandler=function(e){function t(e){return{name:e,children:[],getParent:null,pos:{sl:0,sc:0,el:0,ec:0}}}function n(e,n){var r=t(e);o===null?(o=r,u=r):(r.getParent=u,u.children.push(r),u=u.children[u.children.length-1])}function r(){if(u.children.length>0){var e=u.children[0],t=null;for(var n=u.children.length-1;n>=0;n--){t=u.children[n];if(t.pos.el!==0||t.pos.ec!==0)break}u.pos.sl=e.pos.sl,u.pos.sc=e.pos.sc,u.pos.el=t.pos.el,u.pos.ec=t.pos.ec}u.name==="FunctionName"&&(u.name="EQName"),u.name==="EQName"&&u.value===undefined&&(u.value=u.children[0].value,u.children.pop()),u.getParent!==null&&(u=u.getParent);if(u.children.length>0){var r=u.children[u.children.length-1];r.children.length===1&&s.indexOf(r.name)!==-1&&(u.children[u.children.length-1]=r.children[0])}}function i(e,t,n){var r=n-f;u.value=a.substring(0,r),a=a.substring(r),f=n;var i=c,s=l,o=i+u.value.split("\n").length-1,h=u.value.lastIndexOf("\n"),p=h===-1?s+u.value.length:u.value.substring(h+1).length;c=o,l=p,u.pos.sl=i,u.pos.sc=s,u.pos.el=o,u.pos.ec=p}var s=["OrExpr","AndExpr","ComparisonExpr","StringConcatExpr","RangeExpr","UnionExpr","IntersectExceptExpr","InstanceofExpr","TreatExpr","CastableExpr","CastExpr","UnaryExpr","ValueExpr","FTContainsExpr","SimpleMapExpr","PathExpr","RelativePathExpr","PostfixExpr","StepExpr"],o=null,u=null,a=e,f=0,l=0,c=0,h=0;this.closeParseTree=function(){while(u.getParent!==null)r();r()},this.peek=function(){return u},this.getParseTree=function(){return o},this.reset=function(e){},this.startNonterminal=function(e,t){n(e,t)},this.endNonterminal=function(e,t){r()},this.terminal=function(e,t,s){e=e.substring(0,1)==="'"&&e.substring(e.length-1)==="'"?"TOKEN":e,n(e,t),i(u,t,s),r()},this.whitespace=function(e,t){var s="WS";n(s,e),i(u,e,t),r()}}}),define("ace/mode/xquery/XQueryParser",["require","exports","module"],function(e,t,n){var r=t.XQueryParser=function i(e,t){function n(e,t){ql=t,Ul=e,zl=e.length,r(0,0,0)}function r(e,t,n){kl=t,Ll=t,Al=e,Ol=t,Ml=n,_l=0,Xl=n,Bl=-1,Rl={},ql.reset(Ul)}function s(){ql.startNonterminal("Module",Ll);switch(Al){case 274:El(199);break;default:Cl=Al}(Cl==64274||Cl==134930)&&o(),wl(268);switch(Al){case 182:El(194);break;default:Cl=Al}switch(Cl){case 94390:yl(),u();break;default:yl(),Ba()}ql.endNonterminal("Module",Ll)}function o(){ql.startNonterminal("VersionDecl",Ll),vl(274),wl(116);switch(Al){case 125:vl(125),wl(17),vl(11);break;default:vl(263),wl(17),vl(11),wl(109),Al==125&&(vl(125),wl(17),vl(11))}wl(28),yl(),l(),ql.endNonterminal("VersionDecl",Ll)}function u(){ql.startNonterminal("LibraryModule",Ll),a(),wl(138),yl(),f(),ql.endNonterminal("LibraryModule",Ll)}function a(){ql.startNonterminal("ModuleDecl",Ll),vl(182),wl(61),vl(184),wl(247),yl(),Pa(),wl(29),vl(60),wl(15),vl(7),wl(28),yl(),l(),ql.endNonterminal("ModuleDecl",Ll)}function f(){ql.startNonterminal("Prolog",Ll);for(;;){wl(268);switch(Al){case 108:El(213);break;case 153:El(201);break;default:Cl=Al}if(Cl!=42604&&Cl!=43628&&Cl!=50284&&Cl!=53356&&Cl!=54380&&Cl!=55916&&Cl!=72300&&Cl!=93337&&Cl!=94316&&Cl!=104044&&Cl!=113772&&Cl!=115353)break;switch(Al){case 108:El(178);break;default:Cl=Al}if(Cl==55916){Cl=pl(0,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{M(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(0,Ll,Cl)}}switch(Cl){case-1:yl(),O();break;case 94316:yl(),A();break;case 153:yl(),N();break;case 72300:yl(),_();break;default:yl(),c()}wl(28),yl(),l()}for(;;){wl(268);switch(Al){case 108:El(210);break;default:Cl=Al}if(Cl!=16492&&Cl!=48748&&Cl!=51820&&Cl!=74348&&Cl!=79468&&Cl!=82540&&Cl!=101996&&Cl!=131692&&Cl!=134252)break;switch(Al){case 108:El(175);break;default:Cl=Al}switch(Cl){case 51820:yl(),q();break;case 101996:yl(),K();break;default:yl(),D()}wl(28),yl(),l()}ql.endNonterminal("Prolog",Ll)}function l(){ql.startNonterminal("Separator",Ll),vl(53),ql.endNonterminal("Separator",Ll)}function c(){ql.startNonterminal("Setter",Ll);switch(Al){case 108:El(172);break;default:Cl=Al}if(Cl==55916){Cl=pl(1,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{d(),Cl=-2}catch(a){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),b(),Cl=-6}catch(f){Cl=-9}}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(1,Ll,Cl)}}switch(Cl){case 43628:h();break;case-2:p();break;case 42604:v();break;case 50284:m();break;case 104044:g();break;case-6:y();break;case 113772:To();break;case 53356:w();break;default:x()}ql.endNonterminal("Setter",Ll)}function h(){ql.startNonterminal("BoundarySpaceDecl",Ll),vl(108),wl(33),vl(85),wl(133);switch(Al){case 214:vl(214);break;default:vl(241)}ql.endNonterminal("BoundarySpaceDecl",Ll)}function p(){ql.startNonterminal("DefaultCollationDecl",Ll),vl(108),wl(46),vl(109),wl(38),vl(94),wl(15),vl(7),ql.endNonterminal("DefaultCollationDecl",Ll)}function d(){ml(108),wl(46),ml(109),wl(38),ml(94),wl(15),ml(7)}function v(){ql.startNonterminal("BaseURIDecl",Ll),vl(108),wl(32),vl(83),wl(15),vl(7),ql.endNonterminal("BaseURIDecl",Ll)}function m(){ql.startNonterminal("ConstructionDecl",Ll),vl(108),wl(41),vl(98),wl(133);switch(Al){case 241:vl(241);break;default:vl(214)}ql.endNonterminal("ConstructionDecl",Ll)}function g(){ql.startNonterminal("OrderingModeDecl",Ll),vl(108),wl(68),vl(203),wl(131);switch(Al){case 202:vl(202);break;default:vl(256)}ql.endNonterminal("OrderingModeDecl",Ll)}function y(){ql.startNonterminal("EmptyOrderDecl",Ll),vl(108),wl(46),vl(109),wl(67),vl(201),wl(49),vl(123),wl(121);switch(Al){case 147:vl(147);break;default:vl(173)}ql.endNonterminal("EmptyOrderDecl",Ll)}function b(){ml(108),wl(46),ml(109),wl(67),ml(201),wl(49),ml(123),wl(121);switch(Al){case 147:ml(147);break;default:ml(173)}}function w(){ql.startNonterminal("CopyNamespacesDecl",Ll),vl(108),wl(44),vl(104),wl(128),yl(),E(),wl(25),vl(41),wl(123),yl(),S(),ql.endNonterminal("CopyNamespacesDecl",Ll)}function E(){ql.startNonterminal("PreserveMode",Ll);switch(Al){case 214:vl(214);break;default:vl(190)}ql.endNonterminal("PreserveMode",Ll)}function S(){ql.startNonterminal("InheritMode",Ll);switch(Al){case 157:vl(157);break;default:vl(189)}ql.endNonterminal("InheritMode",Ll)}function x(){ql.startNonterminal("DecimalFormatDecl",Ll),vl(108),wl(114);switch(Al){case 106:vl(106),wl(253),yl(),Oa();break;default:vl(109),wl(45),vl(106)}for(;;){wl(180);if(Al==53)break;yl(),T(),wl(29),vl(60),wl(17),vl(11)}ql.endNonterminal("DecimalFormatDecl",Ll)}function T(){ql.startNonterminal("DFPropertyName",Ll);switch(Al){case 107:vl(107);break;case 149:vl(149);break;case 156:vl(156);break;case 179:vl(179);break;case 67:vl(67);break;case 209:vl(209);break;case 208:vl(208);break;case 275:vl(275);break;case 116:vl(116);break;default:vl(207)}ql.endNonterminal("DFPropertyName",Ll)}function N(){ql.startNonterminal("Import",Ll);switch(Al){case 153:El(126);break;default:Cl=Al}switch(Cl){case 115353:C();break;default:L()}ql.endNonterminal("Import",Ll)}function C(){ql.startNonterminal("SchemaImport",Ll),vl(153),wl(73),vl(225),wl(137),Al!=7&&(yl(),k()),wl(15),vl(7),wl(108);if(Al==81){vl(81),wl(15),vl(7);for(;;){wl(103);if(Al!=41)break;vl(41),wl(15),vl(7)}}ql.endNonterminal("SchemaImport",Ll)}function k(){ql.startNonterminal("SchemaPrefix",Ll);switch(Al){case 184:vl(184),wl(247),yl(),Pa(),wl(29),vl(60);break;default:vl(109),wl(47),vl(121),wl(61),vl(184)}ql.endNonterminal("SchemaPrefix",Ll)}function L(){ql.startNonterminal("ModuleImport",Ll),vl(153),wl(60),vl(182),wl(90),Al==184&&(vl(184),wl(247),yl(),Pa(),wl(29),vl(60)),wl(15),vl(7),wl(108);if(Al==81){vl(81),wl(15),vl(7);for(;;){wl(103);if(Al!=41)break;vl(41),wl(15),vl(7)}}ql.endNonterminal("ModuleImport",Ll)}function A(){ql.startNonterminal("NamespaceDecl",Ll),vl(108),wl(61),vl(184),wl(247),yl(),Pa(),wl(29),vl(60),wl(15),vl(7),ql.endNonterminal("NamespaceDecl",Ll)}function O(){ql.startNonterminal("DefaultNamespaceDecl",Ll),vl(108),wl(46),vl(109),wl(115);switch(Al){case 121:vl(121);break;default:vl(145)}wl(61),vl(184),wl(15),vl(7),ql.endNonterminal("DefaultNamespaceDecl",Ll)}function M(){ml(108),wl(46),ml(109),wl(115);switch(Al){case 121:ml(121);break;default:ml(145)}wl(61),ml(184),wl(15),ml(7)}function _(){ql.startNonterminal("FTOptionDecl",Ll),vl(108),wl(52),vl(141),wl(81),yl(),Du(),ql.endNonterminal("FTOptionDecl",Ll)}function D(){ql.startNonterminal("AnnotatedDecl",Ll),vl(108);for(;;){wl(170);if(Al!=32&&Al!=257)break;switch(Al){case 257:yl(),P();break;default:yl(),H()}}switch(Al){case 262:yl(),j();break;case 145:yl(),cl();break;case 95:yl(),fa();break;case 155:yl(),ya();break;default:yl(),ba()}ql.endNonterminal("AnnotatedDecl",Ll)}function P(){ql.startNonterminal("CompatibilityAnnotation",Ll),vl(257),ql.endNonterminal("CompatibilityAnnotation",Ll)}function H(){ql.startNonterminal("Annotation",Ll),vl(32),wl(253),yl(),Oa(),wl(171);if(Al==34){vl(34),wl(154),yl(),ri();for(;;){wl(101);if(Al!=41)break;vl(41),wl(154),yl(),ri()}vl(37)}ql.endNonterminal("Annotation",Ll)}function B(){ml(32),wl(253),Ma(),wl(171);if(Al==34){ml(34),wl(154),ii();for(;;){wl(101);if(Al!=41)break;ml(41),wl(154),ii()}ml(37)}}function j(){ql.startNonterminal("VarDecl",Ll),vl(262),wl(21),vl(31),wl(253),yl(),fi(),wl(147),Al==79&&(yl(),cs()),wl(106);switch(Al){case 52:vl(52),wl(267),yl(),F();break;default:vl(133),wl(104),Al==52&&(vl(52),wl(267),yl(),I())}ql.endNonterminal("VarDecl",Ll)}function F(){ql.startNonterminal("VarValue",Ll),Nf(),ql.endNonterminal("VarValue",Ll)}function I(){ql.startNonterminal("VarDefaultValue",Ll),Nf(),ql.endNonterminal("VarDefaultValue",Ll)}function q(){ql.startNonterminal("ContextItemDecl",Ll),vl(108),wl(43),vl(101),wl(55),vl(165),wl(147),Al==79&&(vl(79),wl(259),yl(),gs()),wl(106);switch(Al){case 52:vl(52),wl(267),yl(),F();break;default:vl(133),wl(104),Al==52&&(vl(52),wl(267),yl(),I())}ql.endNonterminal("ContextItemDecl",Ll)}function R(){ql.startNonterminal("ParamList",Ll),z();for(;;){wl(101);if(Al!=41)break;vl(41),wl(21),yl(),z()}ql.endNonterminal("ParamList",Ll)}function U(){W();for(;;){wl(101);if(Al!=41)break;ml(41),wl(21),W()}}function z(){ql.startNonterminal("Param",Ll),vl(31),wl(253),yl(),Oa(),wl(143),Al==79&&(yl(),cs()),ql.endNonterminal("Param",Ll)}function W(){ml(31),wl(253),Ma(),wl(143),Al==79&&hs()}function X(){ql.startNonterminal("FunctionBody",Ll),$(),ql.endNonterminal("FunctionBody",Ll)}function V(){J()}function $(){ql.startNonterminal("EnclosedExpr",Ll),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("EnclosedExpr",Ll)}function J(){ml(276),wl(267),G(),ml(282)}function K(){ql.startNonterminal("OptionDecl",Ll),vl(108),wl(66),vl(199),wl(253),yl(),Oa(),wl(17),vl(11),ql.endNonterminal("OptionDecl",Ll)}function Q(){ql.startNonterminal("Expr",Ll),Nf();for(;;){if(Al!=41)break;vl(41),wl(267),yl(),Nf()}ql.endNonterminal("Expr",Ll)}function G(){Cf();for(;;){if(Al!=41)break;ml(41),wl(267),Cf()}}function Y(){ql.startNonterminal("FLWORExpr",Ll),et();for(;;){wl(173);if(Al==220)break;yl(),nt()}yl(),nn(),ql.endNonterminal("FLWORExpr",Ll)}function Z(){tt();for(;;){wl(173);if(Al==220)break;rt()}rn()}function et(){ql.startNonterminal("InitialClause",Ll);switch(Al){case 137:El(141);break;default:Cl=Al}switch(Cl){case 16009:it();break;case 174:dt();break;default:yt()}ql.endNonterminal("InitialClause",Ll)}function tt(){switch(Al){case 137:El(141);break;default:Cl=Al}switch(Cl){case 16009:st();break;case 174:vt();break;default:bt()}}function nt(){ql.startNonterminal("IntermediateClause",Ll);switch(Al){case 137:case 174:et();break;case 266:Ft();break;case 148:qt();break;case 105:Bt();break;default:Jt()}ql.endNonterminal("IntermediateClause",Ll)}function rt(){switch(Al){case 137:case 174:tt();break;case 266:It();break;case 148:Rt();break;case 105:jt();break;default:Kt()}}function it(){ql.startNonterminal("ForClause",Ll),vl(137),wl(21),yl(),ot();for(;;){if(Al!=41)break;vl(41),wl(21),yl(),ot()}ql.endNonterminal("ForClause",Ll)}function st(){ml(137),wl(21),ut();for(;;){if(Al!=41)break;ml(41),wl(21),ut()}}function ot(){ql.startNonterminal("ForBinding",Ll),vl(31),wl(253),yl(),fi(),wl(164),Al==79&&(yl(),cs()),wl(158),Al==72&&(yl(),at()),wl(150),Al==81&&(yl(),lt()),wl(122),Al==228&&(yl(),ht()),wl(53),vl(154),wl(267),yl(),Nf(),ql.endNonterminal("ForBinding",Ll)}function ut(){ml(31),wl(253),li(),wl(164),Al==79&&hs(),wl(158),Al==72&&ft(),wl(150),Al==81&&ct(),wl(122),Al==228&&pt(),wl(53),ml(154),wl(267),Cf()}function at(){ql.startNonterminal("AllowingEmpty",Ll),vl(72),wl(49),vl(123),ql.endNonterminal("AllowingEmpty",Ll)}function ft(){ml(72),wl(49),ml(123)}function lt(){ql.startNonterminal("PositionalVar",Ll),vl(81),wl(21),vl(31),wl(253),yl(),fi(),ql.endNonterminal("PositionalVar",Ll)}function ct(){ml(81),wl(21),ml(31),wl(253),li()}function ht(){ql.startNonterminal("FTScoreVar",Ll),vl(228),wl(21),vl(31),wl(253),yl(),fi(),ql.endNonterminal("FTScoreVar",Ll)}function pt(){ml(228),wl(21),ml(31),wl(253),li()}function dt(){ql.startNonterminal("LetClause",Ll),vl(174),wl(96),yl(),mt();for(;;){if(Al!=41)break;vl(41),wl(96),yl(),mt()}ql.endNonterminal("LetClause",Ll)}function vt(){ml(174),wl(96),gt();for(;;){if(Al!=41)break;ml(41),wl(96),gt()}}function mt(){ql.startNonterminal("LetBinding",Ll);switch(Al){case 31:vl(31),wl(253),yl(),fi(),wl(105),Al==79&&(yl(),cs());break;default:ht()}wl(27),vl(52),wl(267),yl(),Nf(),ql.endNonterminal("LetBinding",Ll)}function gt(){switch(Al){case 31:ml(31),wl(253),li(),wl(105),Al==79&&hs();break;default:pt()}wl(27),ml(52),wl(267),Cf()}function yt(){ql.startNonterminal("WindowClause",Ll),vl(137),wl(135);switch(Al){case 251:yl(),wt();break;default:yl(),St()}ql.endNonterminal("WindowClause",Ll)}function bt(){ml(137),wl(135);switch(Al){case 251:Et();break;default:xt()}}function wt(){ql.startNonterminal("TumblingWindowClause",Ll),vl(251),wl(85),vl(269),wl(21),vl(31),wl(253),yl(),fi(),wl(110),Al==79&&(yl(),cs()),wl(53),vl(154),wl(267),yl(),Nf(),yl(),Tt();if(Al==126||Al==198)yl(),Ct();ql.endNonterminal("TumblingWindowClause",Ll)}function Et(){ml(251),wl(85),ml(269),wl(21),ml(31),wl(253),li(),wl(110),Al==79&&hs(),wl(53),ml(154),wl(267),Cf(),Nt(),(Al==126||Al==198)&&kt()}function St(){ql.startNonterminal("SlidingWindowClause",Ll),vl(234),wl(85),vl(269),wl(21),vl(31),wl(253),yl(),fi(),wl(110),Al==79&&(yl(),cs()),wl(53),vl(154),wl(267),yl(),Nf(),yl(),Tt(),yl(),Ct(),ql.endNonterminal("SlidingWindowClause",Ll)}function xt(){ml(234),wl(85),ml(269),wl(21),ml(31),wl(253),li(),wl(110),Al==79&&hs(),wl(53),ml(154),wl(267),Cf(),Nt(),kt()}function Tt(){ql.startNonterminal("WindowStartCondition",Ll),vl(237),wl(163),yl(),Lt(),wl(83),vl(265),wl(267),yl(),Nf(),ql.endNonterminal("WindowStartCondition",Ll)}function Nt(){ml(237),wl(163),At(),wl(83),ml(265),wl(267),Cf()}function Ct(){ql.startNonterminal("WindowEndCondition",Ll),Al==198&&vl(198),wl(50),vl(126),wl(163),yl(),Lt(),wl(83),vl(265),wl(267),yl(),Nf(),ql.endNonterminal("WindowEndCondition",Ll)}function kt(){Al==198&&ml(198),wl(50),ml(126),wl(163),At(),wl(83),ml(265),wl(267),Cf()}function Lt(){ql.startNonterminal("WindowVars",Ll),Al==31&&(vl(31),wl(253),yl(),Ot()),wl(159),Al==81&&(yl(),lt()),wl(153),Al==215&&(vl(215),wl(21),vl(31),wl(253),yl(),_t()),wl(127),Al==187&&(vl(187),wl(21),vl(31),wl(253),yl(),Pt()),ql.endNonterminal("WindowVars",Ll)}function At(){Al==31&&(ml(31),wl(253),Mt()),wl(159),Al==81&&ct(),wl(153),Al==215&&(ml(215),wl(21),ml(31),wl(253),Dt()),wl(127),Al==187&&(ml(187),wl(21),ml(31),wl(253),Ht())}function Ot(){ql.startNonterminal("CurrentItem",Ll),Oa(),ql.endNonterminal("CurrentItem",Ll)}function Mt(){Ma()}function _t(){ql.startNonterminal("PreviousItem",Ll),Oa(),ql.endNonterminal("PreviousItem",Ll)}function Dt(){Ma()}function Pt(){ql.startNonterminal("NextItem",Ll),Oa(),ql.endNonterminal("NextItem",Ll)}function Ht(){Ma()}function Bt(){ql.startNonterminal("CountClause",Ll),vl(105),wl(21),vl(31),wl(253),yl(),fi(),ql.endNonterminal("CountClause",Ll)}function jt(){ml(105),wl(21),ml(31),wl(253),li()}function Ft(){ql.startNonterminal("WhereClause",Ll),vl(266),wl(267),yl(),Nf(),ql.endNonterminal("WhereClause",Ll)}function It(){ml(266),wl(267),Cf()}function qt(){ql.startNonterminal("GroupByClause",Ll),vl(148),wl(34),vl(87),wl(21),yl(),Ut(),ql.endNonterminal("GroupByClause",Ll)}function Rt(){ml(148),wl(34),ml(87),wl(21),zt()}function Ut(){ql.startNonterminal("GroupingSpecList",Ll),Wt();for(;;){wl(176);if(Al!=41)break;vl(41),wl(21),yl(),Wt()}ql.endNonterminal("GroupingSpecList",Ll)}function zt(){Xt();for(;;){wl(176);if(Al!=41)break;ml(41),wl(21),Xt()}}function Wt(){ql.startNonterminal("GroupingSpec",Ll),Vt(),wl(182);if(Al==52||Al==79)Al==79&&(yl(),cs()),wl(27),vl(52),wl(267),yl(),Nf();Al==94&&(vl(94),wl(15),vl(7)),ql.endNonterminal("GroupingSpec",Ll)}function Xt(){$t(),wl(182);if(Al==52||Al==79)Al==79&&hs(),wl(27),ml(52),wl(267),Cf();Al==94&&(ml(94),wl(15),ml(7))}function Vt(){ql.startNonterminal("GroupingVariable",Ll),vl(31),wl(253),yl(),fi(),ql.endNonterminal("GroupingVariable",Ll)}function $t(){ml(31),wl(253),li()}function Jt(){ql.startNonterminal("OrderByClause",Ll);switch(Al){case 201:vl(201),wl(34),vl(87);break;default:vl(236),wl(67),vl(201),wl(34),vl(87)}wl(267),yl(),Qt(),ql.endNonterminal("OrderByClause",Ll)}function Kt(){switch(Al){case 201:ml(201),wl(34),ml(87);break;default:ml(236),wl(67),ml(201),wl(34),ml(87)}wl(267),Gt()}function Qt(){ql.startNonterminal("OrderSpecList",Ll),Yt();for(;;){wl(176);if(Al!=41)break;vl(41),wl(267),yl(),Yt()}ql.endNonterminal("OrderSpecList",Ll)}function Gt(){Zt();for(;;){wl(176);if(Al!=41)break;ml(41),wl(267),Zt()}}function Yt(){ql.startNonterminal("OrderSpec",Ll),Nf(),yl(),en(),ql.endNonterminal("OrderSpec",Ll)}function Zt(){Cf(),tn()}function en(){ql.startNonterminal("OrderModifier",Ll);if(Al==80||Al==113)switch(Al){case 80:vl(80);break;default:vl(113)}wl(179);if(Al==123){vl(123),wl(121);switch(Al){case 147:vl(147);break;default:vl(173)}}wl(177),Al==94&&(vl(94),wl(15),vl(7)),ql.endNonterminal("OrderModifier",Ll)}function tn(){if(Al==80||Al==113)switch(Al){case 80:ml(80);break;default:ml(113)}wl(179);if(Al==123){ml(123),wl(121);switch(Al){case 147:ml(147);break;default:ml(173)}}wl(177),Al==94&&(ml(94),wl(15),ml(7))}function nn(){ql.startNonterminal("ReturnClause",Ll),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("ReturnClause",Ll)}function rn(){ml(220),wl(267),Cf()}function sn(){ql.startNonterminal("QuantifiedExpr",Ll);switch(Al){case 235:vl(235);break;default:vl(129)}wl(21),vl(31),wl(253),yl(),fi(),wl(110),Al==79&&(yl(),cs()),wl(53),vl(154),wl(267),yl(),Nf();for(;;){if(Al!=41)break;vl(41),wl(21),vl(31),wl(253),yl(),fi(),wl(110),Al==79&&(yl(),cs()),wl(53),vl(154),wl(267),yl(),Nf()}vl(224),wl(267),yl(),Nf(),ql.endNonterminal("QuantifiedExpr",Ll)}function on(){switch(Al){case 235:ml(235);break;default:ml(129)}wl(21),ml(31),wl(253),li(),wl(110),Al==79&&hs(),wl(53),ml(154),wl(267),Cf();for(;;){if(Al!=41)break;ml(41),wl(21),ml(31),wl(253),li(),wl(110),Al==79&&hs(),wl(53),ml(154),wl(267),Cf()}ml(224),wl(267),Cf()}function un(){ql.startNonterminal("SwitchExpr",Ll),vl(243),wl(22),vl(34),wl(267),yl(),Q(),vl(37);for(;;){wl(35),yl(),fn();if(Al!=88)break}vl(109),wl(70),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("SwitchExpr",Ll)}function an(){ml(243),wl(22),ml(34),wl(267),G(),ml(37);for(;;){wl(35),ln();if(Al!=88)break}ml(109),wl(70),ml(220),wl(267),Cf()}function fn(){ql.startNonterminal("SwitchCaseClause",Ll);for(;;){vl(88),wl(267),yl(),cn();if(Al!=88)break}vl(220),wl(267),yl(),Nf(),ql.endNonterminal("SwitchCaseClause",Ll)}function ln(){for(;;){ml(88),wl(267),hn();if(Al!=88)break}ml(220),wl(267),Cf()}function cn(){ql.startNonterminal("SwitchCaseOperand",Ll),Nf(),ql.endNonterminal("SwitchCaseOperand",Ll)}function hn(){Cf()}function pn(){ql.startNonterminal("TypeswitchExpr",Ll),vl(253),wl(22),vl(34),wl(267),yl(),Q(),vl(37);for(;;){wl(35),yl(),vn();if(Al!=88)break}vl(109),wl(95),Al==31&&(vl(31),wl(253),yl(),fi()),wl(70),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("TypeswitchExpr",Ll)}function dn(){ml(253),wl(22),ml(34),wl(267),G(),ml(37);for(;;){wl(35),mn();if(Al!=88)break}ml(109),wl(95),Al==31&&(ml(31),wl(253),li()),wl(70),ml(220),wl(267),Cf()}function vn(){ql.startNonterminal("CaseClause",Ll),vl(88),wl(260),Al==31&&(vl(31),wl(253),yl(),fi(),wl(30),vl(79)),wl(259),yl(),gn(),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("CaseClause",Ll)}function mn(){ml(88),wl(260),Al==31&&(ml(31),wl(253),li(),wl(30),ml(79)),wl(259),yn(),ml(220),wl(267),Cf()}function gn(){ql.startNonterminal("SequenceTypeUnion",Ll),ps();for(;;){wl(134);if(Al!=279)break;vl(279),wl(259),yl(),ps()}ql.endNonterminal("SequenceTypeUnion",Ll)}function yn(){ds();for(;;){wl(134);if(Al!=279)break;ml(279),wl(259),ds()}}function bn(){ql.startNonterminal("IfExpr",Ll),vl(152),wl(22),vl(34),wl(267),yl(),Q(),vl(37),wl(77),vl(245),wl(267),yl(),Nf(),vl(122),wl(267),yl(),Nf(),ql.endNonterminal("IfExpr",Ll)}function wn(){ml(152),wl(22),ml(34),wl(267),G(),ml(37),wl(77),ml(245),wl(267),Cf(),ml(122),wl(267),Cf()}function En(){ql.startNonterminal("TryCatchExpr",Ll),xn();for(;;){wl(36),yl(),kn(),wl(184);if(Al!=91)break}ql.endNonterminal("TryCatchExpr",Ll)}function Sn(){Tn();for(;;){wl(36),Ln(),wl(184);if(Al!=91)break}}function xn(){ql.startNonterminal("TryClause",Ll),vl(250),wl(87),vl(276),wl(267),yl(),Nn(),vl(282),ql.endNonterminal("TryClause",Ll)}function Tn(){ml(250),wl(87),ml(276),wl(267),Cn(),ml(282)}function Nn(){ql.startNonterminal("TryTargetExpr",Ll),Q(),ql.endNonterminal("TryTargetExpr",Ll)}function Cn(){G()}function kn(){ql.startNonterminal("CatchClause",Ll),vl(91),wl(255),yl(),An(),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("CatchClause",Ll)}function Ln(){ml(91),wl(255),On(),ml(276),wl(267),G(),ml(282)}function An(){ql.startNonterminal("CatchErrorList",Ll),$r();for(;;){wl(136);if(Al!=279)break;vl(279),wl(255),yl(),$r()}ql.endNonterminal("CatchErrorList",Ll)}function On(){Jr();for(;;){wl(136);if(Al!=279)break;ml(279),wl(255),Jr()}}function Mn(){ql.startNonterminal("OrExpr",Ll),Dn();for(;;){if(Al!=200)break;vl(200),wl(265),yl(),Dn()}ql.endNonterminal("OrExpr",Ll)}function _n(){Pn();for(;;){if(Al!=200)break;ml(200),wl(265),Pn()}}function Dn(){ql.startNonterminal("AndExpr",Ll),Hn();for(;;){if(Al!=75)break;vl(75),wl(265),yl(),Hn()}ql.endNonterminal("AndExpr",Ll)}function Pn(){Bn();for(;;){if(Al!=75)break;ml(75),wl(265),Bn()}}function Hn(){ql.startNonterminal("ComparisonExpr",Ll),jn();if(Al==27||Al==54||Al==57||Al==58||Al==60||Al==61||Al==62||Al==63||Al==128||Al==146||Al==150||Al==164||Al==172||Al==178||Al==186){switch(Al){case 128:case 146:case 150:case 172:case 178:case 186:yl(),pr();break;case 57:case 63:case 164:yl(),vr();break;default:yl(),cr()}wl(265),yl(),jn()}ql.endNonterminal("ComparisonExpr",Ll)}function Bn(){Fn();if(Al==27||Al==54||Al==57||Al==58||Al==60||Al==61||Al==62||Al==63||Al==128||Al==146||Al==150||Al==164||Al==172||Al==178||Al==186){switch(Al){case 128:case 146:case 150:case 172:case 178:case 186:dr();break;case 57:case 63:case 164:mr();break;default:hr()}wl(265),Fn()}}function jn(){ql.startNonterminal("FTContainsExpr",Ll),In(),Al==99&&(vl(99),wl(76),vl(244),wl(162),yl(),zo(),Al==271&&(yl(),ua())),ql.endNonterminal("FTContainsExpr",Ll)}function Fn(){qn(),Al==99&&(ml(99),wl(76),ml(244),wl(162),Wo(),Al==271&&aa())}function In(){ql.startNonterminal("StringConcatExpr",Ll),Rn();for(;;){if(Al!=280)break;vl(280),wl(265),yl(),Rn()}ql.endNonterminal("StringConcatExpr",Ll)}function qn(){Un();for(;;){if(Al!=280)break;ml(280),wl(265),Un()}}function Rn(){ql.startNonterminal("RangeExpr",Ll),zn(),Al==248&&(vl(248),wl(265),yl(),zn()),ql.endNonterminal("RangeExpr",Ll)}function Un(){Wn(),Al==248&&(ml(248),wl(265),Wn())}function zn(){ql.startNonterminal("AdditiveExpr",Ll),Xn();for(;;){if(Al!=40&&Al!=42)break;switch(Al){case 40:vl(40);break;default:vl(42)}wl(265),yl(),Xn()}ql.endNonterminal("AdditiveExpr",Ll)}function Wn(){Vn();for(;;){if(Al!=40&&Al!=42)break;switch(Al){case 40:ml(40);break;default:ml(42)}wl(265),Vn()}}function Xn(){ql.startNonterminal("MultiplicativeExpr",Ll),$n();for(;;){if(Al!=38&&Al!=118&&Al!=151&&Al!=180)break;switch(Al){case 38:vl(38);break;case 118:vl(118);break;case 151:vl(151);break;default:vl(180)}wl(265),yl(),$n()}ql.endNonterminal("MultiplicativeExpr",Ll)}function Vn(){Jn();for(;;){if(Al!=38&&Al!=118&&Al!=151&&Al!=180)break;switch(Al){case 38:ml(38);break;case 118:ml(118);break;case 151:ml(151);break;default:ml(180)}wl(265),Jn()}}function $n(){ql.startNonterminal("UnionExpr",Ll),Kn();for(;;){if(Al!=254&&Al!=279)break;switch(Al){case 254:vl(254);break;default:vl(279)}wl(265),yl(),Kn()}ql.endNonterminal("UnionExpr",Ll)}function Jn(){Qn();for(;;){if(Al!=254&&Al!=279)break;switch(Al){case 254:ml(254);break;default:ml(279)}wl(265),Qn()}}function Kn(){ql.startNonterminal("IntersectExceptExpr",Ll),Gn();for(;;){wl(222);if(Al!=131&&Al!=162)break;switch(Al){case 162:vl(162);break;default:vl(131)}wl(265),yl(),Gn()}ql.endNonterminal("IntersectExceptExpr",Ll)}function Qn(){Yn();for(;;){wl(222);if(Al!=131&&Al!=162)break;switch(Al){case 162:ml(162);break;default:ml(131)}wl(265),Yn()}}function Gn(){ql.startNonterminal("InstanceofExpr",Ll),Zn(),wl(223),Al==160&&(vl(160),wl(64),vl(196),wl(259),yl(),ps()),ql.endNonterminal("InstanceofExpr",Ll)}function Yn(){er(),wl(223),Al==160&&(ml(160),wl(64),ml(196),wl(259),ds())}function Zn(){ql.startNonterminal("TreatExpr",Ll),tr(),wl(224),Al==249&&(vl(249),wl(30),vl(79),wl(259),yl(),ps()),ql.endNonterminal("TreatExpr",Ll)}function er(){nr(),wl(224),Al==249&&(ml(249),wl(30),ml(79),wl(259),ds())}function tr(){ql.startNonterminal("CastableExpr",Ll),rr(),wl(225),Al==90&&(vl(90),wl(30),vl(79),wl(253),yl(),fs()),ql.endNonterminal("CastableExpr",Ll)}function nr(){ir(),wl(225),Al==90&&(ml(90),wl(30),ml(79),wl(253),ls())}function rr(){ql.startNonterminal("CastExpr",Ll),sr(),wl(227),Al==89&&(vl(89),wl(30),vl(79),wl(253),yl(),fs()),ql.endNonterminal("CastExpr",Ll)}function ir(){or(),wl(227),Al==89&&(ml(89),wl(30),ml(79),wl(253),ls())}function sr(){ql.startNonterminal("UnaryExpr",Ll);for(;;){wl(265);if(Al!=40&&Al!=42)break;switch(Al){case 42:vl(42);break;default:vl(40)}}yl(),ur(),ql.endNonterminal("UnaryExpr",Ll)}function or(){for(;;){wl(265);if(Al!=40&&Al!=42)break;switch(Al){case 42:ml(42);break;default:ml(40)}}ar()}function ur(){ql.startNonterminal("ValueExpr",Ll);switch(Al){case 260:El(246);break;default:Cl=Al}switch(Cl){case 87812:case 123140:case 129284:case 141572:gr();break;case 35:Er();break;default:fr()}ql.endNonterminal("ValueExpr",Ll)}function ar(){switch(Al){case 260:El(246);break;default:Cl=Al}switch(Cl){case 87812:case 123140:case 129284:case 141572:yr();break;case 35:Sr();break;default:lr()}}function fr(){ql.startNonterminal("SimpleMapExpr",Ll),Nr();for(;;){if(Al!=26)break;vl(26),wl(264),yl(),Nr()}ql.endNonterminal("SimpleMapExpr",Ll)}function lr(){Cr();for(;;){if(Al!=26)break;ml(26),wl(264),Cr()}}function cr(){ql.startNonterminal("GeneralComp",Ll);switch(Al){case 60:vl(60);break;case 27:vl(27);break;case 54:vl(54);break;case 58:vl(58);break;case 61:vl(61);break;default:vl(62)}ql.endNonterminal("GeneralComp",Ll)}function hr(){switch(Al){case 60:ml(60);break;case 27:ml(27);break;case 54:ml(54);break;case 58:ml(58);break;case 61:ml(61);break;default:ml(62)}}function pr(){ql.startNonterminal("ValueComp",Ll);switch(Al){case 128:vl(128);break;case 186:vl(186);break;case 178:vl(178);break;case 172:vl(172);break;case 150:vl(150);break;default:vl(146)}ql.endNonterminal("ValueComp",Ll)}function dr(){switch(Al){case 128:ml(128);break;case 186:ml(186);break;case 178:ml(178);break;case 172:ml(172);break;case 150:ml(150);break;default:ml(146)}}function vr(){ql.startNonterminal("NodeComp",Ll);switch(Al){case 164:vl(164);break;case 57:vl(57);break;default:vl(63)}ql.endNonterminal("NodeComp",Ll)}function mr(){switch(Al){case 164:ml(164);break;case 57:ml(57);break;default:ml(63)}}function gr(){ql.startNonterminal("ValidateExpr",Ll),vl(260),wl(160);if(Al!=276)switch(Al){case 252:vl(252),wl(253),yl(),po();break;default:yl(),br()}wl(87),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("ValidateExpr",Ll)}function yr(){ml(260),wl(160);if(Al!=276)switch(Al){case 252:ml(252),wl(253),vo();break;default:wr()}wl(87),ml(276),wl(267),G(),ml(282)}function br(){ql.startNonterminal("ValidationMode",Ll);switch(Al){case 171:vl(171);break;default:vl(240)}ql.endNonterminal("ValidationMode",Ll)}function wr(){switch(Al){case 171:ml(171);break;default:ml(240)}}function Er(){ql.startNonterminal("ExtensionExpr",Ll);for(;;){yl(),xr(),wl(100);if(Al!=35)break}vl(276),wl(273),Al!=282&&(yl(),Q()),vl(282),ql.endNonterminal("ExtensionExpr",Ll)}function Sr(){for(;;){Tr(),wl(100);if(Al!=35)break}ml(276),wl(273),Al!=282&&G(),ml(282)}function xr(){ql.startNonterminal("Pragma",Ll),vl(35),Sl(250),Al==21&&vl(21),Oa(),Sl(10),Al==21&&(vl(21),Sl(0),vl(1)),Sl(5),vl(30),ql.endNonterminal("Pragma",Ll)}function Tr(){ml(35),Sl(250),Al==21&&ml(21),Ma(),Sl(10),Al==21&&(ml(21),Sl(0),ml(1)),Sl(5),ml(30)}function Nr(){ql.startNonterminal("PathExpr",Ll);switch(Al){case 46:vl(46),wl(283);switch(Al){case 25:case 26:case 27:case 37:case 38:case 40:case 41:case 42:case 49:case 53:case 57:case 58:case 60:case 61:case 62:case 63:case 69:case 87:case 99:case 205:case 232:case 247:case 273:case 279:case 280:case 281:case 282:break;default:yl(),kr()}break;case 47:vl(47),wl(263),yl(),kr();break;default:kr()}ql.endNonterminal("PathExpr",Ll)}function Cr(){switch(Al){case 46:ml(46),wl(283);switch(Al){case 25:case 26:case 27:case 37:case 38:case 40:case 41:case 42:case 49:case 53:case 57:case 58:case 60:case 61:case 62:case 63:case 69:case 87:case 99:case 205:case 232:case 247:case 273:case 279:case 280:case 281:case 282:break;default:Lr()}break;case 47:ml(47),wl(263),Lr();break;default:Lr()}}function kr(){ql.startNonterminal("RelativePathExpr",Ll),Ar();for(;;){switch(Al){case 26:El(264);break;default:Cl=Al}if(Cl!=25&&Cl!=27&&Cl!=37&&Cl!=38&&Cl!=40&&Cl!=41&&Cl!=42&&Cl!=46&&Cl!=47&&Cl!=49&&Cl!=53&&Cl!=54&&Cl!=57&&Cl!=58&&Cl!=60&&Cl!=61&&Cl!=62&&Cl!=63&&Cl!=69&&Cl!=70&&Cl!=75&&Cl!=79&&Cl!=80&&Cl!=81&&Cl!=84&&Cl!=87&&Cl!=88&&Cl!=89&&Cl!=90&&Cl!=94&&Cl!=99&&Cl!=105&&Cl!=109&&Cl!=113&&Cl!=118&&Cl!=122&&Cl!=123&&Cl!=126&&Cl!=128&&Cl!=131&&Cl!=137&&Cl!=146&&Cl!=148&&Cl!=150&&Cl!=151&&Cl!=160&&Cl!=162&&Cl!=163&&Cl!=164&&Cl!=172&&Cl!=174&&Cl!=178&&Cl!=180&&Cl!=181&&Cl!=186&&Cl!=198&&Cl!=200&&Cl!=201&&Cl!=205&&Cl!=220&&Cl!=224&&Cl!=232&&Cl!=236&&Cl!=237&&Cl!=247&&Cl!=248&&Cl!=249&&Cl!=254&&Cl!=266&&Cl!=270&&Cl!=273&&Cl!=279&&Cl!=280&&Cl!=281&&Cl!=282&&Cl!=23578&&Cl!=24090){Cl=pl(2,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{switch(Al){case 46:ml(46);break;case 47:ml(47);break;default:ml(26)}wl(263),Or(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(2,Ll,Cl)}}if(Cl!=-1&&Cl!=46&&Cl!=47)break;switch(Al){case 46:vl(46);break;case 47:vl(47);break;default:vl(26)}wl(263),yl(),Ar()}ql.endNonterminal("RelativePathExpr",Ll)}function Lr(){Or();for(;;){switch(Al){case 26:El(264);break;default:Cl=Al}if(Cl!=25&&Cl!=27&&Cl!=37&&Cl!=38&&Cl!=40&&Cl!=41&&Cl!=42&&Cl!=46&&Cl!=47&&Cl!=49&&Cl!=53&&Cl!=54&&Cl!=57&&Cl!=58&&Cl!=60&&Cl!=61&&Cl!=62&&Cl!=63&&Cl!=69&&Cl!=70&&Cl!=75&&Cl!=79&&Cl!=80&&Cl!=81&&Cl!=84&&Cl!=87&&Cl!=88&&Cl!=89&&Cl!=90&&Cl!=94&&Cl!=99&&Cl!=105&&Cl!=109&&Cl!=113&&Cl!=118&&Cl!=122&&Cl!=123&&Cl!=126&&Cl!=128&&Cl!=131&&Cl!=137&&Cl!=146&&Cl!=148&&Cl!=150&&Cl!=151&&Cl!=160&&Cl!=162&&Cl!=163&&Cl!=164&&Cl!=172&&Cl!=174&&Cl!=178&&Cl!=180&&Cl!=181&&Cl!=186&&Cl!=198&&Cl!=200&&Cl!=201&&Cl!=205&&Cl!=220&&Cl!=224&&Cl!=232&&Cl!=236&&Cl!=237&&Cl!=247&&Cl!=248&&Cl!=249&&Cl!=254&&Cl!=266&&Cl!=270&&Cl!=273&&Cl!=279&&Cl!=280&&Cl!=281&&Cl!=282&&Cl!=23578&&Cl!=24090){Cl=pl(2,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{switch(Al){case 46:ml(46);break;case 47:ml(47);break;default:ml(26)}wl(263),Or(),hl(2,t,-1);continue}catch(a){kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(2,t,-2);break}}}if(Cl!=-1&&Cl!=46&&Cl!=47)break;switch(Al){case 46:ml(46);break;case 47:ml(47);break;default:ml(26)}wl(263),Or()}}function Ar(){ql.startNonterminal("StepExpr",Ll);switch(Al){case 82:El(282);break;case 121:El(280);break;case 184:case 216:El(279);break;case 96:case 119:case 202:case 244:case 256:El(245);break;case 124:case 152:case 165:case 243:case 253:El(238);break;case 73:case 74:case 93:case 111:case 112:case 135:case 136:case 206:case 212:case 213:case 229:El(244);break;case 6:case 70:case 72:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 86:case 88:case 89:case 90:case 91:case 94:case 97:case 98:case 101:case 102:case 103:case 104:case 105:case 106:case 108:case 109:case 110:case 113:case 118:case 120:case 122:case 123:case 125:case 126:case 128:case 129:case 131:case 132:case 133:case 134:case 137:case 141:case 145:case 146:case 148:case 150:case 151:case 153:case 154:case 155:case 159:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 174:case 176:case 178:case 180:case 181:case 182:case 185:case 186:case 191:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 218:case 219:case 220:case 221:case 222:case 224:case 225:case 226:case 227:case 228:case 234:case 235:case 236:case 237:case 240:case 248:case 249:case 250:case 251:case 252:case 254:case 257:case 260:case 261:case 262:case 263:case 266:case 267:case 270:case 274:El(242);break;default:Cl=Al}if(Cl==17486||Cl==17575||Cl==17602||Cl==35922||Cl==35961||Cl==36024||Cl==36056||Cl==38482||Cl==38521||Cl==38584||Cl==38616||Cl==40530||Cl==40569||Cl==40632||Cl==40664||Cl==41042||Cl==41081||Cl==41144||Cl==41176||Cl==41554||Cl==41593||Cl==41656||Cl==41688||Cl==43090||Cl==43129||Cl==43192||Cl==43224||Cl==45138||Cl==45177||Cl==45240||Cl==45272||Cl==45650||Cl==45689||Cl==45752||Cl==45784||Cl==46162||Cl==46201||Cl==46264||Cl==46296||Cl==48210||Cl==48249||Cl==48312||Cl==48344||Cl==53842||Cl==53881||Cl==53944||Cl==53976||Cl==55890||Cl==55929||Cl==55992||Cl==56024||Cl==57938||Cl==57977||Cl==58040||Cl==58072||Cl==60498||Cl==60537||Cl==60600||Cl==60632||Cl==62546||Cl==62585||Cl==62648||Cl==62680||Cl==63058||Cl==63097||Cl==63160||Cl==63192||Cl==64594||Cl==64633||Cl==64696||Cl==64728||Cl==65618||Cl==65657||Cl==65720||Cl==65752||Cl==67154||Cl==67193||Cl==67256||Cl==67288||Cl==70226||Cl==70265||Cl==70328||Cl==70360||Cl==74834||Cl==74873||Cl==74936||Cl==74968||Cl==75858||Cl==75897||Cl==75960||Cl==75992||Cl==76882||Cl==76921||Cl==76984||Cl==77016||Cl==77394||Cl==77433||Cl==77496||Cl==77528||Cl==82002||Cl==82041||Cl==82104||Cl==82136||Cl==83026||Cl==83065||Cl==83128||Cl==83160||Cl==83538||Cl==83577||Cl==83640||Cl==83672||Cl==84050||Cl==84089||Cl==84152||Cl==84184||Cl==88146||Cl==88185||Cl==88248||Cl==88280||Cl==89170||Cl==89209||Cl==89272||Cl==89304||Cl==91218||Cl==91257||Cl==91320||Cl==91352||Cl==92242||Cl==92281||Cl==92344||Cl==92376||Cl==92754||Cl==92793||Cl==92856||Cl==92888||Cl==95314||Cl==95353||Cl==95416||Cl==95448||Cl==101458||Cl==101497||Cl==101560||Cl==101592||Cl==102482||Cl==102521||Cl==102584||Cl==102616||Cl==102994||Cl==103033||Cl==103096||Cl==103128||Cl==112722||Cl==112761||Cl==112824||Cl==112856||Cl==114770||Cl==114809||Cl==114872||Cl==114904||Cl==120914||Cl==120953||Cl==121016||Cl==121048||Cl==121426||Cl==121465||Cl==121528||Cl==121560||Cl==127058||Cl==127097||Cl==127160||Cl==127192||Cl==127570||Cl==127609||Cl==127672||Cl==127704||Cl==130130||Cl==130169||Cl==130232||Cl==130264||Cl==136274||Cl==136313||Cl==136376||Cl==136408||Cl==138322||Cl==138361||Cl==138424||Cl==138456){Cl=pl(3,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{Qr(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(3,Ll,Cl)}}switch(Cl){case-1:case 8:case 9:case 10:case 11:case 31:case 32:case 34:case 44:case 54:case 55:case 59:case 68:case 276:case 278:case 3154:case 3193:case 9912:case 9944:case 14854:case 14918:case 14920:case 14921:case 14922:case 14923:case 14926:case 14927:case 14928:case 14929:case 14930:case 14931:case 14932:case 14933:case 14934:case 14936:case 14937:case 14938:case 14939:case 14941:case 14942:case 14944:case 14945:case 14946:case 14949:case 14950:case 14951:case 14952:case 14953:case 14954:case 14956:case 14957:case 14958:case 14959:case 14960:case 14961:case 14966:case 14967:case 14968:case 14969:case 14970:case 14971:case 14972:case 14973:case 14974:case 14976:case 14977:case 14979:case 14980:case 14981:case 14982:case 14983:case 14984:case 14985:case 14989:case 14993:case 14994:case 14996:case 14998:case 14999:case 15e3:case 15001:case 15002:case 15003:case 15007:case 15008:case 15009:case 15010:case 15011:case 15012:case 15013:case 15015:case 15018:case 15019:case 15020:case 15022:case 15024:case 15026:case 15028:case 15029:case 15030:case 15032:case 15033:case 15034:case 15039:case 15040:case 15042:case 15046:case 15047:case 15048:case 15049:case 15050:case 15051:case 15054:case 15060:case 15061:case 15064:case 15066:case 15067:case 15068:case 15069:case 15070:case 15072:case 15073:case 15074:case 15075:case 15076:case 15077:case 15082:case 15083:case 15084:case 15085:case 15088:case 15091:case 15092:case 15096:case 15097:case 15098:case 15099:case 15100:case 15101:case 15102:case 15104:case 15105:case 15108:case 15109:case 15110:case 15111:case 15114:case 15115:case 15118:case 15122:case 17414:case 17478:case 17480:case 17481:case 17482:case 17483:case 17487:case 17488:case 17489:case 17491:case 17492:case 17493:case 17494:case 17496:case 17497:case 17498:case 17499:case 17501:case 17502:case 17505:case 17506:case 17509:case 17510:case 17511:case 17512:case 17513:case 17514:case 17516:case 17517:case 17518:case 17519:case 17520:case 17521:case 17526:case 17527:case 17530:case 17531:case 17533:case 17534:case 17536:case 17537:case 17539:case 17540:case 17541:case 17542:case 17543:case 17544:case 17545:case 17549:case 17553:case 17554:case 17556:case 17558:case 17559:case 17561:case 17562:case 17563:case 17567:case 17568:case 17569:case 17570:case 17571:case 17572:case 17578:case 17579:case 17580:case 17582:case 17584:case 17586:case 17588:case 17589:case 17590:case 17592:case 17594:case 17600:case 17606:case 17607:case 17608:case 17609:case 17610:case 17611:case 17614:case 17620:case 17621:case 17626:case 17627:case 17628:case 17629:case 17630:case 17632:case 17633:case 17636:case 17637:case 17642:case 17643:case 17644:case 17645:case 17648:case 17656:case 17657:case 17658:case 17659:case 17660:case 17662:case 17664:case 17665:case 17668:case 17669:case 17670:case 17671:case 17674:case 17675:case 17678:case 17682:case 36946:case 36985:case 37048:case 37080:case 37458:case 37497:case 37560:case 37592:case 37970:case 38009:case 38072:case 38104:case 40018:case 40057:case 42066:case 42105:case 42168:case 42200:case 42578:case 42617:case 42680:case 42712:case 43602:case 43641:case 43704:case 43736:case 44114:case 44153:case 44216:case 44248:case 46674:case 46713:case 46776:case 46808:case 47698:case 47737:case 47800:case 47832:case 49234:case 49273:case 49336:case 49368:case 49746:case 49785:case 49848:case 49880:case 50258:case 50297:case 50360:case 50392:case 51794:case 51833:case 51896:case 51928:case 52306:case 52345:case 52408:case 52440:case 52818:case 52857:case 52920:case 52952:case 53330:case 53369:case 53432:case 53464:case 54354:case 54393:case 54456:case 54488:case 55378:case 55417:case 55480:case 55512:case 56402:case 56441:case 56504:case 56536:case 56914:case 56953:case 57016:case 57048:case 57426:case 57465:case 57528:case 57560:case 61010:case 61049:case 61112:case 61144:case 61522:case 61561:case 61624:case 61656:case 62034:case 62073:case 62136:case 62168:case 63570:case 63609:case 63672:case 63704:case 64082:case 64121:case 64184:case 64216:case 66130:case 66169:case 66232:case 66264:case 67666:case 67705:case 67768:case 67800:case 68178:case 68217:case 68280:case 68312:case 68690:case 68729:case 68792:case 68824:case 69202:case 69241:case 69304:case 69336:case 69714:case 69753:case 69816:case 69848:case 72274:case 72313:case 72376:case 72408:case 74322:case 74361:case 74424:case 74456:case 77906:case 77945:case 78008:case 78040:case 78418:case 78457:case 78520:case 78552:case 78930:case 78969:case 79032:case 79064:case 79442:case 79481:case 79544:case 79576:case 81490:case 81529:case 81592:case 81624:case 82514:case 82553:case 82616:case 82648:case 84562:case 84601:case 84664:case 84696:case 85586:case 85625:case 87122:case 87161:case 87224:case 87256:case 87634:case 87673:case 87736:case 87768:case 90194:case 90233:case 90296:case 90328:case 93266:case 93305:case 93368:case 93400:case 94290:case 94329:case 94392:case 94424:case 94802:case 94841:case 94904:case 94936:case 97874:case 97913:case 97976:case 98008:case 98386:case 98425:case 98488:case 98520:case 99410:case 99449:case 101970:case 102009:case 102072:case 102104:case 103506:case 103545:case 103608:case 103640:case 104018:case 104057:case 104120:case 104152:case 105554:case 105593:case 105656:case 105688:case 108626:case 108665:case 108728:case 108760:case 109138:case 109177:case 109240:case 109272:case 110674:case 110713:case 110776:case 110808:case 111698:case 111737:case 111800:case 111832:case 112210:case 112249:case 112312:case 112344:case 113234:case 113273:case 113336:case 113368:case 113746:case 113785:case 113848:case 113880:case 115282:case 115321:case 115384:case 115416:case 115794:case 115833:case 115896:case 115928:case 116306:case 116345:case 116408:case 116440:case 116818:case 116857:case 116920:case 116952:case 117330:case 117369:case 117432:case 117464:case 119890:case 119929:case 119992:case 120024:case 120402:case 120441:case 120504:case 120536:case 122962:case 123001:case 123064:case 123096:case 124498:case 124537:case 124600:case 124632:case 125010:case 125049:case 125112:case 125144:case 128082:case 128121:case 128184:case 128216:case 128594:case 128633:case 128696:case 128728:case 129106:case 129145:case 129208:case 129240:case 129618:case 129657:case 129720:case 129752:case 131154:case 131193:case 131256:case 131288:case 131666:case 131705:case 131768:case 131800:case 133202:case 133241:case 133304:case 133336:case 133714:case 133753:case 133816:case 133848:case 134226:case 134265:case 134328:case 134360:case 134738:case 134777:case 134840:case 134872:case 136786:case 136825:case 136888:case 136920:case 140370:case 140409:case 140472:case 140504:case 141394:case 141408:case 141431:case 141433:case 141496:case 141514:case 141528:case 141556:case 141568:Kr();break;default:Mr()}ql.endNonterminal("StepExpr",Ll)}function Or(){switch(Al){case 82:El(282);break;case 121:El(280);break;case 184:case 216:El(279);break;case 96:case 119:case 202:case 244:case 256:El(245);break;case 124:case 152:case 165:case 243:case 253:El(238);break;case 73:case 74:case 93:case 111:case 112:case 135:case 136:case 206:case 212:case 213:case 229:El(244);break;case 6:case 70:case 72:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 86:case 88:case 89:case 90:case 91:case 94:case 97:case 98:case 101:case 102:case 103:case 104:case 105:case 106:case 108:case 109:case 110:case 113:case 118:case 120:case 122:case 123:case 125:case 126:case 128:case 129:case 131:case 132:case 133:case 134:case 137:case 141:case 145:case 146:case 148:case 150:case 151:case 153:case 154:case 155:case 159:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 174:case 176:case 178:case 180:case 181:case 182:case 185:case 186:case 191:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 218:case 219:case 220:case 221:case 222:case 224:case 225:case 226:case 227:case 228:case 234:case 235:case 236:case 237:case 240:case 248:case 249:case 250:case 251:case 252:case 254:case 257:case 260:case 261:case 262:case 263:case 266:case 267:case 270:case 274:El(242);break;default:Cl=Al}if(Cl==17486||Cl==17575||Cl==17602||Cl==35922||Cl==35961||Cl==36024||Cl==36056||Cl==38482||Cl==38521||Cl==38584||Cl==38616||Cl==40530||Cl==40569||Cl==40632||Cl==40664||Cl==41042||Cl==41081||Cl==41144||Cl==41176||Cl==41554||Cl==41593||Cl==41656||Cl==41688||Cl==43090||Cl==43129||Cl==43192||Cl==43224||Cl==45138||Cl==45177||Cl==45240||Cl==45272||Cl==45650||Cl==45689||Cl==45752||Cl==45784||Cl==46162||Cl==46201||Cl==46264||Cl==46296||Cl==48210||Cl==48249||Cl==48312||Cl==48344||Cl==53842||Cl==53881||Cl==53944||Cl==53976||Cl==55890||Cl==55929||Cl==55992||Cl==56024||Cl==57938||Cl==57977||Cl==58040||Cl==58072||Cl==60498||Cl==60537||Cl==60600||Cl==60632||Cl==62546||Cl==62585||Cl==62648||Cl==62680||Cl==63058||Cl==63097||Cl==63160||Cl==63192||Cl==64594||Cl==64633||Cl==64696||Cl==64728||Cl==65618||Cl==65657||Cl==65720||Cl==65752||Cl==67154||Cl==67193||Cl==67256||Cl==67288||Cl==70226||Cl==70265||Cl==70328||Cl==70360||Cl==74834||Cl==74873||Cl==74936||Cl==74968||Cl==75858||Cl==75897||Cl==75960||Cl==75992||Cl==76882||Cl==76921||Cl==76984||Cl==77016||Cl==77394||Cl==77433||Cl==77496||Cl==77528||Cl==82002||Cl==82041||Cl==82104||Cl==82136||Cl==83026||Cl==83065||Cl==83128||Cl==83160||Cl==83538||Cl==83577||Cl==83640||Cl==83672||Cl==84050||Cl==84089||Cl==84152||Cl==84184||Cl==88146||Cl==88185||Cl==88248||Cl==88280||Cl==89170||Cl==89209||Cl==89272||Cl==89304||Cl==91218||Cl==91257||Cl==91320||Cl==91352||Cl==92242||Cl==92281||Cl==92344||Cl==92376||Cl==92754||Cl==92793||Cl==92856||Cl==92888||Cl==95314||Cl==95353||Cl==95416||Cl==95448||Cl==101458||Cl==101497||Cl==101560||Cl==101592||Cl==102482||Cl==102521||Cl==102584||Cl==102616||Cl==102994||Cl==103033||Cl==103096||Cl==103128||Cl==112722||Cl==112761||Cl==112824||Cl==112856||Cl==114770||Cl==114809||Cl==114872||Cl==114904||Cl==120914||Cl==120953||Cl==121016||Cl==121048||Cl==121426||Cl==121465||Cl==121528||Cl==121560||Cl==127058||Cl==127097||Cl==127160||Cl==127192||Cl==127570||Cl==127609||Cl==127672||Cl==127704||Cl==130130||Cl==130169||Cl==130232||Cl==130264||Cl==136274||Cl==136313||Cl==136376||Cl==136408||Cl==138322||Cl==138361||Cl==138424||Cl==138456){Cl=pl(3,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{Qr(),hl(3,t,-1),Cl=-3}catch(a){Cl=-2,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(3,t,-2)}}}switch(Cl){case-1:case 8:case 9:case 10:case 11:case 31:case 32:case 34:case 44:case 54:case 55:case 59:case 68:case 276:case 278:case 3154:case 3193:case 9912:case 9944:case 14854:case 14918:case 14920:case 14921:case 14922:case 14923:case 14926:case 14927:case 14928:case 14929:case 14930:case 14931:case 14932:case 14933:case 14934:case 14936:case 14937:case 14938:case 14939:case 14941:case 14942:case 14944:case 14945:case 14946:case 14949:case 14950:case 14951:case 14952:case 14953:case 14954:case 14956:case 14957:case 14958:case 14959:case 14960:case 14961:case 14966:case 14967:case 14968:case 14969:case 14970:case 14971:case 14972:case 14973:case 14974:case 14976:case 14977:case 14979:case 14980:case 14981:case 14982:case 14983:case 14984:case 14985:case 14989:case 14993:case 14994:case 14996:case 14998:case 14999:case 15e3:case 15001:case 15002:case 15003:case 15007:case 15008:case 15009:case 15010:case 15011:case 15012:case 15013:case 15015:case 15018:case 15019:case 15020:case 15022:case 15024:case 15026:case 15028:case 15029:case 15030:case 15032:case 15033:case 15034:case 15039:case 15040:case 15042:case 15046:case 15047:case 15048:case 15049:case 15050:case 15051:case 15054:case 15060:case 15061:case 15064:case 15066:case 15067:case 15068:case 15069:case 15070:case 15072:case 15073:case 15074:case 15075:case 15076:case 15077:case 15082:case 15083:case 15084:case 15085:case 15088:case 15091:case 15092:case 15096:case 15097:case 15098:case 15099:case 15100:case 15101:case 15102:case 15104:case 15105:case 15108:case 15109:case 15110:case 15111:case 15114:case 15115:case 15118:case 15122:case 17414:case 17478:case 17480:case 17481:case 17482:case 17483:case 17487:case 17488:case 17489:case 17491:case 17492:case 17493:case 17494:case 17496:case 17497:case 17498:case 17499:case 17501:case 17502:case 17505:case 17506:case 17509:case 17510:case 17511:case 17512:case 17513:case 17514:case 17516:case 17517:case 17518:case 17519:case 17520:case 17521:case 17526:case 17527:case 17530:case 17531:case 17533:case 17534:case 17536:case 17537:case 17539:case 17540:case 17541:case 17542:case 17543:case 17544:case 17545:case 17549:case 17553:case 17554:case 17556:case 17558:case 17559:case 17561:case 17562:case 17563:case 17567:case 17568:case 17569:case 17570:case 17571:case 17572:case 17578:case 17579:case 17580:case 17582:case 17584:case 17586:case 17588:case 17589:case 17590:case 17592:case 17594:case 17600:case 17606:case 17607:case 17608:case 17609:case 17610:case 17611:case 17614:case 17620:case 17621:case 17626:case 17627:case 17628:case 17629:case 17630:case 17632:case 17633:case 17636:case 17637:case 17642:case 17643:case 17644:case 17645:case 17648:case 17656:case 17657:case 17658:case 17659:case 17660:case 17662:case 17664:case 17665:case 17668:case 17669:case 17670:case 17671:case 17674:case 17675:case 17678:case 17682:case 36946:case 36985:case 37048:case 37080:case 37458:case 37497:case 37560:case 37592:case 37970:case 38009:case 38072:case 38104:case 40018:case 40057:case 42066:case 42105:case 42168:case 42200:case 42578:case 42617:case 42680:case 42712:case 43602:case 43641:case 43704:case 43736:case 44114:case 44153:case 44216:case 44248:case 46674:case 46713:case 46776:case 46808:case 47698:case 47737:case 47800:case 47832:case 49234:case 49273:case 49336:case 49368:case 49746:case 49785:case 49848:case 49880:case 50258:case 50297:case 50360:case 50392:case 51794:case 51833:case 51896:case 51928:case 52306:case 52345:case 52408:case 52440:case 52818:case 52857:case 52920:case 52952:case 53330:case 53369:case 53432:case 53464:case 54354:case 54393:case 54456:case 54488:case 55378:case 55417:case 55480:case 55512:case 56402:case 56441:case 56504:case 56536:case 56914:case 56953:case 57016:case 57048:case 57426:case 57465:case 57528:case 57560:case 61010:case 61049:case 61112:case 61144:case 61522:case 61561:case 61624:case 61656:case 62034:case 62073:case 62136:case 62168:case 63570:case 63609:case 63672:case 63704:case 64082:case 64121:case 64184:case 64216:case 66130:case 66169:case 66232:case 66264:case 67666:case 67705:case 67768:case 67800:case 68178:case 68217:case 68280:case 68312:case 68690:case 68729:case 68792:case 68824:case 69202:case 69241:case 69304:case 69336:case 69714:case 69753:case 69816:case 69848:case 72274:case 72313:case 72376:case 72408:case 74322:case 74361:case 74424:case 74456:case 77906:case 77945:case 78008:case 78040:case 78418:case 78457:case 78520:case 78552:case 78930:case 78969:case 79032:case 79064:case 79442:case 79481:case 79544:case 79576:case 81490:case 81529:case 81592:case 81624:case 82514:case 82553:case 82616:case 82648:case 84562:case 84601:case 84664:case 84696:case 85586:case 85625:case 87122:case 87161:case 87224:case 87256:case 87634:case 87673:case 87736:case 87768:case 90194:case 90233:case 90296:case 90328:case 93266:case 93305:case 93368:case 93400:case 94290:case 94329:case 94392:case 94424:case 94802:case 94841:case 94904:case 94936:case 97874:case 97913:case 97976:case 98008:case 98386:case 98425:case 98488:case 98520:case 99410:case 99449:case 101970:case 102009:case 102072:case 102104:case 103506:case 103545:case 103608:case 103640:case 104018:case 104057:case 104120:case 104152:case 105554:case 105593:case 105656:case 105688:case 108626:case 108665:case 108728:case 108760:case 109138:case 109177:case 109240:case 109272:case 110674:case 110713:case 110776:case 110808:case 111698:case 111737:case 111800:case 111832:case 112210:case 112249:case 112312:case 112344:case 113234:case 113273:case 113336:case 113368:case 113746:case 113785:case 113848:case 113880:case 115282:case 115321:case 115384:case 115416:case 115794:case 115833:case 115896:case 115928:case 116306:case 116345:case 116408:case 116440:case 116818:case 116857:case 116920:case 116952:case 117330:case 117369:case 117432:case 117464:case 119890:case 119929:case 119992:case 120024:case 120402:case 120441:case 120504:case 120536:case 122962:case 123001:case 123064:case 123096:case 124498:case 124537:case 124600:case 124632:case 125010:case 125049:case 125112:case 125144:case 128082:case 128121:case 128184:case 128216:case 128594:case 128633:case 128696:case 128728:case 129106:case 129145:case 129208:case 129240:case 129618:case 129657:case 129720:case 129752:case 131154:case 131193:case 131256:case 131288:case 131666:case 131705:case 131768:case 131800:case 133202:case 133241:case 133304:case 133336:case 133714:case 133753:case 133816:case 133848:case 134226:case 134265:case 134328:case 134360:case 134738:case 134777:case 134840:case 134872:case 136786:case 136825:case 136888:case 136920:case 140370:case 140409:case 140472:case 140504:case 141394:case 141408:case 141431:case 141433:case 141496:case 141514:case 141528:case 141556:case 141568:Qr();break;case-3:break;default:_r()}}function Mr(){ql.startNonterminal("AxisStep",Ll);switch(Al){case 73:case 74:case 206:case 212:case 213:El(240);break;default:Cl=Al}switch(Cl){case 45:case 26185:case 26186:case 26318:case 26324:case 26325:Ir();break;default:Dr()}wl(236),yl(),Zr(),ql.endNonterminal("AxisStep",Ll)}function _r(){switch(Al){case 73:case 74:case 206:case 212:case 213:El(240);break;default:Cl=Al}switch(Cl){case 45:case 26185:case 26186:case 26318:case 26324:case 26325:qr();break;default:Pr()}wl(236),ei()}function Dr(){ql.startNonterminal("ForwardStep",Ll);switch(Al){case 82:El(243);break;case 93:case 111:case 112:case 135:case 136:case 229:El(240);break;default:Cl=Al}switch(Cl){case 26194:case 26205:case 26223:case 26224:case 26247:case 26248:case 26341:Hr(),wl(255),yl(),Xr();break;default:jr()}ql.endNonterminal("ForwardStep",Ll)}function Pr(){switch(Al){case 82:El(243);break;case 93:case 111:case 112:case 135:case 136:case 229:El(240);break;default:Cl=Al}switch(Cl){case 26194:case 26205:case 26223:case 26224:case 26247:case 26248:case 26341:Br(),wl(255),Vr();break;default:Fr()}}function Hr(){ql.startNonterminal("ForwardAxis",Ll);switch(Al){case 93:vl(93),wl(26),vl(51);break;case 111:vl(111),wl(26),vl(51);break;case 82:vl(82),wl(26),vl(51);break;case 229:vl(229),wl(26),vl(51);break;case 112:vl(112),wl(26),vl(51);break;case 136:vl(136),wl(26),vl(51);break;default:vl(135),wl(26),vl(51)}ql.endNonterminal("ForwardAxis",Ll)}function Br(){switch(Al){case 93:ml(93),wl(26),ml(51);break;case 111:ml(111),wl(26),ml(51);break;case 82:ml(82),wl(26),ml(51);break;case 229:ml(229),wl(26),ml(51);break;case 112:ml(112),wl(26),ml(51);break;case 136:ml(136),wl(26),ml(51);break;default:ml(135),wl(26),ml(51)}}function jr(){ql.startNonterminal("AbbrevForwardStep",Ll),Al==66&&vl(66),wl(255),yl(),Xr(),ql.endNonterminal("AbbrevForwardStep",Ll)}function Fr(){Al==66&&ml(66),wl(255),Vr()}function Ir(){ql.startNonterminal("ReverseStep",Ll);switch(Al){case 45:zr();break;default:Rr(),wl(255),yl(),Xr()}ql.endNonterminal("ReverseStep",Ll)}function qr(){switch(Al){case 45:Wr();break;default:Ur(),wl(255),Vr()}}function Rr(){ql.startNonterminal("ReverseAxis",Ll);switch(Al){case 206:vl(206),wl(26),vl(51);break;case 73:vl(73),wl(26),vl(51);break;case 213:vl(213),wl(26),vl(51);break;case 212:vl(212),wl(26),vl(51);break;default:vl(74),wl(26),vl(51)}ql.endNonterminal("ReverseAxis",Ll)}function Ur(){switch(Al){case 206:ml(206),wl(26),ml(51);break;case 73:ml(73),wl(26),ml(51);break;case 213:ml(213),wl(26),ml(51);break;case 212:ml(212),wl(26),ml(51);break;default:ml(74),wl(26),ml(51)}}function zr(){ql.startNonterminal("AbbrevReverseStep",Ll),vl(45),ql.endNonterminal("AbbrevReverseStep",Ll)}function Wr(){ml(45)}function Xr(){ql.startNonterminal("NodeTest",Ll);switch(Al){case 78:case 82:case 96:case 120:case 121:case 167:case 185:case 191:case 194:case 216:case 226:case 227:case 244:El(239);break;default:Cl=Al}switch(Cl){case 17486:case 17490:case 17504:case 17528:case 17529:case 17575:case 17593:case 17599:case 17602:case 17624:case 17634:case 17635:case 17652:Ms();break;default:$r()}ql.endNonterminal("NodeTest",Ll)}function Vr(){switch(Al){case 78:case 82:case 96:case 120:case 121:case 167:case 185:case 191:case 194:case 216:case 226:case 227:case 244:El(239);break;default:Cl=Al}switch(Cl){case 17486:case 17490:case 17504:case 17528:case 17529:case 17575:case 17593:case 17599:case 17602:case 17624:case 17634:case 17635:case 17652:_s();break;default:Jr()}}function $r(){ql.startNonterminal("NameTest",Ll);switch(Al){case 5:vl(5);break;default:Oa()}ql.endNonterminal("NameTest",Ll)}function Jr(){switch(Al){case 5:ml(5);break;default:Ma()}}function Kr(){ql.startNonterminal("PostfixExpr",Ll),Zf();for(;;){wl(239);if(Al!=34&&Al!=68)break;switch(Al){case 68:yl(),ti();break;default:yl(),Gr()}}ql.endNonterminal("PostfixExpr",Ll)}function Qr(){el();for(;;){wl(239);if(Al!=34&&Al!=68)break;switch(Al){case 68:ni();break;default:Yr()}}}function Gr(){ql.startNonterminal("ArgumentList",Ll),vl(34),wl(275);if(Al!=37){yl(),Ei();for(;;){wl(101);if(Al!=41)break;vl(41),wl(270),yl(),Ei()}}vl(37),ql.endNonterminal("ArgumentList",Ll)}function Yr(){ml(34),wl(275);if(Al!=37){Si();for(;;){wl(101);if(Al!=41)break;ml(41),wl(270),Si()}}ml(37)}function Zr(){ql.startNonterminal("PredicateList",Ll);for(;;){wl(236);if(Al!=68)break;yl(),ti()}ql.endNonterminal("PredicateList",Ll)}function ei(){for(;;){wl(236);if(Al!=68)break;ni()}}function ti(){ql.startNonterminal("Predicate",Ll),vl(68),wl(267),yl(),Q(),vl(69),ql.endNonterminal("Predicate",Ll)}function ni(){ml(68),wl(267),G(),ml(69)}function ri(){ql.startNonterminal("Literal",Ll);switch(Al){case 11:vl(11);break;default:si()}ql.endNonterminal("Literal",Ll)}function ii(){switch(Al){case 11:ml(11);break;default:oi()}}function si(){ql.startNonterminal("NumericLiteral",Ll);switch(Al){case 8:vl(8);break;case 9:vl(9);break;default:vl(10)}ql.endNonterminal("NumericLiteral",Ll)}function oi(){switch(Al){case 8:ml(8);break;case 9:ml(9);break;default:ml(10)}}function ui(){ql.startNonterminal("VarRef",Ll),vl(31),wl(253),yl(),fi(),ql.endNonterminal("VarRef",Ll)}function ai(){ml(31),wl(253),li()}function fi(){ql.startNonterminal("VarName",Ll),Oa(),ql.endNonterminal("VarName",Ll)}function li(){Ma()}function ci(){ql.startNonterminal("ParenthesizedExpr",Ll),vl(34),wl(269),Al!=37&&(yl(),Q()),vl(37),ql.endNonterminal("ParenthesizedExpr",Ll)}function hi(){ml(34),wl(269),Al!=37&&G(),ml(37)}function pi(){ql.startNonterminal("ContextItemExpr",Ll),vl(44),ql.endNonterminal("ContextItemExpr",Ll)}function di(){ml(44)}function vi(){ql.startNonterminal("OrderedExpr",Ll),vl(202),wl(87),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("OrderedExpr",Ll)}function mi(){ml(202),wl(87),ml(276),wl(267),G(),ml(282)}function gi(){ql.startNonterminal("UnorderedExpr",Ll),vl(256),wl(87),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("UnorderedExpr",Ll)}function yi(){ml(256),wl(87),ml(276),wl(267),G(),ml(282)}function bi(){ql.startNonterminal("FunctionCall",Ll),_a(),wl(22),yl(),Gr(),ql.endNonterminal("FunctionCall",Ll)}function wi(){Da(),wl(22),Yr()}function Ei(){ql.startNonterminal("Argument",Ll);switch(Al){case 64:xi();break;default:Nf()}ql.endNonterminal("Argument",Ll)}function Si(){switch(Al){case 64:Ti();break;default:Cf()}}function xi(){ql.startNonterminal("ArgumentPlaceholder",Ll),vl(64),ql.endNonterminal("ArgumentPlaceholder",Ll)}function Ti(){ml(64)}function Ni(){ql.startNonterminal("Constructor",Ll);switch(Al){case 54:case 55:case 59:ki();break;default:Xi()}ql.endNonterminal("Constructor",Ll)}function Ci(){switch(Al){case 54:case 55:case 59:Li();break;default:Vi()}}function ki(){ql.startNonterminal("DirectConstructor",Ll);switch(Al){case 54:Ai();break;case 55:Ri();break;default:zi()}ql.endNonterminal("DirectConstructor",Ll)}function Li(){switch(Al){case 54:Oi();break;case 55:Ui();break;default:Wi()}}function Ai(){ql.startNonterminal("DirElemConstructor",Ll),vl(54),Sl(4),vl(20),Mi();switch(Al){case 48:vl(48);break;default:vl(61);for(;;){Sl(174);if(Al==56)break;Ii()}vl(56),Sl(4),vl(20),Sl(12),Al==21&&vl(21),Sl(8),vl(61)}ql.endNonterminal("DirElemConstructor",Ll)}function Oi(){ml(54),Sl(4),ml(20),_i();switch(Al){case 48:ml(48);break;default:ml(61);for(;;){Sl(174);if(Al==56)break;qi()}ml(56),Sl(4),ml(20),Sl(12),Al==21&&ml(21),Sl(8),ml(61)}}function Mi(){ql.startNonterminal("DirAttributeList",Ll);for(;;){Sl(19);if(Al!=21)break;vl(21),Sl(91),Al==20&&(vl(20),Sl(11),Al==21&&vl(21),Sl(7),vl(60),Sl(18),Al==21&&vl(21),Di())}ql.endNonterminal("DirAttributeList",Ll)}function _i(){for(;;){Sl(19);if(Al!=21)break;ml(21),Sl(91),Al==20&&(ml(20),Sl(11),Al==21&&ml(21),Sl(7),ml(60),Sl(18),Al==21&&ml(21),Pi())}}function Di(){ql.startNonterminal("DirAttributeValue",Ll),Sl(14);switch(Al){case 28:vl(28);for(;;){Sl(167);if(Al==28)break;switch(Al){case 13:vl(13);break;default:Hi()}}vl(28);break;default:vl(33);for(;;){Sl(168);if(Al==33)break;switch(Al){case 14:vl(14);break;default:ji()}}vl(33)}ql.endNonterminal("DirAttributeValue",Ll)}function Pi(){Sl(14);switch(Al){case 28:ml(28);for(;;){Sl(167);if(Al==28)break;switch(Al){case 13:ml(13);break;default:Bi()}}ml(28);break;default:ml(33);for(;;){Sl(168);if(Al==33)break;switch(Al){case 14:ml(14);break;default:Fi()}}ml(33)}}function Hi(){ql.startNonterminal("QuotAttrValueContent",Ll);switch(Al){case 16:vl(16);break;default:If()}ql.endNonterminal("QuotAttrValueContent",Ll)}function Bi(){switch(Al){case 16:ml(16);break;default:qf()}}function ji(){ql.startNonterminal("AposAttrValueContent",Ll);switch(Al){case 17:vl(17);break;default:If()}ql.endNonterminal("AposAttrValueContent",Ll)}function Fi(){switch(Al){case 17:ml(17);break;default:qf()}}function Ii(){ql.startNonterminal("DirElemContent",Ll);switch(Al){case 54:case 55:case 59:ki();break;case 4:vl(4);break;case 15:vl(15);break;default:If()}ql.endNonterminal("DirElemContent",Ll)}function qi(){switch(Al){case 54:case 55:case 59:Li();break;case 4:ml(4);break;case 15:ml(15);break;default:qf()}}function Ri(){ql.startNonterminal("DirCommentConstructor",Ll),vl(55),Sl(1),vl(2),Sl(6),vl(43),ql.endNonterminal("DirCommentConstructor",Ll)}function Ui(){ml(55),Sl(1),ml(2),Sl(6),ml(43)}function zi(){ql.startNonterminal("DirPIConstructor",Ll),vl(59),Sl(3),vl(18),Sl(13),Al==21&&(vl(21),Sl(2),vl(3)),Sl(9),vl(65),ql.endNonterminal("DirPIConstructor",Ll)}function Wi(){ml(59),Sl(3),ml(18),Sl(13),Al==21&&(ml(21),Sl(2),ml(3)),Sl(9),ml(65)}function Xi(){ql.startNonterminal("ComputedConstructor",Ll);switch(Al){case 119:zf();break;case 121:$i();break;case 82:Xf();break;case 184:Ki();break;case 244:Gf();break;case 96:Kf();break;default:$f()}ql.endNonterminal("ComputedConstructor",Ll)}function Vi(){switch(Al){case 119:Wf();break;case 121:Ji();break;case 82:Vf();break;case 184:Qi();break;case 244:Yf();break;case 96:Qf();break;default:Jf()}}function $i(){ql.startNonterminal("CompElemConstructor",Ll),vl(121),wl(256);switch(Al){case 276:vl(276),wl(267),yl(),Q(),vl(282);break;default:yl(),Oa()}wl(87),vl(276),wl(273),Al!=282&&(yl(),Rf()),vl(282),ql.endNonterminal("CompElemConstructor",Ll)}function Ji(){ml(121),wl(256);switch(Al){case 276:ml(276),wl(267),G(),ml(282);break;default:Ma()}wl(87),ml(276),wl(273),Al!=282&&Uf(),ml(282)}function Ki(){ql.startNonterminal("CompNamespaceConstructor",Ll),vl(184),wl(249);switch(Al){case 276:vl(276),wl(267),yl(),Zi(),vl(282);break;default:yl(),Gi()}wl(87),vl(276),wl(267),yl(),ts(),vl(282),ql.endNonterminal("CompNamespaceConstructor",Ll)}function Qi(){ml(184),wl(249);switch(Al){case 276:ml(276),wl(267),es(),ml(282);break;default:Yi()}wl(87),ml(276),wl(267),ns(),ml(282)}function Gi(){ql.startNonterminal("Prefix",Ll),Pa(),ql.endNonterminal("Prefix",Ll)}function Yi(){Ha()}function Zi(){ql.startNonterminal("PrefixExpr",Ll),Q(),ql.endNonterminal("PrefixExpr",Ll)}function es(){G()}function ts(){ql.startNonterminal("URIExpr",Ll),Q(),ql.endNonterminal("URIExpr",Ll)}function ns(){G()}function rs(){ql.startNonterminal("FunctionItemExpr",Ll);switch(Al){case 145:El(92);break;default:Cl=Al}switch(Cl){case 32:case 17553:us();break;default:ss()}ql.endNonterminal("FunctionItemExpr",Ll)}function is(){switch(Al){case 145:El(92);break;default:Cl=Al}switch(Cl){case 32:case 17553:as();break;default:os()}}function ss(){ql.startNonterminal("NamedFunctionRef",Ll),Oa(),wl(20),vl(29),wl(16),vl(8),ql.endNonterminal("NamedFunctionRef",Ll)}function os(){Ma(),wl(20),ml(29),wl(16),ml(8)}function us(){ql.startNonterminal("InlineFunctionExpr",Ll);for(;;){wl(97);if(Al!=32)break;yl(),H()}vl(145),wl(22),vl(34),wl(94),Al==31&&(yl(),R()),vl(37),wl(111),Al==79&&(vl(79),wl(259),yl(),ps()),wl(87),yl(),X(),ql.endNonterminal("InlineFunctionExpr",Ll)}function as(){for(;;){wl(97);if(Al!=32)break;B()}ml(145),wl(22),ml(34),wl(94),Al==31&&U(),ml(37),wl(111),Al==79&&(ml(79),wl(259),ds()),wl(87),V()}function fs(){ql.startNonterminal("SingleType",Ll),co(),wl(226),Al==64&&vl(64),ql.endNonterminal("SingleType",Ll)}function ls(){ho(),wl(226),Al==64&&ml(64)}function cs(){ql.startNonterminal("TypeDeclaration",Ll),vl(79),wl(259),yl(),ps(),ql.endNonterminal("TypeDeclaration",Ll)}function hs(){ml(79),wl(259),ds()}function ps(){ql.startNonterminal("SequenceType",Ll);switch(Al){case 124:El(241);break;default:Cl=Al}switch(Cl){case 17532:vl(124),wl(22),vl(34),wl(23),vl(37);break;default:gs(),wl(237);switch(Al){case 39:case 40:case 64:yl(),vs();break;default:}}ql.endNonterminal("SequenceType",Ll)}function ds(){switch(Al){case 124:El(241);break;default:Cl=Al}switch(Cl){case 17532:ml(124),wl(22),ml(34),wl(23),ml(37);break;default:ys(),wl(237);switch(Al){case 39:case 40:case 64:ms();break;default:}}}function vs(){ql.startNonterminal("OccurrenceIndicator",Ll);switch(Al){case 64:vl(64);break;case 39:vl(39);break;default:vl(40)}ql.endNonterminal("OccurrenceIndicator",Ll)}function ms(){switch(Al){case 64:ml(64);break;case 39:ml(39);break;default:ml(40)}}function gs(){ql.startNonterminal("ItemType",Ll);switch(Al){case 78:case 82:case 96:case 120:case 121:case 145:case 165:case 167:case 185:case 191:case 194:case 216:case 226:case 227:case 244:El(241);break;default:Cl=Al}if(Cl==17486||Cl==17575||Cl==17602){Cl=pl(4,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{_s(),Cl=-1}catch(a){Cl=-6}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(4,Ll,Cl)}}switch(Cl){case-1:case 17490:case 17504:case 17528:case 17529:case 17593:case 17599:case 17624:case 17634:case 17635:case 17652:Ms();break;case 17573:vl(165),wl(22),vl(34),wl(23),vl(37);break;case 32:case 17553:mo();break;case 34:So();break;case-6:bs();break;case 242:Es();break;default:As()}ql.endNonterminal("ItemType",Ll)}function ys(){switch(Al){case 78:case 82:case 96:case 120:case 121:case 145:case 165:case 167:case 185:case 191:case 194:case 216:case 226:case 227:case 244:El(241);break;default:Cl=Al}if(Cl==17486||Cl==17575||Cl==17602){Cl=pl(4,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{_s(),hl(4,t,-1),Cl=-8}catch(a){Cl=-6,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(4,t,-6)}}}switch(Cl){case-1:case 17490:case 17504:case 17528:case 17529:case 17593:case 17599:case 17624:case 17634:case 17635:case 17652:_s();break;case 17573:ml(165),wl(22),ml(34),wl(23),ml(37);break;case 32:case 17553:go();break;case 34:xo();break;case-6:ws();break;case 242:Ss();break;case-8:break;default:Os()}}function bs(){ql.startNonterminal("JSONTest",Ll);switch(Al){case 167:xs();break;case 194:Ns();break;default:ks()}ql.endNonterminal("JSONTest",Ll)}function ws(){switch(Al){case 167:Ts();break;case 194:Cs();break;default:Ls()}}function Es(){ql.startNonterminal("StructuredItemTest",Ll),vl(242),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("StructuredItemTest",Ll)}function Ss(){ml(242),wl(22),ml(34),wl(23),ml(37)}function xs(){ql.startNonterminal("JSONItemTest",Ll),vl(167),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("JSONItemTest",Ll)}function Ts(){ml(167),wl(22),ml(34),wl(23),ml(37)}function Ns(){ql.startNonterminal("JSONObjectTest",Ll),vl(194),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("JSONObjectTest",Ll)}function Cs(){ml(194),wl(22),ml(34),wl(23),ml(37)}function ks(){ql.startNonterminal("JSONArrayTest",Ll),vl(78),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("JSONArrayTest",Ll)}function Ls(){ml(78),wl(22),ml(34),wl(23),ml(37)}function As(){ql.startNonterminal("AtomicOrUnionType",Ll),Oa(),ql.endNonterminal("AtomicOrUnionType",Ll)}function Os(){Ma()}function Ms(){ql.startNonterminal("KindTest",Ll);switch(Al){case 120:Hs();break;case 121:Zs();break;case 82:Xs();break;case 227:ro();break;case 226:Ks();break;case 216:zs();break;case 96:Is();break;case 244:js();break;case 185:Rs();break;case 191:Ds();break;default:bs()}ql.endNonterminal("KindTest",Ll)}function _s(){switch(Al){case 120:Bs();break;case 121:eo();break;case 82:Vs();break;case 227:io();break;case 226:Qs();break;case 216:Ws();break;case 96:qs();break;case 244:Fs();break;case 185:Us();break;case 191:Ps();break;default:ws()}}function Ds(){ql.startNonterminal("AnyKindTest",Ll),vl(191),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("AnyKindTest",Ll)}function Ps(){ml(191),wl(22),ml(34),wl(23),ml(37)}function Hs(){ql.startNonterminal("DocumentTest",Ll),vl(120),wl(22),vl(34),wl(144);if(Al!=37)switch(Al){case 121:yl(),Zs();break;default:yl(),ro()}wl(23),vl(37),ql.endNonterminal("DocumentTest",Ll)}function Bs(){ml(120),wl(22),ml(34),wl(144);if(Al!=37)switch(Al){case 121:eo();break;default:io()}wl(23),ml(37)}function js(){ql.startNonterminal("TextTest",Ll),vl(244),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("TextTest",Ll)}function Fs(){ml(244),wl(22),ml(34),wl(23),ml(37)}function Is(){ql.startNonterminal("CommentTest",Ll),vl(96),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("CommentTest",Ll)}function qs(){ml(96),wl(22),ml(34),wl(23),ml(37)}function Rs(){ql.startNonterminal("NamespaceNodeTest",Ll),vl(185),wl(22),vl(34),wl(23),vl(37),ql.endNonterminal("NamespaceNodeTest",Ll)}function Us(){ml(185),wl(22),ml(34),wl(23),ml(37)}function zs(){ql.startNonterminal("PITest",Ll),vl(216),wl(22),vl(34),wl(251);if(Al!=37)switch(Al){case 11:vl(11);break;default:yl(),Pa()}wl(23),vl(37),ql.endNonterminal("PITest",Ll)}function Ws(){ml(216),wl(22),ml(34),wl(251);if(Al!=37)switch(Al){case 11:ml(11);break;default:Ha()}wl(23),ml(37)}function Xs(){ql.startNonterminal("AttributeTest",Ll),vl(82),wl(22),vl(34),wl(258),Al!=37&&(yl(),$s(),wl(101),Al==41&&(vl(41),wl(253),yl(),po())),wl(23),vl(37),ql.endNonterminal("AttributeTest",Ll)}function Vs(){ml(82),wl(22),ml(34),wl(258),Al!=37&&(Js(),wl(101),Al==41&&(ml(41),wl(253),vo())),wl(23),ml(37)}function $s(){ql.startNonterminal("AttribNameOrWildcard",Ll);switch(Al){case 38:vl(38);break;default:uo()}ql.endNonterminal("AttribNameOrWildcard",Ll)}function Js(){switch(Al){case 38:ml(38);break;default:ao()}}function Ks(){ql.startNonterminal("SchemaAttributeTest",Ll),vl(226),wl(22),vl(34),wl(253),yl(),Gs(),wl(23),vl(37),ql.endNonterminal("SchemaAttributeTest",Ll)}function Qs(){ml(226),wl(22),ml(34),wl(253),Ys(),wl(23),ml(37)}function Gs(){ql.startNonterminal("AttributeDeclaration",Ll),uo(),ql.endNonterminal("AttributeDeclaration",Ll)}function Ys(){ao()}function Zs(){ql.startNonterminal("ElementTest",Ll),vl(121),wl(22),vl(34),wl(258),Al!=37&&(yl(),to(),wl(101),Al==41&&(vl(41),wl(253),yl(),po(),wl(102),Al==64&&vl(64))),wl(23),vl(37),ql.endNonterminal("ElementTest",Ll)}function eo(){ml(121),wl(22),ml(34),wl(258),Al!=37&&(no(),wl(101),Al==41&&(ml(41),wl(253),vo(),wl(102),Al==64&&ml(64))),wl(23),ml(37)}function to(){ql.startNonterminal("ElementNameOrWildcard",Ll);switch(Al){case 38:vl(38);break;default:fo()}ql.endNonterminal("ElementNameOrWildcard",Ll)}function no(){switch(Al){case 38:ml(38);break;default:lo()}}function ro(){ql.startNonterminal("SchemaElementTest",Ll),vl(227),wl(22),vl(34),wl(253),yl(),so(),wl(23),vl(37),ql.endNonterminal("SchemaElementTest",Ll)}function io(){ml(227),wl(22),ml(34),wl(253),oo(),wl(23),ml(37)}function so(){ql.startNonterminal("ElementDeclaration",Ll),fo(),ql.endNonterminal("ElementDeclaration",Ll)}function oo(){lo()}function uo(){ql.startNonterminal("AttributeName",Ll),Oa(),ql.endNonterminal("AttributeName",Ll)}function ao(){Ma()}function fo(){ql.startNonterminal("ElementName",Ll),Oa(),ql.endNonterminal("ElementName",Ll)}function lo(){Ma()}function co(){ql.startNonterminal("SimpleTypeName",Ll),po(),ql.endNonterminal("SimpleTypeName",Ll)}function ho(){vo()}function po(){ql.startNonterminal("TypeName",Ll),Oa(),ql.endNonterminal("TypeName",Ll)}function vo(){Ma()}function mo(){ql.startNonterminal("FunctionTest",Ll);for(;;){wl(97);if(Al!=32)break;yl(),H()}switch(Al){case 145:El(22);break;default:Cl=Al}Cl=pl(5,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{bo(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(5,Ll,Cl)}switch(Cl){case-1:yl(),yo();break;default:yl(),wo()}ql.endNonterminal("FunctionTest",Ll)}function go(){for(;;){wl(97);if(Al!=32)break;B()}switch(Al){case 145:El(22);break;default:Cl=Al}Cl=pl(5,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{bo(),hl(5,t,-1),Cl=-3}catch(a){Cl=-2,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(5,t,-2)}}switch(Cl){case-1:bo();break;case-3:break;default:Eo()}}function yo(){ql.startNonterminal("AnyFunctionTest",Ll),vl(145),wl(22),vl(34),wl(24),vl(38),wl(23),vl(37),ql.endNonterminal("AnyFunctionTest",Ll)}function bo(){ml(145),wl(22),ml(34),wl(24),ml(38),wl(23),ml(37)}function wo(){ql.startNonterminal("TypedFunctionTest",Ll),vl(145),wl(22),vl(34),wl(261);if(Al!=37){yl(),ps();for(;;){wl(101);if(Al!=41)break;vl(41),wl(259),yl(),ps()}}vl(37),wl(30),vl(79),wl(259),yl(),ps(),ql.endNonterminal("TypedFunctionTest",Ll)}function Eo(){ml(145),wl(22),ml(34),wl(261);if(Al!=37){ds();for(;;){wl(101);if(Al!=41)break;ml(41),wl(259),ds()}}ml(37),wl(30),ml(79),wl(259),ds()}function So(){ql.startNonterminal("ParenthesizedItemType",Ll),vl(34),wl(259),yl(),gs(),wl(23),vl(37),ql.endNonterminal("ParenthesizedItemType",Ll)}function xo(){ml(34),wl(259),ys(),wl(23),ml(37)}function To(){ql.startNonterminal("RevalidationDecl",Ll),vl(108),wl(72),vl(222),wl(152);switch(Al){case 240:vl(240);break;case 171:vl(171);break;default:vl(233)}ql.endNonterminal("RevalidationDecl",Ll)}function No(){ql.startNonterminal("InsertExprTargetChoice",Ll);switch(Al){case 70:vl(70);break;case 84:vl(84);break;default:if(Al==79){vl(79),wl(119);switch(Al){case 134:vl(134);break;default:vl(170)}}wl(54),vl(163)}ql.endNonterminal("InsertExprTargetChoice",Ll)}function Co(){switch(Al){case 70:ml(70);break;case 84:ml(84);break;default:if(Al==79){ml(79),wl(119);switch(Al){case 134:ml(134);break;default:ml(170)}}wl(54),ml(163)}}function ko(){ql.startNonterminal("InsertExpr",Ll),vl(159),wl(129);switch(Al){case 191:vl(191);break;default:vl(192)}wl(267),yl(),Ho(),yl(),No(),wl(267),yl(),jo(),ql.endNonterminal("InsertExpr",Ll)}function Lo(){ml(159),wl(129);switch(Al){case 191:ml(191);break;default:ml(192)}wl(267),Bo(),Co(),wl(267),Fo()}function Ao(){ql.startNonterminal("DeleteExpr",Ll),vl(110),wl(129);switch(Al){case 191:vl(191);break;default:vl(192)}wl(267),yl(),jo(),ql.endNonterminal("DeleteExpr",Ll)}function Oo(){ml(110),wl(129);switch(Al){case 191:ml(191);break;default:ml(192)}wl(267),Fo()}function Mo(){ql.startNonterminal("ReplaceExpr",Ll),vl(219),wl(130),Al==261&&(vl(261),wl(64),vl(196)),wl(62),vl(191),wl(267),yl(),jo(),vl(270),wl(267),yl(),Nf(),ql.endNonterminal("ReplaceExpr",Ll)}function _o(){ml(219),wl(130),Al==261&&(ml(261),wl(64),ml(196)),wl(62),ml(191),wl(267),Fo(),ml(270),wl(267),Cf()}function Do(){ql.startNonterminal("RenameExpr",Ll),vl(218),wl(62),vl(191),wl(267),yl(),jo(),vl(79),wl(267),yl(),Io(),ql.endNonterminal("RenameExpr",Ll)}function Po(){ml(218),wl(62),ml(191),wl(267),Fo(),ml(79),wl(267),qo()}function Ho(){ql.startNonterminal("SourceExpr",Ll),Nf(),ql.endNonterminal("SourceExpr",Ll)}function Bo(){Cf()}function jo(){ql.startNonterminal("TargetExpr",Ll),Nf(),ql.endNonterminal("TargetExpr",Ll)}function Fo(){Cf()}function Io(){ql.startNonterminal("NewNameExpr",Ll),Nf(),ql.endNonterminal("NewNameExpr",Ll)}function qo(){Cf()}function Ro(){ql.startNonterminal("TransformExpr",Ll),vl(103),wl(21),vl(31),wl(253),yl(),fi(),wl(27),vl(52),wl(267),yl(),Nf();for(;;){if(Al!=41)break;vl(41),wl(21),vl(31),wl(253),yl(),fi(),wl(27),vl(52),wl(267),yl(),Nf()}vl(181),wl(267),yl(),Nf(),vl(220),wl(267),yl(),Nf(),ql.endNonterminal("TransformExpr",Ll)}function Uo(){ml(103),wl(21),ml(31),wl(253),li(),wl(27),ml(52),wl(267),Cf();for(;;){if(Al!=41)break;ml(41),wl(21),ml(31),wl(253),li(),wl(27),ml(52),wl(267),Cf()}ml(181),wl(267),Cf(),ml(220),wl(267),Cf()}function zo(){ql.startNonterminal("FTSelection",Ll),$o();for(;;){wl(211);switch(Al){case 81:El(151);break;default:Cl=Al}if(Cl!=115&&Cl!=117&&Cl!=127&&Cl!=202&&Cl!=223&&Cl!=269&&Cl!=64593&&Cl!=121425)break;yl(),gu()}ql.endNonterminal("FTSelection",Ll)}function Wo(){Jo();for(;;){wl(211);switch(Al){case 81:El(151);break;default:Cl=Al}if(Cl!=115&&Cl!=117&&Cl!=127&&Cl!=202&&Cl!=223&&Cl!=269&&Cl!=64593&&Cl!=121425)break;yu()}}function Xo(){ql.startNonterminal("FTWeight",Ll),vl(264),wl(87),vl(276),wl(267),yl(),Q(),vl(282),ql.endNonterminal("FTWeight",Ll)}function Vo(){ml(264),wl(87),ml(276),wl(267),G(),ml(282)}function $o(){ql.startNonterminal("FTOr",Ll),Ko();for(;;){if(Al!=144)break;vl(144),wl(162),yl(),Ko()}ql.endNonterminal("FTOr",Ll)}function Jo(){Qo();for(;;){if(Al!=144)break;ml(144),wl(162),Qo()}}function Ko(){ql.startNonterminal("FTAnd",Ll),Go();for(;;){if(Al!=142)break;vl(142),wl(162),yl(),Go()}ql.endNonterminal("FTAnd",Ll)}function Qo(){Yo();for(;;){if(Al!=142)break;ml(142),wl(162),Yo()}}function Go(){ql.startNonterminal("FTMildNot",Ll),Zo();for(;;){wl(212);if(Al!=193)break;vl(193),wl(53),vl(154),wl(162),yl(),Zo()}ql.endNonterminal("FTMildNot",Ll)}function Yo(){eu();for(;;){wl(212);if(Al!=193)break;ml(193),wl(53),ml(154),wl(162),eu()}}function Zo(){ql.startNonterminal("FTUnaryNot",Ll),Al==143&&vl(143),wl(155),yl(),tu(),ql.endNonterminal("FTUnaryNot",Ll)}function eu(){Al==143&&ml(143),wl(155),nu()}function tu(){ql.startNonterminal("FTPrimaryWithOptions",Ll),ru(),wl(214),Al==259&&(yl(),Du()),Al==264&&(yl(),Xo()),ql.endNonterminal("FTPrimaryWithOptions",Ll)}function nu(){iu(),wl(214),Al==259&&Pu(),Al==264&&Vo()}function ru(){ql.startNonterminal("FTPrimary",Ll);switch(Al){case 34:vl(34),wl(162),yl(),zo(),vl(37);break;case 35:fu();break;default:su(),wl(215),Al==195&&(yl(),pu())}ql.endNonterminal("FTPrimary",Ll)}function iu(){switch(Al){case 34:ml(34),wl(162),Wo(),ml(37);break;case 35:lu();break;default:ou(),wl(215),Al==195&&du()}}function su(){ql.startNonterminal("FTWords",Ll),uu(),wl(221);if(Al==71||Al==76||Al==210)yl(),cu();ql.endNonterminal("FTWords",Ll)}function ou(){au(),wl(221),(Al==71||Al==76||Al==210)&&hu()}function uu(){ql.startNonterminal("FTWordsValue",Ll);switch(Al){case 11:vl(11);break;default:vl(276),wl(267),yl(),Q(),vl(282)}ql.endNonterminal("FTWordsValue",Ll)}function au(){switch(Al){case 11:ml(11);break;default:ml(276),wl(267),G(),ml(282)}}function fu(){ql.startNonterminal("FTExtensionSelection",Ll);for(;;){yl(),xr(),wl(100);if(Al!=35)break}vl(276),wl(166),Al!=282&&(yl(),zo()),vl(282),ql.endNonterminal("FTExtensionSelection",Ll)}function lu(){for(;;){Tr(),wl(100);if(Al!=35)break}ml(276),wl(166),Al!=282&&Wo(),ml(282)}function cu(){ql.startNonterminal("FTAnyallOption",Ll);switch(Al){case 76:vl(76),wl(218),Al==272&&vl(272);break;case 71:vl(71),wl(219),Al==273&&vl(273);break;default:vl(210)}ql.endNonterminal("FTAnyallOption",Ll)}function hu(){switch(Al){case 76:ml(76),wl(218),Al==272&&ml(272);break;case 71:ml(71),wl(219),Al==273&&ml(273);break;default:ml(210)}}function pu(){ql.startNonterminal("FTTimes",Ll),vl(195),wl(149),yl(),vu(),vl(247),ql.endNonterminal("FTTimes",Ll)}function du(){ml(195),wl(149),mu(),ml(247)}function vu(){ql.startNonterminal("FTRange",Ll);switch(Al){case 130:vl(130),wl(265),yl(),zn();break;case 81:vl(81),wl(125);switch(Al){case 173:vl(173),wl(265),yl(),zn();break;default:vl(183),wl(265),yl(),zn()}break;default:vl(140),wl(265),yl(),zn(),vl(248),wl(265),yl(),zn()}ql.endNonterminal("FTRange",Ll)}function mu(){switch(Al){case 130:ml(130),wl(265),Wn();break;case 81:ml(81),wl(125);switch(Al){case 173:ml(173),wl(265),Wn();break;default:ml(183),wl(265),Wn()}break;default:ml(140),wl(265),Wn(),ml(248),wl(265),Wn()}}function gu(){ql.startNonterminal("FTPosFilter",Ll);switch(Al){case 202:bu();break;case 269:Eu();break;case 117:xu();break;case 115:case 223:ku();break;default:Mu()}ql.endNonterminal("FTPosFilter",Ll)}function yu(){switch(Al){case 202:wu();break;case 269:Su();break;case 117:Tu();break;case 115:case 223:Lu();break;default:_u()}}function bu(){ql.startNonterminal("FTOrder",Ll),vl(202),ql.endNonterminal("FTOrder",Ll)}function wu(){ml(202)}function Eu(){ql.startNonterminal("FTWindow",Ll),vl(269),wl(265),yl(),zn(),yl(),Nu(),ql.endNonterminal("FTWindow",Ll)}function Su(){ml(269),wl(265),Wn(),Cu()}function xu(){ql.startNonterminal("FTDistance",Ll),vl(117),wl(149),yl(),vu(),yl(),Nu(),ql.endNonterminal("FTDistance",Ll)}function Tu(){ml(117),wl(149),mu(),Cu()}function Nu(){ql.startNonterminal("FTUnit",Ll);switch(Al){case 273:vl(273);break;case 232:vl(232);break;default:vl(205)}ql.endNonterminal("FTUnit",Ll)}function Cu(){switch(Al){case 273:ml(273);break;case 232:ml(232);break;default:ml(205)}}function ku(){ql.startNonterminal("FTScope",Ll);switch(Al){case 223:vl(223);break;default:vl(115)}wl(132),yl(),Au(),ql.endNonterminal("FTScope",Ll)}function Lu(){switch(Al){case 223:ml(223);break;default:ml(115)}wl(132),Ou()}function Au(){ql.startNonterminal("FTBigUnit",Ll);switch(Al){case 231:vl(231);break;default:vl(204)}ql.endNonterminal("FTBigUnit",Ll)}function Ou(){switch(Al){case 231:ml(231);break;default:ml(204)}}function Mu(){ql.startNonterminal("FTContent",Ll);switch(Al){case 81:vl(81),wl(117);switch(Al){case 237:vl(237);break;default:vl(126)}break;default:vl(127),wl(42),vl(100)}ql.endNonterminal("FTContent",Ll)}function _u(){switch(Al){case 81:ml(81),wl(117);switch(Al){case 237:ml(237);break;default:ml(126)}break;default:ml(127),wl(42),ml(100)}}function Du(){ql.startNonterminal("FTMatchOptions",Ll);for(;;){vl(259),wl(181),yl(),Hu(),wl(214);if(Al!=259)break}ql.endNonterminal("FTMatchOptions",Ll)}function Pu(){for(;;){ml(259),wl(181),Bu(),wl(214);if(Al!=259)break}}function Hu(){ql.startNonterminal("FTMatchOption",Ll);switch(Al){case 188:El(161);break;default:Cl=Al}switch(Cl){case 169:ta();break;case 268:case 137404:ra();break;case 246:case 126140:zu();break;case 238:case 122044:Ru();break;case 114:Iu();break;case 239:case 122556:Ku();break;case 199:sa();break;default:ju()}ql.endNonterminal("FTMatchOption",Ll)}function Bu(){switch(Al){case 188:El(161);break;default:Cl=Al}switch(Cl){case 169:na();break;case 268:case 137404:ia();break;case 246:case 126140:Wu();break;case 238:case 122044:Uu();break;case 114:qu();break;case 239:case 122556:Qu();break;case 199:oa();break;default:Fu()}}function ju(){ql.startNonterminal("FTCaseOption",Ll);switch(Al){case 88:vl(88),wl(124);switch(Al){case 158:vl(158);break;default:vl(230)}break;case 177:vl(177);break;default:vl(258)}ql.endNonterminal("FTCaseOption",Ll)}function Fu(){switch(Al){case 88:ml(88),wl(124);switch(Al){case 158:ml(158);break;default:ml(230)}break;case 177:ml(177);break;default:ml(258)}}function Iu(){ql.startNonterminal("FTDiacriticsOption",Ll),vl(114),wl(124);switch(Al){case 158:vl(158);break;default:vl(230)}ql.endNonterminal("FTDiacriticsOption",Ll)}function qu(){ml(114),wl(124);switch(Al){case 158:ml(158);break;default:ml(230)}}function Ru(){ql.startNonterminal("FTStemOption",Ll);switch(Al){case 238:vl(238);break;default:vl(188),wl(74),vl(238)}ql.endNonterminal("FTStemOption",Ll)}function Uu(){switch(Al){case 238:ml(238);break;default:ml(188),wl(74),ml(238)}}function zu(){ql.startNonterminal("FTThesaurusOption",Ll);switch(Al){case 246:vl(246),wl(142);switch(Al){case 81:yl(),Xu();break;case 109:vl(109);break;default:vl(34),wl(112);switch(Al){case 81:yl(),Xu();break;default:vl(109)}for(;;){wl(101);if(Al!=41)break;vl(41),wl(31),yl(),Xu()}vl(37)}break;default:vl(188),wl(78),vl(246)}ql.endNonterminal("FTThesaurusOption",Ll)}function Wu(){switch(Al){case 246:ml(246),wl(142);switch(Al){case 81:Vu();break;case 109:ml(109);break;default:ml(34),wl(112);switch(Al){case 81:Vu();break;default:ml(109)}for(;;){wl(101);if(Al!=41)break;ml(41),wl(31),Vu()}ml(37)}break;default:ml(188),wl(78),ml(246)}}function Xu(){ql.startNonterminal("FTThesaurusID",Ll),vl(81),wl(15),vl(7),wl(220),Al==217&&(vl(217),wl(17),vl(11)),wl(216);switch(Al){case 81:El(165);break;default:Cl=Al}if(Cl==130||Cl==140||Cl==88657||Cl==93777)yl(),$u(),wl(58),vl(175);ql.endNonterminal("FTThesaurusID",Ll)}function Vu(){ml(81),wl(15),ml(7),wl(220),Al==217&&(ml(217),wl(17),ml(11)),wl(216);switch(Al){case 81:El(165);break;default:Cl=Al}if(Cl==130||Cl==140||Cl==88657||Cl==93777)Ju(),wl(58),ml(175)}function $u(){ql.startNonterminal("FTLiteralRange",Ll);switch(Al){case 130:vl(130),wl(16),vl(8);break;case 81:vl(81),wl(125);switch(Al){case 173:vl(173),wl(16),vl(8);break;default:vl(183),wl(16),vl(8)}break;default:vl(140),wl(16),vl(8),wl(79),vl(248),wl(16),vl(8)}ql.endNonterminal("FTLiteralRange",Ll)}function Ju(){switch(Al){case 130:ml(130),wl(16),ml(8);break;case 81:ml(81),wl(125);switch(Al){case 173:ml(173),wl(16),ml(8);break;default:ml(183),wl(16),ml(8)}break;default:ml(140),wl(16),ml(8),wl(79),ml(248),wl(16),ml(8)}}function Ku(){ql.startNonterminal("FTStopWordOption",Ll);switch(Al){case 239:vl(239),wl(86),vl(273),wl(142);switch(Al){case 109:vl(109);for(;;){wl(217);if(Al!=131&&Al!=254)break;yl(),Zu()}break;default:yl(),Gu();for(;;){wl(217);if(Al!=131&&Al!=254)break;yl(),Zu()}}break;default:vl(188),wl(75),vl(239),wl(86),vl(273)}ql.endNonterminal("FTStopWordOption",Ll)}function Qu(){switch(Al){case 239:ml(239),wl(86),ml(273),wl(142);switch(Al){case 109:ml(109);for(;;){wl(217);if(Al!=131&&Al!=254)break;ea()}break;default:Yu();for(;;){wl(217);if(Al!=131&&Al!=254)break;ea()}}break;default:ml(188),wl(75),ml(239),wl(86),ml(273)}}function Gu(){ql.startNonterminal("FTStopWords",Ll);switch(Al){case 81:vl(81),wl(15),vl(7);break;default:vl(34),wl(17),vl(11);for(;;){wl(101);if(Al!=41)break;vl(41),wl(17),vl(11)}vl(37)}ql.endNonterminal("FTStopWords",Ll)}function Yu(){switch(Al){case 81:ml(81),wl(15),ml(7);break;default:ml(34),wl(17),ml(11);for(;;){wl(101);if(Al!=41)break;ml(41),wl(17),ml(11)}ml(37)}}function Zu(){ql.startNonterminal("FTStopWordsInclExcl",Ll);switch(Al){case 254:vl(254);break;default:vl(131)}wl(99),yl(),Gu(),ql.endNonterminal("FTStopWordsInclExcl",Ll)}function ea(){switch(Al){case 254:ml(254);break;default:ml(131)}wl(99),Yu()}function ta(){ql.startNonterminal("FTLanguageOption",Ll),vl(169),wl(17),vl(11),ql.endNonterminal("FTLanguageOption",Ll)}function na(){ml(169),wl(17),ml(11)}function ra(){ql.startNonterminal("FTWildCardOption",Ll);switch(Al){case 268:vl(268);break;default:vl(188),wl(84),vl(268)}ql.endNonterminal("FTWildCardOption",Ll)}function ia(){switch(Al){case 268:ml(268);break;default:ml(188),wl(84),ml(268)}}function sa(){ql.startNonterminal("FTExtensionOption",Ll),vl(199),wl(253),yl(),Oa(),wl(17),vl(11),ql.endNonterminal("FTExtensionOption",Ll)}function oa(){ml(199),wl(253),Ma(),wl(17),ml(11)}function ua(){ql.startNonterminal("FTIgnoreOption",Ll),vl(271),wl(42),vl(100),wl(265),yl(),$n(),ql.endNonterminal("FTIgnoreOption",Ll)}function aa(){ml(271),wl(42),ml(100),wl(265),Jn()}function fa(){ql.startNonterminal("CollectionDecl",Ll),vl(95),wl(253),yl(),Oa(),wl(107),Al==79&&(yl(),la()),ql.endNonterminal("CollectionDecl",Ll)}function la(){ql.startNonterminal("CollectionTypeDecl",Ll),vl(79),wl(183),yl(),Ms(),wl(156),Al!=53&&(yl(),vs()),ql.endNonterminal("CollectionTypeDecl",Ll)}function ca(){ql.startNonterminal("IndexName",Ll),Oa(),ql.endNonterminal("IndexName",Ll)}function ha(){ql.startNonterminal("IndexDomainExpr",Ll),Nr(),ql.endNonterminal("IndexDomainExpr",Ll)}function pa(){ql.startNonterminal("IndexKeySpec",Ll),da(),Al==79&&(yl(),va()),wl(146),Al==94&&(yl(),ga()),ql.endNonterminal("IndexKeySpec",Ll)}function da(){ql.startNonterminal("IndexKeyExpr",Ll),Nr(),ql.endNonterminal("IndexKeyExpr",Ll)}function va(){ql.startNonterminal("IndexKeyTypeDecl",Ll),vl(79),wl(253),yl(),ma(),wl(169);if(Al==39||Al==40||Al==64)yl(),vs();ql.endNonterminal("IndexKeyTypeDecl",Ll)}function ma(){ql.startNonterminal("AtomicType",Ll),Oa(),ql.endNonterminal("AtomicType",Ll)}function ga(){ql.startNonterminal("IndexKeyCollation",Ll),vl(94),wl(15),vl(7),ql.endNonterminal("IndexKeyCollation",Ll)}function ya(){ql.startNonterminal("IndexDecl",Ll),vl(155),wl(253),yl(),ca(),wl(65),vl(197),wl(63),vl(192),wl(264),yl(),ha(),vl(87),wl(264),yl(),pa();for(;;){wl(103);if(Al!=41)break;vl(41),wl(264),yl(),pa()}ql.endNonterminal("IndexDecl",Ll)}function ba(){ql.startNonterminal("ICDecl",Ll),vl(161),wl(40),vl(97),wl(253),yl(),Oa(),wl(120);switch(Al){case 197:yl(),wa();break;default:yl(),Ta()}ql.endNonterminal("ICDecl",Ll)}function wa(){ql.startNonterminal("ICCollection",Ll),vl(197),wl(39),vl(95),wl(253),yl(),Oa(),wl(140);switch(Al){case 31:yl(),Ea();break;case 191:yl(),Sa();break;default:yl(),xa()}ql.endNonterminal("ICCollection",Ll)}function Ea(){ql.startNonterminal("ICCollSequence",Ll),ui(),wl(37),vl(92),wl(267),yl(),Nf(),ql.endNonterminal("ICCollSequence",Ll)}function Sa(){ql.startNonterminal("ICCollSequenceUnique",Ll),vl(191),wl(21),yl(),ui(),wl(37),vl(92),wl(80),vl(255),wl(57),vl(168),wl(264),yl(),Nr(),ql.endNonterminal("ICCollSequenceUnique",Ll)}function xa(){ql.startNonterminal("ICCollNode",Ll),vl(138),wl(62),vl(191),wl(21),yl(),ui(),wl(37),vl(92),wl(267),yl(),Nf(),ql.endNonterminal("ICCollNode",Ll)}function Ta(){ql.startNonterminal("ICForeignKey",Ll),vl(139),wl(57),vl(168),wl(51),yl(),Na(),yl(),Ca(),ql.endNonterminal("ICForeignKey",Ll)}function Na(){ql.startNonterminal("ICForeignKeySource",Ll),vl(140),wl(39),yl(),ka(),ql.endNonterminal("ICForeignKeySource",Ll)}function Ca(){ql.startNonterminal("ICForeignKeyTarget",Ll),vl(248),wl(39),yl(),ka(),ql.endNonterminal("ICForeignKeyTarget",Ll)}function ka(){ql.startNonterminal("ICForeignKeyValues",Ll),vl(95),wl(253),yl(),Oa(),wl(62),vl(191),wl(21),yl(),ui(),wl(57),vl(168),wl(264),yl(),Nr(),ql.endNonterminal("ICForeignKeyValues",Ll)}function La(){ml(36);for(;;){Sl(89);if(Al==50)break;switch(Al){case 24:ml(24);break;default:La()}}ml(50)}function Aa(){switch(Al){case 22:ml(22);break;default:La()}}function Oa(){ql.startNonterminal("EQName",Ll),Sl(248);switch(Al){case 82:vl(82);break;case 96:vl(96);break;case 120:vl(120);break;case 121:vl(121);break;case 124:vl(124);break;case 145:vl(145);break;case 152:vl(152);break;case 165:vl(165);break;case 185:vl(185);break;case 191:vl(191);break;case 216:vl(216);break;case 226:vl(226);break;case 227:vl(227);break;case 243:vl(243);break;case 244:vl(244);break;case 253:vl(253);break;default:_a()}ql.endNonterminal("EQName",Ll)}function Ma(){Sl(248);switch(Al){case 82:ml(82);break;case 96:ml(96);break;case 120:ml(120);break;case 121:ml(121);break;case 124:ml(124);break;case 145:ml(145);break;case 152:ml(152);break;case 165:ml(165);break;case 185:ml(185);break;case 191:ml(191);break;case 216:ml(216);break;case 226:ml(226);break;case 227:ml(227);break;case 243:ml(243);break;case 244:ml(244);break;case 253:ml(253);break;default:Da()}}function _a(){ql.startNonterminal("FunctionName",Ll);switch(Al){case 6:vl(6);break;case 70:vl(70);break;case 73:vl(73);break;case 74:vl(74);break;case 75:vl(75);break;case 79:vl(79);break;case 80:vl(80);break;case 84:vl(84);break;case 88:vl(88);break;case 89:vl(89);break;case 90:vl(90);break;case 93:vl(93);break;case 94:vl(94);break;case 103:vl(103);break;case 105:vl(105);break;case 108:vl(108);break;case 109:vl(109);break;case 110:vl(110);break;case 111:vl(111);break;case 112:vl(112);break;case 113:vl(113);break;case 118:vl(118);break;case 119:vl(119);break;case 122:vl(122);break;case 123:vl(123);break;case 126:vl(126);break;case 128:vl(128);break;case 129:vl(129);break;case 131:vl(131);break;case 134:vl(134);break;case 135:vl(135);break;case 136:vl(136);break;case 137:vl(137);break;case 146:vl(146);break;case 148:vl(148);break;case 150:vl(150);break;case 151:vl(151);break;case 153:vl(153);break;case 159:vl(159);break;case 160:vl(160);break;case 162:vl(162);break;case 163:vl(163);break;case 164:vl(164);break;case 170:vl(170);break;case 172:vl(172);break;case 174:vl(174);break;case 178:vl(178);break;case 180:vl(180);break;case 181:vl(181);break;case 182:vl(182);break;case 184:vl(184);break;case 186:vl(186);break;case 198:vl(198);break;case 200:vl(200);break;case 201:vl(201);break;case 202:vl(202);break;case 206:vl(206);break;case 212:vl(212);break;case 213:vl(213);break;case 218:vl(218);break;case 219:vl(219);break;case 220:vl(220);break;case 224:vl(224);break;case 229:vl(229);break;case 235:vl(235);break;case 236:vl(236);break;case 237:vl(237);break;case 248:vl(248);break;case 249:vl(249);break;case 250:vl(250);break;case 254:vl(254);break;case 256:vl(256);break;case 260:vl(260);break;case 266:vl(266);break;case 270:vl(270);break;case 274:vl(274);break;case 72:vl(72);break;case 81:vl(81);break;case 83:vl(83);break;case 85:vl(85);break;case 86:vl(86);break;case 91:vl(91);break;case 98:vl(98);break;case 101:vl(101);break;case 102:vl(102);break;case 104:vl(104);break;case 106:vl(106);break;case 125:vl(125);break;case 132:vl(132);break;case 133:vl(133);break;case 141:vl(141);break;case 154:vl(154);break;case 155:vl(155);break;case 161:vl(161);break;case 171:vl(171);break;case 192:vl(192);break;case 199:vl(199);break;case 203:vl(203);break;case 222:vl(222);break;case 225:vl(225);break;case 228:vl(228);break;case 234:vl(234);break;case 240:vl(240);break;case 251:vl(251);break;case 252:vl(252);break;case 257:vl(257);break;case 261:vl(261);break;case 262:vl(262);break;case 263:vl(263);break;case 267:vl(267);break;case 97:vl(97);break;case 176:vl(176);break;case 221:vl(221);break;case 194:vl(194);break;case 167:vl(167);break;default:vl(78)}ql.endNonterminal("FunctionName",Ll)}function Da(){switch(Al){case 6:ml(6);break;case 70:ml(70);break;case 73:ml(73);break;case 74:ml(74);break;case 75:ml(75);break;case 79:ml(79);break;case 80:ml(80);break;case 84:ml(84);break;case 88:ml(88);break;case 89:ml(89);break;case 90:ml(90);break;case 93:ml(93);break;case 94:ml(94);break;case 103:ml(103);break;case 105:ml(105);break;case 108:ml(108);break;case 109:ml(109);break;case 110:ml(110);break;case 111:ml(111);break;case 112:ml(112);break;case 113:ml(113);break;case 118:ml(118);break;case 119:ml(119);break;case 122:ml(122);break;case 123:ml(123);break;case 126:ml(126);break;case 128:ml(128);break;case 129:ml(129);break;case 131:ml(131);break;case 134:ml(134);break;case 135:ml(135);break;case 136:ml(136);break;case 137:ml(137);break;case 146:ml(146);break;case 148:ml(148);break;case 150:ml(150);break;case 151:ml(151);break;case 153:ml(153);break;case 159:ml(159);break;case 160:ml(160);break;case 162:ml(162);break;case 163:ml(163);break;case 164:ml(164);break;case 170:ml(170);break;case 172:ml(172);break;case 174:ml(174);break;case 178:ml(178);break;case 180:ml(180);break;case 181:ml(181);break;case 182:ml(182);break;case 184:ml(184);break;case 186:ml(186);break;case 198:ml(198);break;case 200:ml(200);break;case 201:ml(201);break;case 202:ml(202);break;case 206:ml(206);break;case 212:ml(212);break;case 213:ml(213);break;case 218:ml(218);break;case 219:ml(219);break;case 220:ml(220);break;case 224:ml(224);break;case 229:ml(229);break;case 235:ml(235);break;case 236:ml(236);break;case 237:ml(237);break;case 248:ml(248);break;case 249:ml(249);break;case 250:ml(250);break;case 254:ml(254);break;case 256:ml(256);break;case 260:ml(260);break;case 266:ml(266);break;case 270:ml(270);break;case 274:ml(274);break;case 72:ml(72);break;case 81:ml(81);break;case 83:ml(83);break;case 85:ml(85);break;case 86:ml(86);break;case 91:ml(91);break;case 98:ml(98);break;case 101:ml(101);break;case 102:ml(102);break;case 104:ml(104);break;case 106:ml(106);break;case 125:ml(125);break;case 132:ml(132);break;case 133:ml(133);break;case 141:ml(141);break;case 154:ml(154);break;case 155:ml(155);break;case 161:ml(161);break;case 171:ml(171);break;case 192:ml(192);break;case 199:ml(199);break;case 203:ml(203);break;case 222:ml(222);break;case 225:ml(225);break;case 228:ml(228);break;case 234:ml(234);break;case 240:ml(240);break;case 251:ml(251);break;case 252:ml(252);break;case 257:ml(257);break;case 261:ml(261);break;case 262:ml(262);break;case 263:ml(263);break;case 267:ml(267);break;case 97:ml(97);break;case 176:ml(176);break;case 221:ml(221);break;case 194:ml(194);break;case 167:ml(167);break;default:ml(78)}}function Pa(){ql.startNonterminal("NCName",Ll);switch(Al){case 19:vl(19);break;case 70:vl(70);break;case 75:vl(75);break;case 79:vl(79);break;case 80:vl(80);break;case 84:vl(84);break;case 88:vl(88);break;case 89:vl(89);break;case 90:vl(90);break;case 94:vl(94);break;case 105:vl(105);break;case 109:vl(109);break;case 113:vl(113);break;case 118:vl(118);break;case 122:vl(122);break;case 123:vl(123);break;case 126:vl(126);break;case 128:vl(128);break;case 131:vl(131);break;case 137:vl(137);break;case 146:vl(146);break;case 148:vl(148);break;case 150:vl(150);break;case 151:vl(151);break;case 160:vl(160);break;case 162:vl(162);break;case 163:vl(163);break;case 164:vl(164);break;case 172:vl(172);break;case 174:vl(174);break;case 178:vl(178);break;case 180:vl(180);break;case 181:vl(181);break;case 186:vl(186);break;case 198:vl(198);break;case 200:vl(200);break;case 201:vl(201);break;case 220:vl(220);break;case 224:vl(224);break;case 236:vl(236);break;case 237:vl(237);break;case 248:vl(248);break;case 249:vl(249);break;case 254:vl(254);break;case 266:vl(266);break;case 270:vl(270);break;case 73:vl(73);break;case 74:vl(74);break;case 82:vl(82);break;case 93:vl(93);break;case 96:vl(96);break;case 103:vl(103);break;case 108:vl(108);break;case 110:vl(110);break;case 111:vl(111);break;case 112:vl(112);break;case 119:vl(119);break;case 120:vl(120);break;case 121:vl(121);break;case 124:vl(124);break;case 129:vl(129);break;case 134:vl(134);break;case 135:vl(135);break;case 136:vl(136);break;case 145:vl(145);break;case 152:vl(152);break;case 153:vl(153);break;case 159:vl(159);break;case 165:vl(165);break;case 170:vl(170);break;case 182:vl(182);break;case 184:vl(184);break;case 185:vl(185);break;case 191:vl(191);break;case 202:vl(202);break;case 206:vl(206);break;case 212:vl(212);break;case 213:vl(213);break;case 216:vl(216);break;case 218:vl(218);break;case 219:vl(219);break;case 226:vl(226);break;case 227:vl(227);break;case 229:vl(229);break;case 235:vl(235);break;case 243:vl(243);break;case 244:vl(244);break;case 250:vl(250);break;case 253:vl(253);break;case 256:vl(256);break;case 260:vl(260);break;case 262:vl(262);break;case 274:vl(274);break;case 72:vl(72);break;case 81:vl(81);break;case 83:vl(83);break;case 85:vl(85);break;case 86:vl(86);break;case 91:vl(91);break;case 98:vl(98);break;case 101:vl(101);break;case 102:vl(102);break;case 104:vl(104);break;case 106:vl(106);break;case 125:vl(125);break;case 132:vl(132);break;case 133:vl(133);break;case 141:vl(141);break;case 154:vl(154);break;case 155:vl(155);break;case 161:vl(161);break;case 171:vl(171);break;case 192:vl(192);break;case 199:vl(199);break;case 203:vl(203);break;case 222:vl(222);break;case 225:vl(225);break;case 228:vl(228);break;case 234:vl(234);break;case 240:vl(240);break;case 251:vl(251);break;case 252:vl(252);break;case 257:vl(257);break;case 261:vl(261);break;case 263:vl(263);break;case 267:vl(267);break;case 97:vl(97);break;case 176:vl(176);break;default:vl(221)}ql.endNonterminal("NCName",Ll)}function Ha(){switch(Al){case 19:ml(19);break;case 70:ml(70);break;case 75:ml(75);break;case 79:ml(79);break;case 80:ml(80);break;case 84:ml(84);break;case 88:ml(88);break;case 89:ml(89);break;case 90:ml(90);break;case 94:ml(94);break;case 105:ml(105);break;case 109:ml(109);break;case 113:ml(113);break;case 118:ml(118);break;case 122:ml(122);break;case 123:ml(123);break;case 126:ml(126);break;case 128:ml(128);break;case 131:ml(131);break;case 137:ml(137);break;case 146:ml(146);break;case 148:ml(148);break;case 150:ml(150);break;case 151:ml(151);break;case 160:ml(160);break;case 162:ml(162);break;case 163:ml(163);break;case 164:ml(164);break;case 172:ml(172);break;case 174:ml(174);break;case 178:ml(178);break;case 180:ml(180);break;case 181:ml(181);break;case 186:ml(186);break;case 198:ml(198);break;case 200:ml(200);break;case 201:ml(201);break;case 220:ml(220);break;case 224:ml(224);break;case 236:ml(236);break;case 237:ml(237);break;case 248:ml(248);break;case 249:ml(249);break;case 254:ml(254);break;case 266:ml(266);break;case 270:ml(270);break;case 73:ml(73);break;case 74:ml(74);break;case 82:ml(82);break;case 93:ml(93);break;case 96:ml(96);break;case 103:ml(103);break;case 108:ml(108);break;case 110:ml(110);break;case 111:ml(111);break;case 112:ml(112);break;case 119:ml(119);break;case 120:ml(120);break;case 121:ml(121);break;case 124:ml(124);break;case 129:ml(129);break;case 134:ml(134);break;case 135:ml(135);break;case 136:ml(136);break;case 145:ml(145);break;case 152:ml(152);break;case 153:ml(153);break;case 159:ml(159);break;case 165:ml(165);break;case 170:ml(170);break;case 182:ml(182);break;case 184:ml(184);break;case 185:ml(185);break;case 191:ml(191);break;case 202:ml(202);break;case 206:ml(206);break;case 212:ml(212);break;case 213:ml(213);break;case 216:ml(216);break;case 218:ml(218);break;case 219:ml(219);break;case 226:ml(226);break;case 227:ml(227);break;case 229:ml(229);break;case 235:ml(235);break;case 243:ml(243);break;case 244:ml(244);break;case 250:ml(250);break;case 253:ml(253);break;case 256:ml(256);break;case 260:ml(260);break;case 262:ml(262);break;case 274:ml(274);break;case 72:ml(72);break;case 81:ml(81);break;case 83:ml(83);break;case 85:ml(85);break;case 86:ml(86);break;case 91:ml(91);break;case 98:ml(98);break;case 101:ml(101);break;case 102:ml(102);break;case 104:ml(104);break;case 106:ml(106);break;case 125:ml(125);break;case 132:ml(132);break;case 133:ml(133);break;case 141:ml(141);break;case 154:ml(154);break;case 155:ml(155);break;case 161:ml(161);break;case 171:ml(171);break;case 192:ml(192);break;case 199:ml(199);break;case 203:ml(203);break;case 222:ml(222);break;case 225:ml(225);break;case 228:ml(228);break;case 234:ml(234);break;case 240:ml(240);break;case 251:ml(251);break;case 252:ml(252);break;case 257:ml(257);break;case 261:ml(261);break;case 263:ml(263);break;case 267:ml(267);break;case 97:ml(97);break;case 176:ml(176);break;default:ml(221)}}function Ba(){ql.startNonterminal("MainModule",Ll),f(),yl(),ja(),ql.endNonterminal("MainModule",Ll)}function ja(){ql.startNonterminal("Program",Ll),Ua(),ql.endNonterminal("Program",Ll)}function Fa(){ql.startNonterminal("Statements",Ll);for(;;){wl(274);switch(Al){case 34:El(269);break;case 35:xl(250);break;case 46:El(281);break;case 47:El(263);break;case 54:xl(4);break;case 55:xl(1);break;case 59:xl(3);break;case 66:El(255);break;case 68:El(271);break;case 77:El(56);break;case 82:El(278);break;case 121:El(277);break;case 132:El(202);break;case 137:El(206);break;case 174:El(204);break;case 218:El(205);break;case 219:El(208);break;case 260:El(209);break;case 276:El(273);break;case 278:El(272);break;case 5:case 45:El(186);break;case 31:case 32:El(253);break;case 40:case 42:El(265);break;case 86:case 102:El(200);break;case 110:case 159:El(207);break;case 124:case 165:El(191);break;case 184:case 216:El(266);break;case 103:case 129:case 235:case 262:El(197);break;case 8:case 9:case 10:case 11:case 44:El(192);break;case 96:case 119:case 202:case 244:case 250:case 256:El(203);break;case 73:case 74:case 93:case 111:case 112:case 135:case 136:case 206:case 212:case 213:case 229:El(198);break;case 6:case 70:case 72:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 88:case 89:case 90:case 91:case 94:case 97:case 98:case 101:case 104:case 105:case 106:case 108:case 109:case 113:case 118:case 120:case 122:case 123:case 125:case 126:case 128:case 131:case 133:case 134:case 141:case 145:case 146:case 148:case 150:case 151:case 152:case 153:case 154:case 155:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 176:case 178:case 180:case 181:case 182:case 185:case 186:case 191:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 220:case 221:case 222:case 224:case 225:case 226:case 227:case 228:case 234:case 236:case 237:case 240:case 243:case 248:case 249:case 251:case 252:case 253:case 254:case 257:case 261:case 263:case 266:case 267:case 270:case 274:El(195);break;default:Cl=Al}if(Cl!=25&&Cl!=282&&Cl!=12805&&Cl!=12806&&Cl!=12808&&Cl!=12809&&Cl!=12810&&Cl!=12811&&Cl!=12844&&Cl!=12845&&Cl!=12846&&Cl!=12870&&Cl!=12872&&Cl!=12873&&Cl!=12874&&Cl!=12875&&Cl!=12878&&Cl!=12879&&Cl!=12880&&Cl!=12881&&Cl!=12882&&Cl!=12883&&Cl!=12884&&Cl!=12885&&Cl!=12886&&Cl!=12888&&Cl!=12889&&Cl!=12890&&Cl!=12891&&Cl!=12893&&Cl!=12894&&Cl!=12896&&Cl!=12897&&Cl!=12898&&Cl!=12901&&Cl!=12902&&Cl!=12903&&Cl!=12904&&Cl!=12905&&Cl!=12906&&Cl!=12908&&Cl!=12909&&Cl!=12910&&Cl!=12911&&Cl!=12912&&Cl!=12913&&Cl!=12918&&Cl!=12919&&Cl!=12920&&Cl!=12921&&Cl!=12922&&Cl!=12923&&Cl!=12924&&Cl!=12925&&Cl!=12926&&Cl!=12928&&Cl!=12929&&Cl!=12931&&Cl!=12932&&Cl!=12933&&Cl!=12934&&Cl!=12935&&Cl!=12936&&Cl!=12937&&Cl!=12941&&Cl!=12945&&Cl!=12946&&Cl!=12948&&Cl!=12950&&Cl!=12951&&Cl!=12952&&Cl!=12953&&Cl!=12954&&Cl!=12955&&Cl!=12959&&Cl!=12960&&Cl!=12961&&Cl!=12962&&Cl!=12963&&Cl!=12964&&Cl!=12965&&Cl!=12967&&Cl!=12970&&Cl!=12971&&Cl!=12972&&Cl!=12974&&Cl!=12976&&Cl!=12978&&Cl!=12980&&Cl!=12981&&Cl!=12982&&Cl!=12984&&Cl!=12985&&Cl!=12986&&Cl!=12991&&Cl!=12992&&Cl!=12994&&Cl!=12998&&Cl!=12999&&Cl!=13e3&&Cl!=13001&&Cl!=13002&&Cl!=13003&&Cl!=13006&&Cl!=13012&&Cl!=13013&&Cl!=13016&&Cl!=13018&&Cl!=13019&&Cl!=13020&&Cl!=13021&&Cl!=13022&&Cl!=13024&&Cl!=13025&&Cl!=13026&&Cl!=13027&&Cl!=13028&&Cl!=13029&&Cl!=13034&&Cl!=13035&&Cl!=13036&&Cl!=13037&&Cl!=13040&&Cl!=13043&&Cl!=13044&&Cl!=13048&&Cl!=13049&&Cl!=13050&&Cl!=13051&&Cl!=13052&&Cl!=13053&&Cl!=13054&&Cl!=13056&&Cl!=13057&&Cl!=13060&&Cl!=13061&&Cl!=13062&&Cl!=13063&&Cl!=13066&&Cl!=13067&&Cl!=13070&&Cl!=13074&&Cl!=16134&&Cl!=20997&&Cl!=20998&&Cl!=21e3&&Cl!=21001&&Cl!=21002&&Cl!=21003&&Cl!=21036&&Cl!=21037&&Cl!=21038&&Cl!=21062&&Cl!=21064&&Cl!=21065&&Cl!=21066&&Cl!=21067&&Cl!=21070&&Cl!=21071&&Cl!=21072&&Cl!=21073&&Cl!=21074&&Cl!=21075&&Cl!=21076&&Cl!=21077&&Cl!=21078&&Cl!=21080&&Cl!=21081&&Cl!=21082&&Cl!=21083&&Cl!=21085&&Cl!=21086&&Cl!=21088&&Cl!=21089&&Cl!=21090&&Cl!=21093&&Cl!=21094&&Cl!=21095&&Cl!=21096&&Cl!=21097&&Cl!=21098&&Cl!=21100&&Cl!=21101&&Cl!=21102&&Cl!=21103&&Cl!=21104&&Cl!=21105&&Cl!=21110&&Cl!=21111&&Cl!=21112&&Cl!=21113&&Cl!=21114&&Cl!=21115&&Cl!=21116&&Cl!=21117&&Cl!=21118&&Cl!=21120&&Cl!=21121&&Cl!=21123&&Cl!=21124&&Cl!=21125&&Cl!=21126&&Cl!=21127&&Cl!=21128&&Cl!=21129&&Cl!=21133&&Cl!=21137&&Cl!=21138&&Cl!=21140&&Cl!=21142&&Cl!=21143&&Cl!=21144&&Cl!=21145&&Cl!=21146&&Cl!=21147&&Cl!=21151&&Cl!=21152&&Cl!=21153&&Cl!=21154&&Cl!=21155&&Cl!=21156&&Cl!=21157&&Cl!=21159&&Cl!=21162&&Cl!=21163&&Cl!=21164&&Cl!=21166&&Cl!=21168&&Cl!=21170&&Cl!=21172&&Cl!=21173&&Cl!=21174&&Cl!=21176&&Cl!=21177&&Cl!=21178&&Cl!=21183&&Cl!=21184&&Cl!=21186&&Cl!=21190&&Cl!=21191&&Cl!=21192&&Cl!=21193&&Cl!=21194&&Cl!=21195&&Cl!=21198&&Cl!=21204&&Cl!=21205&&Cl!=21208&&Cl!=21210&&Cl!=21211&&Cl!=21212&&Cl!=21213&&Cl!=21214&&Cl!=21216&&Cl!=21217&&Cl!=21218&&Cl!=21219&&Cl!=21220&&Cl!=21221&&Cl!=21226&&Cl!=21227&&Cl!=21228&&Cl!=21229&&Cl!=21232&&Cl!=21235&&Cl!=21236&&Cl!=21240&&Cl!=21241&&Cl!=21242&&Cl!=21243&&Cl!=21244&&Cl!=21245&&Cl!=21246&&Cl!=21248&&Cl!=21249&&Cl!=21252&&Cl!=21253&&Cl!=21254&&Cl!=21255&&Cl!=21258&&Cl!=21259&&Cl!=21262&&Cl!=21266&&Cl!=27141&&Cl!=27142&&Cl!=27144&&Cl!=27145&&Cl!=27146&&Cl!=27147&&Cl!=27180&&Cl!=27181&&Cl!=27182&&Cl!=27206&&Cl!=27208&&Cl!=27209&&Cl!=27210&&Cl!=27211&&Cl!=27214&&Cl!=27215&&Cl!=27216&&Cl!=27217&&Cl!=27218&&Cl!=27219&&Cl!=27220&&Cl!=27221&&Cl!=27222&&Cl!=27224&&Cl!=27225&&Cl!=27226&&Cl!=27227&&Cl!=27229&&Cl!=27230&&Cl!=27232&&Cl!=27233&&Cl!=27234&&Cl!=27237&&Cl!=27238&&Cl!=27239&&Cl!=27240&&Cl!=27241&&Cl!=27242&&Cl!=27244&&Cl!=27245&&Cl!=27246&&Cl!=27247&&Cl!=27248&&Cl!=27249&&Cl!=27254&&Cl!=27255&&Cl!=27256&&Cl!=27257&&Cl!=27258&&Cl!=27259&&Cl!=27260&&Cl!=27261&&Cl!=27262&&Cl!=27264&&Cl!=27265&&Cl!=27267&&Cl!=27268&&Cl!=27269&&Cl!=27270&&Cl!=27271&&Cl!=27272&&Cl!=27273&&Cl!=27277&&Cl!=27281&&Cl!=27282&&Cl!=27284&&Cl!=27286&&Cl!=27287&&Cl!=27288&&Cl!=27289&&Cl!=27290&&Cl!=27291&&Cl!=27295&&Cl!=27296&&Cl!=27297&&Cl!=27298&&Cl!=27299&&Cl!=27300&&Cl!=27301&&Cl!=27303&&Cl!=27306&&Cl!=27307&&Cl!=27308&&Cl!=27310&&Cl!=27312&&Cl!=27314&&Cl!=27316&&Cl!=27317&&Cl!=27318&&Cl!=27320&&Cl!=27321&&Cl!=27322&&Cl!=27327&&Cl!=27328&&Cl!=27330&&Cl!=27334&&Cl!=27335&&Cl!=27336&&Cl!=27337&&Cl!=27338&&Cl!=27339&&Cl!=27342&&Cl!=27348&&Cl!=27349&&Cl!=27352&&Cl!=27354&&Cl!=27355&&Cl!=27356&&Cl!=27357&&Cl!=27358&&Cl!=27360&&Cl!=27361&&Cl!=27362&&Cl!=27363&&Cl!=27364&&Cl!=27365&&Cl!=27370&&Cl!=27371&&Cl!=27372&&Cl!=27373&&Cl!=27376&&Cl!=27379&&Cl!=27380&&Cl!=27384&&Cl!=27385&&Cl!=27386&&Cl!=27387&&Cl!=27388&&Cl!=27389&&Cl!=27390&&Cl!=27392&&Cl!=27393&&Cl!=27396&&Cl!=27397&&Cl!=27398&&Cl!=27399&&Cl!=27402&&Cl!=27403&&Cl!=27406&&Cl!=27410&&Cl!=90198&&Cl!=90214&&Cl!=113284&&Cl!=144389&&Cl!=144390&&Cl!=144392&&Cl!=144393&&Cl!=144394&&Cl!=144395&&Cl!=144428&&Cl!=144429&&Cl!=144430&&Cl!=144454&&Cl!=144456&&Cl!=144457&&Cl!=144458&&Cl!=144459&&Cl!=144462&&Cl!=144463&&Cl!=144464&&Cl!=144465&&Cl!=144466&&Cl!=144467&&Cl!=144468&&Cl!=144469&&Cl!=144470&&Cl!=144472&&Cl!=144473&&Cl!=144474&&Cl!=144475&&Cl!=144477&&Cl!=144478&&Cl!=144480&&Cl!=144481&&Cl!=144482&&Cl!=144485&&Cl!=144486&&Cl!=144487&&Cl!=144488&&Cl!=144489&&Cl!=144490&&Cl!=144492&&Cl!=144493&&Cl!=144494&&Cl!=144495&&Cl!=144496&&Cl!=144497&&Cl!=144502&&Cl!=144503&&Cl!=144504&&Cl!=144505&&Cl!=144506&&Cl!=144507&&Cl!=144508&&Cl!=144509&&Cl!=144510&&Cl!=144512&&Cl!=144513&&Cl!=144515&&Cl!=144516&&Cl!=144517&&Cl!=144518&&Cl!=144519&&Cl!=144520&&Cl!=144521&&Cl!=144525&&Cl!=144529&&Cl!=144530&&Cl!=144532&&Cl!=144534&&Cl!=144535&&Cl!=144536&&Cl!=144537&&Cl!=144538&&Cl!=144539&&Cl!=144543&&Cl!=144544&&Cl!=144545&&Cl!=144546&&Cl!=144547&&Cl!=144548&&Cl!=144549&&Cl!=144551&&Cl!=144554&&Cl!=144555&&Cl!=144556&&Cl!=144558&&Cl!=144560&&Cl!=144562&&Cl!=144564&&Cl!=144565&&Cl!=144566&&Cl!=144568&&Cl!=144569&&Cl!=144570&&Cl!=144575&&Cl!=144576&&Cl!=144578&&Cl!=144582&&Cl!=144583&&Cl!=144584&&Cl!=144585&&Cl!=144586&&Cl!=144587&&Cl!=144590&&Cl!=144596&&Cl!=144597&&Cl!=144600&&Cl!=144602&&Cl!=144603&&Cl!=144604&&Cl!=144605&&Cl!=144606&&Cl!=144608&&Cl!=144609&&Cl!=144610&&Cl!=144611&&Cl!=144612&&Cl!=144613&&Cl!=144618&&Cl!=144619&&Cl!=144620&&Cl!=144621&&Cl!=144624&&Cl!=144627&&Cl!=144628&&Cl!=144632&&Cl!=144633&&Cl!=144634&&Cl!=144635&&Cl!=144636&&Cl!=144637&&Cl!=144638&&Cl!=144640&&Cl!=144641&&Cl!=144644&&Cl!=144645&&Cl!=144646&&Cl!=144647&&Cl!=144650&&Cl!=144651&&Cl!=144654&&Cl!=144658){Cl=pl(6,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{Xa(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(6,Ll,Cl)}}if(Cl!=-1&&Cl!=16134&&Cl!=27141&&Cl!=27142&&Cl!=27144&&Cl!=27145&&Cl!=27146&&Cl!=27147&&Cl!=27180&&Cl!=27181&&Cl!=27182&&Cl!=27206&&Cl!=27208&&Cl!=27209&&Cl!=27210&&Cl!=27211&&Cl!=27214&&Cl!=27215&&Cl!=27216&&Cl!=27217&&Cl!=27218&&Cl!=27219&&Cl!=27220&&Cl!=27221&&Cl!=27222&&Cl!=27224&&Cl!=27225&&Cl!=27226&&Cl!=27227&&Cl!=27229&&Cl!=27230&&Cl!=27232&&Cl!=27233&&Cl!=27234&&Cl!=27237&&Cl!=27238&&Cl!=27239&&Cl!=27240&&Cl!=27241&&Cl!=27242&&Cl!=27244&&Cl!=27245&&Cl!=27246&&Cl!=27247&&Cl!=27248&&Cl!=27249&&Cl!=27254&&Cl!=27255&&Cl!=27256&&Cl!=27257&&Cl!=27258&&Cl!=27259&&Cl!=27260&&Cl!=27261&&Cl!=27262&&Cl!=27264&&Cl!=27265&&Cl!=27267&&Cl!=27268&&Cl!=27269&&Cl!=27270&&Cl!=27271&&Cl!=27272&&Cl!=27273&&Cl!=27277&&Cl!=27281&&Cl!=27282&&Cl!=27284&&Cl!=27286&&Cl!=27287&&Cl!=27288&&Cl!=27289&&Cl!=27290&&Cl!=27291&&Cl!=27295&&Cl!=27296&&Cl!=27297&&Cl!=27298&&Cl!=27299&&Cl!=27300&&Cl!=27301&&Cl!=27303&&Cl!=27306&&Cl!=27307&&Cl!=27308&&Cl!=27310&&Cl!=27312&&Cl!=27314&&Cl!=27316&&Cl!=27317&&Cl!=27318&&Cl!=27320&&Cl!=27321&&Cl!=27322&&Cl!=27327&&Cl!=27328&&Cl!=27330&&Cl!=27334&&Cl!=27335&&Cl!=27336&&Cl!=27337&&Cl!=27338&&Cl!=27339&&Cl!=27342&&Cl!=27348&&Cl!=27349&&Cl!=27352&&Cl!=27354&&Cl!=27355&&Cl!=27356&&Cl!=27357&&Cl!=27358&&Cl!=27360&&Cl!=27361&&Cl!=27362&&Cl!=27363&&Cl!=27364&&Cl!=27365&&Cl!=27370&&Cl!=27371&&Cl!=27372&&Cl!=27373&&Cl!=27376&&Cl!=27379&&Cl!=27380&&Cl!=27384&&Cl!=27385&&Cl!=27386&&Cl!=27387&&Cl!=27388&&Cl!=27389&&Cl!=27390&&Cl!=27392&&Cl!=27393&&Cl!=27396&&Cl!=27397&&Cl!=27398&&Cl!=27399&&Cl!=27402&&Cl!=27403&&Cl!=27406&&Cl!=27410&&Cl!=90198&&Cl!=90214&&Cl!=113284)break;yl(),Wa()}ql.endNonterminal("Statements",Ll)}function Ia(){for(;;){wl(274);switch(Al){case 34:El(269);break;case 35:xl(250);break;case 46:El(281);break;case 47:El(263);break;case 54:xl(4);break;case 55:xl(1);break;case 59:xl(3);break;case 66:El(255);break;case 68:El(271);break;case 77:El(56);break;case 82:El(278);break;case 121:El(277);break;case 132:El(202);break;case 137:El(206);break;case 174:El(204);break;case 218:El(205);break;case 219:El(208);break;case 260:El(209);break;case 276:El(273);break;case 278:El(272);break;case 5:case 45:El(186);break;case 31:case 32:El(253);break;case 40:case 42:El(265);break;case 86:case 102:El(200);break;case 110:case 159:El(207);break;case 124:case 165:El(191);break;case 184:case 216:El(266);break;case 103:case 129:case 235:case 262:El(197);break;case 8:case 9:case 10:case 11:case 44:El(192);break;case 96:case 119:case 202:case 244:case 250:case 256:El(203);break;case 73:case 74:case 93:case 111:case 112:case 135:case 136:case 206:case 212:case 213:case 229:El(198);break;case 6:case 70:case 72:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 88:case 89:case 90:case 91:case 94:case 97:case 98:case 101:case 104:case 105:case 106:case 108:case 109:case 113:case 118:case 120:case 122:case 123:case 125:case 126:case 128:case 131:case 133:case 134:case 141:case 145:case 146:case 148:case 150:case 151:case 152:case 153:case 154:case 155:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 176:case 178:case 180:case 181:case 182:case 185:case 186:case 191:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 220:case 221:case 222:case 224:case 225:case 226:case 227:case 228:case 234:case 236:case 237:case 240:case 243:case 248:case 249:case 251:case 252:case 253:case 254:case 257:case 261:case 263:case 266:case 267:case 270:case 274:El(195);break;default:Cl=Al}if(Cl!=25&&Cl!=282&&Cl!=12805&&Cl!=12806&&Cl!=12808&&Cl!=12809&&Cl!=12810&&Cl!=12811&&Cl!=12844&&Cl!=12845&&Cl!=12846&&Cl!=12870&&Cl!=12872&&Cl!=12873&&Cl!=12874&&Cl!=12875&&Cl!=12878&&Cl!=12879&&Cl!=12880&&Cl!=12881&&Cl!=12882&&Cl!=12883&&Cl!=12884&&Cl!=12885&&Cl!=12886&&Cl!=12888&&Cl!=12889&&Cl!=12890&&Cl!=12891&&Cl!=12893&&Cl!=12894&&Cl!=12896&&Cl!=12897&&Cl!=12898&&Cl!=12901&&Cl!=12902&&Cl!=12903&&Cl!=12904&&Cl!=12905&&Cl!=12906&&Cl!=12908&&Cl!=12909&&Cl!=12910&&Cl!=12911&&Cl!=12912&&Cl!=12913&&Cl!=12918&&Cl!=12919&&Cl!=12920&&Cl!=12921&&Cl!=12922&&Cl!=12923&&Cl!=12924&&Cl!=12925&&Cl!=12926&&Cl!=12928&&Cl!=12929&&Cl!=12931&&Cl!=12932&&Cl!=12933&&Cl!=12934&&Cl!=12935&&Cl!=12936&&Cl!=12937&&Cl!=12941&&Cl!=12945&&Cl!=12946&&Cl!=12948&&Cl!=12950&&Cl!=12951&&Cl!=12952&&Cl!=12953&&Cl!=12954&&Cl!=12955&&Cl!=12959&&Cl!=12960&&Cl!=12961&&Cl!=12962&&Cl!=12963&&Cl!=12964&&Cl!=12965&&Cl!=12967&&Cl!=12970&&Cl!=12971&&Cl!=12972&&Cl!=12974&&Cl!=12976&&Cl!=12978&&Cl!=12980&&Cl!=12981&&Cl!=12982&&Cl!=12984&&Cl!=12985&&Cl!=12986&&Cl!=12991&&Cl!=12992&&Cl!=12994&&Cl!=12998&&Cl!=12999&&Cl!=13e3&&Cl!=13001&&Cl!=13002&&Cl!=13003&&Cl!=13006&&Cl!=13012&&Cl!=13013&&Cl!=13016&&Cl!=13018&&Cl!=13019&&Cl!=13020&&Cl!=13021&&Cl!=13022&&Cl!=13024&&Cl!=13025&&Cl!=13026&&Cl!=13027&&Cl!=13028&&Cl!=13029&&Cl!=13034&&Cl!=13035&&Cl!=13036&&Cl!=13037&&Cl!=13040&&Cl!=13043&&Cl!=13044&&Cl!=13048&&Cl!=13049&&Cl!=13050&&Cl!=13051&&Cl!=13052&&Cl!=13053&&Cl!=13054&&Cl!=13056&&Cl!=13057&&Cl!=13060&&Cl!=13061&&Cl!=13062&&Cl!=13063&&Cl!=13066&&Cl!=13067&&Cl!=13070&&Cl!=13074&&Cl!=16134&&Cl!=20997&&Cl!=20998&&Cl!=21e3&&Cl!=21001&&Cl!=21002&&Cl!=21003&&Cl!=21036&&Cl!=21037&&Cl!=21038&&Cl!=21062&&Cl!=21064&&Cl!=21065&&Cl!=21066&&Cl!=21067&&Cl!=21070&&Cl!=21071&&Cl!=21072&&Cl!=21073&&Cl!=21074&&Cl!=21075&&Cl!=21076&&Cl!=21077&&Cl!=21078&&Cl!=21080&&Cl!=21081&&Cl!=21082&&Cl!=21083&&Cl!=21085&&Cl!=21086&&Cl!=21088&&Cl!=21089&&Cl!=21090&&Cl!=21093&&Cl!=21094&&Cl!=21095&&Cl!=21096&&Cl!=21097&&Cl!=21098&&Cl!=21100&&Cl!=21101&&Cl!=21102&&Cl!=21103&&Cl!=21104&&Cl!=21105&&Cl!=21110&&Cl!=21111&&Cl!=21112&&Cl!=21113&&Cl!=21114&&Cl!=21115&&Cl!=21116&&Cl!=21117&&Cl!=21118&&Cl!=21120&&Cl!=21121&&Cl!=21123&&Cl!=21124&&Cl!=21125&&Cl!=21126&&Cl!=21127&&Cl!=21128&&Cl!=21129&&Cl!=21133&&Cl!=21137&&Cl!=21138&&Cl!=21140&&Cl!=21142&&Cl!=21143&&Cl!=21144&&Cl!=21145&&Cl!=21146&&Cl!=21147&&Cl!=21151&&Cl!=21152&&Cl!=21153&&Cl!=21154&&Cl!=21155&&Cl!=21156&&Cl!=21157&&Cl!=21159&&Cl!=21162&&Cl!=21163&&Cl!=21164&&Cl!=21166&&Cl!=21168&&Cl!=21170&&Cl!=21172&&Cl!=21173&&Cl!=21174&&Cl!=21176&&Cl!=21177&&Cl!=21178&&Cl!=21183&&Cl!=21184&&Cl!=21186&&Cl!=21190&&Cl!=21191&&Cl!=21192&&Cl!=21193&&Cl!=21194&&Cl!=21195&&Cl!=21198&&Cl!=21204&&Cl!=21205&&Cl!=21208&&Cl!=21210&&Cl!=21211&&Cl!=21212&&Cl!=21213&&Cl!=21214&&Cl!=21216&&Cl!=21217&&Cl!=21218&&Cl!=21219&&Cl!=21220&&Cl!=21221&&Cl!=21226&&Cl!=21227&&Cl!=21228&&Cl!=21229&&Cl!=21232&&Cl!=21235&&Cl!=21236&&Cl!=21240&&Cl!=21241&&Cl!=21242&&Cl!=21243&&Cl!=21244&&Cl!=21245&&Cl!=21246&&Cl!=21248&&Cl!=21249&&Cl!=21252&&Cl!=21253&&Cl!=21254&&Cl!=21255&&Cl!=21258&&Cl!=21259&&Cl!=21262&&Cl!=21266&&Cl!=27141&&Cl!=27142&&Cl!=27144&&Cl!=27145&&Cl!=27146&&Cl!=27147&&Cl!=27180&&Cl!=27181&&Cl!=27182&&Cl!=27206&&Cl!=27208&&Cl!=27209&&Cl!=27210&&Cl!=27211&&Cl!=27214&&Cl!=27215&&Cl!=27216&&Cl!=27217&&Cl!=27218&&Cl!=27219&&Cl!=27220&&Cl!=27221&&Cl!=27222&&Cl!=27224&&Cl!=27225&&Cl!=27226&&Cl!=27227&&Cl!=27229&&Cl!=27230&&Cl!=27232&&Cl!=27233&&Cl!=27234&&Cl!=27237&&Cl!=27238&&Cl!=27239&&Cl!=27240&&Cl!=27241&&Cl!=27242&&Cl!=27244&&Cl!=27245&&Cl!=27246&&Cl!=27247&&Cl!=27248&&Cl!=27249&&Cl!=27254&&Cl!=27255&&Cl!=27256&&Cl!=27257&&Cl!=27258&&Cl!=27259&&Cl!=27260&&Cl!=27261&&Cl!=27262&&Cl!=27264&&Cl!=27265&&Cl!=27267&&Cl!=27268&&Cl!=27269&&Cl!=27270&&Cl!=27271&&Cl!=27272&&Cl!=27273&&Cl!=27277&&Cl!=27281&&Cl!=27282&&Cl!=27284&&Cl!=27286&&Cl!=27287&&Cl!=27288&&Cl!=27289&&Cl!=27290&&Cl!=27291&&Cl!=27295&&Cl!=27296&&Cl!=27297&&Cl!=27298&&Cl!=27299&&Cl!=27300&&Cl!=27301&&Cl!=27303&&Cl!=27306&&Cl!=27307&&Cl!=27308&&Cl!=27310&&Cl!=27312&&Cl!=27314&&Cl!=27316&&Cl!=27317&&Cl!=27318&&Cl!=27320&&Cl!=27321&&Cl!=27322&&Cl!=27327&&Cl!=27328&&Cl!=27330&&Cl!=27334&&Cl!=27335&&Cl!=27336&&Cl!=27337&&Cl!=27338&&Cl!=27339&&Cl!=27342&&Cl!=27348&&Cl!=27349&&Cl!=27352&&Cl!=27354&&Cl!=27355&&Cl!=27356&&Cl!=27357&&Cl!=27358&&Cl!=27360&&Cl!=27361&&Cl!=27362&&Cl!=27363&&Cl!=27364&&Cl!=27365&&Cl!=27370&&Cl!=27371&&Cl!=27372&&Cl!=27373&&Cl!=27376&&Cl!=27379&&Cl!=27380&&Cl!=27384&&Cl!=27385&&Cl!=27386&&Cl!=27387&&Cl!=27388&&Cl!=27389&&Cl!=27390&&Cl!=27392&&Cl!=27393&&Cl!=27396&&Cl!=27397&&Cl!=27398&&Cl!=27399&&Cl!=27402&&Cl!=27403&&Cl!=27406&&Cl!=27410&&Cl!=90198&&Cl!=90214&&Cl!=113284&&Cl!=144389&&Cl!=144390&&Cl!=144392&&Cl!=144393&&Cl!=144394&&Cl!=144395&&Cl!=144428&&Cl!=144429&&Cl!=144430&&Cl!=144454&&Cl!=144456&&Cl!=144457&&Cl!=144458&&Cl!=144459&&Cl!=144462&&Cl!=144463&&Cl!=144464&&Cl!=144465&&Cl!=144466&&Cl!=144467&&Cl!=144468&&Cl!=144469&&Cl!=144470&&Cl!=144472&&Cl!=144473&&Cl!=144474&&Cl!=144475&&Cl!=144477&&Cl!=144478&&Cl!=144480&&Cl!=144481&&Cl!=144482&&Cl!=144485&&Cl!=144486&&Cl!=144487&&Cl!=144488&&Cl!=144489&&Cl!=144490&&Cl!=144492&&Cl!=144493&&Cl!=144494&&Cl!=144495&&Cl!=144496&&Cl!=144497&&Cl!=144502&&Cl!=144503&&Cl!=144504&&Cl!=144505&&Cl!=144506&&Cl!=144507&&Cl!=144508&&Cl!=144509&&Cl!=144510&&Cl!=144512&&Cl!=144513&&Cl!=144515&&Cl!=144516&&Cl!=144517&&Cl!=144518&&Cl!=144519&&Cl!=144520&&Cl!=144521&&Cl!=144525&&Cl!=144529&&Cl!=144530&&Cl!=144532&&Cl!=144534&&Cl!=144535&&Cl!=144536&&Cl!=144537&&Cl!=144538&&Cl!=144539&&Cl!=144543&&Cl!=144544&&Cl!=144545&&Cl!=144546&&Cl!=144547&&Cl!=144548&&Cl!=144549&&Cl!=144551&&Cl!=144554&&Cl!=144555&&Cl!=144556&&Cl!=144558&&Cl!=144560&&Cl!=144562&&Cl!=144564&&Cl!=144565&&Cl!=144566&&Cl!=144568&&Cl!=144569&&Cl!=144570&&Cl!=144575&&Cl!=144576&&Cl!=144578&&Cl!=144582&&Cl!=144583&&Cl!=144584&&Cl!=144585&&Cl!=144586&&Cl!=144587&&Cl!=144590&&Cl!=144596&&Cl!=144597&&Cl!=144600&&Cl!=144602&&Cl!=144603&&Cl!=144604&&Cl!=144605&&Cl!=144606&&Cl!=144608&&Cl!=144609&&Cl!=144610&&Cl!=144611&&Cl!=144612&&Cl!=144613&&Cl!=144618&&Cl!=144619&&Cl!=144620&&Cl!=144621&&Cl!=144624&&Cl!=144627&&Cl!=144628&&Cl!=144632&&Cl!=144633&&Cl!=144634&&Cl!=144635&&Cl!=144636&&Cl!=144637&&Cl!=144638&&Cl!=144640&&Cl!=144641&&Cl!=144644&&Cl!=144645&&Cl!=144646&&Cl!=144647&&Cl!=144650&&Cl!=144651&&Cl!=144654&&Cl!=144658){Cl=pl(6,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{Xa(),hl(6,t,-1);continue}catch(a){kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(6,t,-2);break}}}if(Cl!=-1&&Cl!=16134&&Cl!=27141&&Cl!=27142&&Cl!=27144&&Cl!=27145&&Cl!=27146&&Cl!=27147&&Cl!=27180&&Cl!=27181&&Cl!=27182&&Cl!=27206&&Cl!=27208&&Cl!=27209&&Cl!=27210&&Cl!=27211&&Cl!=27214&&Cl!=27215&&Cl!=27216&&Cl!=27217&&Cl!=27218&&Cl!=27219&&Cl!=27220&&Cl!=27221&&Cl!=27222&&Cl!=27224&&Cl!=27225&&Cl!=27226&&Cl!=27227&&Cl!=27229&&Cl!=27230&&Cl!=27232&&Cl!=27233&&Cl!=27234&&Cl!=27237&&Cl!=27238&&Cl!=27239&&Cl!=27240&&Cl!=27241&&Cl!=27242&&Cl!=27244&&Cl!=27245&&Cl!=27246&&Cl!=27247&&Cl!=27248&&Cl!=27249&&Cl!=27254&&Cl!=27255&&Cl!=27256&&Cl!=27257&&Cl!=27258&&Cl!=27259&&Cl!=27260&&Cl!=27261&&Cl!=27262&&Cl!=27264&&Cl!=27265&&Cl!=27267&&Cl!=27268&&Cl!=27269&&Cl!=27270&&Cl!=27271&&Cl!=27272&&Cl!=27273&&Cl!=27277&&Cl!=27281&&Cl!=27282&&Cl!=27284&&Cl!=27286&&Cl!=27287&&Cl!=27288&&Cl!=27289&&Cl!=27290&&Cl!=27291&&Cl!=27295&&Cl!=27296&&Cl!=27297&&Cl!=27298&&Cl!=27299&&Cl!=27300&&Cl!=27301&&Cl!=27303&&Cl!=27306&&Cl!=27307&&Cl!=27308&&Cl!=27310&&Cl!=27312&&Cl!=27314&&Cl!=27316&&Cl!=27317&&Cl!=27318&&Cl!=27320&&Cl!=27321&&Cl!=27322&&Cl!=27327&&Cl!=27328&&Cl!=27330&&Cl!=27334&&Cl!=27335&&Cl!=27336&&Cl!=27337&&Cl!=27338&&Cl!=27339&&Cl!=27342&&Cl!=27348&&Cl!=27349&&Cl!=27352&&Cl!=27354&&Cl!=27355&&Cl!=27356&&Cl!=27357&&Cl!=27358&&Cl!=27360&&Cl!=27361&&Cl!=27362&&Cl!=27363&&Cl!=27364&&Cl!=27365&&Cl!=27370&&Cl!=27371&&Cl!=27372&&Cl!=27373&&Cl!=27376&&Cl!=27379&&Cl!=27380&&Cl!=27384&&Cl!=27385&&Cl!=27386&&Cl!=27387&&Cl!=27388&&Cl!=27389&&Cl!=27390&&Cl!=27392&&Cl!=27393&&Cl!=27396&&Cl!=27397&&Cl!=27398&&Cl!=27399&&Cl!=27402&&Cl!=27403&&Cl!=27406&&Cl!=27410&&Cl!=90198&&Cl!=90214&&Cl!=113284)break;Xa()}}function qa(){ql.startNonterminal("StatementsAndExpr",Ll),Fa(),yl(),Q(),ql.endNonterminal("StatementsAndExpr",Ll)}function Ra(){Ia(),G()}function Ua(){ql.startNonterminal("StatementsAndOptionalExpr",Ll),Fa(),Al!=25&&Al!=282&&(yl(),Q()),ql.endNonterminal("StatementsAndOptionalExpr",Ll)}function za(){Ia(),Al!=25&&Al!=282&&G()}function Wa(){ql.startNonterminal("Statement",Ll);switch(Al){case 132:El(189);break;case 137:El(196);break;case 174:El(193);break;case 250:El(190);break;case 262:El(187);break;case 276:El(273);break;case 31:case 32:El(253);break;case 86:case 102:El(188);break;case 152:case 243:case 253:case 267:El(185);break;default:Cl=Al}if(Cl==2836||Cl==3103||Cl==3104||Cl==3348||Cl==4372||Cl==4884||Cl==5396||Cl==5908||Cl==16148||Cl==16660||Cl==17675||Cl==17684||Cl==18196||Cl==20756||Cl==21780||Cl==22804||Cl==23316||Cl==23828||Cl==24340||Cl==27924||Cl==28436||Cl==30484||Cl==34068||Cl==35092||Cl==35871||Cl==35872||Cl==36116||Cl==36895||Cl==36896||Cl==37140||Cl==37407||Cl==37408||Cl==37652||Cl==37919||Cl==37920||Cl==38164||Cl==38431||Cl==38432||Cl==38676||Cl==39700||Cl==39967||Cl==39968||Cl==40212||Cl==40479||Cl==40480||Cl==40724||Cl==40991||Cl==40992||Cl==41236||Cl==41503||Cl==41504||Cl==41748||Cl==42015||Cl==42016||Cl==42260||Cl==42527||Cl==42528||Cl==42772||Cl==43039||Cl==43040||Cl==43284||Cl==43551||Cl==43552||Cl==43796||Cl==44063||Cl==44064||Cl==44308||Cl==45087||Cl==45088||Cl==45332||Cl==45599||Cl==45600||Cl==45844||Cl==46111||Cl==46112||Cl==46356||Cl==46623||Cl==46624||Cl==46868||Cl==47647||Cl==47648||Cl==47892||Cl==48159||Cl==48160||Cl==48404||Cl==49183||Cl==49184||Cl==49428||Cl==49695||Cl==49696||Cl==49940||Cl==50207||Cl==50208||Cl==50452||Cl==51743||Cl==51744||Cl==51988||Cl==52255||Cl==52256||Cl==52500||Cl==52767||Cl==52768||Cl==53012||Cl==53279||Cl==53280||Cl==53524||Cl==53791||Cl==53792||Cl==54036||Cl==54303||Cl==54304||Cl==54548||Cl==55327||Cl==55328||Cl==55572||Cl==55839||Cl==55840||Cl==56084||Cl==56351||Cl==56352||Cl==56596||Cl==56863||Cl==56864||Cl==57108||Cl==57375||Cl==57376||Cl==57620||Cl==57887||Cl==57888||Cl==58132||Cl==60447||Cl==60448||Cl==60692||Cl==60959||Cl==60960||Cl==61204||Cl==61471||Cl==61472||Cl==61716||Cl==61983||Cl==61984||Cl==62228||Cl==62495||Cl==62496||Cl==62740||Cl==63007||Cl==63008||Cl==63252||Cl==63519||Cl==63520||Cl==63764||Cl==64031||Cl==64032||Cl==64276||Cl==64543||Cl==64544||Cl==64788||Cl==65567||Cl==65568||Cl==65812||Cl==66079||Cl==66080||Cl==66324||Cl==67103||Cl==67104||Cl==67348||Cl==67615||Cl==67616||Cl==67860||Cl==68127||Cl==68128||Cl==68372||Cl==68639||Cl==68640||Cl==68884||Cl==69151||Cl==69152||Cl==69396||Cl==69663||Cl==69664||Cl==69908||Cl==70175||Cl==70176||Cl==70420||Cl==72223||Cl==72224||Cl==72468||Cl==74271||Cl==74272||Cl==74516||Cl==74783||Cl==74784||Cl==75028||Cl==75807||Cl==75808||Cl==76052||Cl==76831||Cl==76832||Cl==77076||Cl==77343||Cl==77344||Cl==77588||Cl==77855||Cl==77856||Cl==78100||Cl==78367||Cl==78368||Cl==78612||Cl==78879||Cl==78880||Cl==79124||Cl==79391||Cl==79392||Cl==79636||Cl==81439||Cl==81440||Cl==81684||Cl==81951||Cl==81952||Cl==82196||Cl==82463||Cl==82464||Cl==82708||Cl==82975||Cl==82976||Cl==83220||Cl==83487||Cl==83488||Cl==83732||Cl==83999||Cl==84e3||Cl==84244||Cl==84511||Cl==84512||Cl==84756||Cl==85535||Cl==85536||Cl==85780||Cl==87071||Cl==87072||Cl==87316||Cl==87583||Cl==87584||Cl==87828||Cl==88095||Cl==88096||Cl==88340||Cl==89119||Cl==89120||Cl==89364||Cl==90143||Cl==90144||Cl==90388||Cl==91167||Cl==91168||Cl==91412||Cl==92191||Cl==92192||Cl==92436||Cl==92703||Cl==92704||Cl==92948||Cl==93215||Cl==93216||Cl==93460||Cl==94239||Cl==94240||Cl==94484||Cl==94751||Cl==94752||Cl==94996||Cl==95263||Cl==95264||Cl==95508||Cl==97823||Cl==97824||Cl==98068||Cl==98335||Cl==98336||Cl==98580||Cl==99359||Cl==99360||Cl==99604||Cl==101407||Cl==101408||Cl==101652||Cl==101919||Cl==101920||Cl==102164||Cl==102431||Cl==102432||Cl==102676||Cl==102943||Cl==102944||Cl==103188||Cl==103455||Cl==103456||Cl==103700||Cl==103967||Cl==103968||Cl==104212||Cl==105503||Cl==105504||Cl==105748||Cl==108575||Cl==108576||Cl==108820||Cl==109087||Cl==109088||Cl==109332||Cl==110623||Cl==110624||Cl==110868||Cl==111647||Cl==111648||Cl==111892||Cl==112159||Cl==112160||Cl==112404||Cl==112671||Cl==112672||Cl==112916||Cl==113183||Cl==113184||Cl==113428||Cl==113695||Cl==113696||Cl==113940||Cl==114719||Cl==114720||Cl==114964||Cl==115231||Cl==115232||Cl==115476||Cl==115743||Cl==115744||Cl==115988||Cl==116255||Cl==116256||Cl==116500||Cl==116767||Cl==116768||Cl==117012||Cl==117279||Cl==117280||Cl==117524||Cl==119839||Cl==119840||Cl==120084||Cl==120351||Cl==120352||Cl==120596||Cl==120863||Cl==120864||Cl==121108||Cl==121375||Cl==121376||Cl==121620||Cl==122911||Cl==122912||Cl==123156||Cl==124447||Cl==124448||Cl==124692||Cl==124959||Cl==124960||Cl==125204||Cl==127007||Cl==127008||Cl==127252||Cl==127519||Cl==127520||Cl==127764||Cl==128031||Cl==128032||Cl==128276||Cl==128543||Cl==128544||Cl==128788||Cl==129055||Cl==129056||Cl==129300||Cl==129567||Cl==129568||Cl==129812||Cl==130079||Cl==130080||Cl==130324||Cl==131103||Cl==131104||Cl==131348||Cl==131615||Cl==131616||Cl==131860||Cl==133151||Cl==133152||Cl==133396||Cl==133663||Cl==133664||Cl==133908||Cl==134175||Cl==134176||Cl==134420||Cl==134687||Cl==134688||Cl==134932||Cl==136223||Cl==136224||Cl==136468||Cl==136735||Cl==136736||Cl==136980||Cl==138271||Cl==138272||Cl==138516||Cl==140319||Cl==140320||Cl==140564||Cl==141588||Cl==142612||Cl==144660){Cl=pl(7,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{$a(),Cl=-1}catch(a){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Ka(),Cl=-2}catch(f){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Ga(),Cl=-3}catch(l){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Sf(),Cl=-12}catch(c){Cl=-13}}}}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(7,Ll,Cl)}}switch(Cl){case-2:Ja();break;case-3:Qa();break;case 90198:Ya();break;case 90214:ef();break;case 113284:nf();break;case 16009:case 16046:case 116910:case 119945:case 128649:sf();break;case 17560:ff();break;case 17651:cf();break;case 141562:vf();break;case 17661:gf();break;case-12:case 16134:Ef();break;case-13:xf();break;default:Va()}ql.endNonterminal("Statement",Ll)}function Xa(){switch(Al){case 132:El(189);break;case 137:El(196);break;case 174:El(193);break;case 250:El(190);break;case 262:El(187);break;case 276:El(273);break;case 31:case 32:El(253);break;case 86:case 102:El(188);break;case 152:case 243:case 253:case 267:El(185);break;default:Cl=Al}if(Cl==2836||Cl==3103||Cl==3104||Cl==3348||Cl==4372||Cl==4884||Cl==5396||Cl==5908||Cl==16148||Cl==16660||Cl==17675||Cl==17684||Cl==18196||Cl==20756||Cl==21780||Cl==22804||Cl==23316||Cl==23828||Cl==24340||Cl==27924||Cl==28436||Cl==30484||Cl==34068||Cl==35092||Cl==35871||Cl==35872||Cl==36116||Cl==36895||Cl==36896||Cl==37140||Cl==37407||Cl==37408||Cl==37652||Cl==37919||Cl==37920||Cl==38164||Cl==38431||Cl==38432||Cl==38676||Cl==39700||Cl==39967||Cl==39968||Cl==40212||Cl==40479||Cl==40480||Cl==40724||Cl==40991||Cl==40992||Cl==41236||Cl==41503||Cl==41504||Cl==41748||Cl==42015||Cl==42016||Cl==42260||Cl==42527||Cl==42528||Cl==42772||Cl==43039||Cl==43040||Cl==43284||Cl==43551||Cl==43552||Cl==43796||Cl==44063||Cl==44064||Cl==44308||Cl==45087||Cl==45088||Cl==45332||Cl==45599||Cl==45600||Cl==45844||Cl==46111||Cl==46112||Cl==46356||Cl==46623||Cl==46624||Cl==46868||Cl==47647||Cl==47648||Cl==47892||Cl==48159||Cl==48160||Cl==48404||Cl==49183||Cl==49184||Cl==49428||Cl==49695||Cl==49696||Cl==49940||Cl==50207||Cl==50208||Cl==50452||Cl==51743||Cl==51744||Cl==51988||Cl==52255||Cl==52256||Cl==52500||Cl==52767||Cl==52768||Cl==53012||Cl==53279||Cl==53280||Cl==53524||Cl==53791||Cl==53792||Cl==54036||Cl==54303||Cl==54304||Cl==54548||Cl==55327||Cl==55328||Cl==55572||Cl==55839||Cl==55840||Cl==56084||Cl==56351||Cl==56352||Cl==56596||Cl==56863||Cl==56864||Cl==57108||Cl==57375||Cl==57376||Cl==57620||Cl==57887||Cl==57888||Cl==58132||Cl==60447||Cl==60448||Cl==60692||Cl==60959||Cl==60960||Cl==61204||Cl==61471||Cl==61472||Cl==61716||Cl==61983||Cl==61984||Cl==62228||Cl==62495||Cl==62496||Cl==62740||Cl==63007||Cl==63008||Cl==63252||Cl==63519||Cl==63520||Cl==63764||Cl==64031||Cl==64032||Cl==64276||Cl==64543||Cl==64544||Cl==64788||Cl==65567||Cl==65568||Cl==65812||Cl==66079||Cl==66080||Cl==66324||Cl==67103||Cl==67104||Cl==67348||Cl==67615||Cl==67616||Cl==67860||Cl==68127||Cl==68128||Cl==68372||Cl==68639||Cl==68640||Cl==68884||Cl==69151||Cl==69152||Cl==69396||Cl==69663||Cl==69664||Cl==69908||Cl==70175||Cl==70176||Cl==70420||Cl==72223||Cl==72224||Cl==72468||Cl==74271||Cl==74272||Cl==74516||Cl==74783||Cl==74784||Cl==75028||Cl==75807||Cl==75808||Cl==76052||Cl==76831||Cl==76832||Cl==77076||Cl==77343||Cl==77344||Cl==77588||Cl==77855||Cl==77856||Cl==78100||Cl==78367||Cl==78368||Cl==78612||Cl==78879||Cl==78880||Cl==79124||Cl==79391||Cl==79392||Cl==79636||Cl==81439||Cl==81440||Cl==81684||Cl==81951||Cl==81952||Cl==82196||Cl==82463||Cl==82464||Cl==82708||Cl==82975||Cl==82976||Cl==83220||Cl==83487||Cl==83488||Cl==83732||Cl==83999||Cl==84e3||Cl==84244||Cl==84511||Cl==84512||Cl==84756||Cl==85535||Cl==85536||Cl==85780||Cl==87071||Cl==87072||Cl==87316||Cl==87583||Cl==87584||Cl==87828||Cl==88095||Cl==88096||Cl==88340||Cl==89119||Cl==89120||Cl==89364||Cl==90143||Cl==90144||Cl==90388||Cl==91167||Cl==91168||Cl==91412||Cl==92191||Cl==92192||Cl==92436||Cl==92703||Cl==92704||Cl==92948||Cl==93215||Cl==93216||Cl==93460||Cl==94239||Cl==94240||Cl==94484||Cl==94751||Cl==94752||Cl==94996||Cl==95263||Cl==95264||Cl==95508||Cl==97823||Cl==97824||Cl==98068||Cl==98335||Cl==98336||Cl==98580||Cl==99359||Cl==99360||Cl==99604||Cl==101407||Cl==101408||Cl==101652||Cl==101919||Cl==101920||Cl==102164||Cl==102431||Cl==102432||Cl==102676||Cl==102943||Cl==102944||Cl==103188||Cl==103455||Cl==103456||Cl==103700||Cl==103967||Cl==103968||Cl==104212||Cl==105503||Cl==105504||Cl==105748||Cl==108575||Cl==108576||Cl==108820||Cl==109087||Cl==109088||Cl==109332||Cl==110623||Cl==110624||Cl==110868||Cl==111647||Cl==111648||Cl==111892||Cl==112159||Cl==112160||Cl==112404||Cl==112671||Cl==112672||Cl==112916||Cl==113183||Cl==113184||Cl==113428||Cl==113695||Cl==113696||Cl==113940||Cl==114719||Cl==114720||Cl==114964||Cl==115231||Cl==115232||Cl==115476||Cl==115743||Cl==115744||Cl==115988||Cl==116255||Cl==116256||Cl==116500||Cl==116767||Cl==116768||Cl==117012||Cl==117279||Cl==117280||Cl==117524||Cl==119839||Cl==119840||Cl==120084||Cl==120351||Cl==120352||Cl==120596||Cl==120863||Cl==120864||Cl==121108||Cl==121375||Cl==121376||Cl==121620||Cl==122911||Cl==122912||Cl==123156||Cl==124447||Cl==124448||Cl==124692||Cl==124959||Cl==124960||Cl==125204||Cl==127007||Cl==127008||Cl==127252||Cl==127519||Cl==127520||Cl==127764||Cl==128031||Cl==128032||Cl==128276||Cl==128543||Cl==128544||Cl==128788||Cl==129055||Cl==129056||Cl==129300||Cl==129567||Cl==129568||Cl==129812||Cl==130079||Cl==130080||Cl==130324||Cl==131103||Cl==131104||Cl==131348||Cl==131615||Cl==131616||Cl==131860||Cl==133151||Cl==133152||Cl==133396||Cl==133663||Cl==133664||Cl==133908||Cl==134175||Cl==134176||Cl==134420||Cl==134687||Cl==134688||Cl==134932||Cl==136223||Cl==136224||Cl==136468||Cl==136735||Cl==136736||Cl==136980||Cl==138271||Cl==138272||Cl==138516||Cl==140319||Cl==140320||Cl==140564||Cl==141588||Cl==142612||Cl==144660){Cl=pl(7,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{$a(),hl(7,t,-1),Cl=-14}catch(a){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Ka(),hl(7,t,-2),Cl=-14}catch(f){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Ga(),hl(7,t,-3),Cl=-14}catch(l){try{kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),Sf(),hl(7,t,-12),Cl=-14}catch(c){Cl=-13,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(7,t,-13)}}}}}}switch(Cl){case-2:Ka();break;case-3:Ga();break;case 90198:Za();break;case 90214:tf();break;case 113284:rf();break;case 16009:case 16046:case 116910:case 119945:case 128649:of();break;case 17560:lf();break;case 17651:hf();break;case 141562:mf();break;case 17661:yf();break;case-12:case 16134:Sf();break;case-13:Tf();break;case-14:break;default:$a()}}function Va(){ql.startNonterminal("ApplyStatement",Ll),kf(),vl(53),ql.endNonterminal("ApplyStatement",Ll)}function $a(){Lf(),ml(53)}function Ja(){ql.startNonterminal("AssignStatement",Ll),vl(31),wl(253),yl(),fi(),wl(27),vl(52),wl(267),yl(),Nf(),vl(53),ql.endNonterminal("AssignStatement",Ll)}function Ka(){ml(31),wl(253),li(),wl(27),ml(52),wl(267),Cf(),ml(53)}function Qa(){ql.startNonterminal("BlockStatement",Ll),vl(276),wl(273),yl(),Fa(),vl(282),ql.endNonterminal("BlockStatement",Ll)}function Ga(){ml(276),wl(273),Ia(),ml(282)}function Ya(){ql.startNonterminal("BreakStatement",Ll),vl(86),wl(59),vl(176),wl(28),vl(53),ql.endNonterminal("BreakStatement",Ll)}function Za(){ml(86),wl(59),ml(176),wl(28),ml(53)}function ef(){ql.startNonterminal("ContinueStatement",Ll),vl(102),wl(59),vl(176),wl(28),vl(53),ql.endNonterminal("ContinueStatement",Ll)}function tf(){ml(102),wl(59),ml(176),wl(28),ml(53)}function nf(){ql.startNonterminal("ExitStatement",Ll),vl(132),wl(71),vl(221),wl(267),yl(),Nf(),vl(53),ql.endNonterminal("ExitStatement",Ll)}function rf(){ml(132),wl(71),ml(221),wl(267),Cf(),ml(53)}function sf(){ql.startNonterminal("FLWORStatement",Ll),et();for(;;){wl(173);if(Al==220)break;yl(),nt()}yl(),uf(),ql.endNonterminal("FLWORStatement",Ll)}function of(){tt();for(;;){wl(173);if(Al==220)break;rt()}af()}function uf(){ql.startNonterminal("ReturnStatement",Ll),vl(220),wl(267),yl(),Wa(),ql.endNonterminal("ReturnStatement",Ll)}function af(){ml(220),wl(267),Xa()}function ff(){ql.startNonterminal("IfStatement",Ll),vl(152),wl(22),vl(34),wl(267),yl(),Q(),vl(37),wl(77),vl(245),wl(267),yl(),Wa(),wl(48),vl(122),wl(267),yl(),Wa(),ql.endNonterminal("IfStatement",Ll)}function lf(){ml(152),wl(22),ml(34),wl(267),G(),ml(37),wl(77),ml(245),wl(267),Xa(),wl(48),ml(122),wl(267),Xa()}function cf(){ql.startNonterminal("SwitchStatement",Ll),vl(243),wl(22),vl(34),wl(267),yl(),Q(),vl(37);for(;;){wl(35),yl(),pf(),wl(113);if(Al!=88)break}vl(109),wl(70),vl(220),wl(267),yl(),Wa(),ql.endNonterminal("SwitchStatement",Ll)}function hf(){ml(243),wl(22),ml(34),wl(267),G(),ml(37);for(;;){wl(35),df(),wl(113);if(Al!=88)break}ml(109),wl(70),ml(220),wl(267),Xa()}function pf(){ql.startNonterminal("SwitchCaseStatement",Ll);for(;;){vl(88),wl(267),yl(),cn();if(Al!=88)break}vl(220),wl(267),yl(),Wa(),ql.endNonterminal("SwitchCaseStatement",Ll)}function df(){for(;;){ml(88),wl(267),hn();if(Al!=88)break}ml(220),wl(267),Xa()}function vf(){ql.startNonterminal("TryCatchStatement",Ll),vl(250),wl(87),yl(),Qa();for(;;){wl(36),vl(91),wl(255),yl(),An(),yl(),Qa(),wl(274);switch(Al){case 91:El(276);break;default:Cl=Al}if(Cl==38491||Cl==45659||Cl==46171||Cl==60507||Cl==65627||Cl==67163||Cl==74843||Cl==76891||Cl==77403||Cl==82011||Cl==83035||Cl==84059||Cl==88155||Cl==91227||Cl==92251||Cl==95323||Cl==102491||Cl==127067||Cl==127579||Cl==130139){Cl=pl(8,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{wl(36),ml(91),wl(255),On(),Ga(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(8,Ll,Cl)}}if(Cl!=-1&&Cl!=2651&&Cl!=3163&&Cl!=35931&&Cl!=36955&&Cl!=37467&&Cl!=37979&&Cl!=40027&&Cl!=40539&&Cl!=41051&&Cl!=41563&&Cl!=42075&&Cl!=42587&&Cl!=43099&&Cl!=43611&&Cl!=44123&&Cl!=45147&&Cl!=46683&&Cl!=47707&&Cl!=48219&&Cl!=49243&&Cl!=49755&&Cl!=50267&&Cl!=51803&&Cl!=52315&&Cl!=52827&&Cl!=53339&&Cl!=53851&&Cl!=54363&&Cl!=55387&&Cl!=55899&&Cl!=56411&&Cl!=56923&&Cl!=57435&&Cl!=57947&&Cl!=61019&&Cl!=61531&&Cl!=62043&&Cl!=62555&&Cl!=63067&&Cl!=63579&&Cl!=64091&&Cl!=64603&&Cl!=66139&&Cl!=67675&&Cl!=68187&&Cl!=68699&&Cl!=69211&&Cl!=69723&&Cl!=70235&&Cl!=72283&&Cl!=74331&&Cl!=75867&&Cl!=77915&&Cl!=78427&&Cl!=78939&&Cl!=79451&&Cl!=81499&&Cl!=82523&&Cl!=83547&&Cl!=84571&&Cl!=85595&&Cl!=87131&&Cl!=87643&&Cl!=89179&&Cl!=90203&&Cl!=92763&&Cl!=93275&&Cl!=94299&&Cl!=94811&&Cl!=97883&&Cl!=98395&&Cl!=99419&&Cl!=101467&&Cl!=101979&&Cl!=103003&&Cl!=103515&&Cl!=104027&&Cl!=105563&&Cl!=108635&&Cl!=109147&&Cl!=110683&&Cl!=111707&&Cl!=112219&&Cl!=112731&&Cl!=113243&&Cl!=113755&&Cl!=114779&&Cl!=115291&&Cl!=115803&&Cl!=116315&&Cl!=116827&&Cl!=117339&&Cl!=119899&&Cl!=120411&&Cl!=120923&&Cl!=121435&&Cl!=122971&&Cl!=124507&&Cl!=125019&&Cl!=128091&&Cl!=128603&&Cl!=129115&&Cl!=129627&&Cl!=131163&&Cl!=131675&&Cl!=133211&&Cl!=133723&&Cl!=134235&&Cl!=134747&&Cl!=136283&&Cl!=136795&&Cl!=138331&&Cl!=140379)break}ql.endNonterminal("TryCatchStatement",Ll)}function mf(){ml(250),wl(87),Ga(),wl(36),ml(91),wl(255),On(),Ga();for(;;){wl(274);switch(Al){case 91:El(276);break;default:Cl=Al}if(Cl==38491||Cl==45659||Cl==46171||Cl==60507||Cl==65627||Cl==67163||Cl==74843||Cl==76891||Cl==77403||Cl==82011||Cl==83035||Cl==84059||Cl==88155||Cl==91227||Cl==92251||Cl==95323||Cl==102491||Cl==127067||Cl==127579||Cl==130139){Cl=pl(8,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{wl(36),ml(91),wl(255),On(),Ga(),hl(8,t,-1);continue}catch(a){kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(8,t,-2);break}}}if(Cl!=-1&&Cl!=2651&&Cl!=3163&&Cl!=35931&&Cl!=36955&&Cl!=37467&&Cl!=37979&&Cl!=40027&&Cl!=40539&&Cl!=41051&&Cl!=41563&&Cl!=42075&&Cl!=42587&&Cl!=43099&&Cl!=43611&&Cl!=44123&&Cl!=45147&&Cl!=46683&&Cl!=47707&&Cl!=48219&&Cl!=49243&&Cl!=49755&&Cl!=50267&&Cl!=51803&&Cl!=52315&&Cl!=52827&&Cl!=53339&&Cl!=53851&&Cl!=54363&&Cl!=55387&&Cl!=55899&&Cl!=56411&&Cl!=56923&&Cl!=57435&&Cl!=57947&&Cl!=61019&&Cl!=61531&&Cl!=62043&&Cl!=62555&&Cl!=63067&&Cl!=63579&&Cl!=64091&&Cl!=64603&&Cl!=66139&&Cl!=67675&&Cl!=68187&&Cl!=68699&&Cl!=69211&&Cl!=69723&&Cl!=70235&&Cl!=72283&&Cl!=74331&&Cl!=75867&&Cl!=77915&&Cl!=78427&&Cl!=78939&&Cl!=79451&&Cl!=81499&&Cl!=82523&&Cl!=83547&&Cl!=84571&&Cl!=85595&&Cl!=87131&&Cl!=87643&&Cl!=89179&&Cl!=90203&&Cl!=92763&&Cl!=93275&&Cl!=94299&&Cl!=94811&&Cl!=97883&&Cl!=98395&&Cl!=99419&&Cl!=101467&&Cl!=101979&&Cl!=103003&&Cl!=103515&&Cl!=104027&&Cl!=105563&&Cl!=108635&&Cl!=109147&&Cl!=110683&&Cl!=111707&&Cl!=112219&&Cl!=112731&&Cl!=113243&&Cl!=113755&&Cl!=114779&&Cl!=115291&&Cl!=115803&&Cl!=116315&&Cl!=116827&&Cl!=117339&&Cl!=119899&&Cl!=120411&&Cl!=120923&&Cl!=121435&&Cl!=122971&&Cl!=124507&&Cl!=125019&&Cl!=128091&&Cl!=128603&&Cl!=129115&&Cl!=129627&&Cl!=131163&&Cl!=131675&&Cl!=133211&&Cl!=133723&&Cl!=134235&&Cl!=134747&&Cl!=136283&&Cl!=136795&&Cl!=138331&&Cl!=140379)break;wl(36),ml(91),wl(255),On(),Ga()}}function gf(){ql.startNonterminal("TypeswitchStatement",Ll),vl(253),wl(22),vl(34),wl(267),yl(),Q(),vl(37);for(;;){wl(35),yl(),bf(),wl(113);if(Al!=88)break}vl(109),wl(95),Al==31&&(vl(31),wl(253),yl(),fi()),wl(70),vl(220),wl(267),yl(),Wa(),ql.endNonterminal("TypeswitchStatement",Ll)}function yf(){ml(253),wl(22),ml(34),wl(267),G(),ml(37);for(;;){wl(35),wf(),wl(113);if(Al!=88)break}ml(109),wl(95),Al==31&&(ml(31),wl(253),li()),wl(70),ml(220),wl(267),Xa()}function bf(){ql.startNonterminal("CaseStatement",Ll),vl(88),wl(260),Al==31&&(vl(31),wl(253),yl(),fi(),wl(30),vl(79)),wl(259),yl(),ps(),wl(70),vl(220),wl(267),yl(),Wa(),ql.endNonterminal("CaseStatement",Ll)}function wf(){ml(88),wl(260),Al==31&&(ml(31),wl(253),li(),wl(30),ml(79)),wl(259),ds(),wl(70),ml(220),wl(267),Xa()}function Ef(){ql.startNonterminal("VarDeclStatement",Ll);for(;;){wl(98);if(Al!=32)break;yl(),H()}vl(262),wl(21),vl(31),wl(253),yl(),fi(),wl(157),Al==79&&(yl(),cs()),wl(145),Al==52&&(vl(52),wl(267),yl(),Nf());for(;;){if(Al!=41)break;vl(41),wl(21),vl(31),wl(253),yl(),fi(),wl(157),Al==79&&(yl(),cs()),wl(145),Al==52&&(vl(52),wl(267),yl(),Nf())}vl(53),ql.endNonterminal("VarDeclStatement",Ll)}function Sf(){for(;;){wl(98);if(Al!=32)break;B()}ml(262),wl(21),ml(31),wl(253),li(),wl(157),Al==79&&hs(),wl(145),Al==52&&(ml(52),wl(267),Cf());for(;;){if(Al!=41)break;ml(41),wl(21),ml(31),wl(253),li(),wl(157),Al==79&&hs(),wl(145),Al==52&&(ml(52),wl(267),Cf())}ml(53)}function xf(){ql.startNonterminal("WhileStatement",Ll),vl(267),wl(22),vl(34),wl(267),yl(),Q(),vl(37),wl(267),yl(),Wa(),ql.endNonterminal("WhileStatement",Ll)}function Tf(){ml(267),wl(22),ml(34),wl(267),G(),ml(37),wl(267),Xa()}function Nf(){ql.startNonterminal("ExprSingle",Ll);switch(Al){case 137:El(233);break;case 174:El(231);break;case 250:El(230);break;case 152:case 243:case 253:El(228);break;default:Cl=Al}switch(Cl){case 16009:case 16046:case 116910:case 119945:case 128649:Y();break;case 17560:bn();break;case 17651:un();break;case 141562:En();break;case 17661:pn();break;default:kf()}ql.endNonterminal("ExprSingle",Ll)}function Cf(){switch(Al){case 137:El(233);break;case 174:El(231);break;case 250:El(230);break;case 152:case 243:case 253:El(228);break;default:Cl=Al}switch(Cl){case 16009:case 16046:case 116910:case 119945:case 128649:Z();break;case 17560:wn();break;case 17651:an();break;case 141562:Sn();break;case 17661:dn();break;default:Lf()}}function kf(){ql.startNonterminal("ExprSimple",Ll);switch(Al){case 218:El(232);break;case 219:El(235);break;case 110:case 159:El(234);break;case 103:case 129:case 235:El(229);break;default:Cl=Al}switch(Cl){case 16001:case 16107:sn();break;case 97951:case 98463:ko();break;case 97902:case 98414:Ao();break;case 98010:Do();break;case 98011:case 133851:Mo();break;case 15975:Ro();break;case 85102:Af();break;case 85151:Mf();break;case 85210:Df();break;case 85211:Hf();break;case 77:jf();break;default:Mn()}ql.endNonterminal("ExprSimple",Ll)}function Lf(){switch(Al){case 218:El(232);break;case 219:El(235);break;case 110:case 159:El(234);break;case 103:case 129:case 235:El(229);break;default:Cl=Al}switch(Cl){case 16001:case 16107:on();break;case 97951:case 98463:Lo();break;case 97902:case 98414:Oo();break;case 98010:Po();break;case 98011:case 133851:_o();break;case 15975:Uo();break;case 85102:Of();break;case 85151:_f();break;case 85210:Pf();break;case 85211:Bf();break;case 77:Ff();break;default:_n()}}function Af(){ql.startNonterminal("JSONDeleteExpr",Ll),vl(110),wl(56),vl(166),wl(262),yl(),Kr(),ql.endNonterminal("JSONDeleteExpr",Ll)}function Of(){ml(110),wl(56),ml(166),wl(262),Qr()}function Mf(){ql.startNonterminal("JSONInsertExpr",Ll),vl(159),wl(56),vl(166),wl(267),yl(),Nf(),vl(163),wl(267),yl(),Nf();switch(Al){case 81:El(69);break;default:Cl=Al}if(Cl==108113){Cl=pl(9,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(81),wl(69),ml(211),wl(267),Cf(),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(9,Ll,Cl)}}Cl==-1&&(vl(81),wl(69),vl(211),wl(267),yl(),Nf()),ql.endNonterminal("JSONInsertExpr",Ll)}function _f(){ml(159),wl(56),ml(166),wl(267),Cf(),ml(163),wl(267),Cf();switch(Al){case 81:El(69);break;default:Cl=Al}if(Cl==108113){Cl=pl(9,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(81),wl(69),ml(211),wl(267),Cf(),hl(9,t,-1)}catch(a){kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(9,t,-2)}Cl=-2}}Cl==-1&&(ml(81),wl(69),ml(211),wl(267),Cf())}function Df(){ql.startNonterminal("JSONRenameExpr",Ll),vl(218),wl(56),vl(166),wl(262),yl(),Kr(),vl(79),wl(267),yl(),Nf(),ql.endNonterminal("JSONRenameExpr",Ll)}function Pf(){ml(218),wl(56),ml(166),wl(262),Qr(),ml(79),wl(267),Cf()}function Hf(){ql.startNonterminal("JSONReplaceExpr",Ll),vl(219),wl(56),vl(166),wl(82),vl(261),wl(64),vl(196),wl(262),yl(),Kr(),vl(270),wl(267),yl(),Nf(),ql.endNonterminal("JSONReplaceExpr",Ll)}function Bf(){ml(219),wl(56),ml(166),wl(82),ml(261),wl(64),ml(196),wl(262),Qr(),ml(270),wl(267),Cf()}function jf(){ql.startNonterminal("JSONAppendExpr",Ll),vl(77),wl(56),vl(166),wl(267),yl(),Nf(),vl(163),wl(267),yl(),Nf(),ql.endNonterminal("JSONAppendExpr",Ll)}function Ff(){ml(77),wl(56),ml(166),wl(267),Cf(),ml(163),wl(267),Cf()}function If(){ql.startNonterminal("CommonContent",Ll);switch(Al){case 12:vl(12);break;case 23:vl(23);break;case 277:vl(277);break;case 283:vl(283);break;default:fl()}ql.endNonterminal("CommonContent",Ll)}function qf(){switch(Al){case 12:ml(12);break;case 23:ml(23);break;case 277:ml(277);break;case 283:ml(283);break;default:ll()}}function Rf(){ql.startNonterminal("ContentExpr",Ll),qa(),ql.endNonterminal("ContentExpr",Ll)}function Uf(){Ra()}function zf(){ql.startNonterminal("CompDocConstructor",Ll),vl(119),wl(87),yl(),fl(),ql.endNonterminal("CompDocConstructor",Ll)}function Wf(){ml(119),wl(87),ll()}function Xf(){ql.startNonterminal("CompAttrConstructor",Ll),vl(82),wl(256);switch(Al){case 276:vl(276),wl(267),yl(),Q(),vl(282);break;default:yl(),Oa()}wl(87);switch(Al){case 276:El(273);break;default:Cl=Al}if(Cl==144660){Cl=pl(10,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(276),wl(88),ml(282),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(10,Ll,Cl)}}switch(Cl){case-1:vl(276),wl(88),vl(282);break;default:yl(),fl()}ql.endNonterminal("CompAttrConstructor",Ll)}function Vf(){ml(82),wl(256);switch(Al){case 276:ml(276),wl(267),G(),ml(282);break;default:Ma()}wl(87);switch(Al){case 276:El(273);break;default:Cl=Al}if(Cl==144660){Cl=pl(10,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(276),wl(88),ml(282),hl(10,t,-1),Cl=-3}catch(a){Cl=-2,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(10,t,-2)}}}switch(Cl){case-1:ml(276),wl(88),ml(282);break;case-3:break;default:ll()}}function $f(){ql.startNonterminal("CompPIConstructor",Ll),vl(216),wl(249);switch(Al){case 276:vl(276),wl(267),yl(),Q(),vl(282);break;default:yl(),Pa()}wl(87);switch(Al){case 276:El(273);break;default:Cl=Al}if(Cl==144660){Cl=pl(11,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(276),wl(88),ml(282),Cl=-1}catch(a){Cl=-2}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(11,Ll,Cl)}}switch(Cl){case-1:vl(276),wl(88),vl(282);break;default:yl(),fl()}ql.endNonterminal("CompPIConstructor",Ll)}function Jf(){ml(216),wl(249);switch(Al){case 276:ml(276),wl(267),G(),ml(282);break;default:Ha()}wl(87);switch(Al){case 276:El(273);break;default:Cl=Al}if(Cl==144660){Cl=pl(11,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ml(276),wl(88),ml(282),hl(11,t,-1),Cl=-3}catch(a){Cl=-2,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(11,t,-2)}}}switch(Cl){case-1:ml(276),wl(88),ml(282);break;case-3:break;default:ll()}}function Kf(){ql.startNonterminal("CompCommentConstructor",Ll),vl(96),wl(87),yl(),fl(),ql.endNonterminal("CompCommentConstructor",Ll)}function Qf(){ml(96),wl(87),ll()}function Gf(){ql.startNonterminal("CompTextConstructor",Ll),vl(244),wl(87),yl(),fl(),ql.endNonterminal("CompTextConstructor",Ll)}function Yf(){ml(244),wl(87),ll()}function Zf(){ql.startNonterminal("PrimaryExpr",Ll);switch(Al){case 184:El(254);break;case 216:El(252);break;case 276:El(273);break;case 82:case 121:El(257);break;case 96:case 244:El(93);break;case 119:case 202:case 256:El(139);break;case 6:case 70:case 72:case 73:case 74:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 86:case 88:case 89:case 90:case 91:case 93:case 94:case 97:case 98:case 101:case 102:case 103:case 104:case 105:case 106:case 108:case 109:case 110:case 111:case 112:case 113:case 118:case 122:case 123:case 125:case 126:case 128:case 129:case 131:case 132:case 133:case 134:case 135:case 136:case 137:case 141:case 146:case 148:case 150:case 151:case 153:case 154:case 155:case 159:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 174:case 176:case 178:case 180:case 181:case 182:case 186:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 206:case 212:case 213:case 218:case 219:case 220:case 221:case 222:case 224:case 225:case 228:case 229:case 234:case 235:case 236:case 237:case 240:case 248:case 249:case 250:case 251:case 252:case 254:case 257:case 260:case 261:case 262:case 263:case 266:case 267:case 270:case 274:El(92);break;default:Cl=Al}if(Cl==2836||Cl==3348||Cl==4372||Cl==4884||Cl==5396||Cl==5908||Cl==16148||Cl==16660||Cl==17684||Cl==18196||Cl==20756||Cl==21780||Cl==22804||Cl==23316||Cl==23828||Cl==24340||Cl==27924||Cl==28436||Cl==30484||Cl==34068||Cl==35092||Cl==36116||Cl==37140||Cl==37652||Cl==38164||Cl==38676||Cl==39700||Cl==40212||Cl==40724||Cl==41236||Cl==41748||Cl==42260||Cl==42772||Cl==43284||Cl==43796||Cl==44308||Cl==45332||Cl==45844||Cl==46356||Cl==46868||Cl==47892||Cl==48404||Cl==49428||Cl==49940||Cl==50452||Cl==51988||Cl==52500||Cl==53012||Cl==53524||Cl==54036||Cl==54548||Cl==55572||Cl==56084||Cl==56596||Cl==57108||Cl==57620||Cl==58132||Cl==60692||Cl==61204||Cl==61716||Cl==62228||Cl==62740||Cl==63252||Cl==63764||Cl==64276||Cl==64788||Cl==65812||Cl==66324||Cl==67348||Cl==67860||Cl==68372||Cl==68884||Cl==69396||Cl==69908||Cl==70420||Cl==72468||Cl==74516||Cl==75028||Cl==76052||Cl==77076||Cl==77588||Cl==78100||Cl==78612||Cl==79124||Cl==79636||Cl==81684||Cl==82196||Cl==82708||Cl==83220||Cl==83732||Cl==84244||Cl==84756||Cl==85780||Cl==87316||Cl==87828||Cl==88340||Cl==89364||Cl==90388||Cl==91412||Cl==92436||Cl==92948||Cl==93460||Cl==94484||Cl==94996||Cl==95508||Cl==98068||Cl==98580||Cl==99604||Cl==101652||Cl==102164||Cl==102676||Cl==103188||Cl==103700||Cl==104212||Cl==105748||Cl==108820||Cl==109332||Cl==110868||Cl==111892||Cl==112404||Cl==112916||Cl==113428||Cl==113940||Cl==114964||Cl==115476||Cl==115988||Cl==116500||Cl==117012||Cl==117524||Cl==120084||Cl==120596||Cl==121108||Cl==121620||Cl==123156||Cl==124692||Cl==125204||Cl==127252||Cl==127764||Cl==128276||Cl==128788||Cl==129300||Cl==129812||Cl==130324||Cl==131348||Cl==131860||Cl==133396||Cl==133908||Cl==134420||Cl==134932||Cl==136468||Cl==136980||Cl==138516||Cl==140564||Cl==141588||Cl==142612||Cl==144660){Cl=pl(12,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ll(),Cl=-10}catch(a){Cl=-11}kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(12,Ll,Cl)}}switch(Cl){case 8:case 9:case 10:case 11:ri();break;case 31:ui();break;case 34:ci();break;case 44:pi();break;case 17414:case 17478:case 17480:case 17481:case 17482:case 17483:case 17486:case 17487:case 17488:case 17489:case 17491:case 17492:case 17493:case 17494:case 17496:case 17497:case 17498:case 17499:case 17501:case 17502:case 17505:case 17506:case 17509:case 17510:case 17511:case 17512:case 17513:case 17514:case 17516:case 17517:case 17518:case 17519:case 17520:case 17521:case 17526:case 17527:case 17530:case 17531:case 17533:case 17534:case 17536:case 17537:case 17539:case 17540:case 17541:case 17542:case 17543:case 17544:case 17545:case 17549:case 17554:case 17556:case 17558:case 17559:case 17561:case 17562:case 17563:case 17567:case 17568:case 17569:case 17570:case 17571:case 17572:case 17575:case 17578:case 17579:case 17580:case 17582:case 17584:case 17586:case 17588:case 17589:case 17590:case 17592:case 17594:case 17600:case 17602:case 17606:case 17607:case 17608:case 17609:case 17610:case 17611:case 17614:case 17620:case 17621:case 17626:case 17627:case 17628:case 17629:case 17630:case 17632:case 17633:case 17636:case 17637:case 17642:case 17643:case 17644:case 17645:case 17648:case 17656:case 17657:case 17658:case 17659:case 17660:case 17662:case 17664:case 17665:case 17668:case 17669:case 17670:case 17671:case 17674:case 17675:case 17678:case 17682:bi();break;case 141514:vi();break;case 141568:gi();break;case 32:case 120:case 124:case 145:case 152:case 165:case 185:case 191:case 226:case 227:case 243:case 253:case 14854:case 14918:case 14920:case 14921:case 14922:case 14923:case 14926:case 14927:case 14928:case 14929:case 14930:case 14931:case 14932:case 14933:case 14934:case 14936:case 14937:case 14938:case 14939:case 14941:case 14942:case 14944:case 14945:case 14946:case 14949:case 14950:case 14951:case 14952:case 14953:case 14954:case 14956:case 14957:case 14958:case 14959:case 14960:case 14961:case 14966:case 14967:case 14969:case 14970:case 14971:case 14973:case 14974:case 14976:case 14977:case 14979:case 14980:case 14981:case 14982:case 14983:case 14984:case 14985:case 14989:case 14994:case 14996:case 14998:case 14999:case 15001:case 15002:case 15003:case 15007:case 15008:case 15009:case 15010:case 15011:case 15012:case 15015:case 15018:case 15019:case 15020:case 15022:case 15024:case 15026:case 15028:case 15029:case 15030:case 15032:case 15034:case 15040:case 15042:case 15046:case 15047:case 15048:case 15049:case 15050:case 15051:case 15054:case 15060:case 15061:case 15064:case 15066:case 15067:case 15068:case 15069:case 15070:case 15072:case 15073:case 15076:case 15077:case 15082:case 15083:case 15084:case 15085:case 15088:case 15092:case 15096:case 15097:case 15098:case 15099:case 15100:case 15102:case 15104:case 15105:case 15108:case 15109:case 15110:case 15111:case 15114:case 15115:case 15118:case 15122:rs();break;case-10:fl();break;case-11:rl();break;case 68:ul();break;case 278:tl();break;default:Ni()}ql.endNonterminal("PrimaryExpr",Ll)}function el(){switch(Al){case 184:El(254);break;case 216:El(252);break;case 276:El(273);break;case 82:case 121:El(257);break;case 96:case 244:El(93);break;case 119:case 202:case 256:El(139);break;case 6:case 70:case 72:case 73:case 74:case 75:case 78:case 79:case 80:case 81:case 83:case 84:case 85:case 86:case 88:case 89:case 90:case 91:case 93:case 94:case 97:case 98:case 101:case 102:case 103:case 104:case 105:case 106:case 108:case 109:case 110:case 111:case 112:case 113:case 118:case 122:case 123:case 125:case 126:case 128:case 129:case 131:case 132:case 133:case 134:case 135:case 136:case 137:case 141:case 146:case 148:case 150:case 151:case 153:case 154:case 155:case 159:case 160:case 161:case 162:case 163:case 164:case 167:case 170:case 171:case 172:case 174:case 176:case 178:case 180:case 181:case 182:case 186:case 192:case 194:case 198:case 199:case 200:case 201:case 203:case 206:case 212:case 213:case 218:case 219:case 220:case 221:case 222:case 224:case 225:case 228:case 229:case 234:case 235:case 236:case 237:case 240:case 248:case 249:case 250:case 251:case 252:case 254:case 257:case 260:case 261:case 262:case 263:case 266:case 267:case 270:case 274:El(92);break;default:Cl=Al}if(Cl==2836||Cl==3348||Cl==4372||Cl==4884||Cl==5396||Cl==5908||Cl==16148||Cl==16660||Cl==17684||Cl==18196||Cl==20756||Cl==21780||Cl==22804||Cl==23316||Cl==23828||Cl==24340||Cl==27924||Cl==28436||Cl==30484||Cl==34068||Cl==35092||Cl==36116||Cl==37140||Cl==37652||Cl==38164||Cl==38676||Cl==39700||Cl==40212||Cl==40724||Cl==41236||Cl==41748||Cl==42260||Cl==42772||Cl==43284||Cl==43796||Cl==44308||Cl==45332||Cl==45844||Cl==46356||Cl==46868||Cl==47892||Cl==48404||Cl==49428||Cl==49940||Cl==50452||Cl==51988||Cl==52500||Cl==53012||Cl==53524||Cl==54036||Cl==54548||Cl==55572||Cl==56084||Cl==56596||Cl==57108||Cl==57620||Cl==58132||Cl==60692||Cl==61204||Cl==61716||Cl==62228||Cl==62740||Cl==63252||Cl==63764||Cl==64276||Cl==64788||Cl==65812||Cl==66324||Cl==67348||Cl==67860||Cl==68372||Cl==68884||Cl==69396||Cl==69908||Cl==70420||Cl==72468||Cl==74516||Cl==75028||Cl==76052||Cl==77076||Cl==77588||Cl==78100||Cl==78612||Cl==79124||Cl==79636||Cl==81684||Cl==82196||Cl==82708||Cl==83220||Cl==83732||Cl==84244||Cl==84756||Cl==85780||Cl==87316||Cl==87828||Cl==88340||Cl==89364||Cl==90388||Cl==91412||Cl==92436||Cl==92948||Cl==93460||Cl==94484||Cl==94996||Cl==95508||Cl==98068||Cl==98580||Cl==99604||Cl==101652||Cl==102164||Cl==102676||Cl==103188||Cl==103700||Cl==104212||Cl==105748||Cl==108820||Cl==109332||Cl==110868||Cl==111892||Cl==112404||Cl==112916||Cl==113428||Cl==113940||Cl==114964||Cl==115476||Cl==115988||Cl==116500||Cl==117012||Cl==117524||Cl==120084||Cl==120596||Cl==121108||Cl==121620||Cl==123156||Cl==124692||Cl==125204||Cl==127252||Cl==127764||Cl==128276||Cl==128788||Cl==129300||Cl==129812||Cl==130324||Cl==131348||Cl==131860||Cl==133396||Cl==133908||Cl==134420||Cl==134932||Cl==136468||Cl==136980||Cl==138516||Cl==140564||Cl==141588||Cl==142612||Cl==144660){Cl=pl(12,Ll);if(Cl==0){var e=kl,t=Ll,n=Al,r=Ol,i=Ml,s=_l,o=Dl,u=Pl;try{ll(),hl(12,t,-10),Cl=-14}catch(a){Cl=-11,kl=e,Ll=t,Al=n,Al==0?Xl=t:(Ol=r,Ml=i,_l=s,_l==0?Xl=i:(Dl=o,Pl=u,Xl=u)),hl(12,t,-11)}}}switch(Cl){case 8:case 9:case 10:case 11:ii();break;case 31:ai();break;case 34:hi();break;case 44:di();break;case 17414:case 17478:case 17480:case 17481:case 17482:case 17483:case 17486:case 17487:case 17488:case 17489:case 17491:case 17492:case 17493:case 17494:case 17496:case 17497:case 17498:case 17499:case 17501:case 17502:case 17505:case 17506:case 17509:case 17510:case 17511:case 17512:case 17513:case 17514:case 17516:case 17517:case 17518:case 17519:case 17520:case 17521:case 17526:case 17527:case 17530:case 17531:case 17533:case 17534:case 17536:case 17537:case 17539:case 17540:case 17541:case 17542:case 17543:case 17544:case 17545:case 17549:case 17554:case 17556:case 17558:case 17559:case 17561:case 17562:case 17563:case 17567:case 17568:case 17569:case 17570:case 17571:case 17572:case 17575:case 17578:case 17579:case 17580:case 17582:case 17584:case 17586:case 17588:case 17589:case 17590:case 17592:case 17594:case 17600:case 17602:case 17606:case 17607:case 17608:case 17609:case 17610:case 17611:case 17614:case 17620:case 17621:case 17626:case 17627:case 17628:case 17629:case 17630:case 17632:case 17633:case 17636:case 17637:case 17642:case 17643:case 17644:case 17645:case 17648:case 17656:case 17657:case 17658:case 17659:case 17660:case 17662:case 17664:case 17665:case 17668:case 17669:case 17670:case 17671:case 17674:case 17675:case 17678:case 17682:wi();break;case 141514:mi();break;case 141568:yi();break;case 32:case 120:case 124:case 145:case 152:case 165:case 185:case 191:case 226:case 227:case 243:case 253:case 14854:case 14918:case 14920:case 14921:case 14922:case 14923:case 14926:case 14927:case 14928:case 14929:case 14930:case 14931:case 14932:case 14933:case 14934:case 14936:case 14937:case 14938:case 14939:case 14941:case 14942:case 14944:case 14945:case 14946:case 14949:case 14950:case 14951:case 14952:case 14953:case 14954:case 14956:case 14957:case 14958:case 14959:case 14960:case 14961:case 14966:case 14967:case 14969:case 14970:case 14971:case 14973:case 14974:case 14976:case 14977:case 14979:case 14980:case 14981:case 14982:case 14983:case 14984:case 14985:case 14989:case 14994:case 14996:case 14998:case 14999:case 15001:case 15002:case 15003:case 15007:case 15008:case 15009:case 15010:case 15011:case 15012:case 15015:case 15018:case 15019:case 15020:case 15022:case 15024:case 15026:case 15028:case 15029:case 15030:case 15032:case 15034:case 15040:case 15042:case 15046:case 15047:case 15048:case 15049:case 15050:case 15051:case 15054:case 15060:case 15061:case 15064:case 15066:case 15067:case 15068:case 15069:case 15070:case 15072:case 15073:case 15076:case 15077:case 15082:case 15083:case 15084:case 15085:case 15088:case 15092:case 15096:case 15097:case 15098:case 15099:case 15100:case 15102:case 15104:case 15105:case 15108:case 15109:case 15110:case 15111:case 15114:case 15115:case 15118:case 15122:is();break;case-10:ll();break;case-11:il();break;case 68:al();break;case 278:nl();break;case-14:break;default:Ci()}}function tl(){ql.startNonterminal("JSONSimpleObjectUnion",Ll),vl(278),wl(272),Al!=281&&(yl(),Q()),vl(281),ql.endNonterminal("JSONSimpleObjectUnion",Ll)}function nl(){ml(278),wl(272),Al!=281&&G(),ml(281)}function rl(){ql.startNonterminal("ObjectConstructor",Ll),vl(276),wl(273);if(Al!=282){yl(),sl();for(;;){if(Al!=41)break;vl(41),wl(267),yl(),sl()}}vl(282),ql.endNonterminal("ObjectConstructor",Ll)}function il(){ml(276),wl(273);if(Al!=282){ol();for(;;){if(Al!=41)break;ml(41),wl(267),ol()}}ml(282)}function sl(){ql.startNonterminal("PairConstructor",Ll),Nf(),vl(49),wl(267),yl(),Nf(),ql.endNonterminal("PairConstructor",Ll)}function ol(){Cf(),ml(49),wl(267),Cf()}function ul(){ql.startNonterminal("ArrayConstructor",Ll),vl(68),wl(271),Al!=69&&(yl(),Q()),vl(69),ql.endNonterminal("ArrayConstructor",Ll)}function al(){ml(68),wl(271),Al!=69&&G(),ml(69)}function fl(){ql.startNonterminal("BlockExpr",Ll),vl(276),wl(273),yl(),Ua(),vl(282),ql.endNonterminal("BlockExpr",Ll)}function ll(){ml(276),wl(273),za(),ml(282)}function cl(){ql.startNonterminal("FunctionDecl",Ll),vl(145),wl(253),yl(),Oa(),wl(22),vl(34),wl(94),Al==31&&(yl(),R()),vl(37),wl(148),Al==79&&(vl(79),wl(259),yl(),ps()),wl(118);switch(Al){case 276:vl(276),wl(273),yl(),Ua(),vl(282);break;default:vl(133)}ql.endNonterminal("FunctionDecl",Ll)}function hl(e,t,n){Rl[(t<<4)+e]=n}function pl(e,t){var n=Rl[(t<<4)+e];return typeof n!="undefined"?n:0}function dl(e,t,n,r,i){throw t>Bl&&(Hl=e,Bl=t,jl=n,Fl=r,Il=i),new Nl.ParseException(Hl,Bl,jl,Fl,Il)}function vl(e){Al==e?(yl(),ql.terminal(i.TOKEN[Al],Ol,Ml>zl?zl:Ml),kl=Ol,Ll=Ml,Al=_l,Al!=0&&(Ol=Dl,Ml=Pl,_l=0)):dl(Ol,Ml,0,Al,e)}function ml(e){Al==e?(kl=Ol,Ll=Ml,Al=_l,Al!=0&&(Ol=Dl,Ml=Pl,_l=0)):dl(Ol,Ml,0,Al,e)}function gl(e){var t=kl,n=Ll,r=Al,i=Ol,s=Ml;Al=e,Ol=Wl,Ml=Xl,_l=0,Aa(),kl=t,Ll=n,Al=r,Al!=0&&(Ol=i,Ml=s)}function yl(){Ll!=Ol&&(kl=Ll,Ll=Ol,ql.whitespace(kl,Ll))}function bl(e){var t;for(;;){t=Tl(e);if(t!=22){if(t!=36)break;gl(t)}}return t}function wl(e){Al==0&&(Al=bl(e),Ol=Wl,Ml=Xl)}function El(e){_l==0&&(_l=bl(e),Dl=Wl,Pl=Xl),Cl=_l<<9|Al}function Sl(e){Al==0&&(Al=Tl(e),Ol=Wl,Ml=Xl)}function xl(e){_l==0&&(_l=Tl(e),Dl=Wl,Pl=Xl),Cl=_l<<9|Al}function Tl(e){var t=!1;Wl=Xl;var n=Xl,r=i.INITIAL[e],s=0;for(var o=r&4095;o!=0;){var u,a=n<zl?Ul.charCodeAt(n):0;++n;if(a<128)u=i.MAP0[a];else if(a<55296){var f=a>>4;u=i.MAP1[(a&15)+i.MAP1[(f&31)+i.MAP1[f>>5]]]}else{if(a<56320){var f=n<zl?Ul.charCodeAt(n):0;f>=56320&&f<57344&&(++n,a=((a&1023)<<10)+(f&1023)+65536,t=!0)}var l=0,c=5;for(var h=3;;h=c+l>>1){if(i.MAP2[h]>a)c=h-1;else{if(!(i.MAP2[6+h]<a)){u=i.MAP2[12+h];break}l=h+1}if(l>c){u=0;break}}}s=o;var p=(u<<12)+o-1;o=i.TRANSITION[(p&15)+i.TRANSITION[p>>4]],o>4095&&(r=o,o&=4095,Xl=n)}r>>=12;if(r==0){Xl=n-1;var f=Xl<zl?Ul.charCodeAt(Xl):0;return f>=56320&&f<57344&&--Xl,dl(Wl,Xl,s,-1,-1)}if(t)for(var d=r>>9;d>0;--d){--Xl;var f=Xl<zl?Ul.charCodeAt(Xl):0;f>=56320&&f<57344&&--Xl}else Xl-=r>>9;return(r&511)-1}n(e,t);var Nl=this;this.ParseException=function(e,t,n,r,i){var s=e,o=t,u=n,a=r,f=i;this.getBegin=function(){return s},this.getEnd=function(){return o},this.getState=function(){return u},this.getExpected=function(){return f},this.getOffending=function(){return a},this.getMessage=function(){return a<0?"lexical analysis failed":"syntax error"}},this.getInput=function(){return Ul},this.getOffendingToken=function(e){var t=e.getOffending();return t>=0?i.TOKEN[t]:null},this.getExpectedTokenSet=function(e){var t;return e.getExpected()<0?t=i.getTokenSet(-e.getState()):t=[i.TOKEN[e.getExpected()]],t},this.getErrorMessage=function(e){var t=this.getExpectedTokenSet(e),n=this.getOffendingToken(e),r=Ul.substring(0,e.getBegin()),i=r.split("\n"),s=i.length,o=i[s-1].length+1,u=e.getEnd()-e.getBegin();return e.getMessage()+(n==null?"":", found "+n)+"\nwhile expecting "+(t.length==1?t[0]:"["+t.join(", ")+"]")+"\n"+(u==0||n!=null?"":"after successfully scanning "+u+" characters beginning ")+"at line "+s+", column "+o+":\n..."+Ul.substring(e.getBegin(),Math.min(Ul.length,e.getBegin()+64))+"..."},this.parse_XQuery=function(){ql.startNonterminal("XQuery",Ll),wl(268),yl(),s(),vl(25),ql.endNonterminal("XQuery",Ll)};var Cl,kl,Ll,Al,Ol,Ml,_l,Dl,Pl,Hl,Bl,jl,Fl,Il,ql,Rl,Ul,zl,Wl,Xl};r.getTokenSet=function(e){var t=[],n=e<0?-e:INITIAL[e]&4095;for(var i=0;i<284;i+=32){var s=i,o=(i>>5)*3684+n-1,u=o>>2,a=u>>2,f=r.EXPECTED[(o&3)+r.EXPECTED[(u&3)+r.EXPECTED[(a&7)+r.EXPECTED[a>>3]]]];for(;f!=0;f>>>=1,++s)(f&1)!=0&&t.push(r.TOKEN[s])}return t},r.MAP0=[70,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,17,17,17,17,17,17,17,17,17,18,19,20,21,22,23,24,25,26,27,28,29,26,30,30,30,30,30,31,32,33,30,30,34,30,30,35,30,30,30,36,30,30,37,38,39,38,30,38,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,38,38],r.MAP1=[108,124,214,214,214,214,214,214,214,214,214,214,214,214,214,214,156,181,181,181,181,181,214,215,213,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,247,261,277,293,309,355,371,387,423,423,423,415,339,331,339,331,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,440,440,440,440,440,440,440,324,339,339,339,339,339,339,339,339,401,423,423,424,422,423,423,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,423,338,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,339,423,70,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,17,17,17,17,17,17,17,17,17,18,19,20,21,22,23,24,25,26,27,28,29,26,30,30,30,30,30,31,32,33,30,30,30,30,30,30,30,30,30,30,30,30,30,30,38,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,34,30,30,35,30,30,30,36,30,30,37,38,39,38,30,38,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,38,38,38,38,38,38,38,38,38,38,38,38,30,30,38,38,38,38,38,38,38,69,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69],r.MAP2=[57344,63744,64976,65008,65536,983040,63743,64975,65007,65533,983039,1114111,38,30,38,30,30,38],r.INITIAL=[1,12290,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,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,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284],r.TRANSITION=[23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22007,18176,18196,18196,18196,18203,18196,18196,18196,18196,18230,18196,18196,18196,18196,18219,18196,18180,18246,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,18411,20907,20920,20932,20944,22539,18416,20967,23546,23546,23546,35799,23546,23546,51042,37625,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,21008,21032,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21632,21055,23546,23546,23546,21178,23546,23546,23916,42362,21241,23546,23546,23546,23546,19298,47203,21077,21110,23546,23546,23546,35799,23546,23546,21194,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,21229,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21358,21323,23546,23546,23546,26152,23546,23546,27593,23546,21369,29482,21257,21282,21273,21304,21317,21346,20967,23546,23546,23546,28947,23546,23546,21385,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,20711,21423,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,21446,26048,18745,18766,18771,20561,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23540,23546,23546,23546,25880,23545,23546,31245,23546,21468,23534,21504,23546,21511,23546,21527,21539,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,21567,23546,23546,23546,31874,23546,23546,21586,23546,23546,21608,21620,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,35211,23546,23546,23546,23546,23546,23546,23424,21648,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,21681,18544,18567,18590,50977,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21736,21705,23546,23546,23546,44539,23546,23546,24265,25689,25607,23546,23546,23546,23546,26450,47502,21724,21752,23546,23546,23546,35799,23546,23546,21783,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,20237,21819,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21551,21857,21913,21913,21913,21864,21908,21913,21918,21967,21842,21949,21880,21961,21896,21934,21983,21995,20967,23546,23546,23546,26225,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,22023,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,28636,23546,23546,23546,25912,50946,23546,50080,50952,21369,28635,23546,22054,22060,22076,22111,22121,22137,23546,23546,23546,30755,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,22183,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,27655,23546,23546,23546,25841,23546,23546,23546,51066,39748,22869,22242,22228,22245,22261,22277,22288,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,20285,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,18648,40763,24585,22304,22324,22304,22338,24585,22308,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,22361,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,22386,23546,23546,23546,25841,18403,23546,19576,22382,44281,22402,22429,22434,22434,22450,22385,22413,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22473,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,25653,22498,22518,22498,22532,25653,22502,22555,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27132,23546,42897,23546,44844,38626,22584,22361,37471,23546,23546,23546,23546,22587,47563,46856,47563,47563,22603,35356,22824,22824,34828,22804,22621,22804,22804,33187,36943,23546,23546,23546,23546,23546,26071,23546,22641,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,43701,32739,23546,23546,23546,23546,23546,29474,22702,23546,33124,44563,47563,47563,47563,47564,22719,35350,22824,22764,22824,22767,35689,22783,22804,22803,22804,29879,33195,23546,23546,23546,23546,23546,27587,23546,23546,47562,46826,47563,47563,27195,22821,42846,22824,22824,22824,30376,22804,22841,22804,22804,29883,33199,23546,23546,21430,23546,49502,48973,47563,47563,36153,45209,22824,22824,39816,27834,22804,22804,43796,30403,39964,23546,23546,22861,23546,47560,22885,47563,23113,22903,22824,33078,22920,22804,38116,23546,23546,22937,29174,22980,47563,34384,42527,22825,23019,22804,31964,47447,46606,23083,36624,23105,32340,30673,23131,36549,23164,40907,43074,23200,23229,23275,36645,36686,33550,48975,23107,30672,23141,39417,23313,23334,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,24855,21369,23546,23546,23546,23546,23546,20980,20992,23383,23546,23546,23546,35799,23546,23546,23420,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,23440,27132,23546,23546,23546,44844,23546,23546,18368,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,22603,22824,22824,22824,34828,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,26071,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23485,23546,23546,23546,26606,23546,23546,23546,23546,21369,28080,23505,23528,23563,23575,28081,23512,20967,23546,23546,23546,35799,23546,23546,51042,30821,23546,37478,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23598,23546,23546,23546,25841,23546,23546,23546,23184,21369,23546,23546,23546,23546,23546,22653,22665,23615,23546,23546,23546,35799,23546,23546,23644,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,23664,27132,23546,23546,23546,44844,23546,23546,23688,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,22603,22824,22824,22824,34828,22804,22804,22804,22804,39677,48779,23733,23546,23546,23546,23546,34921,23753,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,23777,48792,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,41753,22821,22824,22824,22824,22824,44122,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,34866,22821,22824,22824,22824,22824,23826,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,39721,23546,23546,23546,30797,25982,23546,23546,23849,21369,20313,44188,23887,23893,23909,23546,49114,23932,23546,23546,23546,36603,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,24187,24465,24820,25200,24258,18282,18849,18305,23964,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,23993,24116,24017,24046,24001,24088,25090,24132,24812,24103,24159,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,24182,25436,24884,24206,24190,24890,24819,24363,24227,24819,24414,24143,25214,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,24243,24030,25425,24281,24706,24308,24337,24350,24389,24405,24517,24423,25208,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,24439,19364,24455,25063,24489,24505,24533,25266,24373,24545,24561,24577,18900,19554,23717,19574,19592,19632,19657,20190,20797,19809,24679,24601,25048,19406,24473,24617,25251,25017,24736,26492,19746,41094,19782,18942,19201,19798,24633,24673,24695,24722,24779,24801,24836,23977,20842,20016,18679,20827,20042,24871,24906,24935,24951,25006,25411,25295,20159,20175,20206,25033,24292,25079,25281,25106,20376,20392,19394,24919,24657,20462,19676,24211,24785,32258,19353,24647,24966,20473,24060,25136,20616,25172,25188,25236,24072,25311,25362,25396,25452,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,21328,23546,23546,23546,25841,25477,23546,23546,25472,32915,25493,25501,25501,25501,25517,21330,25540,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,25581,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20499,25597,18792,18808,18830,23628,18814,25623,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,21016,25645,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,25669,25705,25721,19477,25754,19498,25737,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,18708,21452,19692,19708,20143,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,50535,23259,25770,25770,25770,25779,21123,21135,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,25220,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,25802,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21147,20888,23546,23546,23546,25841,23546,23546,23546,23546,21369,22959,25825,25825,25825,25834,20891,22964,25857,23546,23546,23546,35799,23546,23546,51042,23546,23546,27140,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,25873,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,25552,25561,23546,23546,23546,26852,23546,23546,23546,23546,21369,33245,25896,25896,25896,25905,36950,33250,25928,23546,23546,23546,35799,23546,23546,51042,23546,23546,22366,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,25964,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,25998,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,26099,23546,23546,23546,23546,25841,21661,23546,23546,21094,43925,23546,23546,23546,21665,26069,21092,26087,20967,23546,23546,23546,35799,23546,23546,51042,31389,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,26115,26145,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,23546,23546,23546,23546,23546,43987,26168,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,26285,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,26302,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,26321,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,19867,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,26341,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,26341,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,29369,22821,22824,22824,22824,22824,28821,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,23049,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26364,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,19293,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,31312,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,37937,26399,26410,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,26426,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,26445,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,41698,26466,26486,26508,26520,41701,26470,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,38227,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,26543,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,23546,23546,23546,23546,23546,23546,23424,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,28554,23546,26577,26583,26599,47449,44239,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,26622,20175,20206,20222,51139,20274,51143,20301,26638,20392,51127,20418,50802,26654,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,27306,23546,23546,23546,26527,26683,26714,28322,26699,26731,50814,50823,26775,26789,26801,26817,26829,26204,26845,23599,23546,25326,21171,35898,34903,26868,26909,26948,33311,26979,26959,26995,27011,45967,27047,27063,27101,27117,34536,27156,23546,23546,44844,41240,34846,23546,42415,27173,27664,23546,42356,28101,47563,47563,47563,27192,27418,22824,22824,42533,43762,22804,22804,22804,27211,27231,36943,23546,44839,40944,23546,27267,27287,46640,23546,27304,35519,43402,27322,27344,47563,47563,27380,27403,27436,31453,22824,33011,27464,27493,27533,27556,22804,38069,35418,30315,27573,26241,27609,23546,44532,27629,39107,50620,23546,45009,27646,31107,27698,47563,27746,27765,23297,27785,27825,36368,22824,27859,48139,23833,27991,44504,49256,22804,43572,23672,27877,42988,25683,23546,27893,27913,46094,23546,21213,44018,47563,30489,32462,27941,34820,22824,45399,49012,28821,27978,22804,22804,28014,28034,49064,28072,35792,28097,51046,28117,50856,22994,28137,47563,41728,28206,28229,22824,41433,28267,28290,22804,34572,28320,28338,23546,23546,39715,47560,28358,45550,23113,28379,35308,33078,28399,36714,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,41649,28419,28455,40472,38341,28471,38828,40452,28791,24756,33030,27540,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,28526,23546,23546,26527,23546,23546,23546,23546,34078,28545,23546,28652,28658,28674,28690,28701,26204,23546,23546,23546,35799,23546,23546,23546,23546,26963,23546,23546,23546,23546,23546,48973,47563,22605,35842,45303,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,46230,50621,28718,23546,28717,23546,48975,47563,47563,47563,27769,28735,22823,22824,22824,22824,49361,49439,22804,22804,22804,22804,28781,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,23672,23807,23546,18289,23546,23546,44779,49528,23546,36898,47563,47563,47563,40417,28807,22824,22824,22824,50340,31197,28844,22804,22804,22804,28863,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,21205,28900,28924,28940,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,28963,23546,23546,26527,23546,28992,23546,29010,36977,29029,29038,29054,29069,29081,29097,29109,26204,23546,23546,33645,49739,23546,28529,23546,23546,31365,23546,23546,23546,35995,23546,29125,31167,22824,29149,40337,48749,32108,23546,29172,23546,44844,29190,42384,23546,31347,50774,29209,23546,25948,29214,29230,29291,47563,47563,29309,29325,22824,22824,45608,49036,29349,22804,22804,39677,36943,30220,23546,23546,47099,23546,22095,50621,37205,27682,23546,23546,48975,28152,40051,47563,29366,37135,45217,46920,46953,36665,22824,49439,49901,29385,29404,34563,22804,29885,40883,26241,23546,23546,47600,23546,23546,29423,23546,29445,23546,48976,47563,47563,47563,44406,47564,22821,22824,22824,49328,42575,22767,35849,22804,22804,39288,28274,50448,23672,29464,23546,23546,23546,29498,42828,23546,23546,47562,47563,47563,46820,29369,22821,22824,22824,37856,22824,28821,22804,22804,30184,22804,29883,33199,23546,23546,29517,23546,47519,29538,47563,46768,47563,41728,22824,49353,22824,41433,22804,41641,22804,27843,29565,23546,23546,23546,29581,33988,49629,29610,50265,49148,29627,30732,37573,29644,31970,23546,23546,28626,22586,47563,47563,29661,22824,47375,22804,22804,29679,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,45087,23089,29701,47077,23141,24756,33030,33551,47559,33030,33552,39426,42307,27251,29717,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,21570,23546,23546,26527,23546,29745,24166,23546,32508,29764,29773,29789,29803,29812,29828,29839,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,34673,34671,23546,38486,38493,29855,28213,35842,29875,43066,27800,23546,40629,29901,44844,23546,29926,30774,23546,23546,41541,20026,29946,29989,29293,38320,30005,40270,30031,42116,30052,30082,30100,49972,39453,30135,41942,39677,36943,23546,23546,23546,42078,23546,30162,50621,23546,23546,23546,39564,48975,47563,47563,47563,48721,37135,22823,22824,22824,22824,42777,49439,22804,22804,22804,22804,30182,30146,30200,30236,23546,23546,23546,30252,30271,50620,23546,23546,45468,23469,31420,34156,47563,47563,45201,30292,30331,30348,22824,22824,30365,29156,29407,22804,22804,22804,30399,23672,23807,23546,23546,23546,23546,45523,28572,23546,33872,47563,47563,30419,29369,30438,22824,22824,48645,22824,31904,22804,22804,50360,22804,30539,33199,49920,23546,30462,23546,50724,48973,36270,47563,30480,41728,35391,22824,30505,41433,50493,22804,30530,30403,47447,49732,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23251,23546,22586,47563,47563,30555,22824,36108,22804,22804,30575,47447,46606,22585,47563,24761,22824,30673,22804,30597,46609,47561,23111,30673,39296,30622,30648,30668,30689,19013,30707,30727,30748,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23547,30771,23546,26527,25156,30790,23546,30813,24321,30837,30846,30862,30876,30888,30904,30915,26204,22703,30931,26561,35799,30978,26921,26341,27925,30994,31013,31032,31061,31045,31097,31131,31147,31183,31227,31261,31277,39237,39476,31293,33748,31328,22212,31363,31381,41158,23546,23546,40033,23546,22587,32449,31405,47817,28510,31441,31475,46890,31498,30304,31538,22625,36744,47681,39677,36943,23698,29973,31554,29930,31590,23708,31634,39997,31661,48812,31689,31711,31727,31763,31798,31814,29245,31850,40093,31890,34721,31940,35662,31956,31986,27076,32035,32066,32093,32133,26241,50755,23546,43683,23546,32169,19239,32192,32249,22951,24750,43255,32274,47563,32292,45560,22821,32317,22824,42593,48588,50230,35849,32356,22804,45665,32384,32405,32421,23807,25150,32478,32497,47176,23546,32524,45835,36145,40407,31425,32550,44054,32586,34739,22824,32631,32657,30066,33080,32683,47042,40501,29883,33199,23546,45717,33237,23546,23546,32701,31115,42955,32563,41728,45894,41614,32608,41433,33712,42499,35727,30403,47447,28590,32719,48060,32755,32790,42232,33671,32806,37745,39609,32837,40736,33730,32892,32931,32953,19435,22586,32974,48106,28046,33009,33027,33047,48381,35461,47447,40617,22585,47563,50257,22824,33074,36473,36549,33096,40786,36807,32667,39296,33119,43227,48451,49953,33140,24763,23318,45645,33156,33172,33217,47559,33030,30691,33266,33282,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,33306,23546,26527,33327,33345,25456,24849,33370,33400,23546,33386,33428,33437,33453,33464,26204,23546,23546,33480,35799,23546,23546,23546,23546,27288,23546,23546,34477,23546,34484,31605,33499,33519,43660,33545,33568,27800,23546,33621,23546,44844,33621,23546,23546,30997,23546,33640,34051,23546,22587,33661,47563,47563,47563,33687,22824,22824,22824,43762,33703,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,50621,23546,23546,23546,33746,48975,47563,47563,47563,43863,37135,22823,22824,22824,22824,34733,49439,22804,22804,22804,22804,33764,29885,40883,26241,23546,23546,23546,23546,23546,50620,23546,20258,23546,48976,47563,47563,46759,47563,47564,22821,22824,22824,37850,22824,22767,35849,22804,22804,33781,22804,29879,23672,23807,23546,23546,23546,23546,23546,43159,23546,47562,47563,47563,31773,29369,22821,22824,22824,49239,22824,28821,22804,22804,22804,33801,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,41728,22824,22824,22824,41433,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,33820,23546,23546,22586,44762,47563,23109,33840,22825,34299,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,23335,32233,42307,22729,33859,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,32176,23546,23546,41552,33893,33902,33918,33924,33940,33956,33967,26204,23546,23546,23546,35799,23546,23546,37894,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,28765,41920,23546,23546,44844,23546,23546,23546,39585,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,43177,23546,23546,45738,48975,47563,47563,47563,47563,37135,41960,22824,22824,22824,22824,47410,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,20340,23546,23178,20358,23546,23546,20360,33983,47563,47563,34004,47563,47564,22821,22824,36824,22824,22824,22767,35849,22804,33785,22804,22804,29879,34024,23546,23546,23546,34050,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,32147,47539,23546,48973,47563,47563,39206,45209,22824,22824,43898,27834,22804,22804,34943,30403,47447,34067,47158,34094,23546,34121,32984,34141,34177,43533,34196,34244,36447,34263,31970,28608,23546,34315,34336,34355,34372,28875,33605,34412,34436,34454,31964,47447,46606,43054,32993,34501,34521,30673,34552,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,43326,34588,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,41690,23546,26286,34628,23546,23546,23546,34692,23546,34693,23546,23546,34656,34689,40521,22887,37164,34396,43815,34709,34755,23546,23546,29501,44844,26383,30255,23546,23546,41921,23546,23546,23546,22587,47563,47563,32276,47563,27418,22824,22824,35655,43762,22804,22804,35850,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,34780,43953,48975,47563,47563,47563,47563,29859,22823,22824,22824,22824,22824,30446,22804,22804,22804,22804,22804,34799,33201,23546,34844,23546,23546,23546,23546,23546,23546,23546,42714,48976,34862,47563,47563,47563,47564,34882,22824,22824,22824,22824,22767,30383,22804,22804,22804,22804,29879,33195,23546,23546,23546,34898,23546,23546,23546,23546,47562,47563,47563,49594,27195,22821,22824,22824,22824,49007,30376,22804,22804,22804,28251,29883,33199,23546,23546,45156,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,28617,23546,48860,47563,47563,23109,22824,22825,22804,22804,48020,34919,46606,50168,47563,35289,22824,34937,22804,34959,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,26217,23546,26527,28994,29429,32937,21397,21407,19607,19616,34984,34999,35011,35027,35038,26204,23546,23546,23546,21159,35548,23546,23546,29013,35054,32876,23546,35263,35074,35112,39498,35166,47961,27448,49402,46199,35202,23546,23546,23546,38910,23546,47123,35227,23546,23546,23546,35244,44990,22587,44754,35279,47563,35324,35372,48187,22824,29333,35407,49176,35434,22804,35477,39677,36943,23546,35515,50019,41319,42187,35535,23546,19253,43384,35575,35592,35612,35186,47563,42920,37391,20600,22823,35386,22824,40181,35635,35678,29350,22804,33765,35713,35750,48433,33201,23546,23546,23546,23546,35766,20349,35815,44388,23546,23546,40380,47253,47563,47563,41209,36250,35833,43893,22824,22824,48653,43541,43789,35866,22804,22804,31917,36853,33195,23546,19730,35885,35914,32534,35930,35957,45488,36011,28363,36030,36050,36074,36103,39870,50408,42260,32597,45635,22804,36124,36169,36204,27085,31863,36220,46659,44955,21826,38142,32958,36266,47872,36286,36321,36366,36384,36409,36435,36471,36489,36514,36540,36572,23546,23546,18340,36595,30632,36619,36640,39370,36661,36681,36702,36740,36760,31970,23546,36781,18841,22586,47563,47563,23109,22824,22825,22804,22804,31964,34034,46606,22585,31741,36801,36823,36840,38424,36549,46609,36869,23111,30673,39296,36886,35338,36933,36966,48975,23107,30672,23141,24756,33030,33551,42313,47646,36993,39426,42307,22729,23448,37021,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,39988,23546,26527,23546,23546,23546,23546,21369,50028,21708,39996,40225,24990,37071,37082,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,31016,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,27420,22824,43762,22804,22804,48012,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,25524,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,37098,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,37115,23546,23546,23546,23546,23546,23546,23546,23546,48976,37134,47563,47563,47563,47564,37151,22824,22824,22824,22824,22767,28828,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,41164,23546,26527,23546,34764,23546,19155,37185,37221,37234,37250,37256,37272,37288,37299,26204,23546,37315,23546,35799,23546,43426,26746,23546,23546,37335,23546,32153,42194,37334,37351,37380,37407,37443,40833,37430,32821,37459,23546,23546,34612,23546,23546,40581,34220,23546,41122,29193,49795,34228,47262,37494,29549,41774,37514,42784,22904,45886,37530,38036,37570,36188,37589,23034,37618,28342,23546,23546,23546,23546,50126,23546,23546,23546,23546,23546,48975,28498,44484,47563,28434,44023,37641,37671,39810,30349,22824,39853,47704,29645,22804,49383,22804,37657,33201,23546,23546,50909,37693,23546,32019,38379,23546,23546,23546,48976,47563,47563,46474,32220,37710,22821,22824,22824,49321,37734,37761,35849,22804,22804,37788,37809,29879,33195,23546,37872,23546,23546,37889,23546,23546,23546,47562,27357,47563,47563,27195,22821,40293,22824,22824,22824,30376,34247,22804,22804,22804,29883,33199,37910,31075,23546,37928,47744,48973,37953,47563,47563,37979,38003,22824,22824,38027,38061,22804,22804,38085,47447,23404,23546,28599,23546,47560,31782,47563,23113,38011,22824,33078,33721,22804,31970,23546,21592,23546,22586,47563,50097,23109,22824,40810,22804,22804,38110,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,33290,45056,38132,38158,38179,33552,39426,27505,38215,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23648,23546,26527,23546,26305,23546,23546,29594,20530,20539,38250,38264,38273,38289,38300,26364,23546,23948,23546,35799,23546,34320,23546,23546,23546,23948,23546,35554,36579,23947,35559,38316,33588,36393,38336,43066,27800,23546,23546,38357,44844,23546,39344,42555,23546,39071,23546,23546,38375,41192,48530,47563,47812,38395,28750,22824,42121,31482,43762,38449,22804,38419,38440,32050,38473,38509,46688,34783,23546,23546,23546,23546,23546,38530,23546,23546,48975,47883,38550,42949,47563,37135,22823,38568,30084,22824,22824,49439,42031,34293,41837,22804,22804,29885,33201,23546,38929,23546,38602,23546,44369,37873,23791,38621,23546,48976,27031,38642,47563,38659,47564,38683,47916,22824,22824,38702,33843,35849,39277,22804,33804,38724,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,36556,23546,23546,23546,23546,47560,38744,47563,30559,22824,22824,46066,22804,22804,31970,23546,23546,49685,22586,47563,47563,23109,47427,22825,22804,35452,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,38761,47561,38782,38802,43621,23464,38824,38844,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,38045,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23810,23546,46101,23546,29522,38860,33103,38895,38945,38984,38970,38989,38954,39005,39016,26204,23546,24981,39032,39052,39135,26183,26715,27157,23546,39087,39123,35972,23871,39151,32436,39187,39222,39262,39312,39360,27800,27271,23546,23546,40856,29748,35256,26269,47340,39386,28121,33483,41086,39406,48539,39200,45029,47563,29260,30036,22824,47369,43762,41883,39448,22787,22804,32852,39469,27673,33624,23546,39492,23546,23546,30166,23546,19760,23546,25974,48975,39514,47563,47563,47563,37135,37987,39541,30332,22824,22824,49439,34278,22804,48403,22804,22804,29885,33201,23546,23546,23546,23546,49277,23546,23546,39561,44662,39580,2e4,47563,47563,38745,47563,41583,39601,22824,22824,42751,22824,39625,36344,22804,22804,49650,22804,39663,33195,39390,39701,21803,40964,23546,28563,39737,39764,42864,39780,30015,27711,27195,22821,39796,39832,37838,39869,30376,37543,39886,39910,39936,47724,39958,49087,33227,48840,39980,40013,20680,50204,40049,40067,40083,45419,22824,40109,40125,36765,22804,40151,40167,47447,40217,23546,23546,19121,40241,48114,40263,48445,44596,40286,40309,42808,40330,30581,40353,23546,23546,40374,28485,40396,27517,40433,40468,40722,40488,31964,30114,48477,40517,36058,24761,45115,30673,40537,36549,40555,19020,29663,30673,40603,40652,40668,40708,40752,40779,40802,40826,40849,24756,33030,33551,47559,33030,33552,40872,40899,22729,23448,40923,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,40939,26527,23546,35150,40960,23546,26932,40980,40989,41005,41019,41028,41044,41055,26204,41071,27176,35142,41110,22748,41145,23546,41180,29961,41225,35127,41274,41299,41335,41350,41366,41401,41487,41458,41474,41503,23546,18442,27630,46235,23546,41314,19147,41528,40358,23546,23546,45375,22587,47563,36909,41568,47891,27418,38686,27953,41607,41630,22804,23213,41665,46983,39677,36943,23546,45937,23546,37118,23546,39337,41681,33824,35058,38605,23546,41717,41752,28167,41769,47563,43475,41790,42050,41800,22824,22824,41816,41853,50302,41874,22804,49204,29885,47656,41907,23546,38879,36785,23546,23546,23546,23546,23546,39036,48976,47563,46791,34008,47563,47564,22821,22824,44589,46895,22824,22767,35849,22804,41937,38457,22804,29879,33195,23546,23546,49550,23546,45766,23546,23546,23546,47562,47563,47563,47563,32301,41958,22824,22824,22824,46046,28243,22804,22804,22804,22804,41977,33199,20951,42005,23546,23546,23546,44350,47563,31827,47563,41591,22824,49433,22824,28884,22804,42026,22804,30403,31211,23546,23546,23546,23546,27328,40247,47563,27241,38708,22824,42285,31924,22804,29685,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,22739,46606,49667,46712,38403,42047,44103,22804,44463,42066,42221,42103,42137,42175,42210,42248,42276,42301,48975,23107,30672,23141,24756,33030,33551,47559,33030,35697,39426,36136,22729,23448,42329,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,26377,26527,23546,23546,42378,33354,42400,20758,23546,26429,42436,42448,42464,42475,26204,23546,23546,25120,35799,23546,23546,23546,31573,31305,23546,23546,31567,25118,23546,48973,37963,23115,42491,47011,42515,27800,23546,42549,23546,44844,23546,38766,18352,23546,39064,23546,23546,22159,22587,48548,38163,45793,48521,47316,42571,42591,47404,42609,44147,39942,22845,35499,47057,42343,42636,23546,42657,23546,42010,42641,26759,23546,23546,23546,23546,48975,47563,47563,36917,47563,37135,22823,22824,22824,42693,22824,49439,22804,22804,28847,22804,22804,29885,45066,44270,23546,42713,23546,23546,26553,42677,42730,31574,23546,48976,47563,48931,47563,47563,47564,42748,22824,42767,22824,22824,34180,35849,22804,42800,22804,22804,29879,33195,23546,44983,23546,23546,23546,23546,42824,23546,47562,47563,36034,47563,27749,22821,22824,22824,42844,22824,48373,22804,22804,38192,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,18259,23546,23546,42862,47563,47563,23113,22824,22824,33078,22804,22804,39325,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,48281,42880,42913,28181,33529,39296,42936,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,38514,23546,23546,23546,44073,44076,50916,44069,36233,42971,33598,40201,40539,43066,29275,42987,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,43004,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,43023,22824,22824,22824,22824,43497,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,30422,47563,23109,38579,22825,32685,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,22195,38234,23546,23546,22088,23546,31645,43040,31695,43090,43103,43112,43128,43139,26204,23546,31341,32732,35799,43366,43155,43175,36087,40692,50768,31673,43193,32904,31522,31081,43243,43271,43287,43315,43342,40683,23546,23546,23546,45381,43358,40568,43382,43400,43418,23546,23546,30119,43208,47563,43442,27364,43462,43491,28908,22824,43513,43557,22804,43588,41858,43607,43637,43676,23546,23546,23546,18266,35576,23546,23546,43699,43717,43736,20331,32703,47563,41378,47563,46720,41989,43754,29628,22824,22824,43651,43778,43812,46171,22804,44212,43831,43879,33201,23546,23546,45346,23546,43914,43941,23546,27809,23863,43976,44003,47563,48620,44039,35181,49990,44092,22824,45449,39545,44119,42697,44138,22804,44163,27998,44211,35734,33195,39171,23546,23546,23067,44228,32012,23546,44255,36870,46433,23003,47563,27195,22821,44297,46134,22824,22824,30376,39647,22804,44322,22804,41442,44340,23546,44366,44385,23546,23546,34339,44404,47563,47563,44422,22824,22824,22824,44438,22804,22804,22804,44454,47447,48298,23546,23546,23546,44479,47563,47563,46130,22824,22824,44500,22804,22804,44520,23546,40027,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,38094,49704,44555,44579,44612,44650,23464,24759,33031,33550,44685,30652,34420,36724,24756,33030,33551,47559,33030,45310,44716,44744,32641,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,25786,26527,44778,28976,18999,44795,44824,44860,44808,44885,44899,44911,44927,44938,26204,44954,40587,23546,44971,23546,23546,43960,23546,50132,23546,45006,35089,26325,35096,32207,45025,45045,44306,45082,45103,27800,35987,37200,44669,44844,34640,23546,23546,23546,23546,45137,45172,23546,19324,45188,43446,47563,47563,45233,45249,45268,22824,43762,45291,40314,22804,22804,39677,36943,37912,23546,23546,45326,45362,23546,23546,23546,23546,23546,37055,48975,48512,31834,47563,47563,46028,22823,45397,45415,22824,22824,36333,38728,44324,22804,22804,22804,45435,33201,23546,23546,26251,43720,23546,45465,26758,45484,45504,23546,45539,47563,47563,47285,43856,45576,45600,22824,22824,47994,48169,45624,45661,22804,22804,42152,45681,29879,45697,45713,45733,23546,25942,23546,23546,30214,45754,47562,47563,27730,45789,27195,22821,22824,47619,47969,22824,30376,22804,22804,45809,22804,29883,33199,23546,21039,23546,49467,37049,48973,47563,45851,48716,45584,47934,22824,45868,48003,35869,22804,45910,30403,47447,23546,48332,18869,22345,47560,47563,47563,23113,22824,22824,33078,22804,22804,32e3,21288,23546,45931,45953,47563,37498,23109,22824,40444,22804,34438,36455,45997,44634,19558,46021,50382,46044,28056,22804,34468,46609,35619,30711,46062,46082,23464,24759,33031,33550,19538,36296,49945,23141,46117,38586,45823,48503,46150,46187,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23737,26527,23546,23546,34968,23546,46215,26881,26893,46251,46267,46279,46295,46306,26204,46322,23241,25565,35799,25341,42889,46340,22204,44869,46352,46368,46377,46393,46349,46420,46455,46490,46547,46518,46534,32867,46005,19766,34600,44844,46563,23546,26188,46580,41258,46596,46625,46675,46736,46784,46807,46842,38552,46877,45877,46911,46944,36419,46977,46999,47027,27557,39677,37035,47093,47115,35228,23546,47139,47174,23546,47766,23546,49770,47192,20591,47219,47244,47278,38643,47301,41736,47356,47391,47426,31459,49439,36524,39920,40135,22804,35492,33058,47443,23546,20251,43007,37694,47465,46324,47491,47518,23546,47535,47555,39525,47841,47563,34125,47580,47616,47635,39844,22824,37169,48362,35849,47672,47697,22804,41891,47720,33195,23058,47740,23546,45516,47760,23546,47782,18627,47798,50186,47833,47857,27195,47907,47932,47950,47985,48036,39636,46165,37602,50472,50517,37554,27477,48056,18311,23546,35780,48076,48095,44700,47563,47563,48130,48155,37677,22824,48203,48236,49183,22804,48272,47447,18372,48297,48314,48330,41202,45981,33877,34811,48348,48040,48397,48419,37793,31970,48467,23546,23546,48493,46466,31618,34505,49612,47069,35443,43299,48564,28304,47475,19993,48611,37364,48636,48669,43591,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,44177,29729,48685,36498,48701,45275,48737,39426,42307,22729,39685,48765,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,48828,23546,23546,48856,23546,35941,30944,30953,48876,30953,30962,48892,48903,26204,23546,23546,23546,40636,23546,26348,23546,23546,23546,23546,26345,23546,38923,23546,48973,48919,48178,48947,38808,37005,31513,38873,23546,23546,44844,23546,23546,27897,48963,23546,23546,23546,23546,48971,46750,47563,47563,34356,48992,22824,22824,22824,36305,49028,22804,22804,22804,49052,44728,49080,23546,49103,45341,23546,23546,42732,48802,47595,38359,35596,48975,47563,49130,41385,43221,47228,22823,48595,46928,41415,49146,49164,22804,49199,49220,45915,29388,37824,33201,23546,25346,23546,26261,23546,23546,23546,49474,23546,23546,48976,33503,47563,47563,47563,47564,49236,37414,22824,22824,22824,22767,49255,36180,22804,22804,22804,29879,33195,49272,23546,49293,23546,23546,23546,23546,28581,36243,47563,47563,47563,27195,49311,22824,22824,22824,22824,37772,22804,22804,22804,22804,29883,46502,23546,23546,50321,46564,23546,30276,23289,47563,47563,37718,49344,22824,22824,30514,49377,22804,22804,42620,47447,39101,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,46439,24761,43524,30673,49399,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,49418,45121,44624,47559,33030,33552,39426,32368,49455,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,49490,49547,33412,49525,23546,34105,23546,33409,49544,42420,41283,49566,49577,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,49593,35299,27962,22805,43066,27800,23546,33329,27613,44844,23546,23546,23546,23546,23546,32481,23546,23546,22587,32570,47563,46861,47563,27418,49610,22824,32331,43762,42159,22804,27215,22804,39677,36943,23546,23546,23546,23546,23546,37318,23546,23546,23546,20322,23546,48975,47563,47563,49628,47563,37135,22823,22824,32615,22824,22824,49439,22804,22804,49645,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,49666,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,49683,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,49701,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,49720,23546,50953,23546,25809,49755,49786,23546,49811,49825,49837,49853,49864,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,27387,22824,49893,38199,49880,34211,23546,23546,23546,44844,23546,23546,23546,23546,42672,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,49917,23546,23546,23546,22167,47563,47563,47563,47563,47564,49936,22824,22824,22824,22824,22767,49969,22804,22804,22804,22804,29879,33195,23546,23546,45149,23546,23546,23546,23546,23546,47562,47563,49988,47563,50006,22821,22824,48578,22824,41424,30376,22804,39894,22804,32389,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,26445,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,41512,50052,50063,26204,23546,23546,23546,35799,50079,30464,23546,23546,23546,23546,32774,23546,41129,32770,46701,50096,40191,28190,22805,43066,27800,23546,23546,23546,50113,28719,34485,45773,23546,23546,23546,23546,23546,22587,47563,29611,47563,27026,27418,22824,35645,28383,43762,22804,22921,22804,48250,39677,50148,50164,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,41250,23546,23546,23546,48976,47563,47563,50184,47563,45852,22821,22824,38786,22824,22824,45252,35849,22804,48256,22804,22804,29879,33195,48079,23546,23546,23546,23546,23546,23546,23546,47562,50202,47563,47563,27195,22821,50220,22824,22824,22824,30376,48220,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,23546,23546,23546,23546,19262,39432,32077,26204,21798,23546,23546,35799,23546,23546,46652,23546,23546,23546,23546,46656,23546,23546,50246,28439,22824,50294,36350,50281,47331,23546,29448,23546,44844,23546,23546,23546,23546,23546,23546,23546,35817,22587,47563,47563,47563,27723,27418,22824,22824,27861,43762,22804,22804,22804,48212,39677,36943,23546,50318,23546,23546,23546,23546,23546,23546,37099,23546,23546,48975,38667,47563,36014,47563,37135,22823,50337,22824,46961,22824,49439,28018,22804,22804,50356,22804,29885,33201,23546,43738,23546,23546,23546,23546,23546,38534,23546,23546,48976,47563,50376,47563,47563,47564,50398,41961,50424,22824,22824,22767,50443,28403,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,21488,23546,47562,47563,31747,47563,34161,22821,22824,43024,22824,22824,50464,22804,22804,50488,22804,43844,33199,23546,23546,18921,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,31241,23546,23546,39165,23546,29133,47563,47563,33578,22824,22824,50509,22804,22804,31970,23546,49295,23546,22586,47563,31161,23109,50427,22825,22804,41830,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22677,23546,23546,23546,23546,26527,23546,23546,23546,23546,21369,21483,23546,23546,23546,19262,39432,32077,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27800,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,27418,22824,22824,22824,43762,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,46404,21767,21765,32117,22038,50563,21058,21061,50533,22036,50551,50579,50591,20967,23546,23546,23546,35799,23546,23546,50607,23546,23546,23546,23546,23546,23546,23546,25629,19208,50637,19916,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,50655,18544,18567,18590,19934,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,22150,23546,21369,20766,50679,50692,50708,50717,49509,50740,20967,23546,23546,23546,35799,23546,23546,51042,23546,23546,23546,23761,23546,23546,23758,25629,19208,50639,19926,50639,50790,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,18521,18544,18567,18590,50663,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,42087,23546,23546,23546,23546,22568,29910,50839,50872,50878,50849,23148,50894,20967,23546,23546,23546,35799,23546,23546,50932,23546,23546,22686,23546,23546,23546,22682,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,18327,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,50969,18544,18567,18590,21689,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,20159,20175,20206,20222,51139,20274,51143,20301,20376,20392,51127,20418,50802,20462,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,21089,23546,23546,23546,23546,25841,23546,23546,23546,23546,21369,23546,23546,23546,23546,23546,23546,23489,26204,23546,23546,23546,35799,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48973,47563,22824,35842,22805,43066,27132,23546,23546,23546,44844,23546,23546,23546,23546,23546,23546,23546,23546,22587,47563,47563,47563,47563,22603,22824,22824,22824,34828,22804,22804,22804,22804,39677,36943,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48975,47563,47563,47563,47563,37135,22823,22824,22824,22824,22824,49439,22804,22804,22804,22804,22804,29885,33201,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,48976,47563,47563,47563,47563,47564,22821,22824,22824,22824,22824,22767,35849,22804,22804,22804,22804,29879,33195,23546,23546,23546,23546,23546,23546,23546,23546,47562,47563,47563,47563,27195,22821,22824,22824,22824,22824,30376,22804,22804,22804,22804,29883,33199,23546,23546,23546,23546,23546,48973,47563,47563,47563,45209,22824,22824,22824,27834,22804,22804,22804,30403,47447,23546,23546,23546,23546,47560,47563,47563,23113,22824,22824,33078,22804,22804,31970,23546,23546,23546,22586,47563,47563,23109,22824,22825,22804,22804,31964,47447,46606,22585,47563,24761,22824,30673,22804,36549,46609,47561,23111,30673,39296,23464,24759,33031,33550,48975,23107,30672,23141,24756,33030,33551,47559,33030,33552,39426,42307,22729,23448,23351,23363,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,22457,23546,23546,22482,50993,50998,50998,51019,22480,51014,51035,23546,23546,23546,23546,23546,23546,51042,23546,23546,23546,23546,23546,23546,23546,25629,19208,50639,19926,50639,20660,19723,18282,18849,18305,51062,23546,23546,18368,23546,18915,18388,18432,18458,18463,18479,18968,18495,19670,50655,18544,18567,18590,19934,18528,18551,18574,18597,20868,18620,23546,30606,23546,23546,23546,23582,23367,18643,23546,18664,50036,18695,19209,26024,18505,19208,25377,18724,26048,18745,18766,18771,19889,50639,26053,18750,50639,18776,19839,20674,23546,18792,18808,18830,23628,18814,18865,23546,44195,18885,18937,18958,20812,26011,20051,18984,19036,19054,19072,19090,26127,19108,19038,19056,19074,19092,26129,18604,20668,23396,19137,19171,19225,39246,19278,47150,19314,19340,26667,19186,19380,19422,19456,25721,19477,25754,19498,19451,25716,19472,25749,19493,19514,19530,18900,19554,23717,19574,19592,19632,19657,20190,20797,20402,21452,19692,19708,19964,21452,19692,19708,20432,19853,26492,19746,41094,19782,18942,19201,19798,19825,19883,19905,19950,19883,19905,19980,23977,20842,20016,18679,20827,20042,20067,20090,20113,20074,20097,20129,20446,51082,20175,20206,20222,51139,20274,51143,20301,51098,20392,51127,20418,50802,51114,25380,50639,18729,32258,26037,20489,20515,19641,20555,20577,20616,20632,20648,20696,20727,20743,20782,20858,20884,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,23546,94503,94503,90406,90406,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,1,12290,3,0,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,362,94503,90406,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,94503,0,94503,90406,94503,94503,94503,94503,94503,94503,94503,69632,73728,94503,94503,94503,94503,94503,65536,94503,0,2183168,0,0,0,90406,94503,296,297,0,2134016,300,301,0,0,0,0,0,0,2985,0,0,0,0,0,0,0,0,0,1631,0,0,0,0,0,1637,0,0,2424832,2433024,0,0,2457600,0,0,0,0,0,0,0,0,0,0,2454,0,0,0,0,0,0,0,0,0,2904064,2908160,0,0,0,0,0,0,0,0,0,0,0,2751,0,0,0,0,0,0,0,3117056,0,0,0,0,0,0,0,362,362,0,0,0,0,0,0,2997,0,0,0,0,3001,0,0,0,0,0,0,1186,0,0,0,1191,0,0,0,0,1107,0,0,0,2138112,0,0,0,0,0,0,0,0,0,0,0,0,0,2978,0,0,0,2424832,0,0,0,0,0,0,0,0,0,0,0,0,2625536,0,0,0,0,0,172032,0,172032,0,0,0,0,0,0,0,0,0,111050,111050,111050,111050,111050,111050,111050,111050,1,12290,3,0,2699264,2715648,0,0,2772992,2805760,2830336,0,2863104,2920448,0,0,0,0,0,0,0,1114,0,0,0,0,1118,0,0,1121,0,2805760,2920448,0,0,0,0,0,2920448,0,0,0,0,0,0,0,2732032,0,2179072,2179072,2179072,2424832,2433024,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2625536,2805760,2179072,2830336,2179072,2179072,2863104,2179072,2179072,2179072,2920448,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2801664,2813952,2179072,2838528,2179072,2179072,2179072,2179072,2179072,0,914,2125824,2125824,2125824,2125824,2424832,2433024,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2625536,2125824,2125824,2125824,2125824,2125824,2125824,2625536,2125824,2125824,2125824,2125824,2125824,2125824,2699264,2125824,2715648,2125824,2723840,2125824,2732032,2772992,2125824,2125824,2125824,2723840,2125824,2732032,2772992,2125824,2125824,2125824,2805760,2125824,2830336,2125824,2125824,2863104,2125824,2125824,2125824,2125824,2920448,2125824,2125824,2125824,2125824,2125824,2125824,2920448,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3117056,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3207168,2125824,2125824,2179072,2125824,2125824,2125824,2125824,2457600,2125824,2125824,2125824,2125824,2183168,0,0,0,0,0,0,0,0,0,0,2518,0,0,0,0,0,0,0,0,0,2375680,0,0,0,0,0,0,0,0,0,0,0,0,167936,0,0,0,0,0,0,2408448,0,0,2584576,0,0,0,0,2838528,0,0,2838528,0,0,0,0,0,2469888,2506752,2756608,0,0,2580480,0,0,0,2396160,2400256,2412544,0,0,2838528,0,0,0,0,0,2179072,2179072,2179072,2408448,2179072,2179072,2179072,2179072,2179072,2179072,3223552,914,0,2125824,2125824,2125824,2125824,2125824,2445312,2125824,0,2125824,2125824,2125824,2408448,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,2502656,0,0,3010560,2125824,2125824,2125824,2125824,2125824,2662400,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2801664,2813952,2125824,2838528,2125824,2801664,2813952,2125824,2838528,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3125248,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2461696,0,0,0,0,0,0,0,0,0,0,0,0,2600960,0,2674688,0,2768896,2777088,2781184,0,2822144,0,0,2883584,0,0,0,0,0,0,0,0,0,0,0,0,3055616,0,0,0,3080192,3100672,3104768,0,0,0,0,3186688,0,0,0,0,0,0,0,3182,0,0,0,0,0,0,0,0,0,2732032,0,0,0,0,0,0,0,0,0,3133440,0,0,0,0,0,0,0,0,0,0,0,0,0,3003,3004,0,2719744,0,0,0,0,0,0,0,0,0,0,3014656,3207168,0,2691072,0,0,0,0,0,2818048,2846720,0,2916352,0,0,3002368,0,0,3022848,0,0,0,0,0,2871296,0,0,0,0,0,0,0,0,0,0,0,2766,0,0,0,0,0,3215360,0,0,0,0,0,0,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2494464,2179072,2179072,2514944,2179072,2179072,2461696,2465792,2179072,2179072,2179072,2179072,2179072,2179072,2523136,2179072,2179072,2179072,2179072,2179072,2179072,2699264,2179072,2715648,2179072,2723840,2179072,2732032,2772992,2179072,2179072,3100672,2179072,2179072,3133440,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,3207168,2179072,0,0,0,0,391,392,0,393,0,0,0,0,0,393,0,0,0,0,0,3504,0,0,0,540,540,540,540,540,540,540,540,540,540,540,3399,540,540,0,0,0,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2461696,2465792,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2523136,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2600960,2125824,2125824,2125824,2125824,2125824,2125824,2641920,2125824,2125824,2125824,2125824,2125824,2125824,2719744,2125824,2125824,2125824,2125824,2125824,2768896,2777088,2768896,2777088,2125824,2797568,2822144,2125824,2125824,2125824,2883584,2125824,2912256,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3133440,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3207168,2125824,0,0,0,0,0,0,3011,0,0,0,0,0,0,3018,0,0,0,0,2605056,0,0,0,0,2887680,0,2924544,0,0,0,0,0,0,0,1135,0,0,0,0,0,0,0,0,400,0,0,0,0,0,0,0,0,0,0,3162112,3170304,0,0,3219456,3035136,0,0,0,0,0,3072e3,2650112,2179072,2179072,2179072,2707456,2179072,2736128,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2887680,2179072,2179072,2543616,2547712,2179072,2179072,2596864,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2584576,0,0,2809856,0,0,0,0,0,0,0,0,0,0,3088384,0,0,0,0,0,1670,0,0,0,0,0,0,0,2112,0,0,0,0,0,1680,1681,0,1683,0,0,0,0,0,0,0,540,561,540,561,540,540,561,540,585,0,0,2576384,0,0,0,0,0,0,0,0,0,0,0,2420736,0,0,0,0,429,0,0,0,0,0,0,0,0,0,0,0,300,0,0,0,0,0,0,3121152,3141632,0,0,0,2924544,0,2682880,0,0,0,0,0,0,0,1242,1272,1273,0,1242,0,540,540,540,3112960,2387968,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2453504,2179072,2473984,2482176,2179072,2179072,2179072,2179072,2179072,3010560,2179072,2179072,2126737,2126737,2503569,2126737,2126737,2126737,2126737,2126737,2126737,2532241,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2605969,2126737,2924544,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,3035136,2179072,2179072,3072e3,2179072,2179072,2179072,3137536,2126737,2126737,2499473,2126737,2126737,2126737,2556817,2565009,2126737,2126737,2126737,2126737,2126737,2126737,3224465,0,0,2126810,2126810,2126810,2126810,2126810,2446298,2126810,3121152,2179072,2179072,3141632,2179072,2179072,2179072,3170304,2179072,2179072,3190784,3194880,2179072,0,0,0,0,0,0,3181,0,0,0,3184,3185,3186,0,0,3189,3194880,2125824,0,0,0,0,0,0,2387968,2125824,2125824,2420736,2125824,2125824,2125824,2125824,2125824,2453504,2125824,2473984,2482176,2125824,2125824,2125824,2605056,2125824,2629632,2125824,2125824,2650112,2125824,2125824,2125824,2707456,2125824,2736128,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3035136,2125824,2125824,3072e3,2125824,2125824,3121152,2125824,2125824,3141632,2125824,2125824,2125824,3170304,2125824,2125824,3190784,2125824,3170304,2125824,2125824,3190784,3194880,2125824,2125824,2179072,2125824,2125824,2125824,2179072,2179072,3112960,3219456,2125824,2125824,3112960,3219456,2125824,2125824,3112960,3219456,0,0,0,0,0,0,0,0,0,3507,540,540,540,540,540,540,0,3145728,0,3203072,0,0,0,0,0,0,0,0,0,0,0,0,0,3314,0,540,0,3067904,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,172032,0,0,0,0,2895872,0,0,0,2445312,0,2842624,0,0,0,2637824,0,0,0,0,432,0,0,0,329,467,467,467,467,467,467,467,467,467,467,467,467,467,467,467,467,0,0,0,2621440,0,3182592,2899968,0,2961408,0,0,2179072,2179072,2179072,2179072,2179072,2592768,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2125824,2445312,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2551808,2179072,2179072,2179072,2179072,2179072,3117056,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2126737,2126737,2126737,2126737,2637824,2125824,2125824,2125824,2125824,2727936,2752512,2125824,2125824,2125824,2125824,2842624,2846720,2125824,2895872,2916352,2125824,2125824,2945024,2125824,2125824,2994176,2125824,3002368,2125824,2125824,3022848,2125824,3067904,3084288,3096576,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,0,2442,2443,0,0,2446,0,0,0,0,0,2928640,0,0,0,3059712,0,2543616,2666496,0,2633728,0,0,0,0,0,1697,0,0,0,0,0,0,0,0,0,0,1116,0,0,0,0,0,2494464,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3211264,2179072,2928640,2179072,2179072,2179072,2998272,2179072,2179072,2179072,2179072,3059712,2179072,2179072,2179072,2179072,2179072,2179072,3223552,0,0,2126737,2126737,2126737,2126737,2126737,2446225,2126737,2179072,3178496,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2494464,2125824,2125824,2514944,2125824,2125824,2125824,2125824,2125824,2125824,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2125824,2125824,0,0,0,0,0,0,2510848,2514944,0,0,2547712,2596864,0,0,0,0,0,1670,0,0,0,0,0,0,0,0,2113,0,2125824,2543616,2547712,2125824,2125824,2596864,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,2125824,2125824,2125824,2408448,2125824,2928640,2125824,2125824,2125824,2998272,2125824,2125824,2125824,2125824,3059712,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,2125824,2126811,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,0,2125824,2125824,2125824,2125824,2424832,2125824,3178496,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2494464,2125824,2125824,2514944,2125824,2125824,2125824,2125824,2125824,2125824,3223552,0,0,2125824,2125824,2125824,2125824,2125824,2445312,2125824,2125824,3178496,2125824,2179072,2125824,2125824,2179072,2179072,2125824,2125824,2125824,2125824,2441216,0,0,0,0,0,0,3311,0,0,0,0,0,0,0,0,540,540,540,2165,540,540,540,540,0,0,0,2740224,0,0,0,0,0,2793472,0,0,0,0,0,0,0,1244,0,0,0,0,1247,0,1194,0,2646016,2179072,2179072,2695168,2756608,2179072,2179072,2179072,2932736,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,3039232,2179072,3063808,2179072,2179072,2179072,2179072,3129344,2179072,2179072,3153920,3166208,3174400,2396160,2400256,2125824,2125824,2441216,2125824,2469888,2125824,2125824,2125824,2519040,2125824,2125824,2125824,2125824,2588672,2125824,2519040,2125824,2125824,2125824,2125824,2588672,2125824,2613248,2646016,2125824,2125824,2695168,2756608,2125824,2125824,2125824,2125824,2932736,2125824,2125824,2125824,2125824,2125824,2125824,2932736,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3129344,2125824,2125824,3153920,3166208,3174400,2396160,2125824,2125824,3129344,2125824,2125824,3153920,3166208,3174400,2125824,2506752,2506752,2506752,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,3223552,987,0,2125824,2125824,2125824,2125824,2125824,2445312,2125824,0,3043328,0,3149824,2936832,0,2760704,3176,0,0,0,0,2953216,0,0,2826240,3158016,2437120,0,2785280,0,0,0,2428928,0,3018752,2764800,2572288,0,0,3051520,2179072,2179072,2637824,2179072,2179072,2179072,2179072,2727936,2752512,2179072,2179072,2179072,2842624,2846720,2179072,2916352,2428928,2437120,2179072,2486272,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2654208,2678784,2760704,2764800,2854912,2969600,2179072,3006464,2179072,3018752,2179072,2179072,2179072,3149824,2125824,2428928,2437120,2125824,2486272,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,297,0,0,0,0,0,2043,2044,0,0,0,0,0,0,0,0,0,2140,0,0,0,0,0,0,2125824,3018752,2125824,2125824,2125824,3149824,2125824,2428928,2437120,2125824,2486272,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,24576,987,2125824,2125824,2125824,2125824,2424832,2125824,3149824,2125824,2179072,3051520,2125824,3051520,2125824,3051520,0,2490368,2498560,0,0,0,0,0,0,304,0,204800,0,0,0,0,0,0,0,0,1713,0,0,0,0,0,0,0,0,1727,0,0,0,0,0,0,0,0,2068,0,0,0,0,0,0,0,0,2095,0,0,0,0,0,0,0,0,2107,0,0,0,0,0,0,0,0,0,2875392,0,0,0,3176,0,0,2834432,0,3227648,2568192,0,0,0,0,2564096,0,2940928,2179072,2179072,2498560,2179072,2179072,2179072,2555904,2564096,2179072,2179072,2179072,2179072,2179072,2179072,3223552,0,0,2125824,2125824,2125824,2125824,2125824,2445312,2125824,2125824,2125824,2125824,2125824,2125824,3137536,2125824,2125824,2498560,2125824,2125824,2125824,2555904,2564096,2125824,2125824,2125824,2125824,2125824,2125824,3223552,2125824,2179072,2416640,2125824,2125824,2179072,2179072,2125824,2125824,0,2486272,0,0,0,0,0,2678784,2854912,3006464,0,3108864,3198976,0,0,2748416,2879488,0,3176,0,0,0,0,0,0,0,0,2179072,2179072,2179072,2179072,2179072,2592768,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2126737,2125824,2125824,2125824,2125824,3010560,2125824,2125824,2125824,2125824,2502656,2125824,2125824,2125824,2125824,2125824,2125824,296,0,0,0,296,0,297,0,0,0,2125824,2125824,2125824,3010560,2125824,2125824,2125824,0,0,0,0,0,0,0,2592768,0,0,0,0,433,0,0,0,453,469,469,469,469,469,469,469,469,469,479,469,469,469,469,469,469,2125824,2125824,2125824,2125824,2592768,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,1918,2125824,2125824,2125824,2408448,2125824,2592768,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2449408,0,2535424,3031040,0,0,0,0,0,1734,0,1736,1710,540,540,540,540,540,540,540,540,1816,1818,540,540,540,540,540,1360,0,2859008,0,0,2179072,2449408,2179072,2535424,2179072,2609152,2179072,2859008,2179072,2179072,2179072,3031040,2125824,2449408,2125824,2535424,2125824,2609152,2125824,2859008,2125824,2125824,2125824,3031040,2125824,2449408,2125824,2535424,2125824,2609152,2125824,2859008,2125824,2125824,2125824,3031040,2125824,2527232,0,0,0,0,0,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,0,0,2804,540,540,540,540,2527232,2179072,2179072,2179072,2179072,2179072,2125824,2527232,2125824,2125824,2125824,2125824,2125824,2125824,2527232,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,0,0,1080,1084,0,0,1088,2125824,2125824,2125824,2125824,3092480,0,0,0,0,3026944,2404352,2179072,2179072,2179072,2179072,3026944,2404352,2125824,2125824,2125824,2125824,3026944,2404352,2125824,2125824,2125824,2125824,3026944,2539520,0,2949120,0,0,0,0,434,0,0,446,0,0,0,0,0,0,0,0,457,1147354,1147354,1147354,1147354,1147354,1147354,1147354,2179072,2658304,2973696,2179072,2125824,2658304,2973696,2125824,2125824,2658304,2973696,2125824,2711552,0,256e4,2179072,2179072,2945024,2179072,2179072,2994176,2179072,3002368,2179072,2179072,3022848,2179072,3067904,3084288,3096576,2179072,2179072,2600960,2179072,2179072,2179072,2179072,2641920,2179072,2179072,2179072,2179072,2179072,2179072,2719744,2179072,2179072,2441216,2179072,2469888,2179072,2179072,2179072,2519040,2179072,2179072,2179072,2179072,2588672,2179072,2613248,2703360,0,0,0,0,2977792,0,0,3047424,3129344,0,2981888,2396160,0,3153920,256e4,2125824,256e4,2125824,0,2179072,2125824,2125824,0,2179072,2125824,2125824,0,2179072,2125824,2125824,2125824,2457600,2179072,2179072,2179072,2179072,2457600,2125824,2125824,2125824,2985984,2985984,2985984,2985984,0,0,0,0,0,0,0,0,0,0,0,0,0,249856,0,0,0,0,0,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,111050,458,458,111050,458,458,458,458,458,458,458,458,458,458,111050,111050,111050,111050,111050,111050,111050,111050,111050,458,111050,111050,111050,111050,111050,0,0,0,0,0,0,0,0,0,0,2738,0,0,0,0,0,0,2183168,0,0,0,0,0,296,297,0,2134016,300,301,0,0,0,0,0,0,184723,184931,184931,184931,0,184931,184931,184931,184931,184931,0,0,0,0,0,184931,0,184931,1,12290,3,78112,1059,0,0,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,296,0,297,0,2125824,1059,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,0,2750,0,0,0,0,2755,0,300,118784,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1134592,0,0,0,0,300,300,300,300,0,0,0,0,0,300,0,300,1,12290,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,266240,0,0,0,0,2183168,0,0,0,0,0,33403,297,0,2134016,49791,301,0,0,0,0,0,0,225889,225889,225889,225889,225740,225889,225889,225889,225889,225889,225740,225740,225740,225740,225740,225906,225740,225906,1,12290,3,0,0,0,0,249856,0,0,0,249856,0,0,0,0,0,0,697,698,0,362,362,362,0,0,0,0,0,0,711,0,0,0,0,0,0,0,0,0,362,296,0,0,0,0,0,0,0,0,2134016,0,0,0,0,0,0,57344,0,0,0,0,0,0,0,3506,0,540,540,540,540,540,540,540,2530,540,540,540,540,540,540,540,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,0,296,0,0,0,300,0,0,0,300,119195,73728,0,0,0,0,0,65536,0,0,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,122880,0,0,0,0,122880,122880,122880,122880,122880,122880,122880,122880,0,0,122880,0,0,0,0,0,0,0,0,0,0,0,3166,3167,0,0,0,0,0,122880,0,122880,122880,122880,0,0,0,0,0,122880,0,122880,0,0,0,0,0,0,0,0,122880,0,0,0,0,0,0,0,0,0,0,0,0,221184,0,0,0,0,0,0,0,0,0,122880,122880,122880,122880,122880,0,122880,0,2105629,12290,3,0,0,291,0,0,0,0,291,0,0,0,0,0,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,2134016,0,0,0,0,0,0,0,746,0,0,0,0,0,0,328,0,0,0,0,0,0,0,328,0,0,69632,73728,0,416,416,0,0,65536,416,1092,0,2424832,2433024,0,0,2457600,0,0,0,0,0,0,0,0,0,0,2765,0,0,0,0,0,1824,2125824,2125824,2125824,2408448,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2551808,2125824,2125824,2125824,2125824,2125824,0,0,0,131072,0,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,435,0,0,0,0,0,0,0,0,0,0,0,2507,0,0,0,0,0,131072,0,0,131072,131072,0,0,0,0,0,0,131072,0,131072,0,131072,0,0,0,0,0,0,0,0,0,0,131072,0,131072,131072,131072,131072,0,131072,131072,131072,131072,131072,0,0,0,0,0,131072,0,131072,1,12290,3,0,0,0,0,0,0,0,0,0,0,0,0,298,0,135168,135168,0,0,0,0,0,0,0,0,0,0,0,0,0,320,321,0,0,0,135168,0,0,135168,0,0,0,0,0,0,0,0,0,0,0,3174,0,0,0,0,0,0,0,135168,135168,135168,135168,135168,135168,135168,0,135168,135168,135168,135168,135168,0,0,0,0,0,135168,0,135168,1,12290,3,0,0,0,0,0,0,0,0,0,0,0,118784,296,0,2183168,0,0,0,0,0,636,637,0,2134016,640,641,0,0,0,0,0,0,266240,0,0,0,0,0,0,0,0,0,0,266240,0,0,0,1361,2125824,2125824,2125824,2125824,2424832,2433024,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,986,2125824,2125824,2125824,2125824,2424832,0,301,139264,0,0,0,0,0,0,0,0,0,0,0,0,0,331,0,331,301,301,301,301,0,0,0,0,0,301,0,301,1,12290,3,0,0,0,0,0,0,0,0,0,0,0,139264,297,0,2183168,0,0,0,0,0,296,33406,0,2134016,300,49794,0,0,0,0,0,0,1134592,0,0,0,0,0,0,0,0,0,0,1134592,0,0,0,2134016,0,0,0,0,0,0,0,0,0,0,61440,0,0,0,0,647,0,0,0,0,0,0,0,0,0,0,0,2455,0,0,0,0,0,301,2424832,2433024,0,0,2457600,0,0,0,0,0,0,0,0,0,0,2779,0,0,0,0,0,298,298,143728,298,298,298,143728,69632,73728,298,298,143658,298,298,65536,298,298,0,0,298,298,143658,298,298,298,298,298,298,298,298,298,363,298,0,143658,298,298,298,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,143658,298,298,298,298,143658,143658,143658,143658,143658,143658,143658,143658,298,298,298,143658,368,298,298,298,298,298,298,298,298,298,298,298,298,298,298,298,298,143658,298,298,143658,298,298,143658,143658,143658,143658,143658,143658,298,0,298,0,298,298,298,143658,298,298,298,298,298,298,298,298,298,143658,298,143658,143658,143658,143658,298,298,143658,298,298,298,298,298,298,298,298,298,298,298,143728,298,298,298,298,298,298,298,143658,143658,143658,143658,143658,143658,143728,143658,143728,143728,143728,143728,143728,143658,143658,143658,143658,143658,143658,143658,143658,1,12290,3,0,0,0,0,0,0,0,90406,90406,90406,90406,0,94503,0,0,0,3117056,0,0,0,0,0,0,0,2200252,2200252,0,0,0,0,0,0,1134592,0,0,0,0,0,0,1134592,0,0,0,0,0,0,0,155648,155648,0,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,155648,0,0,0,0,155648,0,0,0,0,0,0,345,0,0,0,0,0,0,0,0,0,1663,0,0,0,0,0,0,0,0,155648,0,0,155648,0,0,0,0,0,0,0,155648,0,0,0,155648,155648,0,155648,155648,0,12290,3,0,0,2183168,126976,0,0,0,0,296,297,0,2134016,300,301,0,0,0,0,0,0,1146880,0,1146880,0,0,0,0,0,0,0,1107,0,0,0,0,0,0,0,0,540,2163,540,540,540,540,540,540,0,0,0,3117056,0,0,0,0,0,0,0,362,0,0,0,0,0,0,345,346,347,0,0,0,0,0,0,0,757,0,0,0,0,0,0,0,0,1156,0,0,0,0,0,0,0,159744,159744,159744,0,0,159744,0,0,0,0,0,0,0,0,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,159744,163840,159744,159744,159744,163840,159744,159744,159744,159744,159744,0,0,0,0,0,0,0,0,25160,0,0,159744,0,0,0,0,25160,25160,25160,159744,25160,25160,25160,25160,25160,159744,159744,159744,159744,25160,159744,25160,1,12290,3,0,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,167936,1,12290,3,0,167936,167936,167936,0,0,167936,0,0,0,0,0,0,0,0,167936,167936,167936,167936,167936,167936,167936,0,0,0,0,0,0,0,0,0,0,3015,0,0,0,0,0,0,0,0,2138112,1183,0,0,0,0,0,0,0,0,0,0,0,0,262144,0,0,0,0,172032,172032,0,0,0,0,0,0,0,0,0,0,172032,0,0,0,0,0,0,172032,172032,0,172032,0,0,172032,0,172032,0,172032,0,0,0,0,172032,172032,172032,172032,172032,172032,172032,172032,1,12290,3,0,172032,0,172032,172032,0,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,172032,0,0,0,0,0,0,0,0,0,0,106496,0,0,0,0,0,1,286,3,0,0,0,292,0,0,0,0,0,0,0,0,0,0,106496,0,106496,0,0,0,0,106496,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,176128,1,0,3,78112,176128,176128,176128,0,0,176128,0,0,0,0,0,0,0,0,176128,176128,176128,176128,176128,176128,176128,0,0,0,0,0,0,0,0,0,0,111050,0,0,0,0,0,78112,290,0,634,0,0,0,296,297,0,2134016,300,301,0,0,0,0,0,0,1159168,414,414,0,0,0,0,0,414,0,1164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,540,540,540,0,914,561,561,561,561,561,561,561,561,561,561,561,561,561,561,959,561,585,585,585,1490,585,585,585,585,585,585,585,585,585,585,585,585,585,1498,585,585,0,0,229376,0,0,0,0,0,0,0,0,1686,0,0,0,0,0,0,404,404,404,404,0,404,404,404,404,404,0,0,0,0,0,404,0,404,1,12290,3,78112,290,0,0,0,0,0,0,0,0,0,0,0,0,1155072,0,0,0,0,0,0,0,2131,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,658,0,0,0,561,561,561,561,561,561,2250,561,561,561,561,561,561,585,585,585,585,585,585,0,0,0,0,0,0,3295,0,0,0,0,0,0,0,712,0,0,0,716,0,0,719,0,561,561,2287,561,561,561,561,561,561,561,561,561,561,561,561,561,0,0,0,585,585,585,2347,585,585,585,585,585,585,585,585,585,585,585,585,585,1514,585,585,2372,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,561,0,0,0,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,585,585,585,585,2671,585,585,585,585,585,585,585,585,585,585,585,585,585,1515,585,585,0,0,0,2994,0,0,0,2998,0,0,0,0,0,0,0,0,0,159744,159744,159744,159744,159744,159744,159744,540,3035,540,540,540,540,540,540,540,540,540,540,540,540,540,540,910,540,3075,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1417,3116,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1501,0,0,3178,0,0,0,0,0,0,0,0,0,0,3187,0,0,0,0,0,2046,0,2149,0,0,0,0,0,0,0,0,0,249856,249856,249856,249856,249856,249856,249856,249856,1,12290,3,0,540,540,540,3203,540,540,540,540,540,540,540,540,540,3211,540,540,540,540,540,2813,540,540,2817,540,540,540,540,540,540,540,540,540,2555,540,540,540,540,540,540,3255,585,585,585,3258,585,585,585,585,585,585,585,585,585,3266,585,561,0,1287,585,1467,1376,540,540,1339,540,540,561,561,1430,561,0,585,585,585,585,585,288,1079,0,0,0,0,0,0,0,0,2427,0,0,0,0,0,0,0,0,2465,0,0,2468,0,0,0,0,0,0,0,0,3309,0,0,0,0,0,0,0,0,0,0,540,3508,540,3509,540,540,540,3326,3327,540,540,540,540,540,540,540,540,561,561,561,561,561,561,561,561,561,561,561,561,561,561,961,561,585,585,585,3361,585,585,585,585,3362,3363,585,585,585,585,585,585,561,0,0,0,0,0,0,0,0,0,0,1159168,0,0,0,0,0,0,0,0,0,3176,0,0,0,0,0,0,0,0,3387,0,0,0,0,0,2092,0,0,0,0,0,0,0,0,0,0,404,0,0,0,0,0,561,3416,561,561,561,561,585,585,585,585,585,585,3425,585,585,585,585,585,585,1492,585,585,585,585,585,585,585,1499,585,585,585,585,3431,585,585,585,585,3435,540,561,585,0,0,0,0,0,0,665,0,0,668,0,0,0,0,0,0,0,3172,0,0,0,0,0,0,0,0,0,225740,225740,225740,225740,225740,225740,225740,0,0,0,0,3176,0,0,0,0,0,0,0,0,3450,540,540,540,540,540,2814,540,2816,540,540,540,540,540,540,540,540,540,2233,540,540,540,540,540,0,561,561,561,3573,561,561,561,561,561,561,561,561,585,585,585,585,585,585,3538,585,585,3585,585,585,585,585,585,585,585,585,561,0,0,0,0,0,0,3627,561,561,585,585,0,540,561,585,0,540,561,585,0,540,561,585,0,0,0,0,0,0,0,0,0,0,0,0,0,2662400,0,2813952,78112,290,0,0,0,0,0,296,297,0,2134016,300,301,0,0,0,0,0,0,2473984,2478080,0,0,0,0,0,0,0,0,0,2976,0,0,0,0,0,0,0,0,0,2134756,0,0,0,0,0,0,0,0,0,0,0,0,1,12290,3,0,0,0,188416,540,585,585,561,540,540,540,540,540,561,561,561,561,585,585,585,585,0,0,540,540,0,0,0,0,3176,0,0,0,0,0,0,0,0,540,540,540,540,540,540,540,2169,0,0,0,302,0,0,0,0,0,0,0,0,0,0,0,0,1,12290,3,78112,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,192971,0,192971,0,1,12290,3,0,192971,192971,192971,0,0,192971,0,0,0,0,0,0,0,0,0,0,0,131072,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,322,0,0,0,0,192971,192971,192971,192971,192971,192971,192971,192971,192971,0,192971,192971,192971,192971,192971,0,0,0,0,0,0,0,0,0,0,2801664,0,0,0,0,2142208,299,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,674,78112,290,0,0,0,0,0,296,297,0,299,300,301,0,0,0,0,0,0,2797568,0,0,0,0,0,0,0,2850816,2867200,0,0,740,404,0,0,0,0,0,0,0,0,0,0,0,0,335,0,0,0,0,0,740,540,585,585,561,540,540,540,540,540,561,561,561,561,585,585,585,585,2029,0,2031,0,0,0,0,740,1184,0,0,0,0,1188,0,0,0,0,0,0,0,1583,0,1585,0,0,0,0,0,0,0,1661,1662,0,0,0,0,0,0,0,0,2727936,0,0,0,3084288,0,0,0,0,0,0,1577,0,0,0,0,0,0,0,0,0,0,0,0,351,352,353,354,0,0,0,1188,1670,0,0,0,0,0,0,0,0,0,0,0,0,1150976,0,0,0,0,0,0,561,561,585,585,585,585,1559,2029,0,0,0,0,1565,2031,0,0,0,0,0,2120,0,0,0,0,0,0,0,0,0,2130,2033,0,2035,0,0,0,0,0,0,0,0,0,0,0,0,0,336,337,338,561,561,2323,2648,0,0,0,0,585,585,585,585,585,585,585,585,585,585,585,2339,585,585,2342,0,304,0,304,0,0,0,0,0,0,0,0,0,304,0,0,0,0,0,2136,0,2138,0,0,0,0,0,0,0,0,791,817,0,817,812,0,0,0,0,0,0,204800,204800,0,204800,204800,204800,204800,204800,204800,204800,204800,204800,204800,204800,204800,204800,205104,204800,204800,205103,205104,204800,205103,205103,204800,204800,0,0,0,0,0,0,0,0,0,296,0,0,0,0,0,0,0,2183801,0,0,0,0,0,296,297,151552,2134016,300,301,0,212992,0,0,0,0,662,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3117056,0,0,0,0,0,0,0,0,2200253,0,0,0,0,0,0,2932736,2965504,0,0,3076096,0,0,2695168,3174400,2646016,0,914,2126737,2126737,2126737,2126737,2425745,2433937,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,0,0,987,2126810,2126810,2126810,2126810,2425818,2724753,2126737,2732945,2773905,2126737,2126737,2126737,2806673,2126737,2831249,2126737,2126737,2864017,2126737,2126737,2126737,2126737,2126737,2524049,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2601873,2126737,2126737,2921361,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3117969,2126737,2126737,2126737,2126737,2593681,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126810,2126810,2126810,2126810,3093393,0,0,0,0,3026944,2404352,2179072,2179072,2179072,2179072,3026944,2434010,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2626522,2126810,2126737,0,2179072,2126810,2126810,2126737,2457600,2179072,2179072,2179072,2179072,2458513,2126737,2126737,2126737,2126737,2126737,2626449,2126737,2126737,2126737,2126737,2126737,2126737,2700177,2126737,2716561,2126737,2806746,2126810,2831322,2126810,2126810,2864090,2126810,2126810,2126810,2126810,2921434,2126810,2126810,2126810,2126810,2126810,2126737,2179072,2126810,2126810,2126737,2179072,2179072,2179072,2179072,2126737,2126737,2126737,2458586,2126810,2126810,2126810,2126810,2183168,0,0,0,0,0,0,0,0,0,321,395,0,0,0,321,0,0,2126737,2126737,2126737,2409361,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3126161,2126737,2126737,2126737,2802577,2814865,2126737,2839441,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126810,2126810,2126810,2126810,2126810,2663386,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2802650,2814938,2126810,2839514,0,0,0,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2462609,2466705,2126737,0,2126810,2126810,2126810,2126810,2126810,0,0,0,0,0,0,0,0,0,297,0,0,0,0,0,0,2769809,2778001,2126737,2798481,2823057,2126737,2126737,2126737,2884497,2126737,2913169,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2655121,2679697,2761617,2765713,2786193,2855825,2970513,2126737,3007377,2126737,3134353,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3208081,2126737,0,0,0,0,0,325,0,69632,73728,0,0,0,0,0,65536,0,0,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2462682,2466778,2126810,2126810,2126810,2524122,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2601946,2126810,2126810,2126810,2585562,2126810,2126810,2126810,2126810,2126810,2618330,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2888666,2126810,2126810,2925530,2126810,2126810,2126810,2126810,2126810,2126810,2642906,2126810,2126810,2126810,2126810,2126810,2126810,2720730,2126810,2126810,2126810,2126810,2126810,2769882,2778074,2126810,2798554,2823130,2126810,2126810,2126810,2884570,2126810,2913242,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,3126234,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,3208154,2126810,2126737,2179072,2126810,2126810,2126737,0,0,0,2388881,2126737,2126737,2421649,2126737,2126737,2126737,2126737,2126737,2454417,2126737,2474897,2483089,2630545,2126737,2126737,2651025,2126737,2126737,2126737,2708369,2126737,2737041,2126737,2126737,2126737,2126737,2126737,2126737,2126737,985,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2552794,2126810,2126810,2126810,2126810,2126810,2126737,2126737,3072913,2126737,2126737,3122065,2126737,2126737,3142545,2126737,2126737,2126737,3171217,2126737,2126737,3191697,3195793,2126737,0,0,0,0,0,0,2388954,2126810,2126810,2421722,2126810,2126810,2126810,2126810,2126810,3040218,2126810,3064794,2126810,2126810,2126810,2126810,3101658,2126810,2126810,3134426,2126810,2454490,2126810,2474970,2483162,2126810,2126810,2126810,2126810,2126810,2126810,2532314,2126810,2126810,2126810,2126810,3036122,2126810,2126810,3072986,2126810,2126810,3122138,2126810,2126810,3142618,2126810,2126810,2126810,3171290,2126810,2126810,3191770,3195866,2126810,2126737,2179072,2126810,2126810,2126737,2179072,2179072,3112960,3219456,2126737,2126737,3113873,3220369,2126810,2126810,3113946,3220442,0,0,0,0,0,0,0,0,0,167936,167936,167936,167936,167936,167936,167936,2638737,2126737,2126737,2126737,2126737,2728849,2753425,2126737,2126737,2126737,2126737,2843537,2847633,2126737,2896785,2917265,2638810,2126810,2126810,2126810,2126810,2728922,2753498,2126810,2126810,2126810,2126810,2843610,2847706,2126810,2896858,2917338,2179072,3178496,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2495377,2126737,2126737,2515857,2126737,2126737,2126737,2126737,3011473,2126737,2126737,2126810,2126810,2503642,2126810,2126810,2126810,2126810,2126810,2126810,2126810,3138522,2126737,2940928,2941841,2941914,0,0,0,0,2126737,2544529,2548625,2126737,2126737,2597777,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2552721,2126737,2126737,2126737,2126737,2126737,2126737,2929553,2126737,2126737,2126737,2999185,2126737,2126737,2126737,2126737,3060625,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3040145,2126737,3064721,2126737,2126737,2126737,2126737,3101585,2126737,2126737,3179409,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2495450,2126810,2126810,2515930,2126810,2126810,0,0,0,0,0,0,2510848,2514944,0,0,2547712,2596864,0,0,0,0,0,2160,0,0,540,540,540,540,540,540,540,540,540,540,540,540,540,561,561,561,561,561,561,3525,561,2126810,2544602,2548698,2126810,2126810,2597850,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126737,0,2502656,0,0,3010560,2126810,2929626,2126810,2126810,2126810,2999258,2126810,2126810,2126810,2126810,3060698,2126810,2126810,2126810,2126810,2126810,2126810,3118042,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126737,2126810,3179482,2126737,2179072,2126810,2126737,2179072,2179072,2126737,2126737,2126810,2126810,2441216,0,0,0,0,0,326,0,0,0,0,0,0,0,0,0,0,403,0,0,0,0,0,3129344,2179072,2179072,3153920,3166208,3174400,2397073,2401169,2126737,2126737,2442129,2126737,2470801,2126737,2126737,2126737,2126737,2126737,2663313,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,0,0,2126810,2126810,2126810,2409434,2519953,2126737,2126737,2126737,2126737,2589585,2126737,2614161,2646929,2126737,2126737,2696081,2757521,2126737,2126737,2126737,2126737,2126737,3138449,2126810,2126810,2499546,2126810,2126810,2126810,2556890,2565082,2126810,2126810,2126737,2933649,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3130257,2126737,2126737,3154833,3167121,3175313,2397146,2401242,2126810,2126810,2442202,2126810,2470874,2126810,2126810,2126810,2520026,2126810,2126810,2126810,2126810,2589658,2126810,2126810,2126810,3011546,2126810,2126810,2126737,0,0,0,0,0,0,0,2592768,0,0,0,0,663,0,0,666,667,0,0,0,0,0,0,0,540,571,540,571,540,540,571,540,595,2614234,2647002,2126810,2126810,2696154,2757594,2126810,2126810,2126810,2126810,2933722,2126810,2126810,2126810,2126810,2126810,2126810,3224538,2126737,2179072,2417626,2126810,2126737,2179072,2179072,2126737,2126737,2854912,2969600,2179072,3006464,2179072,3018752,2179072,2179072,2179072,3149824,2126737,2429841,2438033,2126737,2487185,2126737,2126737,2945937,2126737,2126737,2995089,2126737,3003281,2126737,2126737,3023761,2126737,3068817,3085201,3097489,2126737,2126737,2888593,2126737,2126737,2925457,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,3036049,2126737,3019665,2126737,2126737,2126737,3150737,2126810,2429914,2438106,2126810,2487258,2126810,2126810,2126810,2126810,2126810,2700250,2126810,2716634,2126810,2724826,2126810,2733018,2773978,2126810,2126810,2126810,2126810,3150810,2126737,2179072,3051520,2126737,3052433,2126810,3052506,0,2490368,2498560,0,0,0,0,0,0,679,0,0,0,0,0,0,0,0,0,0,0,2126810,2593754,2126810,2126810,2126810,2126810,2126810,2126810,2126810,2126737,2449408,0,2535424,3031040,0,0,0,0,0,2439,0,0,0,0,0,0,0,0,0,0,369,0,0,370,0,0,2126737,2450321,2126737,2536337,2126737,2610065,2126737,2859921,2126737,2126737,2126737,3031953,2126810,2450394,2126810,2536410,2126810,2610138,2126810,2859994,2126810,2126810,2126810,3032026,2126737,2527232,0,0,0,0,0,2179072,2126810,2126810,2126737,2179072,2179072,2179072,2179072,2179072,2126737,2126737,2126737,2126737,2126810,2126810,2126810,2126810,0,0,0,0,0,0,0,0,0,0,0,237568,0,0,0,0,2527232,2179072,2179072,2179072,2179072,2179072,2126737,2528145,2126737,2126737,2126737,2126737,2126737,2126810,2528218,2126810,2126810,2946010,2126810,2126810,2995162,2126810,3003354,2126810,2126810,3023834,2126810,3068890,3085274,3097562,2126810,2126810,2126810,2606042,2126810,2630618,2126810,2126810,2651098,2126810,2126810,2126810,2708442,2126810,2737114,2126810,2126810,2126810,2655194,2679770,2761690,2765786,2786266,2855898,2970586,2126810,3007450,2126810,3019738,2126810,2126810,0,2486272,0,0,0,0,0,2678784,2854912,3006464,0,3108864,3198976,0,2405265,2126737,2126737,2126737,2126737,3027857,2405338,2126810,2126810,2126810,2126810,3027930,2539520,0,2949120,0,0,0,0,695,0,0,0,0,362,362,362,0,0,704,0,0,0,0,709,0,0,0,0,0,0,0,0,0,0,0,2049,0,0,0,0,2179072,2658304,2973696,2179072,2126737,2659217,2974609,2126737,2126810,2659290,2974682,2126810,2711552,0,256e4,2179072,2179072,3125248,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2560913,2126737,2560986,2126810,0,2179072,2126737,2126810,0,2179072,2126737,2126810,0,2179072,2126737,2126810,2126810,3130330,2126810,2126810,3154906,3167194,3175386,2126737,2506752,2507738,2507665,2179072,2179072,2126737,2126737,2126737,2642833,2126737,2126737,2126737,2126737,2126737,2126737,2720657,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2126737,2585489,2126737,2126737,2126737,2126737,2126737,2618257,2126737,2985984,2985984,2986897,2986970,0,0,0,0,0,0,0,0,0,0,0,0,397,0,0,0,0,221184,221184,0,0,0,0,0,0,0,0,0,221184,221184,0,0,221184,221184,221184,0,0,0,0,0,0,221184,0,0,0,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,221184,0,0,0,0,0,0,0,0,0,332,0,0,0,0,0,0,0,0,0,0,221184,221184,221184,221184,221184,221184,221184,221184,1,12290,3,0,0,0,0,0,253952,0,0,0,253952,0,0,0,0,0,0,0,0,0,0,0,0,687,688,0,0,0,0,0,98304,0,0,0,53248,0,0,0,0,0,2662400,0,2813952,297,0,300,0,0,0,300,0,301,0,0,0,301,0,0,0,301,69632,139679,0,0,0,0,0,65536,0,0,0,0,3133440,0,98304,0,0,0,0,0,0,0,0,0,0,0,2179072,2179072,2179072,2179072,2179072,300,0,301,0,0,0,2473984,2478080,0,0,0,0,0,0,0,0,0,176128,176128,176128,176128,176128,176128,176128,3121152,2179072,2179072,3141632,2179072,2179072,2179072,3170304,2179072,2179072,3190784,3194880,2179072,914,0,0,0,0,0,2451,0,0,0,0,0,0,0,0,0,0,301,301,0,0,0,0,0,914,0,2387968,2125824,2125824,2420736,2125824,2125824,2125824,2125824,2125824,2453504,2125824,2473984,2482176,2125824,2125824,2125824,2125824,2125824,2125824,2531328,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2605056,2125824,3194880,2125824,987,0,0,0,987,0,2387968,2125824,2125824,2420736,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2887680,2125824,2125824,2924544,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3035136,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,225740,0,0,0,0,0,0,0,0,0,348,349,350,0,0,0,0,2125824,237568,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,358,0,0,0,0,0,358,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,249856,0,0,0,0,0,0,0,0,0,362,0,0,0,0,0,0,0,2183168,0,0,0,0,0,296,297,0,2134016,300,301,0,0,217088,2125824,241664,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,362,0,0,0,0,131072,131072,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,254413,0,0,0,0,0,0,0,0,0,362,0,0,0,0,155648,0,0,2183168,0,0,270336,0,0,296,297,0,2134016,300,301,200704,0,0,0,0,0,2462,0,0,0,0,0,0,0,0,0,0,1261,0,0,0,0,0,2125824,0,2125824,2125824,2125824,2125824,2125824,0,0,180224,0,0,0,0,0,0,0,1726,0,0,0,0,0,0,0,0,304,304,304,0,0,0,0,0,0,2748416,2879488,0,20480,0,0,0,0,0,0,0,0,2179072,2179072,2179072,2179072,2768896,2777088,2797568,2822144,2179072,2179072,2179072,2883584,2912256,2179072,2179072,2179072,2179072,2179072,2617344,2179072,2179072,2179072,2179072,2179072,2179072,2662400,2179072,2179072,2179072,2179072,2179072,3010560,2179072,2179072,2125824,2125824,2502656,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2584576,2125824,2125824,2125824,2125824,2125824,2617344,2125824,2125824,2125824,2125824,2125824,2125824,0,266240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2142208,0,0,0,266240,0,0,0,0,0,0,0,0,1,12290,2113823,0,0,0,0,0,0,293,0,0,0,293,0,0,245760,0,0,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3039232,2125824,3063808,2125824,2125824,2125824,2125824,3100672,2125824,2125824,3133440,2125824,245760,2125824,2125824,2125824,2125824,2125824,0,0,0,0,0,0,0,0,0,362,0,0,122880,122880,0,0,274432,274432,274432,274432,0,0,0,0,0,274432,0,274432,1,12290,3,0,0,0,0,725,0,0,0,0,0,0,0,0,0,0,0,1192,0,1195,0,0,78112,290,0,0,0,0,0,296,297,0,0,300,301,0,0,0,0,0,328,329,330,0,0,0,0,0,0,0,0,0,2200252,2200252,2200252,0,0,0,0,0,0,0,2033,0,0,0,0,0,2035,0,0,0,0,0,0,0,2055,0,2056,0,0,0,0,0,0,0,2067,0,0,0,0,0,0,0,0,1187,0,0,0,0,0,0,1104,2483,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,690,0,0,2993,0,0,0,0,0,0,0,0,0,0,0,0,0,383,335,0,0,0,0,1679,0,0,0,0,0,0,0,0,0,0,0,0,694,0,0,0,0,0,0,741,0,0,0,0,0,0,0,0,0,0,0,0,730,0,0,0,0,0,0,78456,290,0,0,0,0,0,296,297,0,0,300,301,0,0,0,0,0,344,0,0,0,0,0,0,0,0,0,0,1158,0,0,0,0,0,562,562,562,562,562,562,562,586,586,586,540,586,586,586,586,586,562,562,540,562,586,562,586,1,12290,3,78112,0,0,2771,0,0,0,0,0,0,0,0,0,0,0,0,0,514,521,521,1,12290,3,78113,290,0,0,0,0,0,0,0,0,0,0,0,301,0,0,0,0,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,1,12290,3,0,282624,282624,282624,0,0,282624,0,0,0,0,0,0,0,0,0,0,0,3178496,2670592,0,2744320,0,0,0,0,0,282624,282624,282624,282624,282624,282624,282624,282624,282624,0,282624,282624,282624,282624,282624,0,0,0,0,0,0,0,0,0,362,0,290,0,0,0,0,3176,0,0,2740224,0,0,0,0,0,2793472,0,0,0,0,0,0,0,2094,0,0,0,0,0,0,0,0,683,684,685,0,0,0,689,0,0,0,0,286720,286720,0,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,286720,0,0,0,0,0,0,0,0,0,362,0,302,0,0,0,0,0,3043328,0,3149824,2936832,0,2760704,3301,0,0,0,0,2953216,0,0,2826240,2875392,0,0,0,3381,0,0,2834432,0,3227648,2568192,0,0,0,0,2564096,0,2748416,2879488,0,3381,0,0,0,0,0,0,0,0,2179072,2179072,2179072,2531328,2179072,2179072,2179072,2179072,2179072,2179072,2179072,2605056,2179072,2629632,2179072,2179072,0,0,0,306,0,0,0,0,0,305,0,305,306,0,305,305,0,0,0,305,305,306,306,0,0,0,0,0,0,305,405,306,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,750,0,0,0,306,410,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,742,0,0,0,0,742,0,748,0,0,0,0,0,0,1192,0,0,0,0,0,0,0,0,0,0,462,462,462,488,488,462,488,488,488,488,488,488,488,513,488,488,488,488,488,488,488,488,488,488,488,488,488,533,488,488,488,488,488,541,563,541,563,541,541,563,541,587,563,563,563,563,563,563,563,587,587,587,541,613,613,613,613,613,587,563,563,541,563,587,563,587,1,12290,3,78112,0,0,645,0,0,648,649,0,0,0,0,0,0,0,0,0,362,0,253952,0,0,0,0,0,645,0,0,0,0,0,0,0,0,0,0,762,0,0,0,0,0,353,0,351,0,472,472,472,472,472,472,472,477,472,472,472,472,472,472,472,472,472,477,472,0,768,0,0,772,0,0,0,0,0,0,781,0,0,0,0,0,0,727,0,0,0,731,0,0,0,0,0,0,0,69632,73728,0,0,0,343,342,65536,341,0,788,0,0,0,0,792,0,0,0,0,0,0,0,796,0,0,0,0,0,0,0,0,0,0,0,0,782,0,0,0,0,736,0,796,0,0,0,0,648,0,0,0,0,0,0,820,0,0,648,0,0,0,0,0,837,792,0,0,0,0,0,841,842,792,792,0,0,0,0,792,736,792,0,540,540,851,855,540,540,540,540,1345,540,540,540,540,540,540,540,540,540,540,540,2181,540,540,540,540,561,561,561,921,925,561,561,561,561,561,561,951,561,956,561,963,561,966,561,561,980,561,561,0,585,585,585,994,998,585,585,585,585,585,585,1963,1964,1966,585,585,585,585,585,585,585,561,2713,585,2715,2716,540,540,540,540,585,585,585,1024,585,1029,585,1036,585,1039,585,585,1053,585,585,966,0,0,0,855,585,998,925,851,1065,894,540,540,921,1070,966,561,0,585,585,585,585,585,78112,0,0,0,0,0,0,0,0,0,114688,0,241664,258048,0,0,0,1093,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,766,0,0,1214,0,0,0,0,0,0,0,0,0,0,0,0,0,672,673,0,540,540,1342,540,540,540,540,540,540,540,540,540,540,540,540,540,0,0,0,585,585,585,1524,585,585,585,585,585,585,585,585,585,585,585,585,585,1517,585,585,585,1433,0,540,585,585,561,540,540,540,540,540,561,561,561,561,561,561,561,3070,561,561,561,561,561,561,585,585,585,585,585,585,0,0,0,3662,0,0,0,1641,0,0,0,0,0,0,0,0,0,0,0,0,1103,1104,1105,1106,1654,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,785,0,1693,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,306,0,1732,0,0,1733,0,0,0,0,540,540,540,540,540,540,540,3030,540,540,540,540,540,540,540,1745,540,540,540,540,540,540,540,540,540,1758,540,540,540,540,540,540,2540,540,540,540,540,540,540,540,540,540,540,1329,540,540,540,540,540,540,540,540,1795,540,540,1798,540,540,540,540,540,540,540,540,540,540,900,540,540,540,540,540,540,1810,540,540,540,540,540,1815,540,540,540,540,540,540,540,1360,914,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1416,561,1825,561,561,561,561,1831,561,561,561,561,561,1837,561,561,561,561,561,983,561,0,585,585,585,585,585,1002,585,1010,561,1892,561,561,561,561,561,561,561,561,561,561,1904,561,561,561,561,585,585,585,585,0,0,0,2726,0,0,2729,2730,561,561,1909,561,561,561,561,561,561,561,26027,1919,585,585,585,585,561,0,0,0,0,0,540,3649,540,540,540,540,540,540,561,561,561,561,561,561,561,3231,3232,561,1925,585,585,585,585,585,1931,585,585,585,585,585,585,585,585,585,561,0,0,0,0,0,3596,1944,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1540,561,561,2025,585,585,585,0,2029,0,0,0,0,0,2031,0,0,0,0,0,2487,0,0,0,0,0,0,0,0,0,0,0,122880,0,0,0,0,0,0,0,2041,0,0,0,0,0,0,0,0,0,0,0,0,1132,0,0,0,2075,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1135,0,2145,0,0,0,2143,0,0,2150,0,0,0,0,0,0,0,0,159744,0,0,0,0,0,0,0,0,1234,0,0,0,0,0,0,0,0,1584,0,0,0,0,0,0,0,0,1700,0,0,0,0,1705,0,0,540,540,2171,540,540,2174,540,540,540,540,540,540,2182,540,540,540,540,540,540,2568,540,540,540,540,2572,540,540,540,540,540,540,1347,540,540,540,540,540,540,540,540,540,540,2556,540,540,540,540,540,540,540,2201,540,540,540,540,540,540,540,540,540,540,540,540,540,0,0,2242,540,540,540,2214,540,540,540,540,540,540,540,540,540,540,540,540,540,1805,540,540,0,0,0,561,561,561,561,561,561,561,561,561,561,561,2254,561,0,585,585,585,585,585,78112,1079,0,0,0,0,0,0,0,0,2123,0,2125,2126,0,0,0,0,561,2257,561,561,561,561,561,561,2265,561,561,561,561,561,561,561,0,0,585,585,585,585,585,585,585,561,540,585,585,561,540,2952,561,2954,561,2299,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1438,561,2033,0,2035,0,0,2426,0,0,0,0,0,0,0,0,0,2434,0,0,0,2475,0,0,0,0,0,0,0,0,0,0,0,0,1193,0,0,0,0,2484,0,0,0,0,0,0,0,0,0,2493,0,0,0,0,0,0,756,0,0,0,0,0,0,763,0,0,0,0,0,561,561,561,561,561,561,561,561,2592,561,561,561,561,561,1408,561,561,1412,561,561,561,561,561,561,561,0,585,585,585,585,585,585,1008,585,2656,585,585,585,585,585,585,585,585,585,585,585,2664,585,585,585,585,585,585,2350,585,585,585,585,585,585,585,585,585,585,2379,585,585,585,585,585,585,585,585,2699,585,585,585,585,585,585,585,585,585,585,585,585,585,1940,585,585,2708,585,585,585,585,585,585,561,540,585,585,561,540,540,540,540,540,540,561,561,561,3229,561,561,561,561,561,561,585,585,585,3352,585,585,585,3355,585,585,2731,0,0,0,0,0,0,2736,0,0,0,0,0,0,0,0,0,192971,192971,192971,192971,192971,192971,192971,192971,0,0,0,2759,0,0,0,0,0,0,0,0,0,0,0,0,1234,540,540,540,0,0,0,2788,0,0,0,0,0,0,0,0,0,0,0,0,1238,0,0,0,540,540,540,2826,540,540,540,540,540,540,540,540,540,540,2833,540,540,540,540,1748,540,540,540,540,540,540,540,540,540,1760,540,540,540,540,1765,540,540,540,540,540,540,540,540,1772,540,540,540,540,561,3406,561,561,3408,561,561,561,561,561,561,561,0,585,585,585,585,585,585,1009,585,561,561,561,2860,561,561,2864,561,561,561,561,561,561,561,561,561,944,561,561,561,561,561,561,561,2873,561,561,561,561,561,561,561,561,561,561,561,2881,561,561,0,0,0,2649,0,1920,585,585,585,585,585,585,585,585,585,2703,585,585,585,585,585,585,585,585,585,2908,585,585,2912,585,585,585,585,585,585,585,585,585,585,2393,2394,585,585,585,585,585,2921,585,585,585,585,585,585,585,585,585,585,585,2929,585,585,0,0,0,3292,0,0,0,0,0,0,0,0,0,3297,2955,585,0,0,0,0,0,0,0,0,0,0,0,0,0,0,306,305,0,0,0,2970,0,0,0,0,0,0,0,0,0,0,0,0,1588,1589,0,0,540,540,540,540,3036,540,540,540,540,540,540,540,540,540,540,540,540,2546,540,540,540,561,561,561,3076,561,561,561,561,561,561,561,561,561,561,561,561,1436,561,561,561,585,585,585,3117,585,585,585,585,585,585,585,585,585,585,585,585,585,2356,585,2358,0,0,0,0,3176,3442,0,3444,0,0,0,0,0,540,3451,540,540,540,540,1796,540,540,540,540,540,540,540,540,540,540,540,905,540,540,540,540,3453,540,540,540,540,540,540,540,540,540,540,540,561,3466,561,3468,0,0,3501,0,0,0,0,0,0,540,540,540,540,3510,540,540,540,540,540,3204,3205,540,540,540,540,3209,3210,540,540,540,540,540,1749,1750,540,540,540,540,1757,540,540,540,540,540,540,1346,540,540,540,540,540,540,1356,540,540,307,308,309,0,0,0,0,0,0,0,0,0,0,0,0,0,734,0,0,0,0,418,0,0,0,0,0,449,0,0,0,0,0,0,0,0,286720,0,0,0,0,0,0,0,0,2490,0,0,0,0,0,0,0,0,2504,0,0,0,0,0,0,0,0,2517,0,0,0,0,0,0,0,0,2975,0,0,0,0,0,0,0,0,2999,0,0,0,0,0,0,0,0,3164,0,0,0,0,0,0,0,0,3173,0,0,0,0,0,0,0,0,3183,0,0,0,0,0,0,0,0,155648,0,0,0,0,0,0,0,0,0,0,0,449,449,418,449,449,449,449,449,449,449,449,449,449,449,449,532,449,532,532,532,449,532,532,532,532,449,542,564,542,564,542,542,564,542,588,564,564,564,564,564,564,564,588,588,588,542,588,588,588,588,588,564,564,616,621,588,621,627,1,12290,3,78112,0,1677,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1163,540,540,540,1811,540,540,540,540,540,540,540,540,540,540,540,1360,914,561,561,561,561,561,561,561,561,561,561,561,561,1377,561,0,585,585,585,585,585,78112,1079,0,0,1082,1086,0,0,1090,585,585,585,1993,585,585,585,585,585,1999,585,585,585,585,585,585,561,0,0,0,0,3551,0,3553,0,0,0,0,0,561,561,561,561,561,2589,561,561,561,561,2593,561,561,0,2648,0,0,0,0,585,585,585,585,585,585,585,585,585,2338,585,585,585,585,585,585,585,2657,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1971,585,585,585,2709,585,585,585,585,561,540,585,585,561,540,540,540,540,540,540,561,561,3228,561,561,561,561,561,561,561,0,0,585,2900,585,585,585,585,585,540,3514,540,3516,540,540,3518,540,561,561,561,561,561,561,561,561,1396,1398,561,561,561,561,561,561,3527,561,3529,561,561,3531,561,585,585,585,585,585,585,585,585,3540,585,3542,585,585,3544,585,561,0,0,0,0,0,0,0,0,0,362,362,362,0,0,0,147456,0,0,0,310,311,312,313,314,315,316,317,318,319,0,0,0,0,0,373,0,0,0,0,365,0,382,0,348,0,0,310,0,0,0,0,0,0,0,0,0,0,0,0,0,0,328,0,0,0,313,0,0,0,0,0,0,0,0,0,0,0,0,0,764,0,0,420,428,419,428,0,310,428,441,450,463,463,463,463,463,463,463,463,463,463,463,463,463,463,463,463,463,463,484,489,489,500,489,489,489,489,489,489,489,489,515,515,528,528,529,529,529,529,529,529,529,529,529,529,515,529,529,529,529,529,543,565,543,565,543,543,565,543,589,565,565,565,565,565,565,565,589,589,589,612,589,589,589,589,589,614,615,615,612,615,614,615,614,1,12290,3,78112,0,702,0,0,0,0,0,702,0,0,0,540,540,540,540,540,3028,540,540,540,540,540,540,540,561,967,561,561,561,561,561,0,585,585,585,585,585,585,585,585,2337,585,585,585,585,2341,585,0,1108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,540,3200,0,1150,1108,0,0,0,0,0,0,0,0,0,0,0,0,0,1102,0,0,0,1228,0,0,0,0,0,0,0,0,0,0,0,0,0,1240,0,0,540,540,1276,1278,540,540,540,540,540,540,540,540,1292,540,1297,540,540,1301,540,540,540,540,1812,540,540,540,540,540,540,540,540,540,1823,1360,914,561,561,561,561,561,561,561,561,561,561,561,561,1378,561,0,585,585,585,585,585,78112,1079,0,0,1083,1087,0,0,1091,540,1304,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1302,540,1360,914,561,561,1364,561,1367,561,561,561,561,561,561,561,561,1381,561,1386,561,561,1390,561,561,1393,561,561,561,561,561,561,561,561,1431,561,561,1435,561,561,561,561,1484,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1942,540,1793,1794,540,540,540,540,540,540,540,540,540,540,540,540,540,0,2584,0,585,585,1946,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2005,585,585,585,1959,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2357,585,2102,0,0,0,0,1670,0,0,0,0,0,0,0,0,0,0,328,379,381,0,0,0,0,0,2133,0,0,0,0,0,0,0,0,0,0,0,0,0,1119,0,0,2033,0,2035,0,0,0,0,0,0,2428,0,0,0,0,0,0,0,2122,0,0,0,0,0,0,0,0,0,122880,0,122880,122880,122880,122880,122880,0,0,2474,0,0,0,0,0,0,0,0,0,0,0,0,0,1133,0,0,0,0,0,0,2760,0,0,0,0,0,0,0,0,0,0,0,380,0,0,0,384,0,0,2799,0,0,0,0,0,0,0,2803,540,540,540,540,540,540,540,1326,540,540,540,540,540,540,540,1339,585,2956,0,0,0,0,0,2962,0,0,0,0,0,0,0,2966,0,0,0,3008,0,0,0,0,0,0,0,0,3017,0,0,0,0,0,383,0,69632,73728,0,0,0,0,0,65536,0,3048,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1320,3089,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1858,3130,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1957,540,3225,540,540,540,540,561,561,561,561,561,561,561,561,561,561,561,3414,585,585,585,3281,585,585,585,585,561,540,585,561,540,540,561,561,585,585,0,0,0,3157,3513,540,540,540,540,540,540,540,561,3521,561,3522,561,561,561,3526,540,540,540,3664,561,561,561,3666,585,585,585,3668,0,0,540,540,540,3560,540,540,540,540,540,540,540,540,3568,561,321,321,371,0,0,0,0,0,0,0,0,0,0,0,0,0,1161,0,0,0,0,371,0,430,436,0,442,451,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,464,490,490,501,490,490,490,490,490,490,490,490,516,516,516,516,516,516,516,516,516,516,516,516,516,516,516,516,544,566,544,566,544,544,566,544,590,566,566,566,566,566,566,566,590,590,590,544,590,590,590,590,590,566,566,544,566,590,566,590,1,12290,3,78112,540,540,540,874,540,540,540,540,540,540,540,540,540,540,540,540,540,1822,540,1360,585,1017,585,585,585,585,585,585,585,585,585,585,585,585,585,561,540,585,585,561,540,540,540,540,561,561,1122,0,1124,1125,0,0,0,1127,1128,0,0,0,0,0,0,0,0,1159168,0,1159168,0,0,0,0,1159168,0,0,1166,1167,0,0,0,0,0,0,0,0,0,0,0,0,1634,0,0,0,1113,0,1253,0,0,0,0,0,1128,0,0,0,0,0,1236,0,0,0,0,773,774,0,0,778,779,0,675,0,0,0,0,0,0,1598,0,0,0,0,0,0,0,0,1605,0,0,1268,1127,0,0,0,0,0,0,0,0,0,540,540,1277,540,540,540,1323,540,540,1325,540,540,1328,540,540,540,540,540,540,540,540,2554,540,540,540,540,540,540,2560,1360,914,561,561,1365,561,561,561,561,561,561,561,561,561,561,561,1400,561,561,561,561,561,561,1404,561,561,561,561,561,561,561,1413,561,561,1415,561,561,0,2648,0,0,0,0,585,585,585,585,585,585,585,2655,561,1419,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1874,561,561,561,1443,561,561,561,561,561,26027,1360,987,585,585,1456,585,585,0,0,3291,0,0,0,0,0,0,0,0,0,0,0,1262,0,0,0,1266,585,585,585,1504,585,585,1506,585,585,585,1510,585,585,585,585,585,561,540,585,585,561,540,540,540,2020,561,561,0,0,0,1657,0,0,0,0,0,0,0,0,0,0,0,0,1675,0,0,0,585,1991,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2695,561,2024,585,585,585,2028,0,2029,0,0,0,0,0,2031,0,0,0,0,0,2502,0,0,0,0,0,0,0,0,0,0,1586,1587,0,0,0,0,0,0,0,2033,0,0,0,0,0,2035,0,0,0,0,0,2038,0,0,2077,0,0,0,0,0,0,0,0,0,0,0,0,0,1177,0,0,0,0,0,0,2091,0,0,0,0,0,0,0,0,0,0,0,540,540,540,2807,540,0,0,0,561,561,561,561,561,561,561,561,2252,561,561,561,561,561,1447,561,561,26027,1360,987,585,585,585,585,585,561,540,585,585,561,2017,540,540,540,2021,561,2256,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1875,2272,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1890,561,561,561,2314,561,2316,561,561,561,561,561,561,561,0,0,0,0,0,0,585,585,585,585,585,585,585,585,585,585,585,585,2340,585,585,585,2399,585,2401,585,585,585,585,585,585,585,561,540,585,585,561,540,540,561,561,540,540,2564,540,540,540,540,540,540,540,540,540,540,540,540,540,540,3212,540,0,0,0,561,561,561,561,2588,561,561,561,561,561,561,561,561,1916,561,26027,0,585,585,585,585,0,2757,0,0,0,0,0,0,0,0,0,0,0,0,0,0,735,0,2834,540,540,540,540,540,540,540,2840,540,540,540,540,540,540,540,540,540,2571,540,540,540,540,540,540,2882,561,561,561,561,561,561,561,2888,561,561,561,561,561,561,561,0,0,585,585,585,2902,585,585,585,2930,585,585,585,585,585,585,585,2936,585,585,585,585,585,585,585,561,540,2714,585,561,540,540,540,540,540,540,3226,540,540,540,561,561,561,561,561,561,561,561,561,561,561,561,561,3074,585,585,585,585,3282,585,585,585,561,540,585,561,540,540,561,561,585,585,0,0,3156,0,585,585,3369,540,540,561,561,585,585,0,0,0,0,0,0,0,0,2617344,0,0,0,0,0,2789376,0,0,0,0,0,3176,0,0,0,3445,0,0,0,0,540,540,540,540,3027,540,540,540,540,3031,540,540,540,540,540,540,3456,540,540,540,540,540,540,540,540,561,561,561,561,561,3524,561,561,561,561,3471,561,561,561,561,561,561,561,561,585,585,585,585,585,585,585,585,585,585,585,3486,585,585,585,585,585,585,585,585,561,0,0,0,0,0,3626,540,540,540,3515,540,540,540,540,540,561,561,561,561,561,561,561,561,561,561,3413,561,561,3528,561,561,561,561,561,585,585,585,585,585,585,585,585,585,585,3113,585,585,585,3541,585,585,585,585,585,561,0,0,0,0,0,0,0,0,0,362,362,208896,0,0,0,0,323,324,325,0,0,0,0,0,0,0,0,0,0,0,0,0,1194,1196,0,0,0,0,322,370,325,369,0,0,0,0,0,0,0,0,0,364,0,0,0,0,0,0,322,0,0,369,369,399,0,325,0,0,0,0,0,0,0,0,0,233472,0,0,0,0,0,0,0,0,0,324,0,0,0,322,452,465,465,465,465,465,465,465,478,465,465,465,465,465,465,465,465,465,465,465,491,491,465,491,491,506,508,491,491,506,491,517,517,517,517,517,517,517,517,517,517,517,517,517,534,517,517,517,517,517,545,567,545,567,545,545,567,545,591,567,567,567,567,567,567,567,591,591,591,545,591,591,591,591,591,567,567,545,567,591,567,591,1,12290,3,78112,659,0,0,0,0,0,0,0,0,0,0,670,671,0,0,0,0,0,439,0,0,0,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,557,580,557,580,557,557,580,557,604,0,0,707,708,0,0,0,0,0,714,0,0,0,718,0,720,0,769,770,0,0,0,0,0,0,0,0,0,0,0,0,0,1209,0,0,787,0,789,0,0,0,0,0,0,0,0,0,0,0,0,0,1224,0,0,0,801,0,806,0,809,0,0,0,0,806,809,0,0,0,809,0,707,0,0,826,0,0,0,0,0,826,826,829,809,806,0,0,0,0,0,0,0,789,0,801,0,818,0,0,0,0,0,2745,0,0,0,0,0,0,0,0,0,0,811,540,540,854,540,540,0,0,0,789,0,0,0,0,0,838,0,0,0,0,0,0,0,2142,540,540,540,540,540,540,540,540,540,540,2819,540,540,540,540,540,0,0,0,787,0,0,0,838,818,838,0,540,540,852,540,858,540,540,871,540,881,540,886,540,540,893,896,901,540,909,540,540,540,540,540,3215,540,540,540,540,540,540,540,540,540,540,895,540,540,540,540,540,561,561,561,922,561,928,561,561,941,561,561,952,561,957,561,561,0,2648,0,0,0,0,585,585,585,585,585,2653,585,585,0,0,2959,0,0,0,0,0,0,0,0,0,2965,0,965,968,973,561,981,561,561,0,585,585,585,995,585,1001,585,585,0,2958,0,0,0,0,0,0,0,0,0,0,0,0,131072,131072,0,0,1014,585,585,1025,585,1030,585,585,1038,1041,1046,585,1054,585,585,968,0,0,0,540,585,585,561,852,540,1066,901,540,922,561,1071,973,0,0,0,1110,0,0,0,0,0,0,0,1117,0,0,0,0,0,0,775,0,0,0,0,0,0,0,0,0,1205,0,0,0,0,0,0,0,1137,1138,0,0,0,0,1142,0,0,0,362,362,0,0,0,0,0,664,0,0,0,0,0,0,0,0,0,0,1206,0,0,0,0,0,0,1165,0,0,0,0,0,0,0,0,0,0,0,0,0,0,784,0,0,0,1182,741,0,0,0,1134,0,0,0,0,0,0,0,0,0,245760,0,0,0,0,0,0,1303,540,540,540,540,540,540,540,540,540,540,540,540,540,1318,540,540,540,540,2173,540,540,540,540,540,540,540,540,540,540,540,540,2558,540,540,540,1360,914,561,561,561,561,561,561,561,561,561,1372,561,561,561,561,561,1850,561,561,561,561,561,561,561,561,561,561,1902,1903,561,561,561,561,561,561,1387,561,561,561,1392,561,561,561,561,561,561,561,561,561,1432,561,561,561,561,561,1439,561,561,561,1421,561,561,561,561,561,561,561,561,561,561,1437,561,0,585,585,585,1049,585,78112,1079,0,0,0,0,0,0,0,836,0,0,0,0,0,0,811,0,585,585,585,585,1463,585,585,585,585,585,585,1478,585,585,585,1483,0,0,1608,1609,1610,0,1612,1613,0,0,0,0,1618,0,0,0,0,0,679,751,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2144,0,0,1640,0,0,1643,0,1645,0,0,0,0,0,1651,1652,0,0,0,0,785,0,0,0,0,0,0,540,846,540,540,540,540,540,540,3216,540,540,540,540,540,3221,540,3223,540,0,1668,0,0,1670,0,0,0,0,1672,1673,0,0,0,0,0,0,0,69632,73728,0,0,0,347,345,65536,0,1692,0,0,0,0,0,1698,1699,0,1701,1702,1703,0,0,0,0,0,0,810,811,0,0,0,0,811,0,0,0,1719,0,0,0,1723,1724,0,0,0,0,0,0,0,0,0,0,346,0,0,0,0,0,0,0,1715,0,0,0,1735,1585,1585,1737,540,1739,540,1740,540,1742,540,540,540,1746,540,540,540,540,540,540,540,540,540,1759,540,540,540,540,540,3318,540,540,540,540,540,540,540,540,540,540,540,2557,540,540,540,540,540,540,1763,540,540,540,540,1767,540,1769,540,540,540,540,540,540,540,540,2570,540,540,540,540,540,540,540,540,540,3041,540,540,540,540,540,540,540,540,1777,1778,1780,540,540,540,540,540,540,1787,1788,540,540,1791,1792,540,540,540,540,540,540,540,1800,540,540,540,1804,540,540,540,540,540,540,2829,540,540,540,540,540,540,540,540,540,540,1770,540,540,540,540,540,0,1828,561,1830,561,561,1832,561,1834,561,561,561,1838,561,561,561,561,585,585,585,585,0,0,2725,0,0,0,0,0,0,0,69632,73728,0,135168,135168,0,0,65536,135168,1859,561,1861,561,561,561,561,561,561,561,561,1869,1870,1872,561,561,0,2648,0,0,0,0,585,585,585,585,2652,585,585,585,585,585,585,2390,585,585,585,585,585,585,585,585,585,585,3124,585,585,585,585,585,561,561,561,1894,561,561,561,1898,561,561,561,561,561,561,561,1906,585,1926,585,1928,585,585,585,1932,585,585,585,585,585,585,585,585,561,540,585,561,540,540,561,561,585,585,0,0,0,0,585,1945,585,585,585,585,1949,585,585,585,585,1953,585,1955,585,585,561,3146,3147,3148,540,540,561,561,585,585,0,0,0,0,0,0,2488,0,0,0,0,0,0,0,0,0,2096,0,0,0,0,0,0,1974,1975,1976,585,585,1979,1980,585,585,585,585,585,585,585,1988,585,561,0,1288,585,1468,1377,540,540,540,1549,540,561,561,561,1553,585,585,1992,585,585,585,585,585,585,585,2e3,585,585,585,585,585,561,561,540,561,585,561,585,1,12290,3,78112,585,585,585,585,2011,561,540,2014,585,561,1792,540,2019,540,1886,561,0,585,585,1040,585,585,78112,1079,0,0,0,0,0,0,0,0,1134592,0,0,1134592,0,0,0,0,2023,561,1980,585,2027,585,0,2029,0,0,0,0,0,2031,0,0,0,0,0,2761,0,0,0,0,0,0,0,0,0,0,661,0,0,0,0,0,0,2089,0,0,0,0,2093,0,0,0,0,0,0,0,0,0,377,0,0,0,0,0,0,0,0,0,0,2119,0,2121,0,0,0,0,0,0,0,2129,0,0,0,0,786,0,805,0,0,0,0,540,849,540,540,540,540,540,2216,540,540,540,540,540,540,2221,540,540,540,540,540,540,3633,561,561,561,561,561,561,3639,585,585,0,0,0,2134,0,0,0,0,2139,0,0,0,0,0,0,0,0,2990080,2179072,2179072,2502656,2179072,2179072,2179072,2179072,540,2187,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1337,540,2211,2212,540,540,540,540,540,540,2219,540,540,540,540,540,540,540,540,540,2582,540,540,540,0,0,0,561,561,2258,561,2260,561,561,561,561,561,561,2268,561,2270,561,561,561,561,1426,561,561,561,561,561,561,561,561,561,561,561,3343,561,561,561,561,3344,3345,561,561,2343,585,2345,585,585,585,585,585,585,2353,585,2355,585,585,585,585,561,0,0,0,3648,0,540,540,540,540,3652,540,585,585,585,585,2389,585,585,585,585,585,585,585,585,585,585,585,585,2705,585,585,585,585,585,585,585,2402,585,585,2405,2406,585,585,561,2177,585,2345,2260,540,2414,540,540,561,2418,561,561,585,2422,585,585,2029,0,2031,0,0,0,0,795,663,844,0,0,0,0,540,848,540,540,540,540,540,1283,540,540,540,540,540,540,1298,540,540,540,540,540,540,2580,540,540,540,540,540,540,0,2584,0,0,0,2450,0,0,0,0,0,0,0,0,0,0,0,0,0,1239,0,0,0,2459,0,0,0,0,0,2464,0,2466,2467,0,0,0,0,0,0,0,69632,73728,0,0,0,371,0,65536,0,0,2498,0,0,0,0,0,0,0,2505,0,0,0,0,0,0,0,2479,0,0,0,2481,0,0,0,0,2561,540,540,540,2566,540,540,540,540,540,540,540,2573,540,540,540,540,540,540,2838,540,540,540,540,540,540,540,540,540,540,1296,540,540,540,540,540,0,0,0,561,561,561,561,561,561,561,2591,561,561,561,561,561,561,2640,561,561,561,2643,561,561,561,561,561,561,2886,561,561,561,561,561,561,561,561,561,1867,561,561,561,561,561,561,2621,561,561,561,561,2625,561,561,561,2630,561,561,561,561,561,561,585,585,585,585,585,585,0,3661,0,0,561,2637,561,561,561,561,561,561,561,2642,561,561,561,561,561,561,585,585,585,585,585,585,585,585,585,3427,585,2669,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3267,2797,2798,0,0,0,0,0,0,0,0,0,540,540,540,540,540,1741,540,0,0,2982,2983,0,2984,0,2986,0,0,0,0,2988,0,0,0,0,0,680,681,0,0,0,0,0,0,0,0,0,2047,0,0,0,0,0,0,0,0,3007,0,0,2988,0,0,3013,3014,0,3016,0,0,3019,0,0,0,0,800,0,0,0,0,0,0,0,0,0,0,0,0,800,0,0,0,0,3022,540,540,540,540,540,540,3029,540,540,540,540,540,3033,3062,540,561,561,561,561,561,561,3069,561,561,561,561,561,3073,561,0,585,585,1042,585,585,288,1079,0,0,1082,1086,0,0,1090,3103,561,585,585,585,585,585,585,3110,585,585,585,585,585,3114,585,561,0,1543,585,1545,1546,540,540,1548,540,540,561,561,1552,561,0,585,585,1044,585,585,78112,1079,0,0,0,0,0,0,0,794,0,0,0,0,0,0,0,798,3144,585,561,540,585,561,540,3150,561,3152,585,3154,0,0,0,0,0,0,825,0,819,0,664,0,0,0,0,0,0,0,69632,73728,221184,0,0,0,0,65536,0,0,0,3160,0,0,3163,0,0,0,0,0,0,0,0,0,0,396,0,0,0,0,0,0,0,0,0,3170,0,0,0,0,0,0,0,0,0,0,0,540,540,2806,540,540,540,3202,540,540,540,540,540,540,540,3207,540,540,540,540,540,540,540,540,3040,540,540,540,540,540,540,540,540,540,3322,540,540,540,540,540,540,561,3234,561,561,561,561,561,561,561,561,561,561,561,561,561,561,1889,561,3245,561,561,561,561,561,561,561,561,561,561,561,561,561,561,585,585,585,585,585,585,585,3257,585,585,585,585,585,585,585,3262,585,585,585,585,585,561,2013,585,2015,2016,540,2018,540,540,561,2022,561,561,561,3349,561,561,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2667,0,3378,3379,0,3176,0,3383,0,0,0,0,0,0,0,0,0,384,0,0,0,0,0,384,0,0,0,3441,3176,0,0,0,0,0,0,0,0,540,540,540,540,540,2167,540,540,0,0,0,0,3503,0,0,0,0,540,540,540,540,540,540,3512,0,0,3557,3558,3559,540,540,540,3562,540,3564,540,540,540,540,3569,3570,3571,561,561,561,3574,561,3576,561,561,561,561,3581,3582,3583,585,561,1203,540,585,585,561,540,540,540,540,540,561,561,561,561,585,585,585,585,0,0,0,0,0,0,0,0,0,0,585,585,3586,585,3588,585,585,585,585,3593,0,0,0,0,0,0,0,2747,2748,2749,0,0,0,0,0,0,0,2763,0,0,0,0,0,0,0,0,0,254413,254413,254413,254413,254413,254413,254413,254413,1,12290,0,0,540,3628,540,540,540,3632,561,561,3634,561,561,561,3638,585,585,3640,585,585,585,3644,561,0,0,0,0,0,540,540,540,540,540,540,540,3563,540,3565,540,540,540,561,0,0,0,326,327,0,0,0,0,0,0,0,0,0,0,0,674,0,0,0,0,0,366,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1120,0,0,0,0,366,0,0,0,374,376,0,0,0,0,0,0,0,344,0,402,0,0,0,0,0,402,0,0,409,0,0,0,409,69632,73728,0,366,366,0,421,65536,366,0,0,366,421,498,502,498,498,507,498,498,498,507,498,421,421,327,421,0,0,421,0,421,0,0,0,0,0,0,0,372,0,0,0,0,0,0,0,0,0,0,0,421,421,421,421,421,421,421,421,421,421,421,421,421,421,421,421,546,568,546,568,546,546,568,546,592,568,568,568,568,568,568,568,592,592,592,546,592,592,592,592,592,568,568,546,568,592,568,592,1,12290,3,78112,0,0,677,0,0,0,0,0,0,0,0,0,0,0,0,0,1248,0,0,540,540,540,875,540,540,540,540,540,540,540,540,540,540,540,540,540,2183,540,540,561,561,915,561,561,561,561,561,561,945,561,561,561,561,561,561,585,3421,585,585,3423,585,585,585,585,585,585,1018,585,585,585,585,585,585,585,585,585,585,585,585,585,561,0,0,0,0,0,0,540,0,0,0,540,988,585,561,540,540,540,540,540,561,561,561,561,561,3068,561,561,561,561,561,561,561,561,932,561,561,946,561,561,561,561,561,561,934,561,561,561,561,561,561,561,561,561,3240,561,561,561,561,561,561,0,0,1109,0,0,0,0,0,0,0,0,0,0,0,0,0,1604,0,0,0,0,1229,0,1109,0,0,0,0,0,0,0,0,0,0,0,686,0,0,0,0,540,540,540,1281,540,540,540,540,540,1293,540,540,540,540,540,540,540,540,3054,3056,540,540,540,3059,540,3061,1360,914,561,561,561,561,561,561,561,1370,561,561,561,561,561,1382,585,585,1461,585,585,585,585,585,1473,585,585,585,585,585,585,585,585,2914,585,585,585,585,585,585,585,585,3122,585,585,585,585,585,585,585,585,3136,3138,585,585,585,3141,585,3143,0,1720,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1134,0,1990,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1972,585,585,585,2373,585,585,585,585,585,585,585,585,585,585,585,585,585,2370,585,585,585,585,2698,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2383,585,0,0,0,3161,0,0,0,0,0,0,0,0,0,0,0,0,1688,0,0,0,561,561,3235,561,561,561,561,561,561,561,561,561,561,561,561,561,0,2325,0,3663,540,540,540,3665,561,561,561,3667,585,585,585,0,0,540,540,540,2526,540,540,540,540,540,540,540,540,540,540,540,540,3058,540,540,540,422,422,0,422,431,0,422,0,422,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,466,492,492,466,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,492,547,569,547,569,547,547,569,547,593,569,569,569,569,569,569,569,593,593,593,547,593,593,593,593,593,569,569,547,569,593,569,593,1,12290,3,78112,0,0,0,0,2159,0,0,0,540,540,540,540,540,540,540,540,540,540,3032,540,540,540,540,540,2202,540,540,540,540,540,540,540,540,540,540,540,540,540,2208,540,540,2413,540,540,540,2417,561,561,561,2421,585,585,585,0,0,0,0,3293,0,0,0,0,0,3296,0,0,0,2458,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1250,2967,0,0,0,2971,0,0,0,0,0,2977,0,0,0,0,0,0,0,69632,73728,0,0,0,418,0,65536,0,0,2992,0,0,2995,0,0,0,0,0,3e3,0,0,0,0,0,0,0,69632,73728,0,367,367,0,0,65536,367,0,0,0,3023,540,540,540,540,540,540,540,540,540,540,540,540,540,2222,540,540,540,540,3049,540,540,540,540,540,540,540,540,3057,540,540,3060,540,540,540,540,2189,540,540,540,540,540,540,540,540,540,540,540,540,2583,0,0,0,540,540,3063,561,561,561,561,561,561,561,561,561,561,561,561,561,0,2326,0,561,561,3090,561,561,561,561,561,561,561,561,3098,561,561,3101,561,0,585,585,1045,585,585,78112,1079,0,0,0,0,0,0,0,1102,1101,0,0,0,0,0,0,0,0,0,0,0,0,540,1275,540,561,561,3104,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2666,585,585,585,3131,585,585,585,585,585,585,585,585,3139,585,585,3142,585,585,585,585,585,1930,585,585,585,585,585,585,585,585,1941,585,585,585,585,585,1948,585,585,585,585,585,585,585,585,585,585,585,3263,585,585,585,585,0,0,0,0,3179,0,0,0,0,0,0,0,0,0,0,0,732,0,0,0,0,0,0,3192,0,0,0,0,0,0,0,0,0,0,0,540,540,540,540,2808,3201,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1359,540,3213,540,540,540,540,540,540,540,3218,540,3220,540,540,540,540,540,540,561,3227,561,561,561,3230,561,561,561,561,561,982,561,0,585,585,585,585,999,585,585,585,561,561,3246,561,3248,561,561,561,561,561,561,561,561,561,561,585,585,585,585,585,3537,585,585,585,585,3256,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3278,585,585,3268,585,585,585,585,585,585,585,585,3274,585,3276,585,585,561,3370,540,3371,561,3372,585,0,0,0,0,0,0,0,785,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1179,540,540,3328,540,540,540,540,540,540,540,561,561,561,561,561,561,561,561,561,3233,561,561,561,561,3340,561,561,561,561,561,561,561,561,561,3346,561,0,994,1075,1039,585,585,78112,1079,0,0,1081,1085,0,0,1089,3358,585,585,585,585,585,585,585,585,585,3364,585,585,585,585,585,585,585,1981,1982,585,585,585,585,585,585,585,561,540,585,585,561,2951,540,2953,561,561,561,3654,3655,561,561,585,585,3658,3659,585,585,0,0,0,0,0,0,1126,0,0,0,1130,1131,0,0,0,0,0,0,1141,0,1143,0,0,362,362,0,0,0,691,0,0,0,0,696,0,0,0,362,362,362,0,0,0,0,0,0,1154,0,0,0,0,0,1160,0,1162,0,758,0,0,0,0,0,0,758,0,0,0,0,0,758,758,0,0,0,0,803,0,0,0,0,0,0,0,0,0,0,0,0,0,0,832,0,0,0,0,0,0,0,0,0,758,0,0,0,0,0,0,0,0,0,0,0,856,585,999,926,540,540,540,540,910,561,561,561,561,561,1880,1881,1882,561,561,1885,1886,561,561,561,561,561,1896,561,561,561,561,561,561,561,561,561,561,2603,561,2605,561,561,561,982,0,585,585,585,585,1055,78112,1079,0,0,0,0,0,0,0,375,0,378,0,0,0,378,0,0,0,0,1709,0,0,0,0,0,0,0,0,0,0,0,0,0,1619,0,0,585,585,585,2010,585,561,540,585,585,561,540,540,540,540,561,561,561,3066,561,561,561,561,561,561,561,561,561,561,2600,561,561,561,561,561,561,561,561,0,0,987,585,585,585,585,585,0,2039,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1178,0,540,540,540,2172,540,540,540,540,540,540,540,540,540,540,540,540,540,2238,2584,0,0,0,0,561,561,561,561,561,561,561,561,561,561,561,561,2255,0,0,0,0,2461,0,0,0,0,0,0,0,0,0,0,0,747,0,0,0,0,3288,585,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1184,1184,561,561,561,561,3350,561,585,585,585,585,585,585,585,585,585,585,585,2939,585,585,585,585,3368,585,561,540,540,561,561,585,585,0,0,0,0,0,0,0,394,0,0,0,0,0,394,0,0,467,467,485,493,493,485,493,493,493,493,493,493,493,493,518,526,526,526,526,526,526,526,526,526,526,526,526,526,535,526,526,526,526,526,548,570,548,570,548,548,570,548,594,570,570,570,570,570,570,570,594,594,594,548,594,594,594,594,594,570,570,548,570,594,570,594,1,12290,3,78112,767,0,0,771,0,0,0,0,0,0,0,0,0,0,0,0,1704,0,0,0,821,0,0,0,798,0,0,821,0,0,0,0,0,821,821,0,0,0,0,805,0,0,786,0,0,0,0,805,0,0,0,0,0,0,0,805,0,0,0,0,0,798,0,0,0,0,0,0,839,794,0,0,839,0,0,0,0,808,0,0,692,0,0,672,0,692,0,813,675,676,0,0,0,0,0,682,0,0,0,0,0,0,0,0,340,0,0,0,0,0,0,0,540,867,540,540,540,540,540,540,540,540,540,540,540,540,911,540,540,540,540,2215,540,540,540,540,540,540,540,540,540,540,540,1756,540,540,540,540,983,0,585,585,585,1077,1056,78112,1079,0,0,0,0,0,0,0,412,412,0,0,0,0,0,412,0,1180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1621,0,0,1241,0,0,0,0,0,0,0,0,1246,0,0,0,0,0,0,1170,0,0,0,0,0,0,0,0,0,816,0,0,0,0,0,0,540,1305,540,540,540,540,540,540,540,1313,540,540,540,540,540,540,540,540,3332,540,561,561,561,561,561,561,935,561,561,561,561,561,561,561,561,561,3094,561,3096,561,561,561,561,561,561,1340,540,540,1344,540,540,540,540,540,1350,540,540,540,1357,540,540,540,540,540,3458,540,3460,3461,540,3463,540,561,561,561,561,561,2262,561,561,561,561,561,561,561,561,561,561,1399,561,561,561,561,561,1360,914,561,561,561,561,561,561,561,561,561,561,561,1375,561,561,561,561,1848,561,561,561,561,561,561,561,561,561,561,561,2868,561,561,561,561,561,1441,561,561,561,1448,561,561,26027,1360,987,585,585,585,585,585,585,585,1998,585,585,585,585,585,2003,585,585,1485,585,585,585,585,585,585,585,1493,585,585,585,585,585,585,585,585,3261,585,585,585,585,585,585,585,585,3272,585,585,585,585,585,585,585,585,3283,540,585,561,540,540,561,561,585,1522,585,585,1526,585,585,585,585,585,1532,585,585,585,1539,585,585,585,585,585,1996,1997,585,585,585,585,585,585,585,585,585,1531,585,585,585,585,585,585,0,0,0,1595,0,0,0,0,0,0,0,0,0,0,0,0,1716,0,0,0,0,0,1656,0,0,0,0,0,0,0,0,0,1665,0,0,0,0,0,710,0,0,0,0,0,0,0,0,0,0,662,0,0,0,0,0,540,540,540,540,540,1708,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1653,0,0,0,1722,0,0,0,0,0,0,0,0,0,0,0,0,1729,0,0,0,0,0,0,1706,0,0,0,0,0,540,540,540,540,540,540,540,540,540,540,3398,540,3400,540,561,561,1893,561,561,561,561,561,561,1901,561,561,561,561,561,561,1410,561,561,561,561,561,561,561,561,561,1428,561,561,561,561,561,561,561,561,561,1917,26027,0,1922,585,1924,585,561,561,561,1910,1912,561,561,561,561,561,26027,0,585,585,585,585,585,585,2335,585,585,585,585,585,585,585,585,561,0,3622,0,3624,0,0,540,585,585,585,585,1978,585,585,585,585,585,585,585,585,1987,585,585,585,585,585,585,2934,585,585,585,585,585,585,585,585,585,585,2407,561,540,585,585,561,585,585,585,585,1995,585,585,585,585,585,585,585,585,585,2004,2006,0,0,0,2078,0,0,0,2081,0,0,0,0,0,2087,0,0,0,0,0,2774,0,0,0,2778,0,2780,0,0,0,0,0,0,2746,0,0,0,0,0,0,0,0,0,362,362,362,0,0,0,0,0,2103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1265,0,0,0,0,561,561,561,561,561,2249,561,561,561,561,561,561,561,0,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1519,585,585,2346,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2919,585,2448,0,0,0,0,0,0,0,0,2453,0,0,2456,0,0,0,0,0,726,0,0,0,0,0,0,0,0,0,736,0,0,0,2460,0,0,0,0,0,0,0,0,0,0,0,2471,0,0,0,2485,2486,0,0,2489,0,0,2492,0,0,0,0,0,0,0,69632,73728,0,417,417,0,0,65536,417,0,0,2499,0,0,0,0,0,0,0,0,0,0,0,2510,0,0,0,0,815,0,812,795,0,0,817,0,667,0,791,0,0,0,0,1096,0,0,1098,0,0,0,0,0,0,0,0,827,0,0,0,0,0,0,0,0,540,2524,540,540,540,540,540,540,540,540,540,540,540,540,540,1789,540,540,540,540,540,2551,540,540,540,540,540,540,540,540,540,540,540,540,540,2559,540,540,2562,540,540,540,540,540,540,2569,540,540,540,540,540,540,540,540,540,540,3323,540,540,540,540,540,540,2576,540,540,540,2579,540,540,540,540,540,540,540,0,0,0,0,0,755,0,0,0,0,0,0,0,0,765,0,0,0,0,561,2586,561,561,561,561,561,561,561,561,561,561,561,3254,561,561,561,585,585,585,585,585,2672,585,585,585,585,585,585,2677,585,585,585,585,561,0,3646,0,0,0,540,540,540,540,540,540,2529,540,540,540,540,540,540,540,540,540,540,2842,540,540,540,540,540,585,585,585,2683,585,585,585,585,585,585,2690,585,585,585,585,585,585,585,2351,585,585,585,585,585,585,585,585,1508,585,585,585,585,585,585,585,585,2697,585,585,585,585,585,585,585,585,585,2704,585,585,585,2707,0,0,0,0,2735,0,0,0,0,0,0,0,2739,0,0,0,0,0,799,0,0,0,0,0,540,540,540,540,540,2528,540,540,540,540,540,540,540,540,540,540,2234,540,540,540,540,0,540,540,540,2811,540,540,540,540,540,540,540,540,540,540,540,540,540,2821,540,540,540,540,540,2836,540,540,540,2839,540,2841,540,540,540,540,540,540,540,540,3520,561,561,561,561,561,561,561,1450,26027,1360,987,585,585,585,585,585,2845,540,540,540,540,540,540,0,0,561,561,2853,561,561,561,561,561,1913,561,561,561,561,26027,0,585,585,585,585,2333,585,585,585,585,585,585,585,585,585,585,1050,585,585,585,585,561,561,2858,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2284,561,561,561,2874,2875,561,561,561,561,2878,561,561,561,561,561,561,561,0,585,585,585,585,585,585,1005,585,561,561,561,2884,561,561,561,2887,561,2889,561,561,561,561,561,561,1449,561,26027,1360,987,1453,585,585,585,585,2893,561,561,561,561,561,561,0,0,585,585,2901,585,585,585,585,585,585,585,3121,585,585,585,585,585,585,585,585,561,540,585,561,540,3285,561,3287,585,2906,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3367,585,585,2922,2923,585,585,585,585,2926,585,585,585,585,585,585,585,585,3592,561,0,0,0,0,3595,0,585,585,585,2932,585,585,585,2935,585,2937,585,585,585,585,585,585,585,1933,585,585,585,585,1939,585,585,585,2941,585,585,585,585,585,585,561,540,585,585,561,540,540,561,561,585,585,0,0,0,0,0,0,0,0,2963,0,0,0,0,0,585,585,2957,0,0,2960,2961,0,0,0,0,0,0,0,0,0,662,0,662,0,0,0,0,0,0,0,0,3009,0,0,3012,0,0,0,0,0,0,0,0,0,2200253,151552,2200253,0,0,0,151552,540,540,540,540,3037,540,540,540,540,540,540,540,540,540,540,540,540,3325,540,540,540,540,540,540,540,3051,540,540,540,540,540,540,540,540,540,540,540,540,3465,561,561,561,561,561,561,3077,561,561,561,561,561,561,561,561,561,561,561,561,1887,1888,561,561,561,561,561,561,3092,561,561,561,561,561,561,561,561,561,561,561,3480,585,585,585,585,561,561,585,585,585,585,3108,585,585,585,585,3112,585,585,585,585,585,585,585,3135,585,3137,585,585,585,585,585,585,561,0,0,0,0,0,3552,0,0,0,585,585,585,3118,585,585,585,585,585,585,585,585,585,585,585,585,1512,585,585,585,585,585,585,585,3133,585,585,585,585,585,585,585,585,585,585,585,585,2917,585,585,2920,0,0,3168,3169,0,0,0,0,0,0,0,0,0,0,0,0,2071,0,0,0,540,540,540,540,3329,540,540,540,540,540,561,561,561,561,561,561,561,561,561,3412,561,561,3336,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2285,3347,561,561,561,561,561,585,585,585,585,585,585,3354,585,585,585,585,585,585,2404,585,585,585,585,561,2178,585,2346,2261,3389,0,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2534,0,0,0,0,3176,0,0,0,0,0,3447,3448,0,540,540,540,540,2527,540,540,540,540,2531,540,540,540,540,540,540,540,1312,540,540,540,540,540,540,540,540,540,1784,540,540,540,540,540,540,561,561,561,561,3473,561,3475,3476,561,3478,561,585,585,585,585,585,1079,0,0,0,0,0,0,0,0,0,0,254413,0,0,0,0,0,585,585,585,3488,585,3490,3491,585,3493,585,3495,0,0,0,0,0,0,0,69632,73728,313,314,314,419,420,65536,427,585,585,3617,585,3618,585,585,585,561,0,0,0,0,0,0,540,585,585,561,540,540,540,904,540,561,561,561,976,561,561,585,585,3673,3674,3675,3676,0,540,561,585,0,540,561,585,585,585,585,585,1079,0,0,1563,0,0,0,1569,0,0,0,0,0,2789,0,0,0,0,0,0,0,0,0,0,1591,0,0,0,0,0,571,571,571,571,571,571,571,595,595,595,540,595,595,595,595,595,571,571,540,571,595,571,595,1,12290,3,78112,737,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1707,0,0,2040,0,0,0,0,0,0,0,0,0,0,0,0,0,1635,0,0,2170,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1360,0,0,0,561,561,561,561,561,561,561,561,561,2253,561,561,561,561,926,561,561,561,561,561,561,561,561,561,561,561,2307,561,561,561,2310,400,0,0,0,0,378,0,69632,73728,0,0,0,0,423,65536,0,0,0,0,1111,0,0,0,0,0,0,0,0,0,0,0,1687,0,1689,0,0,423,423,0,423,0,437,423,0,423,468,468,468,475,468,468,468,468,468,468,468,468,475,468,468,468,468,468,468,468,468,482,468,494,494,468,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,494,537,549,572,549,572,549,549,572,549,596,572,572,572,572,572,572,572,596,596,596,549,596,596,596,596,596,572,572,549,572,596,572,596,1,12290,3,78112,0,660,661,0,0,0,0,0,0,0,0,0,0,0,0,0,1666,0,0,830,0,0,0,661,0,0,0,0,0,0,0,0,0,0,0,0,0,0,729,0,742,661,0,0,0,0,0,540,847,540,540,540,540,540,540,3330,540,540,540,561,561,561,561,561,3335,861,540,540,540,540,540,540,540,540,540,897,540,540,540,540,540,540,540,1799,540,540,540,540,540,540,1807,540,561,561,916,561,561,561,931,561,561,561,561,561,561,561,561,561,2266,561,561,561,561,561,561,0,0,0,540,989,585,561,540,540,897,540,540,561,561,969,561,561,561,561,561,0,585,585,989,585,585,585,1004,585,1094,0,0,0,0,0,0,0,0,0,1101,1102,0,0,0,0,0,0,1203,0,0,0,0,0,0,0,0,0,0,196608,0,0,0,0,0,540,540,540,1308,540,540,540,540,540,540,540,540,540,540,540,540,540,3222,540,540,1360,914,561,1363,561,561,561,561,561,561,561,561,561,561,1376,1383,561,561,561,1444,561,561,561,561,26027,1360,987,585,1454,585,585,585,585,585,585,2659,585,585,2662,2663,585,585,585,585,585,585,585,2712,540,585,585,561,540,540,540,540,585,585,1488,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3128,585,1521,585,585,585,585,585,585,585,585,585,585,585,1535,585,585,585,585,585,585,2673,585,585,585,2676,585,585,2678,585,2679,561,585,585,1521,585,585,1079,0,0,0,0,0,0,0,0,0,759,0,0,0,0,0,0,1826,561,561,561,561,561,561,561,561,561,561,561,561,561,1841,1842,585,585,2009,585,585,561,540,585,585,561,540,540,540,540,561,561,561,561,1849,561,561,561,561,561,561,561,561,561,561,561,2880,561,561,561,561,561,2063,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2074,540,540,2226,540,540,540,540,540,540,540,540,540,540,540,540,0,0,561,561,561,2854,561,561,561,561,561,561,2301,561,561,561,561,561,561,2306,561,561,561,561,561,561,3079,561,561,561,561,561,3085,561,561,3088,2311,561,561,561,561,561,561,561,561,561,561,561,561,0,0,0,0,0,0,585,585,585,585,585,585,2654,585,585,585,585,585,2374,585,585,585,585,585,585,585,585,585,585,585,585,3140,585,585,585,585,2386,585,585,585,585,585,585,2391,585,585,585,585,585,2396,585,585,585,585,585,2012,540,585,585,561,540,540,540,540,561,561,561,561,2624,561,561,561,561,561,561,2632,561,561,561,561,561,2288,561,561,561,561,561,561,561,561,561,561,2631,561,561,561,561,561,2435,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2114,0,0,0,0,2476,0,0,0,0,0,0,0,0,0,0,0,748,0,0,0,0,0,2732,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1590,1591,0,0,0,2772,0,0,0,0,2777,0,0,0,0,0,0,0,540,562,540,562,540,540,562,540,586,540,540,2810,540,540,540,540,540,540,2818,540,540,540,540,540,540,540,889,540,540,540,540,907,540,540,540,540,540,540,540,2849,540,540,0,0,561,561,561,561,561,561,561,561,561,1836,561,561,561,561,561,2857,561,561,561,561,561,561,2865,561,561,561,561,561,561,561,561,3081,561,561,561,561,561,561,561,561,561,561,561,2897,561,561,0,0,585,585,585,585,585,585,585,1467,1474,585,585,585,585,585,585,585,585,3621,0,0,0,0,0,0,540,2905,585,585,585,585,585,585,2913,585,585,585,585,585,585,585,585,585,1983,585,585,1986,585,585,585,585,585,585,585,2945,585,585,561,540,585,585,561,540,540,561,561,585,585,0,0,0,0,0,3376,0,585,3280,585,585,585,585,585,585,561,540,585,561,540,540,561,561,585,585,0,3155,0,0,585,585,585,3587,585,3589,585,585,585,561,0,0,0,0,0,0,0,2791,0,0,0,2793,0,0,0,0,0,0,0,0,3600,540,540,540,540,540,540,540,540,540,540,540,1314,540,540,540,540,3607,561,561,561,561,561,561,561,561,561,561,561,3614,585,585,585,585,585,585,2686,585,585,585,585,585,585,585,585,585,1045,585,585,585,585,585,972,561,3653,561,561,561,561,585,3657,585,585,585,585,0,0,0,0,0,0,1204,0,0,0,0,0,0,0,0,0,362,0,290,0,0,0,345,469,469,469,453,453,469,453,453,453,453,453,453,453,453,519,519,519,519,519,519,519,519,519,519,519,519,519,519,519,519,550,573,550,573,550,550,573,550,597,573,573,573,573,573,573,573,597,597,597,550,597,597,597,597,597,573,573,550,573,597,573,597,1,12290,3,78112,862,540,540,876,540,540,540,540,540,540,540,540,540,540,540,540,1315,540,540,540,585,1019,585,585,585,585,585,585,585,585,585,585,585,585,585,561,0,0,0,3498,0,0,1123,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1607,0,0,0,0,1254,0,0,0,0,0,0,0,0,0,0,0,0,2111,0,0,0,540,1341,540,540,540,540,540,1348,540,540,540,540,540,540,540,540,540,540,3333,561,561,561,561,561,585,585,585,585,1505,585,585,585,585,585,585,585,585,585,585,585,585,3365,585,585,585,585,585,1523,585,585,585,585,585,1530,585,585,585,585,585,585,585,1468,585,585,585,585,585,585,585,585,585,2378,585,585,585,585,585,585,561,585,585,585,1557,585,1079,0,1561,0,0,0,1567,0,0,0,0,0,803,0,0,0,0,0,0,0,803,0,0,0,0,540,540,540,540,540,1573,0,0,0,1579,0,0,0,0,0,0,0,0,0,0,0,749,0,0,0,0,0,0,0,1695,0,0,0,0,0,0,0,0,0,0,0,0,2127,0,0,0,540,1762,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1358,540,1843,561,561,561,561,561,561,561,561,561,1854,561,561,561,561,561,561,3239,561,561,561,561,561,561,561,561,561,3578,561,561,585,585,585,585,0,2064,2065,0,0,0,0,0,0,0,0,0,0,0,0,0,1717,0,0,0,0,0,0,2135,0,0,0,0,0,0,0,0,0,0,0,1159,0,0,0,0,2186,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1808,540,540,2213,540,540,540,540,2218,540,540,540,540,540,540,540,540,540,1754,540,540,540,540,540,540,2240,0,0,561,561,561,561,561,561,561,561,561,561,561,561,561,1401,561,561,2298,561,561,561,561,2303,561,561,561,561,561,561,561,561,561,561,3083,561,561,561,561,561,585,585,585,2388,585,585,585,585,585,585,585,585,585,585,585,585,1938,585,585,585,3034,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2210,0,0,0,3380,3176,0,0,0,0,0,0,0,0,0,0,0,1175,0,0,0,0,540,540,3404,540,561,561,561,561,561,561,561,561,561,561,561,561,2282,561,561,561,561,561,561,561,3419,561,585,585,585,585,585,585,585,585,585,585,1049,585,585,585,585,561,540,3454,540,540,540,540,540,540,540,540,540,540,561,561,561,561,3523,561,561,561,3469,561,561,561,561,561,561,561,561,561,561,585,585,585,585,3484,385,387,337,0,0,0,0,0,0,336,0,0,337,0,0,0,0,0,1097,0,0,0,0,0,0,0,0,0,0,2057,0,0,0,0,0,0,0,0,384,0,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,1139,1140,0,0,0,0,0,362,362,0,0,0,0,0,703,0,0,0,0,0,0,0,0,0,0,2048,0,0,0,0,0,0,0,336,0,0,438,0,444,0,470,470,470,470,470,470,470,551,574,551,574,551,551,574,551,598,480,470,470,470,499,476,499,499,499,499,499,499,499,499,470,470,476,470,470,470,470,470,470,470,470,470,470,480,470,481,480,470,470,470,470,574,574,574,574,574,574,574,598,598,598,551,598,598,598,598,598,574,574,551,574,598,574,598,1,12290,3,78112,0,0,0,678,0,0,0,0,0,0,0,0,0,0,0,0,2153,0,0,0,0,0,693,0,0,0,0,0,0,362,362,362,0,0,0,0,0,0,1217,0,0,0,0,0,0,0,0,0,1220,0,0,1223,0,0,0,0,0,0,663,0,791,0,0,0,0,0,0,0,795,0,0,0,0,0,2972,0,0,0,0,0,0,0,0,0,0,2097,0,2099,0,0,0,0,0,804,0,0,0,0,0,812,0,0,0,0,706,0,0,0,0,0,0,0,0,715,0,717,0,0,0,831,0,0,0,663,834,0,791,0,0,0,0,0,840,0,0,0,0,0,2996,0,0,0,0,0,0,0,0,0,0,2429,2430,0,0,0,0,863,540,540,877,540,540,540,888,540,540,540,540,906,540,540,540,540,540,1311,540,540,540,540,540,540,540,540,540,540,540,2843,540,540,540,540,561,561,917,561,561,561,933,561,561,947,561,561,561,561,960,561,0,995,585,1076,1046,585,78112,1079,0,0,0,0,0,0,0,0,2686976,2736128,0,0,2531328,2707456,0,3190784,561,561,561,978,561,561,561,0,585,585,990,585,585,585,1006,585,585,585,585,585,2349,585,585,585,585,2354,585,585,585,585,585,585,585,2377,585,585,585,585,585,585,585,585,561,540,561,585,0,0,0,0,585,1020,585,585,585,585,1033,585,585,585,585,1051,585,585,585,561,540,585,561,3149,540,3151,561,3153,585,0,0,0,0,0,0,1660,0,0,0,0,0,0,0,0,0,1173,0,0,0,0,0,0,0,0,0,540,990,585,561,540,540,540,540,540,561,561,561,561,3067,561,561,561,561,3071,561,561,561,561,0,0,0,1215,0,0,0,0,0,0,0,0,0,0,0,0,2431,0,2433,0,1238,0,0,0,0,1270,0,0,0,0,0,0,0,540,540,540,540,3561,540,540,540,540,540,540,540,540,561,561,561,561,561,561,561,585,585,585,540,585,585,585,585,585,585,585,585,585,1491,585,585,585,585,585,585,585,585,585,585,585,1495,585,585,585,585,561,585,585,1556,585,585,1079,0,0,0,0,0,0,0,0,0,1100,0,0,0,0,0,0,1622,0,0,1625,0,1627,0,0,0,0,0,0,0,0,0,0,839,540,540,540,540,859,540,1744,540,540,540,540,540,540,540,540,1755,540,540,540,540,540,540,540,2176,540,540,2180,540,540,540,2184,540,561,561,561,1847,561,561,561,561,561,561,561,561,561,561,561,561,2294,561,561,561,0,0,2117,0,0,0,0,0,0,0,0,0,0,0,0,0,1730,0,0,0,0,0,0,2148,0,0,0,0,0,0,0,0,0,0,0,1207,0,0,0,0,0,0,0,561,561,561,561,2248,561,561,561,561,561,561,561,561,3095,3097,561,561,561,3100,561,3102,561,561,2313,561,561,561,561,561,561,561,561,561,561,0,0,0,0,0,0,585,585,2651,585,585,585,585,585,585,585,2660,585,585,585,585,585,2665,585,585,2398,585,585,585,585,585,585,585,585,585,585,561,540,2410,585,561,0,540,585,585,561,540,540,540,540,540,561,561,561,561,585,585,585,585,0,3669,540,3670,0,2436,0,0,0,0,0,0,2441,0,0,0,2444,2445,0,0,0,0,0,3010,0,0,0,0,0,0,0,0,0,0,303,304,0,0,0,0,2497,0,0,0,0,0,0,0,0,0,2506,0,0,0,0,0,0,0,69632,73728,163840,0,0,0,0,65536,0,2512,0,0,0,0,2515,0,0,0,0,0,0,0,0,0,2523,540,2536,2537,540,540,540,540,540,2542,540,2544,540,540,540,540,2548,561,2595,561,561,2598,2599,561,561,561,561,561,2604,561,2606,561,561,561,561,1863,561,561,561,561,561,561,561,561,561,561,561,2890,561,561,561,561,561,561,561,2610,561,561,561,561,561,561,561,561,2616,561,561,561,561,561,2276,561,561,2279,561,561,561,561,561,561,561,1915,561,561,26027,1920,585,585,585,585,2636,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2608,2668,585,2670,585,585,585,585,2674,585,585,585,585,585,585,585,585,585,2675,585,585,585,585,585,585,2680,585,585,585,585,585,585,585,585,2688,585,585,585,585,585,585,585,1950,585,585,585,585,1954,585,585,585,2696,585,585,585,585,2700,585,585,585,585,585,585,585,585,585,585,1494,585,585,585,585,585,561,2720,561,561,585,2722,585,585,0,0,0,0,0,0,0,0,0,2964,0,0,0,0,2770,0,0,0,2773,0,0,2776,0,0,0,0,0,0,0,0,331,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1691,0,2786,0,0,0,0,0,0,0,0,0,0,0,2795,0,0,0,0,0,3171,0,0,0,0,0,0,0,0,0,0,1245,0,0,0,0,0,540,2825,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1773,540,540,2835,540,540,540,540,540,540,540,540,540,540,540,540,540,2844,540,540,2847,540,540,2850,540,0,0,2851,561,561,561,561,561,561,1851,561,561,561,561,1855,561,561,561,561,561,2883,561,561,561,561,561,561,561,561,561,561,561,561,561,2892,561,561,2895,561,561,2898,561,0,0,2899,585,585,585,585,585,585,585,1965,585,585,585,1970,585,585,585,585,585,2931,585,585,585,585,585,585,585,585,585,585,585,585,585,2940,585,585,2943,585,585,2946,585,561,2948,585,2949,2950,540,540,561,561,561,561,1878,561,561,561,561,1884,561,561,561,561,561,561,936,561,561,561,561,561,561,561,561,561,984,0,585,585,585,585,585,585,1007,585,0,2968,2969,0,0,0,0,2974,0,0,0,0,0,0,0,0,331,0,331,331,0,0,0,0,3020,0,0,540,540,3025,540,540,540,540,540,540,540,540,540,540,540,3043,540,540,540,540,540,540,540,3050,540,540,3052,540,540,540,540,540,540,540,540,540,540,1352,540,540,540,540,540,561,561,561,3091,561,561,3093,561,561,561,561,561,561,561,561,561,2602,561,561,561,561,561,561,561,561,585,585,3106,585,585,585,585,585,585,585,585,585,585,585,1496,585,585,585,1500,585,585,585,3132,585,585,3134,585,585,585,585,585,585,585,585,585,1040,585,585,585,585,585,967,3158,0,0,0,3162,0,0,0,0,0,0,0,0,0,0,0,1222,0,0,1225,0,3190,0,0,3193,0,0,0,0,0,0,0,0,0,0,540,540,540,540,2166,540,540,540,540,540,3214,540,540,540,540,540,540,540,3219,540,540,540,540,540,540,540,2541,540,2543,540,540,540,540,540,540,540,540,2581,540,540,540,540,0,2584,0,561,561,561,3236,3237,561,561,561,561,561,3241,561,561,561,561,561,561,3250,561,561,561,561,561,561,561,561,585,585,585,585,3536,585,585,585,585,561,561,561,3247,561,561,561,561,561,561,561,561,561,561,561,585,3481,585,3483,585,585,585,585,3269,585,585,585,585,585,585,585,585,3275,585,585,585,585,585,585,2701,585,585,585,585,585,585,585,2706,585,0,0,3308,0,0,0,0,0,0,0,0,0,0,0,0,540,540,540,856,540,585,3359,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1057,561,0,0,0,0,3176,0,0,0,0,0,0,0,3386,0,0,0,0,0,1169,0,1171,0,0,0,0,1176,0,0,0,0,0,1185,0,0,0,0,0,0,0,0,0,0,669,0,0,0,0,0,585,3429,585,585,585,585,585,585,561,540,561,585,0,3437,0,0,0,0,0,3300,0,3176,3302,0,0,3305,0,0,0,0,0,0,1113,0,0,0,0,0,0,0,0,0,362,362,362,0,703,0,0,3440,0,0,0,3176,0,0,0,0,0,0,0,0,540,540,3452,540,540,540,540,3457,540,540,540,540,3462,540,540,561,561,3467,561,0,997,1037,585,1048,585,78112,1079,0,0,0,0,0,0,0,776,0,0,0,0,0,783,0,0,561,561,561,3472,561,561,561,561,3477,561,561,585,585,3482,585,585,585,585,585,585,3259,3260,585,585,585,585,3264,3265,585,585,585,585,585,585,3120,585,585,585,585,585,3126,585,585,3129,585,585,3487,585,585,585,585,3492,585,585,561,0,0,0,0,0,0,0,69632,73728,167936,0,0,0,0,65536,0,3499,0,0,0,0,0,3505,0,0,540,540,540,540,540,540,540,540,540,3397,540,540,540,540,540,540,540,540,3517,540,540,3519,561,561,561,561,561,561,561,561,3252,561,561,561,561,561,561,585,561,561,561,3530,561,561,3532,585,585,585,585,585,585,585,585,585,1042,585,585,585,585,585,969,585,585,3543,585,585,3545,561,0,0,0,0,0,0,0,0,0,1144,0,362,362,0,1147,0,540,540,3629,3630,540,540,561,561,561,3635,3636,561,561,585,585,585,585,0,2029,0,0,0,0,0,2031,0,0,3641,3642,585,585,561,0,0,0,0,0,540,540,540,540,540,540,3395,540,540,540,540,540,540,3401,561,561,585,585,0,540,561,585,0,540,561,585,3681,3682,3683,3684,339,340,341,342,343,0,0,0,0,0,0,0,0,0,0,0,1617,0,0,0,0,0,0,0,388,0,0,0,0,0,0,0,0,0,0,0,0,2469,0,2470,0,342,342,343,342,0,341,342,445,454,471,471,471,471,471,471,471,471,471,471,471,471,471,471,471,471,471,471,486,495,495,503,495,505,495,495,505,505,495,505,520,520,520,520,520,520,520,520,520,520,520,520,520,520,520,520,552,575,552,575,552,552,575,552,599,575,575,575,575,575,575,575,599,599,599,552,599,599,599,599,599,575,575,552,575,599,575,599,1,12290,3,78112,0,0,0,646,0,0,0,0,651,652,653,654,655,656,657,0,0,0,0,1144,0,0,1259,0,0,0,0,0,0,0,0,0,2957312,0,0,0,0,0,0,0,692,0,0,0,0,0,0,699,362,362,362,0,0,0,0,0,0,1232,0,0,0,0,0,0,0,0,0,735,0,800,0,0,0,0,721,0,723,0,0,0,0,0,0,0,0,0,733,0,0,0,0,0,1202,0,0,0,0,0,0,0,0,0,0,333,334,0,0,0,0,0,646,752,753,754,0,0,0,0,0,760,761,0,0,0,0,0,0,1271,0,0,0,0,0,0,540,540,540,3026,540,540,540,540,540,540,540,540,540,540,2220,540,540,540,540,540,0,761,0,0,790,0,0,0,0,0,0,0,0,0,797,0,0,0,0,1152,0,0,0,0,1157,0,0,0,0,0,0,0,2106,0,0,0,0,0,0,0,0,1219,0,0,0,0,0,0,0,723,0,692,814,0,0,0,0,761,0,0,0,0,0,0,0,558,581,558,581,558,558,581,558,605,0,754,823,824,0,0,0,0,0,0,754,0,0,828,699,0,0,0,0,1168,0,0,0,0,0,0,0,0,0,0,0,1633,0,0,0,0,0,0,833,0,0,0,835,0,0,0,692,699,0,0,692,833,0,0,0,0,0,0,0,0,0,692,540,540,853,857,860,540,868,540,540,882,884,887,540,540,540,898,902,540,540,540,540,540,540,1766,540,540,540,540,540,540,540,540,540,540,1786,540,540,540,540,540,561,561,561,923,927,930,561,938,561,561,561,953,955,958,561,561,561,561,1879,561,561,561,561,561,561,561,561,561,561,561,2641,561,561,561,561,561,561,561,561,2648,0,585,585,585,585,585,585,585,561,540,585,585,561,2717,540,540,540,585,585,585,1026,1028,1031,585,585,585,1043,1047,585,585,585,585,970,0,0,0,1060,585,1062,1063,853,540,898,902,1068,923,561,970,974,561,561,561,561,0,585,585,585,996,1e3,1003,585,1011,1073,0,996,585,1043,1047,1078,78112,1079,0,0,0,0,0,0,0,560,583,560,583,560,560,583,560,607,0,0,1199,0,0,0,0,0,0,0,0,0,1208,0,0,0,0,0,1231,0,0,0,0,1236,0,0,0,0,0,0,0,69632,73728,0,0,0,0,422,65536,0,540,1322,540,540,540,540,540,540,540,540,540,1331,540,540,1338,540,540,540,540,2228,540,540,540,540,540,540,540,540,540,540,0,0,561,2852,561,561,561,561,561,561,561,561,1422,561,561,1429,561,561,561,561,561,561,561,561,561,2879,561,561,561,561,561,561,561,1442,561,561,561,561,561,561,26027,1360,987,585,585,585,585,585,585,585,2925,585,585,585,585,585,585,585,585,561,540,561,585,3436,0,3438,0,585,1503,585,585,585,585,585,585,585,585,585,585,1513,585,585,1520,1667,0,1669,0,0,0,1671,0,748,0,0,0,0,0,0,0,650,0,0,0,0,0,0,0,0,0,282624,282624,282624,282624,282624,282624,282624,282624,282624,282624,0,0,1602,0,0,0,0,0,0,540,1738,540,540,540,540,540,540,540,2584,0,561,561,561,561,561,561,561,561,561,561,561,1839,561,561,561,1743,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2238,540,1776,540,540,1781,540,540,540,540,540,540,540,540,540,540,540,1353,540,540,540,540,0,561,1829,561,561,561,561,561,561,1835,561,561,561,561,561,561,1864,561,561,561,1868,561,561,1873,561,561,1907,561,561,561,561,561,561,561,561,561,26027,0,585,1923,585,585,585,585,585,585,3270,585,585,585,585,585,585,585,585,585,1968,585,585,585,585,585,585,585,585,585,585,1929,585,585,585,585,585,585,585,585,585,585,585,1511,585,585,585,585,585,1958,585,585,585,1962,585,585,1967,585,585,585,585,585,585,585,1469,585,585,585,585,585,585,585,585,585,2392,585,585,585,2395,585,585,0,1086,0,0,0,2034,0,1090,0,0,0,2036,0,1094,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1226,585,585,585,585,2362,585,585,585,585,585,585,585,585,585,585,585,1534,585,585,585,585,2585,0,1826,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2271,585,585,585,2710,585,585,585,561,540,585,585,561,540,540,540,540,540,540,1814,540,540,540,540,1820,540,540,540,1360,0,0,0,0,2744,0,0,0,0,0,0,0,0,0,0,0,1649,0,0,0,0,585,585,585,585,2924,585,585,585,585,585,585,585,585,585,585,585,1937,585,585,585,585,561,561,3338,561,561,561,561,561,561,561,561,561,561,561,561,561,1857,561,561,0,0,0,0,3176,0,0,0,0,0,0,3385,0,0,0,0,0,0,1628,1629,1630,0,0,0,0,0,0,0,0,1159168,362,0,0,0,0,0,0,3402,540,540,540,561,561,561,3407,561,561,561,561,3411,561,561,561,561,1391,561,561,561,561,561,561,561,561,561,561,561,1414,561,561,561,561,561,561,3417,561,561,561,585,585,585,3422,585,585,585,585,3426,585,585,585,585,585,2375,2376,585,585,585,585,585,585,585,585,585,1476,585,585,585,585,585,585,585,585,585,585,3432,585,585,585,561,540,561,585,0,0,0,0,0,0,1644,0,0,0,0,0,0,0,0,0,661,0,661,0,0,0,0,0,0,0,0,3176,0,0,0,0,3446,0,0,0,540,540,540,3392,540,540,540,540,3396,540,540,540,540,540,540,540,3039,540,540,540,540,540,3045,540,540,540,540,3455,540,540,540,3459,540,540,540,540,540,561,561,561,561,561,2626,561,561,561,561,561,561,2633,561,561,561,561,3470,561,561,561,3474,561,561,561,561,561,585,585,585,585,585,585,585,3111,585,585,585,585,585,585,3485,585,585,585,3489,585,585,585,585,585,561,0,0,0,0,0,540,540,540,540,540,540,3603,540,3604,540,540,540,561,561,585,585,0,540,561,585,3677,3678,3679,3680,0,540,561,585,585,585,585,585,1079,0,1562,0,0,0,1568,0,0,0,0,0,1256,0,0,0,0,0,0,0,0,0,0,300,300,0,0,0,0,386,0,0,0,390,386,0,0,0,0,0,0,0,0,0,0,1174,0,0,0,0,0,0,0,0,402,0,344,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,1201,0,0,0,0,0,0,0,0,0,0,0,357,0,0,0,0,521,521,521,521,0,0,0,0,0,0,0,0,521,521,521,521,521,521,521,553,576,553,576,553,553,576,553,600,576,576,576,576,576,576,576,600,600,600,553,600,600,600,600,600,576,576,617,622,600,622,628,1,12290,3,78112,561,561,561,979,561,561,561,0,585,585,585,585,585,585,585,585,585,2927,585,585,585,585,585,585,0,0,0,540,1061,585,561,540,540,540,540,540,561,561,561,561,561,3238,561,561,561,561,561,561,561,561,561,561,1433,561,561,561,561,561,1107,0,0,0,0,1112,0,0,0,0,0,0,0,0,0,0,1190,0,0,0,0,0,561,561,561,1389,561,561,561,561,561,561,561,561,561,561,561,561,2308,2309,561,561,561,1403,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2296,2297,1440,561,561,561,561,561,561,561,26027,1360,987,585,585,585,585,585,585,585,2947,540,585,585,561,540,540,561,561,1574,0,0,0,1580,0,0,0,0,0,0,0,0,0,0,0,1664,0,0,0,0,1606,0,0,0,0,0,0,0,0,0,0,0,0,0,1620,0,0,0,0,1216,0,0,0,0,0,0,0,0,0,0,0,2110,0,0,0,0,561,561,561,1877,561,561,561,561,561,561,561,561,561,561,561,561,2322,0,0,0,2052,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2155,0,2116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1676,0,2241,0,0,561,561,561,561,561,561,561,561,561,561,561,561,561,2295,561,561,561,561,2274,561,561,561,561,2278,561,2280,561,561,561,561,561,561,1897,561,561,561,561,561,561,561,561,561,1397,561,561,561,561,561,561,2359,585,585,585,585,2363,585,2365,585,585,585,585,585,585,585,585,585,3123,585,3125,585,585,585,585,0,0,0,2500,0,0,0,0,0,0,0,0,0,0,0,0,2494,2495,0,0,561,2622,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2607,561,0,3021,0,540,540,540,540,540,540,540,540,540,540,540,540,540,2533,540,0,0,0,0,3176,3382,0,0,3384,0,0,0,0,0,0,0,728,0,0,0,0,0,0,0,0,1115,0,0,0,0,0,0,0,0,0,540,3391,540,540,3393,540,540,540,540,540,540,540,540,540,540,1785,540,540,540,1790,540,0,0,0,0,3176,0,3443,0,0,0,0,0,3449,540,540,540,540,540,1782,540,540,540,540,540,540,540,540,540,540,540,2832,540,540,540,540,864,540,540,540,540,540,540,540,540,540,540,540,540,540,540,912,1095,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2447,0,0,1624,0,0,0,0,0,0,0,0,0,0,0,0,0,2060,0,0,1827,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2620,345,345,347,345,0,0,345,0,345,0,0,0,0,346,0,0,0,0,0,3310,0,0,3312,0,0,0,0,0,0,540,585,585,561,540,540,540,540,540,561,561,561,561,561,561,3410,561,561,561,561,561,0,0,0,345,345,347,345,345,345,345,345,345,512,345,345,345,345,345,345,345,345,345,345,345,345,345,345,345,345,554,577,554,577,554,554,577,554,601,577,577,577,577,577,577,577,601,601,601,554,601,601,601,601,601,577,577,554,577,601,577,601,1,12290,3,78112,0,722,0,724,0,0,0,0,0,0,0,0,0,0,0,0,2508,0,0,0,0,739,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1690,0,0,0,811,0,0,810,0,0,0,0,0,755,0,0,819,0,0,0,0,1269,0,0,0,0,0,0,0,1181,540,540,540,540,540,1797,540,540,540,540,540,540,540,540,540,540,540,3464,561,561,561,561,540,540,872,540,540,540,540,890,892,540,540,903,540,540,540,540,540,540,2175,540,2177,540,540,540,540,540,540,2185,561,561,918,924,561,561,561,561,942,561,561,561,561,561,962,964,561,561,975,561,561,561,561,0,585,585,991,997,585,585,585,585,585,585,585,3271,585,585,585,585,585,585,3277,585,1015,585,585,585,585,585,1035,1037,585,585,1048,585,585,585,585,561,0,0,0,0,0,540,540,3650,3651,540,540,0,0,0,540,991,585,561,854,892,540,903,540,924,964,561,975,0,0,0,1151,0,1153,0,1155,0,0,0,0,0,0,0,0,713,0,0,0,0,0,0,0,0,1181,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1706,0,0,1198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1731,0,1212,1213,0,0,0,0,0,1218,0,0,0,0,0,0,0,0,729,0,0,0,0,0,0,0,540,540,1307,1309,540,540,540,540,540,540,540,540,540,540,540,540,1316,540,540,1319,540,540,1343,540,540,540,540,540,540,540,540,1354,1355,540,540,540,540,540,1813,540,540,540,540,540,540,540,540,540,1360,1360,914,561,561,561,1366,561,561,561,561,561,561,561,561,561,561,26027,1921,585,585,585,585,561,561,1420,561,561,561,561,561,561,561,1434,561,561,561,561,561,561,3342,561,561,561,561,561,561,561,561,561,3080,561,561,561,561,561,561,561,561,2319,561,561,561,561,0,0,0,561,561,561,1445,1446,561,561,561,26027,1360,987,585,585,585,1457,585,585,585,585,585,2403,585,585,585,585,585,561,2409,585,2411,2412,585,1487,1489,585,585,585,585,585,585,585,585,585,585,585,585,585,585,3366,585,585,585,585,1525,585,585,585,585,585,585,585,585,1536,1537,585,585,585,585,585,585,3434,585,561,540,561,585,0,0,0,3439,585,1542,0,540,585,585,561,540,1547,540,540,1550,561,1551,561,561,561,561,1895,561,561,561,1900,561,561,561,561,561,561,561,0,585,585,988,585,585,585,585,585,1554,585,1555,585,585,1558,1079,0,0,0,0,0,0,0,0,0,2069,0,0,0,0,2073,0,0,1678,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2037,0,0,0,1694,0,0,0,0,0,0,0,0,0,0,0,0,0,2072,0,0,0,1637,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2051,0,0,561,561,561,561,561,561,1833,561,561,561,561,561,561,561,561,26027,1360,987,585,585,585,585,585,561,1908,561,561,561,561,1914,561,561,561,26027,0,585,585,585,585,585,2334,585,585,585,585,585,585,585,585,585,585,2938,585,585,585,585,585,585,585,1927,585,585,585,585,585,585,585,585,585,585,585,585,585,1055,585,561,585,585,585,1994,585,585,585,585,585,585,585,585,2002,585,585,585,585,585,585,2711,561,540,585,585,561,540,540,540,540,540,540,2217,540,540,540,540,540,540,540,540,540,540,1802,540,540,540,540,540,585,2008,585,585,585,561,540,585,585,561,540,540,540,540,561,561,561,561,2261,561,561,561,561,561,561,561,561,561,561,561,2891,561,561,561,561,0,2076,0,0,0,0,0,0,0,0,2084,0,0,0,0,0,0,0,69632,73728,266240,0,0,0,0,65536,0,2088,0,0,2090,0,0,0,0,0,0,0,2098,0,0,0,0,0,0,1725,0,0,0,0,0,0,0,0,0,643,0,0,0,0,0,0,0,0,2146,0,0,0,2146,0,0,2151,2152,0,0,0,0,0,0,0,274432,274432,274432,0,274432,274432,274432,274432,274432,2156,0,0,0,0,0,0,0,2162,540,540,540,540,540,2168,540,540,540,540,2538,540,540,540,540,540,540,540,540,540,540,540,540,1821,540,540,1360,540,2200,540,2203,540,540,540,540,540,540,540,540,540,540,2209,540,540,540,540,2578,540,540,540,540,540,540,540,540,0,2584,0,0,0,0,799,0,0,0,0,0,0,0,0,0,0,0,0,799,0,0,0,0,0,0,0,0,2244,561,561,561,561,561,561,2251,561,561,561,561,561,561,3351,585,585,585,585,585,585,585,3356,585,561,561,2300,561,561,561,561,561,561,561,561,561,561,561,561,561,2323,0,0,0,2329,585,585,585,585,585,585,2336,585,585,585,585,585,585,585,1470,585,585,585,585,1480,585,585,585,585,585,2360,585,585,585,585,585,585,2366,585,2368,585,2371,585,585,585,585,585,585,3546,0,0,3549,3550,0,0,0,0,0,0,303,0,0,0,0,0,0,0,0,0,0,2912256,0,3207168,2465792,0,0,2385,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1989,2472,0,0,0,0,0,0,0,0,0,2480,0,0,0,0,0,0,0,286720,286720,0,286720,286720,1,12290,3,0,0,0,0,0,2514,0,0,0,0,0,0,0,0,0,2522,0,0,0,0,1575,0,0,0,0,0,1581,0,0,0,0,0,0,0,69632,73728,172032,0,0,0,0,65536,0,561,561,2596,561,561,561,561,561,2601,561,561,561,561,561,561,561,0,585,585,992,585,585,585,585,585,585,2681,585,585,585,585,585,585,585,585,585,585,585,585,585,585,1956,585,2719,561,561,561,2721,585,585,585,2723,2724,0,0,0,0,0,0,0,2801,0,0,0,540,2805,540,540,540,2742,0,2743,0,0,0,0,0,0,0,0,0,0,0,0,0,2100,0,0,0,0,2758,0,0,0,0,0,0,0,0,0,0,0,0,0,2128,0,0,540,2809,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2223,2224,540,2846,540,540,540,540,540,0,0,561,561,561,561,2855,561,2856,561,2894,561,561,561,561,561,0,0,585,585,585,585,2903,585,2904,585,2942,585,585,585,585,585,561,540,585,585,561,540,540,561,561,585,585,0,0,0,3374,0,0,3377,0,0,0,540,3024,540,540,540,540,540,540,540,540,540,540,540,1771,540,540,540,540,561,561,585,3105,585,585,585,585,585,585,585,585,585,585,585,585,2369,585,585,585,585,585,3145,540,585,561,540,540,561,561,585,585,0,0,0,0,0,0,2066,0,0,0,0,0,0,0,0,0,362,297,0,0,0,0,0,0,0,3390,540,540,540,540,3394,540,540,540,540,540,540,540,540,540,2179,540,540,540,540,540,540,540,3403,540,540,3405,561,561,561,561,3409,561,561,561,561,561,561,2277,561,561,561,561,561,561,561,561,561,3082,561,3084,561,561,561,561,561,561,561,3418,561,561,3420,585,585,585,585,3424,585,585,585,585,585,585,585,3591,585,561,0,0,0,0,0,0,0,3176,0,3303,0,0,0,0,3307,0,585,585,585,585,585,3433,585,585,561,540,561,585,0,0,0,0,0,0,2137,0,0,0,0,0,0,0,0,0,1129,0,0,0,0,0,0,0,3500,0,3502,0,0,0,0,0,540,540,540,540,540,3511,540,540,540,540,2812,540,2815,540,540,540,540,2820,540,540,540,2823,540,540,540,540,3631,540,561,561,561,561,561,3637,561,585,585,585,585,585,1079,0,0,0,1564,0,0,0,1570,0,585,585,3643,585,561,3645,0,3647,0,0,540,540,540,540,540,540,540,1286,540,540,540,540,540,540,540,540,540,540,3208,540,540,540,540,540,365,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2496,398,0,0,0,0,0,365,373,401,0,0,0,0,0,365,0,0,393,0,0,0,0,348,0,0,365,0,393,0,406,408,0,0,365,373,0,69632,73728,0,0,0,0,424,65536,0,0,0,0,1596,0,0,0,0,0,0,0,0,0,0,0,362,362,0,0,0,424,424,0,424,0,408,424,447,455,0,0,0,0,0,0,0,777,0,0,0,0,0,0,0,644,0,406,0,496,496,0,496,496,496,496,496,496,496,496,522,522,522,522,455,455,455,530,455,531,455,455,522,536,522,522,522,522,538,555,578,555,578,555,555,578,555,602,578,578,578,608,608,608,578,602,602,602,555,602,602,602,602,602,578,578,618,623,602,623,629,1,12290,3,78112,643,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2769,0,0,0,694,0,0,0,0,0,362,362,362,0,0,0,0,0,0,2440,0,0,0,0,0,0,0,0,0,1260,0,0,0,0,0,0,0,0,805,0,0,0,0,0,0,0,0,0,0,0,0,0,2142,2143,0,540,540,540,878,540,540,540,540,540,540,540,540,540,540,540,540,1332,540,540,540,561,561,919,561,561,561,561,561,561,948,950,561,561,561,561,561,561,3575,561,3577,561,561,561,585,585,585,585,0,0,1563,0,0,0,0,0,1569,0,585,1021,1023,585,585,585,585,585,585,585,585,585,585,585,585,561,3496,0,3497,0,0,0,0,0,540,992,585,561,540,540,540,540,540,561,561,561,561,561,3341,561,561,561,561,561,561,561,561,561,561,3579,561,585,585,585,585,0,0,0,1098,1230,0,0,0,0,0,0,1237,0,0,0,0,0,0,2452,0,0,0,0,0,0,0,0,0,2764,0,0,0,0,0,0,0,0,0,1242,0,0,0,0,0,0,0,0,0,0,1242,1251,540,540,1280,540,540,540,1284,540,540,1295,540,540,1299,540,540,540,540,540,2229,540,2231,540,540,540,540,540,540,540,0,0,561,561,561,561,561,561,561,561,561,561,561,561,1840,561,561,1360,914,561,561,561,561,561,561,1369,561,561,561,1373,561,561,1384,561,561,1388,561,561,561,561,561,561,561,561,561,561,561,561,561,2324,0,0,561,561,1405,561,561,561,1409,561,561,561,561,561,561,561,561,561,3612,3613,561,585,585,585,585,585,1460,585,585,585,1464,585,585,1475,585,585,1479,585,585,585,585,585,585,1032,585,585,585,585,585,585,585,585,561,0,0,0,0,3625,0,540,0,1623,0,0,0,0,0,0,0,0,0,0,0,0,1636,0,0,0,0,1626,0,0,0,0,0,0,0,0,0,0,0,2058,2059,0,2061,2062,1638,0,0,0,1642,0,0,0,1646,0,0,0,1650,0,0,0,0,0,1257,0,0,0,0,0,0,0,0,0,0,1145,362,362,0,0,1148,561,1844,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2635,561,561,561,561,1862,561,561,561,561,561,561,561,561,561,561,561,561,2869,561,561,2872,2007,585,585,585,585,561,1752,585,1938,1844,540,540,540,540,561,561,561,561,2275,561,561,561,561,561,561,2281,561,2283,561,2286,0,0,2056,0,0,0,0,0,0,0,0,0,0,0,0,0,2154,0,0,0,0,0,2118,0,0,0,0,0,0,0,0,0,0,0,0,2520,0,0,0,0,2132,0,0,0,0,0,0,0,0,0,2141,0,0,0,0,0,0,2463,0,0,0,0,0,0,0,0,0,2491,0,0,0,0,0,0,0,0,0,2158,0,0,2161,0,540,540,2164,540,540,540,540,540,540,540,3053,540,3055,540,540,540,540,540,540,540,540,2232,540,540,2235,2236,540,540,0,540,540,540,2227,540,540,540,540,540,540,540,540,540,540,540,0,2242,561,561,561,561,561,561,561,0,0,0,561,561,2246,561,561,561,561,561,561,561,561,561,561,26027,1360,987,585,585,1455,585,1458,561,2312,561,561,561,561,561,561,561,561,561,561,561,0,0,0,0,0,0,585,2650,585,585,585,585,585,585,561,3547,3548,0,0,0,0,0,0,3554,0,585,585,2331,585,585,585,585,585,585,585,585,585,585,585,585,2381,2382,585,585,585,585,2387,585,585,585,585,585,585,585,585,585,585,585,585,2397,540,540,2415,2416,561,561,2419,2420,585,585,2423,2424,0,1563,0,1569,0,1575,0,1581,0,0,0,0,0,0,0,0,0,0,0,0,2752,0,0,0,0,0,0,0,2438,0,0,0,0,0,0,0,0,0,0,0,1728,0,0,0,0,0,2513,0,0,0,0,0,0,0,0,0,2519,0,0,0,0,0,0,2478,0,0,0,0,0,0,0,0,0,1189,0,0,0,0,0,0,540,540,540,2565,540,540,540,540,540,540,540,540,540,540,540,540,1333,540,540,540,585,585,2682,585,585,585,585,585,585,585,585,585,585,2693,585,585,585,585,585,585,3590,585,585,561,0,3594,0,0,0,0,0,0,2516,2466,0,0,0,0,0,2521,0,0,2824,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2239,561,561,561,561,2885,561,561,561,561,561,561,561,561,561,561,561,1395,561,561,561,561,561,561,561,561,1430,561,561,561,561,561,561,561,561,2866,561,561,561,561,561,561,561,585,585,585,585,2933,585,585,585,585,585,585,585,585,585,585,585,1985,585,585,585,585,0,3177,0,0,0,3180,0,0,0,0,0,0,0,0,0,0,1601,1602,0,0,0,0,0,0,0,0,3194,0,0,0,0,0,0,3197,0,3199,540,540,540,540,880,540,885,540,891,540,894,540,540,908,540,540,540,540,540,3038,540,540,540,540,540,540,540,540,3046,540,585,3289,3290,0,0,0,0,3294,0,0,0,0,0,0,0,0,1099,0,0,0,0,0,0,0,540,540,3316,540,540,540,3319,540,540,540,540,540,540,540,540,540,540,1819,540,540,540,540,1360,561,3337,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2646,561,3415,561,561,561,561,561,585,585,585,585,585,585,585,585,585,585,585,585,585,3115,3428,585,3430,585,585,585,585,585,561,540,561,585,0,0,0,0,0,0,2503,0,0,0,0,0,0,0,0,0,362,336,290,0,0,0,0,3555,0,540,540,540,540,540,540,540,540,540,540,3566,540,540,561,3064,561,561,561,561,561,561,561,561,561,561,561,561,2617,561,561,561,561,561,3608,561,3609,561,561,561,561,561,561,561,585,585,3615,585,585,585,585,585,2658,585,585,585,585,585,585,585,585,585,585,1952,585,585,585,585,585,3616,585,585,585,585,585,585,585,561,0,0,0,0,0,0,540,585,585,561,540,540,540,1067,911,561,561,561,1072,407,353,0,0,0,0,0,69632,73728,0,0,0,0,0,65536,0,0,0,0,1658,0,0,0,0,0,0,0,0,0,0,0,362,362,1146,0,0,472,483,472,0,0,472,0,0,0,0,0,0,0,0,523,523,527,527,527,527,472,472,472,472,472,477,472,472,527,523,527,527,527,527,539,556,579,556,579,556,556,579,556,603,579,579,579,579,579,579,579,603,603,603,556,603,603,603,603,603,579,579,619,624,603,624,630,1,12290,3,78112,0,644,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2101,0,738,0,0,0,644,738,0,744,745,644,0,0,0,0,0,0,0,0,793,0,0,0,0,0,0,0,0,0,0,802,0,807,0,0,0,0,0,0,807,0,0,0,0,0,644,0,0,0,802,0,807,0,793,0,822,0,0,0,665,0,0,0,0,822,0,0,0,0,0,0,0,1134592,0,362,0,0,0,1134592,0,0,0,793,793,0,644,0,0,793,807,845,0,540,850,540,540,540,540,540,2539,540,540,540,540,540,540,540,540,540,540,540,3324,540,540,540,540,540,869,873,879,883,540,540,540,540,540,899,540,540,540,540,540,540,540,3206,540,540,540,540,540,540,540,540,540,2205,540,540,540,540,540,540,561,561,920,561,561,561,561,939,943,949,561,954,561,561,561,561,585,585,585,585,0,0,0,0,0,2728,0,0,1016,1022,585,1027,585,585,585,585,585,1044,585,585,585,585,585,1058,0,0,0,540,993,585,561,540,540,899,540,540,561,561,971,561,561,561,561,561,0,585,585,993,585,585,585,585,1012,1149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2784,0,0,0,1200,0,0,0,0,0,0,0,0,0,0,0,1211,1227,0,0,1099,0,0,0,1233,0,1235,0,0,0,0,0,0,0,3176,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1243,0,0,0,0,0,0,0,0,0,0,1249,0,0,0,0,1670,0,0,0,0,0,0,1674,0,0,0,0,0,0,743,0,0,0,0,0,0,0,0,0,0,0,0,0,2753,2754,0,1252,1200,0,1233,1255,0,1258,0,0,0,0,0,1130,0,0,0,0,0,1597,0,0,0,1600,0,0,1603,0,0,0,0,0,843,0,0,0,0,0,540,540,540,540,540,540,540,3320,540,540,540,540,540,540,540,540,540,1801,540,540,540,1806,540,540,0,1267,0,0,0,0,0,1267,0,0,1149,1267,0,1274,540,540,540,540,1282,540,540,540,1291,540,540,540,540,540,540,540,540,2204,540,540,540,540,540,540,540,540,540,2830,540,540,540,540,540,540,540,1279,540,540,540,540,1285,540,540,540,540,540,540,540,540,540,540,2194,540,540,540,540,540,540,1306,540,540,540,540,540,540,540,540,540,540,1317,540,540,540,540,540,2567,540,540,540,540,540,540,540,540,540,540,540,2545,540,540,540,540,1321,540,540,540,540,540,540,540,1327,540,540,540,1334,1336,540,540,540,540,1310,540,540,540,540,540,540,540,540,540,540,540,540,1335,540,540,540,1360,914,1362,561,561,561,561,1368,561,561,561,561,1374,561,561,561,561,1407,561,561,561,561,561,561,561,561,561,561,561,2293,561,561,561,561,561,561,1406,561,561,561,561,1411,561,561,561,561,561,561,561,561,1852,561,561,561,561,561,561,561,561,1866,561,561,561,561,561,561,561,1418,561,561,561,1425,1427,561,561,561,561,561,561,561,561,561,561,1865,561,561,561,561,561,561,561,561,1883,561,561,561,561,561,561,561,1459,585,585,585,585,1465,585,585,585,585,585,585,585,585,585,585,1533,585,585,585,585,585,1486,585,585,585,585,585,585,585,585,585,585,1497,585,585,585,585,585,585,1034,585,585,585,585,1052,585,585,585,561,1502,585,585,585,585,585,585,585,585,1509,585,585,585,1516,1518,585,585,585,585,585,2685,585,585,585,585,2689,585,585,585,2694,585,561,0,1290,1544,1470,1379,540,540,540,540,540,561,561,561,561,561,3249,561,3251,561,561,561,561,561,561,561,585,3534,585,3535,585,585,585,3539,585,0,1575,0,0,0,1581,0,0,0,0,0,0,0,0,0,0,1632,0,0,0,0,0,1592,1593,0,0,0,0,0,1599,0,0,0,0,0,0,0,0,1172,0,0,0,0,0,0,0,0,1639,0,0,0,0,0,0,0,1647,1648,0,0,0,0,0,0,0,2387968,0,0,0,0,0,0,0,0,0,2987,0,0,0,0,0,2990,0,1655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2482,0,0,0,1721,0,0,0,0,0,0,0,1718,0,0,0,0,0,0,300,300,300,300,0,300,300,300,300,300,540,540,540,1747,540,540,540,540,1753,540,540,540,540,540,540,540,540,1817,540,540,540,540,540,540,1360,540,540,540,1764,540,540,540,540,1768,540,540,540,540,540,540,540,540,2178,540,540,540,540,540,540,540,540,1287,1294,540,540,540,540,540,540,540,540,540,1779,540,540,1783,540,540,540,540,540,540,540,540,540,540,2206,2207,540,540,540,540,1809,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1360,914,561,561,561,561,561,561,561,561,561,561,561,561,1379,561,0,1074,585,585,1050,585,78112,1079,0,0,0,0,0,0,0,1106,0,0,0,0,0,0,1210,0,561,1845,561,561,561,561,561,561,561,561,561,561,1856,561,561,561,561,1423,561,561,561,561,561,561,561,561,561,561,561,3253,561,561,561,561,585,561,1860,561,561,561,561,561,561,561,561,561,561,1871,561,561,561,561,1424,561,561,561,561,561,561,561,561,561,561,561,26027,1920,585,585,585,585,1876,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,3244,561,561,585,2026,585,585,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,286720,0,0,0,0,2079,2080,0,0,2082,2083,0,0,0,0,0,0,0,3176,0,0,0,0,0,3306,0,0,0,0,0,0,2105,0,0,0,0,2108,2109,0,0,0,0,0,0,301,301,301,301,0,301,301,301,301,301,2115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2796,0,0,0,2147,0,0,0,0,0,0,0,0,0,0,0,0,2781,0,0,0,0,0,2157,0,0,0,0,0,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,0,540,2225,540,540,540,540,2230,540,540,540,540,540,540,540,540,0,0,0,0,1696,0,0,0,0,0,0,0,0,0,0,0,2070,0,0,0,0,0,2242,0,561,561,561,561,561,561,561,561,561,561,561,561,561,2618,561,561,561,561,561,2259,561,561,2263,561,561,561,2267,561,561,561,561,561,561,3610,561,3611,561,561,561,585,585,585,585,0,0,0,2030,0,1082,0,0,0,2032,585,2344,585,585,2348,585,585,585,2352,585,585,585,585,585,585,585,1528,585,585,585,585,585,585,1538,585,585,585,585,2361,585,585,2364,585,585,585,585,585,585,585,585,585,1935,1936,585,585,585,585,1943,585,585,2400,585,585,585,585,585,585,585,585,561,540,585,585,561,540,2718,540,540,0,0,0,2437,0,0,0,0,0,0,0,0,0,0,0,0,2794,0,0,0,0,2473,0,0,0,2477,0,0,0,0,0,0,0,0,0,0,1685,0,0,0,0,0,0,0,0,0,2501,0,0,0,0,0,0,0,0,0,0,2511,0,540,540,2525,540,540,540,540,540,540,540,540,540,2532,540,540,540,540,1324,540,540,540,540,540,540,540,540,540,540,540,1330,540,540,540,540,540,540,2550,540,540,2552,540,2553,540,540,540,540,540,540,540,540,540,2193,540,540,2196,540,540,540,540,2563,540,540,540,540,540,540,540,540,540,540,540,540,2574,540,540,540,540,2827,2828,540,540,540,540,2831,540,540,540,540,540,540,540,1751,540,540,540,540,540,540,540,540,540,1351,540,540,540,540,540,540,0,0,0,561,561,2587,561,561,561,561,561,561,561,561,561,561,2264,561,561,561,561,2269,561,561,561,2594,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,2871,561,561,2609,561,561,561,2612,561,561,2614,561,2615,561,561,561,561,561,929,561,937,561,561,561,561,561,561,561,561,2629,561,561,561,561,561,561,561,561,561,561,2623,561,561,2627,561,561,561,561,561,561,561,561,561,2290,2291,561,561,561,561,561,561,561,0,2327,585,585,585,585,585,585,585,1507,585,585,585,585,585,585,585,585,561,540,585,561,3284,540,3286,561,561,561,561,2638,561,561,561,561,561,561,561,561,561,561,561,561,3099,561,561,561,0,0,2733,2734,0,0,0,0,0,0,0,0,0,0,0,0,3002,0,0,0,2785,0,2787,0,0,0,0,0,0,0,0,0,0,0,0,0,2432,0,0,0,0,0,0,2800,0,0,0,0,0,0,540,540,540,540,540,540,540,3217,540,540,540,540,540,540,540,540,540,540,3042,540,3044,540,540,540,540,540,540,2848,540,540,540,0,0,561,561,561,561,561,561,561,2318,561,561,561,561,561,0,0,0,561,561,2859,561,2862,561,561,561,561,2867,561,561,561,2870,561,561,561,561,2302,561,561,561,561,561,561,561,561,561,561,561,940,561,561,561,561,561,561,561,561,1394,561,561,561,561,561,561,561,1402,561,561,561,2896,561,561,561,0,0,585,585,585,585,585,585,585,1529,585,585,585,585,585,585,585,585,2661,585,585,585,585,585,585,585,585,585,2907,585,2910,585,585,585,585,2915,585,585,585,2918,585,585,585,585,585,1527,585,585,585,585,585,585,585,585,585,585,2367,585,585,585,585,585,585,585,585,2944,585,585,585,561,540,585,585,561,540,540,561,561,585,585,3373,0,0,0,3375,0,0,2980,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2979,2991,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3005,0,3006,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2989,0,561,561,561,561,3078,561,561,561,561,561,561,561,561,3086,561,561,561,561,2315,561,561,561,561,561,561,561,561,0,0,2327,0,0,0,585,585,585,585,585,585,585,585,585,3273,585,585,585,585,585,585,561,561,585,585,585,3107,585,585,585,585,585,585,585,585,585,585,1969,585,585,585,585,585,585,585,585,585,3119,585,585,585,585,585,585,585,585,3127,585,585,585,585,585,1901,540,585,585,561,540,540,540,540,561,561,3065,561,561,561,561,561,561,561,561,561,561,561,3479,585,585,585,585,585,0,3159,0,0,0,0,0,0,0,3165,0,0,0,0,0,0,0,3176,0,0,3304,0,0,0,0,0,0,3191,0,0,0,0,0,0,3195,3196,0,0,0,0,540,540,3601,540,3602,540,540,540,540,540,540,540,540,1752,540,540,540,540,540,540,540,540,1349,540,540,540,540,540,540,540,540,1288,540,540,540,540,540,540,540,540,1289,540,540,540,540,540,540,540,540,1290,540,540,540,540,1300,540,540,3279,585,585,585,585,585,585,585,561,540,585,561,540,540,561,561,561,561,2611,561,561,561,561,561,561,561,561,561,561,561,2304,561,561,561,561,561,561,561,561,561,1853,561,561,561,561,561,561,540,540,540,540,3317,540,540,540,3321,540,540,540,540,540,540,540,540,2192,540,540,540,540,540,540,2198,561,561,561,3339,561,561,561,561,561,561,561,561,561,561,561,561,2628,561,561,561,561,561,561,561,561,2305,561,561,561,561,561,561,561,561,561,3348,561,561,561,585,585,585,585,585,3353,585,585,585,3357,561,561,3572,561,561,561,561,561,561,561,561,3580,585,585,585,3584,3597,0,3598,3599,540,540,540,540,540,540,540,540,540,3605,3606,540,540,540,540,2837,540,540,540,540,540,540,540,540,540,540,540,1803,540,540,540,540,585,585,585,585,585,3619,3620,585,561,0,0,3623,0,0,0,540,585,585,561,540,540,895,540,540,561,561,967,561,561,3671,585,3672,0,540,561,585,0,540,561,585,0,540,561,585,585,585,585,585,1079,1559,0,0,0,1565,0,0,0,1571,2033,0,0,0,0,1577,2035,0,0,0,0,0,0,0,1682,0,1684,0,0,0,0,0,0,0,1712,0,0,1715,0,0,0,0,0,355,356,0,0,0,0,0,0,0,362,0,290,0,0,0,0,0,0,2762,0,0,0,0,0,0,0,2768,0,0,0,0,389,0,0,0,0,0,0,0,0,0,0,0,0,3198,0,540,540,473,473,487,0,0,487,356,356,356,509,356,356,356,356,473,473,580,580,580,580,580,580,580,604,604,604,557,604,604,604,604,604,580,580,557,580,604,580,604,1,12290,3,78112,540,870,540,540,540,540,540,540,540,540,540,904,540,540,540,540,540,540,2191,540,540,540,540,2195,540,2197,540,540,561,561,976,561,561,561,561,0,585,585,585,585,585,585,585,1013,1197,0,0,0,0,0,0,0,1197,0,0,0,0,0,0,0,0,0,0,0,0,540,540,540,540,540,540,540,540,1360,914,561,561,561,561,561,561,561,561,1371,561,561,561,1380,561,561,561,561,2639,561,561,561,561,561,561,561,561,561,561,561,2644,561,561,561,561,585,585,585,1462,585,585,585,1471,585,585,585,585,585,585,585,585,1472,585,1477,585,585,1481,585,585,1541,561,0,1291,585,1471,1380,540,540,540,540,540,561,561,561,561,585,585,585,585,0,0,0,0,2727,0,0,0,0,0,1576,0,0,0,1582,0,0,0,0,0,0,0,0,0,2737,0,0,0,0,0,2741,0,1607,0,0,0,0,0,0,0,1615,1616,0,0,0,0,0,0,303,204800,204800,0,205103,204800,1,12290,3,0,1761,540,540,540,540,540,540,540,540,540,540,540,540,540,540,1774,1891,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,3087,561,561,561,561,1911,561,561,561,561,561,561,26027,0,585,585,585,585,585,585,1466,585,585,585,585,585,585,585,585,585,585,2928,585,585,585,585,585,585,585,585,585,1947,585,585,585,585,585,585,585,585,585,585,585,2001,585,585,585,585,585,585,585,1960,585,585,585,585,585,585,585,585,585,585,585,1973,0,0,2243,561,561,561,561,561,561,561,561,561,561,561,561,561,2634,561,561,2328,585,585,585,585,585,585,585,585,585,585,585,585,585,585,585,2384,0,0,0,0,2425,0,0,0,0,0,0,0,0,0,0,0,2085,2086,0,0,0,0,2449,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3175,0,0,0,0,561,561,561,561,561,561,2590,561,561,561,561,561,561,2289,561,561,561,561,561,561,561,561,561,2292,561,561,561,561,561,561,561,561,561,2861,561,2863,561,561,561,561,561,561,561,561,561,561,2877,561,561,561,561,561,561,561,561,1899,561,561,561,561,561,1905,561,585,585,585,2909,585,2911,585,585,585,585,585,585,585,585,585,585,1984,585,585,585,585,585,585,585,3360,585,585,585,585,585,585,585,585,585,585,585,585,585,1056,585,561,0,3556,540,540,540,540,540,540,540,540,540,540,540,3567,540,561,561,561,561,2876,561,561,561,561,561,561,561,561,561,561,561,26027,0,585,585,585,585,561,561,561,561,3656,561,585,585,585,585,3660,585,0,0,0,0,0,0,2775,0,0,0,0,0,0,0,0,0,2124,0,0,0,0,0,0,0,0,357,0,0,0,0,0,0,362,0,290,0,0,0,0,0,0,2790,0,0,0,0,0,0,0,0,0,0,1147354,0,0,0,0,0,0,0,357,0,0,0,0,0,0,0,0,0,0,0,0,0,2509,0,0,357,0,367,0,0,367,0,0,0,0,0,0,0,0,0,0,0,0,0,2457,0,0,581,581,581,581,581,581,581,605,605,605,558,605,605,605,605,605,581,581,558,581,605,581,605,1,12290,3,78112,865,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2575,1385,561,561,561,561,561,561,561,561,561,561,561,561,561,561,561,3243,561,1775,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,3047,585,585,585,585,1961,585,585,585,585,585,585,585,585,585,585,585,2380,585,585,585,585,2756,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3315,0,2981,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3188,0,3298,0,3299,0,0,0,0,3176,0,0,0,0,0,0,0,0,0,3388,0,0,0,0,358,359,360,361,0,0,362,0,290,0,0,0,0,0,0,2973,0,0,0,0,0,0,0,0,0,362,362,362,702,0,0,0,0,359,0,358,0,0,0,69632,73728,0,0,0,0,425,65536,0,0,0,0,1710,1711,0,0,0,1714,0,0,0,0,0,1718,425,425,0,425,0,359,425,0,456,0,0,0,0,0,0,0,1102,0,0,0,0,1263,1264,0,0,0,0,0,497,497,0,504,504,504,504,510,511,504,504,524,524,524,524,456,456,456,456,456,456,456,456,524,524,524,524,524,524,524,559,582,559,582,559,559,582,559,606,582,582,582,582,582,582,582,606,606,606,559,606,606,606,606,606,582,582,620,625,606,625,631,1,12290,3,78112,0,0,0,540,585,585,561,540,540,900,540,540,561,561,972,561,561,561,561,561,0,585,585,585,585,585,585,585,585,1934,585,585,585,585,585,585,585,0,0,2104,0,0,0,0,0,0,0,0,0,0,0,0,0,2740,0,0,0,0,0,561,2245,561,561,561,561,561,561,561,561,561,561,561,3533,585,585,585,585,585,585,585,585,585,3494,561,0,0,0,0,0,0,585,2330,585,585,585,585,585,585,585,585,585,585,585,585,585,1482,585,585,540,2549,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2237,0,540,540,2577,540,540,540,540,540,540,540,540,540,540,0,0,0,0,0,1611,0,0,1614,0,0,0,0,0,0,0,443,0,0,0,0,0,0,0,0,0,2891776,0,0,0,0,0,2392064,583,583,583,583,583,583,583,607,607,607,560,607,607,607,607,607,583,583,560,583,607,583,607,1,12290,3,78112,705,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,155648,866,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,3224,1136,0,0,0,0,0,0,0,0,0,0,362,362,0,0,0,0,0,1659,0,0,0,0,0,0,0,0,0,0,780,0,0,0,0,786,561,585,585,585,585,585,1079,1560,0,0,0,1566,0,0,0,1572,0,0,0,1578,0,0,0,0,0,0,0,0,0,0,0,0,3313,0,0,540,2199,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2547,540,2535,540,540,540,540,540,540,540,540,540,540,540,540,540,540,540,2822,540,561,561,561,2597,561,561,561,561,561,561,561,561,561,561,561,561,2317,561,561,2320,2321,561,561,0,0,0,0,0,0,647,0,0,0,0,0,0,743,540,540,540,540,540,540,540,3331,540,540,561,561,561,561,561,561,561,561,561,561,3072,561,561,561,0,0,0,540,585,585,561,1064,540,540,905,540,1069,561,561,977,561,561,561,561,0,585,585,585,585,585,585,585,585,1951,585,585,585,585,585,585,585,0,0,1594,0,0,0,0,0,0,0,0,0,0,0,0,0,2767,0,0,561,561,1846,561,561,561,561,561,561,561,561,561,561,561,561,561,2645,561,561,585,585,585,1977,585,585,585,585,585,585,585,585,585,585,585,585,2692,585,585,585,540,540,540,2188,540,2190,540,540,540,540,540,540,540,540,540,540,561,561,561,3334,561,561,0,0,0,561,561,561,2247,561,561,561,561,561,561,561,561,561,2613,561,561,561,561,561,561,561,2619,561,561,2273,561,561,561,561,561,561,561,561,561,561,561,561,561,561,3242,561,561,0,585,585,585,2332,585,585,585,585,585,585,585,585,585,585,585,2408,540,585,585,561,561,2647,0,0,0,0,0,0,585,585,585,585,585,585,585,585,2687,585,585,2691,585,585,585,585,585,585,585,585,2684,585,585,585,585,585,585,585,585,585,585,585,2916,585,585,585,585,561,561,585,585,585,585,585,3109,585,585,585,585,585,585,585,585,2702,585,585,585,585,585,585,585,0,1134592,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225706,0,0,1134592,0,0,0,1134592,1134592,0,0,1134592,0,0,1134592,0,1134592,0,0,0,1134592,1135005,1135005,0,0,0,0,0,1135005,0,1134592,1134592,0,0,0,0,1135202,1135202,1135202,1135202,1134592,1135202,1135202,1135202,1135202,1135202,0,1134592,1134592,1134592,1134592,1135202,1134592,1135202,1,12290,3,0,0,0,0,2134016,0,0,0,0,0,0,0,0,1138688,0,0,0,0,0,1670,0,0,0,0,0,0,0,0,0,0,0,2125824,2126738,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,2125824,2125824,2125824,2125824,2424832,2433024,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,987,2125824,2125824,2125824,2125824,2424832,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,1147354,457,457,1147354,457,457,457,457,457,457,457,457,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,1147405,0,0,0,0,0,0,0,0,0,2792,0,0,0,0,0,0,457,0,0,0,1147354,1147354,1147354,1147405,1147405,1147354,1147405,1147405,1,12290,3,0,0,0,0,2042,0,0,2045,2046,0,0,0,2050,0,0,0,0,0,680,0,0,0,0,0,0,0,0,0,0,1221,0,0,0,0,0,0,1142784,0,2179072,2125824,2125824,2125824,2179072,2179072,2179072,2179072,2179072,2125824,2125824,2125824,2125824,2125824,2125824,2125824,3137536,2125824,2940928,2940928,2940928,0,0,0,0,0,0,305,440,448,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,1159168,0,0,1159168,0,1159168,1159168,0,1159168,0,1159168,1159168,1159168,1159168,1159168,1159168,1159168,0,0,0,0,0,0,0,0,0,2802,0,540,540,540,540,540,1159168,1159168,0,1159168,1159168,0,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,0,1159168,1159168,0,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1159168,1,12290,3,0,0,0,0,2053,0,2054,0,0,0,0,0,0,0,0,0,799,0,799,0,0,0,0,0,0,0,2134016,0,0,0,0,0,0,0,0,0,1163264,0,0,0,0,0,155648,155648,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,358,0,913,2125824,2125824,2125824,2125824,2424832,2433024,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2125824,0,0,1452,2125824,2125824,2125824,2125824,2424832,106496,0,106496,106496,0,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,106496,0,0,106496,0,106496,106496,106496,106496,106496,106496,106496,106496,0,0,0,0,0,0,0,0,0,0,2183168,0,0,0,0,0,0,0,0,2134016,0,0,0,0,0,0,0,0,0,0,0,0,0,2782,2783,0,0,0,0,3117056,0,0,0,0,0,0,0,0,0,0,0,0,163840,0,0,0,0,3043328,0,3149824,2936832,0,2760704,0,0,0,0,0,2953216,0,0,2826240,2875392,0,0,0,0,0,0,2834432,0,3227648,2568192,0,0,0,0,2564096,0,2748416,2879488,0,0,0,0,0,0,0,0,0,0,2179072,2179072,2179072,3137536,2125824,2125824,2498560,2125824,2125824,2125824,2555904,2564096,2125824,2125824,2125824,2125824,2125824,2125824,2125824,2654208,2678784,2760704,2764800,2785280,2854912,2969600,2125824,3006464,2125824,3018752,2125824,2125824],r.EXPECTED=[260,268,276,283,296,304,881,312,318,331,366,339,350,361,369,342,288,886,1555,1545,377,384,1551,392,400,415,423,431,439,447,455,463,486,553,490,500,500,499,498,500,500,500,500,500,500,500,500,500,500,500,500,500,500,500,500,500,500,353,1871,509,517,525,1149,688,533,1759,407,548,949,561,323,569,1480,1303,866,577,1034,592,596,1439,1444,604,1857,628,636,644,1919,1049,652,673,660,668,681,696,995,710,718,731,1324,739,761,1116,776,784,792,1170,1200,1204,807,843,851,859,894,902,910,723,918,926,934,942,753,957,1568,965,980,611,988,1738,1003,1011,616,1185,1827,871,1539,1029,1042,1418,584,1424,972,1057,1065,1073,1598,1087,1095,1103,1111,1134,1142,768,478,1163,1289,620,1155,1178,876,1620,1643,1193,702,1812,799,1789,1212,1753,1218,1226,1234,1242,500,1250,1258,828,1266,1274,1282,1297,1850,1311,1319,1332,1079,540,1345,1017,1337,1359,1021,1367,1375,1390,1398,1403,1411,1432,1452,1460,1468,1476,1488,1496,1382,1516,1524,1532,1563,1576,746,1584,1592,1502,1606,1614,814,1628,1636,469,821,1661,1665,1673,1678,1686,1694,1702,1710,1718,501,1726,1734,1746,1767,1775,1783,1351,1126,1797,1805,1121,835,1820,474,1835,1843,1865,1508,1879,1649,1653,1887,1892,1900,1908,1916,500,500,1927,1975,1928,1939,1939,1939,1934,1938,1939,1930,1943,1950,1946,1954,1958,1961,1964,1968,1972,1979,2007,2007,2007,3094,2007,1983,3521,2007,2812,2007,2007,2007,2007,2779,2007,2007,2132,2007,4152,3820,3824,1987,2098,1994,2e3,2006,2007,2007,3996,2007,2007,2012,4079,3820,3824,3824,3824,3824,2019,2097,2097,2026,2170,2032,2007,2007,2007,2007,2919,2007,2428,3887,2007,3734,2038,2089,2007,2007,2007,3390,3824,3824,2045,2097,2097,2097,2097,2097,2099,1996,2067,2059,2063,2003,2007,2007,2007,2007,2007,2259,3005,2007,3049,2007,2007,2007,3818,3820,3820,3820,3820,2133,3824,3824,3824,3824,3824,2055,3820,2139,3824,3824,3824,3827,2097,2097,2022,2072,2007,2007,4080,2007,2162,2077,2007,2007,2779,3400,3820,3820,2053,3824,3825,2097,2097,2084,2072,2088,4151,2385,2007,2007,2007,2007,3112,2752,3820,2052,3824,2095,2097,2104,2778,2050,3823,2095,2115,2129,3821,3826,1989,3390,3822,3827,1990,2137,2141,2149,3819,2141,2159,2167,2048,2174,2028,2181,2184,2188,2192,2202,2202,2193,2197,2201,2203,2207,2211,2215,2219,2222,2226,2230,2234,2238,2732,2242,2007,2007,2737,2247,2007,2007,2007,3028,4134,2007,2007,2007,3213,2007,2007,2007,2007,2702,3310,2007,3694,2243,2007,4531,2253,2007,2007,2007,2007,2007,4488,2007,2007,2007,4489,2007,2007,2007,2007,2007,2007,2007,2007,4297,2280,2282,2286,2289,2293,2297,2301,2662,2386,2007,2007,2007,2007,2387,2307,2314,2318,4376,4208,2325,2681,3075,3584,2645,2353,2359,2620,2007,2007,2381,2363,2007,2007,3675,2007,3534,4411,3291,4070,3348,2391,2007,2395,2399,2007,2007,2007,2007,3092,3298,2007,2007,2402,2007,2007,2007,3382,2007,2007,2418,3423,2432,2007,2007,2007,2007,2797,2433,2797,2457,2007,2007,2007,2007,2463,2007,2007,3716,3131,2917,2007,2007,3777,4457,4344,2470,2007,2007,2007,2477,2007,2007,2007,2484,2007,2107,3702,2007,3700,2493,2007,2111,2007,2007,3723,3037,2007,2007,2007,2090,3072,2007,2007,2007,2007,2261,3346,2007,2007,2500,2007,2505,4255,4115,4254,2007,4238,2510,4117,3651,3491,2511,4118,4239,4255,3650,4117,2516,4116,4117,3593,3670,3596,2528,2531,2535,2538,2542,2007,3509,2620,4365,4173,2562,2566,2570,2007,2674,2672,3782,2574,2007,3457,2579,2007,2501,2007,4424,3255,2555,2588,4214,4424,4450,2584,2592,2599,3102,4176,2007,2007,3778,2008,2342,4482,2348,4126,4353,2007,2007,2007,2721,2607,2007,2007,2007,3379,2007,2007,2007,3480,2619,2007,4362,2007,4150,4231,2625,4223,2632,2636,2007,4444,2654,2007,2007,2007,2007,3897,2007,2007,4225,2675,2642,2007,2007,2007,2007,4443,2653,4024,2007,4424,4341,2118,4304,2679,2007,2007,3794,2734,2268,4056,2403,2007,2007,3896,2007,2655,2910,4541,3011,2685,2775,2007,2007,2007,3576,2686,2007,2007,4010,3290,2007,2007,3151,3295,3238,2007,2697,2007,3451,2403,4245,2586,4285,2701,3577,2715,2007,2007,2007,3620,2706,2007,2007,2007,2007,2713,2775,2007,2007,4082,3399,2007,2007,4082,3399,2741,2769,2855,2774,2007,3410,2751,2007,2007,4104,2007,2007,2007,2007,2506,4140,4109,4114,3788,2803,4147,2007,2007,4385,3699,2007,3534,4411,2007,2041,4469,4448,2007,2007,2007,2709,3410,2751,2702,2784,3450,4048,2121,2770,3436,2007,3434,3438,2007,2791,2007,2795,2801,2328,2810,2787,2452,2816,2453,2007,2443,2450,2424,2465,2007,2007,2007,2007,3098,2007,2007,2007,2007,3372,2007,2007,2007,2007,3389,3820,3820,3820,2163,3824,3824,3824,3824,4039,2821,2787,2832,2786,3985,2838,2843,4030,3312,2839,2844,4031,4431,2848,2834,2852,2859,2860,2177,2864,3301,4460,4463,2871,4547,2875,2879,2883,2886,2890,2894,2897,2899,2900,2007,2007,2904,2007,3808,2910,4541,3081,2914,2007,2007,2924,2928,2937,2944,2952,2961,2968,3274,2970,2007,2473,2408,2007,2007,2007,2007,2414,3024,2007,2495,2976,2980,4495,4081,2986,2999,2007,2007,2007,2007,2007,3335,2007,2489,2007,3285,2007,3286,2007,3109,2656,3009,3015,3021,3139,2007,4251,2344,3032,2007,2007,2007,2007,3722,3036,2007,2612,2007,2007,3782,2574,2007,3508,4541,3046,3053,2702,3058,2007,2007,3062,3067,2007,2007,2007,2007,3063,2007,2007,2007,3691,2007,2007,2007,2007,2338,3741,2007,2007,3119,2007,2007,2007,3125,2007,2007,2007,2550,4047,2007,2007,2920,3125,2007,2007,3428,4501,2355,3026,2007,2615,2654,4143,3807,3464,2520,2524,3111,2918,2007,3114,3109,3780,3113,3150,3110,3781,3147,4236,3779,2920,3137,2919,2920,3489,4183,3144,3155,2155,2007,2007,2007,4522,3741,2007,3667,2007,3121,3163,3167,3171,3175,3179,3183,3187,3191,2007,2007,2817,3354,2007,2765,3195,3974,3201,3218,4237,3222,3226,3236,4136,3242,3713,3038,3248,3246,2007,2007,2007,2575,2690,2007,2007,2007,2007,4428,2007,2007,2007,2249,4402,4409,2007,2007,3231,3253,2007,2765,3195,3974,3259,3475,4398,3265,3269,3278,2007,2007,3282,2007,2647,2638,3815,3004,2336,2007,2007,2007,3352,2007,2765,3195,2780,3316,2068,3260,3320,3417,3327,3333,2007,2719,3457,2007,2725,2730,2741,4471,3360,3364,3407,2007,2007,2007,3368,2007,2736,3608,3079,3085,3140,2702,4437,3054,3399,2007,2007,2007,4081,3398,2007,2745,2007,2007,3576,2749,2007,2007,2719,2756,2763,3971,3448,2007,2007,3455,2007,2007,3455,2007,2255,2007,3975,3472,3484,2007,3497,2971,3449,2972,2007,3503,3273,4555,4530,4554,3513,4094,4553,3271,4553,4095,4554,3272,4093,4528,3271,3515,4528,4529,2007,4379,2620,3519,2007,3525,4151,3529,3538,3542,3546,3550,3554,3558,3562,3566,2828,3729,2918,2410,4192,3571,3230,4556,3575,3581,3356,3619,3590,2007,2007,4378,3676,2007,3534,4488,2007,2948,3600,2007,2867,3355,2007,2007,2007,2007,3339,4185,3612,2007,2007,2580,3618,2007,2007,2549,2551,2386,2007,2007,3132,3630,2007,2007,2608,3641,2007,3647,4412,2007,3655,3866,3249,3663,2007,2007,2007,2660,2007,2007,2666,2007,4405,2007,2007,2007,2007,2337,3687,2007,2594,3230,4081,3698,2007,2805,3682,2007,2007,2007,3686,2007,2007,2824,2007,2007,2007,2007,2826,4487,2995,2957,2349,3606,2007,2007,3706,2007,4081,3710,2007,2595,2007,3720,4485,2946,3727,3068,3733,2007,3738,2620,2007,2940,2777,3753,3945,3949,3954,3868,2007,3747,2620,2007,2007,3747,2620,3751,2378,2034,3757,3764,3636,2007,4288,2007,2007,4288,3428,3769,2466,2015,3765,3773,2007,3786,2007,3127,2007,2954,2007,2007,3775,2007,2007,3775,2007,2007,2956,2007,2548,2459,2007,3792,3751,3798,3760,3637,2602,2007,3149,4508,2110,2488,2007,3701,2494,2007,2007,4046,2007,3780,2603,2007,3802,3806,3812,3837,4356,3836,3831,2331,3835,3677,3841,2332,3836,3678,4221,3854,3848,4359,3847,3845,3852,3877,3863,3874,3881,3884,2007,2007,2007,2007,2480,2437,2007,2007,2964,2776,2007,3893,3901,3905,3909,3913,3917,3921,3925,3929,3933,3937,2007,2007,2982,4068,4074,4253,2007,2007,3212,4493,2007,2007,2007,2248,3959,3964,3968,4202,3979,3983,3989,3950,2007,4e3,4007,4014,2007,2007,2963,2421,3753,4019,4023,2040,3626,4028,4035,2007,3229,3106,3743,3026,2726,2007,2007,2007,4080,2007,4152,3820,3820,2054,3824,3824,2096,2097,2097,2097,2097,2100,2143,4043,2007,2007,3205,3209,2007,2007,2007,2990,2994,2007,2007,2248,3207,2007,2007,2007,3197,4052,2310,4253,4060,2669,2007,4114,2007,2007,2007,2628,3210,2007,2007,2007,2506,4064,2007,2007,3232,3254,3975,2007,4119,3159,2962,4078,3753,4086,2404,2007,4090,2620,4114,2007,2007,2007,4099,2620,2007,2007,3376,2007,2007,2007,2007,2933,4100,4108,4113,2007,2439,4123,3603,4423,2007,3870,3133,2007,2007,2007,4130,2007,3386,2068,4158,3394,3506,2007,2007,2007,4526,2007,2007,2007,4526,2007,3992,2370,4535,4156,2920,2007,2007,4162,2007,2007,2007,4162,2558,2007,4166,4170,2007,4180,2007,2007,4189,2007,2007,4196,4200,4206,4212,3859,4218,2007,2693,2007,2007,4229,2007,3586,2152,2145,4235,3487,2007,4243,3642,2775,3643,4249,4440,2806,3659,4259,4264,3657,3857,3940,2080,3658,3858,3941,4274,3939,3857,4278,3856,3857,4282,3017,4292,4293,4270,2321,4301,4003,4311,4315,4319,4323,4327,4330,4334,4338,2007,2007,2007,2007,2621,3230,3492,3042,4267,3478,2931,3955,4350,4514,4396,3306,3462,3468,3444,2007,4516,2007,2007,2446,2007,2007,2007,2759,2375,3002,4369,4307,2007,4015,2007,2546,2544,4373,4383,2007,2007,2007,4389,3478,2931,2068,3670,3532,4437,2007,4393,2007,2007,3427,3432,2303,3443,3422,2007,2007,4416,4081,2007,2091,3671,3422,3203,4420,2007,2007,2007,2007,2007,3342,2007,3388,3404,3414,3421,2007,2254,3381,3994,2931,4346,4454,4260,3567,3304,2007,3439,3100,2007,2007,2007,2007,3089,2007,4467,2007,2007,2007,2007,2007,3214,2124,2007,2007,4475,2365,3889,3499,2007,3616,2007,2007,2007,2337,3624,2007,2906,2007,3329,3633,2007,2499,3960,4434,2007,2007,2007,2007,4479,2007,2007,3493,2265,2007,2272,3323,2276,4499,2125,2007,4505,2367,4512,2007,4520,2512,2007,2007,3211,4539,2007,3211,4539,2073,4037,4454,2007,2007,2007,4545,2007,2649,2007,2007,4551,3115,4157,3422,2007,2369,2007,2370,2007,2371,3261,2007,2007,2007,2007,2007,2007,2007,3458,2007,2007,2080,4576,4599,4601,4601,4596,4590,4601,4601,5213,4588,4600,4601,4601,4601,4601,4601,4601,4605,4601,4601,4624,4632,4592,4611,4609,4615,4626,4639,4641,4646,4628,4651,4653,4653,4647,4635,4657,4642,4661,4665,4669,4673,4676,4680,4682,4686,4690,4560,6008,4569,4572,6007,4694,4697,4751,6953,4752,5681,6931,4707,6326,4735,4735,4712,4752,4752,5273,4792,6322,4707,4735,5096,4719,4736,5094,5098,4748,4748,4750,4752,4752,4752,4752,4564,5125,5113,4729,5190,6233,4752,5981,4707,4707,4734,4735,4711,4791,6324,5279,4792,6322,4707,4735,6320,4748,4749,4752,4752,4582,6339,6230,4730,5190,4752,4752,4752,6892,4707,4707,6327,4735,4714,6320,6322,6322,6322,6324,4707,4707,4707,4710,4735,4793,4788,6324,4709,4765,5096,5096,4748,4752,4752,4752,4758,4721,4752,4752,4752,4777,4792,4788,4709,4752,4561,4752,5750,4735,4735,4794,6324,4752,5743,4752,4752,4752,4757,4752,4707,4709,4735,4735,4735,4735,4711,4791,6322,4792,5276,4722,4752,4563,5399,6420,4752,6238,5201,5242,4735,4735,4785,4752,4563,5663,4752,4563,6254,5386,5386,5386,4752,4752,4752,5746,4752,6321,6322,6322,6322,6323,6320,6322,6322,6323,4707,4707,4707,4735,4752,4752,4584,5193,4735,4735,4713,4752,4563,6913,6240,6240,6240,6929,4735,4735,4714,5739,6322,6322,6322,6325,6322,6324,4707,4710,4740,5096,5097,4707,4709,4735,4752,4698,4752,6653,4709,5467,5467,5467,4752,5513,5517,5483,4804,4818,4798,4802,4844,4844,4844,4808,4815,4812,4828,4832,4842,4844,4844,4844,4844,4845,4838,4926,4844,4852,4850,4913,4853,4857,4861,4865,4835,4869,4872,4879,4876,4881,4883,4887,4889,4891,4893,4900,4900,4897,4907,4910,4923,4846,4916,4919,4930,4933,4935,4939,4903,4943,4752,4752,4752,4948,4715,4752,4752,4752,4977,6877,4954,4752,4752,4752,4978,6115,4759,4759,4752,4752,4753,6060,5603,6128,4975,4752,4714,4752,6620,4752,6554,6723,6126,4984,5424,5283,4988,4992,4993,4993,4993,4997,5e3,5002,5006,5009,5013,5017,5017,5019,5023,5024,5028,5030,5034,5038,5037,5042,5046,4752,4752,4760,5740,4752,5065,4752,5423,4752,4725,4724,4723,4565,5750,4752,5657,4752,5671,5072,4752,4743,4752,5390,5082,4752,6010,4752,4751,5572,6253,5505,4752,5971,6389,5056,4752,4752,4752,5074,5535,6350,4752,4752,6930,5401,4752,5494,4752,4752,4752,5125,4752,6136,6009,4752,5110,6936,6567,5134,5141,5150,5143,5152,4752,4752,4754,4752,4752,4752,4755,4752,4752,4752,4752,6233,6232,4752,4752,6347,4752,4752,6356,5137,5161,5250,4752,4752,4752,5060,6584,5222,5223,5186,4752,6234,5190,6523,5174,5165,5171,5181,4752,4752,4752,5190,4752,5143,5180,4752,4752,4756,6223,4752,6358,5781,5171,4752,6600,5055,5251,4752,5745,4752,4752,6357,5166,4752,5700,4752,6585,5199,5167,5205,5153,4752,5211,5207,4752,4752,4757,5714,4752,5698,4752,5191,5136,5142,5151,5221,6420,4752,4752,4757,5946,5568,5167,6098,6009,4752,5973,4752,5175,5166,6097,5153,4752,4752,4583,6238,5201,5241,4752,4752,6357,5780,6547,5167,5243,4752,4752,6357,5781,4960,4752,6600,5250,5242,4752,4752,4752,5291,5782,5243,4752,4752,4752,5293,6836,6078,4752,4752,4752,5346,5256,4752,4752,4752,5355,4752,6927,4752,4752,4752,5377,5972,4752,4752,6928,5301,5305,5306,5306,5307,5306,5306,5311,5314,5316,5318,5320,5320,5320,5320,5321,5325,5325,5325,5327,5325,5325,5331,5331,4752,4752,4761,6855,4752,4752,4960,4752,4752,4752,5217,4752,6405,5353,5571,4752,6913,6240,5376,5259,4752,5068,5397,4752,5067,5385,5396,4752,6696,6700,5406,4752,4752,4752,5471,5263,4752,4752,4752,5531,6256,5416,4752,5572,4752,5665,4752,5365,4752,5664,4752,4752,4961,4961,4961,5670,4752,6018,4752,4752,6375,6009,4752,6535,4752,4752,4752,5581,5083,5429,6534,4752,4752,6428,6383,5341,6009,4752,4752,4752,5187,5417,4752,5573,4753,5358,6639,6644,6017,4752,6260,6601,4752,6413,4752,4752,4968,5118,5439,5444,5449,4752,4752,6578,5109,4752,4752,4753,6958,5445,5153,4752,4752,4752,5387,6259,6593,5458,4752,4752,5050,5054,5721,5336,5342,4752,4752,6591,4752,4752,6698,4752,4752,4752,5434,5465,6603,4752,4752,5080,4752,6569,5473,5477,5445,6429,5475,5869,5481,4752,4752,6717,6721,4752,5720,5335,5491,6602,4752,4752,4752,5747,5525,5477,5500,4752,4752,6740,6908,6569,5524,5476,5499,6429,4752,4752,6712,4752,4752,5084,5430,6860,4752,4752,4752,5748,5187,4752,4752,5223,4752,5745,6422,4752,4752,4752,6219,4752,5571,4752,5665,6571,5548,5869,5516,5812,5477,5871,4752,4752,4752,5750,5720,5335,5504,4752,4752,6868,5157,4752,6861,4752,4752,5111,6426,5386,5748,5510,4752,4752,5870,6429,4752,4752,4752,5746,4752,4752,4752,4760,5529,4752,4752,5560,5567,4752,4752,4757,5546,5554,6429,4752,6713,4752,4752,5191,5176,5559,5113,4752,4752,5192,4752,4752,4752,6727,4752,6319,4752,4752,5228,4752,5568,4752,4752,4752,5811,5225,6277,5386,4752,4752,6874,6878,4752,4752,6206,4752,5720,5814,5569,4752,5687,5691,5225,6255,6934,5689,5570,5570,4752,5944,5690,4752,5689,5570,4752,5688,4752,6238,5563,4752,4753,5522,5548,5687,5577,4752,5687,5577,6238,5401,6651,4752,4753,6054,6070,5386,6364,5586,6009,6256,5600,4752,6419,5378,5602,5607,5620,5611,5619,5614,5615,5615,5615,5615,5624,5631,5628,5635,5637,5637,5637,5642,5638,5646,5646,5646,5646,4752,4752,6449,4752,4752,5247,5251,6259,4778,5412,6009,4752,5705,4752,6945,4752,4752,4752,6239,4752,4752,5678,4752,4752,5650,4752,5656,5652,4752,4756,4752,4752,6103,4752,5661,5669,5675,4752,4757,5847,5927,4752,5685,4752,6232,4752,5377,6310,4752,4752,5695,4752,4752,5289,5389,4752,4752,5957,6439,4752,4752,4752,5845,5211,5251,4752,6437,6441,4752,4752,4752,5860,4581,5709,4752,4752,5227,4752,5718,4752,4752,5356,6055,5761,5726,5732,5738,4752,5759,5763,5728,5734,4752,4752,4752,5980,5762,5727,5733,4752,4758,4752,4752,6124,5052,5056,4779,6862,4752,4752,5380,5228,4752,5767,6936,4752,6937,6934,5378,4752,5228,5704,4752,4752,6947,4752,4752,5356,5549,5774,5786,6683,5251,5787,6684,4752,4752,4752,5990,6258,4778,5412,6009,4752,6557,5986,4752,4775,4752,5744,6946,4752,4752,4752,6094,6233,4752,4752,5791,4752,5805,6900,6682,6686,6686,4752,4752,4752,6117,5774,6902,6684,4752,4950,5088,5102,5411,6870,4752,4752,5380,6635,5768,6937,5802,4744,5810,6902,6685,4752,4959,4752,4752,4702,4752,4752,5809,6901,5818,4752,4752,5421,4954,4752,5798,4780,6870,5972,4752,4752,4752,6241,4752,4752,4752,5188,6e3,5824,5251,4752,4752,5842,5822,5828,4752,4752,5453,5153,5281,4752,4752,4752,6238,6233,6238,4752,4752,5971,5570,4752,4752,6241,5972,4752,6241,4752,4752,6238,4752,4752,4752,5230,6239,4752,6241,5973,5838,5237,4752,6254,6635,5226,5851,6443,5858,5866,5875,5879,5884,5886,5880,5890,5893,5896,5899,5901,5903,5907,5907,5913,5907,5907,5909,5920,5921,5917,5917,5919,5917,5917,5918,5917,5931,5265,4752,4752,5460,5360,4757,4752,6931,4752,4752,4752,5461,5361,6613,5542,4752,4752,4752,6896,5776,6882,4752,4752,5742,5936,5195,4752,6225,5942,6564,5950,5953,5961,4752,4961,4752,4752,4752,6e3,6367,5966,6419,4752,4752,5487,4752,6294,4752,6293,5985,4752,5990,5994,4752,4752,4752,6298,6367,5927,4752,4752,4752,6243,4759,6930,4752,4752,5741,4752,4752,6938,6005,6421,6050,6014,4752,4752,5505,4752,4752,4752,6437,4752,6209,5755,5755,6022,6026,6110,4752,4962,4961,4752,4752,6111,4752,4752,4752,6317,6031,6026,6110,4752,4966,4752,5225,5398,4752,5400,4752,4752,4752,6254,4752,6366,5926,4752,4752,5561,5225,5266,4752,4752,5224,6352,4752,6628,4752,4972,5386,5066,6048,5970,4752,4752,5573,5398,4752,6208,4752,4752,5596,4752,6059,5779,6064,4752,4977,4821,6882,6069,6065,4752,4752,5699,4752,4752,6001,5925,5251,4752,4752,4752,6247,4752,5739,4752,6353,4752,6629,4752,5973,4752,6569,6074,6089,6569,6084,6088,5251,6082,6086,6090,4752,4979,4579,4752,4752,4752,6422,4752,6423,6722,4752,4752,4752,6321,6322,5389,6627,4752,5971,4980,4580,4752,4752,4752,6320,4757,4752,5740,4752,5075,5968,4752,4977,5523,6665,6354,6627,4752,5972,4752,4752,6036,4753,6937,4752,4752,4752,6418,6252,4752,4752,4752,6423,6860,6869,4752,4752,5720,5813,5555,4752,4752,4752,5809,6354,6627,4752,4753,6937,4978,4581,4752,4752,4752,6429,4752,4979,4581,4752,4752,5722,5337,5263,4752,6861,6870,4752,5287,5297,4758,4752,5742,6353,6860,6869,4758,5740,5390,5998,6234,4752,4752,4752,6102,4752,5386,6234,5505,6935,4755,6239,4752,5971,4752,4752,4752,5386,4754,5720,4581,4752,4752,5741,6936,4752,6863,5739,4752,5076,4752,4752,5720,5335,5341,4752,6869,4752,6313,4752,6311,4752,6608,4752,4752,5745,4752,6259,4752,4618,6121,6232,6230,6230,5741,6935,4752,4752,6201,5189,4752,6134,6132,6140,6144,6151,6145,6145,6150,6146,6155,6159,6163,6167,6169,6174,6176,6169,6169,6170,6186,6187,6180,6180,6185,6180,6180,6181,6191,4752,4752,4752,6545,6229,6841,5573,5061,6250,4752,4752,4752,6569,5524,4752,6247,6251,4752,5107,4752,4752,4753,6719,6266,6265,6267,4752,5110,4752,5111,4752,5113,5111,4752,5956,4752,5192,4752,6621,5747,6333,4752,4752,5797,5191,6271,6276,5252,4961,4752,6281,6287,6251,4752,4752,4752,6570,6286,6291,4752,4752,5751,4752,5833,5832,5831,4752,5110,6077,4752,4752,6362,4752,4752,4770,4752,4752,4752,6717,5589,4752,6202,5190,4752,5110,6929,4752,4752,6307,4752,4752,6934,4752,4752,4752,6934,4759,6304,5573,4961,5831,5831,5831,4752,5112,4752,4752,5742,5580,4769,6009,4752,4752,6387,4752,5126,4752,6331,4961,4753,5534,5538,5542,4752,6282,5536,5540,4752,5112,6427,5932,5582,4771,4752,4752,4752,6546,5782,5243,4752,5579,5536,5540,5862,5538,5542,4752,5114,5993,4752,4961,4752,5797,4768,5153,4752,4752,5804,6899,5787,6318,4752,4752,5957,4752,6213,6334,4752,4752,4752,6731,4752,6234,6343,5539,6009,4752,4752,5769,4752,4752,5938,6343,5539,4752,6425,4961,4752,5193,4752,4752,6231,4752,5377,5401,4752,6254,6318,4752,4752,6255,4752,6425,4752,4752,5409,6311,4961,4752,4752,5823,4752,4752,4752,6240,4752,4752,4752,5103,5454,6009,4752,4752,5844,5146,5452,6377,4752,4752,5846,5145,6860,6009,4752,5190,6375,6009,6422,6424,4752,6868,4752,4752,4752,5388,5380,6254,6362,4752,5124,5122,4752,4752,6322,6322,6322,6322,4707,4707,4707,4707,4708,4735,4735,6381,4752,6009,5377,6389,4752,4752,6885,6009,4752,4752,6868,5377,6253,6887,4752,4752,6887,4752,4752,6886,4752,6403,5971,6255,4752,4752,5853,4752,4752,4752,6936,6255,6886,5971,6255,5191,4752,4752,5752,4752,4756,6589,6886,6401,6885,6885,4752,6886,5377,6885,6394,6394,4703,4703,4703,4752,5185,4752,4752,4757,5110,4960,5744,6398,4752,5187,6451,4752,4752,6409,4752,6411,5750,6215,6417,5744,6435,6217,4752,5189,6447,6457,6461,6462,6466,6486,6469,6484,6472,6478,6475,6480,6498,6492,6490,6496,6496,6500,6506,6506,6507,6504,6506,6506,6506,6511,6514,4752,4752,5854,4752,4752,4752,6619,4824,5749,6417,6518,4752,4752,4752,6756,5187,4752,4752,4752,6834,6431,4752,4752,4752,6836,5834,6009,6522,6527,6869,4752,6430,4752,5188,4752,5223,4752,4752,4752,6253,4752,6540,6551,6561,5402,6575,4752,4752,5945,4752,4752,6755,6009,4752,5188,5194,4752,4752,4752,6252,6255,4752,6756,5962,4752,5222,5392,5390,4752,6849,6848,4752,5231,6032,6027,6850,4752,4752,4752,6854,6619,4824,5749,6582,5518,4752,4752,4752,6861,4753,6634,4752,4752,5945,5691,4752,4752,6589,4752,4753,4752,4757,5561,4752,6597,4752,6607,4752,5235,4752,4752,4752,5225,6612,5541,4752,6617,5229,6351,5401,6625,4752,5753,4752,6633,5359,6640,6645,6009,4944,5540,4752,4752,5955,4752,6649,6238,5686,5686,5144,4752,5744,4752,4752,4752,4753,4980,6619,4824,6272,6654,5754,4753,4752,6311,4752,4752,6312,4752,4752,5355,5359,5550,6658,6009,5357,6678,4944,5541,4752,5571,4752,6597,6597,6597,6597,4752,4752,4752,6928,4752,4752,5110,6426,4752,5746,6423,4752,5266,4752,4564,4752,6662,5550,6671,6670,6009,4752,4752,5977,4752,6664,6669,5153,4752,5270,6423,5505,4823,5748,5401,5189,4752,4752,4752,5739,6322,5752,4753,4752,4752,5741,5390,4752,6675,6690,6429,6694,4752,4752,5193,6234,4824,5750,4752,5369,4752,4955,4752,4752,5385,5753,4756,4752,6239,4752,6240,4752,5349,4758,4752,6705,6429,4752,5372,4758,5592,4752,6705,6429,5572,6238,6913,4752,4752,6009,4752,4752,5712,4752,4752,6010,6536,4714,6709,4752,4752,6016,4752,4756,4752,6240,4752,5379,6255,4752,5388,4752,6257,6419,5074,6720,4752,4752,6042,4752,5749,4752,4752,4752,6929,4752,4752,5971,6717,6429,4752,4752,6042,5417,6914,6241,4752,5747,6233,4752,4752,4752,6926,4752,6729,4752,4752,4752,6933,6727,4563,4752,5747,6741,5389,5192,5222,4752,5986,4561,5748,4752,6936,6934,4562,5749,6934,5853,4563,6935,4752,5387,5748,4752,4752,6735,6371,4563,6936,6934,4752,4752,6739,6680,6421,4744,6300,6231,5091,4752,5389,5748,4752,4752,6701,4581,6039,6745,6748,4620,6733,6752,6760,6768,6762,6764,6771,6775,6779,6782,6784,6788,6790,6794,6797,6801,6804,6809,6808,6813,6815,6819,6817,6823,6827,6830,4752,5391,5223,5222,6421,4752,4752,4759,5112,4760,4752,5113,4752,5428,6533,4752,4752,6388,4752,4752,6393,4752,4752,6428,4752,4752,6428,6260,6840,5381,4752,6845,4584,4752,6043,4752,5495,4752,4752,4753,6197,4769,6859,6044,4752,4752,6195,5582,4752,6739,6907,5191,4752,6867,6915,4752,5506,5505,4752,5973,4752,4563,4752,5386,4752,5533,5537,5541,5389,5388,4752,4752,6232,4752,4752,5747,6741,6355,6235,4752,6543,6238,5400,4752,5188,4752,4752,6891,5777,5700,4752,5562,6253,4752,4752,6912,4752,4752,6932,4752,4752,6935,4752,4753,5435,5440,5445,5388,5388,4752,4752,6242,6042,4752,5739,6934,4752,5571,4752,5398,4752,4751,5401,5401,5399,5793,4753,6898,5778,4563,4752,5388,5749,6601,5747,6906,5192,6236,4752,6897,5777,4563,4752,5130,4752,4752,6338,4752,4752,6231,4752,4752,6920,4752,4752,4752,6261,4752,5775,6919,4752,5386,6258,4781,5595,5193,6237,4752,5571,4752,5399,4760,4752,5740,6935,4752,4752,6107,4752,4752,6924,4752,4752,6281,5535,6896,6942,4752,4752,6311,4752,4752,4752,6530,4759,4752,5740,6935,6951,4752,4752,4752,6311,5770,4977,6959,4752,4752,6312,5113,4752,6957,4752,4752,6313,4752,4752,4752,6453,2,4,8,262144,0,0,0,2147483648,1073741824,0,0,1075838976,2097152,2097152,268435456,4194432,4194560,4196352,270532608,2097152,4194304,50331648,0,0,0,4194304,0,0,541065216,541065216,-2143289344,-2143289344,4194304,4194304,4196352,-2143289344,4194304,4194432,37748736,541065216,-2143289344,4194304,4194304,4194304,4194304,4194304,4194304,4198144,4196352,8540160,4194304,4194304,4194304,4196352,276901888,4194304,4194304,8425488,4194304,1,0,1024,137363456,66,37748736,742391808,239075328,-1405091840,775946240,775946240,775946240,171966464,742391808,742391808,742391808,775946240,-1371537408,775946240,775946240,-1405091840,-1371537408,775946240,775946240,775946240,775946240,4718592,-1371537408,775946240,-1371537408,775946240,-1371537408,171966464,775946240,171966464,171966464,171966464,171966464,239075328,171966464,775946240,239075328,64,4718592,2097216,4720640,541589504,4194368,541589504,4194400,4194368,541065280,4194368,4194368,-2143289280,4194368,-2143285440,-2143285408,-2143285408,776470528,-2143285408,-2109730976,-2143285408,-2143285408,-2143285408,-2109730976,-2143285408,775946336,775946304,775946304,776470528,775946304,-1908404384,775946304,-1908404384,0,2097152,4194304,128,0,256,2048,0,0,16777216,16777216,16777216,16777216,64,64,64,64,96,96,96,64,0,0,0,24,64,0,96,96,0,0,0,288,8388608,0,0,8388608,4096,4096,4096,32,96,96,96,96,262144,96,96,1048576,128,0,1048576,0,0,2048,2048,2048,2048,0,0,0,0,1,0,0,0,2,0,0,0,3,96,96,128,128,2048,524288,268435456,536870912,1073741824,0,0,8388608,4096,0,64,0,2048,524288,536870912,0,64,524288,64,96,64,524288,524288,96,96,64,524288,96,64,80,528,524304,1048592,2097168,268435472,16,16,2,536936448,16,262160,16,536936448,16,17,17,20,16,48,16,16,20,48,64,128,1024,134217728,0,0,24,560,48,2097680,3145744,1048592,1048592,2097168,16,1049104,16,16,20,560,2097168,2097168,16,16,16,16,20,16,2097552,3146256,16,16,16,28,0,2,2098064,17,21,16,16,163577856,17,528,528,16,528,2228784,-161430188,-161429680,-161430188,-161430188,-161430188,-161429680,-161430188,-161429676,-160905388,-161429676,-161430188,-161429676,-161429676,-161429676,-161429676,-161429675,-161349072,-161349072,-161429675,-161349072,-161349072,-161349072,-161349072,-161347728,-161347728,-161347728,-161347728,-161298576,-160299088,-161298576,-161298572,-161298572,-161298572,-161298572,-18860267,-160774284,-18729163,-160774288,-160299084,-161298572,-160774284,-161298572,-161298572,16,16,28,16,16,112,21,53,146804757,146812949,0,16,0,48,3146256,2097680,1048592,146862101,146863389,-161429676,146863389,146863421,146863389,146863389,146863389,146863421,-161429740,-161429676,-160905388,-161298572,0,65536,524288,1048576,33554432,0,159383552,0,0,0,1157627904,-1073741824,0,0,0,300,142606336,0,8192,0,0,0,384,0,243269632,0,0,0,1862270976,1,32768,131328,131072,16777216,0,0,1,2,4,128,2097152,0,1073741825,2147483648,2147483648,8,16777216,1073774592,278528,1226014816,100665360,100665360,100665360,100665360,100665360,100665360,-2046818288,1091799136,-2044196848,1091799136,1091799136,1091799136,1091799136,1091799136,1091803360,1091799136,1091799136,1158908e3,1158908001,1192462432,1192462448,1192462448,1192462448,1192462448,1200851056,1091799393,1200851056,1200851056,1192462448,1870630720,1870647104,1870630720,1870647104,1870630720,1870647104,1870647104,1870647104,1870647104,1870647104,1870647120,1870647124,1870647124,1870647124,1870630736,1870655316,1870655316,1870655316,1870655317,1870655348,1870647120,1870647120,1870647120,1879019376,1879035760,1870647124,1879035760,1879035764,32768,131072,524288,2097152,8388608,16777216,134217728,268435456,1073741824,2147483648,131328,0,0,0,832,0,164096,0,0,0,520,4333568,1048576,1224736768,0,0,1,4,0,0,235712,0,1090519040,0,0,0,999,259072,1191182336,0,0,9437184,0,0,1048576,0,128,128,128,128,2048,2048,231744,0,0,0,1007,495424,7864320,1862270976,0,0,0,1024,0,0,0,63,52e4,1862270976,1862270976,16252928,0,0,16252928,0,0,0,1536,2147483648,64,98304,1048576,150994944,0,64,256,3584,16384,98304,393216,98304,393216,524288,1048576,2097152,4194304,2147483648,0,0,2097152,4194304,251658240,536870912,1073741824,0,0,8192,1073741824,1073741824,8388608,2097152,16777216,134217728,268435456,2048,65536,262144,524288,1048576,2097152,1048576,2097152,4194304,117440512,64,256,1536,16384,65536,117440512,134217728,536870912,1073741824,0,0,100663296,0,0,0,4096,0,0,0,64,0,0,128,-2113929216,64,256,1536,65536,262144,524288,4194304,16777216,100663296,134217728,536870912,1073741824,1048576,2097152,4194304,16777216,4194432,3145728,524288,2097152,134217728,268435456,65536,1048576,0,0,0,2048,0,0,134217728,0,0,0,15,16,524288,2097152,1073741824,2147483648,2147483648,0,1048576,2097152,67108864,1073741824,0,0,0,0,2097152,1073741824,2147483648,0,0,0,768,0,2097152,2147483648,0,-872415232,0,-872415232,67108864,134217728,1073741824,0,2147483648,0,0,0,8192,4096,0,0,1536,524288,64,64,96,64,0,524288,0,1073741824,2621440,1073741824,9476,512,0,32,384,8192,0,0,1,8,512,512,9476,134218240,1050624,262144,512,50331649,1275208192,4194312,4194312,4194312,4194312,541065224,4194312,4194312,4194344,-869654016,4203820,-869654016,-869654016,-869654016,-869654016,1279402504,1279402504,1279402504,1279402504,2143549415,2143549415,2143549415,2143549415,2143549415,2143549423,2143549415,2143549423,2143549423,2143549423,2143549423,16,32,256,1024,8192,33554432,8192,33554432,67108864,134217728,0,0,536870912,9216,0,0,1792,2147483648,0,1050624,0,0,1,14,16,32,1024,2048,77824,524288,0,512,139264,1275068416,512,2760704,-872415232,0,0,1856,2147483648,4203520,0,0,0,32768,0,0,0,58624,520,0,0,0,131072,0,0,0,512,0,1048576,0,1275068416,0,0,0,65536,0,0,0,12561,0,1007,1007,0,0,2048,524288,0,536870912,0,512,0,2048,1048576,0,0,40,0,2621440,0,0,2147483648,999,259072,4194304,25165824,100663296,402653184,1,102,384,512,5120,5120,8192,16384,229376,4194304,4194304,25165824,33554432,67108864,402653184,402653184,536870912,1073741824,0,0,2048,3145728,16777216,536870912,110,110,0,0,1,30,32,0,40,0,524288,64,96,1,6,96,384,512,1024,4096,8192,16384,229376,67108864,402653184,536870912,0,2,16,104,0,104,104,8192,33554432,134217728,0,0,2048,100663296,0,229376,25165824,33554432,402653184,536870912,8192,33554432,0,0,0,17408,0,524288,2097152,0,0,2048,268435456,536870912,0,0,268435456,49152,2,4,32,64,256,512,1024,8,8,0,0,1,64,128,3584,16384,3145728,16777216,67108864,134217728,805306368,1073741824,0,0,4,64,256,1024,4096,8192,65536,524288,98304,131072,25165824,268435456,536870912,0,2,4,256,1024,0,2048,0,98304,131072,16777216,268435456,0,0,0,262144,0,0,65536,268435456,0,0,1,128,512,2048,524288,2048,524288,67108864,536870912,0,262144,0,0,2432,0,0,4096,8192,0,32,4100,67108864,0,32768,0,32768,0,0,134348800,134348800,1049088,1049088,8192,1049088,12845065,12845065,12845065,12845065,270532608,0,1049088,0,134348800,12845065,12845065,147193865,5505537,5591557,5587465,5587457,5587457,147202057,5587457,5587457,5591557,5587457,13894153,13894153,13894153,13894153,-1881791493,13894153,81003049,13894153,13894153,-1881791493,-1881791493,-1881791493,-1881791493,0,9,0,0,1,5505024,142606336,0,0,0,278528,0,82432,0,0,1,16777216,0,0,0,139264,0,0,0,229440,0,5,86528,9,4456448,8388608,0,0,8192,8392704,9,8388608,0,0,256,1024,65536,16777216,268435456,0,0,41,75497472,0,0,16384,262144,0,0,0,512,1048576,0,0,262144,4194304,8388608,0,0,16384,4194304,2147483648,0,0,81920,0,0,2,4,16,32,8192,131072,262144,1048576,4194304,8388608,4194304,8388608,16777216,33554432,-1946157056,0,-1946157056,0,0,0,524288,0,0,0,16,0,0,0,8,0,0,0,12,0,0,0,13,0,1,2,56,64,896,8192,131072,0,0,33554432,1024,0,4,0,8,16,32,64,128,1024,2048,16384,65536,262144,524288,2097152,384,512,8192,131072,1048576,0,16384,65536,0,65536,0,0,131072,0,32,0,32768,134217728,0,0,2,8,16,0,2,8,32,64,256,1024,98304,131072,1048576,33554432,134217728,2147483648,8,32,384,8192,131072,33554432,131072,33554432,2147483648,0,0,24576,0,0,0,50331648,0,8396800,4194304,134217728,2048,134217728,0,0,2,16384,32768,1048576,2097152,0,8396800,0,0,4,8,0,0,16384,0,2,4,128,3584,16384,16384,16384,16777216,16384,229376,25165824,33554432,268435456,536870912,524288,268567040,16384,-2113929088,2113544,68423701,68423701,68423701,68423701,68489237,68423701,68423701,68423701,85200917,68423701,68489237,72618005,68423701,68423701,-2079059883,68423701,-2079059883,68425749,68423703,69488664,85200919,69488664,69488664,69488664,69488664,70537244,70537245,70537245,70537245,70537245,70537245,70539293,-2022351809,-2076946339,70537245,-2076946339,-2076946339,-2022351681,-2022351681,-2022351681,-2022351681,-2022351809,-2022351681,-2022351809,-2022351681,32768,65536,4194304,16777216,2147483648,0,0,0,8388608,134217728,1073741824,131584,268435456,0,0,4,128,1048576,67108864,0,0,4,256,1024,98304,0,0,5242880,-2080374784,268288,0,0,4,16777216,0,0,23,0,0,0,867391,24,282624,0,0,6,0,0,0,2097152,0,0,0,28,3145728,0,0,32768,65536,0,284672,0,0,0,1048576,0,63,128,351232,7340032,-2030043136,0,0,131072,268435456,0,0,8,32,64,16,4096,262144,1048576,1073741824,0,0,0,-2046820352,0,20480,0,0,8,4194304,0,0,15,16,32,3072,20480,65536,262144,7340032,50331648,16,32,128,3072,20480,0,1,4,1048576,4096,1048576,512,0,0,0,150528,0,0,0,5242880,0,7,0,14,32,1024,2048,12288,1,14,32,128,1024,7340032,50331648,2147483648,0,0,2048,16384,65536,7340032,50331648,8,32,1024,65536,262144,2097152,1073741824,0,1,6,8,32,128,1024,65536,2097152,4194304,50331648,2147483648,0,1,2,4,2097152,4194304,67108864,134217728,536870912,0,32768,4194304,16777216,0,1,2,4,50331648,67108864,2147483648,0,0,128,50331648,0,0,8,33554432,4096,4194304,268435456,0,0,32768,131072,131072,0,32768,32768,268435968,268435968,1073743872,268435968,0,128,6144,0,229376,128,268435968,16777220,268436032,256,256,256,256,257,256,256,536871168,256,256,256,256,384,-1879046336,-1879046334,1073744256,-1879046334,-1879046326,-1879046334,-1879046334,-1879046326,-1879046326,-1845491902,-1878784182,268444480,268444480,268444480,268444480,2100318145,268436288,268436288,268436288,268436288,268436289,268436288,2100318149,2100318149,2100318149,2100318149,2100326337,2100318149,2100318149,2100318145,2100318149,2100318145,2100318149,2100326341,2100318149,2100326341,2100326341,0,1,16,32,128,512,0,4194304,1,1024,0,0,229376,0,0,12,3145728,0,0,576,0,0,16,8192,0,0,16,262144,0,384,0,0,21,266240,1864,0,0,0,8388608,0,0,0,128,0,0,0,256,0,0,0,260,512,0,1,4036,19939328,2080374784,0,0,0,16777216,0,0,0,32,0,0,0,40,67108864,0,19947520,0,0,0,19947520,2304,0,8,0,512,301989888,0,0,262144,16777216,0,1,4,64,128,64,128,3840,16384,19922944,19922944,2080374784,0,0,29,0,0,1536,2147483648,0,0,32,1,8,0,33554432,0,0,32768,196608,0,0,0,33554432,0,0,32768,65536,131072,0,0,524288,524288,524288,524288,64,64,64,32,96,8,0,33554432,262144,8192,0,0,4194304,1024,0,4096,0,1024,2048,16384,3145728,2048,524288,536870912,1073741824,8,0,0,512,131072,0,0,64,256,1536,2048,33554432,8192,0,0,32,64,256,32768,65536,16777216,134217728,536870912,1073741824,0,3145728,16777216,536870912,1073741824,0,0,8192,8192,8192,9216,33554432,0,2097152,16777216,1073741824,0,0,32768,0,16777216,0,16777216,64,0,2,0,0,32768,16777216,0,0,32,512,128,131072,0,134218752,0,0,44,0,66048,0,0,0,67108864,0,0,0,8192,0,8192,0,536870912,0,0,0,12289,0,268500992,4243456,0,0,59,140224,5505024,-1887436800,0,0,2,2,4096,4096,0,4096,8192,67108864,0,0,1,4032,0,4243456,4096,1048588,12289,1124073472,1124073472,1124073472,1124073472,1124073472,1124073488,1124073472,1124073472,1124073474,1124073472,1124073472,1392574464,1124073472,12289,1073754113,12289,12289,1124073472,12289,12289,1098920193,1098920193,1124073488,1124073472,1258292224,1124073472,1124073472,1124073472,1124085761,1258304513,1124085761,1124085761,1124085761,1124085777,1132474625,1098920209,1132474625,1132474625,1132474625,1132474625,1400975617,2132360255,2132622399,2132622399,2132360255,2132360255,2132360255,2132360255,2132622399,2132360255,2132360255,2132360255,2140749119,2132360255,2140749119,2140749119,0,65536,268435456,49152,184549376,0,0,0,83886080,0,0,318767104,0,0,32768,100663296,402653184,1610612736,0,0,0,231488,0,12545,25165824,0,0,49152,0,0,256,1536,65536,0,0,58720256,0,0,131072,32768,0,0,134217728,0,12305,13313,0,0,331776,83886080,117440512,0,0,1,6,32,64,0,78081,327155712,0,0,511808,7864320,512,65536,0,0,64,65536,1048576,0,0,33554432,1073741824,0,0,110,0,0,256,8388608,0,0,524288,2097152,2147483648,0,0,77824,0,0,0,268435456,524288,1048576,16777216,100663296,134217728,0,339968,0,0,128,131072,1024,134217728,0,268435456,0,0,128,33554432,0,0,1,12288,0,0,0,134217728,2048,12288,65536,524288,1048576,1048576,33554432,67108864,134217728,805306368,0,327680,0,0,256,65536,0,0,268435456,1048576,33554432,134217728,805306368,1,14,16,1024,4096,8192,229376,65536,524288,33554432,134217728,536870912,1073741824,0,1,14,1024,2048,4096,8192,131072,1048576,8388608,33554432,134217728,2147483648,0,0,4096,65536,524288,134217728,16384,4194304,0,0,999,29619200,2113929216,0,0,0,148480,1,12,1024,134217728,0,128,134217728,8,0,8,8,8,0,1,4,8,134217728,536870912,0,0,1073741824,32768,0,4,8,536870912,0,0,1024,1024,0,1024,2048,3145728,0,8,32,512,4096,8192,0,0,68157440,137363456,0,66,66,524288,4100,1024,0,0,605247,1058013184,1073741824,100680704,25165824,92274688,25165824,25165824,92274688,92274688,25165952,25165824,25165824,26214400,92274688,25165824,92274688,93323264,92274688,92274688,92274688,92274688,92274720,93323264,25165890,100721664,25165890,100721928,100721928,100787464,100853e3,100721928,100721928,125977600,125977600,125977600,125977600,125846528,125846528,126895104,125846528,125846528,125846528,125846560,125977600,127026176,125977600,125977600,127026176,127026176,281843,1330419,281843,1330419,281843,281843,1330419,1330419,281843,281843,5524723,5524723,5524723,5524723,93605107,5524723,39079155,72633587,72633587,5524723,92556531,93605107,93605107,127290611,97799411,127290611,131484915,2097152,134217728,0,0,1024,65536,58368,0,0,0,301989888,8,124160,189696,0,0,605503,1066401792,0,0,3,240,19456,262144,0,150528,0,0,0,536870912,0,1073741824,0,57344,0,0,0,1073741824,0,0,0,1,2,112,128,3072,16384,262144,2048,16384,262144,0,0,2097152,16777216,0,0,0,1,2,48,64,0,1,2,16,32,64,384,8192,131072,1048576,32,4096,8192,131072,0,0,32768,0,256,0,256,0,65536,1024,2048,262144,0,0,32768,256,0,0,1024,2097152,0,0,0,16384,0,0,0,4,0,0,0,5,64,128,262144,0,0,2097152,268435456,0,0,64,128,0,0,1536,1792,1,2,16,64,0,0],r.TOKEN=["(0)","PragmaContents","DirCommentContents","DirPIContents","CDataSection","Wildcard","EQName","URILiteral","IntegerLiteral","DecimalLiteral","DoubleLiteral","StringLiteral","PredefinedEntityRef","'\"\"'","EscapeApos","ElementContentChar","QuotAttrContentChar","AposAttrContentChar","PITarget","NCName","QName","S","S","CharRef","CommentContents","EOF","'!'","'!='","'\"'","'#'","'#)'","'$'","'%'","''''","'('","'(#'","'(:'","')'","'*'","'*'","'+'","','","'-'","'-->'","'.'","'..'","'/'","'//'","'/>'","':'","':)'","'::'","':='","';'","'<'","'<!--'","'</'","'<<'","'<='","'<?'","'='","'>'","'>='","'>>'","'?'","'?>'","'@'","'NaN'","'['","']'","'after'","'all'","'allowing'","'ancestor'","'ancestor-or-self'","'and'","'any'","'append'","'array'","'as'","'ascending'","'at'","'attribute'","'base-uri'","'before'","'boundary-space'","'break'","'by'","'case'","'cast'","'castable'","'catch'","'check'","'child'","'collation'","'collection'","'comment'","'constraint'","'construction'","'contains'","'content'","'context'","'continue'","'copy'","'copy-namespaces'","'count'","'decimal-format'","'decimal-separator'","'declare'","'default'","'delete'","'descendant'","'descendant-or-self'","'descending'","'diacritics'","'different'","'digit'","'distance'","'div'","'document'","'document-node'","'element'","'else'","'empty'","'empty-sequence'","'encoding'","'end'","'entire'","'eq'","'every'","'exactly'","'except'","'exit'","'external'","'first'","'following'","'following-sibling'","'for'","'foreach'","'foreign'","'from'","'ft-option'","'ftand'","'ftnot'","'ftor'","'function'","'ge'","'greatest'","'group'","'grouping-separator'","'gt'","'idiv'","'if'","'import'","'in'","'index'","'infinity'","'inherit'","'insensitive'","'insert'","'instance'","'integrity'","'intersect'","'into'","'is'","'item'","'json'","'json-item'","'key'","'language'","'last'","'lax'","'le'","'least'","'let'","'levels'","'loop'","'lowercase'","'lt'","'minus-sign'","'mod'","'modify'","'module'","'most'","'namespace'","'namespace-node'","'ne'","'next'","'no'","'no-inherit'","'no-preserve'","'node'","'nodes'","'not'","'object'","'occurs'","'of'","'on'","'only'","'option'","'or'","'order'","'ordered'","'ordering'","'paragraph'","'paragraphs'","'parent'","'pattern-separator'","'per-mille'","'percent'","'phrase'","'position'","'preceding'","'preceding-sibling'","'preserve'","'previous'","'processing-instruction'","'relationship'","'rename'","'replace'","'return'","'returning'","'revalidation'","'same'","'satisfies'","'schema'","'schema-attribute'","'schema-element'","'score'","'self'","'sensitive'","'sentence'","'sentences'","'skip'","'sliding'","'some'","'stable'","'start'","'stemming'","'stop'","'strict'","'strip'","'structured-item'","'switch'","'text'","'then'","'thesaurus'","'times'","'to'","'treat'","'try'","'tumbling'","'type'","'typeswitch'","'union'","'unique'","'unordered'","'updating'","'uppercase'","'using'","'validate'","'value'","'variable'","'version'","'weight'","'when'","'where'","'while'","'wildcards'","'window'","'with'","'without'","'word'","'words'","'xquery'","'zero-digit'","'{'","'{{'","'{|'","'|'","'||'","'|}'","'}'","'}}'"]}),define("ace/mode/xquery/visitors/SemanticHighlighter",["require","exports","module"],function(e,t,n){var r=t.SemanticHighlighter=function(e){this.tokens={},this.getTokens=function(){return this.visit(e),this.tokens},this.EQName=this.NCName=function(e){var t=e.pos.sl;return this.tokens[t]=this.tokens[t]===undefined?[]:this.tokens[t],e.pos.type="support.function",this.tokens[t].push(e.pos),!0},this.visit=function(e){var t=e.name,n=!1;typeof this[t]=="function"&&(n=this[t](e)===!0?!0:!1),n||this.visitChildren(e)},this.visitChildren=function(e,t){for(var n=0;n<e.children.length;n++){var r=e.children[n];t!==undefined&&typeof t[r.name]=="function"?t[r.name](r):this.visit(r)}}}})
4093 ^
4094
40950 error(s), 2 warning(s)
4096Linting './public_html/js/files_api.js' ...
4097./public_html/js/files_api.js:739: WARNING - Keywords and reserved words are not allowed as unquoted property names in older versions of JavaScript. If you are targeting newer versions of JavaScript, set the appropriate language_in option.
4098 this.export = function(type, callback)
4099 ^
4100
4101./public_html/js/files_api.js:753: WARNING - Keywords and reserved words are not allowed as unquoted property names in older versions of JavaScript. If you are targeting newer versions of JavaScript, set the appropriate language_in option.
4102 .text(v.label).click(function() { self.export(v.format); })
4103 ^
4104
41050 error(s), 2 warning(s)
4106Linting './public_html/js/files_ui.js' ...
4107Linting './public_html/js/wModal.js' ...
4108Linting './public_html/skins/default/ui.js' ...
4109Running generic_js_lint FAILED (at 0d7efae76d639a2168d6afef0c3c6f178c19b250)
4110Previous HEAD position was 0d7efae... Merge branch 'master' into manticore
4111HEAD is now at 1c3cb93... Update Kolab plugins
4112Running generic_js_lint FAILED (at 1c3cb93ae9e47461553a15dd3581b76fd60ad0dc)
4113Running ../stick.git/drydocker/chwala/test_build.sh FAILED (at 1c3cb93ae9e47461553a15dd3581b76fd60ad0dc)
4114========================================================================
4115 Running '_install_package_builddep chwala' OK (at 1c3cb93ae9e47461553a15dd3581b76fd60ad0dc)
4116 Running 'generic_php_lint' OK (at 1c3cb93ae9e47461553a15dd3581b76fd60ad0dc)
4117 Running 'generic_js_lint' FAILED (at 0d7efae76d639a2168d6afef0c3c6f178c19b250)
4118 Running 'generic_js_lint' FAILED (at 1c3cb93ae9e47461553a15dd3581b76fd60ad0dc)
4119 Running '../stick.git/drydocker/chwala/test_build.sh' FAILED (at 1c3cb93ae9e47461553a15dd3581b76fd60ad0dc)
4120========================================================================
4121/var/tmp/2312
4122

Lease Host

When
Completed at Nov 10 2015, 10:33 AM · Built for 1 s
Status
Passed
This build step has since been deleted on the build plan. Some information may be omitted.

Wait for Previous Commits to Build

When
Completed at Nov 10 2015, 10:33 AM · Built instantly
Status
Passed

Build Log 6515 (waiting - blockers)
25 - 50 - 100 - Unlimited Lines

1Blocked by: Build 1896
2Blocked by: Build 1896
3Blocked by: Build 1896
4Blocked by: Build 1896
5Blocked by: Build 1896
6Blocked by: Build 1896
7Blocked by: Build 1896
8Blocked by: Build 1896
9Blocked by: Build 1896
10Blocked by: Build 1896
11Blocked by: Build 1896
12Blocked by: Build 1896
13Blocked by: Build 1896
14Blocked by: Build 1896
15Blocked by: Build 1896
16Blocked by: Build 1896
17Blocked by: Build 1896
18Blocked by: Build 1896
19Blocked by: Build 1896
20Blocked by: Build 1896
21Blocked by: Build 1896
22Blocked by: Build 1896
23Blocked by: Build 1896
24Blocked by: Build 1896
25Blocked by: Build 1896
26Blocked by: Build 1896
27Blocked by: Build 1896
28Blocked by: Build 1896
29Blocked by: Build 1896
30Blocked by: Build 1896
31Blocked by: Build 1896
32Blocked by: Build 1896
33Blocked by: Build 1896
34Blocked by: Build 1896
35Blocked by: Build 1896
36Blocked by: Build 1896
37Blocked by: Build 1896
38Blocked by: Build 1896
39Blocked by: Build 1896
40Blocked by: Build 1896
41Blocked by: Build 1896
42Blocked by: Build 1896
43Blocked by: Build 1896
44Blocked by: Build 1896
45Blocked by: Build 1896
46Blocked by: Build 1896
47Blocked by: Build 1896
48Blocked by: Build 1896
49Blocked by: Build 1896
50Blocked by: Build 1896
51Blocked by: Build 1896
52

Event Timeline