/*! blanket - v1.2.1 */
!function(a){!function(b){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=b();else if("function"==typeof a&&a.amd)a([],b);else{var c;c="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,c.acorn=b()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b,c){"use strict";function d(a,b){var c=g(b,a),d=c.pos,e=c.options.locations&&c.curPosition();return c.nextToken(),c.parseTopLevel(c.options.program||c.startNodeAt(d,e))}function e(a,b,c){var d=g(c,a,b);return d.nextToken(),d.parseExpression()}function f(a,b){return g(b,a)}function g(a,b){return new i(k(a),String(b))}c.parse=d,c.parseExpressionAt=e,c.tokenizer=f,c.__esModule=!0;
// various contributors and released under an MIT license.
//
// Git repositories for Acorn are available at
//
//     http://marijnhaverbeke.nl/git/acorn
//     https://github.com/marijnh/acorn.git
//
// Please use the [github bug tracker][ghbt] to report issues.
//
// [ghbt]: https://github.com/marijnh/acorn/issues
//
// This file defines the main parser interface. The library also comes
// with a [error-tolerant parser][dammit] and an
// [abstract syntax tree walker][walk], defined in other files.
//
// [dammit]: acorn_loose.js
// [walk]: util/walk.js
var h=a("./state"),i=h.Parser,j=a("./options"),k=j.getOptions;a("./parseutil"),a("./statement"),a("./lval"),a("./expression"),c.Parser=h.Parser,c.plugins=h.plugins,c.defaultOptions=j.defaultOptions;var l=a("./location");c.SourceLocation=l.SourceLocation,c.getLineInfo=l.getLineInfo,c.Node=a("./node").Node;var m=a("./tokentype");c.TokenType=m.TokenType,c.tokTypes=m.types;var n=a("./tokencontext");c.TokContext=n.TokContext,c.tokContexts=n.types;var o=a("./identifier");c.isIdentifierChar=o.isIdentifierChar,c.isIdentifierStart=o.isIdentifierStart,c.Token=a("./tokenize").Token;var p=a("./whitespace");c.isNewLine=p.isNewLine,c.lineBreak=p.lineBreak,c.lineBreakG=p.lineBreakG;var q="1.2.2";c.version=q},{"./expression":6,"./identifier":7,"./location":8,"./lval":9,"./node":10,"./options":11,"./parseutil":12,"./state":13,"./statement":14,"./tokencontext":15,"./tokenize":16,"./tokentype":17,"./whitespace":19}],2:[function(a,b,c){"function"==typeof Object.create?b.exports=function(a,b){a.super_=b,a.prototype=Object.create(b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})}:b.exports=function(a,b){a.super_=b;var c=function(){};c.prototype=b.prototype,a.prototype=new c,a.prototype.constructor=a}},{}],3:[function(a,b,c){function d(){if(!h){h=!0;for(var a,b=g.length;b;){a=g,g=[];for(var c=-1;++c<b;)a[c]();b=g.length}h=!1}}function e(){}var f=b.exports={},g=[],h=!1;f.nextTick=function(a){g.push(a),h||setTimeout(d,0)},f.title="browser",f.browser=!0,f.env={},f.argv=[],f.version="",f.versions={},f.on=e,f.addListener=e,f.once=e,f.off=e,f.removeListener=e,f.removeAllListeners=e,f.emit=e,f.binding=function(a){throw new Error("process.binding is not supported")},f.cwd=function(){return"/"},f.chdir=function(a){throw new Error("process.chdir is not supported")},f.umask=function(){return 0}},{}],4:[function(a,b,c){b.exports=function(a){return a&&"object"==typeof a&&"function"==typeof a.copy&&"function"==typeof a.fill&&"function"==typeof a.readUInt8}},{}],5:[function(a,b,c){(function(b,d){function e(a,b){var d={seen:[],stylize:g};return arguments.length>=3&&(d.depth=arguments[2]),arguments.length>=4&&(d.colors=arguments[3]),p(b)?d.showHidden=b:b&&c._extend(d,b),v(d.showHidden)&&(d.showHidden=!1),v(d.depth)&&(d.depth=2),v(d.colors)&&(d.colors=!1),v(d.customInspect)&&(d.customInspect=!0),d.colors&&(d.stylize=f),i(d,a,d.depth)}function f(a,b){var c=e.styles[b];return c?"["+e.colors[c][0]+"m"+a+"["+e.colors[c][1]+"m":a}function g(a,b){return a}function h(a){var b={};return a.forEach(function(a,c){b[a]=!0}),b}function i(a,b,d){if(a.customInspect&&b&&A(b.inspect)&&b.inspect!==c.inspect&&(!b.constructor||b.constructor.prototype!==b)){var e=b.inspect(d,a);return t(e)||(e=i(a,e,d)),e}var f=j(a,b);if(f)return f;var g=Object.keys(b),p=h(g);if(a.showHidden&&(g=Object.getOwnPropertyNames(b)),z(b)&&(g.indexOf("message")>=0||g.indexOf("description")>=0))return k(b);if(0===g.length){if(A(b)){var q=b.name?": "+b.name:"";return a.stylize("[Function"+q+"]","special")}if(w(b))return a.stylize(RegExp.prototype.toString.call(b),"regexp");if(y(b))return a.stylize(Date.prototype.toString.call(b),"date");if(z(b))return k(b)}var r="",s=!1,u=["{","}"];if(o(b)&&(s=!0,u=["[","]"]),A(b)){var v=b.name?": "+b.name:"";r=" [Function"+v+"]"}if(w(b)&&(r=" "+RegExp.prototype.toString.call(b)),y(b)&&(r=" "+Date.prototype.toUTCString.call(b)),z(b)&&(r=" "+k(b)),0===g.length&&(!s||0==b.length))return u[0]+r+u[1];if(0>d)return w(b)?a.stylize(RegExp.prototype.toString.call(b),"regexp"):a.stylize("[Object]","special");a.seen.push(b);var x;return x=s?l(a,b,d,p,g):g.map(function(c){return m(a,b,d,p,c,s)}),a.seen.pop(),n(x,r,u)}function j(a,b){if(v(b))return a.stylize("undefined","undefined");if(t(b)){var c="'"+JSON.stringify(b).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return a.stylize(c,"string")}return s(b)?a.stylize(""+b,"number"):p(b)?a.stylize(""+b,"boolean"):q(b)?a.stylize("null","null"):void 0}function k(a){return"["+Error.prototype.toString.call(a)+"]"}function l(a,b,c,d,e){for(var f=[],g=0,h=b.length;h>g;++g)F(b,String(g))?f.push(m(a,b,c,d,String(g),!0)):f.push("");return e.forEach(function(e){e.match(/^\d+$/)||f.push(m(a,b,c,d,e,!0))}),f}function m(a,b,c,d,e,f){var g,h,j;if(j=Object.getOwnPropertyDescriptor(b,e)||{value:b[e]},j.get?h=j.set?a.stylize("[Getter/Setter]","special"):a.stylize("[Getter]","special"):j.set&&(h=a.stylize("[Setter]","special")),F(d,e)||(g="["+e+"]"),h||(a.seen.indexOf(j.value)<0?(h=q(c)?i(a,j.value,null):i(a,j.value,c-1),h.indexOf("\n")>-1&&(h=f?h.split("\n").map(function(a){return"  "+a}).join("\n").substr(2):"\n"+h.split("\n").map(function(a){return"   "+a}).join("\n"))):h=a.stylize("[Circular]","special")),v(g)){if(f&&e.match(/^\d+$/))return h;g=JSON.stringify(""+e),g.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(g=g.substr(1,g.length-2),g=a.stylize(g,"name")):(g=g.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),g=a.stylize(g,"string"))}return g+": "+h}function n(a,b,c){var d=0,e=a.reduce(function(a,b){return d++,b.indexOf("\n")>=0&&d++,a+b.replace(/\u001b\[\d\d?m/g,"").length+1},0);return e>60?c[0]+(""===b?"":b+"\n ")+" "+a.join(",\n  ")+" "+c[1]:c[0]+b+" "+a.join(", ")+" "+c[1]}function o(a){return Array.isArray(a)}function p(a){return"boolean"==typeof a}function q(a){return null===a}function r(a){return null==a}function s(a){return"number"==typeof a}function t(a){return"string"==typeof a}function u(a){return"symbol"==typeof a}function v(a){return void 0===a}function w(a){return x(a)&&"[object RegExp]"===C(a)}function x(a){return"object"==typeof a&&null!==a}function y(a){return x(a)&&"[object Date]"===C(a)}function z(a){return x(a)&&("[object Error]"===C(a)||a instanceof Error)}function A(a){return"function"==typeof a}function B(a){return null===a||"boolean"==typeof a||"number"==typeof a||"string"==typeof a||"symbol"==typeof a||"undefined"==typeof a}function C(a){return Object.prototype.toString.call(a)}function D(a){return 10>a?"0"+a.toString(10):a.toString(10)}function E(){var a=new Date,b=[D(a.getHours()),D(a.getMinutes()),D(a.getSeconds())].join(":");return[a.getDate(),J[a.getMonth()],b].join(" ")}function F(a,b){return Object.prototype.hasOwnProperty.call(a,b)}
// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.
var G=/%[sdj%]/g;c.format=function(a){if(!t(a)){for(var b=[],c=0;c<arguments.length;c++)b.push(e(arguments[c]));return b.join(" ")}for(var c=1,d=arguments,f=d.length,g=String(a).replace(G,function(a){if("%%"===a)return"%";if(c>=f)return a;switch(a){case"%s":return String(d[c++]);case"%d":return Number(d[c++]);case"%j":try{return JSON.stringify(d[c++])}catch(b){return"[Circular]"}default:return a}}),h=d[c];f>c;h=d[++c])g+=q(h)||!x(h)?" "+h:" "+e(h);return g},c.deprecate=function(a,e){function f(){if(!g){if(b.throwDeprecation)throw new Error(e);b.traceDeprecation?console.trace(e):console.error(e),g=!0}return a.apply(this,arguments)}if(v(d.process))return function(){return c.deprecate(a,e).apply(this,arguments)};if(b.noDeprecation===!0)return a;var g=!1;return f};var H,I={};c.debuglog=function(a){if(v(H)&&(H=b.env.NODE_DEBUG||""),a=a.toUpperCase(),!I[a])if(new RegExp("\\b"+a+"\\b","i").test(H)){var d=b.pid;I[a]=function(){var b=c.format.apply(c,arguments);console.error("%s %d: %s",a,d,b)}}else I[a]=function(){};return I[a]},c.inspect=e,e.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]},e.styles={special:"cyan",number:"yellow","boolean":"yellow",undefined:"grey","null":"bold",string:"green",date:"magenta",regexp:"red"},c.isArray=o,c.isBoolean=p,c.isNull=q,c.isNullOrUndefined=r,c.isNumber=s,c.isString=t,c.isSymbol=u,c.isUndefined=v,c.isRegExp=w,c.isObject=x,c.isDate=y,c.isError=z,c.isFunction=A,c.isPrimitive=B,c.isBuffer=a("./support/isBuffer");var J=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];c.log=function(){console.log("%s - %s",E(),c.format.apply(c,arguments))},c.inherits=a("inherits"),c._extend=function(a,b){if(!b||!x(b))return a;for(var c=Object.keys(b),d=c.length;d--;)a[c[d]]=b[c[d]];return a}}).call(this,a("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":4,_process:3,inherits:2}],6:[function(a,b,c){"use strict";var d=a("./tokentype").types,e=a("./state").Parser,f=a("./identifier").reservedWords,g=a("./util").has,h=e.prototype;h.checkPropClash=function(a,b){if(!(this.options.ecmaVersion>=6)){var c=a.key,d=void 0;switch(c.type){case"Identifier":d=c.name;break;case"Literal":d=String(c.value);break;default:return}var e=a.kind||"init",f=void 0;if(g(b,d)){f=b[d];var h="init"!==e;((this.strict||h)&&f[e]||!(h^f.init))&&this.raise(c.start,"Redefinition of property")}else f=b[d]={init:!1,get:!1,set:!1};f[e]=!0}},h.parseExpression=function(a,b){var c=this.start,e=this.startLoc,f=this.parseMaybeAssign(a,b);if(this.type===d.comma){var g=this.startNodeAt(c,e);for(g.expressions=[f];this.eat(d.comma);)g.expressions.push(this.parseMaybeAssign(a,b));return this.finishNode(g,"SequenceExpression")}return f},h.parseMaybeAssign=function(a,b,c){if(this.type==d._yield&&this.inGenerator)return this.parseYield();var e=void 0;b?e=!1:(b={start:0},e=!0);var f=this.start,g=this.startLoc;(this.type==d.parenL||this.type==d.name)&&(this.potentialArrowAt=this.start);var h=this.parseMaybeConditional(a,b);if(c&&(h=c.call(this,h,f,g)),this.type.isAssign){var i=this.startNodeAt(f,g);return i.operator=this.value,i.left=this.type===d.eq?this.toAssignable(h):h,b.start=0,this.checkLVal(h),this.next(),i.right=this.parseMaybeAssign(a),this.finishNode(i,"AssignmentExpression")}return e&&b.start&&this.unexpected(b.start),h},h.parseMaybeConditional=function(a,b){var c=this.start,e=this.startLoc,f=this.parseExprOps(a,b);if(b&&b.start)return f;if(this.eat(d.question)){var g=this.startNodeAt(c,e);return g.test=f,g.consequent=this.parseMaybeAssign(),this.expect(d.colon),g.alternate=this.parseMaybeAssign(a),this.finishNode(g,"ConditionalExpression")}return f},h.parseExprOps=function(a,b){var c=this.start,d=this.startLoc,e=this.parseMaybeUnary(b);return b&&b.start?e:this.parseExprOp(e,c,d,-1,a)},h.parseExprOp=function(a,b,c,e,f){var g=this.type.binop;if(Array.isArray(b)&&this.options.locations&&void 0===f&&(f=e,e=c,c=b[1],b=b[0]),null!=g&&(!f||this.type!==d._in)&&g>e){var h=this.startNodeAt(b,c);h.left=a,h.operator=this.value;var i=this.type;this.next();var j=this.start,k=this.startLoc;return h.right=this.parseExprOp(this.parseMaybeUnary(),j,k,g,f),this.finishNode(h,i===d.logicalOR||i===d.logicalAND?"LogicalExpression":"BinaryExpression"),this.parseExprOp(h,b,c,e,f)}return a},h.parseMaybeUnary=function(a){if(this.type.prefix){var b=this.startNode(),c=this.type===d.incDec;return b.operator=this.value,b.prefix=!0,this.next(),b.argument=this.parseMaybeUnary(),a&&a.start&&this.unexpected(a.start),c?this.checkLVal(b.argument):this.strict&&"delete"===b.operator&&"Identifier"===b.argument.type&&this.raise(b.start,"Deleting local variable in strict mode"),this.finishNode(b,c?"UpdateExpression":"UnaryExpression")}var e=this.start,f=this.startLoc,g=this.parseExprSubscripts(a);if(a&&a.start)return g;for(;this.type.postfix&&!this.canInsertSemicolon();){var b=this.startNodeAt(e,f);b.operator=this.value,b.prefix=!1,b.argument=g,this.checkLVal(g),this.next(),g=this.finishNode(b,"UpdateExpression")}return g},h.parseExprSubscripts=function(a){var b=this.start,c=this.startLoc,d=this.parseExprAtom(a);return a&&a.start?d:this.parseSubscripts(d,b,c)},h.parseSubscripts=function(a,b,c,e){for(Array.isArray(b)&&this.options.locations&&void 0===e&&(e=c,c=b[1],b=b[0]);;)if(this.eat(d.dot)){var f=this.startNodeAt(b,c);f.object=a,f.property=this.parseIdent(!0),f.computed=!1,a=this.finishNode(f,"MemberExpression")}else if(this.eat(d.bracketL)){var f=this.startNodeAt(b,c);f.object=a,f.property=this.parseExpression(),f.computed=!0,this.expect(d.bracketR),a=this.finishNode(f,"MemberExpression")}else if(!e&&this.eat(d.parenL)){var f=this.startNodeAt(b,c);f.callee=a,f.arguments=this.parseExprList(d.parenR,!1),a=this.finishNode(f,"CallExpression")}else{if(this.type!==d.backQuote)return a;var f=this.startNodeAt(b,c);f.tag=a,f.quasi=this.parseTemplate(),a=this.finishNode(f,"TaggedTemplateExpression")}},h.parseExprAtom=function(a){var b=void 0,c=this.potentialArrowAt==this.start;switch(this.type){case d._this:case d._super:var e=this.type===d._this?"ThisExpression":"Super";return b=this.startNode(),this.next(),this.finishNode(b,e);case d._yield:this.inGenerator&&this.unexpected();case d.name:var f=this.start,g=this.startLoc,h=this.parseIdent(this.type!==d.name);return c&&!this.canInsertSemicolon()&&this.eat(d.arrow)?this.parseArrowExpression(this.startNodeAt(f,g),[h]):h;case d.regexp:var i=this.value;return b=this.parseLiteral(i.value),b.regex={pattern:i.pattern,flags:i.flags},b;case d.num:case d.string:return this.parseLiteral(this.value);case d._null:case d._true:case d._false:return b=this.startNode(),b.value=this.type===d._null?null:this.type===d._true,b.raw=this.type.keyword,this.next(),this.finishNode(b,"Literal");case d.parenL:return this.parseParenAndDistinguishExpression(c);case d.bracketL:return b=this.startNode(),this.next(),this.options.ecmaVersion>=7&&this.type===d._for?this.parseComprehension(b,!1):(b.elements=this.parseExprList(d.bracketR,!0,!0,a),this.finishNode(b,"ArrayExpression"));case d.braceL:return this.parseObj(!1,a);case d._function:return b=this.startNode(),this.next(),this.parseFunction(b,!1);case d._class:return this.parseClass(this.startNode(),!1);case d._new:return this.parseNew();case d.backQuote:return this.parseTemplate();default:this.unexpected()}},h.parseLiteral=function(a){var b=this.startNode();return b.value=a,b.raw=this.input.slice(this.start,this.end),this.next(),this.finishNode(b,"Literal")},h.parseParenExpression=function(){this.expect(d.parenL);var a=this.parseExpression();return this.expect(d.parenR),a},h.parseParenAndDistinguishExpression=function(a){var b=this.start,c=this.startLoc,e=void 0;if(this.options.ecmaVersion>=6){if(this.next(),this.options.ecmaVersion>=7&&this.type===d._for)return this.parseComprehension(this.startNodeAt(b,c),!0);for(var f=this.start,g=this.startLoc,h=[],i=!0,j={start:0},k=void 0,l=void 0;this.type!==d.parenR;){if(i?i=!1:this.expect(d.comma),this.type===d.ellipsis){k=this.start,h.push(this.parseParenItem(this.parseRest()));break}this.type!==d.parenL||l||(l=this.start),h.push(this.parseMaybeAssign(!1,j,this.parseParenItem))}var m=this.start,n=this.startLoc;if(this.expect(d.parenR),a&&!this.canInsertSemicolon()&&this.eat(d.arrow))return l&&this.unexpected(l),this.parseParenArrowList(b,c,h);h.length||this.unexpected(this.lastTokStart),k&&this.unexpected(k),j.start&&this.unexpected(j.start),h.length>1?(e=this.startNodeAt(f,g),e.expressions=h,this.finishNodeAt(e,"SequenceExpression",m,n)):e=h[0]}else e=this.parseParenExpression();if(this.options.preserveParens){var o=this.startNodeAt(b,c);return o.expression=e,this.finishNode(o,"ParenthesizedExpression")}return e},h.parseParenItem=function(a){return a},h.parseParenArrowList=function(a,b,c){return this.parseArrowExpression(this.startNodeAt(a,b),c)};var i=[];h.parseNew=function(){var a=this.startNode(),b=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(d.dot))return a.meta=b,a.property=this.parseIdent(!0),"target"!==a.property.name&&this.raise(a.property.start,"The only valid meta property for new is new.target"),this.finishNode(a,"MetaProperty");var c=this.start,e=this.startLoc;return a.callee=this.parseSubscripts(this.parseExprAtom(),c,e,!0),this.eat(d.parenL)?a.arguments=this.parseExprList(d.parenR,!1):a.arguments=i,this.finishNode(a,"NewExpression")},h.parseTemplateElement=function(){var a=this.startNode();return a.value={raw:this.input.slice(this.start,this.end),cooked:this.value},this.next(),a.tail=this.type===d.backQuote,this.finishNode(a,"TemplateElement")},h.parseTemplate=function(){var a=this.startNode();this.next(),a.expressions=[];var b=this.parseTemplateElement();for(a.quasis=[b];!b.tail;)this.expect(d.dollarBraceL),a.expressions.push(this.parseExpression()),this.expect(d.braceR),a.quasis.push(b=this.parseTemplateElement());return this.next(),this.finishNode(a,"TemplateLiteral")},h.parseObj=function(a,b){var c=this.startNode(),e=!0,f={};for(c.properties=[],this.next();!this.eat(d.braceR);){if(e)e=!1;else if(this.expect(d.comma),this.afterTrailingComma(d.braceR))break;var g=this.startNode(),h=void 0,i=void 0,j=void 0;this.options.ecmaVersion>=6&&(g.method=!1,g.shorthand=!1,(a||b)&&(i=this.start,j=this.startLoc),a||(h=this.eat(d.star))),this.parsePropertyName(g),this.parsePropertyValue(g,a,h,i,j,b),this.checkPropClash(g,f),c.properties.push(this.finishNode(g,"Property"))}return this.finishNode(c,a?"ObjectPattern":"ObjectExpression")},h.parsePropertyValue=function(a,b,c,e,g,h){this.eat(d.colon)?(a.value=b?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,h),a.kind="init"):this.options.ecmaVersion>=6&&this.type===d.parenL?(b&&this.unexpected(),a.kind="init",a.method=!0,a.value=this.parseMethod(c)):this.options.ecmaVersion>=5&&!a.computed&&"Identifier"===a.key.type&&("get"===a.key.name||"set"===a.key.name)&&this.type!=d.comma&&this.type!=d.braceR?((c||b)&&this.unexpected(),a.kind=a.key.name,this.parsePropertyName(a),a.value=this.parseMethod(!1)):this.options.ecmaVersion>=6&&!a.computed&&"Identifier"===a.key.type?(a.kind="init",b?((this.isKeyword(a.key.name)||this.strict&&(f.strictBind(a.key.name)||f.strict(a.key.name))||!this.options.allowReserved&&this.isReservedWord(a.key.name))&&this.raise(a.key.start,"Binding "+a.key.name),a.value=this.parseMaybeDefault(e,g,a.key)):this.type===d.eq&&h?(h.start||(h.start=this.start),a.value=this.parseMaybeDefault(e,g,a.key)):a.value=a.key,a.shorthand=!0):this.unexpected()},h.parsePropertyName=function(a){if(this.options.ecmaVersion>=6){if(this.eat(d.bracketL))return a.computed=!0,a.key=this.parseMaybeAssign(),this.expect(d.bracketR),a.key;a.computed=!1}return a.key=this.type===d.num||this.type===d.string?this.parseExprAtom():this.parseIdent(!0)},h.initFunction=function(a){a.id=null,this.options.ecmaVersion>=6&&(a.generator=!1,a.expression=!1)},h.parseMethod=function(a){var b=this.startNode();this.initFunction(b),this.expect(d.parenL),b.params=this.parseBindingList(d.parenR,!1,!1);var c=void 0;return this.options.ecmaVersion>=6?(b.generator=a,c=!0):c=!1,this.parseFunctionBody(b,c),this.finishNode(b,"FunctionExpression")},h.parseArrowExpression=function(a,b){return this.initFunction(a),a.params=this.toAssignableList(b,!0),this.parseFunctionBody(a,!0),this.finishNode(a,"ArrowFunctionExpression")},h.parseFunctionBody=function(a,b){var c=b&&this.type!==d.braceL;if(c)a.body=this.parseMaybeAssign(),a.expression=!0;else{var e=this.inFunction,f=this.inGenerator,g=this.labels;this.inFunction=!0,this.inGenerator=a.generator,this.labels=[],a.body=this.parseBlock(!0),a.expression=!1,this.inFunction=e,this.inGenerator=f,this.labels=g}if(this.strict||!c&&a.body.body.length&&this.isUseStrict(a.body.body[0])){var h={},i=this.strict;this.strict=!0,a.id&&this.checkLVal(a.id,!0);for(var j=0;j<a.params.length;j++)this.checkLVal(a.params[j],!0,h);this.strict=i}},h.parseExprList=function(a,b,c,e){for(var f=[],g=!0;!this.eat(a);){if(g)g=!1;else if(this.expect(d.comma),b&&this.afterTrailingComma(a))break;c&&this.type===d.comma?f.push(null):this.type===d.ellipsis?f.push(this.parseSpread(e)):f.push(this.parseMaybeAssign(!1,e))}return f},h.parseIdent=function(a){var b=this.startNode();return a&&"never"==this.options.allowReserved&&(a=!1),this.type===d.name?(!a&&(!this.options.allowReserved&&this.isReservedWord(this.value)||this.strict&&f.strict(this.value)&&(this.options.ecmaVersion>=6||-1==this.input.slice(this.start,this.end).indexOf("\\")))&&this.raise(this.start,"The keyword '"+this.value+"' is reserved"),b.name=this.value):a&&this.type.keyword?b.name=this.type.keyword:this.unexpected(),this.next(),this.finishNode(b,"Identifier")},h.parseYield=function(){var a=this.startNode();return this.next(),this.type==d.semi||this.canInsertSemicolon()||this.type!=d.star&&!this.type.startsExpr?(a.delegate=!1,a.argument=null):(a.delegate=this.eat(d.star),a.argument=this.parseMaybeAssign()),this.finishNode(a,"YieldExpression")},h.parseComprehension=function(a,b){for(a.blocks=[];this.type===d._for;){var c=this.startNode();this.next(),this.expect(d.parenL),c.left=this.parseBindingAtom(),this.checkLVal(c.left,!0),this.expectContextual("of"),c.right=this.parseExpression(),this.expect(d.parenR),a.blocks.push(this.finishNode(c,"ComprehensionBlock"))}return a.filter=this.eat(d._if)?this.parseParenExpression():null,a.body=this.parseExpression(),this.expect(b?d.parenR:d.bracketR),a.generator=b,this.finishNode(a,"ComprehensionExpression")}},{"./identifier":7,"./state":13,"./tokentype":17,"./util":18}],7:[function(a,b,c){"use strict";function d(a){function b(a){if(1==a.length)return c+="return str === "+JSON.stringify(a[0])+";";c+="switch(str){";for(var b=0;b<a.length;++b)c+="case "+JSON.stringify(a[b])+":";c+="return true}return false;"}a=a.split(" ");var c="",d=[];a:for(var e=0;e<a.length;++e){for(var f=0;f<d.length;++f)if(d[f][0].length==a[e].length){d[f].push(a[e]);continue a}d.push([a[e]])}if(d.length>3){d.sort(function(a,b){return b.length-a.length}),c+="switch(str.length){";for(var e=0;e<d.length;++e){var g=d[e];c+="case "+g[0].length+":",b(g)}c+="}"}else b(a);return new Function("str",c)}function e(a,b){for(var c=65536,d=0;d<b.length;d+=2){if(c+=b[d],c>a)return!1;if(c+=b[d+1],c>=a)return!0}}function f(a,b){return 65>a?36===a:91>a?!0:97>a?95===a:123>a?!0:65535>=a?a>=170&&m.test(String.fromCharCode(a)):b===!1?!1:e(a,o)}function g(a,b){return 48>a?36===a:58>a?!0:65>a?!1:91>a?!0:97>a?95===a:123>a?!0:65535>=a?a>=170&&n.test(String.fromCharCode(a)):b===!1?!1:e(a,o)||e(a,p)}c.isIdentifierStart=f,c.isIdentifierChar=g,c.__esModule=!0;var h={3:d("abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile"),5:d("class enum extends super const export import"),6:d("enum await"),strict:d("implements interface let package private protected public static yield"),strictBind:d("eval arguments")};c.reservedWords=h;var i="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",j={5:d(i),6:d(i+" let const class extends export import yield super")};c.keywords=j;var k="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠ-ࢲऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘౙౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൠൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᧁ-ᧇᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞭꞰꞱꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭟꭤꭥꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ﬀ-ﬆﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼＡ-Ｚａ-ｚｦ-ﾾￂ-ￇￊ-ￏￒ-ￗￚ-ￜ",l="‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࣤ-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఃా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഁ-ഃാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ංඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ູົຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠐-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏ᦰ-ᧀᧈᧉ᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭ᳲ-᳴᳸᳹᷀-᷵᷼-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-꣄꣐-꣙꣠-꣱꤀-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︭︳︴﹍-﹏０-９＿",m=new RegExp("["+k+"]"),n=new RegExp("["+k+l+"]");k=l=null;var o=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,17,26,6,37,11,29,3,35,5,7,2,4,43,157,99,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,98,21,11,25,71,55,7,1,65,0,16,3,2,2,2,26,45,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,955,52,76,44,33,24,27,35,42,34,4,0,13,47,15,3,22,0,38,17,2,24,133,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,32,4,287,47,21,1,2,0,185,46,82,47,21,0,60,42,502,63,32,0,449,56,1288,920,104,110,2962,1070,13266,568,8,30,114,29,19,47,17,3,32,20,6,18,881,68,12,0,67,12,16481,1,3071,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,4149,196,1340,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42710,42,4148,12,221,16355,541],p=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,1306,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,52,0,13,2,49,13,16,9,83,11,168,11,6,9,8,2,57,0,2,6,3,1,3,2,10,0,11,1,3,6,4,4,316,19,13,9,214,6,3,8,112,16,16,9,82,12,9,9,535,9,20855,9,135,4,60,6,26,9,1016,45,17,3,19723,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,4305,6,792618,239]},{}],8:[function(a,b,c){"use strict";function d(a,b){for(var c=1,d=0;;){g.lastIndex=d;var e=g.exec(a);if(!(e&&e.index<b))return new h(c,b-d);++c,d=e.index+e[0].length}}var e=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")};c.getLineInfo=d,c.__esModule=!0;var f=a("./state").Parser,g=a("./whitespace").lineBreakG,h=(a("util").deprecate,c.Position=function(){function a(b,c){e(this,a),this.line=b,this.column=c}return a.prototype.offset=function(b){return new a(this.line,this.column+b)},a}()),i=(c.SourceLocation=function j(a,b,c){e(this,j),this.start=b,this.end=c,null!==a.sourceFile&&(this.source=a.sourceFile)},f.prototype);i.raise=function(a,b){var c=d(this.input,a);b+=" ("+c.line+":"+c.column+")";var e=new SyntaxError(b);throw e.pos=a,e.loc=c,e.raisedAt=this.pos,e},i.curPosition=function(){return new h(this.curLine,this.pos-this.lineStart)},i.markPosition=function(){return this.options.locations?[this.start,this.startLoc]:this.start}},{"./state":13,"./whitespace":19,util:5}],9:[function(a,b,c){"use strict";var d=a("./tokentype").types,e=a("./state").Parser,f=a("./identifier").reservedWords,g=a("./util").has,h=e.prototype;h.toAssignable=function(a,b){if(this.options.ecmaVersion>=6&&a)switch(a.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":break;case"ObjectExpression":a.type="ObjectPattern";for(var c=0;c<a.properties.length;c++){var d=a.properties[c];"init"!==d.kind&&this.raise(d.key.start,"Object pattern can't contain getter or setter"),this.toAssignable(d.value,b)}break;case"ArrayExpression":a.type="ArrayPattern",this.toAssignableList(a.elements,b);break;case"AssignmentExpression":"="===a.operator?a.type="AssignmentPattern":this.raise(a.left.end,"Only '=' operator can be used for specifying default value.");break;case"ParenthesizedExpression":a.expression=this.toAssignable(a.expression,b);break;case"MemberExpression":if(!b)break;default:this.raise(a.start,"Assigning to rvalue")}return a},h.toAssignableList=function(a,b){var c=a.length;if(c){var d=a[c-1];if(d&&"RestElement"==d.type)--c;else if(d&&"SpreadElement"==d.type){d.type="RestElement";var e=d.argument;this.toAssignable(e,b),"Identifier"!==e.type&&"MemberExpression"!==e.type&&"ArrayPattern"!==e.type&&this.unexpected(e.start),--c}}for(var f=0;c>f;f++){var g=a[f];g&&this.toAssignable(g,b)}return a},h.parseSpread=function(a){var b=this.startNode();return this.next(),b.argument=this.parseMaybeAssign(a),this.finishNode(b,"SpreadElement")},h.parseRest=function(){var a=this.startNode();return this.next(),a.argument=this.type===d.name||this.type===d.bracketL?this.parseBindingAtom():this.unexpected(),this.finishNode(a,"RestElement")},h.parseBindingAtom=function(){if(this.options.ecmaVersion<6)return this.parseIdent();switch(this.type){case d.name:return this.parseIdent();case d.bracketL:var a=this.startNode();return this.next(),a.elements=this.parseBindingList(d.bracketR,!0,!0),this.finishNode(a,"ArrayPattern");case d.braceL:return this.parseObj(!0);default:this.unexpected()}},h.parseBindingList=function(a,b,c){for(var e=[],f=!0;!this.eat(a);)if(f?f=!1:this.expect(d.comma),b&&this.type===d.comma)e.push(null);else{if(c&&this.afterTrailingComma(a))break;if(this.type===d.ellipsis){var g=this.parseRest();this.parseBindingListItem(g),e.push(g),this.expect(a);break}var h=this.parseMaybeDefault(this.start,this.startLoc);this.parseBindingListItem(h),e.push(h)}return e},h.parseBindingListItem=function(a){return a},h.parseMaybeDefault=function(a,b,c){if(Array.isArray(a)&&this.options.locations&&void 0===noCalls&&(c=b,b=a[1],a=a[0]),c=c||this.parseBindingAtom(),!this.eat(d.eq))return c;var e=this.startNodeAt(a,b);return e.operator="=",e.left=c,e.right=this.parseMaybeAssign(),this.finishNode(e,"AssignmentPattern")},h.checkLVal=function(a,b,c){switch(a.type){case"Identifier":this.strict&&(f.strictBind(a.name)||f.strict(a.name))&&this.raise(a.start,(b?"Binding ":"Assigning to ")+a.name+" in strict mode"),c&&(g(c,a.name)&&this.raise(a.start,"Argument name clash in strict mode"),c[a.name]=!0);break;case"MemberExpression":b&&this.raise(a.start,(b?"Binding":"Assigning to")+" member expression");break;case"ObjectPattern":for(var d=0;d<a.properties.length;d++)this.checkLVal(a.properties[d].value,b,c);break;case"ArrayPattern":for(var d=0;d<a.elements.length;d++){var e=a.elements[d];e&&this.checkLVal(e,b,c)}break;case"AssignmentPattern":this.checkLVal(a.left,b,c);break;case"RestElement":this.checkLVal(a.argument,b,c);break;case"ParenthesizedExpression":this.checkLVal(a.expression,b,c);break;default:this.raise(a.start,(b?"Binding":"Assigning to")+" rvalue")}}},{"./identifier":7,"./state":13,"./tokentype":17,"./util":18}],10:[function(a,b,c){"use strict";var d=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")};c.__esModule=!0;var e=a("./state").Parser,f=a("./location").SourceLocation,g=e.prototype,h=c.Node=function i(){d(this,i)};g.startNode=function(){var a=new h;return a.start=this.start,this.options.locations&&(a.loc=new f(this,this.startLoc)),this.options.directSourceFile&&(a.sourceFile=this.options.directSourceFile),this.options.ranges&&(a.range=[this.start,0]),a},g.startNodeAt=function(a,b){var c=new h;return Array.isArray(a)&&this.options.locations&&void 0===b&&(b=a[1],a=a[0]),c.start=a,this.options.locations&&(c.loc=new f(this,b)),this.options.directSourceFile&&(c.sourceFile=this.options.directSourceFile),this.options.ranges&&(c.range=[a,0]),c},g.finishNode=function(a,b){return a.type=b,a.end=this.lastTokEnd,this.options.locations&&(a.loc.end=this.lastTokEndLoc),this.options.ranges&&(a.range[1]=this.lastTokEnd),a},g.finishNodeAt=function(a,b,c,d){return a.type=b,Array.isArray(c)&&this.options.locations&&void 0===d&&(d=c[1],c=c[0]),a.end=c,this.options.locations&&(a.loc.end=d),this.options.ranges&&(a.range[1]=c),a}},{"./location":8,"./state":13}],11:[function(a,b,c){"use strict";function d(a){var b={};for(var c in j)b[c]=a&&g(a,c)?a[c]:j[c];return h(b.onToken)&&!function(){var a=b.onToken;b.onToken=function(b){return a.push(b)}}(),h(b.onComment)&&(b.onComment=e(b,b.onComment)),b}function e(a,b){return function(c,d,e,f,g,h){var j={type:c?"Block":"Line",value:d,start:e,end:f};a.locations&&(j.loc=new i(this,g,h)),a.ranges&&(j.range=[e,f]),b.push(j)}}c.getOptions=d,c.__esModule=!0;var f=a("./util"),g=f.has,h=f.isArray,i=a("./location").SourceLocation,j={ecmaVersion:5,sourceType:"script",onInsertedSemicolon:null,onTrailingComma:null,allowReserved:!0,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowHashBang:!1,locations:!1,onToken:null,onComment:null,ranges:!1,program:null,sourceFile:null,directSourceFile:null,preserveParens:!1,plugins:{}};c.defaultOptions=j},{"./location":8,"./util":18}],12:[function(a,b,c){"use strict";var d=a("./tokentype").types,e=a("./state").Parser,f=a("./whitespace").lineBreak,g=e.prototype;g.isUseStrict=function(a){return this.options.ecmaVersion>=5&&"ExpressionStatement"===a.type&&"Literal"===a.expression.type&&"use strict"===a.expression.value},g.eat=function(a){return this.type===a?(this.next(),!0):!1},g.isContextual=function(a){return this.type===d.name&&this.value===a},g.eatContextual=function(a){return this.value===a&&this.eat(d.name)},g.expectContextual=function(a){this.eatContextual(a)||this.unexpected()},g.canInsertSemicolon=function(){return this.type===d.eof||this.type===d.braceR||f.test(this.input.slice(this.lastTokEnd,this.start))},g.insertSemicolon=function(){return this.canInsertSemicolon()?(this.options.onInsertedSemicolon&&this.options.onInsertedSemicolon(this.lastTokEnd,this.lastTokEndLoc),!0):void 0},g.semicolon=function(){this.eat(d.semi)||this.insertSemicolon()||this.unexpected()},g.afterTrailingComma=function(a){return this.type==a?(this.options.onTrailingComma&&this.options.onTrailingComma(this.lastTokStart,this.lastTokStartLoc),this.next(),!0):void 0},g.expect=function(a){this.eat(a)||this.unexpected()},g.unexpected=function(a){this.raise(null!=a?a:this.start,"Unexpected token")}},{"./state":13,"./tokentype":17,"./whitespace":19}],13:[function(a,b,c){"use strict";function d(a,b,c){this.options=a,this.sourceFile=this.options.sourceFile||null,this.isKeyword=g[this.options.ecmaVersion>=6?6:5],this.isReservedWord=f[this.options.ecmaVersion],this.input=b,this.loadPlugins(this.options.plugins),c?(this.pos=c,this.lineStart=Math.max(0,this.input.lastIndexOf("\n",c)),this.curLine=this.input.slice(0,this.lineStart).split(i).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=h.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=null,this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.strict=this.inModule="module"===this.options.sourceType,this.potentialArrowAt=-1,this.inFunction=this.inGenerator=!1,this.labels=[],0===this.pos&&this.options.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2)}c.Parser=d,c.__esModule=!0;var e=a("./identifier"),f=e.reservedWords,g=e.keywords,h=a("./tokentype").types,i=a("./whitespace").lineBreak;d.prototype.extend=function(a,b){this[a]=b(this[a])};var j={};c.plugins=j,d.prototype.loadPlugins=function(a){for(var b in a){var d=c.plugins[b];if(!d)throw new Error("Plugin '"+b+"' not found");d(this,a[b])}}},{"./identifier":7,"./tokentype":17,"./whitespace":19}],14:[function(a,b,c){"use strict";var d=a("./tokentype").types,e=a("./state").Parser,f=a("./whitespace").lineBreak,g=e.prototype;g.parseTopLevel=function(a){var b=!0;for(a.body||(a.body=[]);this.type!==d.eof;){var c=this.parseStatement(!0,!0);a.body.push(c),b&&this.isUseStrict(c)&&this.setStrict(!0),b=!1}return this.next(),this.options.ecmaVersion>=6&&(a.sourceType=this.options.sourceType),this.finishNode(a,"Program")};var h={kind:"loop"},i={kind:"switch"};g.parseStatement=function(a,b){var c=this.type,e=this.startNode();switch(c){case d._break:case d._continue:return this.parseBreakContinueStatement(e,c.keyword);case d._debugger:return this.parseDebuggerStatement(e);case d._do:return this.parseDoStatement(e);case d._for:return this.parseForStatement(e);case d._function:return!a&&this.options.ecmaVersion>=6&&this.unexpected(),this.parseFunctionStatement(e);case d._class:return a||this.unexpected(),this.parseClass(e,!0);case d._if:return this.parseIfStatement(e);case d._return:return this.parseReturnStatement(e);case d._switch:return this.parseSwitchStatement(e);case d._throw:return this.parseThrowStatement(e);case d._try:return this.parseTryStatement(e);case d._let:case d._const:a||this.unexpected();case d._var:return this.parseVarStatement(e,c);case d._while:return this.parseWhileStatement(e);case d._with:return this.parseWithStatement(e);case d.braceL:return this.parseBlock();case d.semi:return this.parseEmptyStatement(e);case d._export:case d._import:return this.options.allowImportExportEverywhere||(b||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),c===d._import?this.parseImport(e):this.parseExport(e);default:var f=this.value,g=this.parseExpression();return c===d.name&&"Identifier"===g.type&&this.eat(d.colon)?this.parseLabeledStatement(e,f,g):this.parseExpressionStatement(e,g)}},g.parseBreakContinueStatement=function(a,b){var c="break"==b;this.next(),this.eat(d.semi)||this.insertSemicolon()?a.label=null:this.type!==d.name?this.unexpected():(a.label=this.parseIdent(),this.semicolon());for(var e=0;e<this.labels.length;++e){var f=this.labels[e];if(null==a.label||f.name===a.label.name){if(null!=f.kind&&(c||"loop"===f.kind))break;if(a.label&&c)break}}return e===this.labels.length&&this.raise(a.start,"Unsyntactic "+b),this.finishNode(a,c?"BreakStatement":"ContinueStatement")},g.parseDebuggerStatement=function(a){return this.next(),this.semicolon(),this.finishNode(a,"DebuggerStatement")},g.parseDoStatement=function(a){return this.next(),this.labels.push(h),a.body=this.parseStatement(!1),this.labels.pop(),this.expect(d._while),a.test=this.parseParenExpression(),this.options.ecmaVersion>=6?this.eat(d.semi):this.semicolon(),this.finishNode(a,"DoWhileStatement")},g.parseForStatement=function(a){if(this.next(),this.labels.push(h),this.expect(d.parenL),this.type===d.semi)return this.parseFor(a,null);if(this.type===d._var||this.type===d._let||this.type===d._const){var b=this.startNode(),c=this.type;return this.next(),this.parseVar(b,!0,c),this.finishNode(b,"VariableDeclaration"),!(this.type===d._in||this.options.ecmaVersion>=6&&this.isContextual("of"))||1!==b.declarations.length||c!==d._var&&b.declarations[0].init?this.parseFor(a,b):this.parseForIn(a,b)}var e={start:0},f=this.parseExpression(!0,e);return this.type===d._in||this.options.ecmaVersion>=6&&this.isContextual("of")?(this.toAssignable(f),
this.checkLVal(f),this.parseForIn(a,f)):(e.start&&this.unexpected(e.start),this.parseFor(a,f))},g.parseFunctionStatement=function(a){return this.next(),this.parseFunction(a,!0)},g.parseIfStatement=function(a){return this.next(),a.test=this.parseParenExpression(),a.consequent=this.parseStatement(!1),a.alternate=this.eat(d._else)?this.parseStatement(!1):null,this.finishNode(a,"IfStatement")},g.parseReturnStatement=function(a){return this.inFunction||this.options.allowReturnOutsideFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(d.semi)||this.insertSemicolon()?a.argument=null:(a.argument=this.parseExpression(),this.semicolon()),this.finishNode(a,"ReturnStatement")},g.parseSwitchStatement=function(a){this.next(),a.discriminant=this.parseParenExpression(),a.cases=[],this.expect(d.braceL),this.labels.push(i);for(var b,c;this.type!=d.braceR;)if(this.type===d._case||this.type===d._default){var e=this.type===d._case;b&&this.finishNode(b,"SwitchCase"),a.cases.push(b=this.startNode()),b.consequent=[],this.next(),e?b.test=this.parseExpression():(c&&this.raise(this.lastTokStart,"Multiple default clauses"),c=!0,b.test=null),this.expect(d.colon)}else b||this.unexpected(),b.consequent.push(this.parseStatement(!0));return b&&this.finishNode(b,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(a,"SwitchStatement")},g.parseThrowStatement=function(a){return this.next(),f.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),a.argument=this.parseExpression(),this.semicolon(),this.finishNode(a,"ThrowStatement")};var j=[];g.parseTryStatement=function(a){if(this.next(),a.block=this.parseBlock(),a.handler=null,this.type===d._catch){var b=this.startNode();this.next(),this.expect(d.parenL),b.param=this.parseBindingAtom(),this.checkLVal(b.param,!0),this.expect(d.parenR),b.guard=null,b.body=this.parseBlock(),a.handler=this.finishNode(b,"CatchClause")}return a.guardedHandlers=j,a.finalizer=this.eat(d._finally)?this.parseBlock():null,a.handler||a.finalizer||this.raise(a.start,"Missing catch or finally clause"),this.finishNode(a,"TryStatement")},g.parseVarStatement=function(a,b){return this.next(),this.parseVar(a,!1,b),this.semicolon(),this.finishNode(a,"VariableDeclaration")},g.parseWhileStatement=function(a){return this.next(),a.test=this.parseParenExpression(),this.labels.push(h),a.body=this.parseStatement(!1),this.labels.pop(),this.finishNode(a,"WhileStatement")},g.parseWithStatement=function(a){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),a.object=this.parseParenExpression(),a.body=this.parseStatement(!1),this.finishNode(a,"WithStatement")},g.parseEmptyStatement=function(a){return this.next(),this.finishNode(a,"EmptyStatement")},g.parseLabeledStatement=function(a,b,c){for(var e=0;e<this.labels.length;++e)this.labels[e].name===b&&this.raise(c.start,"Label '"+b+"' is already declared");var f=this.type.isLoop?"loop":this.type===d._switch?"switch":null;return this.labels.push({name:b,kind:f}),a.body=this.parseStatement(!0),this.labels.pop(),a.label=c,this.finishNode(a,"LabeledStatement")},g.parseExpressionStatement=function(a,b){return a.expression=b,this.semicolon(),this.finishNode(a,"ExpressionStatement")},g.parseBlock=function(a){var b=this.startNode(),c=!0,e=void 0;for(b.body=[],this.expect(d.braceL);!this.eat(d.braceR);){var f=this.parseStatement(!0);b.body.push(f),c&&a&&this.isUseStrict(f)&&(e=this.strict,this.setStrict(this.strict=!0)),c=!1}return e===!1&&this.setStrict(!1),this.finishNode(b,"BlockStatement")},g.parseFor=function(a,b){return a.init=b,this.expect(d.semi),a.test=this.type===d.semi?null:this.parseExpression(),this.expect(d.semi),a.update=this.type===d.parenR?null:this.parseExpression(),this.expect(d.parenR),a.body=this.parseStatement(!1),this.labels.pop(),this.finishNode(a,"ForStatement")},g.parseForIn=function(a,b){var c=this.type===d._in?"ForInStatement":"ForOfStatement";return this.next(),a.left=b,a.right=this.parseExpression(),this.expect(d.parenR),a.body=this.parseStatement(!1),this.labels.pop(),this.finishNode(a,c)},g.parseVar=function(a,b,c){for(a.declarations=[],a.kind=c.keyword;;){var e=this.startNode();if(this.parseVarId(e),this.eat(d.eq)?e.init=this.parseMaybeAssign(b):c!==d._const||this.type===d._in||this.options.ecmaVersion>=6&&this.isContextual("of")?"Identifier"==e.id.type||b&&(this.type===d._in||this.isContextual("of"))?e.init=null:this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),a.declarations.push(this.finishNode(e,"VariableDeclarator")),!this.eat(d.comma))break}return a},g.parseVarId=function(a){a.id=this.parseBindingAtom(),this.checkLVal(a.id,!0)},g.parseFunction=function(a,b,c){return this.initFunction(a),this.options.ecmaVersion>=6&&(a.generator=this.eat(d.star)),(b||this.type===d.name)&&(a.id=this.parseIdent()),this.parseFunctionParams(a),this.parseFunctionBody(a,c),this.finishNode(a,b?"FunctionDeclaration":"FunctionExpression")},g.parseFunctionParams=function(a){this.expect(d.parenL),a.params=this.parseBindingList(d.parenR,!1,!1)},g.parseClass=function(a,b){this.next(),this.parseClassId(a,b),this.parseClassSuper(a);var c=this.startNode(),e=!1;for(c.body=[],this.expect(d.braceL);!this.eat(d.braceR);)if(!this.eat(d.semi)){var f=this.startNode(),g=this.eat(d.star),h=this.type===d.name&&"static"===this.value;if(this.parsePropertyName(f),f["static"]=h&&this.type!==d.parenL,f["static"]&&(g&&this.unexpected(),g=this.eat(d.star),this.parsePropertyName(f)),f.kind="method",!f.computed){var i=f.key,j=!1;g||"Identifier"!==i.type||this.type===d.parenL||"get"!==i.name&&"set"!==i.name||(j=!0,f.kind=i.name,i=this.parsePropertyName(f)),!f["static"]&&("Identifier"===i.type&&"constructor"===i.name||"Literal"===i.type&&"constructor"===i.value)&&(e&&this.raise(i.start,"Duplicate constructor in the same class"),j&&this.raise(i.start,"Constructor can't have get/set modifier"),g&&this.raise(i.start,"Constructor can't be a generator"),f.kind="constructor",e=!0)}this.parseClassMethod(c,f,g)}return a.body=this.finishNode(c,"ClassBody"),this.finishNode(a,b?"ClassDeclaration":"ClassExpression")},g.parseClassMethod=function(a,b,c){b.value=this.parseMethod(c),a.body.push(this.finishNode(b,"MethodDefinition"))},g.parseClassId=function(a,b){a.id=this.type===d.name?this.parseIdent():b?this.unexpected():null},g.parseClassSuper=function(a){a.superClass=this.eat(d._extends)?this.parseExprSubscripts():null},g.parseExport=function(a){if(this.next(),this.eat(d.star))return this.expectContextual("from"),a.source=this.type===d.string?this.parseExprAtom():this.unexpected(),this.semicolon(),this.finishNode(a,"ExportAllDeclaration");if(this.eat(d._default)){var b=this.parseMaybeAssign(),c=!0;return("FunctionExpression"==b.type||"ClassExpression"==b.type)&&(c=!1,b.id&&(b.type="FunctionExpression"==b.type?"FunctionDeclaration":"ClassDeclaration")),a.declaration=b,c&&this.semicolon(),this.finishNode(a,"ExportDefaultDeclaration")}return this.shouldParseExportStatement()?(a.declaration=this.parseStatement(!0),a.specifiers=[],a.source=null):(a.declaration=null,a.specifiers=this.parseExportSpecifiers(),this.eatContextual("from")?a.source=this.type===d.string?this.parseExprAtom():this.unexpected():a.source=null,this.semicolon()),this.finishNode(a,"ExportNamedDeclaration")},g.shouldParseExportStatement=function(){return this.type.keyword},g.parseExportSpecifiers=function(){var a=[],b=!0;for(this.expect(d.braceL);!this.eat(d.braceR);){if(b)b=!1;else if(this.expect(d.comma),this.afterTrailingComma(d.braceR))break;var c=this.startNode();c.local=this.parseIdent(this.type===d._default),c.exported=this.eatContextual("as")?this.parseIdent(!0):c.local,a.push(this.finishNode(c,"ExportSpecifier"))}return a},g.parseImport=function(a){return this.next(),this.type===d.string?(a.specifiers=j,a.source=this.parseExprAtom(),a.kind=""):(a.specifiers=this.parseImportSpecifiers(),this.expectContextual("from"),a.source=this.type===d.string?this.parseExprAtom():this.unexpected()),this.semicolon(),this.finishNode(a,"ImportDeclaration")},g.parseImportSpecifiers=function(){var a=[],b=!0;if(this.type===d.name){var c=this.startNode();if(c.local=this.parseIdent(),this.checkLVal(c.local,!0),a.push(this.finishNode(c,"ImportDefaultSpecifier")),!this.eat(d.comma))return a}if(this.type===d.star){var c=this.startNode();return this.next(),this.expectContextual("as"),c.local=this.parseIdent(),this.checkLVal(c.local,!0),a.push(this.finishNode(c,"ImportNamespaceSpecifier")),a}for(this.expect(d.braceL);!this.eat(d.braceR);){if(b)b=!1;else if(this.expect(d.comma),this.afterTrailingComma(d.braceR))break;var c=this.startNode();c.imported=this.parseIdent(!0),c.local=this.eatContextual("as")?this.parseIdent():c.imported,this.checkLVal(c.local,!0),a.push(this.finishNode(c,"ImportSpecifier"))}return a}},{"./state":13,"./tokentype":17,"./whitespace":19}],15:[function(a,b,c){"use strict";var d=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")};c.__esModule=!0;var e=a("./state").Parser,f=a("./tokentype").types,g=a("./whitespace").lineBreak,h=c.TokContext=function k(a,b,c,e){d(this,k),this.token=a,this.isExpr=b,this.preserveSpace=c,this.override=e},i={b_stat:new h("{",!1),b_expr:new h("{",!0),b_tmpl:new h("${",!0),p_stat:new h("(",!1),p_expr:new h("(",!0),q_tmpl:new h("`",!0,!0,function(a){return a.readTmplToken()}),f_expr:new h("function",!0)};c.types=i;var j=e.prototype;j.initialContext=function(){return[i.b_stat]},j.braceIsBlock=function(a){var b=void 0;return a===f.colon&&"{"==(b=this.curContext()).token?!b.isExpr:a===f._return?g.test(this.input.slice(this.lastTokEnd,this.start)):a===f._else||a===f.semi||a===f.eof?!0:a==f.braceL?this.curContext()===i.b_stat:!this.exprAllowed},j.updateContext=function(a){var b=void 0,c=this.type;c.keyword&&a==f.dot?this.exprAllowed=!1:(b=c.updateContext)?b.call(this,a):this.exprAllowed=c.beforeExpr},f.parenR.updateContext=f.braceR.updateContext=function(){if(1==this.context.length)return void(this.exprAllowed=!0);var a=this.context.pop();a===i.b_stat&&this.curContext()===i.f_expr?(this.context.pop(),this.exprAllowed=!1):a===i.b_tmpl?this.exprAllowed=!0:this.exprAllowed=!a.isExpr},f.braceL.updateContext=function(a){this.context.push(this.braceIsBlock(a)?i.b_stat:i.b_expr),this.exprAllowed=!0},f.dollarBraceL.updateContext=function(){this.context.push(i.b_tmpl),this.exprAllowed=!0},f.parenL.updateContext=function(a){var b=a===f._if||a===f._for||a===f._with||a===f._while;this.context.push(b?i.p_stat:i.p_expr),this.exprAllowed=!0},f.incDec.updateContext=function(){},f._function.updateContext=function(){this.curContext()!==i.b_stat&&this.context.push(i.f_expr),this.exprAllowed=!1},f.backQuote.updateContext=function(){this.curContext()===i.q_tmpl?this.context.pop():this.context.push(i.q_tmpl),this.exprAllowed=!1}},{"./state":13,"./tokentype":17,"./whitespace":19}],16:[function(a,b,c){"use strict";function d(a){return 65535>=a?String.fromCharCode(a):String.fromCharCode((a-65536>>10)+55296,(a-65536&1023)+56320)}var e=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")};c.__esModule=!0;var f=a("./identifier"),g=f.isIdentifierStart,h=f.isIdentifierChar,i=a("./tokentype"),j=i.types,k=i.keywords,l=a("./state").Parser,m=a("./location").SourceLocation,n=a("./whitespace"),o=n.lineBreak,p=n.lineBreakG,q=n.isNewLine,r=n.nonASCIIwhitespace,s=c.Token=function y(a){e(this,y),this.type=a.type,this.value=a.value,this.start=a.start,this.end=a.end,a.options.locations&&(this.loc=new m(a,a.startLoc,a.endLoc)),a.options.ranges&&(this.range=[a.start,a.end])},t=l.prototype,u="undefined"!=typeof Packages;t.next=function(){this.options.onToken&&this.options.onToken(new s(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},t.getToken=function(){return this.next(),new s(this)},"undefined"!=typeof Symbol&&(t[Symbol.iterator]=function(){var a=this;return{next:function(){var b=a.getToken();return{done:b.type===j.eof,value:b}}}}),t.setStrict=function(a){if(this.strict=a,this.type===j.num||this.type===j.string){if(this.pos=this.start,this.options.locations)for(;this.pos<this.lineStart;)this.lineStart=this.input.lastIndexOf("\n",this.lineStart-2)+1,--this.curLine;this.nextToken()}},t.curContext=function(){return this.context[this.context.length-1]},t.nextToken=function(){var a=this.curContext();return a&&a.preserveSpace||this.skipSpace(),this.start=this.pos,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(j.eof):a.override?a.override(this):void this.readToken(this.fullCharCodeAtPos())},t.readToken=function(a){return g(a,this.options.ecmaVersion>=6)||92===a?this.readWord():this.getTokenFromCode(a)},t.fullCharCodeAtPos=function(){var a=this.input.charCodeAt(this.pos);if(55295>=a||a>=57344)return a;var b=this.input.charCodeAt(this.pos+1);return(a<<10)+b-56613888},t.skipBlockComment=function(){var a=this.options.onComment&&this.options.locations&&this.curPosition(),b=this.pos,c=this.input.indexOf("*/",this.pos+=2);if(-1===c&&this.raise(this.pos-2,"Unterminated comment"),this.pos=c+2,this.options.locations){p.lastIndex=b;for(var d=void 0;(d=p.exec(this.input))&&d.index<this.pos;)++this.curLine,this.lineStart=d.index+d[0].length}this.options.onComment&&this.options.onComment(!0,this.input.slice(b+2,c),b,this.pos,a,this.options.locations&&this.curPosition())},t.skipLineComment=function(a){for(var b=this.pos,c=this.options.onComment&&this.options.locations&&this.curPosition(),d=this.input.charCodeAt(this.pos+=a);this.pos<this.input.length&&10!==d&&13!==d&&8232!==d&&8233!==d;)++this.pos,d=this.input.charCodeAt(this.pos);this.options.onComment&&this.options.onComment(!1,this.input.slice(b+a,this.pos),b,this.pos,c,this.options.locations&&this.curPosition())},t.skipSpace=function(){for(;this.pos<this.input.length;){var a=this.input.charCodeAt(this.pos);if(32===a)++this.pos;else if(13===a){++this.pos;var b=this.input.charCodeAt(this.pos);10===b&&++this.pos,this.options.locations&&(++this.curLine,this.lineStart=this.pos)}else if(10===a||8232===a||8233===a)++this.pos,this.options.locations&&(++this.curLine,this.lineStart=this.pos);else if(a>8&&14>a)++this.pos;else if(47===a){var b=this.input.charCodeAt(this.pos+1);if(42===b)this.skipBlockComment();else{if(47!==b)break;this.skipLineComment(2)}}else if(160===a)++this.pos;else{if(!(a>=5760&&r.test(String.fromCharCode(a))))break;++this.pos}}},t.finishToken=function(a,b){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var c=this.type;this.type=a,this.value=b,this.updateContext(c)},t.readToken_dot=function(){var a=this.input.charCodeAt(this.pos+1);if(a>=48&&57>=a)return this.readNumber(!0);var b=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&46===a&&46===b?(this.pos+=3,this.finishToken(j.ellipsis)):(++this.pos,this.finishToken(j.dot))},t.readToken_slash=function(){var a=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===a?this.finishOp(j.assign,2):this.finishOp(j.slash,1)},t.readToken_mult_modulo=function(a){var b=this.input.charCodeAt(this.pos+1);return 61===b?this.finishOp(j.assign,2):this.finishOp(42===a?j.star:j.modulo,1)},t.readToken_pipe_amp=function(a){var b=this.input.charCodeAt(this.pos+1);return b===a?this.finishOp(124===a?j.logicalOR:j.logicalAND,2):61===b?this.finishOp(j.assign,2):this.finishOp(124===a?j.bitwiseOR:j.bitwiseAND,1)},t.readToken_caret=function(){var a=this.input.charCodeAt(this.pos+1);return 61===a?this.finishOp(j.assign,2):this.finishOp(j.bitwiseXOR,1)},t.readToken_plus_min=function(a){var b=this.input.charCodeAt(this.pos+1);return b===a?45==b&&62==this.input.charCodeAt(this.pos+2)&&o.test(this.input.slice(this.lastTokEnd,this.pos))?(this.skipLineComment(3),this.skipSpace(),this.nextToken()):this.finishOp(j.incDec,2):61===b?this.finishOp(j.assign,2):this.finishOp(j.plusMin,1)},t.readToken_lt_gt=function(a){var b=this.input.charCodeAt(this.pos+1),c=1;return b===a?(c=62===a&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+c)?this.finishOp(j.assign,c+1):this.finishOp(j.bitShift,c)):33==b&&60==a&&45==this.input.charCodeAt(this.pos+2)&&45==this.input.charCodeAt(this.pos+3)?(this.inModule&&this.unexpected(),this.skipLineComment(4),this.skipSpace(),this.nextToken()):(61===b&&(c=61===this.input.charCodeAt(this.pos+2)?3:2),this.finishOp(j.relational,c))},t.readToken_eq_excl=function(a){var b=this.input.charCodeAt(this.pos+1);return 61===b?this.finishOp(j.equality,61===this.input.charCodeAt(this.pos+2)?3:2):61===a&&62===b&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(j.arrow)):this.finishOp(61===a?j.eq:j.prefix,1)},t.getTokenFromCode=function(a){switch(a){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(j.parenL);case 41:return++this.pos,this.finishToken(j.parenR);case 59:return++this.pos,this.finishToken(j.semi);case 44:return++this.pos,this.finishToken(j.comma);case 91:return++this.pos,this.finishToken(j.bracketL);case 93:return++this.pos,this.finishToken(j.bracketR);case 123:return++this.pos,this.finishToken(j.braceL);case 125:return++this.pos,this.finishToken(j.braceR);case 58:return++this.pos,this.finishToken(j.colon);case 63:return++this.pos,this.finishToken(j.question);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(j.backQuote);case 48:var b=this.input.charCodeAt(this.pos+1);if(120===b||88===b)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(111===b||79===b)return this.readRadixNumber(8);if(98===b||66===b)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(a);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo(a);case 124:case 38:return this.readToken_pipe_amp(a);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(a);case 60:case 62:return this.readToken_lt_gt(a);case 61:case 33:return this.readToken_eq_excl(a);case 126:return this.finishOp(j.prefix,1)}this.raise(this.pos,"Unexpected character '"+d(a)+"'")},t.finishOp=function(a,b){var c=this.input.slice(this.pos,this.pos+b);return this.pos+=b,this.finishToken(a,c)};var v=!1;try{new RegExp("","u"),v=!0}catch(w){}t.readRegexp=function(){for(var a=void 0,b=void 0,c=this.pos;;){this.pos>=this.input.length&&this.raise(c,"Unterminated regular expression");var d=this.input.charAt(this.pos);if(o.test(d)&&this.raise(c,"Unterminated regular expression"),a)a=!1;else{if("["===d)b=!0;else if("]"===d&&b)b=!1;else if("/"===d&&!b)break;a="\\"===d}++this.pos}var e=this.input.slice(c,this.pos);++this.pos;var f=this.readWord1(),g=e;if(f){var h=/^[gmsiy]*$/;this.options.ecmaVersion>=6&&(h=/^[gmsiyu]*$/),h.test(f)||this.raise(c,"Invalid regular expression flag"),f.indexOf("u")>=0&&!v&&(g=g.replace(/\\u([a-fA-F0-9]{4})|\\u\{([0-9a-fA-F]+)\}|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"))}var i=null;if(!u){try{new RegExp(g)}catch(k){k instanceof SyntaxError&&this.raise(c,"Error parsing regular expression: "+k.message),this.raise(k)}try{i=new RegExp(e,f)}catch(l){}}return this.finishToken(j.regexp,{pattern:e,flags:f,value:i})},t.readInt=function(a,b){for(var c=this.pos,d=0,e=0,f=null==b?1/0:b;f>e;++e){var g=this.input.charCodeAt(this.pos),h=void 0;if(h=g>=97?g-97+10:g>=65?g-65+10:g>=48&&57>=g?g-48:1/0,h>=a)break;++this.pos,d=d*a+h}return this.pos===c||null!=b&&this.pos-c!==b?null:d},t.readRadixNumber=function(a){this.pos+=2;var b=this.readInt(a);return null==b&&this.raise(this.start+2,"Expected number in radix "+a),g(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(j.num,b)},t.readNumber=function(a){var b=this.pos,c=!1,d=48===this.input.charCodeAt(this.pos);a||null!==this.readInt(10)||this.raise(b,"Invalid number"),46===this.input.charCodeAt(this.pos)&&(++this.pos,this.readInt(10),c=!0);var e=this.input.charCodeAt(this.pos);(69===e||101===e)&&(e=this.input.charCodeAt(++this.pos),(43===e||45===e)&&++this.pos,null===this.readInt(10)&&this.raise(b,"Invalid number"),c=!0),g(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var f=this.input.slice(b,this.pos),h=void 0;return c?h=parseFloat(f):d&&1!==f.length?/[89]/.test(f)||this.strict?this.raise(b,"Invalid number"):h=parseInt(f,8):h=parseInt(f,10),this.finishToken(j.num,h)},t.readCodePoint=function(){var a=this.input.charCodeAt(this.pos),b=void 0;return 123===a?(this.options.ecmaVersion<6&&this.unexpected(),++this.pos,b=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,b>1114111&&this.unexpected()):b=this.readHexChar(4),b},t.readString=function(a){for(var b="",c=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var d=this.input.charCodeAt(this.pos);if(d===a)break;92===d?(b+=this.input.slice(c,this.pos),b+=this.readEscapedChar(),c=this.pos):(q(d)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return b+=this.input.slice(c,this.pos++),this.finishToken(j.string,b)},t.readTmplToken=function(){for(var a="",b=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var c=this.input.charCodeAt(this.pos);if(96===c||36===c&&123===this.input.charCodeAt(this.pos+1))return this.pos===this.start&&this.type===j.template?36===c?(this.pos+=2,this.finishToken(j.dollarBraceL)):(++this.pos,this.finishToken(j.backQuote)):(a+=this.input.slice(b,this.pos),this.finishToken(j.template,a));92===c?(a+=this.input.slice(b,this.pos),a+=this.readEscapedChar(),b=this.pos):q(c)?(a+=this.input.slice(b,this.pos),++this.pos,13===c&&10===this.input.charCodeAt(this.pos)?(++this.pos,a+="\n"):a+=String.fromCharCode(c),this.options.locations&&(++this.curLine,this.lineStart=this.pos),b=this.pos):++this.pos}},t.readEscapedChar=function(){var a=this.input.charCodeAt(++this.pos),b=/^[0-7]+/.exec(this.input.slice(this.pos,this.pos+3));for(b&&(b=b[0]);b&&parseInt(b,8)>255;)b=b.slice(0,-1);if("0"===b&&(b=null),++this.pos,b)return this.strict&&this.raise(this.pos-2,"Octal literal in strict mode"),this.pos+=b.length-1,String.fromCharCode(parseInt(b,8));switch(a){case 110:return"\n";case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return d(this.readCodePoint());case 116:return"	";case 98:return"\b";case 118:return"\x0B";case 102:return"\f";case 48:return"\x00";case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),"";default:return String.fromCharCode(a)}},t.readHexChar=function(a){var b=this.readInt(16,a);return null===b&&this.raise(this.start,"Bad character escape sequence"),b};var x;t.readWord1=function(){x=!1;for(var a="",b=!0,c=this.pos,e=this.options.ecmaVersion>=6;this.pos<this.input.length;){var f=this.fullCharCodeAtPos();if(h(f,e))this.pos+=65535>=f?1:2;else{if(92!==f)break;x=!0,a+=this.input.slice(c,this.pos);var i=this.pos;117!=this.input.charCodeAt(++this.pos)&&this.raise(this.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.pos;var j=this.readCodePoint();(b?g:h)(j,e)||this.raise(i,"Invalid Unicode escape"),a+=d(j),c=this.pos}b=!1}return a+this.input.slice(c,this.pos)},t.readWord=function(){var a=this.readWord1(),b=j.name;return(this.options.ecmaVersion>=6||!x)&&this.isKeyword(a)&&(b=k[a]),this.finishToken(b,a)}},{"./identifier":7,"./location":8,"./state":13,"./tokentype":17,"./whitespace":19}],17:[function(a,b,c){"use strict";function d(a,b){return new g(a,{beforeExpr:!0,binop:b})}function e(a){var b=void 0===arguments[1]?{}:arguments[1];b.keyword=a,k[a]=j["_"+a]=new g(a,b)}var f=function(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")};c.__esModule=!0;var g=c.TokenType=function l(a){var b=void 0===arguments[1]?{}:arguments[1];f(this,l),this.label=a,this.keyword=b.keyword,this.beforeExpr=!!b.beforeExpr,this.startsExpr=!!b.startsExpr,this.isLoop=!!b.isLoop,this.isAssign=!!b.isAssign,this.prefix=!!b.prefix,this.postfix=!!b.postfix,this.binop=b.binop||null,this.updateContext=null},h={beforeExpr:!0},i={startsExpr:!0},j={num:new g("num",i),regexp:new g("regexp",i),string:new g("string",i),name:new g("name",i),eof:new g("eof"),bracketL:new g("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new g("]"),braceL:new g("{",{beforeExpr:!0,startsExpr:!0}),braceR:new g("}"),parenL:new g("(",{beforeExpr:!0,startsExpr:!0}),parenR:new g(")"),comma:new g(",",h),semi:new g(";",h),colon:new g(":",h),dot:new g("."),question:new g("?",h),arrow:new g("=>",h),template:new g("template"),ellipsis:new g("...",h),backQuote:new g("`",i),dollarBraceL:new g("${",{beforeExpr:!0,startsExpr:!0}),eq:new g("=",{beforeExpr:!0,isAssign:!0}),assign:new g("_=",{beforeExpr:!0,isAssign:!0}),incDec:new g("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new g("prefix",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:d("||",1),logicalAND:d("&&",2),bitwiseOR:d("|",3),bitwiseXOR:d("^",4),bitwiseAND:d("&",5),equality:d("==/!=",6),relational:d("</>",7),bitShift:d("<</>>",8),plusMin:new g("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:d("%",10),star:d("*",10),slash:d("/",10)};c.types=j;var k={};c.keywords=k,e("break"),e("case",h),e("catch"),e("continue"),e("debugger"),e("default"),e("do",{isLoop:!0}),e("else",h),e("finally"),e("for",{isLoop:!0}),e("function",i),e("if"),e("return",h),e("switch"),e("throw",h),e("try"),e("var"),e("let"),e("const"),e("while",{isLoop:!0}),e("with"),e("new",{beforeExpr:!0,startsExpr:!0}),e("this",i),e("super",i),e("class"),e("extends",h),e("export"),e("import"),e("yield",{beforeExpr:!0,startsExpr:!0}),e("null",i),e("true",i),e("false",i),e("in",{beforeExpr:!0,binop:7}),e("instanceof",{beforeExpr:!0,binop:7}),e("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),e("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),e("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},{}],18:[function(a,b,c){"use strict";function d(a){return"[object Array]"===Object.prototype.toString.call(a)}function e(a,b){return Object.prototype.hasOwnProperty.call(a,b)}c.isArray=d,c.has=e,c.__esModule=!0},{}],19:[function(a,b,c){"use strict";function d(a){return 10===a||13===a||8232===a||8233==a}c.isNewLine=d,c.__esModule=!0;var e=/\r\n?|\n|\u2028|\u2029/;c.lineBreak=e;var f=new RegExp(e.source,"g");c.lineBreakG=f;var g=/[\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff]/;c.nonASCIIwhitespace=g},{}]},{},[1])(1)})}(null),function(a){"use strict";var b=Object.prototype.toString;a.exports=function(a){var c=b.call(a),d="[object Arguments]"===c;return d||(d="[object Array]"!==c&&null!==a&&"object"==typeof a&&"number"==typeof a.length&&a.length>=0&&"[object Function]"===b.call(a.callee)),d},window.isArguments=a.exports}({exports:{}}),function(a){var b=Object.prototype.hasOwnProperty,c=Object.prototype.toString;a.exports=function(a,d,e){if("[object Function]"!==c.call(d))throw new TypeError("iterator must be a function");var f=a.length;if(f===+f)for(var g=0;f>g;g++)d.call(e,a[g],g,a);else for(var h in a)b.call(a,h)&&d.call(e,a[h],h,a)},window.forEach=a.exports}({exports:{}}),function(a){a.exports=Array.isArray||function(a){return"[object Array]"==Object.prototype.toString.call(a)},window.isArray=a.exports}({exports:{}}),function(a,b){"use strict";var c=Object.prototype.hasOwnProperty,d=Object.prototype.toString,e=Array.prototype.slice,f=a("./isArguments"),g=!{toString:null}.propertyIsEnumerable("toString"),h=function(){}.propertyIsEnumerable("prototype"),i=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],j=function(a){var b=a.constructor;return b&&b.prototype===a},k={$console:!0,$frame:!0,$frameElement:!0,$frames:!0,$parent:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},l=function(){if("undefined"==typeof window)return!1;for(var a in window)try{if(!k["$"+a]&&c.call(window,a)&&null!==window[a]&&"object"==typeof window[a])try{j(window[a])}catch(b){return!0}}catch(b){return!0}return!1}(),m=function(a){if("undefined"==typeof window||!l)return j(a);try{return j(a)}catch(b){return!1}},n=function(a){var b=null!==a&&"object"==typeof a,e="[object Function]"===d.call(a),j=f(a),k=b&&"[object String]"===d.call(a),l=[];if(!b&&!e&&!j)throw new TypeError("Object.keys called on a non-object");var n=h&&e;if(k&&a.length>0&&!c.call(a,0))for(var o=0;o<a.length;++o)l.push(String(o));if(j&&a.length>0)for(var p=0;p<a.length;++p)l.push(String(p));else for(var q in a)n&&"prototype"===q||!c.call(a,q)||l.push(String(q));if(g)for(var r=m(a),s=0;s<i.length;++s)r&&"constructor"===i[s]||!c.call(a,i[s])||l.push(i[s]);return l};n.shim=function(){if(Object.keys){var a=function(){return 2===(Object.keys(arguments)||"").length}(1,2);if(!a){var b=Object.keys;Object.keys=function(a){return b(f(a)?e.call(a):a)}}}else Object.keys=n;return Object.keys||n},b.exports=n,window.objectKeys=b.exports}(function(){return isArguments},{exports:{}}),/*!
 * falafel (c) James Halliday / MIT License
 * https://github.com/substack/node-falafel
 */
function(a,b){function c(a,b,c){function d(b){c[a.start]=b;for(var d=a.start+1;d<a.end;d++)c[d]=""}if(a.parent=b,a.source=function(){return c.slice(a.start,a.end).join("")},a.update&&"object"==typeof a.update){var e=a.update;g(f(e),function(a){d[a]=e[a]}),a.update=d}else a.update=d}var d=a("acorn").parse,e=a("isarray"),f=a("object-keys"),g=a("foreach");b.exports=function(a,b,h){"function"==typeof b&&(h=b,b={}),a&&"object"==typeof a&&"Buffer"===a.constructor.name?a=a.toString():a&&"object"==typeof a&&(b=a,a=b.source,delete b.source),a=void 0===a?b.source:a,"string"!=typeof a&&(a=String(a)),b.parser&&(d=b.parser.parse);var i=d(a,b),j={chunks:a.split(""),toString:function(){return j.chunks.join("")},inspect:function(){return j.toString()}};return function k(a,b){c(a,b,j.chunks),g(f(a),function(b){if("parent"!==b){var c=a[b];e(c)?g(c,function(b){b&&"string"==typeof b.type&&k(b,a)}):c&&"string"==typeof c.type&&k(c,a)}}),h(a)}(i,void 0),j},window.falafel=b.exports}(function(a){switch(a){case"acorn":return{parse:acorn.parse};case"object-keys":return objectKeys;case"foreach":return forEach;case"isarray":return isArray}},{exports:{}});var inBrowser="undefined"!=typeof window&&this===window,parseAndModify=inBrowser?window.falafel:require("falafel");(inBrowser?window:exports).blanket=function(){var a,b=["ExpressionStatement","BreakStatement","ContinueStatement","VariableDeclaration","ReturnStatement","ThrowStatement","TryStatement","FunctionDeclaration","IfStatement","WhileStatement","DoWhileStatement","ForStatement","ForInStatement","SwitchStatement","WithStatement"],c=["IfStatement","WhileStatement","DoWhileStatement","ForStatement","ForInStatement","WithStatement"],d=Math.floor(1e3*Math.random()),e={},f={reporter:null,adapter:null,filter:null,customVariable:null,loader:null,ignoreScriptError:!1,existingRequireJS:!1,autoStart:!1,timeout:180,ignoreCors:!1,branchTracking:!1,sourceURL:!1,debug:!1,engineOnly:!1,testReadyCallback:null,commonJS:!1,instrumentCache:!1,modulePattern:null,ecmaVersion:5};return inBrowser&&"undefined"!=typeof window.blanket&&(a=window.blanket.noConflict()),_blanket={noConflict:function(){return a?a:_blanket},_getCopyNumber:function(){return d},extend:function(a){_blanket._extend(_blanket,a)},_extend:function(a,b){if(b)for(var c in b)a[c]instanceof Object&&"function"!=typeof a[c]?_blanket._extend(a[c],b[c]):a[c]=b[c]},getCovVar:function(){var a=_blanket.options("customVariable");return a?(_blanket.options("debug")&&console.log("BLANKET-Using custom tracking variable:",a),inBrowser?"window."+a:a):inBrowser?"window._$blanket":"_$jscoverage"},options:function(a,b){if("string"!=typeof a)_blanket._extend(f,a);else{if("undefined"==typeof b)return f[a];f[a]=b}},instrument:function(a,b){var c=a.inputFile,d=a.inputFileName;if(_blanket.options("instrumentCache")&&sessionStorage&&sessionStorage.getItem("blanket_instrument_store-"+d))_blanket.options("debug")&&console.log("BLANKET-Reading instrumentation from cache: ",d),b(sessionStorage.getItem("blanket_instrument_store-"+d));else{var e=_blanket._prepareSource(c);_blanket._trackingArraySetup=[],c=c.replace(/^\#\!.*/,"");var f=parseAndModify(c,{locations:!0,comment:!0,ecmaVersion:_blanket.options("ecmaVersion")},_blanket._addTracking(d));f=_blanket._trackingSetup(d,e)+f,_blanket.options("sourceURL")&&(f+="\n//@ sourceURL="+d.replace("http://","")),_blanket.options("debug")&&console.log("BLANKET-Instrumented file: ",d),_blanket.options("instrumentCache")&&sessionStorage&&(_blanket.options("debug")&&console.log("BLANKET-Saving instrumentation to cache: ",d),sessionStorage.setItem("blanket_instrument_store-"+d,f)),b(f)}},_trackingArraySetup:[],_branchingArraySetup:[],_useStrictMode:!1,_prepareSource:function(a){return a.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/(\r\n|\n|\r)/gm,"\n").split("\n")},_trackingSetup:function(a,b){var c=_blanket.options("branchTracking"),d=b.join("',\n'"),e="",f=_blanket.getCovVar();return _blanket._useStrictMode&&(e+="'use strict';\n"),e+="if (typeof "+f+" === 'undefined') "+f+" = {};\n",c&&(e+="var _$branchFcn=function(f,l,c,r){ ",e+="if (!!r) { ",e+=f+"[f].branchData[l][c][0] = "+f+"[f].branchData[l][c][0] || [];",e+=f+"[f].branchData[l][c][0].push(r); }",e+="else { ",e+=f+"[f].branchData[l][c][1] = "+f+"[f].branchData[l][c][1] || [];",e+=f+"[f].branchData[l][c][1].push(r); }",e+="return r;};\n"),e+="if (typeof "+f+"['"+a+"'] === 'undefined'){",e+=f+"['"+a+"']=[];\n",c&&(e+=f+"['"+a+"'].branchData=[];\n"),e+=f+"['"+a+"'].source=['"+d+"'];\n",_blanket._trackingArraySetup.sort(function(a,b){return parseInt(a,10)>parseInt(b,10)}).forEach(function(b){e+=f+"['"+a+"']["+b+"]=0;\n"}),c&&_blanket._branchingArraySetup.sort(function(a,b){return a.line>b.line}).sort(function(a,b){return a.column>b.column}).forEach(function(b){b.file===a&&(e+="if (typeof "+f+"['"+a+"'].branchData["+b.line+"] === 'undefined'){\n",e+=f+"['"+a+"'].branchData["+b.line+"]=[];\n",e+="}",e+=f+"['"+a+"'].branchData["+b.line+"]["+b.column+"] = [];\n",e+=f+"['"+a+"'].branchData["+b.line+"]["+b.column+"].consequent = "+JSON.stringify(b.consequent)+";\n",e+=f+"['"+a+"'].branchData["+b.line+"]["+b.column+"].alternate = "+JSON.stringify(b.alternate)+";\n")}),e+="}"},_blockifyIf:function(a){if(c.indexOf(a.type)>-1){var b=a.consequent||a.body,d=a.alternate;d&&"BlockStatement"!==d.type&&d.update("{\n"+d.source()+"}\n"),b&&"BlockStatement"!==b.type&&b.update("{\n"+b.source()+"}\n")}},_trackBranch:function(a,b){var c=a.loc.start.line,d=a.loc.start.column;_blanket._branchingArraySetup.push({line:c,column:d,file:b,consequent:a.consequent.loc,alternate:a.alternate.loc});var e="_$branchFcn('"+b+"',"+c+","+d+","+a.test.source()+")?"+a.consequent.source()+":"+a.alternate.source();a.update(e)},_addTracking:function(a){var c=_blanket.getCovVar();return function(d){if(_blanket._blockifyIf(d),b.indexOf(d.type)>-1&&"LabeledStatement"!==d.parent.type){if(_blanket._checkDefs(d,a),"VariableDeclaration"===d.type&&("ForStatement"===d.parent.type||"ForInStatement"===d.parent.type))return;if(!d.loc||!d.loc.start)throw new Error("The instrumenter encountered a node with no location: "+Object.keys(d));d.update(c+"['"+a+"']["+d.loc.start.line+"]++;\n"+d.source()),_blanket._trackingArraySetup.push(d.loc.start.line)}else _blanket.options("branchTracking")&&"ConditionalExpression"===d.type?_blanket._trackBranch(d,a):"Literal"===d.type&&"use strict"===d.value&&d.parent&&"ExpressionStatement"===d.parent.type&&d.parent.parent&&"Program"===d.parent.parent.type&&(_blanket._useStrictMode=!0)}},_checkDefs:function(a,b){if(inBrowser){if("VariableDeclaration"===a.type&&a.declarations&&a.declarations.forEach(function(c){if("window"===c.id.name)throw new Error("Instrumentation error, you cannot redefine the 'window' variable in  "+b+":"+a.loc.start.line)}),"FunctionDeclaration"===a.type&&a.params&&a.params.forEach(function(c){if("window"===c.name)throw new Error("Instrumentation error, you cannot redefine the 'window' variable in  "+b+":"+a.loc.start.line)}),"ExpressionStatement"===a.type&&a.expression&&a.expression.left&&a.expression.left.object&&a.expression.left.property&&a.expression.left.object.name+"."+a.expression.left.property.name===_blanket.getCovVar())throw new Error("Instrumentation error, you cannot redefine the coverage variable in  "+b+":"+a.loc.start.line)}else if("ExpressionStatement"===a.type&&a.expression&&a.expression.left&&!a.expression.left.object&&!a.expression.left.property&&a.expression.left.name===_blanket.getCovVar())throw new Error("Instrumentation error, you cannot redefine the coverage variable in  "+b+":"+a.loc.start.line)},setupCoverage:function(){e.instrumentation="blanket",e.stats={suites:0,tests:0,passes:0,pending:0,failures:0,start:new Date}},_checkIfSetup:function(){if(!e.stats)throw new Error("You must call blanket.setupCoverage() first.")},onTestStart:function(){_blanket.options("debug")&&console.log("BLANKET-Test event started"),this._checkIfSetup(),e.stats.tests++,e.stats.pending++},onTestDone:function(a,b){this._checkIfSetup(),b===a?e.stats.passes++:e.stats.failures++,e.stats.pending--},onModuleStart:function(){this._checkIfSetup(),e.stats.suites++},onTestsDone:function(){_blanket.options("debug")&&console.log("BLANKET-Test event done"),this._checkIfSetup(),e.stats.end=new Date,inBrowser?this.report(e):(_blanket.options("branchTracking")||delete(inBrowser?window:global)[_blanket.getCovVar()].branchFcn,this.options("reporter").call(this,e))}},_blanket}(),function(a){var b=a.options;a.extend({outstandingRequireFiles:[],options:function(c,d){var e={};if("string"!=typeof c)b(c),e=c;else{if("undefined"==typeof d)return b(c);b(c,d),e[c]=d}e.adapter&&a._loadFile(e.adapter),e.loader&&a._loadFile(e.loader)},requiringFile:function(b,c){"undefined"==typeof b?a.outstandingRequireFiles=[]:"undefined"==typeof c?a.outstandingRequireFiles.push(b):a.outstandingRequireFiles.splice(a.outstandingRequireFiles.indexOf(b),1)},requireFilesLoaded:function(){return 0===a.outstandingRequireFiles.length},showManualLoader:function(){if(!document.getElementById("blanketLoaderDialog")){var a="<div class='blanketDialogOverlay'>";a+="&nbsp;</div>",a+="<div class='blanketDialogVerticalOffset'>",a+="<div class='blanketDialogBox'>",a+="<b>Error:</b> Blanket.js encountered a cross origin request error while instrumenting the source files.  ",a+="<br><br>This is likely caused by the source files being referenced locally (using the file:// protocol). ",a+="<br><br>Some solutions include <a href='http://askubuntu.com/questions/160245/making-google-chrome-option-allow-file-access-from-files-permanent' target='_blank'>starting Chrome with special flags</a>, <a target='_blank' href='https://github.com/remy/servedir'>running a server locally</a>, or using a browser without these CORS restrictions (Safari).",a+="<br>","undefined"!=typeof FileReader&&(a+="<br>Or, try the experimental loader.  When prompted, simply click on the directory containing all the source files you want covered.",a+="<a href='javascript:document.getElementById(\"fileInput\").click();'>Start Loader</a>",a+="<input type='file' type='application/x-javascript' accept='application/x-javascript' webkitdirectory id='fileInput' multiple onchange='window.blanket.manualFileLoader(this.files)' style='visibility:hidden;position:absolute;top:-50;left:-50'/>"),a+="<br><span style='float:right;cursor:pointer;'  onclick=document.getElementById('blanketLoaderDialog').style.display='none';>Close</span>",a+="<div style='clear:both'></div>",a+="</div></div>";var b=".blanketDialogWrapper {";b+="display:block;",b+="position:fixed;",b+="z-index:40001; }",b+=".blanketDialogOverlay {",b+="position:fixed;",b+="width:100%;",b+="height:100%;",b+="background-color:black;",b+="opacity:.5; ",b+="-ms-filter:'progid:DXImageTransform.Microsoft.Alpha(Opacity=50)'; ",b+="filter:alpha(opacity=50); ",b+="z-index:40001; }",b+=".blanketDialogVerticalOffset { ",b+="position:fixed;",b+="top:30%;",b+="width:100%;",b+="z-index:40002; }",b+=".blanketDialogBox { ",b+="width:405px; ",b+="position:relative;",b+="margin:0 auto;",b+="background-color:white;",b+="padding:10px;",b+="border:1px solid black; }";var c=document.createElement("style");c.innerHTML=b,document.head.appendChild(c);var d=document.createElement("div");d.id="blanketLoaderDialog",d.className="blanketDialogWrapper",d.innerHTML=a,document.body.insertBefore(d,document.body.firstChild)}},manualFileLoader:function(a){function b(a){var b=new FileReader;b.onload=g,b.readAsText(a)}var c=Array.prototype.slice;a=c.call(a).filter(function(a){return""!==a.type});var d=a.length-1,e=0,f={};sessionStorage.blanketSessionLoader&&(f=JSON.parse(sessionStorage.blanketSessionLoader));var g=function(c){var g=c.currentTarget.result,h=a[e],i=h.webkitRelativePath&&""!==h.webkitRelativePath?h.webkitRelativePath:h.name;f[i]=g,e++,e===d?(sessionStorage.setItem("blanketSessionLoader",JSON.stringify(f)),document.location.reload()):b(a[e])};b(a[e])},_loadFile:function(b){if("undefined"!=typeof b){var c=new XMLHttpRequest;c.open("GET",b,!1),c.send(),a._addScript(c.responseText)}},_addScript:function(a){var b=document.createElement("script");b.type="text/javascript",b.text=a,(document.body||document.getElementsByTagName("head")[0]).appendChild(b)},hasAdapter:function(b){return null!==a.options("adapter")},report:function(b){document.getElementById("blanketLoaderDialog")||(a.blanketSession=null),b.files=window._$blanket;blanket.options("commonJS")?blanket._commonjs.require:window.require;if(!b.files||!Object.keys(b.files).length)return void(a.options("debug")&&console.log("BLANKET-Reporting No files were instrumented."));if("undefined"!=typeof b.files.branchFcn&&delete b.files.branchFcn,"string"==typeof a.options("reporter"))a._loadFile(a.options("reporter")),a.customReporter(b,a.options("reporter_options"));else if("function"==typeof a.options("reporter"))a.options("reporter")(b,a.options("reporter_options"));else{if("function"!=typeof a.defaultReporter)throw new Error("no reporter defined.");a.defaultReporter(b,a.options("reporter_options"))}},_bindStartTestRunner:function(a,b){a?a(b):"complete"===document.readyState?b():window.addEventListener("load",b,!1)},_loadSourceFiles:function(b){blanket.options("commonJS")?blanket._commonjs.require:window.require;a.options("debug")&&console.log("BLANKET-Collecting page scripts");var c=a.utils.collectPageScripts();if(0===c.length)b();else{sessionStorage.blanketSessionLoader&&(a.blanketSession=JSON.parse(sessionStorage.blanketSessionLoader)),c.forEach(function(b,c){a.utils.cache[b]={loaded:!1}});var d=-1;a.utils.loadAll(function(a){return a?"undefined"!=typeof c[d+1]:(d++,d>=c.length?null:c[d])},b)}},beforeStartTestRunner:function(b){b=b||{},b.checkRequirejs="undefined"==typeof b.checkRequirejs?!0:b.checkRequirejs,b.callback=b.callback||function(){},b.coverage="undefined"==typeof b.coverage?!0:b.coverage,b.coverage?a._bindStartTestRunner(b.bindEvent,function(){a._loadSourceFiles(function(){var c=function(){return b.condition?b.condition():a.requireFilesLoaded()},d=function(){if(c()){a.options("debug")&&console.log("BLANKET-All files loaded, init start test runner callback.");var e=a.options("testReadyCallback");e?"function"==typeof e?e(b.callback):"string"==typeof e&&(a._addScript(e),b.callback()):b.callback()}else setTimeout(d,13)};d()})}):b.callback()},utils:{qualifyURL:function(a){var b=document.createElement("a");return b.href=a,b.href}}})}(blanket),blanket.defaultReporter=function(a){function b(a){var b=document.getElementById(a);"block"===b.style.display?b.style.display="none":b.style.display="block"}function c(a){return a.replace(/\&/g,"&amp;").replace(/</g,"&lt;").replace(/\>/g,"&gt;").replace(/\"/g,"&quot;").replace(/\'/g,"&apos;").replace(/`/g,"&grave;").replace(/[$]/g,"&dollar;").replace(/&/g,"&amp;")}function d(a,b){var c=b?0:1;return"undefined"==typeof a||null===typeof a||"undefined"==typeof a[c]?!1:a[c].length>0}function e(a,b,f,g,h){var i="",j="";if(q.length>0)if(i+="<span class='"+(d(q[0][1],q[0][1].consequent===q[0][0])?"branchOkay":"branchWarning")+"'>",q[0][0].end.line===h){if(i+=c(b.slice(0,q[0][0].end.column))+"</span>",b=b.slice(q[0][0].end.column),q.shift(),q.length>0)if(i+="<span class='"+(d(q[0][1],!1)?"branchOkay":"branchWarning")+"'>",q[0][0].end.line===h){if(i+=c(b.slice(0,q[0][0].end.column))+"</span>",b=b.slice(q[0][0].end.column),q.shift(),!f)return{src:i+c(b),cols:f}}else{if(!f)return{src:i+c(b)+"</span>",cols:f};j="</span>"}else if(!f)return{src:i+c(b),cols:f}}else{if(!f)return{src:i+c(b)+"</span>",cols:f};j="</span>"}var k=f[a],l=k.consequent;if(l.start.line>h)q.unshift([k.alternate,k]),q.unshift([l,k]),b=c(b);else{var m="<span class='"+(d(k,!0)?"branchOkay":"branchWarning")+"'>";if(i+=c(b.slice(0,l.start.column-g))+m,f.length>a+1&&f[a+1].consequent.start.line===h&&f[a+1].consequent.start.column-g<f[a].consequent.end.column-g){var n=e(a+1,b.slice(l.start.column-g,l.end.column-g),f,l.start.column-g,h);i+=n.src,f=n.cols,f[a+1]=f[a+2],f.length--}else i+=c(b.slice(l.start.column-g,l.end.column-g));i+="</span>";var o=k.alternate;if(o.start.line>h)i+=c(b.slice(l.end.column-g)),q.unshift([o,k]);else{if(i+=c(b.slice(l.end.column-g,o.start.column-g)),m="<span class='"+(d(k,!1)?"branchOkay":"branchWarning")+"'>",i+=m,f.length>a+1&&f[a+1].consequent.start.line===h&&f[a+1].consequent.start.column-g<f[a].alternate.end.column-g){var p=e(a+1,b.slice(o.start.column-g,o.end.column-g),f,o.start.column-g,h);i+=p.src,f=p.cols,f[a+1]=f[a+2],f.length--}else i+=c(b.slice(o.start.column-g,o.end.column-g));i+="</span>",i+=c(b.slice(o.end.column-g)),b=i}}return{src:b+j,cols:f}}var f="#blanket-main {margin:2px;background:#EEE;color:#333;clear:both;font-family:'Helvetica Neue Light', 'HelveticaNeue-Light', 'Helvetica Neue', Calibri, Helvetica, Arial, sans-serif; font-size:17px;} #blanket-main a {color:#333;text-decoration:none;}  #blanket-main a:hover {text-decoration:underline;} .blanket {margin:0;padding:5px;clear:both;border-bottom: 1px solid #FFFFFF;} .bl-error {color:red;}.bl-success {color:#5E7D00;} .bl-file{width:auto;} .bl-cl{float:left;} .blanket div.rs {margin-left:50px; width:150px; float:right} .bl-nb {padding-right:10px;} #blanket-main a.bl-logo {color: #EB1764;cursor: pointer;font-weight: bold;text-decoration: none} .bl-source{ overflow-x:scroll; background-color: #FFFFFF; border: 1px solid #CBCBCB; color: #363636; margin: 25px 20px; width: 80%;} .bl-source div{white-space: pre;font-family: monospace;} .bl-source > div > span:first-child{background-color: #EAEAEA;color: #949494;display: inline-block;padding: 0 10px;text-align: center;width: 30px;} .bl-source .hit{background-color:#c3e6c7} .bl-source .miss{background-color:#e6c3c7} .bl-source span.branchWarning{color:#000;background-color:yellow;} .bl-source span.branchOkay{color:#000;background-color:transparent;}",g=60,h=document.head,i=0,j=document.body,k=Object.keys(a.files).some(function(b){return"undefined"!=typeof a.files[b].branchData}),l="<div id='blanket-main'><div class='blanket bl-title'><div class='bl-cl bl-file'><a href='http://alex-seville.github.com/blanket/' target='_blank' class='bl-logo'>Blanket.js</a> results</div><div class='bl-cl rs'>Coverage (%)</div><div class='bl-cl rs'>Covered/Total Smts.</div>"+(k?"<div class='bl-cl rs'>Covered/Total Branches</div>":"")+"<div style='clear:both;'></div></div>",m="<div class='blanket {{statusclass}}'><div class='bl-cl bl-file'><span class='bl-nb'>{{fileNumber}}.</span><a href='javascript:blanket_toggleSource(\"file-{{fileNumber}}\")'>{{file}}</a></div><div class='bl-cl rs'>{{percentage}} %</div><div class='bl-cl rs'>{{numberCovered}}/{{totalSmts}}</div>"+(k?"<div class='bl-cl rs'>{{passedBranches}}/{{totalBranches}}</div>":"")+"<div id='file-{{fileNumber}}' class='bl-source' style='display:none;'>{{source}}</div><div style='clear:both;'></div></div>";grandTotalTemplate="<div class='blanket grand-total {{statusclass}}'><div class='bl-cl'>{{rowTitle}}</div><div class='bl-cl rs'>{{percentage}} %</div><div class='bl-cl rs'>{{numberCovered}}/{{totalSmts}}</div>"+(k?"<div class='bl-cl rs'>{{passedBranches}}/{{totalBranches}}</div>":"")+"<div style='clear:both;'></div></div>";var n=document.createElement("script");n.type="text/javascript",n.text=b.toString().replace("function "+b.name,"function blanket_toggleSource"),j.appendChild(n);var o=function(a,b){return Math.round(a/b*100*100)/100},p=function(a,b,c){var d=document.createElement(a);d.innerHTML=c,b.appendChild(d)},q=[],r=function(a){return"undefined"!=typeof a},s=a.files,t={totalSmts:0,numberOfFilesCovered:0,passedBranches:0,totalBranches:0,moduleTotalStatements:{},moduleTotalCoveredStatements:{},moduleTotalBranches:{},moduleTotalCoveredBranches:{}},u=_blanket.options("modulePattern"),v=u?new RegExp(u):null;for(var w in s)if(s.hasOwnProperty(w)){i++;var x,y=s[w],z=0,A=0,B=[];for(x=0;x<y.source.length;x+=1){var C=y.source[x];if(q.length>0||"undefined"!=typeof y.branchData)if("undefined"!=typeof y.branchData[x+1]){var D=y.branchData[x+1].filter(r),E=0;C=e(E,C,D,0,x+1).src}else C=q.length?e(0,C,null,0,x+1).src:c(C);else C=c(C);var F="";y[x+1]?(A+=1,z+=1,F="hit"):0===y[x+1]&&(z++,F="miss"),B[x+1]="<div class='"+F+"'><span class=''>"+(x+1)+"</span>"+C+"</div>"}t.totalSmts+=z,t.numberOfFilesCovered+=A;var G=0,H=0;if("undefined"!=typeof y.branchData)for(var I=0;I<y.branchData.length;I++)if("undefined"!=typeof y.branchData[I])for(var J=0;J<y.branchData[I].length;J++)"undefined"!=typeof y.branchData[I][J]&&(G++,"undefined"!=typeof y.branchData[I][J][0]&&y.branchData[I][J][0].length>0&&"undefined"!=typeof y.branchData[I][J][1]&&y.branchData[I][J][1].length>0&&H++);if(t.passedBranches+=H,t.totalBranches+=G,v){var K=w.match(v)[1];t.moduleTotalStatements.hasOwnProperty(K)||(t.moduleTotalStatements[K]=0,t.moduleTotalCoveredStatements[K]=0),t.moduleTotalStatements[K]+=z,t.moduleTotalCoveredStatements[K]+=A,t.moduleTotalBranches.hasOwnProperty(K)||(t.moduleTotalBranches[K]=0,t.moduleTotalCoveredBranches[K]=0),t.moduleTotalBranches[K]+=G,t.moduleTotalCoveredBranches[K]+=H}var L=o(A,z),M=m.replace("{{file}}",w).replace("{{percentage}}",L).replace("{{numberCovered}}",A).replace(/\{\{fileNumber\}\}/g,i).replace("{{totalSmts}}",z).replace("{{totalBranches}}",G).replace("{{passedBranches}}",H).replace("{{source}}",B.join(" "));M=g>L?M.replace("{{statusclass}}","bl-error"):M.replace("{{statusclass}}","bl-success"),l+=M}var N=function(a,b,c,d,e){var f=o(b,a),h=g>f?"bl-error":"bl-success",i=e?"Total for module: "+e:"Global total",j=grandTotalTemplate.replace("{{rowTitle}}",i).replace("{{percentage}}",f).replace("{{numberCovered}}",b).replace("{{totalSmts}}",a).replace("{{passedBranches}}",d).replace("{{totalBranches}}",c).replace("{{statusclass}}",h);l+=j};if(v)for(var O in t.moduleTotalStatements)if(t.moduleTotalStatements.hasOwnProperty(O)){var P=t.moduleTotalStatements[O],Q=t.moduleTotalCoveredStatements[O],R=t.moduleTotalBranches[O],S=t.moduleTotalCoveredBranches[O];N(P,Q,R,S,O)}N(t.totalSmts,t.numberOfFilesCovered,t.totalBranches,t.passedBranches,null),l+="</div>",p("style",h,f),document.getElementById("blanket-main")?document.getElementById("blanket-main").innerHTML=l.slice(23,-6):p("div",j,l)},function(){var a={},b=Array.prototype.slice,c=b.call(document.scripts);b.call(c[c.length-1].attributes).forEach(function(b){if("data-cover-only"===b.nodeName&&(a.filter=b.nodeValue),"data-cover-never"===b.nodeName&&(a.antifilter=b.nodeValue),"data-cover-reporter"===b.nodeName&&(a.reporter=b.nodeValue),"data-cover-adapter"===b.nodeName&&(a.adapter=b.nodeValue),"data-cover-loader"===b.nodeName&&(a.loader=b.nodeValue),"data-cover-timeout"===b.nodeName&&(a.timeout=b.nodeValue),"data-cover-modulepattern"===b.nodeName&&(a.modulePattern=b.nodeValue),"data-cover-reporter-options"===b.nodeName)try{a.reporter_options=JSON.parse(b.nodeValue)}catch(c){if(blanket.options("debug"))throw new Error("Invalid reporter options.  Must be a valid stringified JSON object.")}if("data-cover-testReadyCallback"===b.nodeName&&(a.testReadyCallback=b.nodeValue),"data-cover-customVariable"===b.nodeName&&(a.customVariable=b.nodeValue),"data-cover-flags"===b.nodeName){var d=" "+b.nodeValue+" ";d.indexOf(" ignoreError ")>-1&&(a.ignoreScriptError=!0),d.indexOf(" autoStart ")>-1&&(a.autoStart=!0),d.indexOf(" ignoreCors ")>-1&&(a.ignoreCors=!0),d.indexOf(" branchTracking ")>-1&&(a.branchTracking=!0),d.indexOf(" sourceURL ")>-1&&(a.sourceURL=!0),d.indexOf(" debug ")>-1&&(a.debug=!0),d.indexOf(" engineOnly ")>-1&&(a.engineOnly=!0),d.indexOf(" commonJS ")>-1&&(a.commonJS=!0),d.indexOf(" instrumentCache ")>-1&&(a.instrumentCache=!0)}}),blanket.options(a),"undefined"!=typeof requirejs&&blanket.options("existingRequireJS",!0),blanket.options("commonJS")&&(blanket._commonjs={})}(),function(a){a.extend({utils:{normalizeBackslashes:function(a){return a.replace(/\\/g,"/")},matchPatternAttribute:function(b,c){if("string"==typeof c){if(0===c.indexOf("[")){var d=c.slice(1,c.length-1).split(",");return d.some(function(c){return a.utils.matchPatternAttribute(b,a.utils.normalizeBackslashes(c.slice(1,-1)))})}if(0===c.indexOf("//")){var e=c.slice(2,c.lastIndexOf("/")),f=c.slice(c.lastIndexOf("/")+1),g=new RegExp(e,f);return g.test(b)}return 0===c.indexOf("#")?window[c.slice(1)].call(window,b):b.indexOf(a.utils.normalizeBackslashes(c))>-1}return c instanceof Array?c.some(function(c){return a.utils.matchPatternAttribute(b,c)}):c instanceof RegExp?c.test(b):"function"==typeof c?c.call(window,b):void 0},blanketEval:function(b){a._addScript(b)},collectPageScripts:function(){var b=Array.prototype.slice,c=(b.call(document.scripts),[]),d=[],e=a.options("filter");if(null!=e){var f=a.options("antifilter");c=b.call(document.scripts).filter(function(c){return 1===b.call(c.attributes).filter(function(b){return"src"===b.nodeName&&a.utils.matchPatternAttribute(b.nodeValue,e)&&("undefined"==typeof f||!a.utils.matchPatternAttribute(b.nodeValue,f))}).length})}else c=b.call(document.querySelectorAll("script[data-cover]"));return d=c.map(function(c){return a.utils.qualifyURL(b.call(c.attributes).filter(function(a){return"src"===a.nodeName})[0].nodeValue)}),e||a.options("filter","['"+d.join("','")+"']"),d},loadAll:function(b,c,d){var e=b(),f=a.utils.scriptIsLoaded(e,a.utils.ifOrdered,b,c);if(a.utils.cache[e]&&a.utils.cache[e].loaded)f();else{var g=function(){a.options("debug")&&console.log("BLANKET-Mark script:"+e+", as loaded and move to next script."),f()},h=function(b){a.options("debug")&&console.log("BLANKET-File loading finished"),"undefined"!=typeof b&&(a.options("debug")&&console.log("BLANKET-Add file to DOM."),a._addScript(b)),g()};a.utils.attachScript({url:e},function(b){a.utils.processFile(b,e,h,h)})}},attachScript:function(b,c){var d=a.options("timeout")||3e3;setTimeout(function(){if(!a.utils.cache[b.url].loaded)throw new Error("error (timeout="+d+") loading source script: "+b.url)},d),a.utils.getFile(b.url,c,function(){throw new Error("error loading source script: "+b.url)})},ifOrdered:function(b,c){var d=b(!0);d?a.utils.loadAll(b,c):c(new Error("Error in loading chain."))},scriptIsLoaded:function(b,c,d,e){return a.options("debug")&&console.log("BLANKET-Returning function"),function(){a.options("debug")&&console.log("BLANKET-Marking file as loaded: "+b),a.utils.cache[b].loaded=!0,a.utils.allLoaded()?(a.options("debug")&&console.log("BLANKET-All files loaded"),e()):c&&(a.options("debug")&&console.log("BLANKET-Load next file."),c(d,e))}},cache:{},allLoaded:function(){for(var b=Object.keys(a.utils.cache),c=0;c<b.length;c++)if(!a.utils.cache[b[c]].loaded)return!1;return!0},processFile:function(b,c,d,e){var f=a.options("filter"),g=a.options("antifilter");"undefined"!=typeof g&&a.utils.matchPatternAttribute(c,g)?(e(b),a.options("debug")&&console.log("BLANKET-File will never be instrumented:"+c),a.requiringFile(c,!0)):a.utils.matchPatternAttribute(c,f)?(a.options("debug")&&console.log("BLANKET-Attempting instrument of:"+c),a.instrument({inputFile:b,inputFileName:c},function(e){try{a.options("debug")&&console.log("BLANKET-instrument of:"+c+" was successfull."),a.utils.blanketEval(e),d(),a.requiringFile(c,!0)}catch(f){if(!a.options("ignoreScriptError")){var g=new Error("Error parsing instrumented code: "+f);throw g.error=f,g}a.options("debug")&&console.log("BLANKET-There was an error loading the file:"+c),d(b),a.requiringFile(c,!0)}})):(a.options("debug")&&console.log("BLANKET-Loading (without instrumenting) the file:"+c),e(b),a.requiringFile(c,!0))},cacheXhrConstructor:function(){var a,b,c;if("undefined"!=typeof XMLHttpRequest)a=XMLHttpRequest,this.createXhr=function(){return new a};else if("undefined"!=typeof ActiveXObject){for(a=ActiveXObject,b=0;3>b;b+=1){c=progIds[b];try{new ActiveXObject(c);break}catch(d){}}this.createXhr=function(){return new a(c)}}},craeteXhr:function(){throw new Error("cacheXhrConstructor is supposed to overwrite this function.")},getFile:function(b,c,d,e){var f=!1;if(a.blanketSession)for(var g=Object.keys(a.blanketSession),h=0;h<g.length;h++){var i=g[h];if(b.indexOf(i)>-1)return c(a.blanketSession[i]),void(f=!0)}if(!f){var j=a.utils.createXhr();j.open("GET",b,!0),e&&e(j,b),j.onreadystatechange=function(a){var e,f;4===j.readyState&&(e=j.status,e>399&&600>e?(f=new Error(b+" HTTP status: "+e),f.xhr=j,d(f)):c(j.responseText))};try{j.send(null)}catch(k){if(!k.code||101!==k.code&&1012!==k.code||a.options("ignoreCors")!==!1)throw k;a.showManualLoader()}}}}}),function(){var b=(blanket.options("commonJS")?blanket._commonjs.require:window.require,blanket.options("commonJS")?blanket._commonjs.requirejs:window.requirejs);!a.options("engineOnly")&&a.options("existingRequireJS")&&(a.utils.oldloader=b.load,b.load=function(b,c,d){a.requiringFile(d),a.utils.getFile(d,function(e){a.utils.processFile(e,d,function(){b.completeLoad(c)},function(){a.utils.oldloader(b,c,d)})},function(b){throw a.requiringFile(),b})}),a.utils.cacheXhrConstructor()}()}(blanket),function(){if(!mocha)throw new Exception("mocha library does not exist in global namespace!");var a=mocha._reporter,b=function(b){b.on("start",function(){blanket.setupCoverage()}),b.on("end",function(){blanket.onTestsDone()}),b.on("suite",function(){blanket.onModuleStart()}),b.on("test",function(){blanket.onTestStart()}),b.on("test end",function(a){blanket.onTestDone(a.parent.tests.length,"passed"===a.state)}),b.on("hook",function(){blanket.onTestStart()}),b.on("hook end",function(){blanket.onTestsDone()}),new a(b)};b.prototype=a.prototype,mocha.reporter(b);var c=mocha.run,d=null;mocha.run=function(a){d=a,console.log("waiting for blanket...")},blanket.beforeStartTestRunner({callback:function(){blanket.options("existingRequireJS")||c(d),mocha.run=c}})}();