You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

12 lines
331 KiB

/* regenerator 0.8.42: Source transformer enabling ECMAScript 6 generator functions (yield) in JavaScript-of-today (ES5) */
require=function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var l="function"==typeof require&&require;if(!s&&l)return l(o,!0);if(a)return a(o,!0);var u=new Error("Cannot find module '"+o+"'");throw u.code="MODULE_NOT_FOUND",u}var c=n[o]={exports:{}};t[o][0].call(c.exports,function(e){var n=t[o][1][e];return i(n?n:e)},c,c.exports,e,t,n,r)}return n[o].exports}for(var a="function"==typeof require&&require,o=0;o<r.length;o++)i(r[o]);return i}({1:[function(e,t,n){},{}],2:[function(e,t,n){function r(e,t){return d.isUndefined(t)?""+t:d.isNumber(t)&&!isFinite(t)?t.toString():d.isFunction(t)||d.isRegExp(t)?t.toString():t}function i(e,t){return d.isString(e)?e.length<t?e:e.slice(0,t):e}function a(e){return i(JSON.stringify(e.actual,r),128)+" "+e.operator+" "+i(JSON.stringify(e.expected,r),128)}function o(e,t,n,r,i){throw new y.AssertionError({message:n,actual:e,expected:t,operator:r,stackStartFunction:i})}function s(e,t){e||o(e,!0,t,"==",y.ok)}function l(e,t){if(e===t)return!0;if(d.isBuffer(e)&&d.isBuffer(t)){if(e.length!=t.length)return!1;for(var n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}return d.isDate(e)&&d.isDate(t)?e.getTime()===t.getTime():d.isRegExp(e)&&d.isRegExp(t)?e.source===t.source&&e.global===t.global&&e.multiline===t.multiline&&e.lastIndex===t.lastIndex&&e.ignoreCase===t.ignoreCase:d.isObject(e)||d.isObject(t)?c(e,t):e==t}function u(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function c(e,t){if(d.isNullOrUndefined(e)||d.isNullOrUndefined(t))return!1;if(e.prototype!==t.prototype)return!1;if(d.isPrimitive(e)||d.isPrimitive(t))return e===t;var n=u(e),r=u(t);if(n&&!r||!n&&r)return!1;if(n)return e=h.call(e),t=h.call(t),l(e,t);var i,a,o=g(e),s=g(t);if(o.length!=s.length)return!1;for(o.sort(),s.sort(),a=o.length-1;a>=0;a--)if(o[a]!=s[a])return!1;for(a=o.length-1;a>=0;a--)if(i=o[a],!l(e[i],t[i]))return!1;return!0}function p(e,t){return!(!e||!t)&&("[object RegExp]"==Object.prototype.toString.call(t)?t.test(e):e instanceof t||t.call({},e)===!0)}function f(e,t,n,r){var i;d.isString(n)&&(r=n,n=null);try{t()}catch(e){i=e}if(r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),e&&!i&&o(i,n,"Missing expected exception"+r),!e&&p(i,n)&&o(i,n,"Got unwanted exception"+r),e&&i&&n&&!p(i,n)||!e&&i)throw i}var d=e("util/"),h=Array.prototype.slice,m=Object.prototype.hasOwnProperty,y=t.exports=s;y.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=a(this),this.generatedMessage=!0);var t=e.stackStartFunction||o;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var n=new Error;if(n.stack){var r=n.stack,i=t.name,s=r.indexOf("\n"+i);if(s>=0){var l=r.indexOf("\n",s+1);r=r.substring(l+1)}this.stack=r}}},d.inherits(y.AssertionError,Error),y.fail=o,y.ok=s,y.equal=function(e,t,n){e!=t&&o(e,t,n,"==",y.equal)},y.notEqual=function(e,t,n){e==t&&o(e,t,n,"!=",y.notEqual)},y.deepEqual=function(e,t,n){l(e,t)||o(e,t,n,"deepEqual",y.deepEqual)},y.notDeepEqual=function(e,t,n){l(e,t)&&o(e,t,n,"notDeepEqual",y.notDeepEqual)},y.strictEqual=function(e,t,n){e!==t&&o(e,t,n,"===",y.strictEqual)},y.notStrictEqual=function(e,t,n){e===t&&o(e,t,n,"!==",y.notStrictEqual)},y.throws=function(e,t,n){f.apply(this,[!0].concat(h.call(arguments)))},y.doesNotThrow=function(e,t){f.apply(this,[!1].concat(h.call(arguments)))},y.ifError=function(e){if(e)throw e};var g=Object.keys||function(e){var t=[];for(var n in e)m.call(e,n)&&t.push(n);return t}},{"util/":34}],3:[function(e,t,n){arguments[4][1][0].apply(n,arguments)},{dup:1}],4:[function(e,t,n){(function(t){"use strict";function r(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}function i(){return o.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function a(e,t){if(i()<t)throw new RangeError("Invalid typed array length");return o.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t),e.__proto__=o.prototype):(null===e&&(e=new o(t)),e.length=t),e}function o(e,t,n){if(!(o.TYPED_ARRAY_SUPPORT||this instanceof o))return new o(e,t,n);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return c(this,e)}return s(this,e,t,n)}function s(e,t,n,r){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?d(e,t,n,r):"string"==typeof t?p(e,t,n):h(e,t)}function l(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function u(e,t,n,r){return l(t),t<=0?a(e,t):void 0!==n?"string"==typeof r?a(e,t).fill(n,r):a(e,t).fill(n):a(e,t)}function c(e,t){if(l(t),e=a(e,t<0?0:0|m(t)),!o.TYPED_ARRAY_SUPPORT)for(var n=0;n<t;++n)e[n]=0;return e}function p(e,t,n){if("string"==typeof n&&""!==n||(n="utf8"),!o.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var r=0|g(t,n);e=a(e,r);var i=e.write(t,n);return i!==r&&(e=e.slice(0,i)),e}function f(e,t){var n=t.length<0?0:0|m(t.length);e=a(e,n);for(var r=0;r<n;r+=1)e[r]=255&t[r];return e}function d(e,t,n,r){if(t.byteLength,n<0||t.byteLength<n)throw new RangeError("'offset' is out of bounds");if(t.byteLength<n+(r||0))throw new RangeError("'length' is out of bounds");return t=void 0===n&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,n):new Uint8Array(t,n,r),o.TYPED_ARRAY_SUPPORT?(e=t,e.__proto__=o.prototype):e=f(e,t),e}function h(e,t){if(o.isBuffer(t)){var n=0|m(t.length);return e=a(e,n),0===e.length?e:(t.copy(e,0,0,n),e)}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||Y(t.length)?a(e,0):f(e,t);if("Buffer"===t.type&&Z(t.data))return f(e,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function m(e){if(e>=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|e}function y(e){return+e!=e&&(e=0),o.alloc(+e)}function g(e,t){if(o.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return z(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return H(e).length;default:if(r)return z(e).length;t=(""+t).toLowerCase(),r=!0}}function v(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if(n>>>=0,t>>>=0,n<=t)return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,n);case"utf8":case"utf-8":return P(this,t,n);case"ascii":return I(this,t,n);case"latin1":case"binary":return j(this,t,n);case"base64":return C(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function b(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function E(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=o.from(t,r)),o.isBuffer(t))return 0===t.length?-1:S(e,t,n,r,i);if("number"==typeof t)return t=255&t,o.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):S(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function S(e,t,n,r,i){function a(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}var o=1,s=e.length,l=t.length;if(void 0!==r&&(r=String(r).toLowerCase(),"ucs2"===r||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;o=2,s/=2,l/=2,n/=2}var u;if(i){var c=-1;for(u=n;u<s;u++)if(a(e,u)===a(t,c===-1?0:u-c)){if(c===-1&&(c=u),u-c+1===l)return c*o}else c!==-1&&(u-=u-c),c=-1}else for(n+l>s&&(n=s-l),u=n;u>=0;u--){for(var p=!0,f=0;f<l;f++)if(a(e,u+f)!==a(t,f)){p=!1;break}if(p)return u}return-1}function w(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r),r>i&&(r=i)):r=i;var a=t.length;if(a%2!==0)throw new TypeError("Invalid hex string");r>a/2&&(r=a/2);for(var o=0;o<r;++o){var s=parseInt(t.substr(2*o,2),16);if(isNaN(s))return o;e[n+o]=s}return o}function x(e,t,n,r){return G(z(t,e.length-n),e,n,r)}function k(e,t,n,r){return G(W(t),e,n,r)}function T(e,t,n,r){return k(e,t,n,r)}function A(e,t,n,r){return G(H(t),e,n,r)}function L(e,t,n,r){return G($(t,e.length-n),e,n,r)}function C(e,t,n){return 0===t&&n===e.length?K.fromByteArray(e):K.fromByteArray(e.slice(t,n))}function P(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i<n;){var a=e[i],o=null,s=a>239?4:a>223?3:a>191?2:1;if(i+s<=n){var l,u,c,p;switch(s){case 1:a<128&&(o=a);break;case 2:l=e[i+1],128===(192&l)&&(p=(31&a)<<6|63&l,p>127&&(o=p));break;case 3:l=e[i+1],u=e[i+2],128===(192&l)&&128===(192&u)&&(p=(15&a)<<12|(63&l)<<6|63&u,p>2047&&(p<55296||p>57343)&&(o=p));break;case 4:l=e[i+1],u=e[i+2],c=e[i+3],128===(192&l)&&128===(192&u)&&128===(192&c)&&(p=(15&a)<<18|(63&l)<<12|(63&u)<<6|63&c,p>65535&&p<1114112&&(o=p))}}null===o?(o=65533,s=1):o>65535&&(o-=65536,r.push(o>>>10&1023|55296),o=56320|1023&o),r.push(o),i+=s}return _(r)}function _(e){var t=e.length;if(t<=ee)return String.fromCharCode.apply(String,e);for(var n="",r=0;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=ee));return n}function I(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(127&e[i]);return r}function j(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function O(e,t,n){var r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);for(var i="",a=t;a<n;++a)i+=V(e[a]);return i}function M(e,t,n){for(var r=e.slice(t,n),i="",a=0;a<r.length;a+=2)i+=String.fromCharCode(r[a]+256*r[a+1]);return i}function N(e,t,n){if(e%1!==0||e<0)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function D(e,t,n,r,i,a){if(!o.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<a)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function R(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,a=Math.min(e.length-n,2);i<a;++i)e[n+i]=(t&255<<8*(r?i:1-i))>>>8*(r?i:1-i)}function B(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,a=Math.min(e.length-n,4);i<a;++i)e[n+i]=t>>>8*(r?i:3-i)&255}function F(e,t,n,r,i,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function X(e,t,n,r,i){return i||F(e,t,n,4,3.4028234663852886e38,-3.4028234663852886e38),Q.write(e,t,n,r,23,4),n+4}function U(e,t,n,r,i){return i||F(e,t,n,8,1.7976931348623157e308,-1.7976931348623157e308),Q.write(e,t,n,r,52,8),n+8}function J(e){if(e=q(e).replace(te,""),e.length<2)return"";for(;e.length%4!==0;)e+="=";return e}function q(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function V(e){return e<16?"0"+e.toString(16):e.toString(16)}function z(e,t){t=t||1/0;for(var n,r=e.length,i=null,a=[],o=0;o<r;++o){if(n=e.charCodeAt(o),n>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=(i-55296<<10|n-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function W(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}function $(e,t){for(var n,r,i,a=[],o=0;o<e.length&&!((t-=2)<0);++o)n=e.charCodeAt(o),r=n>>8,i=n%256,a.push(i),a.push(r);return a}function H(e){return K.toByteArray(J(e))}function G(e,t,n,r){for(var i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function Y(e){return e!==e}var K=e("base64-js"),Q=e("ieee754"),Z=e("isarray");n.Buffer=o,n.SlowBuffer=y,n.INSPECT_MAX_BYTES=50,o.TYPED_ARRAY_SUPPORT=void 0!==t.TYPED_ARRAY_SUPPORT?t.TYPED_ARRAY_SUPPORT:r(),n.kMaxLength=i(),o.poolSize=8192,o._augment=function(e){return e.__proto__=o.prototype,e},o.from=function(e,t,n){return s(null,e,t,n)},o.TYPED_ARRAY_SUPPORT&&(o.prototype.__proto__=Uint8Array.prototype,o.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&o[Symbol.species]===o&&Object.defineProperty(o,Symbol.species,{value:null,configurable:!0})),o.alloc=function(e,t,n){return u(null,e,t,n)},o.allocUnsafe=function(e){return c(null,e)},o.allocUnsafeSlow=function(e){return c(null,e)},o.isBuffer=function(e){return!(null==e||!e._isBuffer)},o.compare=function(e,t){if(!o.isBuffer(e)||!o.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,a=Math.min(n,r);i<a;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:r<n?1:0},o.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},o.concat=function(e,t){if(!Z(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return o.alloc(0);var n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var r=o.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){var a=e[n];if(!o.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(r,i),i+=a.length}return r},o.byteLength=g,o.prototype._isBuffer=!0,o.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)b(this,t,t+1);return this},o.prototype.swap32=function(){var e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)b(this,t,t+3),b(this,t+1,t+2);return this},o.prototype.swap64=function(){var e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)b(this,t,t+7),b(this,t+1,t+6),b(this,t+2,t+5),b(this,t+3,t+4);return this},o.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?P(this,0,e):v.apply(this,arguments)},o.prototype.equals=function(e){if(!o.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===o.compare(this,e)},o.prototype.inspect=function(){var e="",t=n.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,t).match(/.{2}/g).join(" "),this.length>t&&(e+=" ... ")),"<Buffer "+e+">"},o.prototype.compare=function(e,t,n,r,i){if(!o.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;for(var a=i-r,s=n-t,l=Math.min(a,s),u=this.slice(r,i),c=e.slice(t,n),p=0;p<l;++p)if(u[p]!==c[p]){a=u[p],s=c[p];break}return a<s?-1:s<a?1:0},o.prototype.includes=function(e,t,n){return this.indexOf(e,t,n)!==-1},o.prototype.indexOf=function(e,t,n){return E(this,e,t,n,!0)},o.prototype.lastIndexOf=function(e,t,n){return E(this,e,t,n,!1)},o.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t=0|t,isFinite(n)?(n=0|n,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return w(this,e,t,n);case"utf8":case"utf-8":return x(this,e,t,n);case"ascii":return k(this,e,t,n);case"latin1":case"binary":return T(this,e,t,n);case"base64":return A(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return L(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var ee=4096;o.prototype.slice=function(e,t){var n=this.length;e=~~e,t=void 0===t?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);var r;if(o.TYPED_ARRAY_SUPPORT)r=this.subarray(e,t),r.__proto__=o.prototype;else{var i=t-e;r=new o(i,void 0);for(var a=0;a<i;++a)r[a]=this[a+e]}return r},o.prototype.readUIntLE=function(e,t,n){e=0|e,t=0|t,n||N(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r},o.prototype.readUIntBE=function(e,t,n){e=0|e,t=0|t,n||N(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},o.prototype.readUInt8=function(e,t){return t||N(e,1,this.length),this[e]},o.prototype.readUInt16LE=function(e,t){return t||N(e,2,this.length),this[e]|this[e+1]<<8},o.prototype.readUInt16BE=function(e,t){return t||N(e,2,this.length),this[e]<<8|this[e+1]},o.prototype.readUInt32LE=function(e,t){return t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},o.prototype.readUInt32BE=function(e,t){return t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},o.prototype.readIntLE=function(e,t,n){e=0|e,t=0|t,n||N(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return i*=128,r>=i&&(r-=Math.pow(2,8*t)),r},o.prototype.readIntBE=function(e,t,n){e=0|e,t=0|t,n||N(e,t,this.length);for(var r=t,i=1,a=this[e+--r];r>0&&(i*=256);)a+=this[e+--r]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*t)),a},o.prototype.readInt8=function(e,t){return t||N(e,1,this.length),128&this[e]?(255-this[e]+1)*-1:this[e]},o.prototype.readInt16LE=function(e,t){t||N(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt16BE=function(e,t){t||N(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt32LE=function(e,t){return t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},o.prototype.readInt32BE=function(e,t){return t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},o.prototype.readFloatLE=function(e,t){return t||N(e,4,this.length),Q.read(this,e,!0,23,4)},o.prototype.readFloatBE=function(e,t){return t||N(e,4,this.length),Q.read(this,e,!1,23,4)},o.prototype.readDoubleLE=function(e,t){return t||N(e,8,this.length),Q.read(this,e,!0,52,8)},o.prototype.readDoubleBE=function(e,t){return t||N(e,8,this.length),Q.read(this,e,!1,52,8)},o.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t=0|t,n=0|n,!r){var i=Math.pow(2,8*n)-1;D(this,e,t,n,i,0)}var a=1,o=0;for(this[t]=255&e;++o<n&&(a*=256);)this[t+o]=e/a&255;return t+n},o.prototype.writeUIntBE=function(e,t,n,r){if(e=+e,t=0|t,n=0|n,!r){var i=Math.pow(2,8*n)-1;D(this,e,t,n,i,0)}var a=n-1,o=1;for(this[t+a]=255&e;--a>=0&&(o*=256);)this[t+a]=e/o&255;return t+n},o.prototype.writeUInt8=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,1,255,0),o.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},o.prototype.writeUInt16LE=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,2,65535,0),o.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):R(this,e,t,!0),t+2},o.prototype.writeUInt16BE=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,2,65535,0),o.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):R(this,e,t,!1),t+2},o.prototype.writeUInt32LE=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,4,4294967295,0),o.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):B(this,e,t,!0),t+4},o.prototype.writeUInt32BE=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,4,4294967295,0),o.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},o.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t=0|t,!r){var i=Math.pow(2,8*n-1);D(this,e,t,n,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a<n&&(o*=256);)e<0&&0===s&&0!==this[t+a-1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+n},o.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t=0|t,!r){var i=Math.pow(2,8*n-1);D(this,e,t,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+n},o.prototype.writeInt8=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,1,127,-128),o.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},o.prototype.writeInt16LE=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,2,32767,-32768),o.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):R(this,e,t,!0),t+2},o.prototype.writeInt16BE=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,2,32767,-32768),o.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):R(this,e,t,!1),t+2},o.prototype.writeInt32LE=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,4,2147483647,-2147483648),o.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):B(this,e,t,!0),t+4},o.prototype.writeInt32BE=function(e,t,n){return e=+e,t=0|t,n||D(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),o.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):B(this,e,t,!1),t+4},o.prototype.writeFloatLE=function(e,t,n){return X(this,e,t,!0,n)},o.prototype.writeFloatBE=function(e,t,n){return X(this,e,t,!1,n)},o.prototype.writeDoubleLE=function(e,t,n){return U(this,e,t,!0,n)},o.prototype.writeDoubleBE=function(e,t,n){return U(this,e,t,!1,n)},o.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var i,a=r-n;if(this===e&&n<t&&t<r)for(i=a-1;i>=0;--i)e[i+t]=this[i+n];else if(a<1e3||!o.TYPED_ARRAY_SUPPORT)for(i=0;i<a;++i)e[i+t]=this[i+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+a),t);return a},o.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!o.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}else"number"==typeof e&&(e=255&e);if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0);var a;if("number"==typeof e)for(a=t;a<n;++a)this[a]=e;else{var s=o.isBuffer(e)?e:z(new o(e,r).toString()),l=s.length;for(a=0;a<n-t;++a)this[a+t]=s[a%l]}return this};var te=/[^+\/0-9A-Za-z-_]/g}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"base64-js":5,ieee754:6,isarray:7}],5:[function(e,t,n){"use strict";function r(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===e[t-2]?2:"="===e[t-1]?1:0}function i(e){return 3*e.length/4-r(e)}function a(e){var t,n,i,a,o,s,l=e.length;o=r(e),s=new p(3*l/4-o),i=o>0?l-4:l;var u=0;for(t=0,n=0;t<i;t+=4,n+=3)a=c[e.charCodeAt(t)]<<18|c[e.charCodeAt(t+1)]<<12|c[e.charCodeAt(t+2)]<<6|c[e.charCodeAt(t+3)],s[u++]=a>>16&255,s[u++]=a>>8&255,s[u++]=255&a;return 2===o?(a=c[e.charCodeAt(t)]<<2|c[e.charCodeAt(t+1)]>>4,s[u++]=255&a):1===o&&(a=c[e.charCodeAt(t)]<<10|c[e.charCodeAt(t+1)]<<4|c[e.charCodeAt(t+2)]>>2,s[u++]=a>>8&255,s[u++]=255&a),s}function o(e){return u[e>>18&63]+u[e>>12&63]+u[e>>6&63]+u[63&e]}function s(e,t,n){for(var r,i=[],a=t;a<n;a+=3)r=(e[a]<<16)+(e[a+1]<<8)+e[a+2],i.push(o(r));return i.join("")}function l(e){for(var t,n=e.length,r=n%3,i="",a=[],o=16383,l=0,c=n-r;l<c;l+=o)a.push(s(e,l,l+o>c?c:l+o));return 1===r?(t=e[n-1],i+=u[t>>2],i+=u[t<<4&63],i+="=="):2===r&&(t=(e[n-2]<<8)+e[n-1],i+=u[t>>10],i+=u[t>>4&63],i+=u[t<<2&63],i+="="),a.push(i),a.join("")}n.byteLength=i,n.toByteArray=a,n.fromByteArray=l;for(var u=[],c=[],p="undefined"!=typeof Uint8Array?Uint8Array:Array,f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",d=0,h=f.length;d<h;++d)u[d]=f[d],c[f.charCodeAt(d)]=d;c["-".charCodeAt(0)]=62,c["_".charCodeAt(0)]=63},{}],6:[function(e,t,n){n.read=function(e,t,n,r,i){var a,o,s=8*i-r-1,l=(1<<s)-1,u=l>>1,c=-7,p=n?i-1:0,f=n?-1:1,d=e[t+p];for(p+=f,a=d&(1<<-c)-1,d>>=-c,c+=s;c>0;a=256*a+e[t+p],p+=f,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=r;c>0;o=256*o+e[t+p],p+=f,c-=8);if(0===a)a=1-u;else{if(a===l)return o?NaN:(d?-1:1)*(1/0);o+=Math.pow(2,r),a-=u}return(d?-1:1)*o*Math.pow(2,a-r)},n.write=function(e,t,n,r,i,a){var o,s,l,u=8*a-i-1,c=(1<<u)-1,p=c>>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:a-1,h=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),t+=o+p>=1?f/l:f*Math.pow(2,1-p),t*l>=2&&(o++,l/=2),o+p>=c?(s=0,o=c):o+p>=1?(s=(t*l-1)*Math.pow(2,i),o+=p):(s=t*Math.pow(2,p-1)*Math.pow(2,i),o=0));i>=8;e[n+d]=255&s,d+=h,s/=256,i-=8);for(o=o<<i|s,u+=i;u>0;e[n+d]=255&o,d+=h,o/=256,u-=8);e[n+d-h]|=128*m}},{}],7:[function(e,t,n){var r={}.toString;t.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},{}],8:[function(e,t,n){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function i(e){return"function"==typeof e}function a(e){return"number"==typeof e}function o(e){return"object"==typeof e&&null!==e}function s(e){return void 0===e}t.exports=r,r.EventEmitter=r,r.prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(e){if(!a(e)||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},r.prototype.emit=function(e){var t,n,r,a,l,u;if(this._events||(this._events={}),"error"===e&&(!this._events.error||o(this._events.error)&&!this._events.error.length)){if(t=arguments[1],t instanceof Error)throw t;var c=new Error('Uncaught, unspecified "error" event. ('+t+")");throw c.context=t,c}if(n=this._events[e],s(n))return!1;if(i(n))switch(arguments.length){case 1:n.call(this);break;case 2:n.call(this,arguments[1]);break;case 3:n.call(this,arguments[1],arguments[2]);break;default:a=Array.prototype.slice.call(arguments,1),n.apply(this,a)}else if(o(n))for(a=Array.prototype.slice.call(arguments,1),u=n.slice(),r=u.length,l=0;l<r;l++)u[l].apply(this,a);return!0},r.prototype.addListener=function(e,t){var n;if(!i(t))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",e,i(t.listener)?t.listener:t),this._events[e]?o(this._events[e])?this._events[e].push(t):this._events[e]=[this._events[e],t]:this._events[e]=t,o(this._events[e])&&!this._events[e].warned&&(n=s(this._maxListeners)?r.defaultMaxListeners:this._maxListeners,n&&n>0&&this._events[e].length>n&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace())),this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(e,t){function n(){this.removeListener(e,n),r||(r=!0,t.apply(this,arguments))}if(!i(t))throw TypeError("listener must be a function");var r=!1;return n.listener=t,this.on(e,n),this},r.prototype.removeListener=function(e,t){var n,r,a,s;if(!i(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(n=this._events[e],a=n.length,r=-1,n===t||i(n.listener)&&n.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(o(n)){for(s=a;s-- >0;)if(n[s]===t||n[s].listener&&n[s].listener===t){r=s;break}if(r<0)return this;1===n.length?(n.length=0,delete this._events[e]):n.splice(r,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(n=this._events[e],i(n))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){var t;return t=this._events&&this._events[e]?i(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(i(t))return 1;if(t)return t.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},{}],9:[function(e,t,n){"function"==typeof Object.create?t.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},{}],10:[function(e,t,n){function r(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}function i(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&r(e.slice(0,0))}t.exports=function(e){return null!=e&&(r(e)||i(e)||!!e._isBuffer)}},{}],11:[function(e,t,n){n.endianness=function(){return"LE"},n.hostname=function(){return"undefined"!=typeof location?location.hostname:""},n.loadavg=function(){return[]},n.uptime=function(){return 0},n.freemem=function(){return Number.MAX_VALUE},n.totalmem=function(){return Number.MAX_VALUE},n.cpus=function(){return[]},n.type=function(){return"Browser"},n.release=function(){return"undefined"!=typeof navigator?navigator.appVersion:""},n.networkInterfaces=n.getNetworkInterfaces=function(){return{}},n.arch=function(){return"javascript"},n.platform=function(){return"browser"},n.tmpdir=n.tmpDir=function(){return"/tmp"},n.EOL="\n"},{}],12:[function(e,t,n){(function(e){function t(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r<e.length;r++)t(e[r],r,e)&&n.push(e[r]);return n}var i=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,a=function(e){return i.exec(e).slice(1)};n.resolve=function(){for(var n="",i=!1,a=arguments.length-1;a>=-1&&!i;a--){var o=a>=0?arguments[a]:e.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(n=o+"/"+n,i="/"===o.charAt(0))}return n=t(r(n.split("/"),function(e){return!!e}),!i).join("/"),(i?"/":"")+n||"."},n.normalize=function(e){var i=n.isAbsolute(e),a="/"===o(e,-1);return e=t(r(e.split("/"),function(e){return!!e}),!i).join("/"),e||i||(e="."),e&&a&&(e+="/"),(i?"/":"")+e},n.isAbsolute=function(e){return"/"===e.charAt(0)},n.join=function(){var e=Array.prototype.slice.call(arguments,0);return n.normalize(r(e,function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");
return e}).join("/"))},n.relative=function(e,t){function r(e){for(var t=0;t<e.length&&""===e[t];t++);for(var n=e.length-1;n>=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=n.resolve(e).substr(1),t=n.resolve(t).substr(1);for(var i=r(e.split("/")),a=r(t.split("/")),o=Math.min(i.length,a.length),s=o,l=0;l<o;l++)if(i[l]!==a[l]){s=l;break}for(var u=[],l=s;l<i.length;l++)u.push("..");return u=u.concat(a.slice(s)),u.join("/")},n.sep="/",n.delimiter=":",n.dirname=function(e){var t=a(e),n=t[0],r=t[1];return n||r?(r&&(r=r.substr(0,r.length-1)),n+r):"."},n.basename=function(e,t){var n=a(e)[2];return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},n.extname=function(e){return a(e)[3]};var o="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,e("_process"))},{_process:13}],13:[function(e,t,n){function r(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(e){if(p===setTimeout)return setTimeout(e,0);if((p===r||!p)&&setTimeout)return p=setTimeout,setTimeout(e,0);try{return p(e,0)}catch(t){try{return p.call(null,e,0)}catch(t){return p.call(this,e,0)}}}function o(e){if(f===clearTimeout)return clearTimeout(e);if((f===i||!f)&&clearTimeout)return f=clearTimeout,clearTimeout(e);try{return f(e)}catch(t){try{return f.call(null,e)}catch(t){return f.call(this,e)}}}function s(){y&&h&&(y=!1,h.length?m=h.concat(m):g=-1,m.length&&l())}function l(){if(!y){var e=a(s);y=!0;for(var t=m.length;t;){for(h=m,m=[];++g<t;)h&&h[g].run();g=-1,t=m.length}h=null,y=!1,o(e)}}function u(e,t){this.fun=e,this.array=t}function c(){}var p,f,d=t.exports={};!function(){try{p="function"==typeof setTimeout?setTimeout:r}catch(e){p=r}try{f="function"==typeof clearTimeout?clearTimeout:i}catch(e){f=i}}();var h,m=[],y=!1,g=-1;d.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];m.push(new u(e,t)),1!==m.length||y||a(l)},u.prototype.run=function(){this.fun.apply(null,this.array)},d.title="browser",d.browser=!0,d.env={},d.argv=[],d.version="",d.versions={},d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(e){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(e){throw new Error("process.chdir is not supported")},d.umask=function(){return 0}},{}],14:[function(e,t,n){t.exports=e("./lib/_stream_duplex.js")},{"./lib/_stream_duplex.js":15}],15:[function(e,t,n){"use strict";function r(e){return this instanceof r?(u.call(this,e),c.call(this,e),e&&e.readable===!1&&(this.readable=!1),e&&e.writable===!1&&(this.writable=!1),this.allowHalfOpen=!0,e&&e.allowHalfOpen===!1&&(this.allowHalfOpen=!1),void this.once("end",i)):new r(e)}function i(){this.allowHalfOpen||this._writableState.ended||s(a,this)}function a(e){e.end()}var o=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};t.exports=r;var s=e("process-nextick-args"),l=e("core-util-is");l.inherits=e("inherits");var u=e("./_stream_readable"),c=e("./_stream_writable");l.inherits(r,u);for(var p=o(c.prototype),f=0;f<p.length;f++){var d=p[f];r.prototype[d]||(r.prototype[d]=c.prototype[d])}},{"./_stream_readable":17,"./_stream_writable":19,"core-util-is":22,inherits:9,"process-nextick-args":24}],16:[function(e,t,n){"use strict";function r(e){return this instanceof r?void i.call(this,e):new r(e)}t.exports=r;var i=e("./_stream_transform"),a=e("core-util-is");a.inherits=e("inherits"),a.inherits(r,i),r.prototype._transform=function(e,t,n){n(null,e)}},{"./_stream_transform":18,"core-util-is":22,inherits:9}],17:[function(e,t,n){(function(n){"use strict";function r(e,t,n){return"function"==typeof e.prependListener?e.prependListener(t,n):void(e._events&&e._events[t]?_(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n))}function i(t,n){X=X||e("./_stream_duplex"),t=t||{},this.objectMode=!!t.objectMode,n instanceof X&&(this.objectMode=this.objectMode||!!t.readableObjectMode);var r=t.highWaterMark,i=this.objectMode?16:16384;this.highWaterMark=r||0===r?r:i,this.highWaterMark=~~this.highWaterMark,this.buffer=new F,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.ranOut=!1,this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(B||(B=e("string_decoder/").StringDecoder),this.decoder=new B(t.encoding),this.encoding=t.encoding)}function a(t){return X=X||e("./_stream_duplex"),this instanceof a?(this._readableState=new i(t,this),this.readable=!0,t&&"function"==typeof t.read&&(this._read=t.read),void I.call(this)):new a(t)}function o(e,t,n,r,i){var a=c(t,n);if(a)e.emit("error",a);else if(null===n)t.reading=!1,p(e,t);else if(t.objectMode||n&&n.length>0)if(t.ended&&!i){var o=new Error("stream.push() after EOF");e.emit("error",o)}else if(t.endEmitted&&i){var l=new Error("stream.unshift() after end event");e.emit("error",l)}else{var u;!t.decoder||i||r||(n=t.decoder.write(n),u=!t.objectMode&&0===n.length),i||(t.reading=!1),u||(t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,i?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&f(e))),h(e,t)}else i||(t.reading=!1);return s(t)}function s(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}function l(e){return e>=U?e=U:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function u(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=l(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function c(e,t){var n=null;return O.isBuffer(t)||"string"==typeof t||null===t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk")),n}function p(e,t){if(!t.ended){if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,f(e)}}function f(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(R("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?P(d,e):d(e))}function d(e){R("emit readable"),e.emit("readable"),E(e)}function h(e,t){t.readingMore||(t.readingMore=!0,P(m,e,t))}function m(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(R("maybeReadMore read 0"),e.read(0),n!==t.length);)n=t.length;t.readingMore=!1}function y(e){return function(){var t=e._readableState;R("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&j(e,"data")&&(t.flowing=!0,E(e))}}function g(e){R("readable nexttick read 0"),e.read(0)}function v(e,t){t.resumeScheduled||(t.resumeScheduled=!0,P(b,e,t))}function b(e,t){t.reading||(R("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),E(e),t.flowing&&!t.reading&&e.read(0)}function E(e){var t=e._readableState;for(R("flow",t.flowing);t.flowing&&null!==e.read(););}function S(e,t){if(0===t.length)return null;var n;return t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=w(e,t.buffer,t.decoder),n}function w(e,t,n){var r;return e<t.head.data.length?(r=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):r=e===t.head.data.length?t.shift():n?x(e,t):k(e,t),r}function x(e,t){var n=t.head,r=1,i=n.data;for(e-=i.length;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(i+=o===a.length?a:a.slice(0,e),e-=o,0===e){o===a.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++r}return t.length-=r,i}function k(e,t){var n=M.allocUnsafe(e),r=t.head,i=1;for(r.data.copy(n),e-=r.data.length;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(a.copy(n,n.length-e,0,o),e-=o,0===e){o===a.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++i}return t.length-=i,n}function T(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,P(A,t,e))}function A(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function L(e,t){for(var n=0,r=e.length;n<r;n++)t(e[n],n)}function C(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}t.exports=a;var P=e("process-nextick-args"),_=e("isarray");a.ReadableState=i;var I,j=(e("events").EventEmitter,function(e,t){return e.listeners(t).length});!function(){try{I=e("stream")}catch(e){}finally{I||(I=e("events").EventEmitter)}}();var O=e("buffer").Buffer,M=e("buffer-shims"),N=e("core-util-is");N.inherits=e("inherits");var D=e("util"),R=void 0;R=D&&D.debuglog?D.debuglog("stream"):function(){};var B,F=e("./internal/streams/BufferList");N.inherits(a,I);var X,X;a.prototype.push=function(e,t){var n=this._readableState;return n.objectMode||"string"!=typeof e||(t=t||n.defaultEncoding,t!==n.encoding&&(e=M.from(e,t),t="")),o(this,n,e,t,!1)},a.prototype.unshift=function(e){var t=this._readableState;return o(this,t,e,"",!0)},a.prototype.isPaused=function(){return this._readableState.flowing===!1},a.prototype.setEncoding=function(t){return B||(B=e("string_decoder/").StringDecoder),this._readableState.decoder=new B(t),this._readableState.encoding=t,this};var U=8388608;a.prototype.read=function(e){R("read",e),e=parseInt(e,10);var t=this._readableState,n=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return R("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?T(this):f(this),null;if(e=u(e,t),0===e&&t.ended)return 0===t.length&&T(this),null;var r=t.needReadable;R("need readable",r),(0===t.length||t.length-e<t.highWaterMark)&&(r=!0,R("length less than watermark",r)),t.ended||t.reading?(r=!1,R("reading or ended",r)):r&&(R("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=u(n,t)));var i;return i=e>0?S(e,t):null,null===i?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&T(this)),null!==i&&this.emit("data",i),i},a.prototype._read=function(e){this.emit("error",new Error("not implemented"))},a.prototype.pipe=function(e,t){function i(e){R("onunpipe"),e===f&&o()}function a(){R("onend"),e.end()}function o(){R("cleanup"),e.removeListener("close",u),e.removeListener("finish",c),e.removeListener("drain",g),e.removeListener("error",l),e.removeListener("unpipe",i),f.removeListener("end",a),f.removeListener("end",o),f.removeListener("data",s),v=!0,!d.awaitDrain||e._writableState&&!e._writableState.needDrain||g()}function s(t){R("ondata"),b=!1;var n=e.write(t);!1!==n||b||((1===d.pipesCount&&d.pipes===e||d.pipesCount>1&&C(d.pipes,e)!==-1)&&!v&&(R("false write response, pause",f._readableState.awaitDrain),f._readableState.awaitDrain++,b=!0),f.pause())}function l(t){R("onerror",t),p(),e.removeListener("error",l),0===j(e,"error")&&e.emit("error",t)}function u(){e.removeListener("finish",c),p()}function c(){R("onfinish"),e.removeListener("close",u),p()}function p(){R("unpipe"),f.unpipe(e)}var f=this,d=this._readableState;switch(d.pipesCount){case 0:d.pipes=e;break;case 1:d.pipes=[d.pipes,e];break;default:d.pipes.push(e)}d.pipesCount+=1,R("pipe count=%d opts=%j",d.pipesCount,t);var h=(!t||t.end!==!1)&&e!==n.stdout&&e!==n.stderr,m=h?a:o;d.endEmitted?P(m):f.once("end",m),e.on("unpipe",i);var g=y(f);e.on("drain",g);var v=!1,b=!1;return f.on("data",s),r(e,"error",l),e.once("close",u),e.once("finish",c),e.emit("pipe",f),d.flowing||(R("pipe resume"),f.resume()),e},a.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i<r;i++)n[i].emit("unpipe",this);return this}var a=C(t.pipes,e);return a===-1?this:(t.pipes.splice(a,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this),this)},a.prototype.on=function(e,t){var n=I.prototype.on.call(this,e,t);if("data"===e)this._readableState.flowing!==!1&&this.resume();else if("readable"===e){var r=this._readableState;r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.emittedReadable=!1,r.reading?r.length&&f(this,r):P(g,this))}return n},a.prototype.addListener=a.prototype.on,a.prototype.resume=function(){var e=this._readableState;return e.flowing||(R("resume"),e.flowing=!0,v(this,e)),this},a.prototype.pause=function(){return R("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(R("pause"),this._readableState.flowing=!1,this.emit("pause")),this},a.prototype.wrap=function(e){var t=this._readableState,n=!1,r=this;e.on("end",function(){if(R("wrapped end"),t.decoder&&!t.ended){var e=t.decoder.end();e&&e.length&&r.push(e)}r.push(null)}),e.on("data",function(i){if(R("wrapped data"),t.decoder&&(i=t.decoder.write(i)),(!t.objectMode||null!==i&&void 0!==i)&&(t.objectMode||i&&i.length)){var a=r.push(i);a||(n=!0,e.pause())}});for(var i in e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));var a=["error","close","destroy","pause","resume"];return L(a,function(t){e.on(t,r.emit.bind(r,t))}),r._read=function(t){R("wrapped _read",t),n&&(n=!1,e.resume())},r},a._fromList=S}).call(this,e("_process"))},{"./_stream_duplex":15,"./internal/streams/BufferList":20,_process:13,buffer:4,"buffer-shims":21,"core-util-is":22,events:8,inherits:9,isarray:23,"process-nextick-args":24,"string_decoder/":31,util:3}],18:[function(e,t,n){"use strict";function r(e){this.afterTransform=function(t,n){return i(e,t,n)},this.needTransform=!1,this.transforming=!1,this.writecb=null,this.writechunk=null,this.writeencoding=null}function i(e,t,n){var r=e._transformState;r.transforming=!1;var i=r.writecb;if(!i)return e.emit("error",new Error("no writecb in Transform class"));r.writechunk=null,r.writecb=null,null!==n&&void 0!==n&&e.push(n),i(t);var a=e._readableState;a.reading=!1,(a.needReadable||a.length<a.highWaterMark)&&e._read(a.highWaterMark)}function a(e){if(!(this instanceof a))return new a(e);s.call(this,e),this._transformState=new r(this);var t=this;this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.once("prefinish",function(){"function"==typeof this._flush?this._flush(function(e){o(t,e)}):o(t)})}function o(e,t){if(t)return e.emit("error",t);var n=e._writableState,r=e._transformState;if(n.length)throw new Error("Calling transform done when ws.length != 0");if(r.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}t.exports=a;var s=e("./_stream_duplex"),l=e("core-util-is");l.inherits=e("inherits"),l.inherits(a,s),a.prototype.push=function(e,t){return this._transformState.needTransform=!1,s.prototype.push.call(this,e,t)},a.prototype._transform=function(e,t,n){throw new Error("Not implemented")},a.prototype._write=function(e,t,n){var r=this._transformState;if(r.writecb=n,r.writechunk=e,r.writeencoding=t,!r.transforming){var i=this._readableState;(r.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},a.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0}},{"./_stream_duplex":15,"core-util-is":22,inherits:9}],19:[function(e,t,n){(function(n){"use strict";function r(){}function i(e,t,n){this.chunk=e,this.encoding=t,this.callback=n,this.next=null}function a(t,n){_=_||e("./_stream_duplex"),t=t||{},this.objectMode=!!t.objectMode,n instanceof _&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var r=t.highWaterMark,i=this.objectMode?16:16384;this.highWaterMark=r||0===r?r:i,this.highWaterMark=~~this.highWaterMark,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1;var a=t.decodeStrings===!1;this.decodeStrings=!a,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){h(n,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new w(this)}function o(t){return _=_||e("./_stream_duplex"),this instanceof o||this instanceof _?(this._writableState=new a(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev)),void A.call(this)):new o(t)}function s(e,t){var n=new Error("write after end");e.emit("error",n),x(t,n)}function l(e,t,n,r){var i=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):C.isBuffer(n)||"string"==typeof n||void 0===n||t.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(e.emit("error",a),x(r,a),i=!1),i}function u(e,t,n){return e.objectMode||e.decodeStrings===!1||"string"!=typeof t||(t=P.from(t,n)),t}function c(e,t,n,r,a){n=u(t,n,r),C.isBuffer(n)&&(r="buffer");var o=t.objectMode?1:n.length;t.length+=o;var s=t.length<t.highWaterMark;if(s||(t.needDrain=!0),t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest=new i(n,r,a),l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else p(e,t,!1,o,n,r,a);return s}function p(e,t,n,r,i,a,o){t.writelen=r,t.writecb=o,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function f(e,t,n,r,i){--t.pendingcb,n?x(i,r):i(r),e._writableState.errorEmitted=!0,e.emit("error",r)}function d(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}function h(e,t){var n=e._writableState,r=n.sync,i=n.writecb;if(d(n),t)f(e,n,r,t,i);else{var a=v(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||g(e,n),r?k(m,e,n,a,i):m(e,n,a,i)}}function m(e,t,n,r){n||y(e,t),t.pendingcb--,r(),E(e,t)}function y(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}function g(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),a=t.corkedRequestsFree;a.entry=n;for(var o=0;n;)i[o]=n,n=n.next,o+=1;p(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new w(t)}else{for(;n;){var s=n.chunk,l=n.encoding,u=n.callback,c=t.objectMode?1:s.length;if(p(e,t,!1,c,s,l,u),n=n.next,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=n,t.bufferProcessing=!1}function v(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function b(e,t){t.prefinished||(t.prefinished=!0,e.emit("prefinish"))}function E(e,t){var n=v(t);return n&&(0===t.pendingcb?(b(e,t),t.finished=!0,e.emit("finish")):b(e,t)),n}function S(e,t,n){t.ending=!0,E(e,t),n&&(t.finished?x(n):e.once("finish",n)),t.ended=!0,e.writable=!1}function w(e){var t=this;this.next=null,this.entry=null,this.finish=function(n){var r=t.entry;for(t.entry=null;r;){var i=r.callback;e.pendingcb--,i(n),r=r.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}}t.exports=o;var x=e("process-nextick-args"),k=!n.browser&&["v0.10","v0.9."].indexOf(n.version.slice(0,5))>-1?setImmediate:x;o.WritableState=a;var T=e("core-util-is");T.inherits=e("inherits");var A,L={deprecate:e("util-deprecate")};!function(){try{A=e("stream")}catch(e){}finally{A||(A=e("events").EventEmitter)}}();var C=e("buffer").Buffer,P=e("buffer-shims");T.inherits(o,A);var _;a.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(a.prototype,"buffer",{get:L.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.")})}catch(e){}}();var _;o.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},o.prototype.write=function(e,t,n){var i=this._writableState,a=!1;return"function"==typeof t&&(n=t,t=null),C.isBuffer(e)?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=r),i.ended?s(this,n):l(this,i,e,n)&&(i.pendingcb++,a=c(this,i,e,t,n)),a},o.prototype.cork=function(){var e=this._writableState;e.corked++},o.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||g(this,e))},o.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},o.prototype._write=function(e,t,n){n(new Error("not implemented"))},o.prototype._writev=null,o.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!==e&&void 0!==e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||S(this,r,n)}}).call(this,e("_process"))},{"./_stream_duplex":15,_process:13,buffer:4,"buffer-shims":21,"core-util-is":22,events:8,inherits:9,"process-nextick-args":24,"util-deprecate":25}],20:[function(e,t,n){"use strict";function r(){this.head=null,this.tail=null,this.length=0}var i=(e("buffer").Buffer,e("buffer-shims"));t.exports=r,r.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},r.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},r.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},r.prototype.clear=function(){this.head=this.tail=null,this.length=0},r.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},r.prototype.concat=function(e){if(0===this.length)return i.alloc(0);if(1===this.length)return this.head.data;for(var t=i.allocUnsafe(e>>>0),n=this.head,r=0;n;)n.data.copy(t,r),r+=n.data.length,n=n.next;return t}},{buffer:4,"buffer-shims":21}],21:[function(e,t,n){(function(t){"use strict";var r=e("buffer"),i=r.Buffer,a=r.SlowBuffer,o=r.kMaxLength||2147483647;n.alloc=function(e,t,n){if("function"==typeof i.alloc)return i.alloc(e,t,n);if("number"==typeof n)throw new TypeError("encoding must not be number");if("number"!=typeof e)throw new TypeError("size must be a number");if(e>o)throw new RangeError("size is too large");var r=n,a=t;void 0===a&&(r=void 0,a=0);var s=new i(e);if("string"==typeof a)for(var l=new i(a,r),u=l.length,c=-1;++c<e;)s[c]=l[c%u];else s.fill(a);return s},n.allocUnsafe=function(e){if("function"==typeof i.allocUnsafe)return i.allocUnsafe(e);if("number"!=typeof e)throw new TypeError("size must be a number");if(e>o)throw new RangeError("size is too large");return new i(e)},n.from=function(e,n,r){if("function"==typeof i.from&&(!t.Uint8Array||Uint8Array.from!==i.from))return i.from(e,n,r);if("number"==typeof e)throw new TypeError('"value" argument must not be a number');if("string"==typeof e)return new i(e,n);if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer){var a=n;if(1===arguments.length)return new i(e);"undefined"==typeof a&&(a=0);var o=r;if("undefined"==typeof o&&(o=e.byteLength-a),a>=e.byteLength)throw new RangeError("'offset' is out of bounds");if(o>e.byteLength-a)throw new RangeError("'length' is out of bounds");return new i(e.slice(a,a+o))}if(i.isBuffer(e)){var s=new i(e.length);return e.copy(s,0,0,e.length),s}if(e){if(Array.isArray(e)||"undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return new i(e);if("Buffer"===e.type&&Array.isArray(e.data))return new i(e.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")},n.allocUnsafeSlow=function(e){if("function"==typeof i.allocUnsafeSlow)return i.allocUnsafeSlow(e);if("number"!=typeof e)throw new TypeError("size must be a number");if(e>=o)throw new RangeError("size is too large");return new a(e)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{buffer:4}],22:[function(e,t,n){(function(e){function t(e){return Array.isArray?Array.isArray(e):"[object Array]"===y(e)}function r(e){return"boolean"==typeof e}function i(e){return null===e}function a(e){return null==e}function o(e){return"number"==typeof e}function s(e){return"string"==typeof e}function l(e){return"symbol"==typeof e}function u(e){return void 0===e}function c(e){return"[object RegExp]"===y(e)}function p(e){return"object"==typeof e&&null!==e}function f(e){return"[object Date]"===y(e)}function d(e){return"[object Error]"===y(e)||e instanceof Error}function h(e){return"function"==typeof e}function m(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||"undefined"==typeof e}function y(e){return Object.prototype.toString.call(e)}n.isArray=t,n.isBoolean=r,n.isNull=i,n.isNullOrUndefined=a,n.isNumber=o,n.isString=s,n.isSymbol=l,n.isUndefined=u,n.isRegExp=c,n.isObject=p,n.isDate=f,n.isError=d,n.isFunction=h,n.isPrimitive=m,n.isBuffer=e.isBuffer}).call(this,{isBuffer:e("../../../../insert-module-globals/node_modules/is-buffer/index.js")})},{"../../../../insert-module-globals/node_modules/is-buffer/index.js":10}],23:[function(e,t,n){arguments[4][7][0].apply(n,arguments)},{dup:7}],24:[function(e,t,n){(function(e){"use strict";function n(t,n,r,i){if("function"!=typeof t)throw new TypeError('"callback" argument must be a function');var a,o,s=arguments.length;switch(s){case 0:case 1:return e.nextTick(t);case 2:return e.nextTick(function(){t.call(null,n)});case 3:return e.nextTick(function(){t.call(null,n,r)});case 4:return e.nextTick(function(){t.call(null,n,r,i)});default:for(a=new Array(s-1),o=0;o<a.length;)a[o++]=arguments[o];return e.nextTick(function(){t.apply(null,a)})}}!e.version||0===e.version.indexOf("v0.")||0===e.version.indexOf("v1.")&&0!==e.version.indexOf("v1.8.")?t.exports=n:t.exports=e.nextTick}).call(this,e("_process"))},{_process:13}],25:[function(e,t,n){(function(e){function n(e,t){function n(){if(!i){if(r("throwDeprecation"))throw new Error(t);r("traceDeprecation")?console.trace(t):console.warn(t),i=!0}return e.apply(this,arguments)}if(r("noDeprecation"))return e;var i=!1;return n}function r(t){try{if(!e.localStorage)return!1}catch(e){return!1}var n=e.localStorage[t];return null!=n&&"true"===String(n).toLowerCase()}t.exports=n}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],26:[function(e,t,n){t.exports=e("./lib/_stream_passthrough.js")},{"./lib/_stream_passthrough.js":16}],27:[function(e,t,n){(function(r){var i=function(){try{return e("stream")}catch(e){}}();n=t.exports=e("./lib/_stream_readable.js"),n.Stream=i||n,n.Readable=n,n.Writable=e("./lib/_stream_writable.js"),n.Duplex=e("./lib/_stream_duplex.js"),n.Transform=e("./lib/_stream_transform.js"),n.PassThrough=e("./lib/_stream_passthrough.js"),!r.browser&&"disable"===r.env.READABLE_STREAM&&i&&(t.exports=i)}).call(this,e("_process"))},{"./lib/_stream_duplex.js":15,"./lib/_stream_passthrough.js":16,"./lib/_stream_readable.js":17,"./lib/_stream_transform.js":18,"./lib/_stream_writable.js":19,_process:13}],28:[function(e,t,n){t.exports=e("./lib/_stream_transform.js")},{"./lib/_stream_transform.js":18}],29:[function(e,t,n){t.exports=e("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":19}],30:[function(e,t,n){function r(){i.call(this)}t.exports=r;var i=e("events").EventEmitter,a=e("inherits");a(r,i),r.Readable=e("readable-stream/readable.js"),r.Writable=e("readable-stream/writable.js"),r.Duplex=e("readable-stream/duplex.js"),r.Transform=e("readable-stream/transform.js"),r.PassThrough=e("readable-stream/passthrough.js"),r.Stream=r,r.prototype.pipe=function(e,t){function n(t){e.writable&&!1===e.write(t)&&u.pause&&u.pause()}function r(){u.readable&&u.resume&&u.resume()}function a(){c||(c=!0,e.end())}function o(){c||(c=!0,"function"==typeof e.destroy&&e.destroy())}function s(e){if(l(),0===i.listenerCount(this,"error"))throw e}function l(){u.removeListener("data",n),e.removeListener("drain",r),u.removeListener("end",a),u.removeListener("close",o),u.removeListener("error",s),e.removeListener("error",s),u.removeListener("end",l),u.removeListener("close",l),e.removeListener("close",l)}var u=this;u.on("data",n),e.on("drain",r),e._isStdio||t&&t.end===!1||(u.on("end",a),u.on("close",o));var c=!1;return u.on("error",s),e.on("error",s),u.on("end",l),u.on("close",l),e.on("close",l),e.emit("pipe",u),e}},{events:8,inherits:9,"readable-stream/duplex.js":14,"readable-stream/passthrough.js":26,"readable-stream/readable.js":27,"readable-stream/transform.js":28,"readable-stream/writable.js":29}],31:[function(e,t,n){function r(e){if(e&&!l(e))throw new Error("Unknown encoding: "+e)}function i(e){return e.toString(this.encoding)}function a(e){this.charReceived=e.length%2,this.charLength=this.charReceived?2:0}function o(e){this.charReceived=e.length%3,this.charLength=this.charReceived?3:0}var s=e("buffer").Buffer,l=s.isEncoding||function(e){switch(e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}},u=n.StringDecoder=function(e){switch(this.encoding=(e||"utf8").toLowerCase().replace(/[-_]/,""),r(e),this.encoding){case"utf8":this.surrogateSize=3;break;case"ucs2":case"utf16le":this.surrogateSize=2,this.detectIncompleteChar=a;break;case"base64":this.surrogateSize=3,this.detectIncompleteChar=o;break;default:return void(this.write=i)}this.charBuffer=new s(6),this.charReceived=0,this.charLength=0};u.prototype.write=function(e){for(var t="";this.charLength;){var n=e.length>=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charReceived<this.charLength)return"";e=e.slice(n,e.length),t=this.charBuffer.slice(0,this.charLength).toString(this.encoding);var r=t.charCodeAt(t.length-1);if(!(r>=55296&&r<=56319)){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var i=e.length;this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,i),i-=this.charReceived),t+=e.toString(this.encoding,0,i);var i=t.length-1,r=t.charCodeAt(i);if(r>=55296&&r<=56319){var a=this.surrogateSize;return this.charLength+=a,this.charReceived+=a,this.charBuffer.copy(this.charBuffer,a,0,a),e.copy(this.charBuffer,0,0,a),t.substring(0,i)}return t},u.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var n=e[e.length-t];if(1==t&&n>>5==6){this.charLength=2;break}if(t<=2&&n>>4==14){this.charLength=3;break}if(t<=3&&n>>3==30){this.charLength=4;break}}this.charReceived=t},u.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var n=this.charReceived,r=this.charBuffer,i=this.encoding;t+=r.slice(0,n).toString(i)}return t}},{buffer:4}],32:[function(e,t,n){arguments[4][9][0].apply(n,arguments)},{dup:9}],33:[function(e,t,n){t.exports=function(e){return e&&"object"==typeof e&&"function"==typeof e.copy&&"function"==typeof e.fill&&"function"==typeof e.readUInt8;
}},{}],34:[function(e,t,n){(function(t,r){function i(e,t){var r={seen:[],stylize:o};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),m(t)?r.showHidden=t:t&&n._extend(r,t),S(r.showHidden)&&(r.showHidden=!1),S(r.depth)&&(r.depth=2),S(r.colors)&&(r.colors=!1),S(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=a),l(r,e,r.depth)}function a(e,t){var n=i.styles[t];return n?"["+i.colors[n][0]+"m"+e+"["+i.colors[n][1]+"m":e}function o(e,t){return e}function s(e){var t={};return e.forEach(function(e,n){t[e]=!0}),t}function l(e,t,r){if(e.customInspect&&t&&A(t.inspect)&&t.inspect!==n.inspect&&(!t.constructor||t.constructor.prototype!==t)){var i=t.inspect(r,e);return b(i)||(i=l(e,i,r)),i}var a=u(e,t);if(a)return a;var o=Object.keys(t),m=s(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),T(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return c(t);if(0===o.length){if(A(t)){var y=t.name?": "+t.name:"";return e.stylize("[Function"+y+"]","special")}if(w(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(k(t))return e.stylize(Date.prototype.toString.call(t),"date");if(T(t))return c(t)}var g="",v=!1,E=["{","}"];if(h(t)&&(v=!0,E=["[","]"]),A(t)){var S=t.name?": "+t.name:"";g=" [Function"+S+"]"}if(w(t)&&(g=" "+RegExp.prototype.toString.call(t)),k(t)&&(g=" "+Date.prototype.toUTCString.call(t)),T(t)&&(g=" "+c(t)),0===o.length&&(!v||0==t.length))return E[0]+g+E[1];if(r<0)return w(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var x;return x=v?p(e,t,r,m,o):o.map(function(n){return f(e,t,r,m,n,v)}),e.seen.pop(),d(x,g,E)}function u(e,t){if(S(t))return e.stylize("undefined","undefined");if(b(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return v(t)?e.stylize(""+t,"number"):m(t)?e.stylize(""+t,"boolean"):y(t)?e.stylize("null","null"):void 0}function c(e){return"["+Error.prototype.toString.call(e)+"]"}function p(e,t,n,r,i){for(var a=[],o=0,s=t.length;o<s;++o)I(t,String(o))?a.push(f(e,t,n,r,String(o),!0)):a.push("");return i.forEach(function(i){i.match(/^\d+$/)||a.push(f(e,t,n,r,i,!0))}),a}function f(e,t,n,r,i,a){var o,s,u;if(u=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]},u.get?s=u.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):u.set&&(s=e.stylize("[Setter]","special")),I(r,i)||(o="["+i+"]"),s||(e.seen.indexOf(u.value)<0?(s=y(n)?l(e,u.value,null):l(e,u.value,n-1),s.indexOf("\n")>-1&&(s=a?s.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+s.split("\n").map(function(e){return" "+e}).join("\n"))):s=e.stylize("[Circular]","special")),S(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function d(e,t,n){var r=0,i=e.reduce(function(e,t){return r++,t.indexOf("\n")>=0&&r++,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function h(e){return Array.isArray(e)}function m(e){return"boolean"==typeof e}function y(e){return null===e}function g(e){return null==e}function v(e){return"number"==typeof e}function b(e){return"string"==typeof e}function E(e){return"symbol"==typeof e}function S(e){return void 0===e}function w(e){return x(e)&&"[object RegExp]"===C(e)}function x(e){return"object"==typeof e&&null!==e}function k(e){return x(e)&&"[object Date]"===C(e)}function T(e){return x(e)&&("[object Error]"===C(e)||e instanceof Error)}function A(e){return"function"==typeof e}function L(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||"undefined"==typeof e}function C(e){return Object.prototype.toString.call(e)}function P(e){return e<10?"0"+e.toString(10):e.toString(10)}function _(){var e=new Date,t=[P(e.getHours()),P(e.getMinutes()),P(e.getSeconds())].join(":");return[e.getDate(),N[e.getMonth()],t].join(" ")}function I(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var j=/%[sdj%]/g;n.format=function(e){if(!b(e)){for(var t=[],n=0;n<arguments.length;n++)t.push(i(arguments[n]));return t.join(" ")}for(var n=1,r=arguments,a=r.length,o=String(e).replace(j,function(e){if("%%"===e)return"%";if(n>=a)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}}),s=r[n];n<a;s=r[++n])o+=y(s)||!x(s)?" "+s:" "+i(s);return o},n.deprecate=function(e,i){function a(){if(!o){if(t.throwDeprecation)throw new Error(i);t.traceDeprecation?console.trace(i):console.error(i),o=!0}return e.apply(this,arguments)}if(S(r.process))return function(){return n.deprecate(e,i).apply(this,arguments)};if(t.noDeprecation===!0)return e;var o=!1;return a};var O,M={};n.debuglog=function(e){if(S(O)&&(O=t.env.NODE_DEBUG||""),e=e.toUpperCase(),!M[e])if(new RegExp("\\b"+e+"\\b","i").test(O)){var r=t.pid;M[e]=function(){var t=n.format.apply(n,arguments);console.error("%s %d: %s",e,r,t)}}else M[e]=function(){};return M[e]},n.inspect=i,i.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},i.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},n.isArray=h,n.isBoolean=m,n.isNull=y,n.isNullOrUndefined=g,n.isNumber=v,n.isString=b,n.isSymbol=E,n.isUndefined=S,n.isRegExp=w,n.isObject=x,n.isDate=k,n.isError=T,n.isFunction=A,n.isPrimitive=L,n.isBuffer=e("./support/isBuffer");var N=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];n.log=function(){console.log("%s - %s",_(),n.format.apply(n,arguments))},n.inherits=e("inherits"),n._extend=function(e,t){if(!t||!x(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e}}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":33,_process:13,inherits:32}],35:[function(e,t,n){function r(e){l.ok(this instanceof r),p.Identifier.assert(e),this.nextTempId=0,Object.defineProperties(this,{contextId:{value:e},listing:{value:[]},marked:{value:[!0]},finalLoc:{value:i()},tryEntries:{value:[]}}),Object.defineProperties(this,{leapManager:{value:new f.LeapManager(this)}})}function i(){return c.literal(-1)}function a(e){return p.BreakStatement.check(e)||p.ContinueStatement.check(e)||p.ReturnStatement.check(e)||p.ThrowStatement.check(e)}function o(e){return new Error("all declarations should have been transformed into assignments before the Exploder began its work: "+JSON.stringify(e))}function s(e){var t=e.type;return"normal"===t?!y.call(e,"target"):"break"===t||"continue"===t?!y.call(e,"value")&&p.Literal.check(e.target):("return"===t||"throw"===t)&&(y.call(e,"value")&&!y.call(e,"target"))}var l=e("assert"),u=e("recast").types,c=(u.builtInTypes.array,u.builders),p=u.namedTypes,f=e("./leap"),d=e("./meta"),h=e("./util"),m=h.runtimeProperty,y=Object.prototype.hasOwnProperty,g=r.prototype;n.Emitter=r,g.mark=function(e){p.Literal.assert(e);var t=this.listing.length;return e.value===-1?e.value=t:l.strictEqual(e.value,t),this.marked[t]=!0,e},g.emit=function(e){p.Expression.check(e)&&(e=c.expressionStatement(e)),p.Statement.assert(e),this.listing.push(e)},g.emitAssign=function(e,t){return this.emit(this.assign(e,t)),e},g.assign=function(e,t){return c.expressionStatement(c.assignmentExpression("=",e,t))},g.contextProperty=function(e,t){return c.memberExpression(this.contextId,t?c.literal(e):c.identifier(e),!!t)},g.stop=function(e){e&&this.setReturnValue(e),this.jump(this.finalLoc)},g.setReturnValue=function(e){p.Expression.assert(e.value),this.emitAssign(this.contextProperty("rval"),this.explodeExpression(e))},g.clearPendingException=function(e,t){p.Literal.assert(e);var n=c.callExpression(this.contextProperty("catch",!0),[e]);t?this.emitAssign(t,n):this.emit(n)},g.jump=function(e){this.emitAssign(this.contextProperty("next"),e),this.emit(c.breakStatement())},g.jumpIf=function(e,t){p.Expression.assert(e),p.Literal.assert(t),this.emit(c.ifStatement(e,c.blockStatement([this.assign(this.contextProperty("next"),t),c.breakStatement()])))},g.jumpIfNot=function(e,t){p.Expression.assert(e),p.Literal.assert(t);var n;n=p.UnaryExpression.check(e)&&"!"===e.operator?e.argument:c.unaryExpression("!",e),this.emit(c.ifStatement(n,c.blockStatement([this.assign(this.contextProperty("next"),t),c.breakStatement()])))},g.makeTempVar=function(){return this.contextProperty("t"+this.nextTempId++)},g.getContextFunction=function(e){return c.functionExpression(e||null,[this.contextId],c.blockStatement([this.getDispatchLoop()]),!1,!1)},g.getDispatchLoop=function(){var e,t=this,n=[],r=!1;return t.listing.forEach(function(i,o){t.marked.hasOwnProperty(o)&&(n.push(c.switchCase(c.literal(o),e=[])),r=!1),r||(e.push(i),a(i)&&(r=!0))}),this.finalLoc.value=this.listing.length,n.push(c.switchCase(this.finalLoc,[]),c.switchCase(c.literal("end"),[c.returnStatement(c.callExpression(this.contextProperty("stop"),[]))])),c.whileStatement(c.literal(1),c.switchStatement(c.assignmentExpression("=",this.contextProperty("prev"),this.contextProperty("next")),n))},g.getTryLocsList=function(){if(0===this.tryEntries.length)return null;var e=0;return c.arrayExpression(this.tryEntries.map(function(t){var n=t.firstLoc.value;l.ok(n>=e,"try entries out of order"),e=n;var r=t.catchEntry,i=t.finallyEntry,a=[t.firstLoc,r?r.firstLoc:null];return i&&(a[2]=i.firstLoc,a[3]=i.afterLoc),c.arrayExpression(a)}))},g.explode=function(e,t){l.ok(e instanceof u.NodePath);var n=e.value,r=this;if(p.Node.assert(n),p.Statement.check(n))return r.explodeStatement(e);if(p.Expression.check(n))return r.explodeExpression(e,t);if(p.Declaration.check(n))throw o(n);switch(n.type){case"Program":return e.get("body").map(r.explodeStatement,r);case"VariableDeclarator":throw o(n);case"Property":case"SwitchCase":case"CatchClause":throw new Error(n.type+" nodes should be handled by their parents");default:throw new Error("unknown Node of type "+JSON.stringify(n.type))}},g.explodeStatement=function(e,t){l.ok(e instanceof u.NodePath);var n=e.value,r=this;if(p.Statement.assert(n),t?p.Identifier.assert(t):t=null,p.BlockStatement.check(n))return e.get("body").each(r.explodeStatement,r);if(!d.containsLeap(n))return void r.emit(n);switch(n.type){case"ExpressionStatement":r.explodeExpression(e.get("expression"),!0);break;case"LabeledStatement":var a=i();r.leapManager.withEntry(new f.LabeledEntry(a,n.label),function(){r.explodeStatement(e.get("body"),n.label)}),r.mark(a);break;case"WhileStatement":var o=i(),a=i();r.mark(o),r.jumpIfNot(r.explodeExpression(e.get("test")),a),r.leapManager.withEntry(new f.LoopEntry(a,o,t),function(){r.explodeStatement(e.get("body"))}),r.jump(o),r.mark(a);break;case"DoWhileStatement":var s=i(),y=i(),a=i();r.mark(s),r.leapManager.withEntry(new f.LoopEntry(a,y,t),function(){r.explode(e.get("body"))}),r.mark(y),r.jumpIf(r.explodeExpression(e.get("test")),s),r.mark(a);break;case"ForStatement":var g=i(),v=i(),a=i();n.init&&r.explode(e.get("init"),!0),r.mark(g),n.test&&r.jumpIfNot(r.explodeExpression(e.get("test")),a),r.leapManager.withEntry(new f.LoopEntry(a,v,t),function(){r.explodeStatement(e.get("body"))}),r.mark(v),n.update&&r.explode(e.get("update"),!0),r.jump(g),r.mark(a);break;case"ForInStatement":var g=i(),a=i(),b=r.makeTempVar();r.emitAssign(b,c.callExpression(m("keys"),[r.explodeExpression(e.get("right"))])),r.mark(g);var E=r.makeTempVar();r.jumpIf(c.memberExpression(c.assignmentExpression("=",E,c.callExpression(b,[])),c.identifier("done"),!1),a),r.emitAssign(n.left,c.memberExpression(E,c.identifier("value"),!1)),r.leapManager.withEntry(new f.LoopEntry(a,g,t),function(){r.explodeStatement(e.get("body"))}),r.jump(g),r.mark(a);break;case"BreakStatement":r.emitAbruptCompletion({type:"break",target:r.leapManager.getBreakLoc(n.label)});break;case"ContinueStatement":r.emitAbruptCompletion({type:"continue",target:r.leapManager.getContinueLoc(n.label)});break;case"SwitchStatement":for(var S=r.emitAssign(r.makeTempVar(),r.explodeExpression(e.get("discriminant"))),a=i(),w=i(),x=w,k=[],T=n.cases||[],A=T.length-1;A>=0;--A){var L=T[A];p.SwitchCase.assert(L),L.test?x=c.conditionalExpression(c.binaryExpression("===",S,L.test),k[A]=i(),x):k[A]=w}r.jump(r.explodeExpression(new u.NodePath(x,e,"discriminant"))),r.leapManager.withEntry(new f.SwitchEntry(a),function(){e.get("cases").each(function(e){var t=(e.value,e.name);r.mark(k[t]),e.get("consequent").each(r.explodeStatement,r)})}),r.mark(a),w.value===-1&&(r.mark(w),l.strictEqual(a.value,w.value));break;case"IfStatement":var C=n.alternate&&i(),a=i();r.jumpIfNot(r.explodeExpression(e.get("test")),C||a),r.explodeStatement(e.get("consequent")),C&&(r.jump(a),r.mark(C),r.explodeStatement(e.get("alternate"))),r.mark(a);break;case"ReturnStatement":r.emitAbruptCompletion({type:"return",value:r.explodeExpression(e.get("argument"))});break;case"WithStatement":throw new Error(node.type+" not supported in generator functions.");case"TryStatement":var a=i(),P=n.handler;!P&&n.handlers&&(P=n.handlers[0]||null);var _=P&&i(),I=_&&new f.CatchEntry(_,P.param),j=n.finalizer&&i(),O=j&&new f.FinallyEntry(j,a),M=new f.TryEntry(r.getUnmarkedCurrentLoc(),I,O);r.tryEntries.push(M),r.updateContextPrevLoc(M.firstLoc),r.leapManager.withEntry(M,function(){if(r.explodeStatement(e.get("block")),_){j?r.jump(j):r.jump(a),r.updateContextPrevLoc(r.mark(_));var t=e.get("handler","body"),n=r.makeTempVar();r.clearPendingException(M.firstLoc,n);var i=t.scope,o=P.param.name;p.CatchClause.assert(i.node),l.strictEqual(i.lookup(o),i),u.visit(t,{visitIdentifier:function(e){return h.isReference(e,o)&&e.scope.lookup(o)===i?n:void this.traverse(e)},visitFunction:function(e){return!e.scope.declares(o)&&void this.traverse(e)}}),r.leapManager.withEntry(I,function(){r.explodeStatement(t)})}j&&(r.updateContextPrevLoc(r.mark(j)),r.leapManager.withEntry(O,function(){r.explodeStatement(e.get("finalizer"))}),r.emit(c.returnStatement(c.callExpression(r.contextProperty("finish"),[O.firstLoc]))))}),r.mark(a);break;case"ThrowStatement":r.emit(c.throwStatement(r.explodeExpression(e.get("argument"))));break;default:throw new Error("unknown Statement of type "+JSON.stringify(n.type))}},g.emitAbruptCompletion=function(e){s(e)||l.ok(!1,"invalid completion record: "+JSON.stringify(e)),l.notStrictEqual(e.type,"normal","normal completions are not abrupt");var t=[c.literal(e.type)];"break"===e.type||"continue"===e.type?(p.Literal.assert(e.target),t[1]=e.target):"return"!==e.type&&"throw"!==e.type||e.value&&(p.Expression.assert(e.value),t[1]=e.value),this.emit(c.returnStatement(c.callExpression(this.contextProperty("abrupt"),t)))},g.getUnmarkedCurrentLoc=function(){return c.literal(this.listing.length)},g.updateContextPrevLoc=function(e){e?(p.Literal.assert(e),e.value===-1?e.value=this.listing.length:l.strictEqual(e.value,this.listing.length)):e=this.getUnmarkedCurrentLoc(),this.emitAssign(this.contextProperty("prev"),e)},g.explodeExpression=function(e,t){function n(e){return p.Expression.assert(e),t?void s.emit(e):e}function r(e,t,n){l.ok(t instanceof u.NodePath),l.ok(!n||!e,"Ignoring the result of a child expression but forcing it to be assigned to a temporary variable?");var r=s.explodeExpression(t,n);return n||(e||f&&!p.Literal.check(r))&&(r=s.emitAssign(e||s.makeTempVar(),r)),r}l.ok(e instanceof u.NodePath);var a=e.value;if(!a)return a;p.Expression.assert(a);var o,s=this;if(!d.containsLeap(a))return n(a);var f=d.containsLeap.onlyChildren(a);switch(a.type){case"MemberExpression":return n(c.memberExpression(s.explodeExpression(e.get("object")),a.computed?r(null,e.get("property")):a.property,a.computed));case"CallExpression":var h,m=e.get("callee"),y=e.get("arguments"),g=[],v=!1;if(y.each(function(e){v=v||d.containsLeap(e.value)}),p.MemberExpression.check(m.value))if(v){var b=r(s.makeTempVar(),m.get("object")),E=m.value.computed?r(null,m.get("property")):m.value.property;g.unshift(b),h=c.memberExpression(c.memberExpression(b,E,m.value.computed),c.identifier("call"),!1)}else h=s.explodeExpression(m);else h=s.explodeExpression(m),p.MemberExpression.check(h)&&(h=c.sequenceExpression([c.literal(0),h]));return y.each(function(e){g.push(r(null,e))}),n(c.callExpression(h,g));case"NewExpression":return n(c.newExpression(r(null,e.get("callee")),e.get("arguments").map(function(e){return r(null,e)})));case"ObjectExpression":return n(c.objectExpression(e.get("properties").map(function(e){return c.property(e.value.kind,e.value.key,r(null,e.get("value")))})));case"ArrayExpression":return n(c.arrayExpression(e.get("elements").map(function(e){return r(null,e)})));case"SequenceExpression":var S=a.expressions.length-1;return e.get("expressions").each(function(e){e.name===S?o=s.explodeExpression(e,t):s.explodeExpression(e,!0)}),o;case"LogicalExpression":var w=i();t||(o=s.makeTempVar());var x=r(o,e.get("left"));return"&&"===a.operator?s.jumpIfNot(x,w):(l.strictEqual(a.operator,"||"),s.jumpIf(x,w)),r(o,e.get("right"),t),s.mark(w),o;case"ConditionalExpression":var k=i(),w=i(),T=s.explodeExpression(e.get("test"));return s.jumpIfNot(T,k),t||(o=s.makeTempVar()),r(o,e.get("consequent"),t),s.jump(w),s.mark(k),r(o,e.get("alternate"),t),s.mark(w),o;case"UnaryExpression":return n(c.unaryExpression(a.operator,s.explodeExpression(e.get("argument")),!!a.prefix));case"BinaryExpression":return n(c.binaryExpression(a.operator,r(null,e.get("left")),r(null,e.get("right"))));case"AssignmentExpression":return n(c.assignmentExpression(a.operator,s.explodeExpression(e.get("left")),s.explodeExpression(e.get("right"))));case"UpdateExpression":return n(c.updateExpression(a.operator,s.explodeExpression(e.get("argument")),a.prefix));case"YieldExpression":var w=i(),A=a.argument&&s.explodeExpression(e.get("argument"));if(A&&a.delegate){var o=s.makeTempVar();return s.emit(c.returnStatement(c.callExpression(s.contextProperty("delegateYield"),[A,c.literal(o.property.name),w]))),s.mark(w),o}return s.emitAssign(s.contextProperty("next"),w),s.emit(c.returnStatement(A||null)),s.mark(w),s.contextProperty("sent");default:throw new Error("unknown Expression of type "+JSON.stringify(a.type))}}},{"./leap":37,"./meta":38,"./util":39,assert:2,recast:67}],36:[function(e,t,n){var r=e("assert"),i=e("recast").types,a=i.namedTypes,o=i.builders,s=Object.prototype.hasOwnProperty;n.hoist=function(e){function t(e,t){a.VariableDeclaration.assert(e);var r=[];return e.declarations.forEach(function(e){n[e.id.name]=e.id,e.init?r.push(o.assignmentExpression("=",e.id,e.init)):t&&r.push(e.id)}),0===r.length?null:1===r.length?r[0]:o.sequenceExpression(r)}r.ok(e instanceof i.NodePath),a.Function.assert(e.value);var n={};i.visit(e.get("body"),{visitVariableDeclaration:function(e){var n=t(e.value,!1);return null!==n?o.expressionStatement(n):(e.replace(),!1)},visitForStatement:function(e){var n=e.value.init;a.VariableDeclaration.check(n)&&e.get("init").replace(t(n,!1)),this.traverse(e)},visitForInStatement:function(e){var n=e.value.left;a.VariableDeclaration.check(n)&&e.get("left").replace(t(n,!0)),this.traverse(e)},visitFunctionDeclaration:function(e){var t=e.value;n[t.id.name]=t.id;var r=(e.parent.node,o.expressionStatement(o.assignmentExpression("=",t.id,o.functionExpression(t.id,t.params,t.body,t.generator,t.expression))));return a.BlockStatement.check(e.parent.node)?(e.parent.get("body").unshift(r),e.replace()):e.replace(r),!1},visitFunctionExpression:function(e){return!1}});var l={};e.get("params").each(function(e){var t=e.value;a.Identifier.check(t)&&(l[t.name]=t)});var u=[];return Object.keys(n).forEach(function(e){s.call(l,e)||u.push(o.variableDeclarator(n[e],null))}),0===u.length?null:o.variableDeclaration("var",u)}},{assert:2,recast:67}],37:[function(e,t,n){function r(){f.ok(this instanceof r)}function i(e){r.call(this),h.Literal.assert(e),this.returnLoc=e}function a(e,t,n){r.call(this),h.Literal.assert(e),h.Literal.assert(t),n?h.Identifier.assert(n):n=null,this.breakLoc=e,this.continueLoc=t,this.label=n}function o(e){r.call(this),h.Literal.assert(e),this.breakLoc=e}function s(e,t,n){r.call(this),h.Literal.assert(e),t?f.ok(t instanceof l):t=null,n?f.ok(n instanceof u):n=null,f.ok(t||n),this.firstLoc=e,this.catchEntry=t,this.finallyEntry=n}function l(e,t){r.call(this),h.Literal.assert(e),h.Identifier.assert(t),this.firstLoc=e,this.paramId=t}function u(e,t){r.call(this),h.Literal.assert(e),h.Literal.assert(t),this.firstLoc=e,this.afterLoc=t}function c(e,t){r.call(this),h.Literal.assert(e),h.Identifier.assert(t),this.breakLoc=e,this.label=t}function p(t){f.ok(this instanceof p);var n=e("./emit").Emitter;f.ok(t instanceof n),this.emitter=t,this.entryStack=[new i(t.finalLoc)]}var f=e("assert"),d=e("recast").types,h=d.namedTypes,m=(d.builders,e("util").inherits);Object.prototype.hasOwnProperty;m(i,r),n.FunctionEntry=i,m(a,r),n.LoopEntry=a,m(o,r),n.SwitchEntry=o,m(s,r),n.TryEntry=s,m(l,r),n.CatchEntry=l,m(u,r),n.FinallyEntry=u,m(c,r),n.LabeledEntry=c;var y=p.prototype;n.LeapManager=p,y.withEntry=function(e,t){f.ok(e instanceof r),this.entryStack.push(e);try{t.call(this.emitter)}finally{var n=this.entryStack.pop();f.strictEqual(n,e)}},y._findLeapLocation=function(e,t){for(var n=this.entryStack.length-1;n>=0;--n){var r=this.entryStack[n],i=r[e];if(i)if(t){if(r.label&&r.label.name===t.name)return i}else if(!(r instanceof c))return i}return null},y.getBreakLoc=function(e){return this._findLeapLocation("breakLoc",e)},y.getContinueLoc=function(e){return this._findLeapLocation("continueLoc",e)}},{"./emit":35,assert:2,recast:67,util:34}],38:[function(e,t,n){function r(e,t){function n(e){function t(e){return n||(s.check(e)?e.some(t):l.Node.check(e)&&(i.strictEqual(n,!1),n=r(e))),n}l.Node.assert(e);var n=!1;return o.eachField(e,function(e,n){t(n)}),n}function r(r){l.Node.assert(r);var i=a(r);return u.call(i,e)?i[e]:u.call(c,r.type)?i[e]=!1:u.call(t,r.type)?i[e]=!0:i[e]=n(r)}return r.onlyChildren=n,r}var i=e("assert"),a=e("private").makeAccessor(),o=e("recast").types,s=o.builtInTypes.array,l=o.namedTypes,u=Object.prototype.hasOwnProperty,c={FunctionExpression:!0},p={CallExpression:!0,ForInStatement:!0,UnaryExpression:!0,BinaryExpression:!0,AssignmentExpression:!0,UpdateExpression:!0,NewExpression:!0},f={YieldExpression:!0,BreakStatement:!0,ContinueStatement:!0,ReturnStatement:!0,ThrowStatement:!0};for(var d in f)u.call(f,d)&&(p[d]=f[d]);n.hasSideEffects=r("hasSideEffects",p),n.containsLeap=r("containsLeap",f)},{assert:2,private:56,recast:67}],39:[function(e,t,n){var r=(e("assert"),e("recast").types),i=r.namedTypes,a=r.builders,o=Object.prototype.hasOwnProperty;n.defaults=function(e){for(var t,n=arguments.length,r=1;r<n;++r)if(t=arguments[r])for(var i in t)o.call(t,i)&&!o.call(e,i)&&(e[i]=t[i]);return e},n.runtimeProperty=function(e){return a.memberExpression(a.identifier("regeneratorRuntime"),a.identifier(e),!1)},n.isReference=function(e,t){var n=e.value;if(!i.Identifier.check(n))return!1;if(t&&n.name!==t)return!1;var r=e.parent.value;switch(r.type){case"VariableDeclarator":return"init"===e.name;case"MemberExpression":return"object"===e.name||r.computed&&"property"===e.name;case"FunctionExpression":case"FunctionDeclaration":case"ArrowFunctionExpression":return"id"!==e.name&&("params"!==e.parentPath.name||r.params!==e.parentPath.value||r.params[e.name]!==n);case"ClassDeclaration":case"ClassExpression":return"id"!==e.name;case"CatchClause":return"param"!==e.name;case"Property":case"MethodDefinition":return"key"!==e.name;case"ImportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"LabeledStatement":return!1;default:return!0}}},{assert:2,recast:67}],40:[function(e,t,n){function r(t){f.Program.assert(t);var n=e("..").runtime.path,r=u.readFileSync(n,"utf8"),i=c.parse(r,{sourceFileName:n}).program.body,a=t.body;a.unshift.apply(a,i)}function i(e){var t=e.value;if(f.Function.assert(t),t.generator&&f.FunctionDeclaration.check(t)){for(var n=e.parent;n&&!f.BlockStatement.check(n.value)&&!f.Program.check(n.value);)n=n.parent;if(!n)return t.id;var r=a(n),i=r.declarations[0].id,o=r.declarations[0].init.callee.object;f.ArrayExpression.assert(o);var s=o.elements.length;return o.elements.push(t.id),d.memberExpression(i,d.literal(s),!0)}return t.id||(t.id=e.scope.parent.declareTemporary("callee$"))}function a(e){l.ok(e instanceof m);var t=e.node;h.assert(t.body);var n=E(t);if(n.decl)return n.decl;n.decl=d.variableDeclaration("var",[d.variableDeclarator(e.scope.declareTemporary("marked"),d.callExpression(d.memberExpression(d.arrayExpression([]),d.identifier("map"),!1),[b("mark")]))]);for(var r=0;r<t.body.length&&o(e.get("body",r));++r);return e.get("body").insertAt(r,n.decl),n.decl}function o(e){var t=e.value;return f.Statement.assert(t),f.ExpressionStatement.check(t)&&f.Literal.check(t.expression)&&"use strict"===t.expression.value}function s(e,t){l.ok(e instanceof p.NodePath);var n=e.value,r=!1;return c.visit(e,{visitFunction:function(e){return e.value===n&&void this.traverse(e)},visitIdentifier:function(e){return"arguments"===e.value.name&&v.isReference(e)?(e.replace(t),r=!0,!1):void this.traverse(e)}}),r}var l=e("assert"),u=e("fs"),c=e("recast"),p=c.types,f=p.namedTypes,d=p.builders,h=p.builtInTypes.array,m=(p.builtInTypes.object,p.NodePath),y=e("./hoist").hoist,g=e("./emit").Emitter,v=e("./util"),b=v.runtimeProperty,E=e("private").makeAccessor();n.transform=function(e,t){t=t||{};var n=e instanceof m?e:new m(e);return S.visit(n,t),e=n.value,(t.includeRuntime===!0||"if used"===t.includeRuntime&&S.wasChangeReported())&&r(f.File.check(e)?e.program:e),t.madeChanges=S.wasChangeReported(),e};var S=p.PathVisitor.fromMethodsObject({reset:function(e,t){this.options=t},visitFunction:function(e){this.traverse(e);var t=e.value,n=t.async&&!this.options.disableAsync;if(t.generator||n){this.reportChanged(),t.expression&&(t.expression=!1,t.body=d.blockStatement([d.returnStatement(t.body)])),n&&w.visit(e.get("body"));var r=[],a=[],o=e.get("body","body");o.each(function(e){var t=e.value;t&&null!=t._blockHoist?r.push(t):a.push(t)}),r.length>0&&o.replace(a);var l=i(e);f.Identifier.assert(t.id);var u=d.identifier(t.id.name+"$"),c=e.scope.declareTemporary("context$"),p=e.scope.declareTemporary("args$"),h=y(e),m=s(e,p);m&&(h=h||d.variableDeclaration("var",[]),h.declarations.push(d.variableDeclarator(p,d.identifier("arguments"))));var v=new g(c);v.explode(e.get("body")),h&&h.declarations.length>0&&r.push(h);var E=[v.getContextFunction(u),t.generator?l:d.literal(null),d.thisExpression()],S=v.getTryLocsList();S&&E.push(S);var x=d.callExpression(b(n?"async":"wrap"),E);r.push(d.returnStatement(x)),t.body=d.blockStatement(r);var k=t.generator;return k&&(t.generator=!1),n&&(t.async=!1),k&&f.Expression.check(t)?d.callExpression(b("mark"),[t]):void 0}},visitForOfStatement:function(e){this.traverse(e);var t,n=e.value,r=e.scope.declareTemporary("t$"),i=d.variableDeclarator(r,d.callExpression(b("values"),[n.right])),a=e.scope.declareTemporary("t$"),o=d.variableDeclarator(a,null),s=n.left;f.VariableDeclaration.check(s)?(t=s.declarations[0].id,s.declarations.push(i,o)):(t=s,s=d.variableDeclaration("var",[i,o])),f.Identifier.assert(t);var l=d.expressionStatement(d.assignmentExpression("=",t,d.memberExpression(a,d.identifier("value"),!1)));return f.BlockStatement.check(n.body)?n.body.body.unshift(l):n.body=d.blockStatement([l,n.body]),d.forStatement(s,d.unaryExpression("!",d.memberExpression(d.assignmentExpression("=",a,d.callExpression(d.memberExpression(r,d.identifier("next"),!1),[])),d.identifier("done"),!1)),null,n.body)}}),w=p.PathVisitor.fromMethodsObject({visitFunction:function(e){return!1},visitAwaitExpression:function(e){var t=e.value.argument;return e.value.all&&(t=d.callExpression(d.memberExpression(d.identifier("Promise"),d.identifier("all"),!1),[t])),d.yieldExpression(d.callExpression(b("awrap"),[t]),!1)}})},{"..":"regenerator","./emit":35,"./hoist":36,"./util":39,assert:2,fs:1,private:56,recast:67}],41:[function(e,t,n){"use strict";function r(e){return k.someof(e,["const","let"])}function i(e){return k.someof(e,["var","const","let"])}function a(e){return"BlockStatement"===e.type&&k.noneof(e.$parent.type,["FunctionDeclaration","FunctionExpression"])}function o(e){return"ForStatement"===e.type&&e.init&&"VariableDeclaration"===e.init.type&&r(e.init.kind)}function s(e){return l(e)&&"VariableDeclaration"===e.left.type&&r(e.left.kind)}function l(e){return k.someof(e.type,["ForInStatement","ForOfStatement"])}function u(e){return k.someof(e.type,["FunctionDeclaration","FunctionExpression"])}function c(e){return k.someof(e.type,["ForStatement","ForInStatement","ForOfStatement","WhileStatement","DoWhileStatement"])}function p(e){var t=e.$parent;return e.$refToScope||"Identifier"===e.type&&!("VariableDeclarator"===t.type&&t.id===e)&&!("MemberExpression"===t.type&&t.computed===!1&&t.property===e)&&!("Property"===t.type&&t.key===e)&&!("LabeledStatement"===t.type&&t.label===e)&&!("CatchClause"===t.type&&t.param===e)&&!(u(t)&&t.id===e)&&!(u(t)&&k.someof(e,t.params))&&!0}function f(e){return p(e)&&("AssignmentExpression"===e.$parent.type&&e.$parent.left===e||"UpdateExpression"===e.$parent.type&&e.$parent.argument===e)}function d(e,t){if(x(!e.$scope),e.$parent=t,e.$scope=e.$parent?e.$parent.$scope:null,"Program"===e.type)e.$scope=new I({kind:"hoist",node:e,parent:null});else if(u(e))e.$scope=new I({kind:"hoist",node:e,parent:e.$parent.$scope}),e.id&&(x("Identifier"===e.id.type),"FunctionDeclaration"===e.type?e.$parent.$scope.add(e.id.name,"fun",e.id,null):"FunctionExpression"===e.type?e.$scope.add(e.id.name,"fun",e.id,null):x(!1)),e.params.forEach(function(t){e.$scope.add(t.name,"param",t,null)});else if("VariableDeclaration"===e.type)x(i(e.kind)),e.declarations.forEach(function(t){x("VariableDeclarator"===t.type);var n=t.id.name;M.disallowVars&&"var"===e.kind&&j(O(t),"var {0} is not allowed (use let or const)",n),e.$scope.add(n,e.kind,t.id,t.range[1])});else if(o(e)||s(e))e.$scope=new I({kind:"block",node:e,parent:e.$parent.$scope});else if(a(e))e.$scope=new I({kind:"block",node:e,parent:e.$parent.$scope});else if("CatchClause"===e.type){var n=e.param;e.$scope=new I({kind:"catch-block",node:e,parent:e.$parent.$scope}),e.$scope.add(n.name,"caught",n,null),e.$scope.closestHoistScope().markPropagates(n.name)}}function h(e,t,n){function r(e){for(var t in e){var n=e[t],r=n?"var":"const";i.hasOwn(t)&&i.remove(t),i.add(t,r,{loc:{start:{line:-1}}},-1)}}var i=new I({kind:"hoist",node:{},parent:null}),a={undefined:!1,Infinity:!1,console:!1};return r(a),r(D.reservedVars),r(D.ecmaIdentifiers),t&&t.forEach(function(e){D[e]?r(D[e]):j(-1,'environment "{0}" not found',e)}),n&&r(n),e.parent=i,i.children.push(e),i}function m(e,t,n){function r(e){if(p(e)){t.add(e.name);var n=e.$scope.lookup(e.name);if(i&&!n&&M.disallowUnknownReferences&&j(O(e),"reference to unknown global variable {0}",e.name),i&&n&&k.someof(n.getKind(e.name),["const","let"])){var r=n.getFromPos(e.name),a=e.range[0];x(k.finitenumber(r)),x(k.finitenumber(a)),a<r&&(e.$scope.hasFunctionScopeBetween(n)||j(O(e),"{0} is referenced before its declaration",e.name))}e.$refToScope=n}}var i=!k.own(n,"analyze")||n.analyze;P(e,{pre:r})}function y(e,t,n,i){function a(e){x(n.has(e));for(var t=0;;t++){var r=e+"$"+String(t);if(!n.has(r))return r}}function o(e){if("VariableDeclaration"===e.type&&r(e.kind)){var o=e.$scope.closestHoistScope(),s=e.$scope;i.push({start:e.range[0],end:e.range[0]+e.kind.length,str:"var"}),e.declarations.forEach(function(r){x("VariableDeclarator"===r.type);var l=r.id.name;t.declarator(e.kind);var u=s!==o&&(o.hasOwn(l)||o.doesPropagate(l)),c=u?a(l):l;s.remove(l),o.add(c,"var",r.id,r.range[1]),s.moves=s.moves||A(),s.moves.set(l,{name:c,scope:o
}),n.add(c),c!==l&&(t.rename(l,c,O(r)),r.id.originalName=l,r.id.name=c,i.push({start:r.id.range[0],end:r.id.range[1],str:c}))}),e.kind="var"}}function s(e){if(e.$refToScope){var t=e.$refToScope.moves&&e.$refToScope.moves.get(e.name);if(t&&(e.$refToScope=t.scope,e.name!==t.name))if(e.originalName=e.name,e.name=t.name,e.alterop){for(var n=null,r=0;r<i.length;r++){var a=i[r];if(a.node===e){n=a;break}}x(n),n.str=t.name}else i.push({start:e.range[0],end:e.range[1],str:t.name})}}P(e,{pre:o}),P(e,{pre:s}),e.$scope.traverse({pre:function(e){delete e.moves}})}function g(e){function t(e,t){return _(function(n){return P(e,{pre:function(e){if(u(e))return!1;var r=!0,i="loop-variable {0} is captured by a loop-closure that can't be transformed due to use of {1} at line {2}";"BreakStatement"===e.type?j(O(t),i,t.name,"break",O(e)):"ContinueStatement"===e.type?j(O(t),i,t.name,"continue",O(e)):"ReturnStatement"===e.type?j(O(t),i,t.name,"return",O(e)):"YieldExpression"===e.type?j(O(t),i,t.name,"yield",O(e)):"Identifier"===e.type&&"arguments"===e.name?j(O(t),i,t.name,"arguments",O(e)):"VariableDeclaration"===e.type&&"var"===e.kind?j(O(t),i,t.name,"var",O(e)):r=!1,r&&n(!0)}}),!1})}function n(e){var n=null;if(p(e)&&e.$refToScope&&r(e.$refToScope.getKind(e.name))){for(var i=e.$refToScope.node;;){if(u(i))return;if(c(i)){n=i;break}if(i=i.$parent,!i)return}x(c(n));for(var a=e.$refToScope,o="iife"===M.loopClosures,s=e.$scope;s;s=s.parent){if(s===a)return;if(u(s.node)){if(!o){var l='loop-variable {0} is captured by a loop-closure. Tried "loopClosures": "iife" in defs-config.json?';return j(O(e),l,e.name)}if("ForStatement"===n.type&&a.node===n){var f=a.getNode(e.name);return j(O(f),"Not yet specced ES6 feature. {0} is declared in for-loop header and then captured in loop closure",f.name)}if(t(n.body,e))return;n.$iify=!0}}}}P(e,{pre:n})}function v(e,t,n){function r(e,n,r){var i={start:e,end:e,str:n};r&&(i.node=r),t.push(i)}P(e,{pre:function(e){if(e.$iify){var t="BlockStatement"===e.body.type,i=t?e.body.range[0]+1:e.body.range[0],a=t?e.body.range[1]-1:e.body.range[1],o=l(e)&&e.left.declarations[0].id.name,s=T("(function({0}){",o?o:""),u=T("}).call(this{0});",o?", "+o:""),c=n.parse(s+u),p=c.body[0],f=p.expression.callee.object.body;if(t){var d=e.body,h=d.body;d.body=[p],f.body=h}else{var m=e.body;e.body=p,f.body[0]=m}if(r(i,s),o){r(a,"}).call(this, ");var y=p.expression.arguments,g=y[1];g.alterop=!0,r(a,o,g),r(a,");")}else r(a,u)}}})}function b(e){P(e,{pre:function(e){if(f(e)){var t=e.$scope.lookup(e.name);t&&"const"===t.getKind(e.name)&&j(O(e),"can't assign to const variable {0}",e.name)}}})}function E(e,t){P(e,{pre:d});var n=h(e.$scope,M.environments,M.globals),r=L();return n.traverse({pre:function(e){r.addMany(e.decls.keys())}}),m(e,r,t),r}function S(e){P(e,{pre:function(e){for(var t in e)"$"===t[0]&&delete e[t]}})}function w(e,t){for(var n in t)M[n]=t[n];var r;if(k.object(e)){if(!M.ast)return{errors:["Can't produce string output when input is an AST. Did you forget to set options.ast = true?"]};r=e}else{if(!k.string(e))return{errors:["Input was neither an AST object nor a string."]};try{r=M.parse(e,{loc:!0,range:!0})}catch(t){return{errors:[T("line {0} column {1}: Error during input file parsing\n{2}\n{3}",t.lineNumber,t.column,e.split("\n")[t.lineNumber-1],T.repeat(" ",t.column-1)+"^")]}}}var i=r;j.reset();var a=E(i,{});g(i),b(i);var o=[];if(v(i,o,M),j.errors.length>=1)return{errors:j.errors};o.length>0&&(S(i),a=E(i,{analyze:!1})),x(0===j.errors.length);var s=new N;if(y(i,s,a,o),M.ast)return S(i),{stats:s,ast:i};var l=C(e,o);return{stats:s,src:l}}var x=e("assert"),k=e("simple-is"),T=e("simple-fmt"),A=e("stringmap"),L=e("stringset"),C=e("alter"),P=e("ast-traverse"),_=e("breakable"),I=e("./scope"),j=e("./error"),O=j.getline,M=e("./options"),N=e("./stats"),D=e("./jshint_globals/vars.js");t.exports=w},{"./error":42,"./jshint_globals/vars.js":43,"./options":44,"./scope":45,"./stats":46,alter:47,assert:2,"ast-traverse":49,breakable:50,"simple-fmt":51,"simple-is":52,stringmap:53,stringset:54}],42:[function(e,t,n){"use strict";function r(e,t){a(arguments.length>=2);var n=2===arguments.length?String(t):i.apply(i,Array.prototype.slice.call(arguments,1));r.errors.push(e===-1?n:i("line {0}: {1}",e,n))}var i=e("simple-fmt"),a=e("assert");r.reset=function(){r.errors=[]},r.getline=function(e){return e&&e.loc&&e.loc.start?e.loc.start.line:-1},r.reset(),t.exports=r},{assert:2,"simple-fmt":51}],43:[function(e,t,n){"use strict";n.reservedVars={arguments:!1,NaN:!1},n.ecmaIdentifiers={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,Math:!1,Map:!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},n.browser={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,Element:!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,Uint8ClampedArray:!1,WebSocket:!1,window:!1,Worker:!1,XMLHttpRequest:!1,XMLSerializer:!1,XPathEvaluator:!1,XPathException:!1,XPathExpression:!1,XPathNamespace:!1,XPathNSResolver:!1,XPathResult:!1},n.devel={alert:!1,confirm:!1,console:!1,Debug:!1,opera:!1,prompt:!1},n.worker={importScripts:!0,postMessage:!0,self:!0},n.nonstandard={escape:!1,unescape:!1},n.couch={require:!1,respond:!1,getRow:!1,emit:!1,send:!1,start:!1,sum:!1,log:!1,exports:!1,module:!1,provides:!1},n.node={__filename:!1,__dirname:!1,Buffer:!1,DataView:!1,console:!1,exports:!0,GLOBAL:!1,global:!1,module:!1,process:!1,require:!1,setTimeout:!1,clearTimeout:!1,setInterval:!1,clearInterval:!1},n.phantom={phantom:!0,require:!0,WebPage:!0},n.rhino={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},n.wsh={ActiveXObject:!0,Enumerator:!0,GetObject:!0,ScriptEngine:!0,ScriptEngineBuildVersion:!0,ScriptEngineMajorVersion:!0,ScriptEngineMinorVersion:!0,VBArray:!0,WSH:!0,WScript:!0,XDomainRequest:!0},n.dojo={dojo:!1,dijit:!1,dojox:!1,define:!1,require:!1},n.jquery={$:!1,jQuery:!1},n.mootools={$:!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},n.prototypejs={$:!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},n.yui={YUI:!1,Y:!1,YUI_config:!1}},{}],44:[function(e,t,n){t.exports={disallowVars:!1,disallowDuplicated:!0,disallowUnknownReferences:!0,parse:e("esprima-fb").parse}},{"esprima-fb":55}],45:[function(e,t,n){"use strict";function r(e){i(s.someof(e.kind,["hoist","block","catch-block"])),i(s.object(e.node)),i(null===e.parent||s.object(e.parent)),this.kind=e.kind,this.node=e.node,this.parent=e.parent,this.children=[],this.decls=a(),this.written=o(),this.propagates="hoist"===this.kind?o():null,this.parent&&this.parent.children.push(this)}var i=e("assert"),a=e("stringmap"),o=e("stringset"),s=e("simple-is"),l=e("simple-fmt"),u=e("./error"),c=u.getline,p=e("./options");r.prototype.print=function(e){e=e||0;var t=this,n=this.decls.keys().map(function(e){return l("{0} [{1}]",e,t.decls.get(e).kind)}).join(", "),r=this.propagates?this.propagates.items().join(", "):"";console.log(l("{0}{1}: {2}. propagates: {3}",l.repeat(" ",e),this.node.type,n,r)),this.children.forEach(function(t){t.print(e+2)})},r.prototype.add=function(e,t,n,r){function a(e){return s.someof(e,["const","let"])}i(s.someof(t,["fun","param","var","caught","const","let"]));var o=this;if(s.someof(t,["fun","param","var"]))for(;"hoist"!==o.kind;){if(o.decls.has(e)&&a(o.decls.get(e).kind))return u(c(n),"{0} is already declared",e);o=o.parent}if(o.decls.has(e)&&(p.disallowDuplicated||a(o.decls.get(e).kind)||a(t)))return u(c(n),"{0} is already declared",e);var l={kind:t,node:n};r&&(i(s.someof(t,["var","const","let"])),l.from=r),o.decls.set(e,l)},r.prototype.getKind=function(e){i(s.string(e));var t=this.decls.get(e);return t?t.kind:null},r.prototype.getNode=function(e){i(s.string(e));var t=this.decls.get(e);return t?t.node:null},r.prototype.getFromPos=function(e){i(s.string(e));var t=this.decls.get(e);return t?t.from:null},r.prototype.hasOwn=function(e){return this.decls.has(e)},r.prototype.remove=function(e){return this.decls.remove(e)},r.prototype.doesPropagate=function(e){return this.propagates.has(e)},r.prototype.markPropagates=function(e){this.propagates.add(e)},r.prototype.closestHoistScope=function(){for(var e=this;"hoist"!==e.kind;)e=e.parent;return e},r.prototype.hasFunctionScopeBetween=function(e){function t(e){return s.someof(e.type,["FunctionDeclaration","FunctionExpression"])}for(var n=this;n;n=n.parent){if(n===e)return!1;if(t(n.node))return!0}throw new Error("wasn't inner scope of outer")},r.prototype.lookup=function(e){for(var t=this;t;t=t.parent){if(t.decls.has(e))return t;"hoist"===t.kind&&t.propagates.add(e)}return null},r.prototype.markWrite=function(e){i(s.string(e)),this.written.add(e)},r.prototype.detectUnmodifiedLets=function(){function e(n){n!==t&&n.decls.keys().forEach(function(e){if("let"===n.getKind(e)&&!n.written.has(e))return u(c(n.getNode(e)),"{0} is declared as let but never modified so could be const",e)}),n.children.forEach(function(t){e(t)})}var t=this;e(this)},r.prototype.traverse=function(e){function t(e){n&&n(e),e.children.forEach(function(e){t(e)}),r&&r(e)}e=e||{};var n=e.pre,r=e.post;t(this)},t.exports=r},{"./error":42,"./options":44,assert:2,"simple-fmt":51,"simple-is":52,stringmap:53,stringset:54}],46:[function(e,t,n){function r(){this.lets=0,this.consts=0,this.renames=[]}var i=e("simple-fmt"),a=e("simple-is"),o=e("assert");r.prototype.declarator=function(e){o(a.someof(e,["const","let"])),"const"===e?this.consts++:this.lets++},r.prototype.rename=function(e,t,n){this.renames.push({oldName:e,newName:t,line:n})},r.prototype.toString=function(){var e=this.renames.map(function(e){return e}).sort(function(e,t){return e.line-t.line}),t=e.map(function(e){return i("\nline {0}: {1} => {2}",e.line,e.oldName,e.newName)}).join(""),n=this.consts+this.lets,r=0===n?"can't calculate const coverage (0 consts, 0 lets)":i("{0}% const coverage ({1} consts, {2} lets)",Math.floor(100*this.consts/n),this.consts,this.lets);return r+t+"\n"},t.exports=r},{assert:2,"simple-fmt":51,"simple-is":52}],47:[function(e,t,n){function r(e,t){"use strict";var n=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};i("string"==typeof e),i(n(t));for(var r=a(t,function(e,t){return e.start-t.start}),o=[],s=0,l=0;l<r.length;l++){var u=r[l];i(s<=u.start),i(u.start<=u.end),o.push(e.slice(s,u.start)),o.push(u.str),s=u.end}return s<e.length&&o.push(e.slice(s)),o.join("")}var i=e("assert"),a=e("stable");"undefined"!=typeof t&&"undefined"!=typeof t.exports&&(t.exports=r)},{assert:2,stable:48}],48:[function(e,t,n){!function(){function e(e,t){"function"!=typeof t&&(t=function(e,t){return String(e).localeCompare(t)});var n=e.length;if(n<=1)return e;for(var i=new Array(n),a=1;a<n;a*=2){r(e,t,a,i);var o=e;e=i,i=o}return e}var n=function(t,n){return e(t.slice(),n)};n.inplace=function(t,n){var i=e(t,n);return i!==t&&r(i,null,t.length,t),t};var r=function(e,t,n,r){var i,a,o,s,l,u=e.length,c=0,p=2*n;for(i=0;i<u;i+=p)for(a=i+n,o=a+n,a>u&&(a=u),o>u&&(o=u),s=i,l=a;;)if(s<a&&l<o)t(e[s],e[l])<=0?r[c++]=e[s++]:r[c++]=e[l++];else if(s<a)r[c++]=e[s++];else{if(!(l<o))break;r[c++]=e[l++]}};"undefined"!=typeof t?t.exports=n:window.stable=n}()},{}],49:[function(e,t,n){function r(e,t){"use strict";function n(e,t,o,s){if(e&&"string"==typeof e.type){var l=void 0;if(r&&(l=r(e,t,o,s)),l!==!1)for(var o in e)if(a?!a(o,e):"$"!==o[0]){var u=e[o];if(Array.isArray(u))for(var c=0;c<u.length;c++)n(u[c],e,o,c);else n(u,e,o)}i&&i(e,t,o,s)}}t=t||{};var r=t.pre,i=t.post,a=t.skipProperty;n(e,null)}"undefined"!=typeof t&&"undefined"!=typeof t.exports&&(t.exports=r)},{}],50:[function(e,t,n){var r=function(){"use strict";function e(e,t){this.val=e,this.brk=t}function t(){return function t(n){throw new e(n,t)}}function n(n){var r=t();try{return n(r)}catch(t){if(t instanceof e&&t.brk===r)return t.val;throw t}}return n}();"undefined"!=typeof t&&"undefined"!=typeof t.exports&&(t.exports=r)},{}],51:[function(e,t,n){var r=function(){"use strict";function e(e,t){var n=Array.prototype.slice.call(arguments,1);return e.replace(/\{(\d+)\}/g,function(e,t){return t in n?n[t]:e})}function t(e,t){return e.replace(/\{([_$a-zA-Z0-9][_$a-zA-Z0-9]*)\}/g,function(e,n){return n in t?t[n]:e})}function n(e,t){return new Array(t+1).join(e)}return e.fmt=e,e.obj=t,e.repeat=n,e}();"undefined"!=typeof t&&"undefined"!=typeof t.exports&&(t.exports=r)},{}],52:[function(e,t,n){var r=function(){"use strict";var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=void 0;return{nan:function(e){return e!==e},boolean:function(e){return"boolean"==typeof e},number:function(e){return"number"==typeof e},string:function(e){return"string"==typeof e},fn:function(e){return"function"==typeof e},object:function(e){return null!==e&&"object"==typeof e},primitive:function(e){var t=typeof e;return null===e||e===n||"boolean"===t||"number"===t||"string"===t},array:Array.isArray||function(e){return"[object Array]"===t.call(e)},finitenumber:function(e){return"number"==typeof e&&isFinite(e)},someof:function(e,t){return t.indexOf(e)>=0},noneof:function(e,t){return t.indexOf(e)===-1},own:function(t,n){return e.call(t,n)}}}();"undefined"!=typeof t&&"undefined"!=typeof t.exports&&(t.exports=r)},{}],53:[function(e,t,n){var r=function(){"use strict";function e(t){return this instanceof e?(this.obj=n(),this.hasProto=!1,this.proto=void 0,void(t&&this.setMany(t))):new e(t)}var t=Object.prototype.hasOwnProperty,n=function(){function e(e){for(var n in e)if(t.call(e,n))return!0;return!1}function n(e){return t.call(e,"__count__")||t.call(e,"__parent__")}var r=!1;if("function"==typeof Object.create&&(e(Object.create(null))||(r=!0)),r===!1&&e({}))throw new Error("StringMap environment error 0, please file a bug at https://github.com/olov/stringmap/issues");var i=r?Object.create(null):{},a=!1;if(n(i)){if(i.__proto__=null,e(i)||n(i))throw new Error("StringMap environment error 1, please file a bug at https://github.com/olov/stringmap/issues");a=!0}return function(){var e=r?Object.create(null):{};return a&&(e.__proto__=null),e}}();return e.prototype.has=function(e){if("string"!=typeof e)throw new Error("StringMap expected string key");return"__proto__"===e?this.hasProto:t.call(this.obj,e)},e.prototype.get=function(e){if("string"!=typeof e)throw new Error("StringMap expected string key");return"__proto__"===e?this.proto:t.call(this.obj,e)?this.obj[e]:void 0},e.prototype.set=function(e,t){if("string"!=typeof e)throw new Error("StringMap expected string key");"__proto__"===e?(this.hasProto=!0,this.proto=t):this.obj[e]=t},e.prototype.remove=function(e){if("string"!=typeof e)throw new Error("StringMap expected string key");var t=this.has(e);return"__proto__"===e?(this.hasProto=!1,this.proto=void 0):delete this.obj[e],t},e.prototype.delete=e.prototype.remove,e.prototype.isEmpty=function(){for(var e in this.obj)if(t.call(this.obj,e))return!1;return!this.hasProto},e.prototype.size=function(){var e=0;for(var n in this.obj)t.call(this.obj,n)&&++e;return this.hasProto?e+1:e},e.prototype.keys=function(){var e=[];for(var n in this.obj)t.call(this.obj,n)&&e.push(n);return this.hasProto&&e.push("__proto__"),e},e.prototype.values=function(){var e=[];for(var n in this.obj)t.call(this.obj,n)&&e.push(this.obj[n]);return this.hasProto&&e.push(this.proto),e},e.prototype.items=function(){var e=[];for(var n in this.obj)t.call(this.obj,n)&&e.push([n,this.obj[n]]);return this.hasProto&&e.push(["__proto__",this.proto]),e},e.prototype.setMany=function(e){if(null===e||"object"!=typeof e&&"function"!=typeof e)throw new Error("StringMap expected Object");for(var n in e)t.call(e,n)&&this.set(n,e[n]);return this},e.prototype.merge=function(e){for(var t=e.keys(),n=0;n<t.length;n++){var r=t[n];this.set(r,e.get(r))}return this},e.prototype.map=function(e){for(var t=this.keys(),n=0;n<t.length;n++){var r=t[n];t[n]=e(this.get(r),r)}return t},e.prototype.forEach=function(e){for(var t=this.keys(),n=0;n<t.length;n++){var r=t[n];e(this.get(r),r)}},e.prototype.clone=function(){var t=e();return t.merge(this)},e.prototype.toString=function(){var e=this;return"{"+this.keys().map(function(t){return JSON.stringify(t)+":"+JSON.stringify(e.get(t))}).join(",")+"}"},e}();"undefined"!=typeof t&&"undefined"!=typeof t.exports&&(t.exports=r)},{}],54:[function(e,t,n){var r=function(){"use strict";function e(t){return this instanceof e?(this.obj=n(),this.hasProto=!1,void(t&&this.addMany(t))):new e(t)}var t=Object.prototype.hasOwnProperty,n=function(){function e(e){for(var n in e)if(t.call(e,n))return!0;return!1}function n(e){return t.call(e,"__count__")||t.call(e,"__parent__")}var r=!1;if("function"==typeof Object.create&&(e(Object.create(null))||(r=!0)),r===!1&&e({}))throw new Error("StringSet environment error 0, please file a bug at https://github.com/olov/stringset/issues");var i=r?Object.create(null):{},a=!1;if(n(i)){if(i.__proto__=null,e(i)||n(i))throw new Error("StringSet environment error 1, please file a bug at https://github.com/olov/stringset/issues");a=!0}return function(){var e=r?Object.create(null):{};return a&&(e.__proto__=null),e}}();return e.prototype.has=function(e){if("string"!=typeof e)throw new Error("StringSet expected string item");return"__proto__"===e?this.hasProto:t.call(this.obj,e)},e.prototype.add=function(e){if("string"!=typeof e)throw new Error("StringSet expected string item");"__proto__"===e?this.hasProto=!0:this.obj[e]=!0},e.prototype.remove=function(e){if("string"!=typeof e)throw new Error("StringSet expected string item");var t=this.has(e);return"__proto__"===e?this.hasProto=!1:delete this.obj[e],t},e.prototype.delete=e.prototype.remove,e.prototype.isEmpty=function(){for(var e in this.obj)if(t.call(this.obj,e))return!1;return!this.hasProto},e.prototype.size=function(){var e=0;for(var n in this.obj)t.call(this.obj,n)&&++e;return this.hasProto?e+1:e},e.prototype.items=function(){var e=[];for(var n in this.obj)t.call(this.obj,n)&&e.push(n);return this.hasProto&&e.push("__proto__"),e},e.prototype.addMany=function(e){if(!Array.isArray(e))throw new Error("StringSet expected array");for(var t=0;t<e.length;t++)this.add(e[t]);return this},e.prototype.merge=function(e){return this.addMany(e.items()),this},e.prototype.clone=function(){var t=e();return t.merge(this)},e.prototype.toString=function(){return"{"+this.items().map(JSON.stringify).join(",")+"}"},e}();"undefined"!=typeof t&&"undefined"!=typeof t.exports&&(t.exports=r)},{}],55:[function(e,t,n){!function(e,t){"use strict";"function"==typeof define&&define.amd?define(["exports"],t):t("undefined"!=typeof n?n:e.esprima={})}(this,function(e){"use strict";function t(e,t){if(!e)throw new Error("ASSERT: "+t)}function n(){this.$data={}}function r(e){return e>=48&&e<=57}function i(e){return"0123456789abcdefABCDEF".indexOf(e)>=0}function a(e){return"01234567".indexOf(e)>=0}function o(e){return 32===e||9===e||11===e||12===e||160===e||e>=5760&&" ᠎              \ufeff".indexOf(String.fromCharCode(e))>0}function s(e){return 10===e||13===e||8232===e||8233===e}function l(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||92===e||e>=128&&Zn.NonAsciiIdentifierStart.test(String.fromCharCode(e))}function u(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||92===e||e>=128&&Zn.NonAsciiIdentifierPart.test(String.fromCharCode(e))}function c(e){switch(e){case"class":case"enum":case"export":case"extends":case"import":case"super":return!0;default:return!1}}function p(e){switch(e){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"yield":case"let":return!0;default:return!1}}function f(e){return"eval"===e||"arguments"===e}function d(e){if(ir&&p(e))return!0;switch(e.length){case 2:return"if"===e||"in"===e||"do"===e;case 3:return"var"===e||"for"===e||"new"===e||"try"===e||"let"===e;case 4:return"this"===e||"else"===e||"case"===e||"void"===e||"with"===e||"enum"===e;case 5:return"while"===e||"break"===e||"catch"===e||"throw"===e||"const"===e||"class"===e||"super"===e;case 6:return"return"===e||"typeof"===e||"delete"===e||"switch"===e||"export"===e||"import"===e;case 7:return"default"===e||"finally"===e||"extends"===e;case 8:return"function"===e||"continue"===e||"debugger"===e;case 10:return"instanceof"===e;default:return!1}}function h(e,n,r,i,a){var o;t("number"==typeof r,"Comment must have valid position"),pr.lastCommentStart>=r||(pr.lastCommentStart=r,o={type:e,value:n},fr.range&&(o.range=[r,i]),fr.loc&&(o.loc=a),fr.comments.push(o),fr.attachComment&&(fr.leadingComments.push(o),fr.trailingComments.push(o)))}function m(){var e,t,n,r;for(e=ar-2,t={start:{line:or,column:ar-sr-2}};ar<lr;)if(n=rr.charCodeAt(ar),++ar,s(n))return fr.comments&&(r=rr.slice(e+2,ar-1),t.end={line:or,column:ar-sr-1},h("Line",r,e,ar-1,t)),13===n&&10===rr.charCodeAt(ar)&&++ar,++or,void(sr=ar);fr.comments&&(r=rr.slice(e+2,ar),t.end={line:or,column:ar-sr},h("Line",r,e,ar,t))}function y(){var e,t,n,r;for(fr.comments&&(e=ar-2,t={start:{line:or,column:ar-sr-2}});ar<lr;)if(n=rr.charCodeAt(ar),s(n))13===n&&10===rr.charCodeAt(ar+1)&&++ar,++or,++ar,sr=ar,ar>=lr&&W({},Qn.UnexpectedToken,"ILLEGAL");else if(42===n){if(47===rr.charCodeAt(ar+1))return++ar,++ar,void(fr.comments&&(r=rr.slice(e+2,ar-2),t.end={line:or,column:ar-sr},h("Block",r,e,ar,t)));++ar}else++ar;W({},Qn.UnexpectedToken,"ILLEGAL")}function g(){for(var e;ar<lr;)if(e=rr.charCodeAt(ar),o(e))++ar;else if(s(e))++ar,13===e&&10===rr.charCodeAt(ar)&&++ar,++or,sr=ar;else{if(47!==e)break;if(e=rr.charCodeAt(ar+1),47===e)++ar,++ar,m();else{if(42!==e)break;++ar,++ar,y()}}}function v(e){var t,n,r,a=0;for(n="u"===e?4:2,t=0;t<n;++t){if(!(ar<lr&&i(rr[ar])))return"";r=rr[ar++],a=16*a+"0123456789abcdef".indexOf(r.toLowerCase())}return String.fromCharCode(a)}function b(){var e,t,n,r;for(e=rr[ar],t=0,"}"===e&&W({},Qn.UnexpectedToken,"ILLEGAL");ar<lr&&(e=rr[ar++],i(e));)t=16*t+"0123456789abcdef".indexOf(e.toLowerCase());return(t>1114111||"}"!==e)&&W({},Qn.UnexpectedToken,"ILLEGAL"),t<=65535?String.fromCharCode(t):(n=(t-65536>>10)+55296,r=(t-65536&1023)+56320,String.fromCharCode(n,r))}function E(){var e,t;for(e=rr.charCodeAt(ar++),t=String.fromCharCode(e),92===e&&(117!==rr.charCodeAt(ar)&&W({},Qn.UnexpectedToken,"ILLEGAL"),++ar,e=v("u"),e&&"\\"!==e&&l(e.charCodeAt(0))||W({},Qn.UnexpectedToken,"ILLEGAL"),t=e);ar<lr&&(e=rr.charCodeAt(ar),u(e));)++ar,t+=String.fromCharCode(e),92===e&&(t=t.substr(0,t.length-1),117!==rr.charCodeAt(ar)&&W({},Qn.UnexpectedToken,"ILLEGAL"),++ar,e=v("u"),e&&"\\"!==e&&u(e.charCodeAt(0))||W({},Qn.UnexpectedToken,"ILLEGAL"),t+=e);return t}function S(){var e,t;for(e=ar++;ar<lr;){if(t=rr.charCodeAt(ar),92===t)return ar=e,E();if(!u(t))break;++ar}return rr.slice(e,ar)}function w(){var e,t,n;return e=ar,t=92===rr.charCodeAt(ar)?E():S(),n=1===t.length?$n.Identifier:d(t)?$n.Keyword:"null"===t?$n.NullLiteral:"true"===t||"false"===t?$n.BooleanLiteral:$n.Identifier,{type:n,value:t,lineNumber:or,lineStart:sr,range:[e,ar]}}function x(){var e,t,n,r,i=ar,a=rr.charCodeAt(ar),o=rr[ar];if(pr.inJSXTag||pr.inJSXChild)switch(a){case 60:case 62:return++ar,{type:$n.Punctuator,value:String.fromCharCode(a),lineNumber:or,lineStart:sr,range:[i,ar]}}switch(a){case 40:case 41:case 59:case 44:case 91:case 93:case 58:case 63:case 126:return++ar,fr.tokenize&&40===a&&(fr.openParenToken=fr.tokens.length),{type:$n.Punctuator,value:String.fromCharCode(a),lineNumber:or,lineStart:sr,range:[i,ar]};case 123:case 125:return++ar,fr.tokenize&&123===a&&(fr.openCurlyToken=fr.tokens.length),ar>pr.curlyLastIndex&&(pr.curlyLastIndex=ar,123===a?pr.curlyStack.push("{"):pr.curlyStack.pop()),{type:$n.Punctuator,value:String.fromCharCode(a),lineNumber:or,lineStart:sr,range:[i,ar]};default:if(e=rr.charCodeAt(ar+1),61===e)switch(a){case 37:case 38:case 42:case 43:case 45:case 47:case 60:case 62:case 94:case 124:return ar+=2,{type:$n.Punctuator,value:String.fromCharCode(a)+String.fromCharCode(e),lineNumber:or,lineStart:sr,range:[i,ar]};case 33:case 61:return ar+=2,61===rr.charCodeAt(ar)&&++ar,{type:$n.Punctuator,value:rr.slice(i,ar),lineNumber:or,lineStart:sr,range:[i,ar]}}}return t=rr[ar+1],n=rr[ar+2],r=rr[ar+3],">"===o&&">"===t&&">"===n&&"="===r?(ar+=4,{type:$n.Punctuator,value:">>>=",lineNumber:or,lineStart:sr,range:[i,ar]}):">"!==o||">"!==t||">"!==n||pr.inType?"<"===o&&"<"===t&&"="===n?(ar+=3,{type:$n.Punctuator,value:"<<=",lineNumber:or,lineStart:sr,range:[i,ar]}):">"===o&&">"===t&&"="===n?(ar+=3,{type:$n.Punctuator,value:">>=",lineNumber:or,lineStart:sr,range:[i,ar]}):"."===o&&"."===t&&"."===n?(ar+=3,{type:$n.Punctuator,value:"...",lineNumber:or,lineStart:sr,range:[i,ar]}):o===t&&"+-<>&|".indexOf(o)>=0&&!pr.inType?(ar+=2,{type:$n.Punctuator,value:o+t,lineNumber:or,lineStart:sr,range:[i,ar]}):"="===o&&">"===t?(ar+=2,{type:$n.Punctuator,value:"=>",lineNumber:or,lineStart:sr,range:[i,ar]}):"<>=!+-*%&|^/".indexOf(o)>=0?(++ar,{type:$n.Punctuator,value:o,lineNumber:or,lineStart:sr,range:[i,ar]}):"."===o?(++ar,{type:$n.Punctuator,value:o,lineNumber:or,lineStart:sr,range:[i,ar]}):void W({},Qn.UnexpectedToken,"ILLEGAL"):(ar+=3,{type:$n.Punctuator,value:">>>",lineNumber:or,lineStart:sr,range:[i,ar]})}function k(e){for(var t="";ar<lr&&i(rr[ar]);)t+=rr[ar++];return 0===t.length&&W({},Qn.UnexpectedToken,"ILLEGAL"),l(rr.charCodeAt(ar))&&W({},Qn.UnexpectedToken,"ILLEGAL"),{type:$n.NumericLiteral,value:parseInt("0x"+t,16),lineNumber:or,lineStart:sr,range:[e,ar]}}function T(e){var t,n;for(n="";ar<lr&&(t=rr[ar],"0"===t||"1"===t);)n+=rr[ar++];return 0===n.length&&W({},Qn.UnexpectedToken,"ILLEGAL"),ar<lr&&(t=rr.charCodeAt(ar),(l(t)||r(t))&&W({},Qn.UnexpectedToken,"ILLEGAL")),{type:$n.NumericLiteral,value:parseInt(n,2),lineNumber:or,lineStart:sr,range:[e,ar]}}function A(e,t){var n,i;for(a(e)?(i=!0,n="0"+rr[ar++]):(i=!1,++ar,n="");ar<lr&&a(rr[ar]);)n+=rr[ar++];return i||0!==n.length||W({},Qn.UnexpectedToken,"ILLEGAL"),(l(rr.charCodeAt(ar))||r(rr.charCodeAt(ar)))&&W({},Qn.UnexpectedToken,"ILLEGAL"),{type:$n.NumericLiteral,value:parseInt(n,8),octal:i,lineNumber:or,lineStart:sr,range:[t,ar]}}function L(){var e,n,i;if(i=rr[ar],t(r(i.charCodeAt(0))||"."===i,"Numeric literal must start with a decimal digit or a decimal point"),n=ar,e="","."!==i){if(e=rr[ar++],i=rr[ar],"0"===e){if("x"===i||"X"===i)return++ar,k(n);if("b"===i||"B"===i)return++ar,T(n);if("o"===i||"O"===i||a(i))return A(i,n);i&&r(i.charCodeAt(0))&&W({},Qn.UnexpectedToken,"ILLEGAL")}for(;r(rr.charCodeAt(ar));)e+=rr[ar++];i=rr[ar]}if("."===i){for(e+=rr[ar++];r(rr.charCodeAt(ar));)e+=rr[ar++];i=rr[ar]}if("e"===i||"E"===i)if(e+=rr[ar++],i=rr[ar],"+"!==i&&"-"!==i||(e+=rr[ar++]),r(rr.charCodeAt(ar)))for(;r(rr.charCodeAt(ar));)e+=rr[ar++];else W({},Qn.UnexpectedToken,"ILLEGAL");return l(rr.charCodeAt(ar))&&W({},Qn.UnexpectedToken,"ILLEGAL"),{type:$n.NumericLiteral,value:parseFloat(e),lineNumber:or,lineStart:sr,range:[n,ar]}}function C(){var e,n,r,i,o,l,u="",c=!1;for(e=rr[ar],t("'"===e||'"'===e,"String literal must starts with a quote"),n=ar,++ar;ar<lr;){if(r=rr[ar++],r===e){e="";break}if("\\"===r)if(r=rr[ar++],r&&s(r.charCodeAt(0)))++or,"\r"===r&&"\n"===rr[ar]&&++ar,sr=ar;else switch(r){case"n":u+="\n";break;case"r":u+="\r";break;case"t":u+="\t";break;case"u":case"x":"{"===rr[ar]?(++ar,u+=b()):(l=ar,o=v(r),o?u+=o:(ar=l,u+=r));break;case"b":u+="\b";break;case"f":u+="\f";break;case"v":u+="\v";break;default:a(r)?(i="01234567".indexOf(r),0!==i&&(c=!0),ar<lr&&a(rr[ar])&&(c=!0,i=8*i+"01234567".indexOf(rr[ar++]),"0123".indexOf(r)>=0&&ar<lr&&a(rr[ar])&&(i=8*i+"01234567".indexOf(rr[ar++]))),u+=String.fromCharCode(i)):u+=r}else{if(s(r.charCodeAt(0)))break;u+=r}}return""!==e&&W({},Qn.UnexpectedToken,"ILLEGAL"),{type:$n.StringLiteral,value:u,octal:c,lineNumber:or,lineStart:sr,range:[n,ar]}}function P(){var e,t,n,r,i,o,l,u,c,p="";for(n=!1,i=!1,t=ar,r="`"===rr[ar],++ar;ar<lr;){if(e=rr[ar++],"`"===e){i=!0,n=!0;break}if("$"===e){if("{"===rr[ar]){++ar,n=!0;break}p+=e}else if("\\"===e)if(e=rr[ar++],s(e.charCodeAt(0)))++or,"\r"===e&&"\n"===rr[ar]&&++ar,sr=ar;else switch(e){case"n":p+="\n";break;case"r":p+="\r";break;case"t":p+="\t";break;case"u":case"x":"{"===rr[ar]?(++ar,p+=b()):(o=ar,l=v(e),l?p+=l:(ar=o,p+=e));break;case"b":p+="\b";break;case"f":p+="\f";break;case"v":p+="\v";break;default:a(e)?(u="01234567".indexOf(e),0!==u&&(c=!0),ar<lr&&a(rr[ar])&&(c=!0,u=8*u+"01234567".indexOf(rr[ar++]),"0123".indexOf(e)>=0&&ar<lr&&a(rr[ar])&&(u=8*u+"01234567".indexOf(rr[ar++]))),p+=String.fromCharCode(u)):p+=e}else s(e.charCodeAt(0))?(++or,"\r"===e&&"\n"===rr[ar]&&++ar,sr=ar,p+="\n"):p+=e}return n||W({},Qn.UnexpectedToken,"ILLEGAL"),ar>pr.curlyLastIndex&&(pr.curlyLastIndex=ar,i||pr.curlyStack.push("template"),r||pr.curlyStack.pop()),{type:$n.Template,value:{cooked:p,raw:rr.slice(t+1,ar-(i?1:2))},head:r,tail:i,octal:c,lineNumber:or,lineStart:sr,range:[t,ar]}}function _(e,t){var n,r=e;t.indexOf("u")>=0&&(r=r.replace(/\\u\{([0-9a-fA-F]+)\}/g,function(e,t){return parseInt(t,16)<=1114111?"x":void W({},Qn.InvalidRegExp)}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"));try{n=new RegExp(r)}catch(e){W({},Qn.InvalidRegExp)}try{return new RegExp(e,t)}catch(e){return null}}function I(){var e,n,r,i,a;for(e=rr[ar],t("/"===e,"Regular expression literal must start with a slash"),
n=rr[ar++],r=!1,i=!1;ar<lr;)if(e=rr[ar++],n+=e,"\\"===e)e=rr[ar++],s(e.charCodeAt(0))&&W({},Qn.UnterminatedRegExp),n+=e;else if(s(e.charCodeAt(0)))W({},Qn.UnterminatedRegExp);else if(r)"]"===e&&(r=!1);else{if("/"===e){i=!0;break}"["===e&&(r=!0)}return i||W({},Qn.UnterminatedRegExp),a=n.substr(1,n.length-2),{value:a,literal:n}}function j(){var e,t,n,r;for(t="",n="";ar<lr&&(e=rr[ar],u(e.charCodeAt(0)));)if(++ar,"\\"===e&&ar<lr)if(e=rr[ar],"u"===e){if(++ar,r=ar,e=v("u"))for(n+=e,t+="\\u";r<ar;++r)t+=rr[r];else ar=r,n+="u",t+="\\u";$({},Qn.UnexpectedToken,"ILLEGAL")}else t+="\\",$({},Qn.UnexpectedToken,"ILLEGAL");else n+=e,t+=e;return{value:n,literal:t}}function O(){var e,t,n,r;return cr=null,g(),e=ar,t=I(),n=j(),r=_(t.value,n.value),fr.tokenize?{type:$n.RegularExpression,value:r,regex:{pattern:t.value,flags:n.value},lineNumber:or,lineStart:sr,range:[e,ar]}:{literal:t.literal+n.literal,value:r,regex:{pattern:t.value,flags:n.value},range:[e,ar]}}function M(e){return e.type===$n.Identifier||e.type===$n.Keyword||e.type===$n.BooleanLiteral||e.type===$n.NullLiteral}function N(){var e,t;if(e=fr.tokens[fr.tokens.length-1],!e)return O();if("Punctuator"===e.type){if(")"===e.value)return t=fr.tokens[fr.openParenToken-1],!t||"Keyword"!==t.type||"if"!==t.value&&"while"!==t.value&&"for"!==t.value&&"with"!==t.value?x():O();if("}"===e.value){if(fr.tokens[fr.openCurlyToken-3]&&"Keyword"===fr.tokens[fr.openCurlyToken-3].type){if(t=fr.tokens[fr.openCurlyToken-4],!t)return x()}else{if(!fr.tokens[fr.openCurlyToken-4]||"Keyword"!==fr.tokens[fr.openCurlyToken-4].type)return x();if(t=fr.tokens[fr.openCurlyToken-5],!t)return O()}return Gn.indexOf(t.value)>=0?x():O()}return O()}return"Keyword"===e.type&&"this"!==e.value?O():x()}function D(){var e;return pr.inJSXChild||g(),ar>=lr?{type:$n.EOF,lineNumber:or,lineStart:sr,range:[ar,ar]}:pr.inJSXChild?yn():(e=rr.charCodeAt(ar),40===e||41===e||58===e?x():39===e||34===e?pr.inJSXTag?mn():C():pr.inJSXTag&&cn(e)?fn():96===e||125===e&&"template"===pr.curlyStack[pr.curlyStack.length-1]?P():l(e)?w():46===e?r(rr.charCodeAt(ar+1))?L():x():r(e)?L():fr.tokenize&&47===e?N():x())}function R(){var e;return e=cr,ar=e.range[1],or=e.lineNumber,sr=e.lineStart,cr=D(),ar=e.range[1],or=e.lineNumber,sr=e.lineStart,e}function B(){var e,t,n;e=ar,t=or,n=sr,cr=D(),ar=e,or=t,sr=n}function F(){var e,t,n,r,i;return e="function"==typeof fr.advance?fr.advance:D,t=ar,n=or,r=sr,null===cr&&(cr=e()),ar=cr.range[1],or=cr.lineNumber,sr=cr.lineStart,i=e(),ar=t,or=n,sr=r,i}function X(e){ar=e.range[0],or=e.lineNumber,sr=e.lineStart,cr=e}function U(){if(fr.loc||fr.range)return g(),{offset:ar,line:or,col:ar-sr}}function J(){if(fr.loc||fr.range)return{offset:ar,line:or,col:ar-sr}}function q(e){var t,n,r=fr.bottomRightStack,i=r[r.length-1];if(!(e.type===Yn.Program&&e.body.length>0)){if(fr.trailingComments.length>0?fr.trailingComments[0].range[0]>=e.range[1]?(n=fr.trailingComments,fr.trailingComments=[]):fr.trailingComments.length=0:i&&i.trailingComments&&i.trailingComments[0].range[0]>=e.range[1]&&(n=i.trailingComments,delete i.trailingComments),i)for(;i&&i.range[0]>=e.range[0];)t=i,i=r.pop();t?t.leadingComments&&t.leadingComments[t.leadingComments.length-1].range[1]<=e.range[0]&&(e.leadingComments=t.leadingComments,delete t.leadingComments):fr.leadingComments.length>0&&fr.leadingComments[fr.leadingComments.length-1].range[1]<=e.range[0]&&(e.leadingComments=fr.leadingComments,fr.leadingComments=[]),n&&(e.trailingComments=n),r.push(e)}}function V(e,t){return fr.range&&(t.range=[e.offset,ar]),fr.loc&&(t.loc={start:{line:e.line,column:e.col},end:{line:or,column:ar-sr}},t=ur.postProcess(t)),fr.attachComment&&q(t),t}function z(){var e,t,n,r;return e=ar,t=or,n=sr,g(),r=or!==t,ar=e,or=t,sr=n,r}function W(e,n){var r,i=Array.prototype.slice.call(arguments,2),a=n.replace(/%(\d)/g,function(e,n){return t(n<i.length,"Message reference must be in range"),i[n]});throw"number"==typeof e.lineNumber?(r=new Error("Line "+e.lineNumber+": "+a),r.index=e.range[0],r.lineNumber=e.lineNumber,r.column=e.range[0]-sr+1):(r=new Error("Line "+or+": "+a),r.index=ar,r.lineNumber=or,r.column=ar-sr+1),r.description=a,r}function $(){try{W.apply(null,arguments)}catch(e){if(!fr.errors)throw e;fr.errors.push(e)}}function H(e){if(e.type===$n.EOF&&W(e,Qn.UnexpectedEOS),e.type===$n.NumericLiteral&&W(e,Qn.UnexpectedNumber),e.type!==$n.StringLiteral&&e.type!==$n.JSXText||W(e,Qn.UnexpectedString),e.type===$n.Identifier&&W(e,Qn.UnexpectedIdentifier),e.type===$n.Keyword){if(c(e.value))W(e,Qn.UnexpectedReserved);else if(ir&&p(e.value))return void $(e,Qn.StrictReservedWord);W(e,Qn.UnexpectedToken,e.value)}e.type===$n.Template&&W(e,Qn.UnexpectedTemplate,e.value.raw),W(e,Qn.UnexpectedToken,e.value)}function G(e){var t=R();t.type===$n.Punctuator&&t.value===e||H(t)}function Y(e,t){var n=R();n.type===(t?$n.Identifier:$n.Keyword)&&n.value===e||H(n)}function K(e){return Y(e,!0)}function Q(e){return cr.type===$n.Punctuator&&cr.value===e}function Z(e,t){var n=t?$n.Identifier:$n.Keyword;return cr.type===n&&cr.value===e}function ee(e){return Z(e,!0)}function te(){var e;return cr.type===$n.Punctuator&&(e=cr.value,"="===e||"*="===e||"/="===e||"%="===e||"+="===e||"-="===e||"<<="===e||">>="===e||">>>="===e||"&="===e||"^="===e||"|="===e)}function ne(){return pr.yieldAllowed&&Z("yield",!ir)}function re(){var e=cr,t=!1;return ee("async")&&(R(),t=!z(),X(e)),t}function ie(){return pr.awaitAllowed&&ee("await")}function ae(){var e,t=ar,n=or,r=sr,i=cr;return 59===rr.charCodeAt(ar)?void R():(e=or,g(),or!==e?(ar=t,or=n,sr=r,void(cr=i)):Q(";")?void R():void(cr.type===$n.EOF||Q("}")||H(cr)))}function oe(e){return e.type===Yn.Identifier||e.type===Yn.MemberExpression}function se(e){return oe(e)||e.type===Yn.ObjectPattern||e.type===Yn.ArrayPattern}function le(){var e,t=[],n=[],r=null,i=!0,a=U();for(G("[");!Q("]");)"for"===cr.value&&cr.type===$n.Keyword?(i||W({},Qn.ComprehensionError),Z("for"),e=Pt({ignoreBody:!0}),e.of=e.type===Yn.ForOfStatement,e.type=Yn.ComprehensionBlock,e.left.kind&&W({},Qn.ComprehensionError),n.push(e)):"if"===cr.value&&cr.type===$n.Keyword?(i||W({},Qn.ComprehensionError),Y("if"),G("("),r=Fe(),G(")")):","===cr.value&&cr.type===$n.Punctuator?(i=!1,R(),t.push(null)):(e=we(),t.push(e),e&&e.type===Yn.SpreadElement?Q("]")||W({},Qn.ElementAfterSpreadElement):Q("]")||Z("for")||Z("if")||(G(","),i=!1));return G("]"),r&&!n.length&&W({},Qn.ComprehensionRequiresBlock),n.length?(1!==t.length&&W({},Qn.ComprehensionError),V(a,ur.createComprehensionExpression(r,n,t[0]))):V(a,ur.createArrayExpression(t))}function ue(e){var t,n,r,i,a,o,s=U();return t=ir,n=pr.yieldAllowed,pr.yieldAllowed=e.generator,r=pr.awaitAllowed,pr.awaitAllowed=e.async,i=e.params||[],a=e.defaults||[],o=Ut(),e.name&&ir&&f(i[0].name)&&$(e.name,Qn.StrictParamName),ir=t,pr.yieldAllowed=n,pr.awaitAllowed=r,V(s,ur.createFunctionExpression(null,i,a,o,e.rest||null,e.generator,o.type!==Yn.BlockStatement,e.async,e.returnType,e.typeParameters))}function ce(e){var t,n,r;return t=ir,ir=!0,n=zt(),n.stricted&&$(n.stricted,n.message),r=ue({params:n.params,defaults:n.defaults,rest:n.rest,generator:e.generator,async:e.async,returnType:n.returnType,typeParameters:e.typeParameters}),ir=t,r}function pe(){var e,t,n=U(),r=R();return r.type===$n.StringLiteral||r.type===$n.NumericLiteral?(ir&&r.octal&&$(r,Qn.StrictOctalLiteral),V(n,ur.createLiteral(r))):r.type===$n.Punctuator&&"["===r.value?(n=U(),e=Be(),t=V(n,e),G("]"),t):V(n,ur.createIdentifier(r.value))}function fe(){var e,t,n,r,i,a,o,s=U();return e=cr,i="["===e.value&&e.type===$n.Punctuator,e.type===$n.Identifier||i||re()?(n=pe(),Q(":")?(R(),V(s,ur.createProperty("init",n,Be(),!1,!1,i))):Q("(")||Q("<")?(Q("<")&&(o=Je()),V(s,ur.createProperty("init",n,ce({generator:!1,async:!1,typeParameters:o}),!0,!1,i))):"get"===e.value?(i="["===cr.value,t=pe(),G("("),G(")"),Q(":")&&(a=st()),V(s,ur.createProperty("get",t,ue({generator:!1,async:!1,returnType:a}),!1,!1,i))):"set"===e.value?(i="["===cr.value,t=pe(),G("("),e=cr,r=[ut()],G(")"),Q(":")&&(a=st()),V(s,ur.createProperty("set",t,ue({params:r,generator:!1,async:!1,name:e,returnType:a}),!1,!1,i))):"async"===e.value?(i="["===cr.value,t=pe(),Q("<")&&(o=Je()),V(s,ur.createProperty("init",t,ce({generator:!1,async:!0,typeParameters:o}),!0,!1,i))):(i&&H(cr),V(s,ur.createProperty("init",n,n,!1,!0,!1)))):e.type===$n.EOF||e.type===$n.Punctuator?(Q("*")||H(e),R(),i=cr.type===$n.Punctuator&&"["===cr.value,n=pe(),Q("<")&&(o=Je()),Q("(")||H(R()),V(s,ur.createProperty("init",n,ce({generator:!0,typeParameters:o}),!0,!1,i))):(t=pe(),Q(":")?(R(),V(s,ur.createProperty("init",t,Be(),!1,!1,!1))):Q("(")||Q("<")?(Q("<")&&(o=Je()),V(s,ur.createProperty("init",t,ce({generator:!1,typeParameters:o}),!0,!1,!1))):void H(R()))}function de(){var e=U();return G("..."),V(e,ur.createSpreadProperty(Be()))}function he(e){var t=String;return e.type===Yn.Identifier?e.name:t(e.value)}function me(){var e,t,r,i,a=[],o=new n,s=U(),l=String;for(G("{");!Q("}");)Q("...")?e=de():(e=fe(),t=e.key.type===Yn.Identifier?e.key.name:l(e.key.value),r="init"===e.kind?Kn.Data:"get"===e.kind?Kn.Get:Kn.Set,o.has(t)?(i=o.get(t),i===Kn.Data?ir&&r===Kn.Data?$({},Qn.StrictDuplicateProperty):r!==Kn.Data&&$({},Qn.AccessorDataProperty):r===Kn.Data?$({},Qn.AccessorDataProperty):i&r&&$({},Qn.AccessorGetSet),o.set(t,i|r)):o.set(t,r)),a.push(e),Q("}")||G(",");return G("}"),V(s,ur.createObjectExpression(a))}function ye(e){var t,n;return(cr.type!==$n.Template||e.head&&!cr.head)&&W({},Qn.UnexpectedToken,"ILLEGAL"),t=U(),n=R(),ir&&n.octal&&W(n,Qn.StrictOctalLiteral),V(t,ur.createTemplateElement({raw:n.value.raw,cooked:n.value.cooked},n.tail))}function ge(){var e,t,n,r=U();for(e=ye({head:!0}),t=[e],n=[];!e.tail;)n.push(Fe()),e=ye({head:!1}),t.push(e);return V(r,ur.createTemplateLiteral(t,n))}function ve(){var e,t,n;return G("("),++pr.parenthesizedCount,t=U(),e=Fe(),Q(":")&&(n=st(),e=V(t,ur.createTypeCast(e,n))),G(")"),e}function be(){var e;return!(!re()||(e=F(),e.type!==$n.Keyword||"function"!==e.value))}function Ee(){var e,t,n,r;if(t=cr.type,t===$n.Identifier)return e=U(),V(e,ur.createIdentifier(R().value));if(t===$n.StringLiteral||t===$n.NumericLiteral)return ir&&cr.octal&&$(cr,Qn.StrictOctalLiteral),e=U(),V(e,ur.createLiteral(R()));if(t===$n.Keyword){if(Z("this"))return e=U(),R(),V(e,ur.createThisExpression());if(Z("function"))return $t();if(Z("class"))return nn();if(Z("super"))return e=U(),R(),V(e,ur.createIdentifier("super"))}return t===$n.BooleanLiteral?(e=U(),n=R(),n.value="true"===n.value,V(e,ur.createLiteral(n))):t===$n.NullLiteral?(e=U(),n=R(),n.value=null,V(e,ur.createLiteral(n))):Q("[")?le():Q("{")?me():Q("(")?ve():Q("/")||Q("/=")?(e=U(),r=ur.createLiteral(O()),B(),V(e,r)):t===$n.Template?ge():Q("<")?_n():void H(R())}function Se(){var e,t=[];if(G("("),!Q(")"))for(;ar<lr;){if(e=we(),t.push(e),e.type===Yn.SpreadElement){if(Q(")"))break;W({},Qn.ElementAfterSpreadElement)}if(Q(")"))break;if(G(","),Q(")"))break}return G(")"),t}function we(){if(Q("...")){var e=U();return R(),V(e,ur.createSpreadElement(Be()))}return Be()}function xe(){var e=U(),t=R();return M(t)||H(t),V(e,ur.createIdentifier(t.value))}function ke(){return G("."),xe()}function Te(){var e;return G("["),e=Fe(),G("]"),e}function Ae(){var e,t,n=U();return Y("new"),e=Ce(),t=Q("(")?Se():[],V(n,ur.createNewExpression(e,t))}function Le(){var e,t,n=U();for(e=Z("new")?Ae():Ee();Q(".")||Q("[")||Q("(")||cr.type===$n.Template&&cr.head;)Q("(")?(t=Se(),e=V(n,ur.createCallExpression(e,t))):e=Q("[")?V(n,ur.createMemberExpression("[",e,Te())):Q(".")?V(n,ur.createMemberExpression(".",e,ke())):V(n,ur.createTaggedTemplateExpression(e,ge()));return e}function Ce(){var e,t=U();for(e=Z("new")?Ae():Ee();Q(".")||Q("[")||cr.type===$n.Template&&cr.head;)e=Q("[")?V(t,ur.createMemberExpression("[",e,Te())):Q(".")?V(t,ur.createMemberExpression(".",e,ke())):V(t,ur.createTaggedTemplateExpression(e,ge()));return e}function Pe(){var e,t=U(),n=Le();return cr.type!==$n.Punctuator?n:(!Q("++")&&!Q("--")||z()||(ir&&n.type===Yn.Identifier&&f(n.name)&&$({},Qn.StrictLHSPostfix),oe(n)||W({},Qn.InvalidLHSInAssignment),e=R(),n=V(t,ur.createPostfixExpression(e.value,n))),n)}function _e(){var e,t,n;return cr.type!==$n.Punctuator&&cr.type!==$n.Keyword?Pe():Q("++")||Q("--")?(e=U(),t=R(),n=_e(),ir&&n.type===Yn.Identifier&&f(n.name)&&$({},Qn.StrictLHSPrefix),oe(n)||W({},Qn.InvalidLHSInAssignment),V(e,ur.createUnaryExpression(t.value,n))):Q("+")||Q("-")||Q("~")||Q("!")?(e=U(),t=R(),n=_e(),V(e,ur.createUnaryExpression(t.value,n))):Z("delete")||Z("void")||Z("typeof")?(e=U(),t=R(),n=_e(),n=V(e,ur.createUnaryExpression(t.value,n)),ir&&"delete"===n.operator&&n.argument.type===Yn.Identifier&&$({},Qn.StrictDelete),n):Pe()}function Ie(e,t){var n=0;if(e.type!==$n.Punctuator&&e.type!==$n.Keyword)return 0;switch(e.value){case"||":n=1;break;case"&&":n=2;break;case"|":n=3;break;case"^":n=4;break;case"&":n=5;break;case"==":case"!=":case"===":case"!==":n=6;break;case"<":case">":case"<=":case">=":case"instanceof":n=7;break;case"in":n=t?7:0;break;case"<<":case">>":case">>>":n=8;break;case"+":case"-":n=9;break;case"*":case"/":case"%":n=11}return n}function je(){var e,t,n,r,i,a,o,s,l,u,c;if(r=pr.allowIn,pr.allowIn=!0,u=U(),s=_e(),t=cr,n=Ie(t,r),0===n)return s;for(t.prec=n,R(),c=[u,U()],a=_e(),i=[s,t,a];(n=Ie(cr,r))>0;){for(;i.length>2&&n<=i[i.length-2].prec;)a=i.pop(),o=i.pop().value,s=i.pop(),e=ur.createBinaryExpression(o,s,a),c.pop(),u=c.pop(),V(u,e),i.push(e),c.push(u);t=R(),t.prec=n,i.push(t),c.push(U()),e=_e(),i.push(e)}for(pr.allowIn=r,l=i.length-1,e=i[l],c.pop();l>1;)e=ur.createBinaryExpression(i[l-1].value,i[l-2],e),l-=2,u=c.pop(),V(u,e);return e}function Oe(){var e,t,n,r,i=U();return e=je(),Q("?")&&(R(),t=pr.allowIn,pr.allowIn=!0,n=Be(),pr.allowIn=t,G(":"),r=Be(),e=V(i,ur.createConditionalExpression(e,n,r))),e}function Me(e){var t,n,r,i;if(e.type===Yn.ObjectExpression)for(e.type=Yn.ObjectPattern,t=0,n=e.properties.length;t<n;t+=1)r=e.properties[t],r.type===Yn.SpreadProperty?(t<n-1&&W({},Qn.PropertyAfterSpreadProperty),Me(r.argument)):("init"!==r.kind&&W({},Qn.InvalidLHSInAssignment),Me(r.value));else if(e.type===Yn.ArrayExpression)for(e.type=Yn.ArrayPattern,t=0,n=e.elements.length;t<n;t+=1)i=e.elements[t],i&&Me(i);else e.type===Yn.Identifier?f(e.name)&&W({},Qn.InvalidLHSInAssignment):e.type===Yn.SpreadElement?(Me(e.argument),e.argument.type===Yn.ObjectPattern&&W({},Qn.ObjectPatternAsSpread)):e.type!==Yn.MemberExpression&&e.type!==Yn.CallExpression&&e.type!==Yn.NewExpression&&W({},Qn.InvalidLHSInAssignment)}function Ne(e,t){var n,r,i,a;if(t.type===Yn.ObjectExpression)for(t.type=Yn.ObjectPattern,n=0,r=t.properties.length;n<r;n+=1)i=t.properties[n],i.type===Yn.SpreadProperty?(n<r-1&&W({},Qn.PropertyAfterSpreadProperty),Ne(e,i.argument)):("init"!==i.kind&&W({},Qn.InvalidLHSInFormalsList),Ne(e,i.value));else if(t.type===Yn.ArrayExpression)for(t.type=Yn.ArrayPattern,n=0,r=t.elements.length;n<r;n+=1)a=t.elements[n],a&&Ne(e,a);else t.type===Yn.Identifier?qt(e,t,t.name):t.type===Yn.SpreadElement?(t.argument.type!==Yn.Identifier&&W({},Qn.InvalidLHSInFormalsList),qt(e,t.argument,t.argument.name)):W({},Qn.InvalidLHSInFormalsList)}function De(e){var r,i,a,o,s,l,u,c;for(o=[],s=[],l=0,c=null,u={paramSet:new n},r=0,i=e.length;r<i;r+=1)if(a=e[r],a.type===Yn.Identifier)o.push(a),s.push(null),qt(u,a,a.name);else if(a.type===Yn.ObjectExpression||a.type===Yn.ArrayExpression)Ne(u,a),o.push(a),s.push(null);else if(a.type===Yn.SpreadElement)t(r===i-1,"It is guaranteed that SpreadElement is last element by parseExpression"),a.argument.type!==Yn.Identifier&&W({},Qn.InvalidLHSInFormalsList),Ne(u,a.argument),c=a.argument;else{if(a.type!==Yn.AssignmentExpression)return null;o.push(a.left),s.push(a.right),++l,qt(u,a.left,a.left.name)}return u.message===Qn.StrictParamDupe&&W(ir?u.stricted:u.firstRestricted,u.message),0===l&&(s=[]),{params:o,defaults:s,rest:c,stricted:u.stricted,firstRestricted:u.firstRestricted,message:u.message}}function Re(e,t){var n,r,i,a;return G("=>"),n=ir,r=pr.yieldAllowed,pr.yieldAllowed=!1,i=pr.awaitAllowed,pr.awaitAllowed=!!e.async,a=Ut(),ir&&e.firstRestricted&&W(e.firstRestricted,e.message),ir&&e.stricted&&$(e.stricted,e.message),ir=n,pr.yieldAllowed=r,pr.awaitAllowed=i,V(t,ur.createArrowFunctionExpression(e.params,e.defaults,a,e.rest,a.type!==Yn.BlockStatement,!!e.async))}function Be(){var e,t,n,r,i,a=!1,o=cr,s=!1;if(ne())return Ht();if(ie())return Gt();if(i=pr.parenthesizedCount,e=U(),be())return $t();if(re()&&(s=!0,R()),Q("(")){if(n=F(),n.type===$n.Punctuator&&")"===n.value||"..."===n.value)return r=zt(),Q("=>")||H(R()),r.async=s,Re(r,e);a=!0}return n=cr,s&&!Q("(")&&n.type!==$n.Identifier&&(s=!1,X(o)),t=Oe(),Q("=>")&&(pr.parenthesizedCount===i||pr.parenthesizedCount===i+1)&&(t.type===Yn.Identifier?r=De([t]):t.type===Yn.AssignmentExpression||t.type===Yn.ArrayExpression||t.type===Yn.ObjectExpression?(a||H(R()),r=De([t])):t.type===Yn.SequenceExpression&&(r=De(t.expressions)),r)?(r.async=s,Re(r,e)):(s&&(s=!1,X(o),t=Oe()),te()&&(ir&&t.type===Yn.Identifier&&f(t.name)&&$(n,Qn.StrictLHSAssignment),!Q("=")||t.type!==Yn.ObjectExpression&&t.type!==Yn.ArrayExpression?oe(t)||W({},Qn.InvalidLHSInAssignment):Me(t),t=V(e,ur.createAssignmentExpression(R().value,t,Be()))),t)}function Fe(){var e,t,n,r,i,a;if(e=U(),t=Be(),n=[t],Q(",")){for(;ar<lr&&Q(",")&&(R(),!Q(")")||(a=F(),a.type!==$n.Punctuator||"=>"!==a.value));)if(t=we(),n.push(t),t.type===Yn.SpreadElement){i=!0,Q(")")||W({},Qn.ElementAfterSpreadElement);break}n.length>1&&(r=V(e,ur.createSequenceExpression(n)))}return i&&"=>"!==F().value&&W({},Qn.IllegalSpread),r||t}function Xe(){for(var e,t=[];ar<lr&&!Q("}")&&(e=an(),"undefined"!=typeof e);)t.push(e);return t}function Ue(){var e,t=U();return G("{"),e=Xe(),G("}"),V(t,ur.createBlockStatement(e))}function Je(){var e=U(),t=[];for(G("<");!Q(">");)t.push(ut()),Q(">")||G(",");return G(">"),V(e,ur.createTypeParameterDeclaration(t))}function qe(){var e=U(),t=pr.inType,n=[];for(pr.inType=!0,G("<");!Q(">");)n.push(ot()),Q(">")||G(",");return G(">"),pr.inType=t,V(e,ur.createTypeParameterInstantiation(n))}function Ve(e,t){var n,r,i;return G("["),n=pe(),G(":"),r=ot(),G("]"),G(":"),i=ot(),V(e,ur.createObjectTypeIndexer(n,r,i,t))}function ze(e){var t,n=[],r=null,i=null;for(Q("<")&&(i=Je()),G("(");cr.type===$n.Identifier;)n.push(Ze()),Q(")")||G(",");return Q("...")&&(R(),r=Ze()),G(")"),G(":"),t=ot(),V(e,ur.createFunctionTypeAnnotation(n,t,r,i))}function We(e,t,n){var r,i=!1;return r=ze(e),V(e,ur.createObjectTypeProperty(n,r,i,t))}function $e(e,t){var n=U();return V(e,ur.createObjectTypeCallProperty(ze(n),t))}function He(e){var t,n,r,i,a,o,s=[],l=[],u=!1,c=[];for(G("{");!Q("}");)t=U(),o=ir?Z("static"):ee("static"),e&&o&&(i=R(),a=!0),Q("[")?l.push(Ve(t,a)):Q("(")||Q("<")?s.push($e(t,e)):(a&&Q(":")?(n=V(t,ur.createIdentifier(i)),$(i,Qn.StrictReservedWord)):n=pe(),Q("<")||Q("(")?c.push(We(t,a,n)):(Q("?")&&(R(),u=!0),G(":"),r=ot(),c.push(V(t,ur.createObjectTypeProperty(n,r,u,a))))),Q(";")||Q(",")?R():Q("}")||H(cr);return G("}"),ur.createObjectTypeAnnotation(c,l,s)}function Ge(){var e,t=U(),n=null;for(e=lt();Q(".");)G("."),e=V(t,ur.createQualifiedTypeIdentifier(e,lt()));return Q("<")&&(n=qe()),V(t,ur.createGenericTypeAnnotation(e,n))}function Ye(){var e=U();return Y("void"),V(e,ur.createVoidTypeAnnotation())}function Ke(){var e,t=U();return Y("typeof"),e=tt(),V(t,ur.createTypeofTypeAnnotation(e))}function Qe(){var e=U(),t=[];for(G("[");ar<lr&&!Q("]")&&(t.push(ot()),!Q("]"));)G(",");return G("]"),V(e,ur.createTupleTypeAnnotation(t))}function Ze(){var e,t,n=U(),r=!1;return e=lt(),Q("?")&&(R(),r=!0),G(":"),t=ot(),V(n,ur.createFunctionTypeParam(e,t,r))}function et(){for(var e={params:[],rest:null};cr.type===$n.Identifier;)e.params.push(Ze()),Q(")")||G(",");return Q("...")&&(R(),e.rest=Ze()),e}function tt(){var e,t,n,r,i=null,a=null,o=U(),s=null,l=!1;switch(cr.type){case $n.Identifier:switch(cr.value){case"any":return R(),V(o,ur.createAnyTypeAnnotation());case"bool":case"boolean":return R(),V(o,ur.createBooleanTypeAnnotation());case"number":return R(),V(o,ur.createNumberTypeAnnotation());case"string":return R(),V(o,ur.createStringTypeAnnotation())}return V(o,Ge());case $n.Punctuator:switch(cr.value){case"{":return V(o,He());case"[":return Qe();case"<":return t=Je(),G("("),e=et(),i=e.params,s=e.rest,G(")"),G("=>"),a=ot(),V(o,ur.createFunctionTypeAnnotation(i,a,s,t));case"(":return R(),Q(")")||Q("...")||(cr.type===$n.Identifier?(n=F(),l="?"!==n.value&&":"!==n.value):l=!0),l?(r=ot(),G(")"),Q("=>")&&W({},Qn.ConfusedAboutFunctionType),r):(e=et(),i=e.params,s=e.rest,G(")"),G("=>"),a=ot(),V(o,ur.createFunctionTypeAnnotation(i,a,s,null)))}break;case $n.Keyword:switch(cr.value){case"void":return V(o,Ye());case"typeof":return V(o,Ke())}break;case $n.StringLiteral:return n=R(),n.octal&&W(n,Qn.StrictOctalLiteral),V(o,ur.createStringLiteralTypeAnnotation(n))}H(cr)}function nt(){var e=U(),t=tt();return Q("[")?(G("["),G("]"),V(e,ur.createArrayTypeAnnotation(t))):t}function rt(){var e=U();return Q("?")?(R(),V(e,ur.createNullableTypeAnnotation(rt()))):nt()}function it(){var e,t,n=U();for(e=rt(),t=[e];Q("&");)R(),t.push(rt());return 1===t.length?e:V(n,ur.createIntersectionTypeAnnotation(t))}function at(){var e,t,n=U();for(e=it(),t=[e];Q("|");)R(),t.push(it());return 1===t.length?e:V(n,ur.createUnionTypeAnnotation(t))}function ot(){var e,t=pr.inType;return pr.inType=!0,e=at(),pr.inType=t,e}function st(){var e,t=U();return G(":"),e=ot(),V(t,ur.createTypeAnnotation(e))}function lt(){var e=U(),t=R();return t.type!==$n.Identifier&&H(t),V(e,ur.createIdentifier(t.value))}function ut(e,t){var n=U(),r=lt(),i=!1;return t&&Q("?")&&(G("?"),i=!0),(e||Q(":"))&&(r.typeAnnotation=st(),r=V(n,r)),i&&(r.optional=!0,r=V(n,r)),r}function ct(e){var t,n=U(),r=null,i=U();return Q("{")?(t=me(),Me(t),Q(":")&&(t.typeAnnotation=st(),V(i,t))):Q("[")?(t=le(),Me(t),Q(":")&&(t.typeAnnotation=st(),V(i,t))):(t=pr.allowKeyword?xe():ut(),ir&&f(t.name)&&$({},Qn.StrictVarName)),"const"===e?(Q("=")||W({},Qn.NoUninitializedConst),G("="),r=Be()):Q("=")&&(R(),r=Be()),V(n,ur.createVariableDeclarator(t,r))}function pt(e){var t=[];do{if(t.push(ct(e)),!Q(","))break;R()}while(ar<lr);return t}function ft(){var e,t=U();return Y("var"),e=pt(),ae(),V(t,ur.createVariableDeclaration(e,"var"))}function dt(e){var t,n=U();return Y(e),t=pt(e),ae(),V(n,ur.createVariableDeclaration(t,e))}function ht(){var e,t=U();return cr.type!==$n.StringLiteral&&W({},Qn.InvalidModuleSpecifier),e=ur.createLiteral(R()),V(t,e)}function mt(){var e=U();return G("*"),V(e,ur.createExportBatchSpecifier())}function yt(){var e,t=null,n=U();return Z("default")?(R(),e=V(n,ur.createIdentifier("default"))):e=lt(),ee("as")&&(R(),t=xe()),V(n,ur.createExportSpecifier(e,t))}function gt(){var e,t,n,r,i=null,a=null,o=[],s=U(),l="value";if(Y("export"),Z("default")){if(R(),Z("function")||Z("class")){if(e=F(),M(e))return t=an(),V(s,ur.createExportDeclaration(!0,t,[t.id],null,l));switch(cr.value){case"class":return V(s,ur.createExportDeclaration(!0,nn(),[],null,l));case"function":return V(s,ur.createExportDeclaration(!0,$t(),[],null,l))}}return ee("from")&&W({},Qn.UnexpectedToken,cr.value),i=Q("{")?me():Q("[")?le():Be(),ae(),V(s,ur.createExportDeclaration(!0,i,[],null,l))}if(cr.type===$n.Keyword||ee("type"))switch(cr.value){case"type":if(l="type",r=F(),r.type===$n.Punctuator&&"{"===r.value){R();break}case"let":case"const":case"var":case"class":case"function":return V(s,ur.createExportDeclaration(!1,an(),o,null,l))}if(Q("*"))return o.push(mt()),ee("from")||W({},cr.value?Qn.UnexpectedToken:Qn.MissingFromClause,cr.value),R(),a=ht(),ae(),V(s,ur.createExportDeclaration(!1,null,o,a,l));if(G("{"),!Q("}"))do n=n||Z("default"),o.push(yt());while(Q(",")&&R());return G("}"),ee("from")?(R(),a=ht(),ae()):n?W({},cr.value?Qn.UnexpectedToken:Qn.MissingFromClause,cr.value):ae(),V(s,ur.createExportDeclaration(!1,i,o,a,l))}function vt(){var e,t=null,n=U();return e=xe(),ee("as")&&(R(),t=lt()),V(n,ur.createImportSpecifier(e,t))}function bt(){var e=[];if(G("{"),!Q("}"))do e.push(vt());while(Q(",")&&R());return G("}"),e}function Et(){var e,t=U();return e=xe(),V(t,ur.createImportDefaultSpecifier(e))}function St(){var e,t=U();return G("*"),ee("as")||W({},Qn.NoAsAfterImportNamespace),R(),e=xe(),V(t,ur.createImportNamespaceSpecifier(e))}function wt(){var e,t,n,r=U(),i="value";return Y("import"),ee("type")?(n=F(),(n.type===$n.Identifier&&"from"!==n.value||n.type===$n.Punctuator&&("{"===n.value||"*"===n.value))&&(i="type",R())):Z("typeof")&&(i="typeof",R()),e=[],cr.type===$n.StringLiteral?(t=ht(),ae(),V(r,ur.createImportDeclaration(e,t,i))):(!Z("default")&&M(cr)&&(e.push(Et()),Q(",")&&R()),Q("*")?e.push(St()):Q("{")&&(e=e.concat(bt())),ee("from")||W({},cr.value?Qn.UnexpectedToken:Qn.MissingFromClause,cr.value),R(),t=ht(),ae(),V(r,ur.createImportDeclaration(e,t,i)))}function xt(){var e=U();return G(";"),V(e,ur.createEmptyStatement())}function kt(){var e=U(),t=Fe();return ae(),V(e,ur.createExpressionStatement(t))}function Tt(){var e,t,n,r=U();return Y("if"),G("("),e=Fe(),G(")"),t=Xt(),Z("else")?(R(),n=Xt()):n=null,V(r,ur.createIfStatement(e,t,n))}function At(){var e,t,n,r=U();return Y("do"),n=pr.inIteration,pr.inIteration=!0,e=Xt(),pr.inIteration=n,Y("while"),G("("),t=Fe(),G(")"),Q(";")&&R(),V(r,ur.createDoWhileStatement(e,t))}function Lt(){var e,t,n,r=U();return Y("while"),G("("),e=Fe(),G(")"),n=pr.inIteration,pr.inIteration=!0,t=Xt(),pr.inIteration=n,V(r,ur.createWhileStatement(e,t))}function Ct(){var e=U(),t=R(),n=pt();return V(e,ur.createVariableDeclaration(n,t.value))}function Pt(e){var t,n,r,i,a,o,s,l,u=U();return t=n=r=null,Y("for"),ee("each")&&W({},Qn.EachNotAllowed),G("("),Q(";")?R():(Z("var")||Z("let")||Z("const")?(pr.allowIn=!1,t=Ct(),pr.allowIn=!0,1===t.declarations.length&&(Z("in")||ee("of"))&&(s=cr,("in"!==s.value&&"var"===t.kind||!t.declarations[0].init)&&(R(),i=t,a=Fe(),t=null))):(pr.allowIn=!1,t=Fe(),pr.allowIn=!0,ee("of")?(s=R(),i=t,a=Fe(),t=null):Z("in")&&(se(t)||W({},Qn.InvalidLHSInForIn),s=R(),i=t,a=Fe(),t=null)),"undefined"==typeof i&&G(";")),"undefined"==typeof i&&(Q(";")||(n=Fe()),G(";"),Q(")")||(r=Fe())),G(")"),l=pr.inIteration,pr.inIteration=!0,void 0!==e&&e.ignoreBody||(o=Xt()),pr.inIteration=l,"undefined"==typeof i?V(u,ur.createForStatement(t,n,r,o)):"in"===s.value?V(u,ur.createForInStatement(i,a,o)):V(u,ur.createForOfStatement(i,a,o))}function _t(){var e=null,t=U();return Y("continue"),59===rr.charCodeAt(ar)?(R(),pr.inIteration||W({},Qn.IllegalContinue),V(t,ur.createContinueStatement(null))):z()?(pr.inIteration||W({},Qn.IllegalContinue),V(t,ur.createContinueStatement(null))):(cr.type===$n.Identifier&&(e=lt(),pr.labelSet.has(e.name)||W({},Qn.UnknownLabel,e.name)),ae(),null!==e||pr.inIteration||W({},Qn.IllegalContinue),V(t,ur.createContinueStatement(e)))}function It(){var e=null,t=U();return Y("break"),59===rr.charCodeAt(ar)?(R(),pr.inIteration||pr.inSwitch||W({},Qn.IllegalBreak),V(t,ur.createBreakStatement(null))):z()?(pr.inIteration||pr.inSwitch||W({},Qn.IllegalBreak),V(t,ur.createBreakStatement(null))):(cr.type===$n.Identifier&&(e=lt(),pr.labelSet.has(e.name)||W({},Qn.UnknownLabel,e.name)),ae(),null!==e||pr.inIteration||pr.inSwitch||W({},Qn.IllegalBreak),V(t,ur.createBreakStatement(e)))}function jt(){var e=null,t=U();return Y("return"),pr.inFunctionBody||$({},Qn.IllegalReturn),32===rr.charCodeAt(ar)&&l(rr.charCodeAt(ar+1))?(e=Fe(),ae(),V(t,ur.createReturnStatement(e))):z()?V(t,ur.createReturnStatement(null)):(Q(";")||Q("}")||cr.type===$n.EOF||(e=Fe()),ae(),V(t,ur.createReturnStatement(e)))}function Ot(){var e,t,n=U();return ir&&$({},Qn.StrictModeWith),Y("with"),G("("),e=Fe(),G(")"),t=Xt(),V(n,ur.createWithStatement(e,t))}function Mt(){var e,t,n=[],r=U();for(Z("default")?(R(),e=null):(Y("case"),e=Fe()),G(":");ar<lr&&!(Q("}")||Z("default")||Z("case"))&&(t=an(),"undefined"!=typeof t);)n.push(t);return V(r,ur.createSwitchCase(e,n))}function Nt(){var e,t,n,r,i,a=U();if(Y("switch"),G("("),e=Fe(),G(")"),G("{"),t=[],Q("}"))return R(),V(a,ur.createSwitchStatement(e,t));for(r=pr.inSwitch,pr.inSwitch=!0,i=!1;ar<lr&&!Q("}");)n=Mt(),null===n.test&&(i&&W({},Qn.MultipleDefaultsInSwitch),i=!0),t.push(n);return pr.inSwitch=r,G("}"),V(a,ur.createSwitchStatement(e,t))}function Dt(){var e,t=U();return Y("throw"),z()&&W({},Qn.NewlineAfterThrow),e=Fe(),ae(),V(t,ur.createThrowStatement(e))}function Rt(){var e,t,n=U();return Y("catch"),G("("),Q(")")&&H(cr),e=Fe(),ir&&e.type===Yn.Identifier&&f(e.name)&&$({},Qn.StrictCatchVariable),G(")"),t=Ue(),V(n,ur.createCatchClause(e,t))}function Bt(){var e,t=[],n=null,r=U();return Y("try"),e=Ue(),Z("catch")&&t.push(Rt()),Z("finally")&&(R(),n=Ue()),0!==t.length||n||W({},Qn.NoCatchOrFinally),V(r,ur.createTryStatement(e,[],t,n))}function Ft(){var e=U();return Y("debugger"),ae(),V(e,ur.createDebuggerStatement())}function Xt(){var e,t,n,r=cr.type;if(r===$n.EOF&&H(cr),r===$n.Punctuator)switch(cr.value){case";":return xt();case"{":return Ue();case"(":return kt()}if(r===$n.Keyword)switch(cr.value){case"break":return It();case"continue":return _t();case"debugger":return Ft();case"do":return At();case"for":return Pt();case"function":return Wt();case"class":return rn();case"if":return Tt();case"return":return jt();case"switch":return Nt();case"throw":return Dt();case"try":return Bt();case"var":return ft();case"while":return Lt();case"with":return Ot()}return be()?Wt():(e=U(),t=Fe(),t.type===Yn.Identifier&&Q(":")?(R(),pr.labelSet.has(t.name)&&W({},Qn.Redeclaration,"Label",t.name),pr.labelSet.set(t.name,!0),n=Xt(),pr.labelSet.delete(t.name),V(e,ur.createLabeledStatement(t,n))):(ae(),V(e,ur.createExpressionStatement(t))))}function Ut(){return Q("{")?Jt():Be()}function Jt(){var e,t,r,i,a,o,s,l,u,c=[],p=U();for(G("{");ar<lr&&cr.type===$n.StringLiteral&&(t=cr,e=an(),c.push(e),e.expression.type===Yn.Literal);)r=rr.slice(t.range[0]+1,t.range[1]-1),"use strict"===r?(ir=!0,i&&$(i,Qn.StrictOctalLiteral)):!i&&t.octal&&(i=t);for(a=pr.labelSet,o=pr.inIteration,s=pr.inSwitch,l=pr.inFunctionBody,u=pr.parenthesizedCount,pr.labelSet=new n,pr.inIteration=!1,pr.inSwitch=!1,pr.inFunctionBody=!0,pr.parenthesizedCount=0;ar<lr&&!Q("}")&&(e=an(),"undefined"!=typeof e);)c.push(e);return G("}"),pr.labelSet=a,pr.inIteration=o,pr.inSwitch=s,pr.inFunctionBody=l,pr.parenthesizedCount=u,V(p,ur.createBlockStatement(c))}function qt(e,t,n){ir?(f(n)&&(e.stricted=t,e.message=Qn.StrictParamName),e.paramSet.has(n)&&(e.stricted=t,e.message=Qn.StrictParamDupe)):e.firstRestricted||(f(n)?(e.firstRestricted=t,e.message=Qn.StrictParamName):p(n)?(e.firstRestricted=t,e.message=Qn.StrictReservedWord):e.paramSet.has(n)&&(e.firstRestricted=t,e.message=Qn.StrictParamDupe)),e.paramSet.set(n,!0)}function Vt(e){var t,n,r,i,a;return n=cr,"..."===n.value&&(n=R(),r=!0),Q("[")?(t=U(),i=le(),Ne(e,i),Q(":")&&(i.typeAnnotation=st(),V(t,i))):Q("{")?(t=U(),r&&W({},Qn.ObjectPatternAsRestParameter),i=me(),Ne(e,i),Q(":")&&(i.typeAnnotation=st(),V(t,i))):(i=r?ut(!1,!1):ut(!1,!0),qt(e,n,n.value)),Q("=")&&(r&&$(cr,Qn.DefaultRestParameter),R(),a=Be(),++e.defaultCount),r?(Q(")")||W({},Qn.ParameterAfterRestParameter),e.rest=i,!1):(e.params.push(i),e.defaults.push(a),!Q(")"))}function zt(e){var t,r=U();if(t={params:[],defaultCount:0,defaults:[],rest:null,firstRestricted:e},G("("),!Q(")"))for(t.paramSet=new n;ar<lr&&Vt(t)&&(G(","),t.rest||!Q(")")););return G(")"),0===t.defaultCount&&(t.defaults=[]),Q(":")&&(t.returnType=st()),V(r,t)}function Wt(){var e,t,n,r,i,a,o,s,l,u,c,d,h=U();return s=!1,re()&&(R(),s=!0),Y("function"),o=!1,Q("*")&&(R(),o=!0),n=cr,e=lt(),Q("<")&&(d=Je()),ir?f(n.value)&&$(n,Qn.StrictFunctionName):f(n.value)?(i=n,a=Qn.StrictFunctionName):p(n.value)&&(i=n,a=Qn.StrictReservedWord),r=zt(i),i=r.firstRestricted,r.message&&(a=r.message),l=ir,u=pr.yieldAllowed,pr.yieldAllowed=o,c=pr.awaitAllowed,pr.awaitAllowed=s,t=Jt(),ir&&i&&W(i,a),ir&&r.stricted&&$(r.stricted,a),ir=l,pr.yieldAllowed=u,pr.awaitAllowed=c,V(h,ur.createFunctionDeclaration(e,r.params,r.defaults,t,r.rest,o,!1,s,r.returnType,d))}function $t(){var e,t,n,r,i,a,o,s,l,u,c,d=null,h=U();return o=!1,re()&&(R(),o=!0),Y("function"),a=!1,Q("*")&&(R(),a=!0),Q("(")||(Q("<")||(e=cr,
d=lt(),ir?f(e.value)&&$(e,Qn.StrictFunctionName):f(e.value)?(t=e,n=Qn.StrictFunctionName):p(e.value)&&(t=e,n=Qn.StrictReservedWord)),Q("<")&&(c=Je())),r=zt(t),t=r.firstRestricted,r.message&&(n=r.message),s=ir,l=pr.yieldAllowed,pr.yieldAllowed=a,u=pr.awaitAllowed,pr.awaitAllowed=o,i=Jt(),ir&&t&&W(t,n),ir&&r.stricted&&$(r.stricted,n),ir=s,pr.yieldAllowed=l,pr.awaitAllowed=u,V(h,ur.createFunctionExpression(d,r.params,r.defaults,i,r.rest,a,!1,o,r.returnType,c))}function Ht(){var e,t,n=U();return Y("yield",!ir),e=!1,Q("*")&&(R(),e=!0),t=Be(),V(n,ur.createYieldExpression(t,e))}function Gt(){var e,t=U();return K("await"),e=Be(),V(t,ur.createAwaitExpression(e))}function Yt(e){return"get"===e.kind||"set"===e.kind||e.value.generator}function Kt(e,t,n,r){var i,a,o,s,l,u,c;return o=t?nr.static:nr.prototype,n?ur.createMethodDefinition(o,"",e,ce({generator:!0}),r):(u="Identifier"===e.type&&e.name,"get"!==u||Q("(")?"set"!==u||Q("(")?(Q("<")&&(l=Je()),s="async"===u&&!Q("("),s&&(e=pe()),ur.createMethodDefinition(o,"",e,ce({generator:!1,async:s,typeParameters:l}),r)):(e=pe(),G("("),i=cr,a=[ut()],G(")"),Q(":")&&(c=st()),ur.createMethodDefinition(o,"set",e,ue({params:a,generator:!1,name:i,returnType:c}),r)):(e=pe(),G("("),G(")"),Q(":")&&(c=st()),ur.createMethodDefinition(o,"get",e,ue({generator:!1,returnType:c}),r)))}function Qt(e,t,n){var r;return r=st(),G(";"),ur.createClassProperty(e,r,t,n)}function Zt(){var e,t,n=!1,r=!1,i=U(),a=!1;return Q(";")?void R():("static"===cr.value&&(R(),a=!0),Q("*")&&(R(),r=!0),t=cr,(ee("get")||ee("set"))&&(t=F()),t.type===$n.Punctuator&&"["===t.value&&(n=!0),e=pe(),r||":"!==cr.value?V(i,Kt(e,a,r,n)):V(i,Qt(e,n,a)))}function en(){var e,t,r,i=[],a={},o=U();for(a[nr.static]=new n,a[nr.prototype]=new n,G("{");ar<lr&&!Q("}");)e=Zt(a),"undefined"!=typeof e&&(i.push(e),t=!e.computed&&he(e.key),t!==!1&&(r=e.static?nr.static:nr.prototype,e.type===Yn.MethodDefinition&&("constructor"!==t||e.static||(Yt(e)&&W(e,Qn.IllegalClassConstructorProperty),a[nr.prototype].has("constructor")&&W(e.key,Qn.IllegalDuplicateClassProperty)),a[r].set(t,!0))));return G("}"),V(o,ur.createClassBody(i))}function tn(){var e,t,n,r=[];for(ir?Y("implements"):K("implements");ar<lr&&(t=U(),e=lt(),n=Q("<")?qe():null,r.push(V(t,ur.createClassImplements(e,n))),Q(","));)G(",");return r}function nn(){var e,t,n,r,i,a,o=null,s=U();return Y("class"),a=ir?Z("implements"):ee("implements"),Z("extends")||a||Q("{")||(e=lt()),Q("<")&&(i=Je()),Z("extends")&&(Y("extends"),n=pr.yieldAllowed,pr.yieldAllowed=!1,o=Le(),Q("<")&&(r=qe()),pr.yieldAllowed=n),(ir?Z("implements"):ee("implements"))&&(t=tn()),V(s,ur.createClassExpression(e,o,en(),i,r,t))}function rn(){var e,t,n,r,i,a=null,o=U();return Y("class"),e=lt(),Q("<")&&(i=Je()),Z("extends")&&(Y("extends"),n=pr.yieldAllowed,pr.yieldAllowed=!1,a=Le(),Q("<")&&(r=qe()),pr.yieldAllowed=n),(ir?Z("implements"):ee("implements"))&&(t=tn()),V(o,ur.createClassDeclaration(e,a,en(),i,r,t))}function an(){var e;if(cr.type===$n.Keyword)switch(cr.value){case"const":case"let":return dt(cr.value);case"function":return Wt();case"export":return $({},Qn.IllegalExportDeclaration),gt();case"import":return $({},Qn.IllegalImportDeclaration),wt();case"interface":return F().type===$n.Identifier?Mn():Xt();default:return Xt()}if(ee("type")&&F().type===$n.Identifier)return In();if(ee("interface")&&F().type===$n.Identifier)return Mn();if(ee("declare"))if(e=F(),e.type===$n.Keyword)switch(e.value){case"class":return Nn();case"function":return Dn();case"var":return Rn()}else if(e.type===$n.Identifier&&"module"===e.value)return Bn();return cr.type!==$n.EOF?Xt():void 0}function on(){var e="module"===fr.sourceType||"nonStrictModule"===fr.sourceType;if(e&&cr.type===$n.Keyword)switch(cr.value){case"export":return gt();case"import":return wt()}return an()}function sn(){for(var e,t,n,r,i=[];ar<lr&&(t=cr,t.type===$n.StringLiteral)&&(e=on(),i.push(e),e.expression.type===Yn.Literal);)n=rr.slice(t.range[0]+1,t.range[1]-1),"use strict"===n?(ir=!0,r&&$(r,Qn.StrictOctalLiteral)):!r&&t.octal&&(r=t);for(;ar<lr&&(e=on(),"undefined"!=typeof e);)i.push(e);return i}function ln(){var e,t=U();return ir="module"===fr.sourceType,B(),e=sn(),V(t,ur.createProgram(e))}function un(e){return e.type===Yn.JSXIdentifier?e.name:e.type===Yn.JSXNamespacedName?e.namespace.name+":"+e.name.name:e.type===Yn.JSXMemberExpression?un(e.object)+"."+un(e.property):void H(e)}function cn(e){return 92!==e&&l(e)}function pn(e){return 92!==e&&(45===e||u(e))}function fn(){var e,t,n="";for(t=ar;ar<lr&&(e=rr.charCodeAt(ar),pn(e));)n+=rr[ar++];return{type:$n.JSXIdentifier,value:n,lineNumber:or,lineStart:sr,range:[t,ar]}}function dn(){var e,n,r="",i=ar,a=0;for(e=rr[ar],t("&"===e,"Entity must start with an ampersand"),ar++;ar<lr&&a++<10&&(e=rr[ar++],";"!==e);)r+=e;if(";"===e)if("#"===r[0]){if(n="x"===r[1]?+("0"+r.substr(1)):+r.substr(1).replace(Zn.LeadingZeros,""),!isNaN(n))return String.fromCharCode(n)}else if(tr[r])return tr[r];return ar=i+1,"&"}function hn(e){var t,n,r="";for(n=ar;ar<lr&&(t=rr[ar],e.indexOf(t)===-1);)"&"===t?r+=dn():(ar++,"\r"===t&&"\n"===rr[ar]&&(r+=t,t=rr[ar],ar++),s(t.charCodeAt(0))&&(++or,sr=ar),r+=t);return{type:$n.JSXText,value:r,lineNumber:or,lineStart:sr,range:[n,ar]}}function mn(){var e,n,r;return n=rr[ar],t("'"===n||'"'===n,"String literal must starts with a quote"),r=ar,++ar,e=hn([n]),n!==rr[ar]&&W({},Qn.UnexpectedToken,"ILLEGAL"),++ar,e.range=[r,ar],e}function yn(){var e=rr.charCodeAt(ar);return 60!==e&&62!==e&&123!==e&&125!==e?hn(["<",">","{","}"]):x()}function gn(){var e,t=U();return cr.type!==$n.JSXIdentifier&&H(cr),e=R(),V(t,ur.createJSXIdentifier(e.value))}function vn(){var e,t,n=U();return e=gn(),G(":"),t=gn(),V(n,ur.createJSXNamespacedName(e,t))}function bn(){for(var e=U(),t=gn();Q(".");)R(),t=V(e,ur.createJSXMemberExpression(t,gn()));return t}function En(){return":"===F().value?vn():"."===F().value?bn():gn()}function Sn(){return":"===F().value?vn():gn()}function wn(){var e,t;return Q("{")?(e=kn(),e.expression.type===Yn.JSXEmptyExpression&&W(e,"JSX attributes must only be assigned a non-empty expression")):Q("<")?e=_n():cr.type===$n.JSXText?(t=U(),e=V(t,ur.createLiteral(R()))):W({},Qn.InvalidJSXAttributeValue),e}function xn(){for(var e,t=J();ar<lr&&(e=rr.charCodeAt(ar),125!==e);)s(e)&&(13===e&&10===rr.charCodeAt(ar+1)&&++ar,++or,sr=ar),++ar;return V(t,ur.createJSXEmptyExpression())}function kn(){var e,t,n,r=U();return t=pr.inJSXChild,n=pr.inJSXTag,pr.inJSXChild=!1,pr.inJSXTag=!1,G("{"),e=Q("}")?xn():Fe(),pr.inJSXChild=t,pr.inJSXTag=n,G("}"),V(r,ur.createJSXExpressionContainer(e))}function Tn(){var e,t,n,r=U();return t=pr.inJSXChild,n=pr.inJSXTag,pr.inJSXChild=!1,pr.inJSXTag=!1,G("{"),G("..."),e=Be(),pr.inJSXChild=t,pr.inJSXTag=n,G("}"),V(r,ur.createJSXSpreadAttribute(e))}function An(){var e,t;return Q("{")?Tn():(t=U(),e=Sn(),Q("=")?(R(),V(t,ur.createJSXAttribute(e,wn()))):V(t,ur.createJSXAttribute(e)))}function Ln(){var e,t;return Q("{")?e=kn():cr.type===$n.JSXText?(t=J(),e=V(t,ur.createLiteral(R()))):Q("<")?e=_n():H(cr),e}function Cn(){var e,t,n,r=U();return t=pr.inJSXChild,n=pr.inJSXTag,pr.inJSXChild=!1,pr.inJSXTag=!0,G("<"),G("/"),e=En(),pr.inJSXChild=t,pr.inJSXTag=n,G(">"),V(r,ur.createJSXClosingElement(e))}function Pn(){var e,t,n,r=[],i=!1,a=U();for(t=pr.inJSXChild,n=pr.inJSXTag,pr.inJSXChild=!1,pr.inJSXTag=!0,G("<"),e=En();ar<lr&&"/"!==cr.value&&">"!==cr.value;)r.push(An());return pr.inJSXTag=n,"/"===cr.value?(G("/"),pr.inJSXChild=t,G(">"),i=!0):(pr.inJSXChild=!0,G(">")),V(a,ur.createJSXOpeningElement(e,r,i))}function _n(){var e,t,n,r=null,i=[],a=U();if(t=pr.inJSXChild,n=pr.inJSXTag,e=Pn(),!e.selfClosing){for(;ar<lr&&(pr.inJSXChild=!1,"<"!==cr.value||"/"!==F().value);)pr.inJSXChild=!0,i.push(Ln());pr.inJSXChild=t,pr.inJSXTag=n,r=Cn(),un(r.name)!==un(e.name)&&W({},Qn.ExpectedJSXClosingTag,un(e.name))}return!t&&Q("<")&&W(cr,Qn.AdjacentJSXElements),V(a,ur.createJSXElement(e,r,i))}function In(){var e,t,n=U(),r=null;return K("type"),e=lt(),Q("<")&&(r=Je()),G("="),t=ot(),ae(),V(n,ur.createTypeAlias(e,r,t))}function jn(){var e,t=U(),n=null;return e=lt(),Q("<")&&(n=qe()),V(t,ur.createInterfaceExtends(e,n))}function On(e,t){var n,r,i,a=[],o=null;if(i=lt(),Q("<")&&(o=Je()),Z("extends"))for(Y("extends");ar<lr&&(a.push(jn()),Q(","));)G(",");return r=U(),n=V(r,He(t)),V(e,ur.createInterface(i,o,n,a))}function Mn(){var e=U();return ir?Y("interface"):K("interface"),On(e,!1)}function Nn(){var e,t=U();return K("declare"),Y("class"),e=On(t,!0),e.type=Yn.DeclareClass,e}function Dn(){var e,t,n,r,i,a,o,s,l=U(),u=null;return K("declare"),Y("function"),t=U(),e=lt(),s=U(),Q("<")&&(u=Je()),G("("),a=et(),n=a.params,i=a.rest,G(")"),G(":"),r=ot(),o=V(s,ur.createFunctionTypeAnnotation(n,r,i,u)),e.typeAnnotation=V(s,ur.createTypeAnnotation(o)),V(t,e),ae(),V(l,ur.createDeclareFunction(e))}function Rn(){var e,t=U();return K("declare"),Y("var"),e=ut(),ae(),V(t,ur.createDeclareVariable(e))}function Bn(){var e,t,n,r,i=[],a=U();for(K("declare"),K("module"),cr.type===$n.StringLiteral?(ir&&cr.octal&&$(cr,Qn.StrictOctalLiteral),n=U(),t=V(n,ur.createLiteral(R()))):t=lt(),e=U(),G("{");ar<lr&&!Q("}");)switch(r=F(),r.value){case"class":i.push(Nn());break;case"function":i.push(Dn());break;case"var":i.push(Rn());break;default:H(cr)}return G("}"),V(a,ur.createDeclareModule(t,V(e,ur.createBlockStatement(i))))}function Fn(){var e,t,n,r,i;return pr.inJSXChild||g(),e={start:{line:or,column:ar-sr}},t=fr.advance(),e.end={line:or,column:ar-sr},t.type!==$n.EOF&&(n=[t.range[0],t.range[1]],r=rr.slice(t.range[0],t.range[1]),i={type:Hn[t.type],value:r,range:n,loc:e},t.regex&&(i.regex={pattern:t.regex.pattern,flags:t.regex.flags}),fr.tokens.push(i)),t}function Xn(){var e,t,n,r;return g(),e=ar,t={start:{line:or,column:ar-sr}},n=fr.scanRegExp(),t.end={line:or,column:ar-sr},fr.tokenize||(fr.tokens.length>0&&(r=fr.tokens[fr.tokens.length-1],r.range[0]===e&&"Punctuator"===r.type&&("/"!==r.value&&"/="!==r.value||fr.tokens.pop())),fr.tokens.push({type:"RegularExpression",value:n.literal,regex:n.regex,range:[e,ar],loc:t})),n}function Un(){var e,t,n,r=[];for(e=0;e<fr.tokens.length;++e)t=fr.tokens[e],n={type:t.type,value:t.value},t.regex&&(n.regex={pattern:t.regex.pattern,flags:t.regex.flags}),fr.range&&(n.range=t.range),fr.loc&&(n.loc=t.loc),r.push(n);fr.tokens=r}function Jn(){"undefined"!=typeof fr.tokens&&(fr.advance=D,fr.scanRegExp=O,D=Fn,O=Xn)}function qn(){"function"==typeof fr.scanRegExp&&(D=fr.advance,O=fr.scanRegExp)}function Vn(e,t){var n,r={};for(n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);for(n in t)t.hasOwnProperty(n)&&(r[n]=t[n]);return r}function zn(e,t){var r,i,a;r=String,"string"==typeof e||e instanceof String||(e=r(e)),ur=er,rr=e,ar=0,or=rr.length>0?1:0,sr=0,lr=rr.length,cr=null,pr={allowKeyword:!0,allowIn:!0,labelSet:new n,inFunctionBody:!1,inIteration:!1,inSwitch:!1,lastCommentStart:-1,curlyStack:[],curlyLastIndex:0},fr={},t=t||{},t.tokens=!0,fr.tokens=[],fr.tokenize=!0,fr.openParenToken=-1,fr.openCurlyToken=-1,fr.range="boolean"==typeof t.range&&t.range,fr.loc="boolean"==typeof t.loc&&t.loc,"boolean"==typeof t.comment&&t.comment&&(fr.comments=[]),"boolean"==typeof t.tolerant&&t.tolerant&&(fr.errors=[]),Jn();try{if(B(),cr.type===$n.EOF)return fr.tokens;for(i=R();cr.type!==$n.EOF;)try{i=R()}catch(e){if(i=cr,fr.errors){fr.errors.push(e);break}throw e}Un(),a=fr.tokens,"undefined"!=typeof fr.comments&&(a.comments=fr.comments),"undefined"!=typeof fr.errors&&(a.errors=fr.errors)}catch(e){throw e}finally{qn(),fr={}}return a}function Wn(e,t){var r,i;i=String,"string"==typeof e||e instanceof String||(e=i(e)),ur=er,rr=e,ar=0,or=rr.length>0?1:0,sr=0,lr=rr.length,cr=null,pr={allowKeyword:!1,allowIn:!0,labelSet:new n,parenthesizedCount:0,inFunctionBody:!1,inIteration:!1,inSwitch:!1,inJSXChild:!1,inJSXTag:!1,inType:!1,lastCommentStart:-1,yieldAllowed:!1,awaitAllowed:!1,curlyPosition:0,curlyStack:[],curlyLastIndex:0},fr={},"undefined"!=typeof t&&(fr.range="boolean"==typeof t.range&&t.range,fr.loc="boolean"==typeof t.loc&&t.loc,fr.attachComment="boolean"==typeof t.attachComment&&t.attachComment,fr.loc&&null!==t.source&&void 0!==t.source&&(ur=Vn(ur,{postProcess:function(e){return e.loc.source=i(t.source),e}})),fr.sourceType=t.sourceType,"boolean"==typeof t.tokens&&t.tokens&&(fr.tokens=[]),"boolean"==typeof t.comment&&t.comment&&(fr.comments=[]),"boolean"==typeof t.tolerant&&t.tolerant&&(fr.errors=[]),fr.attachComment&&(fr.range=!0,fr.comments=[],fr.bottomRightStack=[],fr.trailingComments=[],fr.leadingComments=[])),Jn();try{r=ln(),"undefined"!=typeof fr.comments&&(r.comments=fr.comments),"undefined"!=typeof fr.tokens&&(Un(),r.tokens=fr.tokens),"undefined"!=typeof fr.errors&&(r.errors=fr.errors)}catch(e){throw e}finally{qn(),fr={}}return r}var $n,Hn,Gn,Yn,Kn,Qn,Zn,er,tr,nr,rr,ir,ar,or,sr,lr,ur,cr,pr,fr;$n={BooleanLiteral:1,EOF:2,Identifier:3,Keyword:4,NullLiteral:5,NumericLiteral:6,Punctuator:7,StringLiteral:8,RegularExpression:9,Template:10,JSXIdentifier:11,JSXText:12},Hn={},Hn[$n.BooleanLiteral]="Boolean",Hn[$n.EOF]="<end>",Hn[$n.Identifier]="Identifier",Hn[$n.Keyword]="Keyword",Hn[$n.NullLiteral]="Null",Hn[$n.NumericLiteral]="Numeric",Hn[$n.Punctuator]="Punctuator",Hn[$n.StringLiteral]="String",Hn[$n.JSXIdentifier]="JSXIdentifier",Hn[$n.JSXText]="JSXText",Hn[$n.RegularExpression]="RegularExpression",Hn[$n.Template]="Template",Gn=["(","{","[","in","typeof","instanceof","new","return","case","delete","throw","void","=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","&=","|=","^=",",","+","-","*","/","%","++","--","<<",">>",">>>","&","|","^","!","~","&&","||","?",":","===","==",">=","<=","<",">","!=","!=="],Yn={AnyTypeAnnotation:"AnyTypeAnnotation",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrayTypeAnnotation:"ArrayTypeAnnotation",ArrowFunctionExpression:"ArrowFunctionExpression",AssignmentExpression:"AssignmentExpression",BinaryExpression:"BinaryExpression",BlockStatement:"BlockStatement",BooleanTypeAnnotation:"BooleanTypeAnnotation",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ClassImplements:"ClassImplements",ClassProperty:"ClassProperty",ComprehensionBlock:"ComprehensionBlock",ComprehensionExpression:"ComprehensionExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DebuggerStatement:"DebuggerStatement",DeclareClass:"DeclareClass",DeclareFunction:"DeclareFunction",DeclareModule:"DeclareModule",DeclareVariable:"DeclareVariable",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExportDeclaration:"ExportDeclaration",ExportBatchSpecifier:"ExportBatchSpecifier",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",ForStatement:"ForStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",FunctionTypeAnnotation:"FunctionTypeAnnotation",FunctionTypeParam:"FunctionTypeParam",GenericTypeAnnotation:"GenericTypeAnnotation",Identifier:"Identifier",IfStatement:"IfStatement",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",InterfaceDeclaration:"InterfaceDeclaration",InterfaceExtends:"InterfaceExtends",IntersectionTypeAnnotation:"IntersectionTypeAnnotation",LabeledStatement:"LabeledStatement",Literal:"Literal",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MethodDefinition:"MethodDefinition",NewExpression:"NewExpression",NullableTypeAnnotation:"NullableTypeAnnotation",NumberTypeAnnotation:"NumberTypeAnnotation",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",ObjectTypeAnnotation:"ObjectTypeAnnotation",ObjectTypeCallProperty:"ObjectTypeCallProperty",ObjectTypeIndexer:"ObjectTypeIndexer",ObjectTypeProperty:"ObjectTypeProperty",Program:"Program",Property:"Property",QualifiedTypeIdentifier:"QualifiedTypeIdentifier",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",SpreadProperty:"SpreadProperty",StringLiteralTypeAnnotation:"StringLiteralTypeAnnotation",StringTypeAnnotation:"StringTypeAnnotation",SwitchCase:"SwitchCase",SwitchStatement:"SwitchStatement",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TupleTypeAnnotation:"TupleTypeAnnotation",TryStatement:"TryStatement",TypeAlias:"TypeAlias",TypeAnnotation:"TypeAnnotation",TypeCastExpression:"TypeCastExpression",TypeofTypeAnnotation:"TypeofTypeAnnotation",TypeParameterDeclaration:"TypeParameterDeclaration",TypeParameterInstantiation:"TypeParameterInstantiation",UnaryExpression:"UnaryExpression",UnionTypeAnnotation:"UnionTypeAnnotation",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",VoidTypeAnnotation:"VoidTypeAnnotation",WhileStatement:"WhileStatement",WithStatement:"WithStatement",JSXIdentifier:"JSXIdentifier",JSXNamespacedName:"JSXNamespacedName",JSXMemberExpression:"JSXMemberExpression",JSXEmptyExpression:"JSXEmptyExpression",JSXExpressionContainer:"JSXExpressionContainer",JSXElement:"JSXElement",JSXClosingElement:"JSXClosingElement",JSXOpeningElement:"JSXOpeningElement",JSXAttribute:"JSXAttribute",JSXSpreadAttribute:"JSXSpreadAttribute",JSXText:"JSXText",YieldExpression:"YieldExpression",AwaitExpression:"AwaitExpression"},Kn={Data:1,Get:2,Set:4},nr={static:"static",prototype:"prototype"},Qn={UnexpectedToken:"Unexpected token %0",UnexpectedNumber:"Unexpected number",UnexpectedString:"Unexpected string",UnexpectedIdentifier:"Unexpected identifier",UnexpectedReserved:"Unexpected reserved word",UnexpectedTemplate:"Unexpected quasi %0",UnexpectedEOS:"Unexpected end of input",NewlineAfterThrow:"Illegal newline after throw",InvalidRegExp:"Invalid regular expression",UnterminatedRegExp:"Invalid regular expression: missing /",InvalidLHSInAssignment:"Invalid left-hand side in assignment",InvalidLHSInFormalsList:"Invalid left-hand side in formals list",InvalidLHSInForIn:"Invalid left-hand side in for-in",MultipleDefaultsInSwitch:"More than one default clause in switch statement",NoCatchOrFinally:"Missing catch or finally after try",UnknownLabel:"Undefined label '%0'",Redeclaration:"%0 '%1' has already been declared",IllegalContinue:"Illegal continue statement",IllegalBreak:"Illegal break statement",IllegalDuplicateClassProperty:"Illegal duplicate property in class definition",IllegalClassConstructorProperty:"Illegal constructor property in class definition",IllegalReturn:"Illegal return statement",IllegalSpread:"Illegal spread element",StrictModeWith:"Strict mode code may not include a with statement",StrictCatchVariable:"Catch variable may not be eval or arguments in strict mode",StrictVarName:"Variable name may not be eval or arguments in strict mode",StrictParamName:"Parameter name eval or arguments is not allowed in strict mode",StrictParamDupe:"Strict mode function may not have duplicate parameter names",ParameterAfterRestParameter:"Rest parameter must be final parameter of an argument list",DefaultRestParameter:"Rest parameter can not have a default value",ElementAfterSpreadElement:"Spread must be the final element of an element list",PropertyAfterSpreadProperty:"A rest property must be the final property of an object literal",ObjectPatternAsRestParameter:"Invalid rest parameter",ObjectPatternAsSpread:"Invalid spread argument",StrictFunctionName:"Function name may not be eval or arguments in strict mode",StrictOctalLiteral:"Octal literals are not allowed in strict mode.",StrictDelete:"Delete of an unqualified identifier in strict mode.",StrictDuplicateProperty:"Duplicate data property in object literal not allowed in strict mode",AccessorDataProperty:"Object literal may not have data and accessor property with the same name",AccessorGetSet:"Object literal may not have multiple get/set accessors with the same name",StrictLHSAssignment:"Assignment to eval or arguments is not allowed in strict mode",StrictLHSPostfix:"Postfix increment/decrement may not have eval or arguments operand in strict mode",StrictLHSPrefix:"Prefix increment/decrement may not have eval or arguments operand in strict mode",StrictReservedWord:"Use of future reserved word in strict mode",MissingFromClause:"Missing from clause",NoAsAfterImportNamespace:"Missing as after import *",InvalidModuleSpecifier:"Invalid module specifier",IllegalImportDeclaration:"Illegal import declaration",IllegalExportDeclaration:"Illegal export declaration",NoUninitializedConst:"Const must be initialized",ComprehensionRequiresBlock:"Comprehension must have at least one block",ComprehensionError:"Comprehension Error",EachNotAllowed:"Each is not supported",InvalidJSXAttributeValue:"JSX value should be either an expression or a quoted JSX text",ExpectedJSXClosingTag:"Expected corresponding JSX closing tag for %0",AdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag",ConfusedAboutFunctionType:"Unexpected token =>. It looks like you are trying to write a function type, but you ended up writing a grouped type followed by an =>, which is a syntax error. Remember, function type parameters are named so function types look like (name1: type1, name2: type2) => returnType. You probably wrote (type1) => returnType"},Zn={NonAsciiIdentifierStart:new RegExp("[ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԧԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠࢢ-ࢬऄ-हऽॐक़-ॡॱ-ॷॹ-ॿঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-ళవ-హఽౘౙౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൠൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛰᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤜᥐ-ᥭᥰ-ᥴᦀ-ᦫᧁ-ᧇᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々-〇〡-〩〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚗꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꪀ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ]"),NonAsciiIdentifierPart:new RegExp("[ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮ̀-ʹͶͷͺ-ͽΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁ҃-҇Ҋ-ԧԱ-Ֆՙա-և֑-ׇֽֿׁׂׅׄא-תװ-ײؐ-ؚؠ-٩ٮ-ۓە-ۜ۟-۪ۨ-ۼۿܐ-݊ݍ-ޱ߀-ߵߺࠀ-࠭ࡀ-࡛ࢠࢢ-ࢬࣤ-ࣾऀ-ॣ०-९ॱ-ॷॹ-ॿঁ-ঃঅ-ঌএঐও-নপ-রলশ-হ়-ৄেৈো-ৎৗড়ঢ়য়-ৣ০-ৱਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ਼ਾ-ੂੇੈੋ-੍ੑਖ਼-ੜਫ਼੦-ੵઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ઼-ૅે-ૉો-્ૐૠ-ૣ૦-૯ଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ଼-ୄେୈୋ-୍ୖୗଡ଼ଢ଼ୟ-ୣ୦-୯ୱஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-்ௐௗ௦-௯ఁ-ఃఅ-ఌఎ-ఐఒ-నప-ళవ-హఽ-ౄె-ైొ-్ౕౖౘౙౠ-ౣ౦-౯ಂಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ಼-ೄೆ-ೈೊ-್ೕೖೞೠ-ೣ೦-೯ೱೲംഃഅ-ഌഎ-ഐഒ-ഺഽ-ൄെ-ൈൊ-ൎൗൠ-ൣ൦-൯ൺ-ൿංඃඅ-ඖක-නඳ-රලව-ෆ්ා-ුූෘ-ෟෲෳก-ฺเ-๎๐-๙ກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ູົ-ຽເ-ໄໆ່-ໍ໐-໙ໜ-ໟༀ༘༙༠-༩༹༵༷༾-ཇཉ-ཬཱ-྄྆-ྗྙ-ྼ࿆က-၉ၐ-ႝႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፝-፟ᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛰᜀ-ᜌᜎ-᜔ᜠ-᜴ᝀ-ᝓᝠ-ᝬᝮ-ᝰᝲᝳក-៓ៗៜ៝០-៩᠋-᠍᠐-᠙ᠠ-ᡷᢀ-ᢪᢰ-ᣵᤀ-ᤜᤠ-ᤫᤰ-᤻᥆-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉ᧐-᧙ᨀ-ᨛᨠ-ᩞ᩠-᩿᩼-᪉᪐-᪙ᪧᬀ-ᭋ᭐-᭙᭫-᭳ᮀ-᯳ᰀ-᰷᱀-᱉ᱍ-ᱽ᳐-᳔᳒-ᳶᴀ-ᷦ᷼-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼ‌‍‿⁀⁔ⁱⁿₐ-ₜ⃐-⃥⃜⃡-⃰ℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯ⵿-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⷠ-ⷿⸯ々-〇〡-〯〱-〵〸-〼ぁ-ゖ゙゚ゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘫꙀ-꙯ꙴ-꙽ꙿ-ꚗꚟ-꛱ꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꠧꡀ-ꡳꢀ-꣄꣐-꣙꣠-ꣷꣻ꤀-꤭ꤰ-꥓ꥠ-ꥼꦀ-꧀ꧏ-꧙ꨀ-ꨶꩀ-ꩍ꩐-꩙ꩠ-ꩶꩺꩻꪀ-ꫂꫛ-ꫝꫠ-ꫯꫲ-꫶ꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯪ꯬꯭꯰-꯹가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻ︀-️︠-︦︳︴﹍-﹏ﹰ-ﹴﹶ-ﻼ0-9A-Z_a-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ]"),LeadingZeros:new RegExp("^0+(?!$)")},n.prototype.get=function(e){return e="$"+e,this.$data[e]},n.prototype.set=function(e,t){return e="$"+e,this.$data[e]=t,this},n.prototype.has=function(e){return e="$"+e,Object.prototype.hasOwnProperty.call(this.$data,e)},n.prototype.delete=function(e){return e="$"+e,delete this.$data[e]},er={name:"SyntaxTree",postProcess:function(e){return e},createArrayExpression:function(e){return{type:Yn.ArrayExpression,elements:e}},createAssignmentExpression:function(e,t,n){return{type:Yn.AssignmentExpression,operator:e,left:t,right:n}},createBinaryExpression:function(e,t,n){var r="||"===e||"&&"===e?Yn.LogicalExpression:Yn.BinaryExpression;return{type:r,operator:e,left:t,right:n}},createBlockStatement:function(e){return{type:Yn.BlockStatement,body:e}},createBreakStatement:function(e){return{type:Yn.BreakStatement,label:e}},createCallExpression:function(e,t){return{type:Yn.CallExpression,callee:e,arguments:t}},createCatchClause:function(e,t){return{type:Yn.CatchClause,param:e,body:t}},createConditionalExpression:function(e,t,n){return{type:Yn.ConditionalExpression,test:e,consequent:t,alternate:n}},createContinueStatement:function(e){return{type:Yn.ContinueStatement,label:e}},createDebuggerStatement:function(){return{type:Yn.DebuggerStatement}},createDoWhileStatement:function(e,t){return{type:Yn.DoWhileStatement,body:e,test:t}},createEmptyStatement:function(){return{type:Yn.EmptyStatement}},createExpressionStatement:function(e){return{type:Yn.ExpressionStatement,expression:e}},createForStatement:function(e,t,n,r){return{type:Yn.ForStatement,init:e,test:t,update:n,body:r}},createForInStatement:function(e,t,n){return{type:Yn.ForInStatement,left:e,right:t,body:n,each:!1}},createForOfStatement:function(e,t,n){return{type:Yn.ForOfStatement,left:e,right:t,body:n}},createFunctionDeclaration:function(e,t,n,r,i,a,o,s,l,u){var c={type:Yn.FunctionDeclaration,id:e,params:t,defaults:n,body:r,rest:i,generator:a,expression:o,returnType:l,typeParameters:u};return s&&(c.async=!0),c},createFunctionExpression:function(e,t,n,r,i,a,o,s,l,u){var c={type:Yn.FunctionExpression,id:e,params:t,defaults:n,body:r,rest:i,generator:a,expression:o,returnType:l,typeParameters:u};return s&&(c.async=!0),c},createIdentifier:function(e){return{type:Yn.Identifier,name:e,typeAnnotation:void 0,optional:void 0}},createTypeAnnotation:function(e){return{type:Yn.TypeAnnotation,typeAnnotation:e}},createTypeCast:function(e,t){return{type:Yn.TypeCastExpression,expression:e,typeAnnotation:t}},createFunctionTypeAnnotation:function(e,t,n,r){return{type:Yn.FunctionTypeAnnotation,params:e,returnType:t,rest:n,typeParameters:r}},createFunctionTypeParam:function(e,t,n){return{type:Yn.FunctionTypeParam,name:e,typeAnnotation:t,optional:n}},createNullableTypeAnnotation:function(e){return{type:Yn.NullableTypeAnnotation,typeAnnotation:e}},createArrayTypeAnnotation:function(e){return{type:Yn.ArrayTypeAnnotation,elementType:e}},createGenericTypeAnnotation:function(e,t){return{type:Yn.GenericTypeAnnotation,id:e,typeParameters:t}},createQualifiedTypeIdentifier:function(e,t){return{type:Yn.QualifiedTypeIdentifier,qualification:e,id:t}},createTypeParameterDeclaration:function(e){return{type:Yn.TypeParameterDeclaration,params:e}},createTypeParameterInstantiation:function(e){return{type:Yn.TypeParameterInstantiation,params:e}},createAnyTypeAnnotation:function(){return{type:Yn.AnyTypeAnnotation}},createBooleanTypeAnnotation:function(){return{type:Yn.BooleanTypeAnnotation}},createNumberTypeAnnotation:function(){return{type:Yn.NumberTypeAnnotation}},createStringTypeAnnotation:function(){return{type:Yn.StringTypeAnnotation}},createStringLiteralTypeAnnotation:function(e){return{type:Yn.StringLiteralTypeAnnotation,value:e.value,raw:rr.slice(e.range[0],e.range[1])}},createVoidTypeAnnotation:function(){return{type:Yn.VoidTypeAnnotation}},createTypeofTypeAnnotation:function(e){return{type:Yn.TypeofTypeAnnotation,argument:e}},createTupleTypeAnnotation:function(e){return{type:Yn.TupleTypeAnnotation,types:e}},createObjectTypeAnnotation:function(e,t,n){return{type:Yn.ObjectTypeAnnotation,properties:e,indexers:t,callProperties:n}},createObjectTypeIndexer:function(e,t,n,r){return{type:Yn.ObjectTypeIndexer,id:e,key:t,value:n,static:r}},createObjectTypeCallProperty:function(e,t){return{type:Yn.ObjectTypeCallProperty,value:e,static:t}},createObjectTypeProperty:function(e,t,n,r){return{type:Yn.ObjectTypeProperty,key:e,value:t,optional:n,static:r}},createUnionTypeAnnotation:function(e){return{type:Yn.UnionTypeAnnotation,types:e}},createIntersectionTypeAnnotation:function(e){return{type:Yn.IntersectionTypeAnnotation,types:e}},createTypeAlias:function(e,t,n){return{type:Yn.TypeAlias,id:e,typeParameters:t,right:n}},createInterface:function(e,t,n,r){return{type:Yn.InterfaceDeclaration,id:e,typeParameters:t,body:n,extends:r}},createInterfaceExtends:function(e,t){return{type:Yn.InterfaceExtends,id:e,typeParameters:t}},createDeclareFunction:function(e){return{type:Yn.DeclareFunction,id:e}},createDeclareVariable:function(e){return{type:Yn.DeclareVariable,id:e}},createDeclareModule:function(e,t){return{type:Yn.DeclareModule,id:e,body:t}},createJSXAttribute:function(e,t){return{type:Yn.JSXAttribute,name:e,value:t||null}},createJSXSpreadAttribute:function(e){return{type:Yn.JSXSpreadAttribute,argument:e}},createJSXIdentifier:function(e){return{type:Yn.JSXIdentifier,name:e}},createJSXNamespacedName:function(e,t){return{type:Yn.JSXNamespacedName,namespace:e,name:t}},createJSXMemberExpression:function(e,t){return{type:Yn.JSXMemberExpression,object:e,property:t}},createJSXElement:function(e,t,n){return{type:Yn.JSXElement,openingElement:e,closingElement:t,children:n}},createJSXEmptyExpression:function(){return{type:Yn.JSXEmptyExpression}},createJSXExpressionContainer:function(e){return{type:Yn.JSXExpressionContainer,expression:e}},createJSXOpeningElement:function(e,t,n){return{type:Yn.JSXOpeningElement,name:e,selfClosing:n,attributes:t}},createJSXClosingElement:function(e){return{type:Yn.JSXClosingElement,name:e}},createIfStatement:function(e,t,n){return{type:Yn.IfStatement,test:e,consequent:t,alternate:n}},createLabeledStatement:function(e,t){return{type:Yn.LabeledStatement,label:e,body:t}},createLiteral:function(e){var t={type:Yn.Literal,value:e.value,raw:rr.slice(e.range[0],e.range[1])};return e.regex&&(t.regex=e.regex),t},createMemberExpression:function(e,t,n){return{type:Yn.MemberExpression,computed:"["===e,object:t,property:n}},createNewExpression:function(e,t){return{type:Yn.NewExpression,callee:e,arguments:t}},createObjectExpression:function(e){return{type:Yn.ObjectExpression,properties:e}},createPostfixExpression:function(e,t){return{type:Yn.UpdateExpression,operator:e,argument:t,prefix:!1}},createProgram:function(e){return{type:Yn.Program,body:e}},createProperty:function(e,t,n,r,i,a){return{type:Yn.Property,key:t,value:n,kind:e,method:r,shorthand:i,computed:a}},createReturnStatement:function(e){return{type:Yn.ReturnStatement,argument:e}},createSequenceExpression:function(e){return{type:Yn.SequenceExpression,expressions:e}},createSwitchCase:function(e,t){return{type:Yn.SwitchCase,test:e,consequent:t}},createSwitchStatement:function(e,t){return{type:Yn.SwitchStatement,discriminant:e,cases:t}},createThisExpression:function(){return{type:Yn.ThisExpression}},createThrowStatement:function(e){return{type:Yn.ThrowStatement,argument:e}},createTryStatement:function(e,t,n,r){return{type:Yn.TryStatement,block:e,guardedHandlers:t,handlers:n,finalizer:r}},createUnaryExpression:function(e,t){return"++"===e||"--"===e?{type:Yn.UpdateExpression,operator:e,argument:t,prefix:!0}:{type:Yn.UnaryExpression,operator:e,argument:t,prefix:!0}},createVariableDeclaration:function(e,t){return{type:Yn.VariableDeclaration,declarations:e,kind:t}},createVariableDeclarator:function(e,t){return{type:Yn.VariableDeclarator,id:e,init:t}},createWhileStatement:function(e,t){return{type:Yn.WhileStatement,test:e,body:t}},createWithStatement:function(e,t){return{type:Yn.WithStatement,object:e,body:t}},createTemplateElement:function(e,t){return{type:Yn.TemplateElement,value:e,tail:t}},createTemplateLiteral:function(e,t){return{type:Yn.TemplateLiteral,quasis:e,expressions:t}},createSpreadElement:function(e){return{type:Yn.SpreadElement,argument:e}},createSpreadProperty:function(e){return{type:Yn.SpreadProperty,argument:e}},createTaggedTemplateExpression:function(e,t){return{type:Yn.TaggedTemplateExpression,
tag:e,quasi:t}},createArrowFunctionExpression:function(e,t,n,r,i,a){var o={type:Yn.ArrowFunctionExpression,id:null,params:e,defaults:t,body:n,rest:r,generator:!1,expression:i};return a&&(o.async=!0),o},createMethodDefinition:function(e,t,n,r,i){return{type:Yn.MethodDefinition,key:n,value:r,kind:t,static:e===nr.static,computed:i}},createClassProperty:function(e,t,n,r){return{type:Yn.ClassProperty,key:e,typeAnnotation:t,computed:n,static:r}},createClassBody:function(e){return{type:Yn.ClassBody,body:e}},createClassImplements:function(e,t){return{type:Yn.ClassImplements,id:e,typeParameters:t}},createClassExpression:function(e,t,n,r,i,a){return{type:Yn.ClassExpression,id:e,superClass:t,body:n,typeParameters:r,superTypeParameters:i,implements:a}},createClassDeclaration:function(e,t,n,r,i,a){return{type:Yn.ClassDeclaration,id:e,superClass:t,body:n,typeParameters:r,superTypeParameters:i,implements:a}},createExportSpecifier:function(e,t){return{type:Yn.ExportSpecifier,id:e,name:t}},createExportBatchSpecifier:function(){return{type:Yn.ExportBatchSpecifier}},createImportDefaultSpecifier:function(e){return{type:Yn.ImportDefaultSpecifier,id:e}},createImportNamespaceSpecifier:function(e){return{type:Yn.ImportNamespaceSpecifier,id:e}},createExportDeclaration:function(e,t,n,r,i){return{type:Yn.ExportDeclaration,default:!!e,declaration:t,specifiers:n,source:r,exportKind:i}},createImportSpecifier:function(e,t){return{type:Yn.ImportSpecifier,id:e,name:t}},createImportDeclaration:function(e,t,n){return{type:Yn.ImportDeclaration,specifiers:e,source:t,importKind:n}},createYieldExpression:function(e,t){return{type:Yn.YieldExpression,argument:e,delegate:t}},createAwaitExpression:function(e){return{type:Yn.AwaitExpression,argument:e}},createComprehensionExpression:function(e,t,n){return{type:Yn.ComprehensionExpression,filter:e,blocks:t,body:n}}},tr={quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"},e.version="15001.1001.0-dev-harmony-fb",e.tokenize=zn,e.parse=Wn,e.Syntax=function(){var e,t={};"function"==typeof Object.create&&(t=Object.create(null));for(e in Yn)Yn.hasOwnProperty(e)&&(t[e]=Yn[e]);return"function"==typeof Object.freeze&&Object.freeze(t),t}()})},{}],56:[function(e,t,n){"use strict";function r(e,t,n){if(p)try{p.call(c,e,t,{value:n})}catch(r){e[t]=n}else e[t]=n}function i(e){return e&&(r(e,"call",e.call),r(e,"apply",e.apply)),e}function a(e){return f?f.call(c,e):(y.prototype=e||null,new y)}function o(){do var e=s(m.call(h.call(g(),36),2));while(d.call(v,e));return v[e]=e}function s(e){var t={};return t[e]=!0,Object.keys(t)[0]}function l(e){return a(null)}function u(e){function t(t){function n(n,r){if(n===s)return r?a=null:a||(a=e(t))}var a;r(t,i,n)}function n(e){return d.call(e,i)||t(e),e[i](s)}var i=o(),s=a(null);return e=e||l,n.forget=function(e){d.call(e,i)&&e[i](s,!0)},n}var c=Object,p=Object.defineProperty,f=Object.create;i(p),i(f);var d=i(Object.prototype.hasOwnProperty),h=i(Number.prototype.toString),m=i(String.prototype.slice),y=function(){},g=Math.random,v=a(null);r(n,"makeUniqueKey",o);var b=Object.getOwnPropertyNames;Object.getOwnPropertyNames=function(e){for(var t=b(e),n=0,r=0,i=t.length;n<i;++n)d.call(v,t[n])||(n>r&&(t[r]=t[n]),++r);return t.length=r,t},r(n,"makeAccessor",u)},{}],57:[function(e,t,n){function r(e,t){if(e){if(E.fixFaultyLocations(e),t){if(h.Node.check(e)&&h.SourceLocation.check(e.loc)){for(var n=t.length-1;n>=0&&!(S(t[n].loc.end,e.loc.start)<=0);--n);return void t.splice(n+1,0,e)}}else if(e[w])return e[w];var i;if(m.check(e))i=Object.keys(e);else{if(!y.check(e))return;i=d.getFieldNames(e)}t||Object.defineProperty(e,w,{value:t=[],enumerable:!1});for(var n=0,a=i.length;n<a;++n)r(e[i[n]],t);return t}}function i(e,t){for(var n=r(e),a=0,o=n.length;a<o;){var s=a+o>>1,l=n[s];if(S(l.loc.start,t.loc.start)<=0&&S(t.loc.end,l.loc.end)<=0)return void i(t.enclosingNode=l,t);if(S(l.loc.end,t.loc.start)<=0){var u=l;a=s+1}else{if(!(S(t.loc.end,l.loc.start)<=0))throw new Error("Comment location overlaps with node location");var c=l;o=s}}u&&(t.precedingNode=u),c&&(t.followingNode=c)}function a(e,t){var n=e.length;if(0!==n){for(var r=e[0].precedingNode,i=e[0].followingNode,a=i.loc.start,o=n;o>0;--o){var l=e[o-1];f.strictEqual(l.precedingNode,r),f.strictEqual(l.followingNode,i);var c=t.sliceString(l.loc.end,a);if(/\S/.test(c))break;a=l.loc.start}for(;o<=n&&(l=e[o])&&"Line"===l.type&&l.loc.start.column>i.loc.start.column;)++o;e.forEach(function(e,t){t<o?u(r,e):s(i,e)}),e.length=0}}function o(e,t){var n=e.comments||(e.comments=[]);n.push(t)}function s(e,t){t.leading=!0,t.trailing=!1,o(e,t)}function l(e,t){t.leading=!1,t.trailing=!1,o(e,t)}function u(e,t){t.leading=!1,t.trailing=!0,o(e,t)}function c(e,t){var n=e.getValue();h.Comment.assert(n);var r=n.loc,i=r&&r.lines,a=[t(e)];if(n.trailing)a.push("\n");else if(i instanceof v){var o=i.slice(r.end,i.skipSpaces(r.end));1===o.length?a.push(o):a.push(new Array(o.length).join("\n"))}else a.push("\n");return b(a)}function p(e,t){var n=e.getValue(e);h.Comment.assert(n);var r=n.loc,i=r&&r.lines,a=[];if(i instanceof v){var o=i.skipSpaces(r.start,!0)||i.firstPos(),s=i.slice(o,r.start);1===s.length?a.push(s):a.push(new Array(s.length).join("\n"))}return a.push(t(e)),b(a)}var f=e("assert"),d=e("./types"),h=d.namedTypes,m=d.builtInTypes.array,y=d.builtInTypes.object,g=e("./lines"),v=(g.fromString,g.Lines),b=g.concat,E=e("./util"),S=E.comparePos,w=e("private").makeUniqueKey();n.attach=function(e,t,n){if(m.check(e)){var r=[];e.forEach(function(e){e.loc.lines=n,i(t,e);var o=e.precedingNode,c=e.enclosingNode,p=e.followingNode;if(o&&p){var d=r.length;if(d>0){var h=r[d-1];f.strictEqual(h.precedingNode===e.precedingNode,h.followingNode===e.followingNode),h.followingNode!==e.followingNode&&a(r,n)}r.push(e)}else if(o)a(r,n),u(o,e);else if(p)a(r,n),s(p,e);else{if(!c)throw new Error("AST contains no nodes at all?");a(r,n),l(c,e)}}),a(r,n),e.forEach(function(e){delete e.precedingNode,delete e.enclosingNode,delete e.followingNode})}},n.printComments=function(e,t){var n=e.getValue(),r=t(e),i=h.Node.check(n)&&d.getFieldValue(n,"comments");if(!i||0===i.length)return r;var a=[],o=[r];return e.each(function(e){var n=e.getValue(),r=d.getFieldValue(n,"leading"),i=d.getFieldValue(n,"trailing");r||i&&"Block"!==n.type?a.push(c(e,t)):i&&(f.strictEqual(n.type,"Block"),o.push(p(e,t)))},"comments"),a.push.apply(a,o),b(a)}},{"./lines":59,"./types":65,"./util":66,assert:2,private:56}],58:[function(e,t,n){function r(e){s.ok(this instanceof r),this.stack=[e]}function i(e,t){for(var n=e.stack,r=n.length-1;r>=0;r-=2){var i=n[r];if(u.Node.check(i)&&--t<0)return i}return null}function a(e){return u.BinaryExpression.check(e)||u.LogicalExpression.check(e)}function o(e){return!!u.CallExpression.check(e)||(c.check(e)?e.some(o):!!u.Node.check(e)&&l.someField(e,function(e,t){return o(t)}))}var s=e("assert"),l=e("./types"),u=l.namedTypes,c=(u.Node,l.builtInTypes.array),p=l.builtInTypes.number,f=r.prototype;t.exports=r,r.from=function(e){if(e instanceof r)return e.copy();if(e instanceof l.NodePath){for(var t,n=Object.create(r.prototype),i=[e.value];t=e.parentPath;e=t)i.push(e.name,t.value);return n.stack=i.reverse(),n}return new r(e)},f.copy=function e(){var e=Object.create(r.prototype);return e.stack=this.stack.slice(0),e},f.getName=function(){var e=this.stack,t=e.length;return t>1?e[t-2]:null},f.getValue=function(){var e=this.stack;return e[e.length-1]},f.getNode=function(e){return i(this,~~e)},f.getParentNode=function(e){return i(this,~~e+1)},f.getRootValue=function(){var e=this.stack;return e.length%2===0?e[1]:e[0]},f.call=function(e){for(var t=this.stack,n=t.length,r=t[n-1],i=arguments.length,a=1;a<i;++a){var o=arguments[a];r=r[o],t.push(o,r)}var s=e(this);return t.length=n,s},f.each=function(e){for(var t=this.stack,n=t.length,r=t[n-1],i=arguments.length,a=1;a<i;++a){var o=arguments[a];r=r[o],t.push(o,r)}for(var a=0;a<r.length;++a)a in r&&(t.push(a,r[a]),e(this),t.length-=2);t.length=n},f.map=function(e){for(var t=this.stack,n=t.length,r=t[n-1],i=arguments.length,a=1;a<i;++a){var o=arguments[a];r=r[o],t.push(o,r)}for(var s=new Array(r.length),a=0;a<r.length;++a)a in r&&(t.push(a,r[a]),s[a]=e(this,a),t.length-=2);return t.length=n,s},f.needsParens=function(e){var t=this.getParentNode();if(!t)return!1;var n=this.getName(),r=this.getNode();if(this.getValue()!==r)return!1;if(!u.Expression.check(r))return!1;if("Identifier"===r.type)return!1;if("ParenthesizedExpression"===t.type)return!1;switch(r.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return"MemberExpression"===t.type&&"object"===n&&t.object===r;case"BinaryExpression":case"LogicalExpression":switch(t.type){case"CallExpression":return"callee"===n&&t.callee===r;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return"object"===n&&t.object===r;case"BinaryExpression":case"LogicalExpression":var i=t.operator,l=d[i],c=r.operator,f=d[c];if(l>f)return!0;if(l===f&&"right"===n)return s.strictEqual(t.right,r),!0;default:return!1}case"SequenceExpression":switch(t.type){case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==n;default:return!0}case"YieldExpression":switch(t.type){case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"CallExpression":case"MemberExpression":case"NewExpression":case"ConditionalExpression":case"YieldExpression":return!0;default:return!1}case"Literal":return"MemberExpression"===t.type&&p.check(r.value)&&"object"===n&&t.object===r;case"AssignmentExpression":case"ConditionalExpression":switch(t.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return"callee"===n&&t.callee===r;case"ConditionalExpression":return"test"===n&&t.test===r;case"MemberExpression":return"object"===n&&t.object===r;default:return!1}case"ArrowFunctionExpression":return a(t);case"ObjectExpression":if("ArrowFunctionExpression"===t.type&&"body"===n)return!0;default:if("NewExpression"===t.type&&"callee"===n&&t.callee===r)return o(r)}return!(e===!0||this.canBeFirstInStatement()||!this.firstInStatement())};var d={};[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(e,t){e.forEach(function(e){d[e]=t})}),f.canBeFirstInStatement=function(){var e=this.getNode();return!u.FunctionExpression.check(e)&&!u.ObjectExpression.check(e)},f.firstInStatement=function(){for(var e,t,n,r,i=this.stack,o=i.length-1;o>=0;o-=2)if(u.Node.check(i[o])&&(n=e,r=t,e=i[o-1],t=i[o]),t&&r){if(u.BlockStatement.check(t)&&"body"===e&&0===n)return s.strictEqual(t.body[0],r),!0;if(u.ExpressionStatement.check(t)&&"expression"===n)return s.strictEqual(t.expression,r),!0;if(u.SequenceExpression.check(t)&&"expressions"===e&&0===n)s.strictEqual(t.expressions[0],r);else if(u.CallExpression.check(t)&&"callee"===n)s.strictEqual(t.callee,r);else if(u.MemberExpression.check(t)&&"object"===n)s.strictEqual(t.object,r);else if(u.ConditionalExpression.check(t)&&"test"===n)s.strictEqual(t.test,r);else if(a(t)&&"left"===n)s.strictEqual(t.left,r);else{if(!u.UnaryExpression.check(t)||t.prefix||"argument"!==n)return!1;s.strictEqual(t.argument,r)}}return!0}},{"./types":65,assert:2}],59:[function(e,t,n){function r(e){return e[d]}function i(e,t){c.ok(this instanceof i),c.ok(e.length>0),t?m.assert(t):t=null,Object.defineProperty(this,d,{value:{infos:e,mappings:[],name:t,cachedSourceMap:null}}),t&&r(this).mappings.push(new g(this,{start:this.firstPos(),end:this.lastPos()}))}function a(e){return{line:e.line,indent:e.indent,sliceStart:e.sliceStart,sliceEnd:e.sliceEnd}}function o(e,t){for(var n=0,r=e.length,i=0;i<r;++i)switch(e.charCodeAt(i)){case 9:c.strictEqual(typeof t,"number"),c.ok(t>0);var a=Math.ceil(n/t)*t;a===n?n+=t:n=a;break;case 11:case 12:case 13:case 65279:break;case 32:default:n+=1}return n}function s(e,t){if(e instanceof i)return e;e+="";var n=t&&t.tabWidth,r=e.indexOf("\t")<0,a=!t&&r&&e.length<=S;if(c.ok(n||r,"No tab width specified but encountered tabs in string\n"+e),a&&E.call(b,e))return b[e];var s=new i(e.split(x).map(function(e){var t=w.exec(e)[0];return{line:e,indent:o(t,n),sliceStart:t.length,sliceEnd:e.length}}),f(t).sourceFileName);return a&&(b[e]=s),s}function l(e){return!/\S/.test(e)}function u(e,t,n){var r=e.sliceStart,i=e.sliceEnd,a=Math.max(e.indent,0),o=a+i-r;return"undefined"==typeof n&&(n=o),t=Math.max(t,0),n=Math.min(n,o),n=Math.max(n,t),n<a?(a=n,i=r):i-=o-n,o=n,o-=t,t<a?a-=t:(t-=a,a=0,r+=t),c.ok(a>=0),c.ok(r<=i),c.strictEqual(o,a+i-r),e.indent===a&&e.sliceStart===r&&e.sliceEnd===i?e:{line:e.line,indent:a,sliceStart:r,sliceEnd:i}}var c=e("assert"),p=e("source-map"),f=e("./options").normalize,d=e("private").makeUniqueKey(),h=e("./types"),m=h.builtInTypes.string,y=e("./util").comparePos,g=e("./mapping");n.Lines=i;var v=i.prototype;Object.defineProperties(v,{length:{get:function(){return r(this).infos.length}},name:{get:function(){return r(this).name}}});var b={},E=b.hasOwnProperty,S=10;n.countSpaces=o;var w=/^\s*/,x=/\u000D\u000A|\u000D(?!\u000A)|\u000A|\u2028|\u2029/;n.fromString=s,v.toString=function(e){return this.sliceString(this.firstPos(),this.lastPos(),e)},v.getSourceMap=function(e,t){function n(n){return n=n||{},m.assert(e),n.file=e,t&&(m.assert(t),n.sourceRoot=t),n}if(!e)return null;var i=this,a=r(i);if(a.cachedSourceMap)return n(a.cachedSourceMap.toJSON());var o=new p.SourceMapGenerator(n()),s={};return a.mappings.forEach(function(e){for(var t=e.sourceLines.skipSpaces(e.sourceLoc.start)||e.sourceLines.lastPos(),n=i.skipSpaces(e.targetLoc.start)||i.lastPos();y(t,e.sourceLoc.end)<0&&y(n,e.targetLoc.end)<0;){var r=e.sourceLines.charAt(t),a=i.charAt(n);c.strictEqual(r,a);var l=e.sourceLines.name;if(o.addMapping({source:l,original:{line:t.line,column:t.column},generated:{line:n.line,column:n.column}}),!E.call(s,l)){var u=e.sourceLines.toString();o.setSourceContent(l,u),s[l]=u}i.nextPos(n,!0),e.sourceLines.nextPos(t,!0)}}),a.cachedSourceMap=o,o.toJSON()},v.bootstrapCharAt=function(e){c.strictEqual(typeof e,"object"),c.strictEqual(typeof e.line,"number"),c.strictEqual(typeof e.column,"number");var t=e.line,n=e.column,r=this.toString().split(x),i=r[t-1];return"undefined"==typeof i?"":n===i.length&&t<r.length?"\n":n>=i.length?"":i.charAt(n)},v.charAt=function(e){c.strictEqual(typeof e,"object"),c.strictEqual(typeof e.line,"number"),c.strictEqual(typeof e.column,"number");var t=e.line,n=e.column,i=r(this),a=i.infos,o=a[t-1],s=n;if("undefined"==typeof o||s<0)return"";var l=this.getIndentAt(t);return s<l?" ":(s+=o.sliceStart-l,s===o.sliceEnd&&t<this.length?"\n":s>=o.sliceEnd?"":o.line.charAt(s))},v.stripMargin=function(e,t){if(0===e)return this;if(c.ok(e>0,"negative margin: "+e),t&&1===this.length)return this;var n=r(this),o=new i(n.infos.map(function(n,r){return n.line&&(r>0||!t)&&(n=a(n),n.indent=Math.max(0,n.indent-e)),n}));if(n.mappings.length>0){var s=r(o).mappings;c.strictEqual(s.length,0),n.mappings.forEach(function(n){s.push(n.indent(e,t,!0))})}return o},v.indent=function(e){if(0===e)return this;var t=r(this),n=new i(t.infos.map(function(t){return t.line&&(t=a(t),t.indent+=e),t}));if(t.mappings.length>0){var o=r(n).mappings;c.strictEqual(o.length,0),t.mappings.forEach(function(t){o.push(t.indent(e))})}return n},v.indentTail=function(e){if(0===e)return this;if(this.length<2)return this;var t=r(this),n=new i(t.infos.map(function(t,n){return n>0&&t.line&&(t=a(t),t.indent+=e),t}));if(t.mappings.length>0){var o=r(n).mappings;c.strictEqual(o.length,0),t.mappings.forEach(function(t){o.push(t.indent(e,!0))})}return n},v.getIndentAt=function(e){c.ok(e>=1,"no line "+e+" (line numbers start from 1)");var t=r(this),n=t.infos[e-1];return Math.max(n.indent,0)},v.guessTabWidth=function(){var e=r(this);if(E.call(e,"cachedTabWidth"))return e.cachedTabWidth;for(var t=[],n=0,i=1,a=this.length;i<=a;++i){var o=e.infos[i-1],s=o.line.slice(o.sliceStart,o.sliceEnd);if(!l(s)){var u=Math.abs(o.indent-n);t[u]=~~t[u]+1,n=o.indent}}for(var c=-1,p=2,f=1;f<t.length;f+=1)E.call(t,f)&&t[f]>c&&(c=t[f],p=f);return e.cachedTabWidth=p},v.isOnlyWhitespace=function(){return l(this.toString())},v.isPrecededOnlyByWhitespace=function(e){var t=r(this),n=t.infos[e.line-1],i=Math.max(n.indent,0),a=e.column-i;if(a<=0)return!0;var o=n.sliceStart,s=Math.min(o+a,n.sliceEnd),u=n.line.slice(o,s);return l(u)},v.getLineLength=function(e){var t=r(this),n=t.infos[e-1];return this.getIndentAt(e)+n.sliceEnd-n.sliceStart},v.nextPos=function(e,t){var n=Math.max(e.line,0),r=Math.max(e.column,0);return r<this.getLineLength(n)?(e.column+=1,!t||!!this.skipSpaces(e,!1,!0)):n<this.length&&(e.line+=1,e.column=0,!t||!!this.skipSpaces(e,!1,!0))},v.prevPos=function(e,t){var n=e.line,r=e.column;if(r<1){if(n-=1,n<1)return!1;r=this.getLineLength(n)}else r=Math.min(r-1,this.getLineLength(n));return e.line=n,e.column=r,!t||!!this.skipSpaces(e,!0,!0)},v.firstPos=function(){return{line:1,column:0}},v.lastPos=function(){return{line:this.length,column:this.getLineLength(this.length)}},v.skipSpaces=function(e,t,n){if(e=e?n?e:{line:e.line,column:e.column}:t?this.lastPos():this.firstPos(),t){for(;this.prevPos(e);)if(!l(this.charAt(e))&&this.nextPos(e))return e;return null}for(;l(this.charAt(e));)if(!this.nextPos(e))return null;return e},v.trimLeft=function(){var e=this.skipSpaces(this.firstPos(),!1,!0);return e?this.slice(e):k},v.trimRight=function(){var e=this.skipSpaces(this.lastPos(),!0,!0);return e?this.slice(this.firstPos(),e):k},v.trim=function(){var e=this.skipSpaces(this.firstPos(),!1,!0);if(null===e)return k;var t=this.skipSpaces(this.lastPos(),!0,!0);return c.notStrictEqual(t,null),this.slice(e,t)},v.eachPos=function(e,t,n){var r=this.firstPos();if(t&&(r.line=t.line,r.column=t.column),!n||this.skipSpaces(r,!1,!0))do e.call(this,r);while(this.nextPos(r,n))},v.bootstrapSlice=function(e,t){var n=this.toString().split(x).slice(e.line-1,t.line);return n.push(n.pop().slice(0,t.column)),n[0]=n[0].slice(e.column),s(n.join("\n"))},v.slice=function(e,t){if(!t){if(!e)return this;t=this.lastPos()}var n=r(this),a=n.infos.slice(e.line-1,t.line);e.line===t.line?a[0]=u(a[0],e.column,t.column):(c.ok(e.line<t.line),a[0]=u(a[0],e.column),a.push(u(a.pop(),0,t.column)));var o=new i(a);if(n.mappings.length>0){var s=r(o).mappings;c.strictEqual(s.length,0),n.mappings.forEach(function(n){var r=n.slice(this,e,t);r&&s.push(r)},this)}return o},v.bootstrapSliceString=function(e,t,n){return this.slice(e,t).toString(n)},v.sliceString=function(e,t,n){if(!t){if(!e)return this;t=this.lastPos()}n=f(n);for(var i=r(this).infos,a=[],s=n.tabWidth,c=e.line;c<=t.line;++c){var p=i[c-1];c===e.line?p=c===t.line?u(p,e.column,t.column):u(p,e.column):c===t.line&&(p=u(p,0,t.column));var d=Math.max(p.indent,0),h=p.line.slice(0,p.sliceStart);if(n.reuseWhitespace&&l(h)&&o(h,n.tabWidth)===d)a.push(p.line.slice(0,p.sliceEnd));else{var m=0,y=d;n.useTabs&&(m=Math.floor(d/s),y-=m*s);var g="";m>0&&(g+=new Array(m+1).join("\t")),y>0&&(g+=new Array(y+1).join(" ")),g+=p.line.slice(p.sliceStart,p.sliceEnd),a.push(g)}}return a.join(n.lineTerminator)},v.isEmpty=function(){return this.length<2&&this.getLineLength(1)<1},v.join=function(e){function t(e){if(null!==e){if(o){var t=e.infos[0],n=new Array(t.indent+1).join(" "),r=c.length,i=Math.max(o.indent,0)+o.sliceEnd-o.sliceStart;o.line=o.line.slice(0,o.sliceEnd)+n+t.line.slice(t.sliceStart,t.sliceEnd),o.sliceEnd=o.line.length,e.mappings.length>0&&e.mappings.forEach(function(e){p.push(e.add(r,i))})}else e.mappings.length>0&&p.push.apply(p,e.mappings);e.infos.forEach(function(e,t){(!o||t>0)&&(o=a(e),c.push(o))})}}function n(e,n){n>0&&t(u),t(e)}var o,l=this,u=r(l),c=[],p=[];if(e.map(function(e){var t=s(e);return t.isEmpty()?null:r(t)}).forEach(l.isEmpty()?t:n),c.length<1)return k;var f=new i(c);return r(f).mappings=p,f},n.concat=function(e){return k.join(e)},v.concat=function(e){var t=arguments,n=[this];return n.push.apply(n,t),c.strictEqual(n.length,t.length+1),k.join(n)};var k=s("")},{"./mapping":60,"./options":61,"./types":65,"./util":66,assert:2,private:56,"source-map":94}],60:[function(e,t,n){function r(e,t,n){s.ok(this instanceof r),s.ok(e instanceof f.Lines),c.assert(t),n?s.ok(u.check(n.start.line)&&u.check(n.start.column)&&u.check(n.end.line)&&u.check(n.end.column)):n=t,Object.defineProperties(this,{sourceLines:{value:e},sourceLoc:{value:t},targetLoc:{value:n}})}function i(e,t,n){return{line:e.line+t-1,column:1===e.line?e.column+n:e.column}}function a(e,t,n){return{line:e.line-t+1,column:e.line===t?e.column-n:e.column}}function o(e,t,n,r,i){s.ok(e instanceof f.Lines),s.ok(n instanceof f.Lines),p.assert(t),p.assert(r),p.assert(i);var a=d(r,i);if(0===a)return t;if(a<0){var o=e.skipSpaces(t),l=n.skipSpaces(r),u=i.line-l.line;for(o.line+=u,l.line+=u,u>0?(o.column=0,l.column=0):s.strictEqual(u,0);d(l,i)<0&&n.nextPos(l,!0);)s.ok(e.nextPos(o,!0)),s.strictEqual(e.charAt(o),n.charAt(l))}else{var o=e.skipSpaces(t,!0),l=n.skipSpaces(r,!0),u=i.line-l.line;for(o.line+=u,l.line+=u,u<0?(o.column=e.getLineLength(o.line),l.column=n.getLineLength(l.line)):s.strictEqual(u,0);d(i,l)<0&&n.prevPos(l,!0);)s.ok(e.prevPos(o,!0)),s.strictEqual(e.charAt(o),n.charAt(l))}return o}var s=e("assert"),l=e("./types"),u=(l.builtInTypes.string,l.builtInTypes.number),c=l.namedTypes.SourceLocation,p=l.namedTypes.Position,f=e("./lines"),d=e("./util").comparePos,h=r.prototype;t.exports=r,h.slice=function(e,t,n){function i(r){var i=u[r],a=c[r],p=t;return"end"===r?p=n:s.strictEqual(r,"start"),o(l,i,e,a,p)}s.ok(e instanceof f.Lines),p.assert(t),n?p.assert(n):n=e.lastPos();var l=this.sourceLines,u=this.sourceLoc,c=this.targetLoc;if(d(t,c.start)<=0)if(d(c.end,n)<=0)c={start:a(c.start,t.line,t.column),end:a(c.end,t.line,t.column)};else{if(d(n,c.start)<=0)return null;u={start:u.start,end:i("end")},c={start:a(c.start,t.line,t.column),end:a(n,t.line,t.column)}}else{if(d(c.end,t)<=0)return null;d(c.end,n)<=0?(u={start:i("start"),end:u.end},c={start:{line:1,column:0},end:a(c.end,t.line,t.column)}):(u={start:i("start"),end:i("end")},c={start:{line:1,column:0},end:a(n,t.line,t.column)})}return new r(this.sourceLines,u,c)},h.add=function(e,t){return new r(this.sourceLines,this.sourceLoc,{start:i(this.targetLoc.start,e,t),end:i(this.targetLoc.end,e,t)})},h.subtract=function(e,t){return new r(this.sourceLines,this.sourceLoc,{start:a(this.targetLoc.start,e,t),end:a(this.targetLoc.end,e,t)})},h.indent=function(e,t,n){if(0===e)return this;var i=this.targetLoc,a=i.start.line,o=i.end.line;if(t&&1===a&&1===o)return this;if(i={start:i.start,end:i.end},!t||a>1){var s=i.start.column+e;i.start={line:a,column:n?Math.max(0,s):s}}if(!t||o>1){var l=i.end.column+e;i.end={line:o,column:n?Math.max(0,l):l}}return new r(this.sourceLines,this.sourceLoc,i)}},{"./lines":59,"./types":65,"./util":66,assert:2}],61:[function(e,t,n){var r={esprima:e("esprima-fb"),tabWidth:4,useTabs:!1,reuseWhitespace:!0,lineTerminator:e("os").EOL,wrapColumn:74,sourceFileName:null,sourceMapName:null,sourceRoot:null,inputSourceMap:null,range:!1,tolerant:!0,quote:null,trailingComma:!1},i=r.hasOwnProperty;n.normalize=function(e){function t(t){return i.call(e,t)?e[t]:r[t]}return e=e||r,{tabWidth:+t("tabWidth"),useTabs:!!t("useTabs"),reuseWhitespace:!!t("reuseWhitespace"),lineTerminator:t("lineTerminator"),wrapColumn:Math.max(t("wrapColumn"),0),sourceFileName:t("sourceFileName"),sourceMapName:t("sourceMapName"),sourceRoot:t("sourceRoot"),inputSourceMap:t("inputSourceMap"),esprima:t("esprima"),range:t("range"),tolerant:t("tolerant"),quote:t("quote"),trailingComma:t("trailingComma")}}},{"esprima-fb":55,os:11}],62:[function(e,t,n){function r(e){i.ok(this instanceof r),this.lines=e,this.indent=0}var i=e("assert"),a=e("./types"),o=(a.namedTypes,a.builders),s=a.builtInTypes.object,l=a.builtInTypes.array,u=(a.builtInTypes.function,e("./patcher").Patcher,e("./options").normalize),c=e("./lines").fromString,p=e("./comments").attach,f=e("./util");n.parse=function(e,t){t=u(t);var n=c(e,t),i=n.toString({tabWidth:t.tabWidth,reuseWhitespace:!1,useTabs:!1}),a=[],s=t.esprima.parse(i,{loc:!0,locations:!0,range:t.range,comment:!0,onComment:a,tolerant:t.tolerant,ecmaVersion:6,sourceType:"module"});s.loc=s.loc||{start:n.firstPos(),end:n.lastPos()},s.loc.lines=n,s.loc.indent=0;var l=f.getTrueLoc(s,n);s.loc.start=l.start,s.loc.end=l.end,s.comments&&(a=s.comments,delete s.comments);var d=o.file(s);return d.loc={lines:n,indent:0,start:n.firstPos(),end:n.lastPos()},p(a,s.body.length?d.program:d,n),new r(n).copy(d)};var d=r.prototype;d.copy=function(e){if(l.check(e))return e.map(this.copy,this);if(!s.check(e))return e;f.fixFaultyLocations(e);var t=Object.create(Object.getPrototypeOf(e),{original:{value:e,configurable:!1,enumerable:!1,writable:!0}}),n=e.loc,r=this.indent,i=r;n&&(("Block"===e.type||"Line"===e.type||this.lines.isPrecededOnlyByWhitespace(n.start))&&(i=this.indent=n.start.column),n.lines=this.lines,n.indent=i);for(var a=Object.keys(e),o=a.length,u=0;u<o;++u){var c=a[u];"loc"===c?t[c]=e[c]:t[c]=this.copy(e[c])}return this.indent=r,t}},{"./comments":57,"./lines":59,"./options":61,"./patcher":63,"./types":65,"./util":66,assert:2}],63:[function(e,t,n){function r(e){d.ok(this instanceof r),d.ok(e instanceof h.Lines);var t=this,n=[];t.replace=function(e,t){k.check(t)&&(t=h.fromString(t)),n.push({lines:t,start:e.start,end:e.end})},t.get=function(t){function r(t,n){d.ok(E(t,n)<=0),a.push(e.slice(t,n))}t=t||{start:{line:1,column:0},end:{line:e.length,column:e.getLineLength(e.length)}};var i=t.start,a=[];return n.sort(function(e,t){return E(e.start,t.start)}).forEach(function(e){E(i,e.start)>0||(r(i,e.start),a.push(e.lines),i=e.end)}),r(i,t.end),h.concat(a)}}function i(e){var t=[];return e.comments&&e.comments.length>0&&e.comments.forEach(function(e){(e.leading||e.trailing)&&t.push(e)}),t}function a(e,t){var n=e.getValue();y.assert(n);var r=n.original;if(y.assert(r),d.deepEqual(t,[]),n.type!==r.type)return!1;var i=new S(r),a=f(e,i,t);return a||(t.length=0),a}function o(e,t,n){var r=e.getValue(),i=t.getValue();return r===i||(x.check(r)?s(e,t,n):!!w.check(r)&&l(e,t,n))}function s(e,t,n){var r=e.getValue(),i=t.getValue();x.assert(r);var a=r.length;if(!x.check(i)||i.length!==a)return!1;for(var s=0;s<a;++s){e.stack.push(s,r[s]),t.stack.push(s,i[s]);var l=o(e,t,n);if(e.stack.length-=2,t.stack.length-=2,!l)return!1}return!0}function l(e,t,n){var r=e.getValue();if(w.assert(r),null===r.original)return!1;var i=t.getValue();if(!w.check(i))return!1;if(y.check(r)){if(!y.check(i))return!1;if(r.type===i.type){var a=[];if(f(e,t,a))n.push.apply(n,a);else{if(!i.loc)return!1;n.push({oldPath:t.copy(),newPath:e.copy()})}return!0}return!!(g.check(r)&&g.check(i)&&i.loc)&&(n.push({oldPath:t.copy(),newPath:e.copy()}),!0)}return f(e,t,n)}function u(e){var t=e.getValue(),n=t.loc,r=n&&n.lines;if(r){var i=L;for(i.line=n.start.line,i.column=n.start.column;r.prevPos(i);){var a=r.charAt(i);if("("===a)return E(e.getRootValue().loc.start,i)<=0;if(C.test(a))return!1}}return!1}function c(e){var t=e.getValue(),n=t.loc,r=n&&n.lines;if(r){var i=L;i.line=n.end.line,i.column=n.end.column;do{var a=r.charAt(i);if(")"===a)return E(i,e.getRootValue().loc.end)<=0;if(C.test(a))return!1}while(r.nextPos(i))}return!1}function p(e){return u(e)&&c(e)}function f(e,t,n){var r=e.getValue(),i=t.getValue();if(w.assert(r),w.assert(i),null===r.original)return!1;if(!e.canBeFirstInStatement()&&e.firstInStatement()&&!u(t))return!1;if(e.needsParens(!0)&&!p(t))return!1;for(var a in b.getUnionOfKeys(r,i))if("loc"!==a){e.stack.push(a,m.getFieldValue(r,a)),t.stack.push(a,m.getFieldValue(i,a));var s=o(e,t,n);if(e.stack.length-=2,t.stack.length-=2,!s)return!1}return!0}var d=e("assert"),h=e("./lines"),m=e("./types"),y=(m.getFieldValue,m.namedTypes.Printable),g=m.namedTypes.Expression,v=m.namedTypes.SourceLocation,b=e("./util"),E=b.comparePos,S=e("./fast-path"),w=m.builtInTypes.object,x=m.builtInTypes.array,k=m.builtInTypes.string,T=/[0-9a-z_$]/i;n.Patcher=r;var A=r.prototype;A.tryToReprintComments=function(e,t,n){var r=this;if(!e.comments&&!t.comments)return!0;var a=S.from(e),o=S.from(t);a.stack.push("comments",i(e)),o.stack.push("comments",i(t));var l=[],u=s(a,o,l);return u&&l.length>0&&l.forEach(function(e){var t=e.oldPath.getValue();d.ok(t.leading||t.trailing),r.replace(t.loc,n(e.newPath).indentTail(t.loc.indent))}),u},A.deleteComments=function(e){if(e.comments){var t=this;e.comments.forEach(function(n){n.leading?t.replace({start:n.loc.start,end:e.loc.lines.skipSpaces(n.loc.end,!1,!1)},""):n.trailing&&t.replace({start:e.loc.lines.skipSpaces(n.loc.start,!0,!1),end:n.loc.end},"")})}},n.getReprinter=function(e){d.ok(e instanceof S);var t=e.getValue();if(y.check(t)){var n=t.original,i=n&&n.loc,o=i&&i.lines,s=[];if(o&&a(e,s))return function(e){var t=new r(o);return s.forEach(function(n){var r=n.newPath.getValue(),i=n.oldPath.getValue();v.assert(i.loc,!0);var a=!t.tryToReprintComments(r,i,e);a&&t.deleteComments(i);var s=b.copyPos(i.loc.start),l=o.prevPos(s)&&T.test(o.charAt(s)),u=e(n.newPath,a).indentTail(i.loc.indent),c=T.test(o.charAt(i.loc.end));if(l||c){var p=[];l&&p.push(" "),p.push(u),c&&p.push(" "),u=h.concat(p)}t.replace(i.loc,u)}),t.get(i).indentTail(-n.loc.indent)}}};var L={line:1,column:0},C=/\S/},{"./fast-path":58,"./lines":59,"./types":65,"./util":66,assert:2}],64:[function(e,t,n){function r(e,t){E.ok(this instanceof r),P.assert(e),this.code=e,t&&(_.assert(t),this.map=t)}function i(e){function t(e){return E.ok(e instanceof I),S(e,n)}function n(e,n){if(n)return t(e);if(E.ok(e instanceof I),!c){var r=p.tabWidth,i=e.getNode().loc;if(i&&i.lines&&i.lines.guessTabWidth){p.tabWidth=i.lines.guessTabWidth();
var a=s(e);return p.tabWidth=r,a}}return s(e)}function s(e){var t=A(e);return t?a(e,t(n)):l(e)}function l(e){return o(e,p,t)}function u(e){return o(e,p,u)}E.ok(this instanceof i);var c=e&&e.tabWidth,p=T(e);E.notStrictEqual(p,e),p.sourceFileName=null,this.print=function(e){if(!e)return N;var t=n(I.from(e),!0);return new r(t.toString(p),j.composeSourceMaps(p.inputSourceMap,t.getSourceMap(p.sourceMapName,p.sourceRoot)))},this.printGenerically=function(e){if(!e)return N;var t=I.from(e),n=p.reuseWhitespace;p.reuseWhitespace=!1;var i=new r(u(t).toString(p));return p.reuseWhitespace=n,i}}function a(e,t){return e.needsParens()?k(["(",t,")"]):t}function o(e,t,n){return E.ok(e instanceof I),a(e,s(e,t,n))}function s(e,t,n){var r=e.getValue();if(!r)return x("");if("string"==typeof r)return x(r,t);switch(C.Printable.assert(r),r.type){case"File":return e.call(n,"program");case"Program":return e.call(function(e){return l(e,t,n)},"body");case"Noop":case"EmptyStatement":return x("");case"ExpressionStatement":return k([e.call(n,"expression"),";"]);case"ParenthesizedExpression":return k(["(",e.call(n,"expression"),")"]);case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":return x(" ").join([e.call(n,"left"),r.operator,e.call(n,"right")]);case"AssignmentPattern":return k([e.call(n,"left"),"=",e.call(n,"right")]);case"MemberExpression":var i=[e.call(n,"object")],a=e.call(n,"property");return r.computed?i.push("[",a,"]"):i.push(".",a),k(i);case"MetaProperty":return k([e.call(n,"meta"),".",e.call(n,"property")]);case"BindExpression":var i=[];return r.object&&i.push(e.call(n,"object")),i.push("::",e.call(n,"callee")),k(i);case"Path":return x(".").join(r.body);case"Identifier":return k([x(r.name,t),e.call(n,"typeAnnotation")]);case"SpreadElement":case"SpreadElementPattern":case"SpreadProperty":case"SpreadPropertyPattern":case"RestElement":return k(["...",e.call(n,"argument")]);case"FunctionDeclaration":case"FunctionExpression":var i=[];return r.async&&i.push("async "),i.push("function"),r.generator&&i.push("*"),r.id&&i.push(" ",e.call(n,"id"),e.call(n,"typeParameters")),i.push("(",d(e,t,n),")",e.call(n,"returnType")," ",e.call(n,"body")),k(i);case"ArrowFunctionExpression":var i=[];return r.async&&i.push("async "),1!==r.params.length||r.rest||"SpreadElementPattern"===r.params[0].type||"RestElement"===r.params[0].type?i.push("(",d(e,t,n),")"):i.push(e.call(n,"params",0)),i.push(" => ",e.call(n,"body")),k(i);case"MethodDefinition":var i=[];return r.static&&i.push("static "),i.push(c(e,t,n)),k(i);case"YieldExpression":var i=["yield"];return r.delegate&&i.push("*"),r.argument&&i.push(" ",e.call(n,"argument")),k(i);case"AwaitExpression":var i=["await"];return r.all&&i.push("*"),r.argument&&i.push(" ",e.call(n,"argument")),k(i);case"ModuleDeclaration":var i=["module",e.call(n,"id")];return r.source?(E.ok(!r.body),i.push("from",e.call(n,"source"))):i.push(e.call(n,"body")),x(" ").join(i);case"ImportSpecifier":var i=[];return r.imported?(i.push(e.call(n,"imported")),r.local&&r.local.name!==r.imported.name&&i.push(" as ",e.call(n,"local"))):r.id&&(i.push(e.call(n,"id")),r.name&&i.push(" as ",e.call(n,"name"))),k(i);case"ExportSpecifier":var i=[];return r.local?(i.push(e.call(n,"local")),r.exported&&r.exported.name!==r.local.name&&i.push(" as ",e.call(n,"exported"))):r.id&&(i.push(e.call(n,"id")),r.name&&i.push(" as ",e.call(n,"name"))),k(i);case"ExportBatchSpecifier":return x("*");case"ImportNamespaceSpecifier":var i=["* as "];return r.local?i.push(e.call(n,"local")):r.id&&i.push(e.call(n,"id")),k(i);case"ImportDefaultSpecifier":return r.local?e.call(n,"local"):e.call(n,"id");case"ExportDeclaration":var i=["export"];if(r.default)i.push(" default");else if(r.specifiers&&r.specifiers.length>0)return 1===r.specifiers.length&&"ExportBatchSpecifier"===r.specifiers[0].type?i.push(" *"):i.push(" { ",x(", ").join(e.map(n,"specifiers"))," }"),r.source&&i.push(" from ",e.call(n,"source")),i.push(";"),k(i);if(r.declaration){var o=e.call(n,"declaration");i.push(" ",o),";"!==m(o)&&i.push(";")}return k(i);case"ExportDefaultDeclaration":return k(["export default ",e.call(n,"declaration")]);case"ExportNamedDeclaration":var i=["export "];return r.declaration&&i.push(e.call(n,"declaration")),r.specifiers&&r.specifiers.length>0&&i.push(r.declaration?", {":"{",x(", ").join(e.map(n,"specifiers")),"}"),r.source&&i.push(" from ",e.call(n,"source")),k(i);case"ExportAllDeclaration":var i=["export *"];return r.exported&&i.push(" as ",e.call(n,"exported")),k([" from ",e.call(n,"source")]);case"ExportNamespaceSpecifier":return k(["* as ",e.call(n,"exported")]);case"ExportDefaultSpecifier":return e.call(n,"exported");case"ImportDeclaration":var i=["import "];if(r.importKind&&"value"!==r.importKind&&i.push(r.importKind+" "),r.specifiers&&r.specifiers.length>0){var s=!1;e.each(function(e){var t=e.getName();t>0&&i.push(", ");var r=e.getValue();C.ImportDefaultSpecifier.check(r)||C.ImportNamespaceSpecifier.check(r)?E.strictEqual(s,!1):(C.ImportSpecifier.assert(r),s||(s=!0,i.push("{"))),i.push(n(e))},"specifiers"),s&&i.push("}"),i.push(" from ")}return i.push(e.call(n,"source"),";"),k(i);case"BlockStatement":var u=e.call(function(e){return l(e,t,n)},"body");return u.isEmpty()?x("{}"):k(["{\n",u.indent(t.tabWidth),"\n}"]);case"ReturnStatement":var i=["return"];if(r.argument){var g=e.call(n,"argument");g.length>1&&(C.XJSElement&&C.XJSElement.check(r.argument)||C.JSXElement&&C.JSXElement.check(r.argument))?i.push(" (\n",g.indent(t.tabWidth),"\n)"):i.push(" ",g)}return i.push(";"),k(i);case"CallExpression":return k([e.call(n,"callee"),f(e,t,n)]);case"ObjectExpression":case"ObjectPattern":case"ObjectTypeAnnotation":var b=!1,S="ObjectTypeAnnotation"===r.type,w=S?";":",",T=[];S&&T.push("indexers","callProperties"),T.push("properties");var A=0;T.forEach(function(e){A+=r[e].length});var L=S&&1===A||0===A,i=[L?"{":"{\n"],P=0;return T.forEach(function(r){e.each(function(e){var r=n(e);L||(r=r.indent(t.tabWidth));var a=!S&&r.length>1;a&&b&&i.push("\n"),i.push(r),P<A-1?(i.push(w+(a?"\n\n":"\n")),b=!a):1!==A&&S?i.push(w):t.trailingComma&&i.push(w),P++},r)}),i.push(L?"}":"\n}"),k(i);case"PropertyPattern":return k([e.call(n,"key"),": ",e.call(n,"pattern")]);case"Property":if(r.method||"get"===r.kind||"set"===r.kind)return c(e,t,n);var i=[];r.decorators&&e.each(function(e){i.push(n(e),"\n")},"decorators");var _=e.call(n,"key");return r.computed?i.push("[",_,"]"):i.push(_),r.shorthand||i.push(": ",e.call(n,"value")),k(i);case"Decorator":return k(["@",e.call(n,"expression")]);case"ArrayExpression":case"ArrayPattern":var I=r.elements,A=I.length,j=e.map(n,"elements"),O=x(", ").join(j),L=O.getLineLength(1)<=t.wrapColumn,i=[L?"[":"[\n"];return e.each(function(e){var n=e.getName(),r=e.getValue();if(r){var a=j[n];L?n>0&&i.push(" "):a=a.indent(t.tabWidth),i.push(a),(n<A-1||!L&&t.trailingComma)&&i.push(","),L||i.push("\n")}else i.push(",")},"elements"),i.push("]"),k(i);case"SequenceExpression":return x(", ").join(e.map(n,"expressions"));case"ThisExpression":return x("this");case"Super":return x("super");case"Literal":return"string"!=typeof r.value?x(r.value,t):x(v(r.value,t),t);case"ModuleSpecifier":if(r.local)throw new Error("The ESTree ModuleSpecifier type should be abstract");return x(v(r.value,t),t);case"UnaryExpression":var i=[r.operator];return/[a-z]$/.test(r.operator)&&i.push(" "),i.push(e.call(n,"argument")),k(i);case"UpdateExpression":var i=[e.call(n,"argument"),r.operator];return r.prefix&&i.reverse(),k(i);case"ConditionalExpression":return k(["(",e.call(n,"test")," ? ",e.call(n,"consequent")," : ",e.call(n,"alternate"),")"]);case"NewExpression":var i=["new ",e.call(n,"callee")],M=r.arguments;return M&&i.push(f(e,t,n)),k(i);case"VariableDeclaration":var i=[r.kind," "],N=0,j=e.map(function(e){var t=n(e);return N=Math.max(t.length,N),t},"declarations");1===N?i.push(x(", ").join(j)):j.length>1?i.push(x(",\n").join(j).indentTail(r.kind.length+1)):i.push(j[0]);var D=e.getParentNode();return C.ForStatement.check(D)||C.ForInStatement.check(D)||C.ForOfStatement&&C.ForOfStatement.check(D)||i.push(";"),k(i);case"VariableDeclarator":return r.init?x(" = ").join([e.call(n,"id"),e.call(n,"init")]):e.call(n,"id");case"WithStatement":return k(["with (",e.call(n,"object"),") ",e.call(n,"body")]);case"IfStatement":var R=h(e.call(n,"consequent"),t),i=["if (",e.call(n,"test"),")",R];return r.alternate&&i.push(y(R)?" else":"\nelse",h(e.call(n,"alternate"),t)),k(i);case"ForStatement":var B=e.call(n,"init"),F=B.length>1?";\n":"; ",X="for (",U=x(F).join([B,e.call(n,"test"),e.call(n,"update")]).indentTail(X.length),J=k([X,U,")"]),q=h(e.call(n,"body"),t),i=[J];return J.length>1&&(i.push("\n"),q=q.trimLeft()),i.push(q),k(i);case"WhileStatement":return k(["while (",e.call(n,"test"),")",h(e.call(n,"body"),t)]);case"ForInStatement":return k([r.each?"for each (":"for (",e.call(n,"left")," in ",e.call(n,"right"),")",h(e.call(n,"body"),t)]);case"ForOfStatement":return k(["for (",e.call(n,"left")," of ",e.call(n,"right"),")",h(e.call(n,"body"),t)]);case"DoWhileStatement":var V=k(["do",h(e.call(n,"body"),t)]),i=[V];return y(V)?i.push(" while"):i.push("\nwhile"),i.push(" (",e.call(n,"test"),");"),k(i);case"DoExpression":var z=e.call(function(e){return l(e,t,n)},"body");return k(["do {\n",z.indent(t.tabWidth),"\n}"]);case"BreakStatement":var i=["break"];return r.label&&i.push(" ",e.call(n,"label")),i.push(";"),k(i);case"ContinueStatement":var i=["continue"];return r.label&&i.push(" ",e.call(n,"label")),i.push(";"),k(i);case"LabeledStatement":return k([e.call(n,"label"),":\n",e.call(n,"body")]);case"TryStatement":var i=["try ",e.call(n,"block")];return r.handler?i.push(" ",e.call(n,"handler")):r.handlers&&e.each(function(e){i.push(" ",n(e))},"handlers"),r.finalizer&&i.push(" finally ",e.call(n,"finalizer")),k(i);case"CatchClause":var i=["catch (",e.call(n,"param")];return r.guard&&i.push(" if ",e.call(n,"guard")),i.push(") ",e.call(n,"body")),k(i);case"ThrowStatement":return k(["throw ",e.call(n,"argument"),";"]);case"SwitchStatement":return k(["switch (",e.call(n,"discriminant"),") {\n",x("\n").join(e.map(n,"cases")),"\n}"]);case"SwitchCase":var i=[];return r.test?i.push("case ",e.call(n,"test"),":"):i.push("default:"),r.consequent.length>0&&i.push("\n",e.call(function(e){return l(e,t,n)},"consequent").indent(t.tabWidth)),k(i);case"DebuggerStatement":return x("debugger;");case"XJSAttribute":case"JSXAttribute":var i=[e.call(n,"name")];return r.value&&i.push("=",e.call(n,"value")),k(i);case"XJSIdentifier":case"JSXIdentifier":return x(r.name,t);case"XJSNamespacedName":case"JSXNamespacedName":return x(":").join([e.call(n,"namespace"),e.call(n,"name")]);case"XJSMemberExpression":case"JSXMemberExpression":return x(".").join([e.call(n,"object"),e.call(n,"property")]);case"XJSSpreadAttribute":case"JSXSpreadAttribute":return k(["{...",e.call(n,"argument"),"}"]);case"XJSExpressionContainer":case"JSXExpressionContainer":return k(["{",e.call(n,"expression"),"}"]);case"XJSElement":case"JSXElement":var W=e.call(n,"openingElement");if(r.openingElement.selfClosing)return E.ok(!r.closingElement),W;var $=k(e.map(function(e){var t=e.getValue();if(C.Literal.check(t)&&"string"==typeof t.value){if(/\S/.test(t.value))return t.value.replace(/^\s+|\s+$/g,"");if(/\n/.test(t.value))return"\n"}return n(e)},"children")).indentTail(t.tabWidth),H=e.call(n,"closingElement");return k([W,$,H]);case"XJSOpeningElement":case"JSXOpeningElement":var i=["<",e.call(n,"name")],G=[];e.each(function(e){G.push(" ",n(e))},"attributes");var Y=k(G),K=Y.length>1||Y.getLineLength(1)>t.wrapColumn;return K&&(G.forEach(function(e,t){" "===e&&(E.strictEqual(t%2,0),G[t]="\n")}),Y=k(G).indentTail(t.tabWidth)),i.push(Y,r.selfClosing?" />":">"),k(i);case"XJSClosingElement":case"JSXClosingElement":return k(["</",e.call(n,"name"),">"]);case"XJSText":case"JSXText":return x(r.value,t);case"XJSEmptyExpression":case"JSXEmptyExpression":return x("");case"TypeAnnotatedIdentifier":return k([e.call(n,"annotation")," ",e.call(n,"identifier")]);case"ClassBody":return 0===r.body.length?x("{}"):k(["{\n",e.call(function(e){return l(e,t,n)},"body").indent(t.tabWidth),"\n}"]);case"ClassPropertyDefinition":var i=["static ",e.call(n,"definition")];return C.MethodDefinition.check(r.definition)||i.push(";"),k(i);case"ClassProperty":var i=[];return r.static&&i.push("static "),i.push(e.call(n,"key")),r.typeAnnotation&&i.push(e.call(n,"typeAnnotation")),r.value&&i.push(" = ",e.call(n,"value")),i.push(";"),k(i);case"ClassDeclaration":case"ClassExpression":var i=["class"];return r.id&&i.push(" ",e.call(n,"id"),e.call(n,"typeParameters")),r.superClass&&i.push(" extends ",e.call(n,"superClass"),e.call(n,"superTypeParameters")),r.implements&&i.push(" implements ",x(", ").join(e.map(n,"implements"))),i.push(" ",e.call(n,"body")),k(i);case"TemplateElement":return x(r.value.raw,t);case"TemplateLiteral":var Q=e.map(n,"expressions"),i=["`"];return e.each(function(e){var t=e.getName();i.push(n(e)),t<Q.length&&i.push("${",Q[t],"}")},"quasis"),i.push("`"),k(i);case"TaggedTemplateExpression":return k([e.call(n,"tag"),e.call(n,"quasi")]);case"Node":case"Printable":case"SourceLocation":case"Position":case"Statement":case"Function":case"Pattern":case"Expression":case"Declaration":case"Specifier":case"NamedSpecifier":case"Comment":case"MemberTypeAnnotation":case"TupleTypeAnnotation":case"Type":throw new Error("unprintable type: "+JSON.stringify(r.type));case"CommentBlock":case"Block":return k(["/*",x(r.value,t),"*/"]);case"CommentLine":case"Line":return k(["//",x(r.value,t)]);case"TypeAnnotation":var i=[];return r.typeAnnotation?("FunctionTypeAnnotation"!==r.typeAnnotation.type&&i.push(": "),i.push(e.call(n,"typeAnnotation")),k(i)):x("");case"AnyTypeAnnotation":return x("any",t);case"MixedTypeAnnotation":return x("mixed",t);case"ArrayTypeAnnotation":return k([e.call(n,"elementType"),"[]"]);case"BooleanTypeAnnotation":return x("boolean",t);case"BooleanLiteralTypeAnnotation":return E.strictEqual(typeof r.value,"boolean"),x(""+r.value,t);case"DeclareClass":return k([x("declare class ",t),e.call(n,"id")," ",e.call(n,"body")]);case"DeclareFunction":return k([x("declare function ",t),e.call(n,"id"),";"]);case"DeclareModule":return k([x("declare module ",t),e.call(n,"id")," ",e.call(n,"body")]);case"DeclareVariable":return k([x("declare var ",t),e.call(n,"id"),";"]);case"FunctionTypeAnnotation":var i=[],Z=e.getParentNode(0),ee=!(C.ObjectTypeCallProperty.check(Z)||C.DeclareFunction.check(e.getParentNode(2))),te=ee&&!C.FunctionTypeParam.check(Z);return te&&i.push(": "),i.push("(",x(", ").join(e.map(n,"params")),")"),r.returnType&&i.push(ee?" => ":": ",e.call(n,"returnType")),k(i);case"FunctionTypeParam":return k([e.call(n,"name"),": ",e.call(n,"typeAnnotation")]);case"GenericTypeAnnotation":return k([e.call(n,"id"),e.call(n,"typeParameters")]);case"InterfaceDeclaration":var i=[x("interface ",t),e.call(n,"id"),e.call(n,"typeParameters")," "];return r.extends&&i.push("extends ",x(", ").join(e.map(n,"extends"))),i.push(" ",e.call(n,"body")),k(i);case"ClassImplements":case"InterfaceExtends":return k([e.call(n,"id"),e.call(n,"typeParameters")]);case"IntersectionTypeAnnotation":return x(" & ").join(e.map(n,"types"));case"NullableTypeAnnotation":return k(["?",e.call(n,"typeAnnotation")]);case"NumberTypeAnnotation":return x("number",t);case"ObjectTypeCallProperty":return e.call(n,"value");case"ObjectTypeIndexer":return k(["[",e.call(n,"id"),": ",e.call(n,"key"),"]: ",e.call(n,"value")]);case"ObjectTypeProperty":return k([e.call(n,"key"),": ",e.call(n,"value")]);case"QualifiedTypeIdentifier":return k([e.call(n,"qualification"),".",e.call(n,"id")]);case"StringLiteralTypeAnnotation":return x(v(r.value,t),t);case"NumberLiteralTypeAnnotation":return E.strictEqual(typeof r.value,"number"),x(""+r.value,t);case"StringTypeAnnotation":return x("string",t);case"TypeAlias":return k(["type ",e.call(n,"id")," = ",e.call(n,"right"),";"]);case"TypeCastExpression":return k(["(",e.call(n,"expression"),e.call(n,"typeAnnotation"),")"]);case"TypeParameterDeclaration":case"TypeParameterInstantiation":return k(["<",x(", ").join(e.map(n,"params")),">"]);case"TypeofTypeAnnotation":return k([x("typeof ",t),e.call(n,"argument")]);case"UnionTypeAnnotation":return x(" | ").join(e.map(n,"types"));case"VoidTypeAnnotation":return x("void",t);case"ClassHeritage":case"ComprehensionBlock":case"ComprehensionExpression":case"Glob":case"GeneratorExpression":case"LetStatement":case"LetExpression":case"GraphExpression":case"GraphIndexExpression":case"XMLDefaultDeclaration":case"XMLAnyName":case"XMLQualifiedIdentifier":case"XMLFunctionQualifiedIdentifier":case"XMLAttributeSelector":case"XMLFilterExpression":case"XML":case"XMLElement":case"XMLList":case"XMLEscape":case"XMLText":case"XMLStartTag":case"XMLEndTag":case"XMLPointTag":case"XMLName":case"XMLAttribute":case"XMLCdata":case"XMLComment":case"XMLProcessingInstruction":default:throw new Error("unknown type: "+JSON.stringify(r.type))}return p}function l(e,t,n){var r=C.ClassBody&&C.ClassBody.check(e.getParentNode()),i=[],a=!1,o=!1;e.each(function(e){var t=(e.getName(),e.getValue());t&&"EmptyStatement"!==t.type&&(C.Comment.check(t)?a=!0:r||(C.Statement.assert(t),o=!0),i.push({node:t,printed:n(e)}))}),a&&E.strictEqual(o,!1,"Comments may appear as statements in otherwise empty statement lists, but may not coexist with non-Comment nodes.");var s=null,l=i.length,c=[];return i.forEach(function(e,n){var r,i,a=e.printed,o=e.node,p=a.length>1,f=n>0,d=n<l-1,h=o&&o.loc&&o.loc.lines,m=h&&t.reuseWhitespace&&j.getTrueLoc(o,h);if(f)if(m){var y=h.skipSpaces(m.start,!0),g=y?y.line:1,v=m.start.line-g;r=Array(v+1).join("\n")}else r=p?"\n\n":"\n";else r="";if(d)if(m){var b=h.skipSpaces(m.end),E=b?b.line:h.length,S=E-m.end.line;i=Array(S+1).join("\n")}else i=p?"\n\n":"\n";else i="";c.push(u(s,r),a),d?s=i:i&&c.push(i)}),k(c)}function u(e,t){if(!e&&!t)return x("");if(!e)return x(t);if(!t)return x(e);var n=x(e),r=x(t);return r.length>n.length?r:n}function c(e,t,n){var r=e.getNode(),i=r.kind,a=[];C.FunctionExpression.assert(r.value),r.decorators&&e.each(function(e){a.push(n(e),"\n")},"decorators"),r.value.async&&a.push("async "),i&&"init"!==i&&"method"!==i&&"constructor"!==i?(E.ok("get"===i||"set"===i),a.push(i," ")):r.value.generator&&a.push("*");var o=e.call(n,"key");return r.computed&&(o=k(["[",o,"]"])),a.push(o,e.call(n,"value","typeParameters"),"(",e.call(function(e){return d(e,t,n)},"value"),")",e.call(n,"value","returnType")," ",e.call(n,"value","body")),k(a)}function f(e,t,n){var r=e.map(n,"arguments"),i=x(", ").join(r);return i.getLineLength(1)>t.wrapColumn?(i=x(",\n").join(r),k(["(\n",i.indent(t.tabWidth),t.trailingComma?",\n)":"\n)"])):k(["(",i,")"])}function d(e,t,n){var r=e.getValue();C.Function.assert(r);var i=e.map(n,"params");r.defaults&&e.each(function(e){var t=e.getName(),r=i[t];r&&e.getValue()&&(i[t]=k([r,"=",n(e)]))},"defaults"),r.rest&&i.push(k(["...",e.call(n,"rest")]));var a=x(", ").join(i);return a.length>1||a.getLineLength(1)>t.wrapColumn?(a=x(",\n").join(i),t.trailingComma&&!r.rest&&(a=k([a,",\n"])),k(["\n",a.indent(t.tabWidth)])):a}function h(e,t){return k(e.length>1?[" ",e]:["\n",b(e).indent(t.tabWidth)])}function m(e){var t=e.lastPos();do{var n=e.charAt(t);if(/\S/.test(n))return n}while(e.prevPos(t))}function y(e){return"}"===m(e)}function g(e){return e.replace(/['"]/g,function(e){return'"'===e?"'":'"'})}function v(e,t){switch(P.assert(e),t.quote){case"auto":var n=JSON.stringify(e),r=g(JSON.stringify(g(e)));return n.length>r.length?r:n;case"single":return g(JSON.stringify(g(e)));case"double":default:return JSON.stringify(e)}}function b(e){var t=m(e);return!t||"\n};".indexOf(t)<0?k([e,";"]):e}var E=e("assert"),S=(e("source-map"),e("./comments").printComments),w=e("./lines"),x=w.fromString,k=w.concat,T=e("./options").normalize,A=e("./patcher").getReprinter,L=e("./types"),C=L.namedTypes,P=L.builtInTypes.string,_=L.builtInTypes.object,I=e("./fast-path"),j=e("./util"),O=r.prototype,M=!1;O.toString=function(){return M||(console.warn("Deprecation warning: recast.print now returns an object with a .code property. You appear to be treating the object as a string, which might still work but is strongly discouraged."),M=!0),this.code};var N=new r("");n.Printer=i},{"./comments":57,"./fast-path":58,"./lines":59,"./options":61,"./patcher":63,"./types":65,"./util":66,assert:2,"source-map":94}],65:[function(e,t,n){t.exports=e("ast-types")},{"ast-types":83}],66:[function(e,t,n){function r(){for(var e={},t=arguments.length,n=0;n<t;++n)for(var r=Object.keys(arguments[n]),i=r.length,a=0;a<i;++a)e[r[a]]=!0;return e}function i(e,t){return e.line-t.line||e.column-t.column}function a(e){return{line:e.line,column:e.column}}var o=(e("assert"),e("./types")),s=(o.getFieldValue,o.namedTypes),l=e("source-map"),u=l.SourceMapConsumer,c=l.SourceMapGenerator,p=Object.prototype.hasOwnProperty;n.getUnionOfKeys=r,n.comparePos=i,n.copyPos=a,n.composeSourceMaps=function(e,t){if(!e)return t||null;if(!t)return e;var n=new u(e),r=new u(t),i=new c({file:t.file,sourceRoot:t.sourceRoot}),o={};return r.eachMapping(function(e){var t=n.originalPositionFor({line:e.originalLine,column:e.originalColumn}),r=t.source;if(null!==r){i.addMapping({source:r,original:a(t),generated:{line:e.generatedLine,column:e.generatedColumn},name:e.name});var s=n.sourceContentFor(r);s&&!p.call(o,r)&&(o[r]=s,i.setSourceContent(r,s))}}),i.toJSON()},n.getTrueLoc=function(e,t){if(!e.loc)return null;var n=e.loc.start,r=e.loc.end;return e.comments&&e.comments.forEach(function(e){e.loc&&(i(e.loc.start,n)<0&&(n=e.loc.start),i(r,e.loc.end)<0&&(r=e.loc.end))}),{start:t.skipSpaces(n,!1,!1),end:t.skipSpaces(r,!0,!1)}},n.fixFaultyLocations=function(e){(s.MethodDefinition&&s.MethodDefinition.check(e)||s.Property.check(e)&&(e.method||e.shorthand))&&(e.value.loc=null,s.FunctionExpression.check(e.value)&&(e.value.id=null));var t=e.loc;t&&(t.start.line<1&&(t.start.line=1),t.end.line<1&&(t.end.line=1))}},{"./types":65,assert:2,"source-map":94}],67:[function(e,t,n){(function(t){function r(e,t){return new p(t).print(e)}function i(e,t){return new p(t).printGenerically(e)}function a(e,n){return o(t.argv[2],e,n)}function o(t,n,r){e("fs").readFile(t,"utf-8",function(e,t){return e?void console.error(e):void l(t,n,r)})}function s(e){t.stdout.write(e)}function l(e,t,n){var i=n&&n.writeback||s;t(c(e,n),function(e){i(r(e,n).code)})}var u=e("./lib/types"),c=e("./lib/parser").parse,p=e("./lib/printer").Printer;Object.defineProperties(n,{parse:{enumerable:!0,value:c},visit:{enumerable:!0,value:u.visit},print:{enumerable:!0,value:r},prettyPrint:{enumerable:!1,value:i},types:{enumerable:!1,value:u},run:{enumerable:!1,value:a}})}).call(this,e("_process"))},{"./lib/parser":62,"./lib/printer":64,"./lib/types":65,_process:13,fs:1}],68:[function(e,t,n){e("./es7");var r=e("../lib/types"),i=e("../lib/shared").defaults,a=r.Type.def,o=r.Type.or;a("Noop").bases("Node").build(),a("DoExpression").bases("Expression").build("body").field("body",[a("Statement")]),a("Super").bases("Expression").build(),a("BindExpression").bases("Expression").build("object","callee").field("object",o(a("Expression"),null)).field("callee",a("Expression")),a("Decorator").bases("Node").build("expression").field("expression",a("Expression")),a("Property").field("decorators",o([a("Decorator")],null),i.null),a("MethodDefinition").field("decorators",o([a("Decorator")],null),i.null),a("MetaProperty").bases("Expression").build("meta","property").field("meta",a("Identifier")).field("property",a("Identifier")),a("ParenthesizedExpression").bases("Expression").build("expression").field("expression",a("Expression")),a("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",a("Identifier")),a("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),a("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),a("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",o(a("Declaration"),a("Expression"))),a("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",o(a("Declaration"),null)).field("specifiers",[a("ExportSpecifier")],i.emptyArray).field("source",o(a("Literal"),null),i.null),a("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",a("Identifier")),a("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",a("Identifier")),a("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",a("Identifier")),a("ExportAllDeclaration").bases("Declaration").build("exported","source").field("exported",o(a("Identifier"),null)).field("source",a("Literal")),a("CommentBlock").bases("Comment").build("value","leading","trailing"),a("CommentLine").bases("Comment").build("value","leading","trailing")},{"../lib/shared":81,"../lib/types":82,"./es7":72}],69:[function(e,t,n){var r=e("../lib/types"),i=r.Type,a=i.def,o=i.or,s=e("../lib/shared"),l=s.defaults,u=s.geq;a("Printable").field("loc",o(a("SourceLocation"),null),l.null,!0),a("Node").bases("Printable").field("type",String).field("comments",o([a("Comment")],null),l.null,!0),a("SourceLocation").build("start","end","source").field("start",a("Position")).field("end",a("Position")).field("source",o(String,null),l.null),a("Position").build("line","column").field("line",u(1)).field("column",u(0)),a("File").bases("Node").build("program").field("program",a("Program")),a("Program").bases("Node").build("body").field("body",[a("Statement")]),a("Function").bases("Node").field("id",o(a("Identifier"),null),l.null).field("params",[a("Pattern")]).field("body",a("BlockStatement")),a("Statement").bases("Node"),a("EmptyStatement").bases("Statement").build(),a("BlockStatement").bases("Statement").build("body").field("body",[a("Statement")]),a("ExpressionStatement").bases("Statement").build("expression").field("expression",a("Expression")),a("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",a("Expression")).field("consequent",a("Statement")).field("alternate",o(a("Statement"),null),l.null),a("LabeledStatement").bases("Statement").build("label","body").field("label",a("Identifier")).field("body",a("Statement")),a("BreakStatement").bases("Statement").build("label").field("label",o(a("Identifier"),null),l.null),a("ContinueStatement").bases("Statement").build("label").field("label",o(a("Identifier"),null),l.null),a("WithStatement").bases("Statement").build("object","body").field("object",a("Expression")).field("body",a("Statement")),a("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",a("Expression")).field("cases",[a("SwitchCase")]).field("lexical",Boolean,l.false),a("ReturnStatement").bases("Statement").build("argument").field("argument",o(a("Expression"),null)),a("ThrowStatement").bases("Statement").build("argument").field("argument",a("Expression")),a("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",a("BlockStatement")).field("handler",o(a("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[a("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[a("CatchClause")],l.emptyArray).field("finalizer",o(a("BlockStatement"),null),l.null),a("CatchClause").bases("Node").build("param","guard","body").field("param",a("Pattern")).field("guard",o(a("Expression"),null),l.null).field("body",a("BlockStatement")),a("WhileStatement").bases("Statement").build("test","body").field("test",a("Expression")).field("body",a("Statement")),a("DoWhileStatement").bases("Statement").build("body","test").field("body",a("Statement")).field("test",a("Expression")),a("ForStatement").bases("Statement").build("init","test","update","body").field("init",o(a("VariableDeclaration"),a("Expression"),null)).field("test",o(a("Expression"),null)).field("update",o(a("Expression"),null)).field("body",a("Statement")),a("ForInStatement").bases("Statement").build("left","right","body").field("left",o(a("VariableDeclaration"),a("Expression"))).field("right",a("Expression")).field("body",a("Statement")),a("DebuggerStatement").bases("Statement").build(),a("Declaration").bases("Statement"),a("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",a("Identifier")),a("FunctionExpression").bases("Function","Expression").build("id","params","body"),a("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",o("var","let","const")).field("declarations",[a("VariableDeclarator")]),a("VariableDeclarator").bases("Node").build("id","init").field("id",a("Pattern")).field("init",o(a("Expression"),null)),a("Expression").bases("Node","Pattern"),a("ThisExpression").bases("Expression").build(),a("ArrayExpression").bases("Expression").build("elements").field("elements",[o(a("Expression"),null)]),a("ObjectExpression").bases("Expression").build("properties").field("properties",[a("Property")]),a("Property").bases("Node").build("kind","key","value").field("kind",o("init","get","set")).field("key",o(a("Literal"),a("Identifier"))).field("value",a("Expression")),a("SequenceExpression").bases("Expression").build("expressions").field("expressions",[a("Expression")]);var c=o("-","+","!","~","typeof","void","delete");a("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",c).field("argument",a("Expression")).field("prefix",Boolean,l.true);var p=o("==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof","..");a("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",p).field("left",a("Expression")).field("right",a("Expression"));var f=o("=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&=");a("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",f).field("left",a("Pattern")).field("right",a("Expression"));var d=o("++","--");a("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",d).field("argument",a("Expression")).field("prefix",Boolean);var h=o("||","&&");a("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",h).field("left",a("Expression")).field("right",a("Expression")),a("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",a("Expression")).field("consequent",a("Expression")).field("alternate",a("Expression")),a("NewExpression").bases("Expression").build("callee","arguments").field("callee",a("Expression")).field("arguments",[a("Expression")]),a("CallExpression").bases("Expression").build("callee","arguments").field("callee",a("Expression")).field("arguments",[a("Expression")]),a("MemberExpression").bases("Expression").build("object","property","computed").field("object",a("Expression")).field("property",o(a("Identifier"),a("Expression"))).field("computed",Boolean,l.false),a("Pattern").bases("Node"),a("SwitchCase").bases("Node").build("test","consequent").field("test",o(a("Expression"),null)).field("consequent",[a("Statement")]),a("Identifier").bases("Node","Expression","Pattern").build("name").field("name",String),a("Literal").bases("Node","Expression").build("value").field("value",o(String,Boolean,null,Number,RegExp)).field("regex",o({pattern:String,flags:String},null),function(){if(this.value instanceof RegExp){var e="";return this.value.ignoreCase&&(e+="i"),this.value.multiline&&(e+="m"),this.value.global&&(e+="g"),{pattern:this.value.source,flags:e}}return null}),a("Comment").bases("Printable").field("value",String).field("leading",Boolean,l.true).field("trailing",Boolean,l.false)},{"../lib/shared":81,"../lib/types":82}],70:[function(e,t,n){e("./core");var r=e("../lib/types"),i=r.Type.def,a=r.Type.or;i("XMLDefaultDeclaration").bases("Declaration").field("namespace",i("Expression")),i("XMLAnyName").bases("Expression"),i("XMLQualifiedIdentifier").bases("Expression").field("left",a(i("Identifier"),i("XMLAnyName"))).field("right",a(i("Identifier"),i("Expression"))).field("computed",Boolean),
i("XMLFunctionQualifiedIdentifier").bases("Expression").field("right",a(i("Identifier"),i("Expression"))).field("computed",Boolean),i("XMLAttributeSelector").bases("Expression").field("attribute",i("Expression")),i("XMLFilterExpression").bases("Expression").field("left",i("Expression")).field("right",i("Expression")),i("XMLElement").bases("XML","Expression").field("contents",[i("XML")]),i("XMLList").bases("XML","Expression").field("contents",[i("XML")]),i("XML").bases("Node"),i("XMLEscape").bases("XML").field("expression",i("Expression")),i("XMLText").bases("XML").field("text",String),i("XMLStartTag").bases("XML").field("contents",[i("XML")]),i("XMLEndTag").bases("XML").field("contents",[i("XML")]),i("XMLPointTag").bases("XML").field("contents",[i("XML")]),i("XMLName").bases("XML").field("contents",a(String,[i("XML")])),i("XMLAttribute").bases("XML").field("value",String),i("XMLCdata").bases("XML").field("contents",String),i("XMLComment").bases("XML").field("contents",String),i("XMLProcessingInstruction").bases("XML").field("target",String).field("contents",a(String,null))},{"../lib/types":82,"./core":69}],71:[function(e,t,n){e("./core");var r=e("../lib/types"),i=r.Type.def,a=r.Type.or,o=e("../lib/shared").defaults;i("Function").field("generator",Boolean,o.false).field("expression",Boolean,o.false).field("defaults",[a(i("Expression"),null)],o.emptyArray).field("rest",a(i("Identifier"),null),o.null),i("RestElement").bases("Pattern").build("argument").field("argument",i("Pattern")),i("SpreadElementPattern").bases("Pattern").build("argument").field("argument",i("Pattern")),i("FunctionDeclaration").build("id","params","body","generator","expression"),i("FunctionExpression").build("id","params","body","generator","expression"),i("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,o.null).field("body",a(i("BlockStatement"),i("Expression"))).field("generator",!1,o.false),i("YieldExpression").bases("Expression").build("argument","delegate").field("argument",a(i("Expression"),null)).field("delegate",Boolean,o.false),i("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",i("Expression")).field("blocks",[i("ComprehensionBlock")]).field("filter",a(i("Expression"),null)),i("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",i("Expression")).field("blocks",[i("ComprehensionBlock")]).field("filter",a(i("Expression"),null)),i("ComprehensionBlock").bases("Node").build("left","right","each").field("left",i("Pattern")).field("right",i("Expression")).field("each",Boolean),i("Property").field("key",a(i("Literal"),i("Identifier"),i("Expression"))).field("value",a(i("Expression"),i("Pattern"))).field("method",Boolean,o.false).field("shorthand",Boolean,o.false).field("computed",Boolean,o.false),i("PropertyPattern").bases("Pattern").build("key","pattern").field("key",a(i("Literal"),i("Identifier"),i("Expression"))).field("pattern",i("Pattern")).field("computed",Boolean,o.false),i("ObjectPattern").bases("Pattern").build("properties").field("properties",[a(i("PropertyPattern"),i("Property"))]),i("ArrayPattern").bases("Pattern").build("elements").field("elements",[a(i("Pattern"),null)]),i("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",a("constructor","method","get","set")).field("key",a(i("Literal"),i("Identifier"),i("Expression"))).field("value",i("Function")).field("computed",Boolean,o.false).field("static",Boolean,o.false),i("SpreadElement").bases("Node").build("argument").field("argument",i("Expression")),i("ArrayExpression").field("elements",[a(i("Expression"),i("SpreadElement"),i("RestElement"),null)]),i("NewExpression").field("arguments",[a(i("Expression"),i("SpreadElement"))]),i("CallExpression").field("arguments",[a(i("Expression"),i("SpreadElement"))]),i("AssignmentPattern").bases("Pattern").build("left","right").field("left",i("Pattern")).field("right",i("Expression"));var s=a(i("MethodDefinition"),i("VariableDeclarator"),i("ClassPropertyDefinition"),i("ClassProperty"));i("ClassProperty").bases("Declaration").build("key").field("key",a(i("Literal"),i("Identifier"),i("Expression"))).field("computed",Boolean,o.false),i("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",s),i("ClassBody").bases("Declaration").build("body").field("body",[s]),i("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",a(i("Identifier"),null)).field("body",i("ClassBody")).field("superClass",a(i("Expression"),null),o.null),i("ClassExpression").bases("Expression").build("id","body","superClass").field("id",a(i("Identifier"),null),o.null).field("body",i("ClassBody")).field("superClass",a(i("Expression"),null),o.null).field("implements",[i("ClassImplements")],o.emptyArray),i("ClassImplements").bases("Node").build("id").field("id",i("Identifier")).field("superClass",a(i("Expression"),null),o.null),i("Specifier").bases("Node"),i("ModuleSpecifier").bases("Specifier").field("local",a(i("Identifier"),null),o.null).field("id",a(i("Identifier"),null),o.null).field("name",a(i("Identifier"),null),o.null),i("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",i("Expression")).field("quasi",i("TemplateLiteral")),i("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[i("TemplateElement")]).field("expressions",[i("Expression")]),i("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean)},{"../lib/shared":81,"../lib/types":82,"./core":69}],72:[function(e,t,n){e("./es6");var r=e("../lib/types"),i=r.Type.def,a=r.Type.or,o=(r.builtInTypes,e("../lib/shared").defaults);i("Function").field("async",Boolean,o.false),i("SpreadProperty").bases("Node").build("argument").field("argument",i("Expression")),i("ObjectExpression").field("properties",[a(i("Property"),i("SpreadProperty"))]),i("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",i("Pattern")),i("ObjectPattern").field("properties",[a(i("Property"),i("PropertyPattern"),i("SpreadPropertyPattern"))]),i("AwaitExpression").bases("Expression").build("argument","all").field("argument",a(i("Expression"),null)).field("all",Boolean,o.false)},{"../lib/shared":81,"../lib/types":82,"./es6":71}],73:[function(e,t,n){e("./es7");var r=e("../lib/types"),i=e("../lib/shared").defaults,a=r.Type.def,o=r.Type.or;a("VariableDeclaration").field("declarations",[o(a("VariableDeclarator"),a("Identifier"))]),a("Property").field("value",o(a("Expression"),a("Pattern"))),a("ArrayPattern").field("elements",[o(a("Pattern"),a("SpreadElement"),null)]),a("ObjectPattern").field("properties",[o(a("Property"),a("PropertyPattern"),a("SpreadPropertyPattern"),a("SpreadProperty"))]),a("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),a("ExportBatchSpecifier").bases("Specifier").build(),a("ImportSpecifier").bases("ModuleSpecifier").build("id","name"),a("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("id"),a("ImportDefaultSpecifier").bases("ModuleSpecifier").build("id"),a("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",o(a("Declaration"),a("Expression"),null)).field("specifiers",[o(a("ExportSpecifier"),a("ExportBatchSpecifier"))],i.emptyArray).field("source",o(a("Literal"),null),i.null),a("ImportDeclaration").bases("Declaration").build("specifiers","source").field("specifiers",[o(a("ImportSpecifier"),a("ImportNamespaceSpecifier"),a("ImportDefaultSpecifier"))],i.emptyArray).field("source",a("Literal")),a("Block").bases("Comment").build("value","leading","trailing"),a("Line").bases("Comment").build("value","leading","trailing")},{"../lib/shared":81,"../lib/types":82,"./es7":72}],74:[function(e,t,n){e("./es7");var r=e("../lib/types"),i=r.Type.def,a=r.Type.or,o=e("../lib/shared").defaults;i("JSXAttribute").bases("Node").build("name","value").field("name",a(i("JSXIdentifier"),i("JSXNamespacedName"))).field("value",a(i("Literal"),i("JSXExpressionContainer"),null),o.null),i("JSXIdentifier").bases("Identifier").build("name").field("name",String),i("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",i("JSXIdentifier")).field("name",i("JSXIdentifier")),i("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",a(i("JSXIdentifier"),i("JSXMemberExpression"))).field("property",i("JSXIdentifier")).field("computed",Boolean,o.false);var s=a(i("JSXIdentifier"),i("JSXNamespacedName"),i("JSXMemberExpression"));i("JSXSpreadAttribute").bases("Node").build("argument").field("argument",i("Expression"));var l=[a(i("JSXAttribute"),i("JSXSpreadAttribute"))];i("JSXExpressionContainer").bases("Expression").build("expression").field("expression",i("Expression")),i("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",i("JSXOpeningElement")).field("closingElement",a(i("JSXClosingElement"),null),o.null).field("children",[a(i("JSXElement"),i("JSXExpressionContainer"),i("JSXText"),i("Literal"))],o.emptyArray).field("name",s,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",l,function(){return this.openingElement.attributes},!0),i("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",s).field("attributes",l,o.emptyArray).field("selfClosing",Boolean,o.false),i("JSXClosingElement").bases("Node").build("name").field("name",s),i("JSXText").bases("Literal").build("value").field("value",String),i("JSXEmptyExpression").bases("Expression").build(),i("Type").bases("Node"),i("AnyTypeAnnotation").bases("Type").build(),i("MixedTypeAnnotation").bases("Type").build(),i("VoidTypeAnnotation").bases("Type").build(),i("NumberTypeAnnotation").bases("Type").build(),i("NumberLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Number).field("raw",String),i("StringTypeAnnotation").bases("Type").build(),i("StringLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",String).field("raw",String),i("BooleanTypeAnnotation").bases("Type").build(),i("BooleanLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Boolean).field("raw",String),i("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",i("Type")),i("NullableTypeAnnotation").bases("Type").build("typeAnnotation").field("typeAnnotation",i("Type")),i("FunctionTypeAnnotation").bases("Type").build("params","returnType","rest","typeParameters").field("params",[i("FunctionTypeParam")]).field("returnType",i("Type")).field("rest",a(i("FunctionTypeParam"),null)).field("typeParameters",a(i("TypeParameterDeclaration"),null)),i("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",i("Identifier")).field("typeAnnotation",i("Type")).field("optional",Boolean),i("ArrayTypeAnnotation").bases("Type").build("elementType").field("elementType",i("Type")),i("ObjectTypeAnnotation").bases("Type").build("properties").field("properties",[i("ObjectTypeProperty")]).field("indexers",[i("ObjectTypeIndexer")],o.emptyArray).field("callProperties",[i("ObjectTypeCallProperty")],o.emptyArray),i("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",a(i("Literal"),i("Identifier"))).field("value",i("Type")).field("optional",Boolean),i("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",i("Identifier")).field("key",i("Type")).field("value",i("Type")),i("ObjectTypeCallProperty").bases("Node").build("value").field("value",i("FunctionTypeAnnotation")).field("static",Boolean,!1),i("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",a(i("Identifier"),i("QualifiedTypeIdentifier"))).field("id",i("Identifier")),i("GenericTypeAnnotation").bases("Type").build("id","typeParameters").field("id",a(i("Identifier"),i("QualifiedTypeIdentifier"))).field("typeParameters",a(i("TypeParameterInstantiation"),null)),i("MemberTypeAnnotation").bases("Type").build("object","property").field("object",i("Identifier")).field("property",a(i("MemberTypeAnnotation"),i("GenericTypeAnnotation"))),i("UnionTypeAnnotation").bases("Type").build("types").field("types",[i("Type")]),i("IntersectionTypeAnnotation").bases("Type").build("types").field("types",[i("Type")]),i("TypeofTypeAnnotation").bases("Type").build("argument").field("argument",i("Type")),i("Identifier").field("typeAnnotation",a(i("TypeAnnotation"),null),o.null),i("TypeParameterDeclaration").bases("Node").build("params").field("params",[i("Identifier")]),i("TypeParameterInstantiation").bases("Node").build("params").field("params",[i("Type")]),i("Function").field("returnType",a(i("TypeAnnotation"),null),o.null).field("typeParameters",a(i("TypeParameterDeclaration"),null),o.null),i("ClassProperty").build("key","value","typeAnnotation","static").field("value",a(i("Expression"),null)).field("typeAnnotation",a(i("TypeAnnotation"),null)).field("static",Boolean,o.false),i("ClassImplements").field("typeParameters",a(i("TypeParameterInstantiation"),null),o.null),i("InterfaceDeclaration").bases("Statement").build("id","body","extends").field("id",i("Identifier")).field("typeParameters",a(i("TypeParameterDeclaration"),null),o.null).field("body",i("ObjectTypeAnnotation")).field("extends",[i("InterfaceExtends")]),i("InterfaceExtends").bases("Node").build("id").field("id",i("Identifier")).field("typeParameters",a(i("TypeParameterInstantiation"),null)),i("TypeAlias").bases("Statement").build("id","typeParameters","right").field("id",i("Identifier")).field("typeParameters",a(i("TypeParameterDeclaration"),null)).field("right",i("Type")),i("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",i("Expression")).field("typeAnnotation",i("TypeAnnotation")),i("TupleTypeAnnotation").bases("Type").build("types").field("types",[i("Type")]),i("DeclareVariable").bases("Statement").build("id").field("id",i("Identifier")),i("DeclareFunction").bases("Statement").build("id").field("id",i("Identifier")),i("DeclareClass").bases("InterfaceDeclaration").build("id"),i("DeclareModule").bases("Statement").build("id","body").field("id",a(i("Identifier"),i("Literal"))).field("body",i("BlockStatement"))},{"../lib/shared":81,"../lib/types":82,"./es7":72}],75:[function(e,t,n){e("./core");var r=e("../lib/types"),i=r.Type.def,a=r.Type.or,o=e("../lib/shared"),s=o.geq,l=o.defaults;i("Function").field("body",a(i("BlockStatement"),i("Expression"))),i("ForInStatement").build("left","right","body","each").field("each",Boolean,l.false),i("ForOfStatement").bases("Statement").build("left","right","body").field("left",a(i("VariableDeclaration"),i("Expression"))).field("right",i("Expression")).field("body",i("Statement")),i("LetStatement").bases("Statement").build("head","body").field("head",[i("VariableDeclarator")]).field("body",i("Statement")),i("LetExpression").bases("Expression").build("head","body").field("head",[i("VariableDeclarator")]).field("body",i("Expression")),i("GraphExpression").bases("Expression").build("index","expression").field("index",s(0)).field("expression",i("Literal")),i("GraphIndexExpression").bases("Expression").build("index").field("index",s(0))},{"../lib/shared":81,"../lib/types":82,"./core":69}],76:[function(e,t,n){function r(e,t,n){return p.check(n)?n.length=0:n=null,a(e,t,n)}function i(e){return/[_$a-z][_$a-z0-9]*/i.test(e)?"."+e:"["+JSON.stringify(e)+"]"}function a(e,t,n){return e===t||(p.check(e)?o(e,t,n):f.check(e)?s(e,t,n):d.check(e)?d.check(t)&&+e===+t:h.check(e)?h.check(t)&&e.source===t.source&&e.global===t.global&&e.multiline===t.multiline&&e.ignoreCase===t.ignoreCase:e==t)}function o(e,t,n){p.assert(e);var r=e.length;if(!p.check(t)||t.length!==r)return n&&n.push("length"),!1;for(var i=0;i<r;++i){if(n&&n.push(i),i in e!=i in t)return!1;if(!a(e[i],t[i],n))return!1;if(n){var o=n.pop();if(o!==i)throw new Error(""+o)}}return!0}function s(e,t,n){if(f.assert(e),!f.check(t))return!1;if(e.type!==t.type)return n&&n.push("type"),!1;var r=u(e),i=r.length,o=u(t),s=o.length;if(i===s){for(var l=0;l<i;++l){var p=r[l],d=c(e,p),h=c(t,p);if(n&&n.push(p),!a(d,h,n))return!1;if(n){var y=n.pop();if(y!==p)throw new Error(""+y)}}return!0}if(!n)return!1;var g=Object.create(null);for(l=0;l<i;++l)g[r[l]]=!0;for(l=0;l<s;++l){if(p=o[l],!m.call(g,p))return n.push(p),!1;delete g[p]}for(p in g){n.push(p);break}return!1}var l=e("../main"),u=l.getFieldNames,c=l.getFieldValue,p=l.builtInTypes.array,f=l.builtInTypes.object,d=l.builtInTypes.Date,h=l.builtInTypes.RegExp,m=Object.prototype.hasOwnProperty;r.assert=function(e,t){var n=[];if(!r(e,t,n)){if(0!==n.length)throw new Error("Nodes differ in the following path: "+n.map(i).join(""));if(e!==t)throw new Error("Nodes must be equal")}},t.exports=r},{"../main":83}],77:[function(e,t,n){function r(e,t,n){if(!(this instanceof r))throw new Error("NodePath constructor cannot be invoked without 'new'");h.call(this,e,t,n)}function i(e){return c.BinaryExpression.check(e)||c.LogicalExpression.check(e)}function a(e){return!!c.CallExpression.check(e)||(d.check(e)?e.some(a):!!c.Node.check(e)&&u.someField(e,function(e,t){return a(t)}))}function o(e){for(var t,n;e.parent;e=e.parent){if(t=e.node,n=e.parent.node,c.BlockStatement.check(n)&&"body"===e.parent.name&&0===e.name){if(n.body[0]!==t)throw new Error("Nodes must be equal");return!0}if(c.ExpressionStatement.check(n)&&"expression"===e.name){if(n.expression!==t)throw new Error("Nodes must be equal");return!0}if(c.SequenceExpression.check(n)&&"expressions"===e.parent.name&&0===e.name){if(n.expressions[0]!==t)throw new Error("Nodes must be equal")}else if(c.CallExpression.check(n)&&"callee"===e.name){if(n.callee!==t)throw new Error("Nodes must be equal")}else if(c.MemberExpression.check(n)&&"object"===e.name){if(n.object!==t)throw new Error("Nodes must be equal")}else if(c.ConditionalExpression.check(n)&&"test"===e.name){if(n.test!==t)throw new Error("Nodes must be equal")}else if(i(n)&&"left"===e.name){if(n.left!==t)throw new Error("Nodes must be equal")}else{if(!c.UnaryExpression.check(n)||n.prefix||"argument"!==e.name)return!1;if(n.argument!==t)throw new Error("Nodes must be equal")}}return!0}function s(e){if(c.VariableDeclaration.check(e.node)){var t=e.get("declarations").value;if(!t||0===t.length)return e.prune()}else if(c.ExpressionStatement.check(e.node)){if(!e.get("expression").value)return e.prune()}else c.IfStatement.check(e.node)&&l(e);return e}function l(e){var t=e.get("test").value,n=e.get("alternate").value,r=e.get("consequent").value;if(r||n){if(!r&&n){var i=p.unaryExpression("!",t,!0);c.UnaryExpression.check(t)&&"!"===t.operator&&(i=t.argument),e.get("test").replace(i),e.get("consequent").replace(n),e.get("alternate").replace()}}else{var a=p.expressionStatement(t);e.replace(a)}}var u=e("./types"),c=u.namedTypes,p=u.builders,f=u.builtInTypes.number,d=u.builtInTypes.array,h=e("./path"),m=e("./scope"),y=r.prototype=Object.create(h.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}});Object.defineProperties(y,{node:{get:function(){return Object.defineProperty(this,"node",{configurable:!0,value:this._computeNode()}),this.node}},parent:{get:function(){return Object.defineProperty(this,"parent",{configurable:!0,value:this._computeParent()}),this.parent}},scope:{get:function(){return Object.defineProperty(this,"scope",{configurable:!0,value:this._computeScope()}),this.scope}}}),y.replace=function(){return delete this.node,delete this.parent,delete this.scope,h.prototype.replace.apply(this,arguments)},y.prune=function(){var e=this.parent;return this.replace(),s(e)},y._computeNode=function(){var e=this.value;if(c.Node.check(e))return e;var t=this.parentPath;return t&&t.node||null},y._computeParent=function(){var e=this.value,t=this.parentPath;if(!c.Node.check(e)){for(;t&&!c.Node.check(t.value);)t=t.parentPath;t&&(t=t.parentPath)}for(;t&&!c.Node.check(t.value);)t=t.parentPath;return t||null},y._computeScope=function(){var e=this.value,t=this.parentPath,n=t&&t.scope;return c.Node.check(e)&&m.isEstablishedBy(e)&&(n=new m(this,n)),n||null},y.getValueProperty=function(e){return u.getFieldValue(this.value,e)},y.needsParens=function(e){var t=this.parentPath;if(!t)return!1;var n=this.value;if(!c.Expression.check(n))return!1;if("Identifier"===n.type)return!1;for(;!c.Node.check(t.value);)if(t=t.parentPath,!t)return!1;var r=t.value;switch(n.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return"MemberExpression"===r.type&&"object"===this.name&&r.object===n;case"BinaryExpression":case"LogicalExpression":switch(r.type){case"CallExpression":return"callee"===this.name&&r.callee===n;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return"object"===this.name&&r.object===n;case"BinaryExpression":case"LogicalExpression":var i=r.operator,t=g[i],o=n.operator,s=g[o];if(t>s)return!0;if(t===s&&"right"===this.name){if(r.right!==n)throw new Error("Nodes must be equal");return!0}default:return!1}case"SequenceExpression":switch(r.type){case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==this.name;default:return!0}case"YieldExpression":switch(r.type){case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"CallExpression":case"MemberExpression":case"NewExpression":case"ConditionalExpression":case"YieldExpression":return!0;default:return!1}case"Literal":return"MemberExpression"===r.type&&f.check(n.value)&&"object"===this.name&&r.object===n;case"AssignmentExpression":case"ConditionalExpression":switch(r.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return"callee"===this.name&&r.callee===n;case"ConditionalExpression":return"test"===this.name&&r.test===n;case"MemberExpression":return"object"===this.name&&r.object===n;default:return!1}default:if("NewExpression"===r.type&&"callee"===this.name&&r.callee===n)return a(n)}return!(e===!0||this.canBeFirstInStatement()||!this.firstInStatement())};var g={};[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(e,t){e.forEach(function(e){g[e]=t})}),y.canBeFirstInStatement=function(){var e=this.node;return!c.FunctionExpression.check(e)&&!c.ObjectExpression.check(e)},y.firstInStatement=function(){return o(this)},t.exports=r},{"./path":79,"./scope":80,"./types":82}],78:[function(e,t,n){function r(){if(!(this instanceof r))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=i(this),this._shouldVisitComments=h.call(this._methodNameTable,"Block")||h.call(this._methodNameTable,"Line"),this.Context=s(this),this._visiting=!1,this._changeReported=!1}function i(e){var t=Object.create(null);for(var n in e)/^visit[A-Z]/.test(n)&&(t[n.slice("visit".length)]=!0);for(var r=u.computeSupertypeLookupTable(t),i=Object.create(null),t=Object.keys(r),a=t.length,o=0;o<a;++o){var s=t[o];n="visit"+r[s],d.check(e[n])&&(i[s]=n)}return i}function a(e,t){for(var n in t)h.call(t,n)&&(e[n]=t[n]);return e}function o(e,t){if(!(e instanceof c))throw new Error("");if(!(t instanceof r))throw new Error("");var n=e.value;if(p.check(n))e.each(t.visitWithoutReset,t);else if(f.check(n)){var i=u.getFieldNames(n);t._shouldVisitComments&&n.comments&&i.indexOf("comments")<0&&i.push("comments");for(var a=i.length,o=[],s=0;s<a;++s){var l=i[s];h.call(n,l)||(n[l]=u.getFieldValue(n,l)),o.push(e.get(l))}for(var s=0;s<a;++s)t.visitWithoutReset(o[s])}else;return e.value}function s(e){function t(n){if(!(this instanceof t))throw new Error("");if(!(this instanceof r))throw new Error("");if(!(n instanceof c))throw new Error("");Object.defineProperty(this,"visitor",{value:e,writable:!1,enumerable:!0,configurable:!1}),this.currentPath=n,this.needToCallTraverse=!0,Object.seal(this)}if(!(e instanceof r))throw new Error("");var n=t.prototype=Object.create(e);return n.constructor=t,a(n,y),t}var l,u=e("./types"),c=e("./node-path"),p=(u.namedTypes.Printable,u.builtInTypes.array),f=u.builtInTypes.object,d=u.builtInTypes.function,h=Object.prototype.hasOwnProperty;r.fromMethodsObject=function(e){function t(){if(!(this instanceof t))throw new Error("Visitor constructor cannot be invoked without 'new'");r.call(this)}if(e instanceof r)return e;if(!f.check(e))return new r;var n=t.prototype=Object.create(m);return n.constructor=t,a(n,e),a(t,r),d.assert(t.fromMethodsObject),d.assert(t.visit),new t},r.visit=function(e,t){return r.fromMethodsObject(t).visit(e)};var m=r.prototype;m.visit=function(){if(this._visiting)throw new Error("Recursively calling visitor.visit(path) resets visitor state. Try this.visit(path) or this.traverse(path) instead.");this._visiting=!0,this._changeReported=!1,this._abortRequested=!1;for(var e=arguments.length,t=new Array(e),n=0;n<e;++n)t[n]=arguments[n];t[0]instanceof c||(t[0]=new c({root:t[0]}).get("root")),this.reset.apply(this,t);try{var r=this.visitWithoutReset(t[0]),i=!0}finally{if(this._visiting=!1,!i&&this._abortRequested)return t[0].value}return r},m.AbortRequest=function(){},m.abort=function(){var e=this;e._abortRequested=!0;var t=new e.AbortRequest;throw t.cancel=function(){e._abortRequested=!1},t},m.reset=function(e){},m.visitWithoutReset=function(e){if(this instanceof this.Context)return this.visitor.visitWithoutReset(e);if(!(e instanceof c))throw new Error("");var t=e.value,n=t&&"object"==typeof t&&"string"==typeof t.type&&this._methodNameTable[t.type];if(!n)return o(e,this);var r=this.acquireContext(e);try{return r.invokeVisitorMethod(n)}finally{this.releaseContext(r)}},m.acquireContext=function(e){return 0===this._reusableContextStack.length?new this.Context(e):this._reusableContextStack.pop().reset(e)},m.releaseContext=function(e){if(!(e instanceof this.Context))throw new Error("");this._reusableContextStack.push(e),e.currentPath=null},m.reportChanged=function(){this._changeReported=!0},m.wasChangeReported=function(){return this._changeReported};var y=Object.create(null);y.reset=function(e){if(!(this instanceof this.Context))throw new Error("");if(!(e instanceof c))throw new Error("");return this.currentPath=e,this.needToCallTraverse=!0,this},y.invokeVisitorMethod=function(e){if(!(this instanceof this.Context))throw new Error("");if(!(this.currentPath instanceof c))throw new Error("");var t=this.visitor[e].call(this,this.currentPath);if(t===!1?this.needToCallTraverse=!1:t!==l&&(this.currentPath=this.currentPath.replace(t)[0],this.needToCallTraverse&&this.traverse(this.currentPath)),this.needToCallTraverse!==!1)throw new Error("Must either call this.traverse or return false in "+e);var n=this.currentPath;return n&&n.value},y.traverse=function(e,t){if(!(this instanceof this.Context))throw new Error("");if(!(e instanceof c))throw new Error("");if(!(this.currentPath instanceof c))throw new Error("");return this.needToCallTraverse=!1,o(e,r.fromMethodsObject(t||this.visitor))},y.visit=function(e,t){if(!(this instanceof this.Context))throw new Error("");if(!(e instanceof c))throw new Error("");if(!(this.currentPath instanceof c))throw new Error("");return this.needToCallTraverse=!1,r.fromMethodsObject(t||this.visitor).visitWithoutReset(e)},y.reportChanged=function(){this.visitor.reportChanged()},y.abort=function(){this.needToCallTraverse=!1,this.visitor.abort()},t.exports=r},{"./node-path":77,"./types":82}],79:[function(e,t,n){function r(e,t,n){if(!(this instanceof r))throw new Error("Path constructor cannot be invoked without 'new'");if(t){if(!(t instanceof r))throw new Error("")}else t=null,n=null;this.value=e,this.parentPath=t,this.name=n,this.__childCache=null}function i(e){return e.__childCache||(e.__childCache=Object.create(null))}function a(e,t){var n=i(e),r=e.getValueProperty(t),a=n[t];return c.call(n,t)&&a.value===r||(a=n[t]=new e.constructor(r,e,t)),a}function o(){}function s(e,t,n,r){if(f.assert(e.value),0===t)return o;var a=e.value.length;if(a<1)return o;var s=arguments.length;2===s?(n=0,r=a):3===s?(n=Math.max(n,0),r=a):(n=Math.max(n,0),r=Math.min(r,a)),d.assert(n),d.assert(r);for(var l=Object.create(null),u=i(e),p=n;p<r;++p)if(c.call(e.value,p)){var h=e.get(p);if(h.name!==p)throw new Error("");var m=p+t;h.name=m,l[m]=h,delete u[p]}return delete u.length,function(){for(var t in l){var n=l[t];if(n.name!==+t)throw new Error("");u[t]=n,e.value[t]=n.value}}}function l(e){if(!(e instanceof r))throw new Error("");var t=e.parentPath;if(!t)return e;var n=t.value,a=i(t);if(n[e.name]===e.value)a[e.name]=e;else if(f.check(n)){var o=n.indexOf(e.value);o>=0&&(a[e.name=o]=e)}else n[e.name]=e.value,a[e.name]=e;if(n[e.name]!==e.value)throw new Error("");if(e.parentPath.get(e.name)!==e)throw new Error("");return e}var u=Object.prototype,c=u.hasOwnProperty,p=e("./types"),f=p.builtInTypes.array,d=p.builtInTypes.number,h=Array.prototype,m=(h.slice,h.map,r.prototype);m.getValueProperty=function(e){return this.value[e]},m.get=function(e){for(var t=this,n=arguments,r=n.length,i=0;i<r;++i)t=a(t,n[i]);return t},m.each=function(e,t){for(var n=[],r=this.value.length,i=0,i=0;i<r;++i)c.call(this.value,i)&&(n[i]=this.get(i));for(t=t||this,i=0;i<r;++i)c.call(n,i)&&e.call(t,n[i])},m.map=function(e,t){var n=[];return this.each(function(t){n.push(e.call(this,t))},t),n},m.filter=function(e,t){var n=[];return this.each(function(t){e.call(this,t)&&n.push(t)},t),n},m.shift=function(){var e=s(this,-1),t=this.value.shift();return e(),t},m.unshift=function(e){var t=s(this,arguments.length),n=this.value.unshift.apply(this.value,arguments);return t(),n},m.push=function(e){return f.assert(this.value),delete i(this).length,this.value.push.apply(this.value,arguments)},m.pop=function(){f.assert(this.value);var e=i(this);return delete e[this.value.length-1],delete e.length,this.value.pop()},m.insertAt=function(e,t){var n=arguments.length,r=s(this,n-1,e);if(r===o)return this;e=Math.max(e,0);for(var i=1;i<n;++i)this.value[e+i-1]=arguments[i];return r(),this},m.insertBefore=function(e){for(var t=this.parentPath,n=arguments.length,r=[this.name],i=0;i<n;++i)r.push(arguments[i]);return t.insertAt.apply(t,r)},m.insertAfter=function(e){for(var t=this.parentPath,n=arguments.length,r=[this.name+1],i=0;i<n;++i)r.push(arguments[i]);return t.insertAt.apply(t,r)},m.replace=function(e){var t=[],n=this.parentPath.value,r=i(this.parentPath),a=arguments.length;if(l(this),f.check(n)){for(var o=n.length,u=s(this.parentPath,a-1,this.name+1),c=[this.name,1],p=0;p<a;++p)c.push(arguments[p]);var d=n.splice.apply(n,c);if(d[0]!==this.value)throw new Error("");if(n.length!==o-1+a)throw new Error("");if(u(),0===a)delete this.value,delete r[this.name],this.__childCache=null;else{if(n[this.name]!==e)throw new Error("");for(this.value!==e&&(this.value=e,this.__childCache=null),p=0;p<a;++p)t.push(this.parentPath.get(this.name+p));if(t[0]!==this)throw new Error("")}}else if(1===a)this.value!==e&&(this.__childCache=null),this.value=n[this.name]=e,t.push(this);else{if(0!==a)throw new Error("Could not replace path");delete n[this.name],delete this.value,this.__childCache=null}return t},t.exports=r},{"./types":82}],80:[function(e,t,n){function r(t,n){if(!(this instanceof r))throw new Error("Scope constructor cannot be invoked without 'new'");if(!(t instanceof e("./node-path")))throw new Error("");g.assert(t.value);var i;if(n){if(!(n instanceof r))throw new Error("");i=n.depth+1}else n=null,i=0;Object.defineProperties(this,{path:{value:t},node:{value:t.value},isGlobal:{value:!n,enumerable:!0},depth:{value:i},parent:{value:n},bindings:{value:{}}})}function i(e,t){var n=e.value;g.assert(n),c.CatchClause.check(n)?s(e.get("param"),t):a(e,t)}function a(e,t){var n=e.value;e.parent&&c.FunctionExpression.check(e.parent.node)&&e.parent.node.id&&s(e.parent.get("id"),t),
n&&(d.check(n)?e.each(function(e){o(e,t)}):c.Function.check(n)?(e.get("params").each(function(e){s(e,t)}),o(e.get("body"),t)):c.VariableDeclarator.check(n)?(s(e.get("id"),t),o(e.get("init"),t)):"ImportSpecifier"===n.type||"ImportNamespaceSpecifier"===n.type||"ImportDefaultSpecifier"===n.type?s(e.get(n.local?"local":n.name?"name":"id"),t):p.check(n)&&!f.check(n)&&l.eachField(n,function(n,r){var i=e.get(n);if(i.value!==r)throw new Error("");o(i,t)}))}function o(e,t){var n=e.value;if(!n||f.check(n));else if(c.FunctionDeclaration.check(n))s(e.get("id"),t);else if(c.ClassDeclaration&&c.ClassDeclaration.check(n))s(e.get("id"),t);else if(g.check(n)){if(c.CatchClause.check(n)){var r=n.param.name,i=h.call(t,r);a(e.get("body"),t),i||delete t[r]}}else a(e,t)}function s(e,t){var n=e.value;c.Pattern.assert(n),c.Identifier.check(n)?h.call(t,n.name)?t[n.name].push(e):t[n.name]=[e]:c.ObjectPattern&&c.ObjectPattern.check(n)?e.get("properties").each(function(e){var n=e.value;c.Pattern.check(n)?s(e,t):c.Property.check(n)?s(e.get("value"),t):c.SpreadProperty&&c.SpreadProperty.check(n)&&s(e.get("argument"),t)}):c.ArrayPattern&&c.ArrayPattern.check(n)?e.get("elements").each(function(e){var n=e.value;c.Pattern.check(n)?s(e,t):c.SpreadElement&&c.SpreadElement.check(n)&&s(e.get("argument"),t)}):c.PropertyPattern&&c.PropertyPattern.check(n)?s(e.get("pattern"),t):(c.SpreadElementPattern&&c.SpreadElementPattern.check(n)||c.SpreadPropertyPattern&&c.SpreadPropertyPattern.check(n))&&s(e.get("argument"),t)}var l=e("./types"),u=l.Type,c=l.namedTypes,p=c.Node,f=c.Expression,d=l.builtInTypes.array,h=Object.prototype.hasOwnProperty,m=l.builders,y=[c.Program,c.Function,c.CatchClause],g=u.or.apply(u,y);r.isEstablishedBy=function(e){return g.check(e)};var v=r.prototype;v.didScan=!1,v.declares=function(e){return this.scan(),h.call(this.bindings,e)},v.declareTemporary=function(e){if(e){if(!/^[a-z$_]/i.test(e))throw new Error("")}else e="t$";e+=this.depth.toString(36)+"$",this.scan();for(var t=0;this.declares(e+t);)++t;var n=e+t;return this.bindings[n]=l.builders.identifier(n)},v.injectTemporary=function(e,t){e||(e=this.declareTemporary());var n=this.path.get("body");return c.BlockStatement.check(n.value)&&(n=n.get("body")),n.unshift(m.variableDeclaration("var",[m.variableDeclarator(e,t||null)])),e},v.scan=function(e){if(e||!this.didScan){for(var t in this.bindings)delete this.bindings[t];i(this.path,this.bindings),this.didScan=!0}},v.getBindings=function(){return this.scan(),this.bindings},v.lookup=function(e){for(var t=this;t&&!t.declares(e);t=t.parent);return t},v.getGlobalScope=function(){for(var e=this;!e.isGlobal;)e=e.parent;return e},t.exports=r},{"./node-path":77,"./types":82}],81:[function(e,t,n){var r=e("../lib/types"),i=r.Type,a=r.builtInTypes,o=a.number;n.geq=function(e){return new i(function(t){return o.check(t)&&t>=e},o+" >= "+e)},n.defaults={null:function(){return null},emptyArray:function(){return[]},false:function(){return!1},true:function(){return!0},undefined:function(){}};var s=i.or(a.string,a.number,a.boolean,a.null,a.undefined);n.isPrimitive=new i(function(e){if(null===e)return!0;var t=typeof e;return!("object"===t||"function"===t)},s.toString())},{"../lib/types":82}],82:[function(e,t,n){function r(e,t){var n=this;if(!(n instanceof r))throw new Error("Type constructor cannot be invoked without 'new'");if(b.call(e)!==E)throw new Error(e+" is not a function");var i=b.call(t);if(i!==E&&i!==S)throw new Error(t+" is neither a function nor a string");Object.defineProperties(n,{name:{value:t},check:{value:function(t,r){var i=e.call(n,t,r);return!i&&r&&b.call(r)===E&&r(n,t),i}}})}function i(e){return _.check(e)?"{"+Object.keys(e).map(function(t){return t+": "+e[t]}).join(", ")+"}":P.check(e)?"["+e.map(i).join(", ")+"]":JSON.stringify(e)}function a(e,t){var n=b.call(e),i=new r(function(e){return b.call(e)===n},t);return A[t]=i,e&&"function"==typeof e.constructor&&(k.push(e.constructor),T.push(i)),i}function o(e,t){if(e instanceof r)return e;if(e instanceof l)return e.type;if(P.check(e))return r.fromArray(e);if(_.check(e))return r.fromObject(e);if(C.check(e)){var n=k.indexOf(e);return n>=0?T[n]:new r(e,t)}return new r(function(t){return t===e},j.check(t)?function(){return e+""}:t)}function s(e,t,n,r){var i=this;if(!(i instanceof s))throw new Error("Field constructor cannot be invoked without 'new'");L.assert(e),t=o(t);var a={name:{value:e},type:{value:t},hidden:{value:!!r}};C.check(n)&&(a.defaultFn={value:n}),Object.defineProperties(i,a)}function l(e){var t=this;if(!(t instanceof l))throw new Error("Def constructor cannot be invoked without 'new'");Object.defineProperties(t,{typeName:{value:e},baseNames:{value:[]},ownFields:{value:Object.create(null)},allSupertypes:{value:Object.create(null)},supertypeList:{value:[]},allFields:{value:Object.create(null)},fieldNames:{value:[]},type:{value:new r(function(e,n){return t.check(e,n)},e)}})}function u(e){return e.replace(/^[A-Z]+/,function(e){var t=e.length;switch(t){case 0:return"";case 1:return e.toLowerCase();default:return e.slice(0,t-1).toLowerCase()+e.charAt(t-1)}})}function c(e){return e=u(e),e.replace(/(Expression)?$/,"Statement")}function p(e){var t=l.fromValue(e);if(t)return t.fieldNames.slice(0);if("type"in e)throw new Error("did not recognize object of type "+JSON.stringify(e.type));return Object.keys(e)}function f(e,t){var n=l.fromValue(e);if(n){var r=n.allFields[t];if(r)return r.getValue(e)}return e[t]}function d(e){var t=c(e);if(!D[t]){var n=D[u(e)];n&&(D[t]=function(){return D.expressionStatement(n.apply(D,arguments))})}}function h(e,t){t.length=0,t.push(e);for(var n=Object.create(null),r=0;r<t.length;++r){e=t[r];var i=M[e];if(i.finalized!==!0)throw new Error("");w.call(n,e)&&delete t[n[e]],n[e]=r,t.push.apply(t,i.baseNames)}for(var a=0,o=a,s=t.length;o<s;++o)w.call(t,o)&&(t[a++]=t[o]);t.length=a}function m(e,t){return Object.keys(t).forEach(function(n){e[n]=t[n]}),e}var y=Array.prototype,g=y.slice,v=(y.map,y.forEach,Object.prototype),b=v.toString,E=b.call(function(){}),S=b.call(""),w=v.hasOwnProperty,x=r.prototype;n.Type=r,x.assert=function(e,t){if(!this.check(e,t)){var n=i(e);throw new Error(n+" does not match type "+this)}return!0},x.toString=function(){var e=this.name;return L.check(e)?e:C.check(e)?e.call(this)+"":e+" type"};var k=[],T=[],A={};n.builtInTypes=A;var L=a("truthy","string"),C=a(function(){},"function"),P=a([],"array"),_=a({},"object"),I=(a(/./,"RegExp"),a(new Date,"Date"),a(3,"number")),j=(a(!0,"boolean"),a(null,"null"),a(void 0,"undefined"));r.or=function(){for(var e=[],t=arguments.length,n=0;n<t;++n)e.push(o(arguments[n]));return new r(function(n,r){for(var i=0;i<t;++i)if(e[i].check(n,r))return!0;return!1},function(){return e.join(" | ")})},r.fromArray=function(e){if(!P.check(e))throw new Error("");if(1!==e.length)throw new Error("only one element type is permitted for typed arrays");return o(e[0]).arrayOf()},x.arrayOf=function(){var e=this;return new r(function(t,n){return P.check(t)&&t.every(function(t){return e.check(t,n)})},function(){return"["+e+"]"})},r.fromObject=function(e){var t=Object.keys(e).map(function(t){return new s(t,e[t])});return new r(function(e,n){return _.check(e)&&t.every(function(t){return t.type.check(e[t.name],n)})},function(){return"{ "+t.join(", ")+" }"})};var O=s.prototype;O.toString=function(){return JSON.stringify(this.name)+": "+this.type},O.getValue=function(e){var t=e[this.name];return j.check(t)?(this.defaultFn&&(t=this.defaultFn.call(e)),t):t},r.def=function(e){return L.assert(e),w.call(M,e)?M[e]:M[e]=new l(e)};var M=Object.create(null);l.fromValue=function(e){if(e&&"object"==typeof e){var t=e.type;if("string"==typeof t&&w.call(M,t)){var n=M[t];if(n.finalized)return n}}return null};var N=l.prototype;N.isSupertypeOf=function(e){if(e instanceof l){if(this.finalized!==!0||e.finalized!==!0)throw new Error("");return w.call(e.allSupertypes,this.typeName)}throw new Error(e+" is not a Def")},n.getSupertypeNames=function(e){if(!w.call(M,e))throw new Error("");var t=M[e];if(t.finalized!==!0)throw new Error("");return t.supertypeList.slice(1)},n.computeSupertypeLookupTable=function(e){for(var t={},n=Object.keys(M),r=n.length,i=0;i<r;++i){var a=n[i],o=M[a];if(o.finalized!==!0)throw new Error(""+a);for(var s=0;s<o.supertypeList.length;++s){var l=o.supertypeList[s];if(w.call(e,l)){t[a]=l;break}}}return t},N.checkAllFields=function(e,t){function n(n){var i=r[n],a=i.type,o=i.getValue(e);return a.check(o,t)}var r=this.allFields;if(this.finalized!==!0)throw new Error(""+this.typeName);return _.check(e)&&Object.keys(r).every(n)},N.check=function(e,t){if(this.finalized!==!0)throw new Error("prematurely checking unfinalized type "+this.typeName);if(!_.check(e))return!1;var n=l.fromValue(e);return n?t&&n===this?this.checkAllFields(e,t):!!this.isSupertypeOf(n)&&(!t||n.checkAllFields(e,t)&&this.checkAllFields(e,!1)):("SourceLocation"===this.typeName||"Position"===this.typeName)&&this.checkAllFields(e,t)},N.bases=function(){var e=g.call(arguments),t=this.baseNames;if(this.finalized){if(e.length!==t.length)throw new Error("");for(var n=0;n<e.length;n++)if(e[n]!==t[n])throw new Error("");return this}return e.forEach(function(e){L.assert(e),t.indexOf(e)<0&&t.push(e)}),this},Object.defineProperty(N,"buildable",{value:!1});var D={};n.builders=D;var R={};n.defineMethod=function(e,t){var n=R[e];return j.check(t)?delete R[e]:(C.assert(t),Object.defineProperty(R,e,{enumerable:!0,configurable:!0,value:t})),n};var B=L.arrayOf();N.build=function(){var e=this,t=g.call(arguments);return B.assert(t),Object.defineProperty(e,"buildParams",{value:t,writable:!1,enumerable:!1,configurable:!0}),e.buildable?e:(e.field("type",String,function(){return e.typeName}),Object.defineProperty(e,"buildable",{value:!0}),Object.defineProperty(D,u(e.typeName),{enumerable:!0,value:function(){function t(t,o){if(!w.call(a,t)){var s=e.allFields;if(!w.call(s,t))throw new Error(""+t);var l,u=s[t],c=u.type;if(I.check(o)&&o<r)l=n[o];else{if(!u.defaultFn){var p="no value or default function given for field "+JSON.stringify(t)+" of "+e.typeName+"("+e.buildParams.map(function(e){return s[e]}).join(", ")+")";throw new Error(p)}l=u.defaultFn.call(a)}if(!c.check(l))throw new Error(i(l)+" does not match field "+u+" of type "+e.typeName);a[t]=l}}var n=arguments,r=n.length,a=Object.create(R);if(!e.finalized)throw new Error("attempting to instantiate unfinalized type "+e.typeName);if(e.buildParams.forEach(function(e,n){t(e,n)}),Object.keys(e.allFields).forEach(function(e){t(e)}),a.type!==e.typeName)throw new Error("");return a}}),e)},n.getBuilderName=u,n.getStatementBuilderName=c,N.field=function(e,t,n,r){return this.finalized?(console.error("Ignoring attempt to redefine field "+JSON.stringify(e)+" of finalized type "+JSON.stringify(this.typeName)),this):(this.ownFields[e]=new s(e,t,n,r),this)};var F={};n.namedTypes=F,n.getFieldNames=p,n.getFieldValue=f,n.eachField=function(e,t,n){p(e).forEach(function(n){t.call(this,n,f(e,n))},n)},n.someField=function(e,t,n){return p(e).some(function(n){return t.call(this,n,f(e,n))},n)},Object.defineProperty(N,"finalized",{value:!1}),N.finalize=function(){var e=this;if(!e.finalized){var t=e.allFields,n=e.allSupertypes;e.baseNames.forEach(function(r){var i=M[r];if(!(i instanceof l)){var a="unknown supertype name "+JSON.stringify(r)+" for subtype "+JSON.stringify(e.typeName);throw new Error(a)}i.finalize(),m(t,i.allFields),m(n,i.allSupertypes)}),m(t,e.ownFields),n[e.typeName]=e,e.fieldNames.length=0;for(var r in t)w.call(t,r)&&!t[r].hidden&&e.fieldNames.push(r);Object.defineProperty(F,e.typeName,{enumerable:!0,value:e.type}),Object.defineProperty(e,"finalized",{value:!0}),h(e.typeName,e.supertypeList),e.buildable&&e.supertypeList.lastIndexOf("Expression")>=0&&d(e.typeName)}},n.finalize=function(){Object.keys(M).forEach(function(e){M[e].finalize()})}},{}],83:[function(e,t,n){var r=e("./lib/types");e("./def/core"),e("./def/es6"),e("./def/es7"),e("./def/mozilla"),e("./def/e4x"),e("./def/fb-harmony"),e("./def/esprima"),e("./def/babel"),r.finalize(),n.Type=r.Type,n.builtInTypes=r.builtInTypes,n.namedTypes=r.namedTypes,n.builders=r.builders,n.defineMethod=r.defineMethod,n.getFieldNames=r.getFieldNames,n.getFieldValue=r.getFieldValue,n.eachField=r.eachField,n.someField=r.someField,n.getSupertypeNames=r.getSupertypeNames,n.astNodesAreEquivalent=e("./lib/equiv"),n.finalize=r.finalize,n.NodePath=e("./lib/node-path"),n.PathVisitor=e("./lib/path-visitor"),n.visit=n.PathVisitor.visit},{"./def/babel":68,"./def/core":69,"./def/e4x":70,"./def/es6":71,"./def/es7":72,"./def/esprima":73,"./def/fb-harmony":74,"./def/mozilla":75,"./lib/equiv":76,"./lib/node-path":77,"./lib/path-visitor":78,"./lib/types":82}],84:[function(e,t,n){function r(){this._array=[],this._set=Object.create(null)}var i=e("./util"),a=Object.prototype.hasOwnProperty;r.fromArray=function(e,t){for(var n=new r,i=0,a=e.length;i<a;i++)n.add(e[i],t);return n},r.prototype.size=function(){return Object.getOwnPropertyNames(this._set).length},r.prototype.add=function(e,t){var n=i.toSetString(e),r=a.call(this._set,n),o=this._array.length;r&&!t||this._array.push(e),r||(this._set[n]=o)},r.prototype.has=function(e){var t=i.toSetString(e);return a.call(this._set,t)},r.prototype.indexOf=function(e){var t=i.toSetString(e);if(a.call(this._set,t))return this._set[t];throw new Error('"'+e+'" is not in the set.')},r.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},r.prototype.toArray=function(){return this._array.slice()},n.ArraySet=r},{"./util":93}],85:[function(e,t,n){function r(e){return e<0?(-e<<1)+1:(e<<1)+0}function i(e){var t=1===(1&e),n=e>>1;return t?-n:n}var a=e("./base64"),o=5,s=1<<o,l=s-1,u=s;n.encode=function(e){var t,n="",i=r(e);do t=i&l,i>>>=o,i>0&&(t|=u),n+=a.encode(t);while(i>0);return n},n.decode=function(e,t,n){var r,s,c=e.length,p=0,f=0;do{if(t>=c)throw new Error("Expected more digits in base 64 VLQ value.");if(s=a.decode(e.charCodeAt(t++)),s===-1)throw new Error("Invalid base64 digit: "+e.charAt(t-1));r=!!(s&u),s&=l,p+=s<<f,f+=o}while(r);n.value=i(p),n.rest=t}},{"./base64":86}],86:[function(e,t,n){var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");n.encode=function(e){if(0<=e&&e<r.length)return r[e];throw new TypeError("Must be between 0 and 63: "+e)},n.decode=function(e){var t=65,n=90,r=97,i=122,a=48,o=57,s=43,l=47,u=26,c=52;return t<=e&&e<=n?e-t:r<=e&&e<=i?e-r+u:a<=e&&e<=o?e-a+c:e==s?62:e==l?63:-1}},{}],87:[function(e,t,n){function r(e,t,i,a,o,s){var l=Math.floor((t-e)/2)+e,u=o(i,a[l],!0);return 0===u?l:u>0?t-l>1?r(l,t,i,a,o,s):s==n.LEAST_UPPER_BOUND?t<a.length?t:-1:l:l-e>1?r(e,l,i,a,o,s):s==n.LEAST_UPPER_BOUND?l:e<0?-1:e}n.GREATEST_LOWER_BOUND=1,n.LEAST_UPPER_BOUND=2,n.search=function(e,t,i,a){if(0===t.length)return-1;var o=r(-1,t.length,e,t,i,a||n.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&0===i(t[o],t[o-1],!0);)--o;return o}},{}],88:[function(e,t,n){function r(e,t){var n=e.generatedLine,r=t.generatedLine,i=e.generatedColumn,o=t.generatedColumn;return r>n||r==n&&o>=i||a.compareByGeneratedPositionsInflated(e,t)<=0}function i(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}var a=e("./util");i.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},i.prototype.add=function(e){r(this._last,e)?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},i.prototype.toArray=function(){return this._sorted||(this._array.sort(a.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},n.MappingList=i},{"./util":93}],89:[function(e,t,n){function r(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function i(e,t){return Math.round(e+Math.random()*(t-e))}function a(e,t,n,o){if(n<o){var s=i(n,o),l=n-1;r(e,s,o);for(var u=e[o],c=n;c<o;c++)t(e[c],u)<=0&&(l+=1,r(e,l,c));r(e,l+1,c);var p=l+1;a(e,t,n,p-1),a(e,t,p+1,o)}}n.quickSort=function(e,t){a(e,t,0,e.length-1)}},{}],90:[function(e,t,n){function r(e){var t=e;return"string"==typeof e&&(t=JSON.parse(e.replace(/^\)\]\}'/,""))),null!=t.sections?new o(t):new i(t)}function i(e){var t=e;"string"==typeof e&&(t=JSON.parse(e.replace(/^\)\]\}'/,"")));var n=s.getArg(t,"version"),r=s.getArg(t,"sources"),i=s.getArg(t,"names",[]),a=s.getArg(t,"sourceRoot",null),o=s.getArg(t,"sourcesContent",null),l=s.getArg(t,"mappings"),c=s.getArg(t,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);r=r.map(String).map(s.normalize).map(function(e){return a&&s.isAbsolute(a)&&s.isAbsolute(e)?s.relative(a,e):e}),this._names=u.fromArray(i.map(String),!0),this._sources=u.fromArray(r,!0),this.sourceRoot=a,this.sourcesContent=o,this._mappings=l,this.file=c}function a(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function o(e){var t=e;"string"==typeof e&&(t=JSON.parse(e.replace(/^\)\]\}'/,"")));var n=s.getArg(t,"version"),i=s.getArg(t,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new u,this._names=new u;var a={line:-1,column:0};this._sections=i.map(function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var t=s.getArg(e,"offset"),n=s.getArg(t,"line"),i=s.getArg(t,"column");if(n<a.line||n===a.line&&i<a.column)throw new Error("Section offsets must be ordered and non-overlapping.");return a=t,{generatedOffset:{generatedLine:n+1,generatedColumn:i+1},consumer:new r(s.getArg(e,"map"))}})}var s=e("./util"),l=e("./binary-search"),u=e("./array-set").ArraySet,c=e("./base64-vlq"),p=e("./quick-sort").quickSort;r.fromSourceMap=function(e){return i.fromSourceMap(e)},r.prototype._version=3,r.prototype.__generatedMappings=null,Object.defineProperty(r.prototype,"_generatedMappings",{get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),r.prototype.__originalMappings=null,Object.defineProperty(r.prototype,"_originalMappings",{get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),r.prototype._charIsMappingSeparator=function(e,t){var n=e.charAt(t);return";"===n||","===n},r.prototype._parseMappings=function(e,t){throw new Error("Subclasses must implement _parseMappings")},r.GENERATED_ORDER=1,r.ORIGINAL_ORDER=2,r.GREATEST_LOWER_BOUND=1,r.LEAST_UPPER_BOUND=2,r.prototype.eachMapping=function(e,t,n){var i,a=t||null,o=n||r.GENERATED_ORDER;switch(o){case r.GENERATED_ORDER:i=this._generatedMappings;break;case r.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var l=this.sourceRoot;i.map(function(e){var t=null===e.source?null:this._sources.at(e.source);return null!=t&&null!=l&&(t=s.join(l,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:null===e.name?null:this._names.at(e.name)}},this).forEach(e,a)},r.prototype.allGeneratedPositionsFor=function(e){var t=s.getArg(e,"line"),n={source:s.getArg(e,"source"),originalLine:t,originalColumn:s.getArg(e,"column",0)};if(null!=this.sourceRoot&&(n.source=s.relative(this.sourceRoot,n.source)),!this._sources.has(n.source))return[];n.source=this._sources.indexOf(n.source);var r=[],i=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",s.compareByOriginalPositions,l.LEAST_UPPER_BOUND);if(i>=0){var a=this._originalMappings[i];if(void 0===e.column)for(var o=a.originalLine;a&&a.originalLine===o;)r.push({line:s.getArg(a,"generatedLine",null),column:s.getArg(a,"generatedColumn",null),lastColumn:s.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i];else for(var u=a.originalColumn;a&&a.originalLine===t&&a.originalColumn==u;)r.push({line:s.getArg(a,"generatedLine",null),column:s.getArg(a,"generatedColumn",null),lastColumn:s.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i]}return r},n.SourceMapConsumer=r,i.prototype=Object.create(r.prototype),i.prototype.consumer=r,i.fromSourceMap=function(e){var t=Object.create(i.prototype),n=t._names=u.fromArray(e._names.toArray(),!0),r=t._sources=u.fromArray(e._sources.toArray(),!0);t.sourceRoot=e._sourceRoot,t.sourcesContent=e._generateSourcesContent(t._sources.toArray(),t.sourceRoot),t.file=e._file;for(var o=e._mappings.toArray().slice(),l=t.__generatedMappings=[],c=t.__originalMappings=[],f=0,d=o.length;f<d;f++){var h=o[f],m=new a;m.generatedLine=h.generatedLine,m.generatedColumn=h.generatedColumn,h.source&&(m.source=r.indexOf(h.source),m.originalLine=h.originalLine,m.originalColumn=h.originalColumn,h.name&&(m.name=n.indexOf(h.name)),c.push(m)),l.push(m)}return p(t.__originalMappings,s.compareByOriginalPositions),t},i.prototype._version=3,Object.defineProperty(i.prototype,"sources",{get:function(){return this._sources.toArray().map(function(e){return null!=this.sourceRoot?s.join(this.sourceRoot,e):e},this)}}),i.prototype._parseMappings=function(e,t){for(var n,r,i,o,l,u=1,f=0,d=0,h=0,m=0,y=0,g=e.length,v=0,b={},E={},S=[],w=[];v<g;)if(";"===e.charAt(v))u++,v++,f=0;else if(","===e.charAt(v))v++;else{for(n=new a,n.generatedLine=u,o=v;o<g&&!this._charIsMappingSeparator(e,o);o++);if(r=e.slice(v,o),i=b[r])v+=r.length;else{for(i=[];v<o;)c.decode(e,v,E),l=E.value,v=E.rest,i.push(l);if(2===i.length)throw new Error("Found a source, but no line and column");if(3===i.length)throw new Error("Found a source and line, but no column");b[r]=i}n.generatedColumn=f+i[0],f=n.generatedColumn,i.length>1&&(n.source=m+i[1],m+=i[1],n.originalLine=d+i[2],d=n.originalLine,n.originalLine+=1,n.originalColumn=h+i[3],h=n.originalColumn,i.length>4&&(n.name=y+i[4],y+=i[4])),w.push(n),"number"==typeof n.originalLine&&S.push(n)}p(w,s.compareByGeneratedPositionsDeflated),this.__generatedMappings=w,p(S,s.compareByOriginalPositions),this.__originalMappings=S},i.prototype._findMapping=function(e,t,n,r,i,a){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[r]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[r]);return l.search(e,t,i,a)},i.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var n=this._generatedMappings[e+1];if(t.generatedLine===n.generatedLine){t.lastGeneratedColumn=n.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},i.prototype.originalPositionFor=function(e){var t={generatedLine:s.getArg(e,"line"),generatedColumn:s.getArg(e,"column")},n=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",s.compareByGeneratedPositionsDeflated,s.getArg(e,"bias",r.GREATEST_LOWER_BOUND));if(n>=0){var i=this._generatedMappings[n];if(i.generatedLine===t.generatedLine){var a=s.getArg(i,"source",null);null!==a&&(a=this._sources.at(a),null!=this.sourceRoot&&(a=s.join(this.sourceRoot,a)));var o=s.getArg(i,"name",null);return null!==o&&(o=this._names.at(o)),{source:a,line:s.getArg(i,"originalLine",null),column:s.getArg(i,"originalColumn",null),name:o}}}return{source:null,line:null,column:null,name:null}},i.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return null==e}))},i.prototype.sourceContentFor=function(e,t){if(!this.sourcesContent)return null;if(null!=this.sourceRoot&&(e=s.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var n;if(null!=this.sourceRoot&&(n=s.urlParse(this.sourceRoot))){var r=e.replace(/^file:\/\//,"");if("file"==n.scheme&&this._sources.has(r))return this.sourcesContent[this._sources.indexOf(r)];if((!n.path||"/"==n.path)&&this._sources.has("/"+e))return this.sourcesContent[this._sources.indexOf("/"+e)]}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')},i.prototype.generatedPositionFor=function(e){var t=s.getArg(e,"source");if(null!=this.sourceRoot&&(t=s.relative(this.sourceRoot,t)),!this._sources.has(t))return{line:null,column:null,lastColumn:null};t=this._sources.indexOf(t);var n={source:t,originalLine:s.getArg(e,"line"),originalColumn:s.getArg(e,"column")},i=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",s.compareByOriginalPositions,s.getArg(e,"bias",r.GREATEST_LOWER_BOUND));if(i>=0){var a=this._originalMappings[i];if(a.source===n.source)return{line:s.getArg(a,"generatedLine",null),column:s.getArg(a,"generatedColumn",null),lastColumn:s.getArg(a,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},n.BasicSourceMapConsumer=i,o.prototype=Object.create(r.prototype),o.prototype.constructor=r,o.prototype._version=3,Object.defineProperty(o.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var n=0;n<this._sections[t].consumer.sources.length;n++)e.push(this._sections[t].consumer.sources[n]);return e}}),o.prototype.originalPositionFor=function(e){var t={generatedLine:s.getArg(e,"line"),generatedColumn:s.getArg(e,"column")},n=l.search(t,this._sections,function(e,t){var n=e.generatedLine-t.generatedOffset.generatedLine;return n?n:e.generatedColumn-t.generatedOffset.generatedColumn}),r=this._sections[n];return r?r.consumer.originalPositionFor({line:t.generatedLine-(r.generatedOffset.generatedLine-1),column:t.generatedColumn-(r.generatedOffset.generatedLine===t.generatedLine?r.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},o.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(e){return e.consumer.hasContentsOfAllSources()})},o.prototype.sourceContentFor=function(e,t){for(var n=0;n<this._sections.length;n++){var r=this._sections[n],i=r.consumer.sourceContentFor(e,!0);if(i)return i}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')},o.prototype.generatedPositionFor=function(e){for(var t=0;t<this._sections.length;t++){var n=this._sections[t];if(n.consumer.sources.indexOf(s.getArg(e,"source"))!==-1){var r=n.consumer.generatedPositionFor(e);if(r){var i={line:r.line+(n.generatedOffset.generatedLine-1),column:r.column+(n.generatedOffset.generatedLine===r.line?n.generatedOffset.generatedColumn-1:0)};return i}}}return{line:null,column:null}},o.prototype._parseMappings=function(e,t){this.__generatedMappings=[],this.__originalMappings=[];for(var n=0;n<this._sections.length;n++)for(var r=this._sections[n],i=r.consumer._generatedMappings,a=0;a<i.length;a++){var o=i[a],l=r.consumer._sources.at(o.source);null!==r.consumer.sourceRoot&&(l=s.join(r.consumer.sourceRoot,l)),this._sources.add(l),l=this._sources.indexOf(l);var u=r.consumer._names.at(o.name);this._names.add(u),u=this._names.indexOf(u);var c={source:l,generatedLine:o.generatedLine+(r.generatedOffset.generatedLine-1),generatedColumn:o.generatedColumn+(r.generatedOffset.generatedLine===o.generatedLine?r.generatedOffset.generatedColumn-1:0),originalLine:o.originalLine,originalColumn:o.originalColumn,name:u};this.__generatedMappings.push(c),"number"==typeof c.originalLine&&this.__originalMappings.push(c)}p(this.__generatedMappings,s.compareByGeneratedPositionsDeflated),p(this.__originalMappings,s.compareByOriginalPositions)},n.IndexedSourceMapConsumer=o},{"./array-set":84,"./base64-vlq":85,"./binary-search":87,"./quick-sort":89,"./util":93}],91:[function(e,t,n){function r(e){e||(e={}),this._file=a.getArg(e,"file",null),this._sourceRoot=a.getArg(e,"sourceRoot",null),this._skipValidation=a.getArg(e,"skipValidation",!1),this._sources=new o,this._names=new o,this._mappings=new s,this._sourcesContents=null}var i=e("./base64-vlq"),a=e("./util"),o=e("./array-set").ArraySet,s=e("./mapping-list").MappingList;r.prototype._version=3,r.fromSourceMap=function(e){var t=e.sourceRoot,n=new r({file:e.file,sourceRoot:t});return e.eachMapping(function(e){var r={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(r.source=e.source,null!=t&&(r.source=a.relative(t,r.source)),r.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(r.name=e.name)),n.addMapping(r)}),e.sources.forEach(function(t){var r=e.sourceContentFor(t);null!=r&&n.setSourceContent(t,r)}),n},r.prototype.addMapping=function(e){var t=a.getArg(e,"generated"),n=a.getArg(e,"original",null),r=a.getArg(e,"source",null),i=a.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,n,r,i),null!=r&&(r=String(r),this._sources.has(r)||this._sources.add(r)),null!=i&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=n&&n.line,originalColumn:null!=n&&n.column,source:r,name:i})},r.prototype.setSourceContent=function(e,t){var n=e;null!=this._sourceRoot&&(n=a.relative(this._sourceRoot,n)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[a.toSetString(n)]=t):this._sourcesContents&&(delete this._sourcesContents[a.toSetString(n)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},r.prototype.applySourceMap=function(e,t,n){var r=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');r=e.file}var i=this._sourceRoot;null!=i&&(r=a.relative(i,r));var s=new o,l=new o;this._mappings.unsortedForEach(function(t){if(t.source===r&&null!=t.originalLine){var o=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=o.source&&(t.source=o.source,null!=n&&(t.source=a.join(n,t.source)),null!=i&&(t.source=a.relative(i,t.source)),t.originalLine=o.line,t.originalColumn=o.column,null!=o.name&&(t.name=o.name))}var u=t.source;null==u||s.has(u)||s.add(u);var c=t.name;null==c||l.has(c)||l.add(c)},this),this._sources=s,this._names=l,e.sources.forEach(function(t){var r=e.sourceContentFor(t);null!=r&&(null!=n&&(t=a.join(n,t)),null!=i&&(t=a.relative(i,t)),this.setSourceContent(t,r))},this)},r.prototype._validateMapping=function(e,t,n,r){if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||n||r)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,original:t,name:r}))},r.prototype._serializeMappings=function(){for(var e,t,n,r,o=0,s=1,l=0,u=0,c=0,p=0,f="",d=this._mappings.toArray(),h=0,m=d.length;h<m;h++){if(t=d[h],e="",t.generatedLine!==s)for(o=0;t.generatedLine!==s;)e+=";",s++;else if(h>0){if(!a.compareByGeneratedPositionsInflated(t,d[h-1]))continue;e+=","}e+=i.encode(t.generatedColumn-o),o=t.generatedColumn,null!=t.source&&(r=this._sources.indexOf(t.source),e+=i.encode(r-p),p=r,e+=i.encode(t.originalLine-1-u),u=t.originalLine-1,e+=i.encode(t.originalColumn-l),l=t.originalColumn,null!=t.name&&(n=this._names.indexOf(t.name),e+=i.encode(n-c),c=n)),f+=e}return f},r.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;null!=t&&(e=a.relative(t,e));var n=a.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null},this)},r.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},r.prototype.toString=function(){return JSON.stringify(this.toJSON())},n.SourceMapGenerator=r},{"./array-set":84,"./base64-vlq":85,"./mapping-list":88,"./util":93}],92:[function(e,t,n){function r(e,t,n,r,i){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==n?null:n,this.name=null==i?null:i,this[l]=!0,null!=r&&this.add(r)}var i=e("./source-map-generator").SourceMapGenerator,a=e("./util"),o=/(\r?\n)/,s=10,l="$$$isSourceNode$$$";
r.fromStringWithSourceMap=function(e,t,n){function i(e,t){if(null===e||void 0===e.source)s.add(t);else{var i=n?a.join(n,e.source):e.source;s.add(new r(e.originalLine,e.originalColumn,i,t,e.name))}}var s=new r,l=e.split(o),u=function(){var e=l.shift(),t=l.shift()||"";return e+t},c=1,p=0,f=null;return t.eachMapping(function(e){if(null!==f){if(!(c<e.generatedLine)){var t=l[0],n=t.substr(0,e.generatedColumn-p);return l[0]=t.substr(e.generatedColumn-p),p=e.generatedColumn,i(f,n),void(f=e)}i(f,u()),c++,p=0}for(;c<e.generatedLine;)s.add(u()),c++;if(p<e.generatedColumn){var t=l[0];s.add(t.substr(0,e.generatedColumn)),l[0]=t.substr(e.generatedColumn),p=e.generatedColumn}f=e},this),l.length>0&&(f&&i(f,u()),s.add(l.join(""))),t.sources.forEach(function(e){var r=t.sourceContentFor(e);null!=r&&(null!=n&&(e=a.join(n,e)),s.setSourceContent(e,r))}),s},r.prototype.add=function(e){if(Array.isArray(e))e.forEach(function(e){this.add(e)},this);else{if(!e[l]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this},r.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[l]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},r.prototype.walk=function(e){for(var t,n=0,r=this.children.length;n<r;n++)t=this.children[n],t[l]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},r.prototype.join=function(e){var t,n,r=this.children.length;if(r>0){for(t=[],n=0;n<r-1;n++)t.push(this.children[n]),t.push(e);t.push(this.children[n]),this.children=t}return this},r.prototype.replaceRight=function(e,t){var n=this.children[this.children.length-1];return n[l]?n.replaceRight(e,t):"string"==typeof n?this.children[this.children.length-1]=n.replace(e,t):this.children.push("".replace(e,t)),this},r.prototype.setSourceContent=function(e,t){this.sourceContents[a.toSetString(e)]=t},r.prototype.walkSourceContents=function(e){for(var t=0,n=this.children.length;t<n;t++)this.children[t][l]&&this.children[t].walkSourceContents(e);for(var r=Object.keys(this.sourceContents),t=0,n=r.length;t<n;t++)e(a.fromSetString(r[t]),this.sourceContents[r[t]])},r.prototype.toString=function(){var e="";return this.walk(function(t){e+=t}),e},r.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},n=new i(e),r=!1,a=null,o=null,l=null,u=null;return this.walk(function(e,i){t.code+=e,null!==i.source&&null!==i.line&&null!==i.column?(a===i.source&&o===i.line&&l===i.column&&u===i.name||n.addMapping({source:i.source,original:{line:i.line,column:i.column},generated:{line:t.line,column:t.column},name:i.name}),a=i.source,o=i.line,l=i.column,u=i.name,r=!0):r&&(n.addMapping({generated:{line:t.line,column:t.column}}),a=null,r=!1);for(var c=0,p=e.length;c<p;c++)e.charCodeAt(c)===s?(t.line++,t.column=0,c+1===p?(a=null,r=!1):r&&n.addMapping({source:i.source,original:{line:i.line,column:i.column},generated:{line:t.line,column:t.column},name:i.name})):t.column++}),this.walkSourceContents(function(e,t){n.setSourceContent(e,t)}),{code:t.code,map:n}},n.SourceNode=r},{"./source-map-generator":91,"./util":93}],93:[function(e,t,n){function r(e,t,n){if(t in e)return e[t];if(3===arguments.length)return n;throw new Error('"'+t+'" is a required argument.')}function i(e){var t=e.match(g);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function a(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function o(e){var t=e,r=i(e);if(r){if(!r.path)return e;t=r.path}for(var o,s=n.isAbsolute(t),l=t.split(/\/+/),u=0,c=l.length-1;c>=0;c--)o=l[c],"."===o?l.splice(c,1):".."===o?u++:u>0&&(""===o?(l.splice(c+1,u),u=0):(l.splice(c,2),u--));return t=l.join("/"),""===t&&(t=s?"/":"."),r?(r.path=t,a(r)):t}function s(e,t){""===e&&(e="."),""===t&&(t=".");var n=i(t),r=i(e);if(r&&(e=r.path||"/"),n&&!n.scheme)return r&&(n.scheme=r.scheme),a(n);if(n||t.match(v))return t;if(r&&!r.host&&!r.path)return r.host=t,a(r);var s="/"===t.charAt(0)?t:o(e.replace(/\/+$/,"")+"/"+t);return r?(r.path=s,a(r)):s}function l(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var n=0;0!==t.indexOf(e+"/");){var r=e.lastIndexOf("/");if(r<0)return t;if(e=e.slice(0,r),e.match(/^([^\/]+:\/)?\/*$/))return t;++n}return Array(n+1).join("../")+t.substr(e.length+1)}function u(e){return e}function c(e){return f(e)?"$"+e:e}function p(e){return f(e)?e.slice(1):e}function f(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var n=t-10;n>=0;n--)if(36!==e.charCodeAt(n))return!1;return!0}function d(e,t,n){var r=e.source-t.source;return 0!==r?r:(r=e.originalLine-t.originalLine,0!==r?r:(r=e.originalColumn-t.originalColumn,0!==r||n?r:(r=e.generatedColumn-t.generatedColumn,0!==r?r:(r=e.generatedLine-t.generatedLine,0!==r?r:e.name-t.name))))}function h(e,t,n){var r=e.generatedLine-t.generatedLine;return 0!==r?r:(r=e.generatedColumn-t.generatedColumn,0!==r||n?r:(r=e.source-t.source,0!==r?r:(r=e.originalLine-t.originalLine,0!==r?r:(r=e.originalColumn-t.originalColumn,0!==r?r:e.name-t.name))))}function m(e,t){return e===t?0:e>t?1:-1}function y(e,t){var n=e.generatedLine-t.generatedLine;return 0!==n?n:(n=e.generatedColumn-t.generatedColumn,0!==n?n:(n=m(e.source,t.source),0!==n?n:(n=e.originalLine-t.originalLine,0!==n?n:(n=e.originalColumn-t.originalColumn,0!==n?n:m(e.name,t.name)))))}n.getArg=r;var g=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,v=/^data:.+\,.+$/;n.urlParse=i,n.urlGenerate=a,n.normalize=o,n.join=s,n.isAbsolute=function(e){return"/"===e.charAt(0)||!!e.match(g)},n.relative=l;var b=function(){var e=Object.create(null);return!("__proto__"in e)}();n.toSetString=b?u:c,n.fromSetString=b?u:p,n.compareByOriginalPositions=d,n.compareByGeneratedPositionsDeflated=h,n.compareByGeneratedPositionsInflated=y},{}],94:[function(e,t,n){n.SourceMapGenerator=e("./lib/source-map-generator").SourceMapGenerator,n.SourceMapConsumer=e("./lib/source-map-consumer").SourceMapConsumer,n.SourceNode=e("./lib/source-node").SourceNode},{"./lib/source-map-consumer":90,"./lib/source-map-generator":91,"./lib/source-node":92}],95:[function(e,t,n){(function(r){function i(e,t,n){function i(){for(;u.length&&!p.paused;){var e=u.shift();if(null===e)return p.emit("end");p.emit("data",e)}}function o(){p.writable=!1,t.call(p),!p.readable&&p.autoDestroy&&p.destroy()}e=e||function(e){this.queue(e)},t=t||function(){this.queue(null)};var s=!1,l=!1,u=[],c=!1,p=new a;return p.readable=p.writable=!0,p.paused=!1,p.autoDestroy=!(n&&n.autoDestroy===!1),p.write=function(t){return e.call(this,t),!p.paused},p.queue=p.push=function(e){return c?p:(null===e&&(c=!0),u.push(e),i(),p)},p.on("end",function(){p.readable=!1,!p.writable&&p.autoDestroy&&r.nextTick(function(){p.destroy()})}),p.end=function(e){if(!s)return s=!0,arguments.length&&p.write(e),o(),p},p.destroy=function(){if(!l)return l=!0,s=!0,u.length=0,p.writable=p.readable=!1,p.emit("close"),p},p.pause=function(){if(!p.paused)return p.paused=!0,p},p.resume=function(){return p.paused&&(p.paused=!1,p.emit("resume")),i(),p.paused||p.emit("drain"),p},p}var a=e("stream");n=t.exports=i,i.through=i}).call(this,e("_process"))},{_process:13,stream:30}],96:[function(e,t,n){(function(e,n){!function(n){"use strict";function r(e,t,n,r){var i=Object.create((t||a).prototype),o=new h(r||[]);return i._invoke=p(e,n,o),i}function i(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function a(){}function o(){}function s(){}function l(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function u(e){this.arg=e}function c(t){function n(e,r,a,o){var s=i(t[e],t,r);if("throw"!==s.type){var l=s.arg,c=l.value;return c instanceof u?Promise.resolve(c.arg).then(function(e){n("next",e,a,o)},function(e){n("throw",e,a,o)}):Promise.resolve(c).then(function(e){l.value=e,a(l)},o)}o(s.arg)}function r(e,t){function r(){return new Promise(function(r,i){n(e,t,r,i)})}return a=a?a.then(r,r):r()}"object"==typeof e&&e.domain&&(n=e.domain.bind(n));var a;this._invoke=r}function p(e,t,n){var r=k;return function(a,o){if(r===A)throw new Error("Generator is already running");if(r===L){if("throw"===a)throw o;return y()}for(;;){var s=n.delegate;if(s){if("return"===a||"throw"===a&&s.iterator[a]===g){n.delegate=null;var l=s.iterator.return;if(l){var u=i(l,s.iterator,o);if("throw"===u.type){a="throw",o=u.arg;continue}}if("return"===a)continue}var u=i(s.iterator[a],s.iterator,o);if("throw"===u.type){n.delegate=null,a="throw",o=u.arg;continue}a="next",o=g;var c=u.arg;if(!c.done)return r=T,c;n[s.resultName]=c.value,n.next=s.nextLoc,n.delegate=null}if("next"===a)r===T?n.sent=o:n.sent=g;else if("throw"===a){if(r===k)throw r=L,o;n.dispatchException(o)&&(a="next",o=g)}else"return"===a&&n.abrupt("return",o);r=A;var u=i(e,t,n);if("normal"===u.type){r=n.done?L:T;var c={value:u.arg,done:n.done};if(u.arg!==C)return c;n.delegate&&"next"===a&&(o=g)}else"throw"===u.type&&(r=L,a="throw",o=u.arg)}}}function f(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function d(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function h(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(f,this),this.reset(!0)}function m(e){if(e){var t=e[E];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,r=function t(){for(;++n<e.length;)if(v.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=g,t.done=!0,t};return r.next=r}}return{next:y}}function y(){return{value:g,done:!0}}var g,v=Object.prototype.hasOwnProperty,b="function"==typeof Symbol?Symbol:{},E=b.iterator||"@@iterator",S=b.toStringTag||"@@toStringTag",w="object"==typeof t,x=n.regeneratorRuntime;if(x)return void(w&&(t.exports=x));x=n.regeneratorRuntime=w?t.exports:{},x.wrap=r;var k="suspendedStart",T="suspendedYield",A="executing",L="completed",C={},P=s.prototype=a.prototype;o.prototype=P.constructor=s,s.constructor=o,s[S]=o.displayName="GeneratorFunction",x.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===o||"GeneratorFunction"===(t.displayName||t.name))},x.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,s):(e.__proto__=s,S in e||(e[S]="GeneratorFunction")),e.prototype=Object.create(P),e},x.awrap=function(e){return new u(e)},l(c.prototype),x.async=function(e,t,n,i){var a=new c(r(e,t,n,i));return x.isGeneratorFunction(t)?a:a.next().then(function(e){return e.done?e.value:a.next()})},l(P),P[E]=function(){return this},P[S]="Generator",P.toString=function(){return"[object Generator]"},x.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},x.values=m,h.prototype={constructor:h,reset:function(e){if(this.prev=0,this.next=0,this.sent=g,this.done=!1,this.delegate=null,this.tryEntries.forEach(d),!e)for(var t in this)"t"===t.charAt(0)&&v.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=g)},stop:function(){this.done=!0;var e=this.tryEntries[0],t=e.completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){function t(t,r){return a.type="throw",a.arg=e,n.next=t,!!r}if(this.done)throw e;for(var n=this,r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return t("end");if(i.tryLoc<=this.prev){var o=v.call(i,"catchLoc"),s=v.call(i,"finallyLoc");if(o&&s){if(this.prev<i.catchLoc)return t(i.catchLoc,!0);if(this.prev<i.finallyLoc)return t(i.finallyLoc)}else if(o){if(this.prev<i.catchLoc)return t(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return t(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&v.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?this.next=i.finallyLoc:this.complete(a),C},complete:function(e,t){if("throw"===e.type)throw e.arg;"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=e.arg,this.next="end"):"normal"===e.type&&t&&(this.next=t)},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),d(n),C}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;d(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:m(e),resultName:t,nextLoc:n},C}}}("object"==typeof n?n:"object"==typeof window?window:"object"==typeof self?self:this)}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{_process:13}],regenerator:[function(e,t,n){(function(n){function r(e,t){function n(e){i.push(e)}function r(){this.queue(a(i.join(""),t).code),this.queue(null)}var i=[];return h(n,r)}function i(){e("./runtime")}function a(e,t){if(t=o(t),!b.test(e))return{code:(t.includeRuntime===!0?d.readFileSync(f.join(n,"runtime.js"),"utf-8")+"\n":"")+e};var r=s(t),i=g.parse(e,r),a=new v.NodePath(i),u=a.get("program");return l(e,t)&&c(u.node),m(u,t),g.print(a,r)}function o(t){return t=y.defaults(t||{},{includeRuntime:!1,supportBlockBinding:!0}),t.esprima||(t.esprima=e("esprima-fb")),p.ok(/harmony/.test(t.esprima.version),"Bad esprima version: "+t.esprima.version),t}function s(e){function t(t){t in e&&(n[t]=e[t])}var n={range:!0};return t("esprima"),t("sourceFileName"),t("sourceMapName"),t("inputSourceMap"),t("sourceRoot"),n}function l(e,t){var n=!!t.supportBlockBinding;return n&&(E.test(e)||(n=!1)),n}function u(e,t){var n=s(o(t)),r=g.parse(e,n);return c(r.program),g.print(r,n).code}function c(t){v.namedTypes.Program.assert(t);var n=e("defs")(t,{ast:!0,disallowUnknownReferences:!1,disallowDuplicated:!1,disallowVars:!1,loopClosures:"iife"});if(n.errors)throw new Error(n.errors.join("\n"));return t}var p=e("assert"),f=e("path"),d=e("fs"),h=e("through"),m=e("./lib/visit").transform,y=e("./lib/util"),g=e("recast"),v=g.types,b=/\bfunction\s*\*|\basync\b/,E=/\b(let|const)\s+/;t.exports=r,r.runtime=i,i.path=f.join(n,"runtime.js"),r.varify=u,r.types=v,r.compile=a,r.transform=m}).call(this,"/node_modules/regenerator")},{"./lib/util":39,"./lib/visit":40,"./runtime":96,assert:2,defs:41,"esprima-fb":55,fs:1,path:12,recast:67,through:95}]},{},[]);