!function(l,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define("test",[],n):"object"==typeof exports?exports.test=n():(l.peg=l.peg||{},l.peg.test=n())}("undefined"!=typeof self?self:window,function(){return function(l){var n={};function e(t){if(n[t])return n[t].exports;var u=n[t]={i:t,l:!1,exports:{}};return l[t].call(u.exports,u,u.exports,e),u.l=!0,u.exports}return e.m=l,e.c=n,e.d=function(l,n,t){e.o(l,n)||Object.defineProperty(l,n,{enumerable:!0,get:t})},e.r=function(l){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(l,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(l,"__esModule",{value:!0})},e.t=function(l,n){if(1&n&&(l=e(l)),8&n)return l;if(4&n&&"object"==typeof l&&l&&l.__esModule)return l;var t=Object.create(null);if(e.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:l}),2&n&&"string"!=typeof l)for(var u in l)e.d(t,u,function(n){return l[n]}.bind(null,u));return t},e.n=function(l){var n=l&&l.__esModule?function(){return l.default}:function(){return l};return e.d(n,"a",n),n},e.o=function(l,n){return Object.prototype.hasOwnProperty.call(l,n)},e.p="",e(e.s=52)}([function(l,n,e){"use strict";var t=e(9),u=e(5),r=e(23),o=e(14),i=e(1),a={VERSION:e(13).version,GrammarError:t,ast:u,parser:o,compiler:r,util:i,generate:function(l){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=new r.Session({passes:i.convertPasses(r.passes)});return Array.isArray(n.plugins)&&n.plugins.forEach(function(l){"function"==typeof l.use&&l.use(e,n)}),r.compile(e.parse(l,n.parser||{}),e,n)}};l.exports=a},function(l,n,e){"use strict";var t=e(19),u=e(20),r=e(21),o=e(11),i=function(){function l(l){return Array.isArray(l)?l:r.values(l)}return function(n){return r.map(n,l)}}();l.exports={find:t.find,findIndex:t.findIndex,stringEscape:u.stringEscape,regexpEscape:u.regexpEscape,reservedWords:u.reservedWords,clone:r.clone,each:r.each,extend:r.extend,map:r.map,values:r.values,enforceFastProperties:r.enforceFastProperties,evalModule:o.evalModule,convertPasses:i,processOptions:function(l,n){var e={};return r.extend(e,l),r.extend(e,n),e},noop:function(){}}},function(l,n,e){l.exports=e(6)},function(l,n){ /*! * Chai - flag utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ l.exports=function(l,n,e){var t=l.__flags||(l.__flags=Object.create(null));if(3!==arguments.length)return t[n];t[n]=e}},function(l,n,e){"use strict";var t=e(84),u=e(0).compiler.Session;l.exports=function(l,n){l.use(t);var e=l.Assertion;function r(l,n,e){var t=n.parse(l);return e.allowedStartRules||(e.allowedStartRules=t.rules.length>0?[t.rules[0].name]:[]),t}e.addMethod("changeAST",function(l,t,o,i){o=void 0!==o?o:{},i=void 0!==i?i:{reportFailures:!0};var a=new u({grammar:l}),s=r(l,a,o);s.rules=s.rules.map(function(l){return Object.assign(l,i)}),n.flag(this,"object")(s,a,o),new e(s).like(t)}),e.addMethod("reportError",function(l,t,o){o=void 0!==o?o:{};var i,a,s=new u({grammar:l}),c=r(l,s,o);try{n.flag(this,"object")(c,s,o),i=!0}catch(l){a=l,i=!1}this.assert(!i,"expected #{this} to report an error but it didn't","expected #{this} to not report an error but #{act} was reported",null,a),i||void 0===t||("string"==typeof t&&(t={message:t}),Object.keys(t).forEach(function(l){new e(a).to.have.property(l).that.is.deep.equal(t[l])}))}),e.addMethod("reportWarning",function(l,e,t){var o=this;e=Array.isArray(e)?e:null==e?[]:[e],t=void 0!==t?t:{};var i=[];var a=new u({grammar:l,warn:function(l){i.push(l)}}),s=r(l,a,t);n.flag(this,"object")(s,a,t);var c=i.length,f=e.length;e.length&&this.assert(c===f,"expected #{this} to report ".concat(f," warnings, but it reported ").concat(c," warnings"),"expected #{this} to not report ".concat(f," warnings"),e,i),e.forEach(function(l){o.assert(-1!==i.indexOf(l),"expected #{this} to report the warning #{exp}, but it didn't","expected #{this} to not report the warning #{exp}",l)})})}},function(l,n,e){"use strict";n.visitor=e(10),n.Node=e(12),n.Grammar=e(22)},function(l,n,e){ /*! * chai * Copyright(c) 2011-2014 Jake Luer * MIT Licensed */ var t=[]; /*! * Chai version */n.version="4.2.0", /*! * Assertion Error */ n.AssertionError=e(43); /*! * Utils for plugins (not exported) */ var u=e(57);n.use=function(l){return~t.indexOf(l)||(l(n,u),t.push(l)),n}, /*! * Utility Functions */ n.util=u; /*! * Configuration */ var r=e(8);n.config=r; /*! * Primary `Assertion` prototype */ var o=e(74);n.use(o); /*! * Core Assertions */ var i=e(75);n.use(i); /*! * Expect interface */ var a=e(76);n.use(a); /*! * Should interface */ var s=e(77);n.use(s); /*! * Assert interface */ var c=e(78);n.use(c)},function(l,n){ /*! * Chai - transferFlags utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ l.exports=function(l,n,e){var t=l.__flags||(l.__flags=Object.create(null));for(var u in n.__flags||(n.__flags=Object.create(null)),e=3!==arguments.length||e,t)(e||"object"!==u&&"ssfi"!==u&&"lockSsfi"!==u&&"message"!=u)&&(n.__flags[u]=t[u])}},function(l,n){l.exports={includeStack:!1,showDiff:!0,truncateThreshold:40,useProxy:!0,proxyExcludedKeys:["then","catch","inspect","toJSON"]}},function(l,n,e){"use strict";l.exports=function l(n,e){!function(l,n){if(!(l instanceof n))throw new TypeError("Cannot call a class as a function")}(this,l),this.name="GrammarError",this.message=n,this.location=e,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,l)}},function(l,n,e){"use strict";function t(l,n){for(var e=0;e1?t-1:0),r=1;r1?e-1:0),u=1;u1?e-1:0),u=1;u (https://majda.cz/)","Futago-za Ryuu "],types:"typings/pegjs.d.ts",main:"lib/peg.js",bin:"bin/peg.js",engines:{node:">= 6"}}},function(l,n,e){"use strict";var t=e(5),u=e(1);function r(l,n,e,t){this.message=l,this.expected=n,this.found=e,this.location=t,this.name="SyntaxError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,r)}!function(l,n){function e(){this.constructor=l}e.prototype=n.prototype,l.prototype=new e}(r,Error),r.buildMessage=function(l,n){var e={literal:function(l){return'"'+u(l.text)+'"'},class:function(l){var n=l.parts.map(function(l){return Array.isArray(l)?r(l[0])+"-"+r(l[1]):r(l)});return"["+(l.inverted?"^":"")+n+"]"},any:function(){return"any character"},end:function(){return"end of input"},other:function(l){return l.description},not:function(l){return"not "+o(l.expected)}};function t(l){return l.charCodeAt(0).toString(16).toUpperCase()}function u(l){return l.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(l){return"\\x0"+t(l)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(l){return"\\x"+t(l)})}function r(l){return l.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(l){return"\\x0"+t(l)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(l){return"\\x"+t(l)})}function o(l){return e[l.type](l)}return"Expected "+function(l){var n,e,t=l.map(o);if(t.sort(),t.length>0){for(n=1,e=1;ne.charCodeAt(0)&&In("Invalid character range: "+l.substring($n,Bn)+"."),[n,e]},xn=function(){return""},Cn=function(){return"\0"},_n=function(){return"\b"},Tn=function(){return"\f"},Sn=function(){return"\n"},kn=function(){return"\r"},Fn=function(){return"\t"},Dn=function(){return"\v"},Pn=function(l){return String.fromCharCode(parseInt(l,16))},jn=function(){return Pe("any")},On=function(){In("Unbalanced brace.")},Bn=0,$n=0,Ln=[{line:1,column:1}],Nn=[],Mn=0;if("startRule"in n){if(!(n.startRule in i))throw new Error("Can't start parsing from rule \""+n.startRule+'".');a=i[n.startRule]}function Rn(){return Wn($n,Bn)}function In(l,n){throw function(l,n){return new r(l,null,null,n)}(l,n=void 0!==n?n:Wn($n,Bn))}function qn(l,n){return{type:"literal",text:l,ignoreCase:n}}function Un(l){return{type:"other",description:l}}function Hn(n){var e,t=Ln[n];if(t)return t;for(e=n-1;!Ln[e];)e--;for(t={line:(t=Ln[e]).line,column:t.column};e0;function Wn(l,e){var t={};zn&&(t.filename=n.filename);var u=Hn(l);t.start={offset:l,line:u.line,column:u.column};var r=Hn(e);return t.end={offset:e,line:r.line,column:r.column},t}function Vn(){Nn.push({pos:Bn,variants:[]})}function Gn(l){var n=Nn[Nn.length-1];Bnn.pos&&(n.pos=Bn,n.variants=[]),n.variants.push(l))}function Jn(l){var n=Nn.pop(),e=Nn[Nn.length-1],t=n.variants;e.pos===n.pos&&(l&&(t=t.map(function(l){return"not"===l.type?l.expected:{type:"not",expected:l}})),Array.prototype.push.apply(e.variants,t))}function Xn(){var l,n,e,t,u;if(l=Bn,Te(),n=Bn,(e=function(){var l,n;return l=Bn,(n=_e())!==o&&Se()!==o?($n=l,l=Jl(n)):(Bn=l,l=o),l}())!==o?(t=Te(),n=e):(Bn=n,n=o),n===o&&(n=null),e=[],t=Bn,(u=Kn())!==o?(Te(),t=u):(Bn=t,t=o),t!==o)for(;t!==o;)e.push(t),t=Bn,(u=Kn())!==o?(Te(),t=u):(Bn=t,t=o);else e=o;return e!==o?($n=l,l=Gl(n,e)):(Bn=l,l=o),l}function Kn(){var n,e,t,u,r,i;return n=Bn,(e=fe())!==o?(Te(),t=Bn,(u=de())!==o?(Te(),t=u):(Bn=t,t=o),t===o&&(t=null),i=wl,0===Mn&&Gn(i),61===l.charCodeAt(Bn)?(u=s,Bn++):u=o,u!==o?(Te(),(r=Yn())!==o&&Se()!==o?($n=n,n=Xl(e,t,r)):(Bn=n,n=o)):(Bn=n,n=o)):(Bn=n,n=o),n}function Yn(){var n,e,t,u,r,i,a=function(l){0===Mn&&Gn(l)};if(n=Bn,(e=Zn())!==o){for(t=[],u=Bn,Te(),a(Al),47===l.charCodeAt(Bn)?(r=c,Bn++):r=o,r!==o?(Te(),(i=Zn())!==o?u=i:(Bn=u,u=o)):(Bn=u,u=o);u!==o;)t.push(u),u=Bn,Te(),a(Al),47===l.charCodeAt(Bn)?(r=c,Bn++):r=o,r!==o?(Te(),(i=Zn())!==o?u=i:(Bn=u,u=o)):(Bn=u,u=o);$n=n,n=Kl(e,t)}else Bn=n,n=o;return n}function Zn(){var l,n,e,t;return l=Bn,(n=function(){var l,n,e,t,u;if(l=Bn,(n=Qn())!==o){for(e=[],t=Bn,Te(),(u=Qn())!==o?t=u:(Bn=t,t=o);t!==o;)e.push(t),t=Bn,Te(),(u=Qn())!==o?t=u:(Bn=t,t=o);$n=l,l=Zl(n,e)}else Bn=l,l=o;return l}())!==o?(e=Bn,Te(),(t=_e())!==o?e=t:(Bn=e,e=o),e===o&&(e=null),$n=l,l=Yl(n,e)):(Bn=l,l=o),l}function Qn(){var n,e,t,u,r,i;return n=Bn,i=El,0===Mn&&Gn(i),64===l.charCodeAt(Bn)?(e=f,Bn++):e=o,e!==o?((t=le())===o&&(t=null),u=Te(),(r=ne())!==o?($n=n,n=Ql(t,r)):(Bn=n,n=o)):(Bn=n,n=o),n===o&&(n=Bn,(e=le())!==o?(t=Te(),(u=ne())!==o?($n=n,n=ln(e,u)):(Bn=n,n=o)):(Bn=n,n=o),n===o&&(n=ne())),n}function le(){var n,e,t,u;return n=Bn,(e=fe())!==o?(Te(),u=xl,0===Mn&&Gn(u),58===l.charCodeAt(Bn)?(t=p,Bn++):t=o,t!==o?($n=n,n=nn(e)):(Bn=n,n=o)):(Bn=n,n=o),n}function ne(){var n,e,t;return n=Bn,(e=function(){var n,e,t=function(l){0===Mn&&Gn(l)};return n=Bn,t(Cl),36===l.charCodeAt(Bn)?(e=h,Bn++):e=o,e!==o&&($n=n,e=tn()),(n=e)===o&&(n=Bn,t(_l),38===l.charCodeAt(Bn)?(e=d,Bn++):e=o,e!==o&&($n=n,e=un()),(n=e)===o&&(n=Bn,t(Tl),33===l.charCodeAt(Bn)?(e=g,Bn++):e=o,e!==o&&($n=n,e=rn()),n=e)),n}())!==o?(Te(),(t=ee())!==o?($n=n,n=en(e,t)):(Bn=n,n=o)):(Bn=n,n=o),n===o&&(n=ee()),n}function ee(){var n,e,t;return n=Bn,(e=te())!==o?(Te(),(t=function(){var n,e,t=function(l){0===Mn&&Gn(l)};return n=Bn,t(Sl),63===l.charCodeAt(Bn)?(e=m,Bn++):e=o,e!==o&&($n=n,e=an()),(n=e)===o&&(n=Bn,t(kl),42===l.charCodeAt(Bn)?(e=y,Bn++):e=o,e!==o&&($n=n,e=sn()),(n=e)===o&&(n=Bn,t(Fl),43===l.charCodeAt(Bn)?(e=b,Bn++):e=o,e!==o&&($n=n,e=cn()),n=e)),n}())!==o?($n=n,n=on(e,t)):(Bn=n,n=o)):(Bn=n,n=o),n===o&&(n=te()),n}function te(){var n,e,t,u,r=function(l){0===Mn&&Gn(l)};return(n=function(){var n,e,t,u;return u=ql,0===Mn&&Gn(u),Mn++,n=Bn,(e=de())!==o?(105===l.charCodeAt(Bn)?(t=R,Bn++):t=o,t===o&&(t=null),$n=n,n=vn(e,t)):(Bn=n,n=o),Mn--,n}())===o&&(n=function(){var n,e,t,u,r,i,a;if(a=Hl,0===Mn&&Gn(a),Mn++,n=Bn,91===l.charCodeAt(Bn)?(e=U,Bn++):e=o,e!==o){for(94===l.charCodeAt(Bn)?(t=H,Bn++):t=o,t===o&&(t=null),u=[],r=ye();r!==o;)u.push(r),r=ye();93===l.charCodeAt(Bn)?(r=z,Bn++):r=o,r!==o?(105===l.charCodeAt(Bn)?(i=R,Bn++):i=o,i===o&&(i=null),$n=n,n=An(t,u,i)):(Bn=n,n=o)}else Bn=n,n=o;return Mn--,n}())===o&&(n=function(){var n,e,t;return n=Bn,t=zl,0===Mn&&Gn(t),46===l.charCodeAt(Bn)?(e=nl,Bn++):e=o,e!==o&&($n=n,e=jn()),n=e}())===o&&(n=function(){var n,e,t,u,r,i,a,c,f;return n=Bn,(e=fe())!==o?(t=Bn,Vn(),u=Bn,r=Te(),i=Bn,(a=de())!==o?(c=Te(),i=a=[a,c]):(Bn=i,i=o),i===o&&(i=null),f=wl,0===Mn&&Gn(f),61===l.charCodeAt(Bn)?(a=s,Bn++):a=o,a!==o?u=r=[r,i,a]:(Bn=u,u=o),Jn(!0),u===o?t=void 0:(Bn=t,t=o),t!==o?($n=n,n=pn(e)):(Bn=n,n=o)):(Bn=n,n=o),n}())===o&&(n=function(){var n,e,t;return n=Bn,(e=function(){var n,e,t=function(l){0===Mn&&Gn(l)};return n=Bn,t(_l),38===l.charCodeAt(Bn)?(e=d,Bn++):e=o,e!==o&&($n=n,e=dn()),(n=e)===o&&(n=Bn,t(Tl),33===l.charCodeAt(Bn)?(e=g,Bn++):e=o,e!==o&&($n=n,e=gn()),n=e),n}())!==o?(Te(),(t=_e())!==o?($n=n,n=hn(e,t)):(Bn=n,n=o)):(Bn=n,n=o),n}())===o&&(n=Bn,r(Dl),40===l.charCodeAt(Bn)?(e=v,Bn++):e=o,e!==o?(Te(),(t=Yn())!==o?(Te(),r(Pl),41===l.charCodeAt(Bn)?(u=w,Bn++):u=o,u!==o?($n=n,n=fn(t)):(Bn=n,n=o)):(Bn=n,n=o)):(Bn=n,n=o)),n}function ue(){var n,e;return e=jl,0===Mn&&Gn(e),l.length>Bn?(n=l.charAt(Bn),Bn++):n=o,n}function re(){var n,e;return e=Ol,0===Mn&&Gn(e),Mn++,9===l.charCodeAt(Bn)?(n=A,Bn++):n=o,n===o&&(11===l.charCodeAt(Bn)?(n=E,Bn++):n=o,n===o&&(12===l.charCodeAt(Bn)?(n=x,Bn++):n=o,n===o&&(32===l.charCodeAt(Bn)?(n=C,Bn++):n=o,n===o&&(160===l.charCodeAt(Bn)?(n=_,Bn++):n=o,n===o&&(65279===l.charCodeAt(Bn)?(n=T,Bn++):n=o,n===o&&(n=function(){var n;return vl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())))))),Mn--,n}function oe(){var n,e;return e=Bl,0===Mn&&Gn(e),rl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}function ie(){var n,e;return e=$l,0===Mn&&Gn(e),Mn++,10===l.charCodeAt(Bn)?(n=S,Bn++):n=o,n===o&&(l.substr(Bn,2)===k?(n=k,Bn+=2):n=o,n===o&&(13===l.charCodeAt(Bn)?(n=F,Bn++):n=o,n===o&&(8232===l.charCodeAt(Bn)?(n=D,Bn++):n=o,n===o&&(8233===l.charCodeAt(Bn)?(n=P,Bn++):n=o)))),Mn--,n}function ae(){var n,e;return e=Ll,0===Mn&&Gn(e),Mn++,(n=function(){var n,e,t,u,r,i,a;if(n=Bn,l.substr(Bn,2)===j?(e=j,Bn+=2):e=o,e!==o){for(t=Bn,u=[],r=Bn,i=Bn,Vn(),l.substr(Bn,2)===O?(a=O,Bn+=2):a=o,Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o);r!==o;)u.push(r),r=Bn,i=Bn,Vn(),l.substr(Bn,2)===O?(a=O,Bn+=2):a=o,Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o);t=l.substring(t,Bn),l.substr(Bn,2)===O?(u=O,Bn+=2):u=o,u!==o?($n=n,n=mn(t)):(Bn=n,n=o)}else Bn=n,n=o;return n}())===o&&(n=ce()),Mn--,n}function se(){var n,e,t,u,r,i,a,s=function(l){0===Mn&&Gn(l)};if(n=Bn,s(Nl),l.substr(Bn,2)===j?(e=j,Bn+=2):e=o,e!==o){for(t=Bn,u=[],r=Bn,i=Bn,Vn(),s(Ml),l.substr(Bn,2)===O?(a=O,Bn+=2):a=o,a===o&&(a=oe()),Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o);r!==o;)u.push(r),r=Bn,i=Bn,Vn(),s(Ml),l.substr(Bn,2)===O?(a=O,Bn+=2):a=o,a===o&&(a=oe()),Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o);t=l.substring(t,Bn),s(Ml),l.substr(Bn,2)===O?(u=O,Bn+=2):u=o,u!==o?($n=n,n=mn(t)):(Bn=n,n=o)}else Bn=n,n=o;return n}function ce(){var n,e,t,u,r,i,a,s;if(n=Bn,s=Rl,0===Mn&&Gn(s),l.substr(Bn,2)===B?(e=B,Bn+=2):e=o,e!==o){for(t=Bn,u=[],r=Bn,i=Bn,Vn(),a=oe(),Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o);r!==o;)u.push(r),r=Bn,i=Bn,Vn(),a=oe(),Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o);t=l.substring(t,Bn),$n=n,n=yn(t)}else Bn=n,n=o;return n}function fe(){var l,n,e,t,u;if(u=Il,0===Mn&&Gn(u),Mn++,l=Bn,(n=pe())!==o){for(e=[],t=he();t!==o;)e.push(t),t=he();$n=l,l=bn(n,e)}else Bn=l,l=o;return Mn--,l}function pe(){var n,e,t;return(n=function(){var n;return(n=function(){var n;return hl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())===o&&(n=function(){var n;return sl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())===o&&(n=function(){var n;return pl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())===o&&(n=function(){var n;return cl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())===o&&(n=function(){var n;return fl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())===o&&(n=function(){var n;return yl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}()),n}())===o&&(36===l.charCodeAt(Bn)?(n=h,Bn++):n=o,n===o&&(95===l.charCodeAt(Bn)?(n=$,Bn++):n=o,n===o&&(n=Bn,92===l.charCodeAt(Bn)?(e=L,Bn++):e=o,e!==o&&(t=Ee())!==o?n=t:(Bn=n,n=o)))),n}function he(){var n;return(n=pe())===o&&(n=function(){var n;return(n=function(){var n;return gl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())===o&&(n=function(){var n;return dl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}()),n}())===o&&(n=function(){var n;return ml.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())===o&&(n=function(){var n;return bl.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}())===o&&(8204===l.charCodeAt(Bn)?(n=N,Bn++):n=o,n===o&&(8205===l.charCodeAt(Bn)?(n=M,Bn++):n=o)),n}function de(){var n,e,t,u,r;if(r=Ul,0===Mn&&Gn(r),Mn++,n=Bn,34===l.charCodeAt(Bn)?(e=I,Bn++):e=o,e!==o){for(t=[],u=ge();u!==o;)t.push(u),u=ge();34===l.charCodeAt(Bn)?(u=I,Bn++):u=o,u!==o?($n=n,n=wn(t)):(Bn=n,n=o)}else Bn=n,n=o;if(n===o)if(n=Bn,39===l.charCodeAt(Bn)?(e=q,Bn++):e=o,e!==o){for(t=[],u=me();u!==o;)t.push(u),u=me();39===l.charCodeAt(Bn)?(u=q,Bn++):u=o,u!==o?($n=n,n=wn(t)):(Bn=n,n=o)}else Bn=n,n=o;return Mn--,n}function ge(){var n,e,t;return n=Bn,e=Bn,Vn(),34===l.charCodeAt(Bn)?(t=I,Bn++):t=o,t===o&&(92===l.charCodeAt(Bn)?(t=L,Bn++):t=o,t===o&&(t=oe())),Jn(!0),t===o?e=void 0:(Bn=e,e=o),e!==o&&(t=ue())!==o?n=t:(Bn=n,n=o),n===o&&(n=Bn,92===l.charCodeAt(Bn)?(e=L,Bn++):e=o,e!==o&&(t=we())!==o?n=t:(Bn=n,n=o),n===o&&(n=ve())),n}function me(){var n,e,t;return n=Bn,e=Bn,Vn(),39===l.charCodeAt(Bn)?(t=q,Bn++):t=o,t===o&&(92===l.charCodeAt(Bn)?(t=L,Bn++):t=o,t===o&&(t=oe())),Jn(!0),t===o?e=void 0:(Bn=e,e=o),e!==o&&(t=ue())!==o?n=t:(Bn=n,n=o),n===o&&(n=Bn,92===l.charCodeAt(Bn)?(e=L,Bn++):e=o,e!==o&&(t=we())!==o?n=t:(Bn=n,n=o),n===o&&(n=ve())),n}function ye(){var n;return(n=function(){var n,e,t,u;return n=Bn,(e=be())!==o?(45===l.charCodeAt(Bn)?(t=W,Bn++):t=o,t!==o&&(u=be())!==o?($n=n,n=En(e,u)):(Bn=n,n=o)):(Bn=n,n=o),n}())===o&&(n=be()),n}function be(){var n,e,t;return n=Bn,e=Bn,Vn(),93===l.charCodeAt(Bn)?(t=z,Bn++):t=o,t===o&&(92===l.charCodeAt(Bn)?(t=L,Bn++):t=o,t===o&&(t=oe())),Jn(!0),t===o?e=void 0:(Bn=e,e=o),e!==o&&(t=ue())!==o?n=t:(Bn=n,n=o),n===o&&(n=Bn,92===l.charCodeAt(Bn)?(e=L,Bn++):e=o,e!==o&&(t=we())!==o?n=t:(Bn=n,n=o),n===o&&(n=ve())),n}function ve(){var n,e;return n=Bn,92===l.charCodeAt(Bn)?(e=L,Bn++):e=o,e!==o&&ie()!==o?($n=n,n=xn()):(Bn=n,n=o),n}function we(){var n,e,t,u;return(n=function(){var n;return(n=Ae())===o&&(n=function(){var n,e,t;return n=Bn,e=Bn,Vn(),(t=function(){var n;return(n=Ae())===o&&(n=xe())===o&&(120===l.charCodeAt(Bn)?(n=Q,Bn++):n=o,n===o&&(117===l.charCodeAt(Bn)?(n=ll,Bn++):n=o)),n}())===o&&(t=oe()),Jn(!0),t===o?e=void 0:(Bn=e,e=o),e!==o&&(t=ue())!==o?n=t:(Bn=n,n=o),n}()),n}())===o&&(n=Bn,48===l.charCodeAt(Bn)?(e=V,Bn++):e=o,e!==o?(t=Bn,Vn(),u=xe(),Jn(!0),u===o?t=void 0:(Bn=t,t=o),t!==o?($n=n,n=Cn()):(Bn=n,n=o)):(Bn=n,n=o),n===o&&(n=function(){var n,e,t,u,r,i;return n=Bn,120===l.charCodeAt(Bn)?(e=Q,Bn++):e=o,e!==o?(t=Bn,u=Bn,(r=Ce())!==o&&(i=Ce())!==o?u=r=[r,i]:(Bn=u,u=o),(t=u!==o?l.substring(t,Bn):u)!==o?($n=n,n=Pn(t)):(Bn=n,n=o)):(Bn=n,n=o),n}())===o&&(n=Ee())),n}function Ae(){var n,e;return 39===l.charCodeAt(Bn)?(n=q,Bn++):n=o,n===o&&(34===l.charCodeAt(Bn)?(n=I,Bn++):n=o,n===o&&(92===l.charCodeAt(Bn)?(n=L,Bn++):n=o,n===o&&(n=Bn,98===l.charCodeAt(Bn)?(e=G,Bn++):e=o,e!==o&&($n=n,e=_n()),(n=e)===o&&(n=Bn,102===l.charCodeAt(Bn)?(e=J,Bn++):e=o,e!==o&&($n=n,e=Tn()),(n=e)===o&&(n=Bn,110===l.charCodeAt(Bn)?(e=X,Bn++):e=o,e!==o&&($n=n,e=Sn()),(n=e)===o&&(n=Bn,114===l.charCodeAt(Bn)?(e=K,Bn++):e=o,e!==o&&($n=n,e=kn()),(n=e)===o&&(n=Bn,116===l.charCodeAt(Bn)?(e=Y,Bn++):e=o,e!==o&&($n=n,e=Fn()),(n=e)===o&&(n=Bn,118===l.charCodeAt(Bn)?(e=Z,Bn++):e=o,e!==o&&($n=n,e=Dn()),n=e)))))))),n}function Ee(){var n,e,t,u,r,i,a,s;return n=Bn,117===l.charCodeAt(Bn)?(e=ll,Bn++):e=o,e!==o?(t=Bn,u=Bn,(r=Ce())!==o&&(i=Ce())!==o&&(a=Ce())!==o&&(s=Ce())!==o?u=r=[r,i,a,s]:(Bn=u,u=o),(t=u!==o?l.substring(t,Bn):u)!==o?($n=n,n=Pn(t)):(Bn=n,n=o)):(Bn=n,n=o),n}function xe(){var n;return ol.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}function Ce(){var n;return il.test(l.charAt(Bn))?(n=l.charAt(Bn),Bn++):n=o,n}function _e(){var n,e,t,u,r;return r=Wl,0===Mn&&Gn(r),Mn++,n=Bn,123===l.charCodeAt(Bn)?(e=el,Bn++):e=o,e!==o?(t=function n(){var e,t,u,r,i,a;if(e=Bn,t=[],u=[],r=Bn,i=Bn,Vn(),al.test(l.charAt(Bn))?(a=l.charAt(Bn),Bn++):a=o,Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o),r!==o)for(;r!==o;)u.push(r),r=Bn,i=Bn,Vn(),al.test(l.charAt(Bn))?(a=l.charAt(Bn),Bn++):a=o,Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o);else u=o;for(u===o&&(u=Bn,123===l.charCodeAt(Bn)?(r=el,Bn++):r=o,r!==o?(i=n(),125===l.charCodeAt(Bn)?(a=tl,Bn++):a=o,a!==o?u=r=[r,i,a]:(Bn=u,u=o)):(Bn=u,u=o));u!==o;){if(t.push(u),u=[],r=Bn,i=Bn,Vn(),al.test(l.charAt(Bn))?(a=l.charAt(Bn),Bn++):a=o,Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o),r!==o)for(;r!==o;)u.push(r),r=Bn,i=Bn,Vn(),al.test(l.charAt(Bn))?(a=l.charAt(Bn),Bn++):a=o,Jn(!0),a===o?i=void 0:(Bn=i,i=o),i!==o&&(a=ue())!==o?r=i=[i,a]:(Bn=r,r=o);else u=o;u===o&&(u=Bn,123===l.charCodeAt(Bn)?(r=el,Bn++):r=o,r!==o?(i=n(),125===l.charCodeAt(Bn)?(a=tl,Bn++):a=o,a!==o?u=r=[r,i,a]:(Bn=u,u=o)):(Bn=u,u=o))}return e=l.substring(e,Bn)}(),125===l.charCodeAt(Bn)?(u=tl,Bn++):u=o,u!==o?n=t:(Bn=n,n=o)):(Bn=n,n=o),n===o&&(n=Bn,123===l.charCodeAt(Bn)?(e=el,Bn++):e=o,e!==o&&($n=n,e=On()),n=e),Mn--,n}function Te(){var l,n;for(l=[],(n=re())===o&&(n=ie())===o&&(n=ae());n!==o;)l.push(n),(n=re())===o&&(n=ie())===o&&(n=ae());return l}function Se(){var n,e,t,u,r;return n=Bn,e=Te(),r=Vl,0===Mn&&Gn(r),59===l.charCodeAt(Bn)?(t=ul,Bn++):t=o,t!==o?n=e=[e,t]:(Bn=n,n=o),n===o&&(n=Bn,e=function(){var l,n;for(l=[],(n=re())===o&&(n=se());n!==o;)l.push(n),(n=re())===o&&(n=se());return l}(),(t=ce())===o&&(t=null),(u=ie())!==o?n=e=[e,t,u]:(Bn=n,n=o),n===o&&(n=Bn,e=Te(),(t=function(){var n,e,t;return n=Bn,Vn(),t=jl,0===Mn&&Gn(t),l.length>Bn?(e=l.charAt(Bn),Bn++):e=o,Jn(!0),e===o?n=void 0:(Bn=n,n=o),n}())!==o?n=e=[e,t]:(Bn=n,n=o))),n}var ke=!0,Fe={},De=n.reservedWords||u.reservedWords;function Pe(l,n){var e=new t.Node(l,Rn());return null===n?e:(u.extend(e,n),u.enforceFastProperties(e))}Array.isArray(De)&&De.forEach(function(l){Fe[l]=!0});var je,Oe,Be=n.extractComments?{}:null;function $e(l,e){if(n.extractComments){var t=Rn();Be[t.start.offset]={text:l,multiline:e,location:t}}return l}if(Vn(),(e=a())!==o&&Bn===l.length)return e;throw e!==o&&Bn * MIT Licensed */l.exports=function(){return t.useProxy&&"undefined"!=typeof Proxy&&"undefined"!=typeof Reflect}},function(l,n){var e=Object.getOwnPropertyDescriptor(function(){},"length"); /*! * Chai - addLengthGuard utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */l.exports=function(l,n,t){return e.configurable?(Object.defineProperty(l,"length",{get:function(){if(t)throw Error("Invalid Chai property: "+n+'.length. Due to a compatibility issue, "length" cannot directly follow "'+n+'". Use "'+n+'.lengthOf" instead.');throw Error("Invalid Chai property: "+n+'.length. See docs for proper usage of "'+n+'".')}}),l):l}},function(l,n,e){var t=e(8),u=e(3),r=e(47),o=e(16),i=["__flags","__methods","_obj","assert"];l.exports=function(l,n){return o()?new Proxy(l,{get:function l(e,o){if("string"==typeof o&&-1===t.proxyExcludedKeys.indexOf(o)&&!Reflect.has(e,o)){if(n)throw Error("Invalid Chai property: "+n+"."+o+'. See docs for proper usage of "'+n+'".');var a=null,s=4;throw r(e).forEach(function(l){if(!Object.prototype.hasOwnProperty(l)&&-1===i.indexOf(l)){var n=function(l,n,e){if(Math.abs(l.length-n.length)>=e)return e;for(var t=[],u=0;u<=l.length;u++)t[u]=Array(n.length+1).fill(0),t[u][0]=u;for(var r=0;r=e?t[u][r]=e:t[u][r]=Math.min(t[u-1][r]+1,t[u][r-1]+1,t[u-1][r-1]+(o===n.charCodeAt(r-1)?0:1));return t[l.length][n.length]}(o,l,s);n2&&void 0!==arguments[2]?arguments[2]:{};switch("parser"===(e=m.processOptions(e,{allowedStartRules:[l.rules[0].name],cache:!1,context:{},dependencies:{},exportVar:null,features:null,format:"bare",header:null,optimize:"speed",output:"parser",trace:!1})).output&&(e.format="umd"),m.each(n.passes,function(t){t.forEach(function(t){t(l,n,e)})}),e.output){case"parser":return n.vm.evalModule(l.code,e.context);case"source":return l.code;default:n.error("Invalid output format: ".concat(e.output,"."))}}};l.exports=y},function(l,n,e){"use strict";l.exports=function(l,n,e){l.rules.forEach(function(l){l.reportFailures=!1});for(var t=e.allowedStartRules.map(function(n){var e=l.findRule(n);return e.reportFailures=!0,e}),u=n.buildVisitor({rule:function(l){u(l.expression)},named:function(){},rule_ref:function(n){var e=l.findRule(n.name);e.reportFailures||(e.reportFailures=!0,t.push(e))}});t.length>0;)u(t.pop())}},function(l,n,e){"use strict";var t=e(1);l.exports=function(l,n){var e,u=n.opcodes,r=[],o=[],i=[],a=[];function s(l){var n=JSON.stringify(l),e=t.findIndex(i,function(l){return JSON.stringify(l)===n});return-1===e?i.push(l)-1:e}function c(l,n,e){var u={predicate:l,params:n,body:e},r=JSON.stringify(u),o=t.findIndex(a,function(l){return JSON.stringify(l)===r});return-1===o?a.push(u)-1:o}var f=function(){var l;return(l=[]).concat.apply(l,arguments)};function p(l,n,e,t){return l>0?e:l<0?t:n.concat([e.length,t.length],e,t)}function h(l,n,e,r){var o=t.values(e,function(l){return r-l});return[u.CALL,l,n,o.length].concat(o)}function d(l,n,r){var o=0|l.match;return f([u.PUSH_CURR_POS],[u.EXPECT_NS_BEGIN],e(l,{sp:r.sp+1,env:t.clone(r.env),action:null,reportFailures:r.reportFailures}),[u.EXPECT_NS_END,n?1:0],p(n?-o:o,[n?u.IF_ERROR:u.IF_NOT_ERROR],f([u.POP],[n?u.POP:u.POP_CURR_POS],[u.PUSH_UNDEFINED]),f([u.POP],[n?u.POP_CURR_POS:u.POP],[u.PUSH_FAILED])))}function g(l,n,e){var t=c(!0,Object.keys(e.env),l.code);return f([u.UPDATE_SAVED_POS],h(t,0,e.env,e.sp),p(0|l.match,[u.IF],f([u.POP],n?[u.PUSH_FAILED]:[u.PUSH_UNDEFINED]),f([u.POP],n?[u.PUSH_UNDEFINED]:[u.PUSH_FAILED])))}function m(l){return n=[u.WHILE_NOT_ERROR],e=f([u.APPEND],l),n.concat([e.length],e);var n,e}(e=n.buildVisitor({grammar:function(l){l.rules.forEach(e),l.literals=r,l.classes=o,l.expectations=i,l.functions=a},rule:function(l){l.bytecode=e(l.expression,{sp:-1,env:{},action:null,reportFailures:l.reportFailures})},named:function(l,n){var t=n.reportFailures?s({type:"rule",value:l.name}):null,r=e(l.expression,{sp:n.sp,env:n.env,action:n.action,reportFailures:!1});return n.reportFailures?f([u.EXPECT,t],[u.SILENT_FAILS_ON],r,[u.SILENT_FAILS_OFF]):r},choice:function(l,n){return function l(n,r){return f(e(n[0],{sp:r.sp,env:t.clone(r.env),action:null,reportFailures:r.reportFailures}),n.length<2?[]:p(-(0|n[0].match),[u.IF_ERROR],f([u.POP],l(n.slice(1),r)),[]))}(l.alternatives,n)},action:function(l,n){var r=t.clone(n.env),o="sequence"!==l.expression.type||0===l.expression.elements.length,i=e(l.expression,{sp:n.sp+(o?1:0),env:r,action:l,reportFailures:n.reportFailures}),a=0|l.expression.match,s=o&&a>=0?c(!1,Object.keys(r),l.code):null;return!1===o?i:f([u.PUSH_CURR_POS],i,p(a,[u.IF_NOT_ERROR],f([u.LOAD_SAVED_POS,1],h(s,1,r,n.sp+2)),[]),[u.NIP])},sequence:function(l,n){var t=l.elements.length;return f([u.PUSH_CURR_POS],function l(n,r){if(n.length>0){var o=t-n.slice(1).length;return f(e(n[0],{sp:r.sp,env:r.env,pluck:r.pluck,action:null,reportFailures:r.reportFailures}),p(0|n[0].match,[u.IF_NOT_ERROR],l(n.slice(1),{sp:r.sp+1,env:r.env,pluck:r.pluck,action:r.action,reportFailures:r.reportFailures}),f(o>1?[u.POP_N,o]:[u.POP],[u.POP_CURR_POS],[u.PUSH_FAILED])))}return r.pluck.length>0?f([u.PLUCK,t+1,r.pluck.length],r.pluck.map(function(l){return r.sp-l})):r.action?f([u.LOAD_SAVED_POS,t],h(c(!1,Object.keys(r.env),r.action.code),t+1,r.env,r.sp)):f([u.WRAP,t],[u.NIP])}(l.elements,{sp:n.sp+1,env:n.env,pluck:[],action:n.action,reportFailures:n.reportFailures}))},labeled:function(l,n){var u=n.env,r=l.label,o=n.sp+1;return null!==r&&(u=t.clone(n.env),n.env[r]=o),n.pluck&&l.pick&&n.pluck.push(o),e(l.expression,{sp:n.sp,env:u,action:null,reportFailures:n.reportFailures})},text:function(l,n){return f([u.PUSH_CURR_POS],e(l.expression,{sp:n.sp+1,env:t.clone(n.env),action:null,reportFailures:n.reportFailures}),p(0|l.expression.match,[u.IF_NOT_ERROR],f([u.POP],[u.TEXT]),[u.NIP]))},simple_and:function(l,n){return d(l.expression,!1,n)},simple_not:function(l,n){return d(l.expression,!0,n)},optional:function(l,n){return f(e(l.expression,{sp:n.sp,env:t.clone(n.env),action:null,reportFailures:n.reportFailures}),p(-(0|l.expression.match),[u.IF_ERROR],f([u.POP],[u.PUSH_NULL]),[]))},zero_or_more:function(l,n){var r=e(l.expression,{sp:n.sp+1,env:t.clone(n.env),action:null,reportFailures:n.reportFailures});return f([u.PUSH_EMPTY_ARRAY],r,m(r),[u.POP])},one_or_more:function(l,n){var r=e(l.expression,{sp:n.sp+1,env:t.clone(n.env),action:null,reportFailures:n.reportFailures});return f([u.PUSH_EMPTY_ARRAY],r,p(0|l.expression.match,[u.IF_NOT_ERROR],f(m(r),[u.POP]),f([u.POP],[u.POP],[u.PUSH_FAILED])))},group:function(l,n){return e(l.expression,{sp:n.sp,env:t.clone(n.env),action:null,reportFailures:n.reportFailures})},semantic_and:function(l,n){return g(l,!1,n)},semantic_not:function(l,n){return g(l,!0,n)},rule_ref:function(n){return[u.RULE,l.indexOfRule(n.name)]},literal:function(l,n){if(l.value.length>0){var e=0|l.match,t=0===e||e>0&&!l.ignoreCase?(i=l.ignoreCase?l.value.toLowerCase():l.value,-1===(a=r.indexOf(i))?r.push(i)-1:a):null,o=n.reportFailures?s({type:"literal",value:l.value,ignoreCase:l.ignoreCase}):null;return f(n.reportFailures?[u.EXPECT,o]:[],p(e,l.ignoreCase?[u.MATCH_STRING_IC,t]:[u.MATCH_STRING,t],l.ignoreCase?[u.ACCEPT_N,l.value.length]:[u.ACCEPT_STRING,t],[u.PUSH_FAILED]))}var i,a;return[u.PUSH_EMPTY_STRING]},class:function(l,n){var e=0|l.match,r=0===e?function(l){var n={value:l.parts,inverted:l.inverted,ignoreCase:l.ignoreCase},e=JSON.stringify(n),u=t.findIndex(o,function(l){return JSON.stringify(l)===e});return-1===u?o.push(n)-1:u}(l):null,i=n.reportFailures?s({type:"class",value:l.parts,inverted:l.inverted,ignoreCase:l.ignoreCase}):null;return f(n.reportFailures?[u.EXPECT,i]:[],p(e,[u.MATCH_CLASS,r],[u.ACCEPT_N,1],[u.PUSH_FAILED]))},any:function(l,n){var e=n.reportFailures?s({type:"any"}):null;return f(n.reportFailures?[u.EXPECT,e]:[],p(0|l.match,[u.MATCH_ANY],[u.ACCEPT_N,1],[u.PUSH_FAILED]))}}))(l)}},function(l,n,e){"use strict";var t=e(1),u=e(13).version;l.exports=function(l,n,e){var r=n.opcodes,o=e.features||{};function i(l,n){return l in o?!!o[l]:null==n||!!n}var a=/^([^`\r\n]+?(?:`[^`]*?`[^\r\n]*?)?)$/gm;function s(l){return l.replace(a," $1")}function c(l){return l.replace(a," $1")}var f=function(l){return"peg$c"+l},p=function(l){return"peg$r"+l},h=function(l){return"peg$e"+l},d=function(l){return"peg$f"+l};function g(n,t){var u=[];return u.push(["","var rule$expects = function (expected) {"," if (peg$silentFails === 0) peg$expect(expected);","}",""].join("\n")),e.trace&&u.push(["peg$tracer.trace({",' type: "rule.enter",'," rule: "+n+","," location: peg$computeLocation(startPos, startPos)","});",""].join("\n")),e.cache&&(u.push(["var key = peg$currPos * "+l.rules.length+" + "+t+";","var cached = peg$resultsCache[key];","var rule$expectations = [];","","rule$expects = function (expected) {"," if (peg$silentFails === 0) peg$expect(expected);"," rule$expectations.push(expected);","}","","if (cached) {"," peg$currPos = cached.nextPos;",""," rule$expectations = cached.expectations;"," if (peg$silentFails === 0) {"," rule$expectations.forEach(peg$expect);"," }",""].join("\n")),e.trace&&u.push(["if (cached.result !== peg$FAILED) {"," peg$tracer.trace({",' type: "rule.match",'," rule: "+n+","," result: cached.result,"," location: peg$computeLocation(startPos, peg$currPos)"," });","} else {"," peg$tracer.trace({",' type: "rule.fail",'," rule: "+n+","," location: peg$computeLocation(startPos, startPos)"," });","}",""].join("\n")),u.push([" return cached.result;","}",""].join("\n"))),u.join("\n")}function m(l,n){var t=[];return e.cache&&t.push(["","peg$resultsCache[key] = {"," nextPos: peg$currPos,"," result: "+n+","," expectations: rule$expectations","};"].join("\n")),e.trace&&t.push(["","if ("+n+" !== peg$FAILED) {"," peg$tracer.trace({",' type: "rule.match",'," rule: "+l+","," result: "+n+","," location: peg$computeLocation(startPos, peg$currPos)"," });","} else {"," peg$tracer.trace({",' type: "rule.fail",'," rule: "+l+","," location: peg$computeLocation(startPos, startPos)"," });","}"].join("\n")),t.push(["","return "+n+";"].join("\n")),t.join("\n")}l.code=function(l){function n(){var l="// Generated by PEG.js v".concat(u,", https://pegjs.org/"),n=e.header;return"string"==typeof n?l+="\n\n"+n:Array.isArray(n)&&(l+="\n\n",n.forEach(function(n){l+="// "+n})),l}function r(){return e.trace&&i("DefaultTracer")?["{"," SyntaxError: peg$SyntaxError,"," DefaultTracer: peg$DefaultTracer,"," parse: peg$parse","}"].join("\n"):["{"," SyntaxError: peg$SyntaxError,"," parse: peg$parse","}"].join("\n")}return{bare:function(){return[n(),"(function() {",' "use strict";',"",s(l),"",s("return "+r()+";"),"})()"].join("\n")},commonjs:function(){var u=[],o=Object.keys(e.dependencies);return u.push([n(),"",'"use strict";',""].join("\n")),o.length>0&&(o.forEach(function(l){u.push("var "+l+' = require("'+t.stringEscape(e.dependencies[l])+'");')}),u.push("")),u.push([l,"","module.exports = "+r()+";",""].join("\n")),u.join("\n")},es:function(){var u=[],o=Object.keys(e.dependencies);return u.push(n(),""),o.length>0&&(o.forEach(function(l){u.push("import "+l+' from "'+t.stringEscape(e.dependencies[l])+'";')}),u.push("")),u.push(l,"","export "+(e.trace&&i("DefaultTracer")?["{"," peg$SyntaxError as SyntaxError,"," peg$DefaultTracer as DefaultTracer,"," peg$parse as parse","}"].join("\n"):["{"," peg$SyntaxError as SyntaxError,"," peg$parse as parse","}"].join("\n"))+";","","export default "+r()+";",""),u.join("\n")},amd:function(){var u=Object.keys(e.dependencies),o="["+u.map(function(l){return e.dependencies[l]}).map(function(l){return'"'.concat(t.stringEscape(l),'"')}).join(", ")+"]",i=u.join(", ");return[n(),"define("+o+", function("+i+") {",' "use strict";',"",s(l),"",s("return "+r()+";"),"});",""].join("\n")},globals:function(){return[n(),"(function(root) {",' "use strict";',"",s(l),"",s("root."+e.exportVar+" = "+r()+";"),"})(this);",""].join("\n")},umd:function(){var u=[],o=Object.keys(e.dependencies),i=o.map(function(l){return e.dependencies[l]}),a="["+i.map(function(l){return'"'.concat(t.stringEscape(l),'"')}).join(", ")+"]",c=i.map(function(l){return'require("'.concat(t.stringEscape(l),'")')}).join(", "),f=o.map(function(l){return"root."+l}).join(", "),p=o.join(", ");return u.push([n(),"(function(root, factory) {",' if (typeof define === "function" && define.amd) {'," define("+a+", factory);",' } else if (typeof module === "object" && module.exports) {'," module.exports = factory("+c+");"].join("\n")),null!==e.exportVar&&u.push([" } else {"," root."+e.exportVar+" = factory("+f+");"].join("\n")),u.push([" }","})(this, function("+p+") {",' "use strict";',"",s(l),"",s("return "+r()+";"),"});",""].join("\n")),u.join("\n")}}[e.format]()}(function(){var u=[];if(u.push(["function peg$subclass(child, parent) {"," function C() { this.constructor = child; }"," C.prototype = parent.prototype;"," child.prototype = new C();","}","","function peg$SyntaxError(message, expected, found, location) {"," this.message = message;"," this.expected = expected;"," this.found = found;"," this.location = location;",' this.name = "SyntaxError";',""," // istanbul ignore next",' if (typeof Error.captureStackTrace === "function") {'," Error.captureStackTrace(this, peg$SyntaxError);"," }","}","","peg$subclass(peg$SyntaxError, Error);","","peg$SyntaxError.buildMessage = function(expected, found) {"," var DESCRIBE_EXPECTATION_FNS = {"," literal: function(expectation) {",' return "\\"" + literalEscape(expectation.text) + "\\"";'," },",""," class: function(expectation) {"," var escapedParts = expectation.parts.map(function(part) {"," return Array.isArray(part)",' ? classEscape(part[0]) + "-" + classEscape(part[1])'," : classEscape(part);"," });","",' return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]";'," },",""," any: function() {",' return "any character";'," },",""," end: function() {",' return "end of input";'," },",""," other: function(expectation) {"," return expectation.description;"," },",""," not: function(expectation) {",' return "not " + describeExpectation(expectation.expected);'," }"," };",""," function hex(ch) {"," return ch.charCodeAt(0).toString(16).toUpperCase();"," }",""," function literalEscape(s) {"," return s",' .replace(/\\\\/g, "\\\\\\\\")',' .replace(/"/g, "\\\\\\"")',' .replace(/\\0/g, "\\\\0")',' .replace(/\\t/g, "\\\\t")',' .replace(/\\n/g, "\\\\n")',' .replace(/\\r/g, "\\\\r")',' .replace(/[\\x00-\\x0F]/g, function(ch) { return "\\\\x0" + hex(ch); })',' .replace(/[\\x10-\\x1F\\x7F-\\x9F]/g, function(ch) { return "\\\\x" + hex(ch); });'," }",""," function classEscape(s) {"," return s",' .replace(/\\\\/g, "\\\\\\\\")',' .replace(/\\]/g, "\\\\]")',' .replace(/\\^/g, "\\\\^")',' .replace(/-/g, "\\\\-")',' .replace(/\\0/g, "\\\\0")',' .replace(/\\t/g, "\\\\t")',' .replace(/\\n/g, "\\\\n")',' .replace(/\\r/g, "\\\\r")',' .replace(/[\\x00-\\x0F]/g, function(ch) { return "\\\\x0" + hex(ch); })',' .replace(/[\\x10-\\x1F\\x7F-\\x9F]/g, function(ch) { return "\\\\x" + hex(ch); });'," }",""," function describeExpectation(expectation) {"," return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);"," }",""," function describeExpected(expected) {"," var descriptions = expected.map(describeExpectation);"," var i, j;",""," descriptions.sort();",""," if (descriptions.length > 0) {"," for (i = 1, j = 1; i < descriptions.length; i++) {"," if (descriptions[i - 1] !== descriptions[i]) {"," descriptions[j] = descriptions[i];"," j++;"," }"," }"," descriptions.length = j;"," }",""," switch (descriptions.length) {"," case 1:"," return descriptions[0];",""," case 2:",' return descriptions[0] + " or " + descriptions[1];',""," default:",' return descriptions.slice(0, -1).join(", ")',' + ", or "'," + descriptions[descriptions.length - 1];"," }"," }",""," function describeFound(found) {",' return found ? "\\"" + literalEscape(found) + "\\"" : "end of input";'," }","",' return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found.";',"};",""].join("\n")),e.trace&&(i("DefaultTracer")?u.push(["function peg$DefaultTracer() {"," this.indentLevel = 0;","}","","peg$DefaultTracer.prototype.trace = function(event) {"," var that = this;",""," function log(event) {"," function repeat(string, n) {",' var result = "", i;',""," for (i = 0; i < n; i++) {"," result += string;"," }",""," return result;"," }",""," function pad(string, length) {",' return string + repeat(" ", length - string.length);'," }","",' if (typeof console === "object") {'," console.log(",' event.location.start.line + ":" + event.location.start.column + "-"',' + event.location.end.line + ":" + event.location.end.column + " "',' + pad(event.type, 10) + " "',' + repeat(" ", that.indentLevel) + event.rule'," );"," }"," }",""," switch (event.type) {",' case "rule.enter":'," log(event);"," this.indentLevel++;"," break;","",' case "rule.match":'," this.indentLevel--;"," log(event);"," break;","",' case "rule.fail":'," this.indentLevel--;"," log(event);"," break;",""," // istanbul ignore next"," default:",' throw new Error("Invalid event type: " + event.type + ".");'," }","};",""].join("\n")):u.push(["var peg$FauxTracer = {"," trace: function(event) { }","};",""].join("\n"))),u.push(["function peg$parse(input, options) {"," options = options !== undefined ? options : {};",""," var peg$FAILED = {};",""].join("\n")),"size"===e.optimize){var o="{ "+e.allowedStartRules.map(function(n){return n+": "+l.indexOfRule(n)}).join(", ")+" }",a=l.indexOfRule(e.allowedStartRules[0]);u.push([" var peg$startRuleIndices = "+o+";"," var peg$startRuleIndex = "+a+";"].join("\n"))}else{var y="{ "+e.allowedStartRules.map(function(l){return l+": peg$parse"+l}).join(", ")+" }",b="peg$parse"+e.allowedStartRules[0];u.push([" var peg$startRuleFunctions = "+y+";"," var peg$startRuleFunction = "+b+";"].join("\n"))}if(u.push(""),u.push(s(function(){function u(l){return'"'.concat(t.stringEscape(l),'"')}function r(l){return"/^["+(l.inverted?"^":"")+l.value.map(function(l){return Array.isArray(l)?t.regexpEscape(l[0])+"-"+t.regexpEscape(l[1]):t.regexpEscape(l)}).join("")+"]/"+(l.ignoreCase?"i":"")}function o(l){switch(l.type){case"rule":return'peg$otherExpectation("'.concat(t.stringEscape(l.value),'")');case"literal":return'peg$literalExpectation("'+t.stringEscape(l.value)+'", '+l.ignoreCase+")";case"class":return"peg$classExpectation(["+l.value.map(function(l){return Array.isArray(l)?'["'.concat(t.stringEscape(l[0]),'", "').concat(t.stringEscape(l[1]),'"]'):'"'.concat(t.stringEscape(l),'"')}).join(", ")+"], "+l.inverted+", "+l.ignoreCase+")";case"any":return"peg$anyExpectation()";default:n.fatal("Unknown expectation type (".concat(JSON.stringify(l),")"))}}function i(l){return"function(".concat(l.params.join(", "),") {").concat(l.body,"}")}return"size"===e.optimize?["var peg$literals = [",s(l.literals.map(u).join(",\n")),"];","var peg$regexps = [",s(l.classes.map(r).join(",\n")),"];","var peg$expectations = [",s(l.expectations.map(o).join(",\n")),"];","var peg$functions = [",s(l.functions.map(i).join(",\n")),"];","","var peg$bytecode = [",s(l.rules.map(function(l){return'peg$decode("'.concat(t.stringEscape(l.bytecode.map(function(l){return String.fromCharCode(l+32)}).join("")),'")')}).join(",\n")),"];"].join("\n"):l.literals.map(function(l,n){return"var "+f(n)+" = "+u(l)+";"}).concat("",l.classes.map(function(l,n){return"var "+p(n)+" = "+r(l)+";"})).concat("",l.expectations.map(function(l,n){return"var "+h(n)+" = "+o(l)+";"})).concat("",l.functions.map(function(l,n){return"var "+d(n)+" = "+i(l)+";"})).join("\n")}())),u.push([""," var peg$currPos = 0;"," var peg$savedPos = 0;"," var peg$posDetailsCache = [{ line: 1, column: 1 }];"," var peg$expected = [];"," var peg$silentFails = 0;",""].join("\n")),e.cache&&u.push([" var peg$resultsCache = {};",""].join("\n")),e.trace){if("size"===e.optimize){var v="["+l.rules.map(function(l){return'"'.concat(t.stringEscape(l.name),'"')}).join(", ")+"]";u.push([" var peg$ruleNames = "+v+";",""].join("\n"))}i("DefaultTracer")?u.push([' var peg$tracer = "tracer" in options ? options.tracer : new peg$DefaultTracer();',""].join("\n")):u.push([' var peg$tracer = "tracer" in options ? options.tracer : peg$FauxTracer;',""].join("\n"))}return u.push([" var peg$result;",""].join("\n")),"size"===e.optimize?u.push([' if ("startRule" in options) {'," if (!(options.startRule in peg$startRuleIndices)) {",' throw new Error("Can\'t start parsing from rule \\"" + options.startRule + "\\".");'," }",""," peg$startRuleIndex = peg$startRuleIndices[options.startRule];"," }"].join("\n")):u.push([' if ("startRule" in options) {'," if (!(options.startRule in peg$startRuleFunctions)) {",' throw new Error("Can\'t start parsing from rule \\"" + options.startRule + "\\".");'," }",""," peg$startRuleFunction = peg$startRuleFunctions[options.startRule];"," }"].join("\n")),i("text")&&u.push([""," function text() {"," return input.substring(peg$savedPos, peg$currPos);"," }"].join("\n")),i("offset")&&u.push([""," function offset() {"," return peg$savedPos;"," }"].join("\n")),i("range")&&u.push([""," function range() {"," return [peg$savedPos, peg$currPos];"," }"].join("\n")),i("location")&&u.push([""," function location() {"," return peg$computeLocation(peg$savedPos, peg$currPos);"," }"].join("\n")),i("expected")&&u.push([""," function expected(description, location) {"," location = location !== undefined"," ? location"," : peg$computeLocation(peg$savedPos, peg$currPos);",""," throw peg$buildStructuredError("," [peg$otherExpectation(description)],"," input.substring(peg$savedPos, peg$currPos),"," location"," );"," }"].join("\n")),i("error")&&u.push([""," function error(message, location) {"," location = location !== undefined"," ? location"," : peg$computeLocation(peg$savedPos, peg$currPos);",""," throw peg$buildSimpleError(message, location);"," }"].join("\n")),u.push([""," function peg$literalExpectation(text, ignoreCase) {",' return { type: "literal", text: text, ignoreCase: ignoreCase };'," }",""," function peg$classExpectation(parts, inverted, ignoreCase) {",' return { type: "class", parts: parts, inverted: inverted, ignoreCase: ignoreCase };'," }",""," function peg$anyExpectation() {",' return { type: "any" };'," }",""," function peg$endExpectation() {",' return { type: "end" };'," }",""," function peg$otherExpectation(description) {",' return { type: "other", description: description };'," }",""," function peg$computePosDetails(pos) {"," var details = peg$posDetailsCache[pos];"," var p;",""," if (details) {"," return details;"," } else {"," p = pos - 1;"," while (!peg$posDetailsCache[p]) {"," p--;"," }",""," details = peg$posDetailsCache[p];"," details = {"," line: details.line,"," column: details.column"," };",""," while (p < pos) {"," if (input.charCodeAt(p) === 10) {"," details.line++;"," details.column = 1;"," } else {"," details.column++;"," }",""," p++;"," }",""," peg$posDetailsCache[pos] = details;",""," return details;"," }"," }","",i("filename")?' var peg$VALIDFILENAME = typeof options.filename === "string" && options.filename.length > 0;':""," function peg$computeLocation(startPos, endPos) {"," var loc = {};","",i("filename")?" if ( peg$VALIDFILENAME ) loc.filename = options.filename;":"",""," var startPosDetails = peg$computePosDetails(startPos);"," loc.start = {"," offset: startPos,"," line: startPosDetails.line,"," column: startPosDetails.column"," };",""," var endPosDetails = peg$computePosDetails(endPos);"," loc.end = {"," offset: endPos,"," line: endPosDetails.line,"," column: endPosDetails.column"," };",""," return loc;"," }",""," function peg$begin() {"," peg$expected.push({ pos: peg$currPos, variants: [] });"," }",""," function peg$expect(expected) {"," var top = peg$expected[peg$expected.length - 1];",""," if (peg$currPos < top.pos) { return; }",""," if (peg$currPos > top.pos) {"," top.pos = peg$currPos;"," top.variants = [];"," }",""," top.variants.push(expected);"," }",""," function peg$end(invert) {"," var expected = peg$expected.pop();"," var top = peg$expected[peg$expected.length - 1];"," var variants = expected.variants;",""," if (top.pos !== expected.pos) { return; }",""," if (invert) {"," variants = variants.map(function(e) {",' return e.type === "not" ? e.expected : { type: "not", expected: e };'," });"," }",""," Array.prototype.push.apply(top.variants, variants);"," }",""," function peg$buildSimpleError(message, location) {"," return new peg$SyntaxError(message, null, null, location);"," }",""," function peg$buildStructuredError(expected, found, location) {"," return new peg$SyntaxError("," peg$SyntaxError.buildMessage(expected, found),"," expected,"," found,"," location"," );"," }",""," function peg$buildError() {"," var expected = peg$expected[0];"," var failPos = expected.pos;",""," return peg$buildStructuredError("," expected.variants,"," failPos < input.length ? input.charAt(failPos) : null,"," failPos < input.length"," ? peg$computeLocation(failPos, failPos + 1)"," : peg$computeLocation(failPos, failPos)"," );"," }",""].join("\n")),"size"===e.optimize?(u.push(s(function(){var l,n=[];function t(l,n){var e=n+3,t="bc[ip + "+(e-2)+"]",u="bc[ip + "+(e-1)+"]";return["ends.push(end);","ips.push(ip + "+e+" + "+t+" + "+u+");","","if ("+l+") {"," end = ip + "+e+" + "+t+";"," ip += "+e+";","} else {"," end = ip + "+e+" + "+t+" + "+u+";"," ip += "+e+" + "+t+";","}","","break;"].join("\n")}return n.push(["function peg$decode(s) {",' return s.split("").map(function(ch) { return ch.charCodeAt(0) - 32; });',"}","","function peg$parseRule(index) {"].join("\n")),e.trace?n.push([" var bc = peg$bytecode[index];"," var ip = 0;"," var ips = [];"," var end = bc.length;"," var ends = [];"," var stack = [];"," var startPos = peg$currPos;"," var params, paramsLength, paramsN;"].join("\n")):n.push([" var bc = peg$bytecode[index];"," var ip = 0;"," var ips = [];"," var end = bc.length;"," var ends = [];"," var stack = [];"," var params, paramsLength, paramsN;"].join("\n")),n.push(s(g("peg$ruleNames[index]","index"))),n.push([" while (true) {"," while (ip < end) {"," switch (bc[ip]) {"," case "+r.PUSH_EMPTY_STRING+":"," stack.push('');"," ip++;"," break;",""," case "+r.PUSH_UNDEFINED+":"," stack.push(undefined);"," ip++;"," break;",""," case "+r.PUSH_NULL+":"," stack.push(null);"," ip++;"," break;",""," case "+r.PUSH_FAILED+":"," stack.push(peg$FAILED);"," ip++;"," break;",""," case "+r.PUSH_EMPTY_ARRAY+":"," stack.push([]);"," ip++;"," break;",""," case "+r.PUSH_CURR_POS+":"," stack.push(peg$currPos);"," ip++;"," break;",""," case "+r.POP+":"," stack.pop();"," ip++;"," break;",""," case "+r.POP_CURR_POS+":"," peg$currPos = stack.pop();"," ip++;"," break;",""," case "+r.POP_N+":"," stack.length -= bc[ip + 1];"," ip += 2;"," break;",""," case "+r.NIP+":"," stack.splice(-2, 1);"," ip++;"," break;",""," case "+r.APPEND+":"," stack[stack.length - 2].push(stack.pop());"," ip++;"," break;",""," case "+r.WRAP+":"," stack.push(stack.splice(stack.length - bc[ip + 1], bc[ip + 1]));"," ip += 2;"," break;",""," case "+r.TEXT+":"," stack.push(input.substring(stack.pop(), peg$currPos));"," ip++;"," break;",""," case "+r.PLUCK+":"," paramsLength = bc[ip + 2];"," paramsN = 3 + paramsLength",""," params = bc.slice(ip + 3, ip + paramsN);"," params = paramsLength === 1"," ? stack[stack.length - 1 - params[ 0 ]]"," : params.map(function(p) { return stack[stack.length - 1 - p]; });",""," stack.splice("," stack.length - bc[ip + 1],"," bc[ip + 1],"," params"," );",""," ip += paramsN;"," break;",""," case "+r.IF+":",c(t("stack[stack.length - 1]",0)),""," case "+r.IF_ERROR+":",c(t("stack[stack.length - 1] === peg$FAILED",0)),""," case "+r.IF_NOT_ERROR+":",c(t("stack[stack.length - 1] !== peg$FAILED",0)),""," case "+r.WHILE_NOT_ERROR+":",c((l="stack[stack.length - 1] !== peg$FAILED",["if ("+l+") {"," ends.push(end);"," ips.push(ip);",""," end = ip + 2 + bc[ip + 1];"," ip += 2;","} else {"," ip += 2 + bc[ip + 1];","}","","break;"].join("\n"))),""," case "+r.MATCH_ANY+":",c(t("input.length > peg$currPos",0)),""," case "+r.MATCH_STRING+":",c(t("input.substr(peg$currPos, peg$literals[bc[ip + 1]].length) === peg$literals[bc[ip + 1]]",1)),""," case "+r.MATCH_STRING_IC+":",c(t("input.substr(peg$currPos, peg$literals[bc[ip + 1]].length).toLowerCase() === peg$literals[bc[ip + 1]]",1)),""," case "+r.MATCH_CLASS+":",c(t("peg$regexps[bc[ip + 1]].test(input.charAt(peg$currPos))",1)),""," case "+r.ACCEPT_N+":"," stack.push(input.substr(peg$currPos, bc[ip + 1]));"," peg$currPos += bc[ip + 1];"," ip += 2;"," break;",""," case "+r.ACCEPT_STRING+":"," stack.push(peg$literals[bc[ip + 1]]);"," peg$currPos += peg$literals[bc[ip + 1]].length;"," ip += 2;"," break;",""," case "+r.EXPECT+":"," rule$expects(peg$expectations[bc[ip + 1]]);"," ip += 2;"," break;",""," case "+r.LOAD_SAVED_POS+":"," peg$savedPos = stack[stack.length - 1 - bc[ip + 1]];"," ip += 2;"," break;",""," case "+r.UPDATE_SAVED_POS+":"," peg$savedPos = peg$currPos;"," ip++;"," break;",""," case "+r.CALL+":",c(["params = bc.slice(ip + 4, ip + 4 + bc[ip + 3])"," .map(function(p) { return stack[stack.length - 1 - p]; });","","stack.splice("," stack.length - bc[ip + 2],"," bc[ip + 2],"," peg$functions[bc[ip + 1]].apply(null, params)",");","","ip += 4 + bc[ip + 3];","break;"].join("\n")),""," case "+r.RULE+":"," stack.push(peg$parseRule(bc[ip + 1]));"," ip += 2;"," break;",""," case "+r.SILENT_FAILS_ON+":"," peg$silentFails++;"," ip++;"," break;",""," case "+r.SILENT_FAILS_OFF+":"," peg$silentFails--;"," ip++;"," break;",""," case "+r.EXPECT_NS_BEGIN+":"," peg$begin();"," ip++;"," break;",""," case "+r.EXPECT_NS_END+":"," peg$end(bc[ip + 1]);"," ip += 2;"," break;",""," // istanbul ignore next"," default:"," throw new Error(",' "Rule #" + index + "'+(e.trace?" ('\" + peg$ruleNames[ index ] + \"')":"")+', position " + ip + ": "',' + "Invalid opcode " + bc[ip] + "."'," );"," }"," }",""," if (ends.length > 0) {"," end = ends.pop();"," ip = ips.pop();"," } else {"," break;"," }"," }"].join("\n")),n.push(s(m("peg$ruleNames[index]","stack[0]"))),n.push("}"),n.join("\n")}())),u.push("")):l.rules.forEach(function(o){u.push(s(function(u){var o=[],i=[];function a(l){return l<0&&n.fatal("Rule '"+u.name+"': Var stack underflow: attempt to use var at index "+l),"s"+l}var c={sp:-1,maxSp:-1,push:function(l){var n=a(++this.sp)+" = "+l+";";return this.sp>this.maxSp&&(this.maxSp=this.sp),n},pop:function(l){if(void 0===l)return a(this.sp--);for(var n=Array(l),e=0;e0&&(c.sp=m,i=e(t.slice(v,v+g)),f=c.sp,v+=g,a!==f&&n.fatal("Rule '"+u.name+"', position "+p+": Branches of a condition can't move the stack pointer differently (before: "+m+", after then: "+a+", after else: "+f+").")),A.push("if ("+l+") {"),A.push(s(o)),g>0&&(A.push("} else {"),A.push(s(i))),A.push("}")}function x(){var l=t[v+4-1],n=d(t[v+1])+"("+t.slice(v+4,v+4+l).map(function(l){return c.index(l)}).join(", ")+")";c.pop(t[v+2]),A.push(c.push(n)),v+=4+l}for(;v peg$currPos",0);break;case r.MATCH_STRING:E(l.literals[t[v+1]].length>1?"input.substr(peg$currPos, "+l.literals[t[v+1]].length+") === "+f(t[v+1]):"input.charCodeAt(peg$currPos) === "+l.literals[t[v+1]].charCodeAt(0),1);break;case r.MATCH_STRING_IC:E("input.substr(peg$currPos, "+l.literals[t[v+1]].length+").toLowerCase() === "+f(t[v+1]),1);break;case r.MATCH_CLASS:E(p(t[v+1])+".test(input.charAt(peg$currPos))",1);break;case r.ACCEPT_N:A.push(c.push(t[v+1]>1?"input.substr(peg$currPos, "+t[v+1]+")":"input.charAt(peg$currPos)")),A.push(t[v+1]>1?"peg$currPos += "+t[v+1]+";":"peg$currPos++;"),v+=2;break;case r.ACCEPT_STRING:A.push(c.push(f(t[v+1]))),A.push(l.literals[t[v+1]].length>1?"peg$currPos += "+l.literals[t[v+1]].length+";":"peg$currPos++;"),v+=2;break;case r.EXPECT:A.push("rule$expects("+h(t[v+1])+");"),v+=2;break;case r.LOAD_SAVED_POS:A.push("peg$savedPos = "+c.index(t[v+1])+";"),v+=2;break;case r.UPDATE_SAVED_POS:A.push("peg$savedPos = peg$currPos;"),v++;break;case r.CALL:x();break;case r.RULE:A.push(c.push("peg$parse"+l.rules[t[v+1]].name+"()")),v+=2;break;case r.SILENT_FAILS_ON:A.push("peg$silentFails++;"),v++;break;case r.SILENT_FAILS_OFF:A.push("peg$silentFails--;"),v++;break;case r.EXPECT_NS_BEGIN:A.push("peg$begin();"),v++;break;case r.EXPECT_NS_END:A.push("peg$end("+(0!==t[v+1])+");"),v+=2;break;default:n.fatal("Rule '"+u.name+"', position "+v+": Invalid opcode "+t[v]+".")}return A.join("\n")}(u.bytecode);o.push("function peg$parse"+u.name+"() {"),e.trace&&o.push(" var startPos = peg$currPos;");for(var b=0;b<=c.maxSp;b++)i[b]=a(b);return o.push(" var "+i.join(", ")+";"),o.push(s(g('"'+t.stringEscape(u.name)+'"',l.indexOfRule(u.name)))),o.push(s(y)),o.push(s(m('"'+t.stringEscape(u.name)+'"',a(0)))),o.push("}"),o.join("\n")}(o))),u.push("")}),l.initializer&&(u.push(s(l.initializer.code)),u.push("")),u.push(" peg$begin();"),"size"===e.optimize?u.push(" peg$result = peg$parseRule(peg$startRuleIndex);"):u.push(" peg$result = peg$startRuleFunction();"),u.push([""," if (peg$result !== peg$FAILED && peg$currPos === input.length) {"," return peg$result;"," } else {"," if (peg$result !== peg$FAILED && peg$currPos < input.length) {"," peg$expect(peg$endExpectation());"," }",""," throw peg$buildError();"," }","}"].join("\n")),u.join("\n")}())}},function(l,n,e){"use strict";l.exports=function(l,n,e){var t=n.buildVisitor({rule_ref:function(l,n,e){l.name===n&&(l.name=e)}}),u=e.allowedStartRules,r=[];l.rules.forEach(function(n){var e;"rule"===(e=n).type&&"rule_ref"===e.expression.type&&(t(l,n.name,n.expression.name),u.indexOf(n.name)<0)||r.push(n)}),l.rules=r}},function(l,n,e){"use strict";var t=e(1),u=Object.prototype.hasOwnProperty;l.exports=function(l,n){var e;function r(l,n){e(l.expression,t.clone(n))}(e=n.buildVisitor({rule:function(l){e(l.expression,{})},choice:function(l,n){l.alternatives.forEach(function(l){e(l,t.clone(n))})},action:r,labeled:function(l,t){var r=l.label;if(r&&u.call(t,r)){var o=t[r].start;n.error('Label "'.concat(r,'" is already defined at line ').concat(o.line,", column ").concat(o.column,"."),l.location)}e(l.expression,t),r&&(t[r]=l.location)},text:r,simple_and:r,simple_not:r,optional:r,zero_or_more:r,one_or_more:r,group:r}))(l)}},function(l,n,e){"use strict";var t=Object.prototype.hasOwnProperty;l.exports=function(l,n){var e={};n.buildVisitor({rule:function(l){var u=l.name;if(t.call(e,u)){var r=e[u].start;n.error('Rule "'.concat(u,'" is already defined at line ').concat(r.line,", column ").concat(r.column,"."),l.location)}e[l.name]=l.location}})(l)}},function(l,n,e){"use strict";l.exports=function(l,n,e){var t={};function u(l){t[l.name||l]=!0}e.allowedStartRules.forEach(u),n.buildVisitor({rule_ref:u})(l),l.rules.forEach(function(l){!0!==t[l.name]&&n.warn('Rule "'.concat(l.name,'" is not referenced.'),l.location)})}},function(l,n,e){"use strict";l.exports=function(l,n){var e=[],t=n.buildVisitor({rule:function(l){e.push(l.name),t(l.expression),e.pop(l.name)},sequence:function(n){n.elements.every(function(n){return t(n),!l.alwaysConsumesOnSuccess(n)})},rule_ref:function(u){if(-1!==e.indexOf(u.name)){e.push(u.name);var r=e.join(" -> ");n.error("Possible infinite loop when parsing (left recursion: ".concat(r,")."),u.location)}t(l.findRule(u.name))}});t(l)}},function(l,n,e){"use strict";l.exports=function(l,n){n.buildVisitor({zero_or_more:function(e){l.alwaysConsumesOnSuccess(e.expression)||n.error("Possible infinite loop when parsing (repetition used with an expression that may not consume any input).",e.location)},one_or_more:function(e){l.alwaysConsumesOnSuccess(e.expression)||n.error("Possible infinite loop when parsing (repetition used with an expression that may not consume any input).",e.location)}})(l)}},function(l,n,e){"use strict";l.exports=function(l,n,e){n.buildVisitor({rule_ref:function(e){l.findRule(e.name)||n.error('Rule "'.concat(e.name,'" is not defined.'),e.location)}})(l),e.allowedStartRules.forEach(function(e){l.findRule(e)||n.error('Start rule "'.concat(e,'" is not defined.'))})}},function(l,n,e){"use strict";l.exports=function(l,n){var e;function t(l){return l.match=0,l.match}function u(l){return e(l.expression),l.match=1,l.match}function r(l){return l.match=e(l.expression),l.match}function o(l,n){for(var t=l.length,u=0,r=0,o=0;o0&&++u,i<0&&++r}return u===t?1:n?r===t?-1:0:r>0?-1:0}(e=n.buildVisitor({rule:function(l){var t,u=0;if(void 0===l.match){l.match=0;do{t=l.match,l.match=e(l.expression),++u>6&&n.error("Infinity cycle detected when trying to evaluate node match result",l.location)}while(t!==l.match)}return l.match},named:r,choice:function(l){return l.match=o(l.alternatives,!0),l.match},action:r,sequence:function(l){return l.match=o(l.elements,!1),l.match},labeled:r,text:r,simple_and:r,simple_not:function(l){return l.match=-e(l.expression),l.match},optional:u,zero_or_more:u,one_or_more:r,group:r,semantic_and:t,semantic_not:t,rule_ref:function(n){var t=l.findRule(n.name);return n.match=e(t),n.match},literal:function(l){return l.match=0===l.value.length?1:0,l.match},class:function(l){return l.match=0===l.parts.length?-1:0,l.match},any:t}))(l)}},function(l,n,e){"use strict";l.exports=function(l,n){n.buildVisitor({action:function(l){this.visit(l.expression,!0)},labeled:function(l,e){var t;!0===l.pick&&(!0===e&&n.error('"@" cannot be used with an action block.',l.location),("semantic_and"===(t=l.expression.type)||"semantic_not"===t)&&n.error('"@" cannot be used on a semantic predicate.',l.location),this.visit(l.expression))}})(l)}},function(l,n,e){"use strict";function t(l,n){for(var e=0;e0&&void 0!==arguments[0]?arguments[0]:{};!function(l,n){if(!(l instanceof n))throw new TypeError("Cannot call a class as a function")}(this,l),this.opcodes=n.opcodes||o,this.parser=n.parser||i,this.passes=n.passes||{},this.visitor=n.visitor||u.visitor,this.vm=n.vm||a,"function"==typeof n.warn&&(this.warn=n.warn),"function"==typeof n.error&&(this.error=n.error),Object.defineProperty(this,"fatal",{value:s})}var n,e,r;return n=l,(e=[{key:"parse",value:function(l,n){return this.parser.parse(l,n)}},{key:"buildVisitor",value:function(l){return this.visitor.build(l)}},{key:"warn",value:function(l,n){}},{key:"error",value:function(l,n){s(l,n)}}])&&t(n.prototype,e),r&&t(n,r),l}();l.exports=c},function(l,n,e){"use strict";l.exports={PUSH_EMPTY_STRING:0,PUSH_UNDEFINED:1,PUSH_NULL:2,PUSH_FAILED:3,PUSH_EMPTY_ARRAY:4,PUSH_CURR_POS:5,POP:6,POP_CURR_POS:7,POP_N:8,NIP:9,APPEND:10,WRAP:11,TEXT:12,PLUCK:41,IF:13,IF_ERROR:14,IF_NOT_ERROR:15,WHILE_NOT_ERROR:16,MATCH_ANY:17,MATCH_STRING:18,MATCH_STRING_IC:19,MATCH_CLASS:20,ACCEPT_N:21,ACCEPT_STRING:22,EXPECT:23,LOAD_SAVED_POS:24,UPDATE_SAVED_POS:25,CALL:26,RULE:27,SILENT_FAILS_ON:28,SILENT_FAILS_OFF:29,EXPECT_NS_BEGIN:38,EXPECT_NS_END:39}},function(l,n,e){(function(l){var t=void 0!==l&&l||"undefined"!=typeof self&&self||window,u=Function.prototype.apply;function r(l,n){this._id=l,this._clearFn=n}n.setTimeout=function(){return new r(u.call(setTimeout,t,arguments),clearTimeout)},n.setInterval=function(){return new r(u.call(setInterval,t,arguments),clearInterval)},n.clearTimeout=n.clearInterval=function(l){l&&l.close()},r.prototype.unref=r.prototype.ref=function(){},r.prototype.close=function(){this._clearFn.call(t,this._id)},n.enroll=function(l,n){clearTimeout(l._idleTimeoutId),l._idleTimeout=n},n.unenroll=function(l){clearTimeout(l._idleTimeoutId),l._idleTimeout=-1},n._unrefActive=n.active=function(l){clearTimeout(l._idleTimeoutId);var n=l._idleTimeout;n>=0&&(l._idleTimeoutId=setTimeout(function(){l._onTimeout&&l._onTimeout()},n))},e(54),n.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==l&&l.setImmediate||this&&this.setImmediate,n.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==l&&l.clearImmediate||this&&this.clearImmediate}).call(this,e(15))},function(l,n,e){(function(n){var e;e=function(){"use strict";var l="function"==typeof Promise,e="object"==typeof self?self:n,t="undefined"!=typeof Symbol,u="undefined"!=typeof Map,r="undefined"!=typeof Set,o="undefined"!=typeof WeakMap,i="undefined"!=typeof WeakSet,a="undefined"!=typeof DataView,s=t&&void 0!==Symbol.iterator,c=t&&void 0!==Symbol.toStringTag,f=r&&"function"==typeof Set.prototype.entries,p=u&&"function"==typeof Map.prototype.entries,h=f&&Object.getPrototypeOf((new Set).entries()),d=p&&Object.getPrototypeOf((new Map).entries()),g=s&&"function"==typeof Array.prototype[Symbol.iterator],m=g&&Object.getPrototypeOf([][Symbol.iterator]()),y=s&&"function"==typeof String.prototype[Symbol.iterator],b=y&&Object.getPrototypeOf(""[Symbol.iterator]()),v=8,w=-1;return function(n){var t=typeof n;if("object"!==t)return t;if(null===n)return"null";if(n===e)return"global";if(Array.isArray(n)&&(!1===c||!(Symbol.toStringTag in n)))return"Array";if("object"==typeof window&&null!==window){if("object"==typeof window.location&&n===window.location)return"Location";if("object"==typeof window.document&&n===window.document)return"Document";if("object"==typeof window.navigator){if("object"==typeof window.navigator.mimeTypes&&n===window.navigator.mimeTypes)return"MimeTypeArray";if("object"==typeof window.navigator.plugins&&n===window.navigator.plugins)return"PluginArray"}if(("function"==typeof window.HTMLElement||"object"==typeof window.HTMLElement)&&n instanceof window.HTMLElement){if("BLOCKQUOTE"===n.tagName)return"HTMLQuoteElement";if("TD"===n.tagName)return"HTMLTableDataCellElement";if("TH"===n.tagName)return"HTMLTableHeaderCellElement"}}var s=c&&n[Symbol.toStringTag];if("string"==typeof s)return s;var f=Object.getPrototypeOf(n);return f===RegExp.prototype?"RegExp":f===Date.prototype?"Date":l&&f===Promise.prototype?"Promise":r&&f===Set.prototype?"Set":u&&f===Map.prototype?"Map":i&&f===WeakSet.prototype?"WeakSet":o&&f===WeakMap.prototype?"WeakMap":a&&f===DataView.prototype?"DataView":u&&f===d?"Map Iterator":r&&f===h?"Set Iterator":g&&f===m?"Array Iterator":y&&f===b?"String Iterator":null===f?"Object":Object.prototype.toString.call(n).slice(v,w)}},l.exports=e()}).call(this,e(15))},function(l,n,e){var t=e(46),u=e(47),r=e(62),o=e(8);l.exports=function(l,n,e,t){return a({showHidden:n,seen:[],stylize:function(l){return l}},l,void 0===e?2:e)};var i=function(l){return"object"==typeof HTMLElement?l instanceof HTMLElement:l&&"object"==typeof l&&"nodeType"in l&&1===l.nodeType&&"string"==typeof l.nodeName};function a(l,e,g){if(e&&"function"==typeof e.inspect&&e.inspect!==n.inspect&&(!e.constructor||e.constructor.prototype!==e)){var m=e.inspect(g,l);return"string"!=typeof m&&(m=a(l,m,g)),m}var y=function(l,n){switch(typeof n){case"undefined":return l.stylize("undefined","undefined");case"string":var e="'"+JSON.stringify(n).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return l.stylize(e,"string");case"number":return 0===n&&1/n==-1/0?l.stylize("-0","number"):l.stylize(""+n,"number");case"boolean":return l.stylize(""+n,"boolean");case"symbol":return l.stylize(n.toString(),"symbol")}if(null===n)return l.stylize("null","null")}(l,e);if(y)return y;if(i(e)){if("outerHTML"in e)return e.outerHTML;try{if(document.xmlVersion)return(new XMLSerializer).serializeToString(e);var b=document.createElementNS("http://www.w3.org/1999/xhtml","_");b.appendChild(e.cloneNode(!1));var v=b.innerHTML.replace("><",">"+e.innerHTML+"<");return b.innerHTML="",v}catch(l){}}var w,A,E=r(e),x=l.showHidden?u(e):E;if(0===x.length||h(e)&&(1===x.length&&"stack"===x[0]||2===x.length&&"description"===x[0]&&"stack"===x[1])){if("function"==typeof e)return A=(w=t(e))?": "+w:"",l.stylize("[Function"+A+"]","special");if(f(e))return l.stylize(RegExp.prototype.toString.call(e),"regexp");if(p(e))return l.stylize(Date.prototype.toUTCString.call(e),"date");if(h(e))return s(e)}var C,_,T="",S=!1,k=!1,F=["{","}"];if("object"==typeof(C=e)&&/\w+Array]$/.test(d(C))&&(k=!0,F=["[","]"]),function(l){return Array.isArray(l)||"object"==typeof l&&"[object Array]"===d(l)}(e)&&(S=!0,F=["[","]"]),"function"==typeof e&&(T=" [Function"+(A=(w=t(e))?": "+w:"")+"]"),f(e)&&(T=" "+RegExp.prototype.toString.call(e)),p(e)&&(T=" "+Date.prototype.toUTCString.call(e)),h(e))return s(e);if(0===x.length&&(!S||0==e.length))return F[0]+T+F[1];if(g<0)return f(e)?l.stylize(RegExp.prototype.toString.call(e),"regexp"):l.stylize("[Object]","special");if(l.seen.push(e),S)_=function(l,n,e,t,u){for(var r=[],o=0,i=n.length;o=o.truncateThreshold-7){n+="...";break}n+=l[e]+", "}-1!==(n+=" ]").indexOf(", ]")&&(n=n.replace(", ]"," ]"));return n}(e);_=x.map(function(n){return c(l,e,g,E,n,S)})}return l.seen.pop(),function(l,n,e){if(l.reduce(function(l,n){return l+n.length+1},0)>60)return e[0]+(""===n?"":n+"\n ")+" "+l.join(",\n ")+" "+e[1];return e[0]+n+" "+l.join(", ")+" "+e[1]}(_,T,F)}function s(l){return"["+Error.prototype.toString.call(l)+"]"}function c(l,n,e,t,u,r){var o,i,s=Object.getOwnPropertyDescriptor(n,u);if(s&&(s.get?i=s.set?l.stylize("[Getter/Setter]","special"):l.stylize("[Getter]","special"):s.set&&(i=l.stylize("[Setter]","special"))),t.indexOf(u)<0&&(o="["+u+"]"),i||(l.seen.indexOf(n[u])<0?(i=a(l,n[u],null===e?null:e-1)).indexOf("\n")>-1&&(i=r?i.split("\n").map(function(l){return" "+l}).join("\n").substr(2):"\n"+i.split("\n").map(function(l){return" "+l}).join("\n")):i=l.stylize("[Circular]","special")),void 0===o){if(r&&u.match(/^\d+$/))return i;(o=JSON.stringify(""+u)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=l.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=l.stylize(o,"string"))}return o+": "+i}function f(l){return"object"==typeof l&&"[object RegExp]"===d(l)}function p(l){return"object"==typeof l&&"[object Date]"===d(l)}function h(l){return"object"==typeof l&&"[object Error]"===d(l)}function d(l){return Object.prototype.toString.call(l)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.r(__webpack_exports__),function(global,setImmediate,clearImmediate){__webpack_require__.d(__webpack_exports__,"serverPrototype",function(){return _serverPrototype}),__webpack_require__.d(__webpack_exports__,"getFakes",function(){return _getFakes}),__webpack_require__.d(__webpack_exports__,"getRestorers",function(){return _getRestorers}),__webpack_require__.d(__webpack_exports__,"createStubInstance",function(){return _createStubInstance}),__webpack_require__.d(__webpack_exports__,"inject",function(){return _inject}),__webpack_require__.d(__webpack_exports__,"mock",function(){return _mock}),__webpack_require__.d(__webpack_exports__,"reset",function(){return _reset}),__webpack_require__.d(__webpack_exports__,"resetBehavior",function(){return _resetBehavior}),__webpack_require__.d(__webpack_exports__,"resetHistory",function(){return _resetHistory}),__webpack_require__.d(__webpack_exports__,"restore",function(){return _restore}),__webpack_require__.d(__webpack_exports__,"restoreContext",function(){return _restoreContext}),__webpack_require__.d(__webpack_exports__,"replace",function(){return _replace}),__webpack_require__.d(__webpack_exports__,"replaceGetter",function(){return _replaceGetter}),__webpack_require__.d(__webpack_exports__,"replaceSetter",function(){return _replaceSetter}),__webpack_require__.d(__webpack_exports__,"spy",function(){return _spy}),__webpack_require__.d(__webpack_exports__,"stub",function(){return _stub}),__webpack_require__.d(__webpack_exports__,"fake",function(){return _fake}),__webpack_require__.d(__webpack_exports__,"useFakeTimers",function(){return _useFakeTimers}),__webpack_require__.d(__webpack_exports__,"verify",function(){return _verify}),__webpack_require__.d(__webpack_exports__,"verifyAndRestore",function(){return _verifyAndRestore}),__webpack_require__.d(__webpack_exports__,"useFakeServer",function(){return _useFakeServer}),__webpack_require__.d(__webpack_exports__,"useFakeXMLHttpRequest",function(){return _useFakeXMLHttpRequest}),__webpack_require__.d(__webpack_exports__,"usingPromise",function(){return _usingPromise}),__webpack_require__.d(__webpack_exports__,"sandbox",function(){return _sandbox}),__webpack_require__.d(__webpack_exports__,"createSandbox",function(){return _createSandbox}),__webpack_require__.d(__webpack_exports__,"assert",function(){return _assert}),__webpack_require__.d(__webpack_exports__,"match",function(){return _match}),__webpack_require__.d(__webpack_exports__,"spyCall",function(){return _spyCall}),__webpack_require__.d(__webpack_exports__,"expectation",function(){return _expectation}),__webpack_require__.d(__webpack_exports__,"defaultConfig",function(){return _defaultConfig}),__webpack_require__.d(__webpack_exports__,"setFormatter",function(){return _setFormatter}),__webpack_require__.d(__webpack_exports__,"timers",function(){return _timers}),__webpack_require__.d(__webpack_exports__,"xhr",function(){return _xhr}),__webpack_require__.d(__webpack_exports__,"FakeXMLHttpRequest",function(){return _FakeXMLHttpRequest}),__webpack_require__.d(__webpack_exports__,"fakeServer",function(){return _fakeServer}),__webpack_require__.d(__webpack_exports__,"fakeServerWithClock",function(){return _fakeServerWithClock}),__webpack_require__.d(__webpack_exports__,"createFakeServer",function(){return _createFakeServer}),__webpack_require__.d(__webpack_exports__,"createFakeServerWithClock",function(){return _createFakeServerWithClock}),__webpack_require__.d(__webpack_exports__,"addBehavior",function(){return _addBehavior});var call=Function.call,copyPrototype=function(l){return Object.getOwnPropertyNames(l).reduce(function(n,e){return"size"!==e&&"caller"!==e&&"callee"!==e&&"arguments"!==e&&"function"==typeof l[e]&&(n[e]=call.bind(l[e])),n},Object.create(null))},array=copyPrototype(Array.prototype),every=array.every;function hasCallsLeft(l,n){return void 0===l[n.id]&&(l[n.id]=0),l[n.id]1?arguments:l;return every(n,checkAdjacentCalls.bind(null,{}))},functionName=function(l){return l.displayName||l.name||(String(l).match(/function ([^\s(]+)/)||[])[1]},className=function(l){return l.constructor&&l.constructor.name||"function"==typeof l.constructor&&functionName(l.constructor)||null},every$1=function(l,n){var e=!0;try{l.forEach(function(){if(!n.apply(this,arguments))throw new Error})}catch(l){e=!1}return e},sort=array.sort,slice=array.slice;function comparator(l,n){var e=l.getCall(0),t=n.getCall(0);return(e&&e.callId||-1)<(t&&t.callId||-1)?-1:1}var orderByFirstCall=function(l){return sort(slice(l),comparator)},_function=copyPrototype(Function.prototype),object=copyPrototype(Object.prototype),string=copyPrototype(String.prototype),prototypes={array:array,function:_function,object:object,string:string},commonjsGlobal="undefined"!=typeof window?window:void 0!==global?global:"undefined"!=typeof self?self:{};function commonjsRequire(){throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs")}function unwrapExports(l){return l&&l.__esModule&&Object.prototype.hasOwnProperty.call(l,"default")?l.default:l}function createCommonjsModule(l,n){return l(n={exports:{}},n.exports),n.exports}var typeDetect=createCommonjsModule(function(l,n){var e,t,u,r,o,i,a,s,c,f,p,h,d,g,m,y,b,v,w,A;l.exports=(e="function"==typeof Promise,t="object"==typeof self?self:commonjsGlobal,u="undefined"!=typeof Symbol,r="undefined"!=typeof Map,o="undefined"!=typeof Set,i="undefined"!=typeof WeakMap,a="undefined"!=typeof WeakSet,s="undefined"!=typeof DataView,c=u&&void 0!==Symbol.iterator,f=u&&void 0!==Symbol.toStringTag,p=o&&"function"==typeof Set.prototype.entries,h=r&&"function"==typeof Map.prototype.entries,d=p&&Object.getPrototypeOf((new Set).entries()),g=h&&Object.getPrototypeOf((new Map).entries()),m=c&&"function"==typeof Array.prototype[Symbol.iterator],y=m&&Object.getPrototypeOf([][Symbol.iterator]()),b=c&&"function"==typeof String.prototype[Symbol.iterator],v=b&&Object.getPrototypeOf(""[Symbol.iterator]()),w=8,A=-1,function(l){var n=typeof l;if("object"!==n)return n;if(null===l)return"null";if(l===t)return"global";if(Array.isArray(l)&&(!1===f||!(Symbol.toStringTag in l)))return"Array";if("object"==typeof window&&null!==window){if("object"==typeof window.location&&l===window.location)return"Location";if("object"==typeof window.document&&l===window.document)return"Document";if("object"==typeof window.navigator){if("object"==typeof window.navigator.mimeTypes&&l===window.navigator.mimeTypes)return"MimeTypeArray";if("object"==typeof window.navigator.plugins&&l===window.navigator.plugins)return"PluginArray"}if(("function"==typeof window.HTMLElement||"object"==typeof window.HTMLElement)&&l instanceof window.HTMLElement){if("BLOCKQUOTE"===l.tagName)return"HTMLQuoteElement";if("TD"===l.tagName)return"HTMLTableDataCellElement";if("TH"===l.tagName)return"HTMLTableHeaderCellElement"}}var u=f&&l[Symbol.toStringTag];if("string"==typeof u)return u;var c=Object.getPrototypeOf(l);return c===RegExp.prototype?"RegExp":c===Date.prototype?"Date":e&&c===Promise.prototype?"Promise":o&&c===Set.prototype?"Set":r&&c===Map.prototype?"Map":a&&c===WeakSet.prototype?"WeakSet":i&&c===WeakMap.prototype?"WeakMap":s&&c===DataView.prototype?"DataView":r&&c===g?"Map Iterator":o&&c===d?"Set Iterator":m&&c===y?"Array Iterator":b&&c===v?"String Iterator":null===c?"Object":Object.prototype.toString.call(l).slice(w,A)})}),typeOf=function(l){return typeDetect(l).toLowerCase()};function valueToString(l){return l&&l.toString?l.toString():String(l)}var valueToString_1=valueToString,lib={calledInOrder:calledInOrder,className:className,every:every$1,functionName:functionName,orderByFirstCall:orderByFirstCall,prototypes:prototypes,typeOf:typeOf,valueToString:valueToString_1},arrayProto=lib.prototypes.array,hasOwnProperty=lib.prototypes.object.hasOwnProperty,join=arrayProto.join,push=arrayProto.push,slice$1=arrayProto.slice,hasDontEnumBug=function(){var l={constructor:function(){return"0"},toString:function(){return"1"},valueOf:function(){return"2"},toLocaleString:function(){return"3"},prototype:function(){return"4"},isPrototypeOf:function(){return"5"},propertyIsEnumerable:function(){return"6"},hasOwnProperty:function(){return"7"},length:function(){return"8"},unique:function(){return"9"}},n=[];for(var e in l)hasOwnProperty(l,e)&&push(n,l[e]());return"0123456789"!==join(n,"")}();function extendCommon(l,n,e){var t,u,r;for(u=0;u=0)return n[t];t===useLeftMostCallback&&(e=n),t===useRightMostCallback&&(e=reverse(slice$2(n)));for(var u=l.callArgProp,r=0,o=e.length;r0&&(t+=" Received ["+join$1(e,", ")+"]"),t):"argument at index "+l.callArgAt+" is not a function: "+n}function ensureArgs(l,n,e){var t=n[l.replace(/sArg/,"ArgAt")];if(t>=e.length)throw new TypeError(l+" failed: "+(t+1)+" arguments required but only "+e.length+" present")}function callCallback(l,n){if("number"==typeof l.callArgAt){ensureArgs("callsArg",l,n);var e=getCallback(l,n);if("function"!=typeof e)throw new TypeError(getCallbackError(l,e,n));if(!l.callbackAsync)return e.apply(l.callbackContext,l.callbackArguments);nextTick$1(function(){e.apply(l.callbackContext,l.callbackArguments)})}}var proto={create:function(l){var n=extend({},proto);return delete n.create,delete n.addBehavior,delete n.createBehavior,n.stub=l,l.defaultBehavior&&l.defaultBehavior.promiseLibrary&&(n.promiseLibrary=l.defaultBehavior.promiseLibrary),n},isPresent:function(){return"number"==typeof this.callArgAt||this.exception||this.exceptionCreator||"number"==typeof this.returnArgAt||this.returnThis||"number"==typeof this.resolveArgAt||this.resolveThis||"number"==typeof this.throwArgAt||this.fakeFn||this.returnValueDefined},invoke:function(l,n){var e=callCallback(this,n);if(this.exception)throw this.exception;if(this.exceptionCreator)throw this.exception=this.exceptionCreator(),this.exceptionCreator=void 0,this.exception;if("number"==typeof this.returnArgAt)return ensureArgs("returnsArg",this,n),n[this.returnArgAt];if(this.returnThis)return l;if("number"==typeof this.throwArgAt)throw ensureArgs("throwsArg",this,n),n[this.throwArgAt];return this.fakeFn?this.fakeFn.apply(l,n):"number"==typeof this.resolveArgAt?(ensureArgs("resolvesArg",this,n),(this.promiseLibrary||Promise).resolve(n[this.resolveArgAt])):this.resolveThis?(this.promiseLibrary||Promise).resolve(l):this.resolve?(this.promiseLibrary||Promise).resolve(this.returnValue):this.reject?(this.promiseLibrary||Promise).reject(this.returnValue):this.callsThrough?this.stub.wrappedMethod.apply(l,n):void 0!==this.returnValue?this.returnValue:"number"==typeof this.callArgAt?e:this.returnValue},onCall:function(l){return this.stub.onCall(l)},onFirstCall:function(){return this.stub.onFirstCall()},onSecondCall:function(){return this.stub.onSecondCall()},onThirdCall:function(){return this.stub.onThirdCall()},withArgs:function(){throw new Error('Defining a stub by invoking "stub.onCall(...).withArgs(...)" is not supported. Use "stub.withArgs(...).onCall(...)" to define sequential behavior for calls with certain arguments.')}};function createBehavior(l){return function(){return this.defaultBehavior=this.defaultBehavior||proto.create(this),this.defaultBehavior[l].apply(this.defaultBehavior,arguments),this}}function addBehavior(l,n,e){proto[n]=function(){return e.apply(this,concat([this],slice$2(arguments))),this.stub||this},l[n]=createBehavior(n)}proto.addBehavior=addBehavior,proto.createBehavior=createBehavior;var asyncBehaviors=exportAsyncBehaviors(proto),behavior=extend({},proto,asyncBehaviors),forEach=lib.prototypes.array.forEach;function walkInternal(l,n,e,t,u){var r,o;if("function"==typeof Object.getOwnPropertyNames)forEach(Object.getOwnPropertyNames(l),function(r){if(!0!==u[r]){u[r]=!0;var o="function"==typeof Object.getOwnPropertyDescriptor(l,r).get?t:l;n.call(e,r,o)}}),(r=Object.getPrototypeOf(l))&&walkInternal(r,n,e,t,u);else for(o in l)n.call(e,l[o],o,l)}var walk=function(l,n,e){return walkInternal(l,n,e,l,{})},getPropertyDescriptor=function(l,n){for(var e,t=l;t&&!(e=Object.getOwnPropertyDescriptor(t,n));)t=Object.getPrototypeOf(t);return e},hasOwnProperty$1=lib.prototypes.object.hasOwnProperty,push$1=lib.prototypes.array.push;function collectMethod(l,n,e,t){"function"==typeof getPropertyDescriptor(t,e).value&&hasOwnProperty$1(n,e)&&push$1(l,n[e])}function collectOwnMethods(l){var n=[];return walk(l,collectMethod.bind(null,n,l)),n}var collectOwnMethods_1=collectOwnMethods,isEsModule=function(l){return l&&"undefined"!=typeof Symbol&&"Module"===l[Symbol.toStringTag]&&Object.isSealed(l)};function isPropertyConfigurable(l,n){var e=getPropertyDescriptor(l,n);return!e||e.configurable}var isPropertyConfigurable_1=isPropertyConfigurable;function isNonExistentOwnProperty(l,n){return l&&void 0!==n&&!(n in l)}var isNonExistentOwnProperty_1=isNonExistentOwnProperty;function isNaN$1(l){return"number"==typeof l&&l!==l}var isNan=isNaN$1;function isNegZero(l){return 0===l&&1/l==-1/0}var isNegZero_1=isNegZero;function identical(l,n){return!!(l===n||isNan(l)&&isNan(n))&&(0!==l||isNegZero_1(l)===isNegZero_1(n))}var identical_1=identical,o=Object.prototype;function getClass(l){return o.toString.call(l).split(/[ \]]/)[1]}var getClass_1=getClass;function isArguments(l){if("Arguments"===getClass_1(l))return!0;if("object"!=typeof l||"number"!=typeof l.length||"Array"===getClass_1(l))return!1;if("function"==typeof l.callee)return!0;try{l[l.length]=6,delete l[l.length]}catch(l){return!0}return!1}var isArguments_1=isArguments,div="undefined"!=typeof document&&document.createElement("div");function isElement(l){if(!l||1!==l.nodeType||!div)return!1;try{l.appendChild(div),l.removeChild(div)}catch(l){return!1}return!0}var isElement_1=isElement;function isDate(l){return l instanceof Date}var isDate_1=isDate;function isObject(l){return!("object"!=typeof l||null===l||l instanceof Boolean||l instanceof Date||l instanceof Error||l instanceof Number||l instanceof RegExp||l instanceof String)}var isObject_1=isObject;function isSet(l){return"undefined"!=typeof Set&&l instanceof Set||!1}var isSet_1=isSet;function isSubset(l,n,e){var t=!0;return l.forEach(function(l){var u=!1;n.forEach(function(n){e(n,l)&&(u=!0)}),t=t&&u}),t}var isSubset_1=isSubset,re=/function (\w+)\s*\(/;function getClassName(l){if(l.constructor&&"name"in l.constructor)return l.constructor.name;if("function"==typeof l.constructor){var n=l.constructor.toString().match(re);if(n.length>1)return n[1]}return null}var getClassName_1=getClassName,every$2=Array.prototype.every,getTime=Date.prototype.getTime,hasOwnProperty$2=Object.prototype.hasOwnProperty,indexOf=Array.prototype.indexOf,keys=Object.keys;function deepEqualCyclic(l,n,e){var t=[],u=[],r=[],o=[],i={};return function l(n,a,s,c){if(e&&e.isMatcher(a))return e.isMatcher(n)?n===a:a.test(n);var f=typeof n,p=typeof a;if(n===a||isNan(n)||isNan(a)||null==n||null==a||"object"!==f||"object"!==p)return identical_1(n,a);if(isElement_1(n)||isElement_1(a))return!1;var h=isDate_1(n),d=isDate_1(a);if((h||d)&&(!h||!d||getTime.call(n)!==getTime.call(a)))return!1;if(n instanceof RegExp&&a instanceof RegExp&&n.toString()!==a.toString())return!1;if(n instanceof Error&&a instanceof Error)return n===a;var g=getClass_1(n),m=getClass_1(a),y=keys(n),b=keys(a),v=getClassName_1(n),w=getClassName_1(a);if(isArguments_1(n)||isArguments_1(a)){if(n.length!==a.length)return!1}else if(f!==p||g!==m||y.length!==b.length||v&&w&&v!==w)return!1;return isSet_1(n)||isSet_1(a)?!(!isSet_1(n)||!isSet_1(a)||n.size!==a.size)&&isSubset_1(n,a,l):every$2.call(y,function(e){if(!hasOwnProperty$2.call(a,e))return!1;var f=n[e],p=a[e],h=isObject_1(f),d=isObject_1(p),g=h?indexOf.call(t,f):-1,m=d?indexOf.call(u,p):-1,y=-1!==g?r[g]:s+"["+JSON.stringify(e)+"]",b=-1!==m?o[m]:c+"["+JSON.stringify(e)+"]",v=y+b;return!!i[v]||(-1===g&&h&&(t.push(f),r.push(y)),-1===m&&d&&(u.push(p),o.push(b)),h&&d&&(i[v]=!0),l(f,p,y,b))})}(l,n,"$1","$2")}deepEqualCyclic.use=function(l){return function(n,e){return deepEqualCyclic(n,e,l)}};var deepEqual=deepEqualCyclic,FUNC_ERROR_TEXT="Expected a function",HASH_UNDEFINED="__lodash_hash_undefined__",INFINITY=1/0,funcTag="[object Function]",genTag="[object GeneratorFunction]",symbolTag="[object Symbol]",reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/,reLeadingDot=/^\./,rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reEscapeChar=/\\(\\)?/g,reIsHostCtor=/^\[object .+?Constructor\]$/,freeGlobal="object"==typeof commonjsGlobal&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root$1=freeGlobal||freeSelf||Function("return this")();function getValue(l,n){return null==l?void 0:l[n]}function isHostObject(l){var n=!1;if(null!=l&&"function"!=typeof l.toString)try{n=!!(l+"")}catch(l){}return n}var arrayProto$3=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root$1["__core-js_shared__"],maskSrcKey=(uid=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||""),uid?"Symbol(src)_1."+uid:""),uid,funcToString=funcProto.toString,hasOwnProperty$3=objectProto.hasOwnProperty,objectToString=objectProto.toString,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty$3).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Symbol$1=root$1.Symbol,splice=arrayProto$3.splice,Map$1=getNative(root$1,"Map"),nativeCreate=getNative(Object,"create"),symbolProto=Symbol$1?Symbol$1.prototype:void 0,symbolToString=symbolProto?symbolProto.toString:void 0;function Hash(l){var n=-1,e=l?l.length:0;for(this.clear();++n-1}function listCacheSet(l,n){var e=this.__data__,t=assocIndexOf(e,l);return t<0?e.push([l,n]):e[t][1]=n,this}function MapCache(l){var n=-1,e=l?l.length:0;for(this.clear();++n=u)return!1;if(!e(l[t+r],n[r]))return!1}return!0}return!1}function match$1(l,n){if(n&&"function"==typeof n.test)return n.test(l);if("function"==typeof n)return!0===n(l);if("string"==typeof n)return n=n.toLowerCase(),("string"==typeof l||!!l)&&String(l).toLowerCase().indexOf(n)>=0;if("number"==typeof n)return n===l;if("boolean"==typeof n)return n===l;if(void 0===n)return void 0===l;if(null===n)return null===l;if(null===l)return!1;if(isSet_1(l))return isSubset_1(n,l,match$1);if("Array"===getClass_1(l)&&"Array"===getClass_1(n))return arrayContains(l,n,match$1);if(isDate_1(n))return isDate_1(l)&&l.getTime()===n.getTime();if(n&&"object"==typeof n){if(n===l)return!0;if("object"!=typeof l)return!1;var e;for(e in n){var t=l[e];if(void 0===t&&"function"==typeof l.getAttribute&&(t=l.getAttribute(e)),null===n[e]||void 0===n[e]){if(t!==n[e])return!1}else if(void 0===t||!deepEqual$2(t,n[e]))return!1}return!0}throw new Error("Matcher was not a string, a number, a function, a boolean or an object")}Object.keys(matcher_1).forEach(function(l){match$1[l]=matcher_1[l]});var match_1=match$1,deepEqualCyclic$1=deepEqual.use(match_1),samsam={createMatcher:matcher_1,deepEqual:deepEqualCyclic$1,isArguments:isArguments_1,isElement:isElement_1,isNegZero:isNegZero_1,identical:identical_1,match:match_1},array$1=[null,"once","twice","thrice"],timesInWords=function(l){return array$1[l]||(l||0)+" times"},formatio={excludeConstructors:["Object",/^.$/],quoteStrings:!0,limitChildrenCount:0},specialObjects=[];function functionName$3(l){if(!l)return"";if(l.displayName)return l.displayName;if(l.name)return l.name;var n=l.toString().match(/function\s+([^\(]+)/m);return n&&n[1]||""}function constructorName(l,n){var e,t,u=functionName$3(n&&n.constructor),r=l.excludeConstructors||formatio.excludeConstructors||[];for(e=0,t=r.length;e0?Math.min(this.limitChildrenCount,l.length):l.length,t=0;t0?Math.min(this.limitChildrenCount,c.length):c.length,o=0;o80?h+"{\n "+d+s.join(",\n "+d)+"\n"+d+"}":h+"{ "+s.join(", ")+" }"},ascii.element=function(l){var n,e,t,u,r,o=l.tagName.toLowerCase(),i=l.attributes,a=[];for(t=0,u=i.length;t0?" ":""),c=l.innerHTML||"";return c.length>20&&(c=c.substr(0,20)+"[...]"),(s+a.join(" ")+">"+c+"").replace(/ contentEditable="inherit"/,"")},Formatio.prototype={functionName:functionName$3,configure:function(l){return new Formatio(l)},constructorName:function(l){return constructorName(this,l)},ascii:function(l,n,e){return ascii(this,l,n,e)}};var formatio_1=Formatio.prototype,formatter=formatio_1.configure({quoteStrings:!1,limitChildrenCount:250}),customFormatter;function format(){return customFormatter?customFormatter.apply(null,arguments):formatter.ascii.apply(formatter,arguments)}format.setFormatter=function(l){if("function"!=typeof l)throw new Error("format.setFormatter must be called with a function");customFormatter=l};var format_1=format,arrayProto$5=lib.prototypes.array,calledInOrder$1=lib.calledInOrder,createMatcher=samsam.createMatcher,orderByFirstCall$1=lib.orderByFirstCall,stringSlice=lib.prototypes.string.slice,arraySlice=arrayProto$5.slice,concat$1=arrayProto$5.concat,forEach$1=arrayProto$5.forEach,join$3=arrayProto$5.join,splice$1=arrayProto$5.splice,assert;function verifyIsStub(){var l=arraySlice(arguments);forEach$1(l,function(l){l||assert.fail("fake is not a spy"),l.proxy&&l.proxy.isSinonProxy?verifyIsStub(l.proxy):("function"!=typeof l&&assert.fail(l+" is not a function"),"function"!=typeof l.getCall&&assert.fail(l+" is not stubbed"))})}function verifyIsValidAssertion(l,n){switch(l){case"notCalled":case"called":case"calledOnce":case"calledTwice":case"calledThrice":0!==n.length&&assert.fail(l+" takes 1 argument but was called with "+(n.length+1)+" arguments")}}function failAssertion(l,n){var e=l||commonjsGlobal;(e.fail||assert.fail).call(e,n)}function mirrorPropAsAssertion(l,n,e){var t=e,u=n;2===arguments.length&&(t=n,u=l),assert[l]=function(n){verifyIsStub(n);var e=arraySlice(arguments,1);verifyIsValidAssertion(l,e),("function"==typeof u?!u(n):"function"==typeof n[u]?!n[u].apply(n,e):!n[u])?failAssertion(this,(n.printf||n.proxy.printf).apply(n,concat$1([t],e))):assert.pass(l)}}function exposedName(l,n){return!l||/^fail/.test(n)?n:l+stringSlice(n,0,1).toUpperCase()+stringSlice(n,1)}assert={failException:"AssertError",fail:function(l){var n=new Error(l);throw n.name=this.failException||assert.failException,n},pass:function(){},callOrder:function(){verifyIsStub.apply(null,arguments);var l="",n="";if(calledInOrder$1(arguments))assert.pass("callOrder");else{try{l=join$3(arguments,", ");for(var e=arraySlice(arguments),t=e.length;t;)e[--t].called||splice$1(e,t,1);n=join$3(orderByFirstCall$1(e),", ")}catch(l){}failAssertion(this,"expected "+l+" to be called in order but were called as "+n)}},callCount:function(l,n){if(verifyIsStub(l),l.callCount!==n){var e="expected %n to be called "+timesInWords(n)+" but was called %c%C";failAssertion(this,l.printf(e))}else assert.pass("callCount")},expose:function(l,n){if(!l)throw new TypeError("target is null or undefined");var e=n||{},t=void 0===e.prefix?"assert":e.prefix,u=void 0===e.includeFail||Boolean(e.includeFail),r=this;return forEach$1(Object.keys(r),function(n){"expose"===n||!u&&/^(fail)/.test(n)||(l[exposedName(t,n)]=r[n])}),l},match:function(l,n){if(createMatcher(n).test(l))assert.pass("match");else{var e=["expected value to match"," expected = "+format_1(n)," actual = "+format_1(l)];failAssertion(this,join$3(e,"\n"))}}},mirrorPropAsAssertion("called","expected %n to have been called at least once but was never called"),mirrorPropAsAssertion("notCalled",function(l){return!l.called},"expected %n to not have been called but was called %c%C"),mirrorPropAsAssertion("calledOnce","expected %n to be called once but was called %c%C"),mirrorPropAsAssertion("calledTwice","expected %n to be called twice but was called %c%C"),mirrorPropAsAssertion("calledThrice","expected %n to be called thrice but was called %c%C"),mirrorPropAsAssertion("calledOn","expected %n to be called with %1 as this but was called with %t"),mirrorPropAsAssertion("alwaysCalledOn","expected %n to always be called with %1 as this but was called with %t"),mirrorPropAsAssertion("calledWithNew","expected %n to be called with new"),mirrorPropAsAssertion("alwaysCalledWithNew","expected %n to always be called with new"),mirrorPropAsAssertion("calledWith","expected %n to be called with arguments %D"),mirrorPropAsAssertion("calledWithMatch","expected %n to be called with match %D"),mirrorPropAsAssertion("alwaysCalledWith","expected %n to always be called with arguments %D"),mirrorPropAsAssertion("alwaysCalledWithMatch","expected %n to always be called with match %D"),mirrorPropAsAssertion("calledWithExactly","expected %n to be called with exact arguments %D"),mirrorPropAsAssertion("alwaysCalledWithExactly","expected %n to always be called with exact arguments %D"),mirrorPropAsAssertion("neverCalledWith","expected %n to never be called with arguments %*%C"),mirrorPropAsAssertion("neverCalledWithMatch","expected %n to never be called with match %*%C"),mirrorPropAsAssertion("threw","%n did not throw exception%C"),mirrorPropAsAssertion("alwaysThrew","%n did not always throw exception%C");var assert_1=assert,lolex=createCommonjsModule(function(module,exports){var f;f=function(){return function(){return function l(n,e,t){function u(o,i){if(!e[o]){if(!n[o]){var a="function"==typeof commonjsRequire&&commonjsRequire;if(!i&&a)return a(o,!0);if(r)return r(o,!0);var s=new Error("Cannot find module '"+o+"'");throw s.code="MODULE_NOT_FOUND",s}var c=e[o]={exports:{}};n[o][0].call(c.exports,function(l){return u(n[o][1][l]||l)},c,c.exports,l,n,e,t)}return e[o].exports}for(var r="function"==typeof commonjsRequire&&commonjsRequire,o=0;o-1,maxTimeout=Math.pow(2,31)-1;isRunningInIE&&(_global.setTimeout=_global.setTimeout,_global.clearTimeout=_global.clearTimeout,_global.setInterval=_global.setInterval,_global.clearInterval=_global.clearInterval,_global.Date=_global.Date),void 0!==_global.setImmediate&&(_global.setImmediate=_global.setImmediate,_global.clearImmediate=_global.clearImmediate);var NOOP=function(){},timeoutResult=_global.setTimeout(NOOP,0),addTimerReturnsObject="object"==typeof timeoutResult,hrtimePresent=_global.process&&"function"==typeof _global.process.hrtime,nextTickPresent=_global.process&&"function"==typeof _global.process.nextTick,performancePresent=_global.performance&&"function"==typeof _global.performance.now,hasPerformancePrototype=_global.Performance&&(typeof _global.Performance).match(/^(function|object)$/),requestAnimationFramePresent=_global.requestAnimationFrame&&"function"==typeof _global.requestAnimationFrame,cancelAnimationFramePresent=_global.cancelAnimationFrame&&"function"==typeof _global.cancelAnimationFrame;_global.clearTimeout(timeoutResult);var NativeDate=_global.Date,uniqueTimerId=1;function isNumberFinite(l){return Number.isFinite?Number.isFinite(l):"number"==typeof l&&isFinite(l)}function parseTime(l){if(!l)return 0;var n,e=l.split(":"),t=e.length,u=t,r=0;if(t>3||!/^(\d\d:){0,2}\d\d?$/.test(l))throw new Error("tick only understands numbers, 'm:s' and 'h:m:s'. Each part must be two digits");for(;u--;){if((n=parseInt(e[u],10))>=60)throw new Error("Invalid time "+l);r+=n*Math.pow(60,t-u-1)}return 1e3*r}function nanoRemainder(l){var n=1e6*l%1e6,e=n<0?n+1e6:n;return Math.floor(e)}function getEpoch(l){if(!l)return 0;if("function"==typeof l.getTime)return l.getTime();if("number"==typeof l)return l;throw new TypeError("now should be milliseconds since UNIX epoch")}function inRange(l,n,e){return e&&e.callAt>=l&&e.callAt<=n}function mirrorDateProperties(l,n){var e;for(e in n)n.hasOwnProperty(e)&&(l[e]=n[e]);return n.now?l.now=function(){return l.clock.now}:delete l.now,n.toSource?l.toSource=function(){return n.toSource()}:delete l.toSource,l.toString=function(){return n.toString()},l.prototype=n.prototype,l.parse=n.parse,l.UTC=n.UTC,l.prototype.toUTCString=n.prototype.toUTCString,l}function createDate(){return mirrorDateProperties(function l(n,e,t,u,r,o,i){switch(arguments.length){case 0:return new NativeDate(l.clock.now);case 1:return new NativeDate(n);case 2:return new NativeDate(n,e);case 3:return new NativeDate(n,e,t);case 4:return new NativeDate(n,e,t,u);case 5:return new NativeDate(n,e,t,u,r);case 6:return new NativeDate(n,e,t,u,r,o);default:return new NativeDate(n,e,t,u,r,o,i)}},NativeDate)}function enqueueJob(l,n){l.jobs||(l.jobs=[]),l.jobs.push(n)}function runJobs(l){if(l.jobs){for(var n=0;nl.loopLimit)throw new Error("Aborting after running "+l.loopLimit+" timers, assuming an infinite loop!")}l.jobs=[]}}function addTimer(l,n){if(void 0===n.func)throw new Error("Callback must be provided to timer calls");if(n.type=n.immediate?"Immediate":"Timeout",n.hasOwnProperty("delay")&&(isNumberFinite(n.delay)||(n.delay=0),n.delay=n.delay>maxTimeout?1:n.delay,n.delay=Math.max(0,n.delay)),n.hasOwnProperty("interval")&&(n.type="Interval",n.interval=n.interval>maxTimeout?1:n.interval),n.hasOwnProperty("animation")&&(n.type="AnimationFrame",n.animation=!0),l.timers||(l.timers={}),n.id=uniqueTimerId++,n.createdAt=l.now,n.callAt=l.now+(parseInt(n.delay)||(l.duringTick?1:0)),l.timers[n.id]=n,addTimerReturnsObject){var e={id:n.id,ref:function(){return e},unref:function(){return e},refresh:function(){return e}};return e}return n.id}function compareTimers(l,n){return l.callAtn.callAt?1:l.immediate&&!n.immediate?-1:!l.immediate&&n.immediate?1:l.createdAtn.createdAt?1:l.idn.id?1:void 0}function firstTimerInRange(l,n,e){var t,u=l.timers,r=null;for(t in u)u.hasOwnProperty(t)&&(!inRange(n,e,u[t])||r&&1!==compareTimers(r,u[t])||(r=u[t]));return r}function firstTimer(l){var n,e=l.timers,t=null;for(n in e)e.hasOwnProperty(n)&&(t&&1!==compareTimers(t,e[n])||(t=e[n]));return t}function lastTimer(l){var n,e=l.timers,t=null;for(n in e)e.hasOwnProperty(n)&&(t&&-1!==compareTimers(t,e[n])||(t=e[n]));return t}function callTimer(clock,timer){"number"==typeof timer.interval?clock.timers[timer.id].callAt+=timer.interval:delete clock.timers[timer.id],"function"==typeof timer.func?timer.func.apply(null,timer.args):eval(timer.func)}function clearTimer(l,n,e){if(n&&(l.timers||(l.timers={}),"object"==typeof n&&(n=n.id),l.timers.hasOwnProperty(n))){var t=l.timers[n];if(t.type!==e){var u="AnimationFrame"===e?"cancelAnimationFrame":"clear"+e,r="AnimationFrame"===t.type?"requestAnimationFrame":"set"+t.type;throw new Error("Cannot clear timer: timer created with "+r+"() but cleared with "+u+"()")}delete l.timers[n]}}function uninstall(l,n,e){var t,u,r;for(u=0,r=l.methods.length;u1e9)throw new TypeError("Number of nanoseconds can't exceed a billion");var a=n[0],s=i-n[1],c=o-a;return s<0&&(s+=1e9,c-=1),[c,s]}return[o,i]}if(u.Date.clock=u,u.setTimeout=function(l,n){return addTimer(u,{func:l,args:Array.prototype.slice.call(arguments,2),delay:n})},u.clearTimeout=function(l){return clearTimer(u,l,"Timeout")},u.nextTick=function(l){return enqueueJob(u,{func:l,args:Array.prototype.slice.call(arguments,1)})},u.setInterval=function(l,n){return n=parseInt(n,10),addTimer(u,{func:l,args:Array.prototype.slice.call(arguments,2),delay:n,interval:n})},u.clearInterval=function(l){return clearTimer(u,l,"Interval")},u.setImmediate=function(l){return addTimer(u,{func:l,args:Array.prototype.slice.call(arguments,1),immediate:!0})},u.clearImmediate=function(l){return clearTimer(u,l,"Immediate")},u.countTimers=function(){return Object.keys(u.timers||{}).length},u.requestAnimationFrame=function(l){var n=addTimer(u,{func:l,delay:r(),args:[u.now+r()],animation:!0});return n.id||n},u.cancelAnimationFrame=function(l){return clearTimer(u,l,"AnimationFrame")},u.runMicrotasks=function(){runJobs(u)},u.tick=function(l){var n="number"==typeof l?l:parseTime(l),t=Math.floor(n),r=nanoRemainder(n),o=e+r,i=u.now+t;if(n<0)throw new TypeError("Negative ticks are not supported");o>=1e6&&(i+=1,o-=1e6),e=o;var a,s,c,f=u.now,p=u.now;for(u.duringTick=!0,c=u.now,runJobs(u),c!==u.now&&(f+=u.now-c,i+=u.now-c),a=firstTimerInRange(u,f,i);a&&f<=i;){if(u.timers[a.id]){f=a.callAt,u.now=a.callAt,c=u.now;try{runJobs(u),callTimer(u,a)}catch(l){s=s||l}c!==u.now&&(f+=u.now-c,i+=u.now-c,p+=u.now-c)}a=firstTimerInRange(u,p,i),p=f}if(c=u.now,runJobs(u),c!==u.now&&(f+=u.now-c,i+=u.now-c),u.duringTick=!1,a=firstTimerInRange(u,f,i))try{u.tick(i-u.now)}catch(l){s=s||l}else u.now=i,e=o;if(s)throw s;return u.now},u.next=function(){runJobs(u);var l=firstTimer(u);if(!l)return u.now;u.duringTick=!0;try{return u.now=l.callAt,callTimer(u,l),runJobs(u),u.now}finally{u.duringTick=!1}},u.runAll=function(){var l;for(runJobs(u),l=0;l1||l instanceof Date||Array.isArray(l)||"number"==typeof l)throw new TypeError("lolex.install called with "+String(l)+" lolex 2.0+ requires an object parameter - see https://github.com/sinonjs/lolex");var n,e;(l=void 0!==l?l:{}).shouldAdvanceTime=l.shouldAdvanceTime||!1,l.advanceTimeDelta=l.advanceTimeDelta||20;var t=l.target||_global,u=createClock(l.now,l.loopLimit);for(u.uninstall=function(){return uninstall(u,t,l)},u.methods=l.toFake||[],0===u.methods.length&&(u.methods=keys(timers).filter(function(l){return"nextTick"!==l})),n=0,e=u.methods.length;nl.args.length)&&reduce$1(n,function(n,e,t){return n&&deepEqual$3(l.args[t],e)},!0)},calledWithMatch:function(){var l=this,n=slice$4(arguments);return!(n.length>l.args.length)&&reduce$1(n,function(n,e,t){var u=l.args[t];return n&&match$2(e).test(u)},!0)},calledWithExactly:function(){return arguments.length===this.args.length&&this.calledWith.apply(this,arguments)},notCalledWith:function(){return!this.calledWith.apply(this,arguments)},notCalledWithMatch:function(){return!this.calledWithMatch.apply(this,arguments)},returned:function(l){return deepEqual$3(this.returnValue,l)},threw:function(l){return void 0!==l&&this.exception?this.exception===l||this.exception.name===l:Boolean(this.exception)},calledWithNew:function(){return this.proxy.prototype&&this.thisValue instanceof this.proxy},calledBefore:function(l){return this.callIdl.callId},calledImmediatelyBefore:function(l){return this.callId===l.callId-1},calledImmediatelyAfter:function(l){return this.callId===l.callId+1},callArg:function(l){return this.ensureArgIsAFunction(l),this.args[l]()},callArgOn:function(l,n){return this.ensureArgIsAFunction(l),this.args[l].apply(n)},callArgWith:function(l){return this.callArgOnWith.apply(this,concat$2([l,null],slice$4(arguments,1)))},callArgOnWith:function(l,n){this.ensureArgIsAFunction(l);var e=slice$4(arguments,2);return this.args[l].apply(n,e)},throwArg:function(l){if(l>this.args.length)throw new TypeError("Not enough arguments: "+l+" required but only "+this.args.length+" present");throw this.args[l]},yield:function(){return this.yieldOn.apply(this,concat$2([null],slice$4(arguments,0)))},yieldOn:function(l){var n=slice$4(this.args),e=filter(n,function(l){return"function"==typeof l})[0];return e||throwYieldError(this.proxy," cannot yield since no callback was passed.",n),e.apply(l,slice$4(arguments,1))},yieldTo:function(l){return this.yieldToOn.apply(this,concat$2([l,null],slice$4(arguments,1)))},yieldToOn:function(l,n){var e=slice$4(this.args),t=filter(e,function(n){return n&&"function"==typeof n[l]})[0],u=t&&t[l];return u||throwYieldError(this.proxy," cannot yield to '"+valueToString$3(l)+"' since no callback was passed.",e),u.apply(n,slice$4(arguments,2))},toString:function(){var l,n=this.proxy?String(this.proxy)+"(":"";return this.args?(l=map$1(this.args,function(l){return format_1(l)}),n=n+join$4(l,", ")+")",void 0!==this.returnValue&&(n+=" => "+format_1(this.returnValue)),this.exception&&(n+=" !"+this.exception.name,this.exception.message&&(n+="("+this.exception.message+")")),this.stack&&(n+=(this.stack.split("\n")[3]||"unknown").replace(/^\s*(?:at\s+|@)?/," at ")),n):":("},ensureArgIsAFunction:function(l){if("function"!=typeof this.args[l])throw new TypeError("Expected argument at position "+l+" to be a Function, but was "+typeof this.args[l])}};function createSpyCall(l,n,e,t,u,r,o){if("number"!=typeof r)throw new TypeError("Call id is not a number");var i=Object.create(callProto),a=e.length>0&&e[e.length-1]||void 0,s=a&&"function"==typeof a?a:void 0;return i.proxy=l,i.thisValue=n,i.args=e,i.lastArg=a,i.callback=s,i.returnValue=t,i.exception=u,i.callId=r,i.errorWithCallStack=o,i}Object.defineProperty(callProto,"stack",{enumerable:!0,configurable:!0,get:function(){return this.errorWithCallStack&&this.errorWithCallStack.stack||""}}),callProto.invokeCallback=callProto.yield,createSpyCall.toString=callProto.toString;var call$1=createSpyCall,hasOwnProperty$5=lib.prototypes.object.hasOwnProperty,valueToString$4=lib.valueToString;function isFunction$1(l){return"function"==typeof l||Boolean(l&&l.constructor&&l.call&&l.apply)}function mirrorProperties(l,n){for(var e in n)hasOwnProperty$5(l,e)||(l[e]=n[e])}var hasES5Support="keys"in Object,wrapMethod=function(l,n,e){if(!l)throw new TypeError("Should wrap property of object");if("function"!=typeof e&&"object"!=typeof e)throw new TypeError("Method wrapper should be a function or a property descriptor");function t(l){var e;if(isFunction$1(l)){if(l.restore&&l.restore.sinon)e=new TypeError("Attempted to wrap "+valueToString$4(n)+" which is already wrapped");else if(l.calledBefore){var t=l.returns?"stubbed":"spied on";e=new TypeError("Attempted to wrap "+valueToString$4(n)+" which is already "+t)}}else e=new TypeError("Attempted to wrap "+typeof l+" property "+valueToString$4(n)+" as function");if(e)throw l&&l.stackTraceError&&(e.stack+="\n--------------\n"+l.stackTraceError.stack),e}var u,r,o,i;function a(){t(r=l[n]),l[n]=e,e.displayName=n}var s=l.hasOwnProperty?l.hasOwnProperty(n):hasOwnProperty$5(l,n);if(hasES5Support){var c="function"==typeof e?{value:e}:e;if((i=getPropertyDescriptor(l,n))?i.restore&&i.restore.sinon&&(u=new TypeError("Attempted to wrap "+n+" which is already wrapped")):u=new TypeError("Attempted to wrap "+typeof r+" property "+n+" as function"),u)throw i&&i.stackTraceError&&(u.stack+="\n--------------\n"+i.stackTraceError.stack),u;var f=Object.keys(c);for(o=0;o1)for(var e=1;e{n=n||process.argv;const e=l.startsWith("-")?"":1===l.length?"-":"--",t=n.indexOf(e+l),u=n.indexOf("--");return-1!==t&&(-1===u||t=2,has16m:l>=3}}function supportsColor(l){if(!1===forceColor)return 0;if(hasFlag("color=16m")||hasFlag("color=full")||hasFlag("color=truecolor"))return 3;if(hasFlag("color=256"))return 2;if(l&&!l.isTTY&&!0!==forceColor)return 0;const n=forceColor?1:0;if("CI"in env$1)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(l=>l in env$1)||"codeship"===env$1.CI_NAME?1:n;if("TEAMCITY_VERSION"in env$1)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env$1.TEAMCITY_VERSION)?1:0;if("truecolor"===env$1.COLORTERM)return 3;if("TERM_PROGRAM"in env$1){const l=parseInt((env$1.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(env$1.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(env$1.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env$1.TERM)?1:"COLORTERM"in env$1?1:(env$1.TERM,n)}function getSupportLevel(l){return translateLevel(supportsColor(l))}hasFlag("no-color")||hasFlag("no-colors")||hasFlag("color=false")?forceColor=!1:(hasFlag("color")||hasFlag("colors")||hasFlag("color=true")||hasFlag("color=always"))&&(forceColor=!0),"FORCE_COLOR"in env$1&&(forceColor=0===env$1.FORCE_COLOR.length||0!==parseInt(env$1.FORCE_COLOR,10));var supportsColor_1={supportsColor:getSupportLevel,stdout:getSupportLevel(process.stdout),stderr:getSupportLevel(process.stderr)};function colorize(l,n){return!1===supportsColor_1.stdout?l:"["+n+"m"+l+""}var red=function(l){return colorize(l,31)},green=function(l){return colorize(l,32)},cyan=function(l){return colorize(l,96)},white=function(l){return colorize(l,39)},bold=function(l){return colorize(l,1)},color={red:red,green:green,cyan:cyan,white:white,bold:bold},base=createCommonjsModule(function(l,n){function e(){}function t(l,n,e,t,u){for(var r=0,o=n.length,i=0,a=0;rl.length?e:l}),s.value=l.join(f)}else s.value=l.join(e.slice(i,i+s.count));i+=s.count,s.added||(a+=s.count)}}var p=n[o-1];return o>1&&"string"==typeof p.value&&(p.added||p.removed)&&l.equals("",p.value)&&(n[o-2].value+=p.value,n.pop()),n}n.__esModule=!0,n.default=e,e.prototype={diff:function(l,n){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},u=e.callback;"function"==typeof e&&(u=e,e={}),this.options=e;var r=this;function o(l){return u?(setTimeout(function(){u(void 0,l)},0),!0):l}l=this.castInput(l),n=this.castInput(n),l=this.removeEmpty(this.tokenize(l));var i=(n=this.removeEmpty(this.tokenize(n))).length,a=l.length,s=1,c=i+a,f=[{newPos:-1,components:[]}],p=this.extractCommon(f[0],n,l,0);if(f[0].newPos+1>=i&&p+1>=a)return o([{value:this.join(n),count:n.length}]);function h(){for(var e=-1*s;e<=s;e+=2){var u=void 0,c=f[e-1],p=f[e+1],h=(p?p.newPos:0)-e;c&&(f[e-1]=void 0);var d=c&&c.newPos+1=i&&h+1>=a)return o(t(r,u.components,n,l,r.useLongestToken));f[e]=u}else f[e]=void 0}var m;s++}if(u)!function l(){setTimeout(function(){if(s>c)return u();h()||l()},0)}();else for(;s<=c;){var d=h();if(d)return d}},pushComponent:function(l,n,e){var t=l[l.length-1];t&&t.added===n&&t.removed===e?l[l.length-1]={count:t.count+1,added:n,removed:e}:l.push({count:1,added:n,removed:e})},extractCommon:function(l,n,e,t){for(var u=n.length,r=e.length,o=l.newPos,i=o-t,a=0;o+11&&void 0!==arguments[1]?arguments[1]:{},e=l.split(/\r\n|[\n\v\f\r\x85]/),t=l.match(/\r\n|[\n\v\f\r\x85]/g)||[],u=[],r=0;function o(){var l={};for(u.push(l);r2&&void 0!==arguments[2]?arguments[2]:{};if("string"==typeof n&&(n=(0,parse.parsePatch)(n)),Array.isArray(n)){if(n.length>1)throw new Error("applyPatch only works with a single input.");n=n[0]}var u=l.split(/\r\n|[\n\v\f\r\x85]/),r=l.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=n.hunks,i=e.compareLine||function(l,n,e,t){return n===t},a=0,s=e.fuzzFactor||0,c=0,f=0,p=void 0,h=void 0;function d(l,n){for(var e=0;e0?t[0]:" ",o=t.length>0?t.substr(1):t;if(" "===r||"-"===r){if(!i(n+1,u[n],r,o)&&++a>s)return!1;n++}}return!0}for(var g=0;g0?T[0]:" ",k=T.length>0?T.substr(1):T,F=x.linedelimiters[_];if(" "===S)C++;else if("-"===S)u.splice(C,1),r.splice(C,1);else if("+"===S)u.splice(C,0,k),r.splice(C,0,F),C++;else if("\\"===S){var D=x.lines[_-1]?x.lines[_-1][0]:null;"+"===D?p=!0:"-"===D&&(h=!0)}}}if(p)for(;!u[u.length-1];)u.pop(),r.pop();else h&&(u.push(""),r.push("\n"));for(var P=0;P0?s(m.lines.slice(-i.context)):[],f-=h.length,p-=h.length)}(o=h).push.apply(o,e(r.map(function(l){return(n.added?"+":"-")+l}))),n.added?g+=r.length:d+=r.length}else{if(f)if(r.length<=2*i.context&&l=a.length-2&&r.length<=i.context){var A=/\n$/.test(t),E=/\n$/.test(u);0!=r.length||A?A&&E||h.push("\\ No newline at end of file"):h.splice(w.oldLines,0,"\\ No newline at end of file")}c.push(w),f=0,p=0,h=[]}d+=r.length,g+=r.length}},y=0;yl.length)return!1;for(var e=0;e/g,">")).replace(/"/g,""")}n.__esModule=!0,n.convertChangesToXML=function(l){for(var n=[],t=0;t"):u.removed&&n.push(""),n.push(e(u.value)),u.added?n.push(""):u.removed&&n.push("")}return n.join("")}});unwrapExports(xml);var xml_1=xml.convertChangesToXML,lib$1=createCommonjsModule(function(l,n){n.__esModule=!0,n.canonicalize=n.convertChangesToXML=n.convertChangesToDMP=n.merge=n.parsePatch=n.applyPatches=n.applyPatch=n.createPatch=n.createTwoFilesPatch=n.structuredPatch=n.diffArrays=n.diffJson=n.diffCss=n.diffSentences=n.diffTrimmedLines=n.diffLines=n.diffWordsWithSpace=n.diffWords=n.diffChars=n.Diff=void 0;var e,t=(e=base)&&e.__esModule?e:{default:e};n.Diff=t.default,n.diffChars=character.diffChars,n.diffWords=word.diffWords,n.diffWordsWithSpace=word.diffWordsWithSpace,n.diffLines=line.diffLines,n.diffTrimmedLines=line.diffTrimmedLines,n.diffSentences=sentence.diffSentences,n.diffCss=css.diffCss,n.diffJson=json.diffJson,n.diffArrays=array$2.diffArrays,n.structuredPatch=create.structuredPatch,n.createTwoFilesPatch=create.createTwoFilesPatch,n.createPatch=create.createPatch,n.applyPatch=apply.applyPatch,n.applyPatches=apply.applyPatches,n.parsePatch=parse.parsePatch,n.merge=merge_1.merge,n.convertChangesToDMP=dmp.convertChangesToDMP,n.convertChangesToXML=xml.convertChangesToXML,n.canonicalize=json.canonicalize});unwrapExports(lib$1);var lib_1$1=lib$1.canonicalize,lib_2$1=lib$1.convertChangesToXML,lib_3$1=lib$1.convertChangesToDMP,lib_4$1=lib$1.merge,lib_5$1=lib$1.parsePatch,lib_6$1=lib$1.applyPatches,lib_7$1=lib$1.applyPatch,lib_8$1=lib$1.createPatch,lib_9=lib$1.createTwoFilesPatch,lib_10=lib$1.structuredPatch,lib_11=lib$1.diffArrays,lib_12=lib$1.diffJson,lib_13=lib$1.diffCss,lib_14=lib$1.diffSentences,lib_15=lib$1.diffTrimmedLines,lib_16=lib$1.diffLines,lib_17=lib$1.diffWordsWithSpace,lib_18=lib$1.diffWords,lib_19=lib$1.diffChars,lib_20=lib$1.Diff,arrayProto$7=lib.prototypes.array,match$3=samsam.createMatcher,join$5=arrayProto$7.join,map$2=arrayProto$7.map,push$2=arrayProto$7.push;function colorSinonMatchText(l,n,e){var t=e;return l.test(n)||(l.message=color.red(l.message),t&&(t=color.green(t))),t+" "+l.message}function colorDiffText(l){var n=map$2(l,function(n){var e=n.value;return n.added?e=color.green(e):n.removed&&(e=color.red(e)),2===l.length&&(e+=" "),e});return join$5(n,"")}var spyFormatters={c:function(l){return timesInWords(l.callCount)},n:function(l){return l.toString()},D:function(l,n){for(var e="",t=0,u=l.callCount;t1&&(e+="\nCall "+(t+1)+":");for(var r=l.getCall(t).args,o=0;o0?"\n"+join$5(n,"\n"):""},t:function(l){for(var n=[],e=0,t=l.callCount;e=this.callCount?null:call$1(this,this.thisValues[l],this.args[l],this.returnValues[l],this.exceptions[l],this.callIds[l],this.errorsWithCallStack[l])},getCalls:function(){var l,n=[];for(l=0;ll.callIds[0]},calledImmediatelyBefore:function(l){return!(!this.called||!l.called)&&this.callIds[this.callCount-1]===l.callIds[l.callCount-1]-1},calledImmediatelyAfter:function(l){return!(!this.called||!l.called)&&this.callIds[this.callCount-1]===l.callIds[l.callCount-1]+1},withArgs:function(){var l=slice$5(arguments);if(this.fakes){var n=pop(this.matchingFakes(l,!0));if(n)return n}else this.fakes=[];var e=this,t=this.instantiateFake();return t.matchingArguments=l,t.parent=this,push$3(this.fakes,t),e.defaultBehavior&&e.defaultBehavior.promiseLibrary&&(t.defaultBehavior=t.defaultBehavior||createBehavior$1(t),t.defaultBehavior.promiseLibrary=e.defaultBehavior.promiseLibrary),t.withArgs=function(){return e.withArgs.apply(e,arguments)},forEach$2(e.args,function(l,n){t.matches(l)&&(incrementCallCount.call(t),push$3(t.thisValues,e.thisValues[n]),push$3(t.args,l),push$3(t.returnValues,e.returnValues[n]),push$3(t.exceptions,e.exceptions[n]),push$3(t.callIds,e.callIds[n]))}),createCallProperties.call(t),t},matchingFakes:function(l,n){return filter$1.call(this.fakes||[],function(e){return e.matches(l,n)})},matches:function(l,n){var e=this.matchingArguments;if(e.length<=l.length&&deepEqual$4(slice$5(l,0,e.length),e))return!n||e.length===l.length},printf:function(l){var n,e=this,t=slice$5(arguments,1);return(l||"").replace(/%(.)/g,function(l,u){return"function"==typeof(n=spyApi.formatters[u])?String(n(e,t)):isNaN(parseInt(u,10))?"%"+u:format_1(t[u-1])})}};function delegateToCalls(l,n,e,t,u,r){spyApi[l]=function(){if(!this.called)return!!u&&u.apply(this,arguments);if(void 0!==r&&this.callCount!==r)return!1;for(var o,i=0,a=[],s=0,c=this.callCount;s2)throw new TypeError("stub(obj, 'meth', fn) has been removed, see documentation");if(isEsModule(l))throw new TypeError("ES Modules cannot be stubbed");if(throwOnFalsyObject_1.apply(null,arguments),isNonExistentOwnProperty_1(l,n))throw new TypeError("Cannot stub non-existent own property "+valueToString$7(n));var e=getPropertyDescriptor(l,n),t="object"==typeof l||"function"==typeof l,u=void 0===n&&t,r=!l&&void 0===n,o=t&&void 0!==n&&(void 0===e||"function"!=typeof e.value)&&"undefined"==typeof descriptor,i="object"==typeof l&&void 0!==e&&"function"==typeof e.value?l[n].length:0;if(u)return stubEntireObject_1(stub,l);if(r)return stub.create();var a=stub.create(i);return a.rootObj=l,a.propName=n,a.restore=function(){void 0===e?delete l[n]:Object.defineProperty(l,n,e)},o?a:wrapMethod(l,n,a)}function getParentBehaviour(l){return l.parent&&getCurrentBehavior(l.parent)}function getDefaultBehavior(l){return l.defaultBehavior||getParentBehaviour(l)||behavior.create(l)}function getCurrentBehavior(l){var n=l.behaviors[l.callCount-1];return n&&n.isPresent()?n:getDefaultBehavior(l)}stub.createStubInstance=function(l,n){if("function"!=typeof l)throw new TypeError("The constructor should be a function.");var e=stub(Object.create(l.prototype));return forEach$3(Object.keys(n||{}),function(l){if(!(l in e))throw new Error("Cannot stub "+l+". Property does not exist!");var t=n[l];t&&t.createStubInstance?e[l]=t:e[l].returns(t)}),e};var uuid$1=0,proto$1={create:function(l){var n=function(){var l=slice$7(arguments),e=n.matchingFakes(l);return getCurrentBehavior(pop$1(sort$1(e,function(l,n){return l.matchingArguments.length-n.matchingArguments.length}))||n).invoke(this,arguments)},e=n;return(n=spy_1.create(n,l)).id="stub#"+uuid$1++,n.func=e,extend(n,stub),n.instantiateFake=stub.create,n.displayName="stub",n.toString=functionToString,n.defaultBehavior=null,n.behaviors=[],n},resetBehavior:function(){var l=this.fakes||[];this.defaultBehavior=null,this.behaviors=[],delete this.returnValue,delete this.returnArgAt,delete this.throwArgAt,delete this.resolveArgAt,delete this.fakeFn,this.returnThis=!1,this.resolveThis=!1,forEach$3(l,function(l){l.resetBehavior()})},resetHistory:spy_1.resetHistory,reset:function(){this.resetHistory(),this.resetBehavior()},onCall:function(l){return this.behaviors[l]||(this.behaviors[l]=behavior.create(this)),this.behaviors[l]},onFirstCall:function(){return this.onCall(0)},onSecondCall:function(){return this.onCall(1)},onThirdCall:function(){return this.onCall(2)}};forEach$3(Object.keys(behavior),function(l){hasOwnProperty$6(behavior,l)&&!hasOwnProperty$6(proto$1,l)&&"create"!==l&&"withArgs"!==l&&"invoke"!==l&&(proto$1[l]=behavior.createBehavior(l))}),forEach$3(Object.keys(defaultBehaviors_1),function(l){hasOwnProperty$6(defaultBehaviors_1,l)&&!hasOwnProperty$6(proto$1,l)&&behavior.addBehavior(stub,l,defaultBehaviors_1[l])}),extend(stub,proto$1);var stub_1=stub,arrayProto$b=lib.prototypes.array,spyInvoke=spy_1.invoke,spyCallToString=call$1.toString,match$4=samsam.createMatcher,deepEqual$5=samsam.deepEqual,valueToString$8=lib.valueToString,every$4=arrayProto$b.every,forEach$4=arrayProto$b.forEach,push$4=arrayProto$b.push,slice$8=arrayProto$b.slice;function callCountInWords(l){return 0===l?"never called":"called "+timesInWords(l)}function expectedCallCountInWords(l){var n=l.minCalls,e=l.maxCalls;if("number"==typeof n&&"number"==typeof e){var t=timesInWords(n);return n!==e&&(t="at least "+t+" and at most "+timesInWords(e)),t}return"number"==typeof n?"at least "+timesInWords(n):"at most "+timesInWords(e)}function receivedMinCalls(l){return!("number"==typeof l.minCalls)||l.callCount>=l.minCalls}function receivedMaxCalls(l){return"number"==typeof l.maxCalls&&l.callCount===l.maxCalls}function verifyMatcher(l,n){return match$4.isMatcher(l)&&l.test(n)||!0}var mockExpectation={minCalls:1,maxCalls:1,create:function(l){var n=extend(stub_1.create(),mockExpectation);return delete n.create,n.method=l,n},invoke:function(l,n,e){return this.verifyCallAllowed(n,e),spyInvoke.apply(this,arguments)},atLeast:function(l){if("number"!=typeof l)throw new TypeError("'"+valueToString$8(l)+"' is not number");return this.limitsSet||(this.maxCalls=null,this.limitsSet=!0),this.minCalls=l,this},atMost:function(l){if("number"!=typeof l)throw new TypeError("'"+valueToString$8(l)+"' is not number");return this.limitsSet||(this.minCalls=null,this.limitsSet=!0),this.maxCalls=l,this},never:function(){return this.exactly(0)},once:function(){return this.exactly(1)},twice:function(){return this.exactly(2)},thrice:function(){return this.exactly(3)},exactly:function(l){if("number"!=typeof l)throw new TypeError("'"+valueToString$8(l)+"' is not a number");return this.atLeast(l),this.atMost(l)},met:function(){return!this.failed&&receivedMinCalls(this)},verifyCallAllowed:function(l,n){var e=this.expectedArguments;receivedMaxCalls(this)&&(this.failed=!0,mockExpectation.fail(this.method+" already called "+timesInWords(this.maxCalls))),"expectedThis"in this&&this.expectedThis!==l&&mockExpectation.fail(this.method+" called with "+valueToString$8(l)+" as thisValue, expected "+valueToString$8(this.expectedThis)),"expectedArguments"in this&&(n||mockExpectation.fail(this.method+" received no arguments, expected "+format_1(e)),n.length0?mockExpectation_1.fail(join$6(concat$4(n,e),"\n")):e.length>0&&mockExpectation_1.pass(join$6(concat$4(n,e),"\n")),!0},usingPromise:function(l){return this.promiseLibrary=l,this},invokeMethod:function(l,n,e){var t,u=this.expectations&&this.expectations[l]?this.expectations[l]:[],r=e||[],o=filter$2(u,function(l){return arrayEquals(l.expectedArguments||[],r,l.expectsExactArgCount)}),i=filter$2(o,function(l){return!l.met()&&l.allowsCall(n,e)});if(i.length>0)return i[0].apply(n,e);var a=[],s=0;if(forEach$6(o,function(l){l.allowsCall(n,e)?t=t||l:s+=1}),t&&0===s)return t.apply(n,e);forEach$6(u,function(l){push$5(a," "+String(l))}),unshift(a,"Unexpected call: "+spyCallToString$1.call({proxy:l,args:e}));var c=new Error;if(!c.stack)try{throw c}catch(l){}push$5(this.failures,"Unexpected call: "+spyCallToString$1.call({proxy:l,args:e,stack:c.stack})),mockExpectation_1.fail(join$6(a,"\n"))}});var mock_1=mock,arrayProto$d=lib.prototypes.array,forEach$7=arrayProto$d.forEach,slice$a=arrayProto$d.slice;function getError(l){return l instanceof Error?l:new Error(l)}function cleanProxy(l){return forEach$7(["instantiateFake","callArg","callArgOn","callArgOnWith","callArgWith","invokeCallback","throwArg","withArgs","yield","yieldOn","yieldTo","yieldToOn"],function(n){delete l[n]}),l}var uuid$2=0;function wrapFunc(l){var n=cleanProxy(spy_1(function(){var e=arguments.length>0&&arguments[arguments.length-1]||void 0,t=e&&"function"==typeof e?e:void 0;return n.lastArg=e,n.callback=t,l&&l.apply(this,arguments)}));return n.displayName="fake",n.id="fake#"+uuid$2++,n}function fake(l){if(arguments.length>0&&"function"!=typeof l)throw new TypeError("Expected f argument to be a Function");return wrapFunc(l)}function yieldInternal(l,n){return wrapFunc(function(){var e=arguments[arguments.length-1];if("function"!=typeof e)throw new TypeError("Expected last argument to be a function");l?nextTick$1(function(){e.apply(null,n)}):e.apply(null,n)})}fake.returns=function(l){return wrapFunc(function(){return l})},fake.throws=function(l){return wrapFunc(function(){throw getError(l)})},fake.resolves=function(l){return wrapFunc(function(){return Promise.resolve(l)})},fake.rejects=function(l){return wrapFunc(function(){return Promise.reject(getError(l))})},fake.yields=function(){return yieldInternal(!1,slice$a(arguments))},fake.yieldsAsync=function(){return yieldInternal(!0,slice$a(arguments))};var fake_1=fake,nise=createCommonjsModule(function(module,exports){var f;f=function(){var define;return function(){return function l(n,e,t){function u(o,i){if(!e[o]){if(!n[o]){var a="function"==typeof commonjsRequire&&commonjsRequire;if(!i&&a)return a(o,!0);if(r)return r(o,!0);var s=new Error("Cannot find module '"+o+"'");throw s.code="MODULE_NOT_FOUND",s}var c=e[o]={exports:{}};n[o][0].call(c.exports,function(l){var e=n[o][1][l];return u(e||l)},c,c.exports,l,n,e,t)}return e[o].exports}for(var r="function"==typeof commonjsRequire&&commonjsRequire,o=0;o0&&this.respondWith.apply(this,arguments);var l=this.queue||[],n=l.splice(0,l.length),e=this;n.forEach(function(l){e.processRequest(l)})},processRequest:function(l){try{if(l.aborted)return;var n=this.response||[404,{},""];if(this.responses)for(var e=this.responses.length-1;e>=0;e--)if(c.call(this,this.responses[e],l)){n=this.responses[e].response;break}4!==l.readyState&&(this.log(n,l),l.respond(n[0],n[1],n[2]))}catch(l){this.logError("Fake server request processing",l)}},restore:function(){return this.xhr.restore&&this.xhr.restore.apply(this.xhr,arguments)},getRequest:function(l){return this.requests[l]||null},reset:function(){this.resetBehavior(),this.resetHistory()},resetBehavior:function(){this.responses.length=this.queue.length=0},resetHistory:function(){this.requests.length=this.requestCount=0,this.requestedOnce=this.requestedTwice=this.requestedThrice=this.requested=!1,this.firstRequest=this.secondRequest=this.thirdRequest=this.lastRequest=null}};n.exports=f},{"../configure-logger":1,"../fake-xhr":11,"./format":8,"path-to-regexp":45}],10:[function(l,n,e){e.isSupported=function(){try{return!!new Blob}catch(l){return!1}}()},{}],11:[function(l,n,e){(function(e){var t=l("text-encoding").TextEncoder,u=l("../configure-logger"),r=l("../event"),o=l("just-extend");var i,a="undefined"!=typeof ProgressEvent,s="undefined"!=typeof CustomEvent,c="undefined"!=typeof FormData,f="undefined"!=typeof ArrayBuffer,p=l("./blob").isSupported,h=e.navigator&&"ReactNative"===e.navigator.product,d={XMLHttpRequest:e.XMLHttpRequest};d.GlobalXMLHttpRequest=e.XMLHttpRequest,d.GlobalActiveXObject=e.ActiveXObject,d.supportsActiveX=void 0!==d.GlobalActiveXObject,d.supportsXHR=void 0!==d.GlobalXMLHttpRequest,d.workingXHR=void 0!==(i=e).XMLHttpRequest?i.XMLHttpRequest:!(void 0===i.ActiveXObject)&&function(){return new i.ActiveXObject("MSXML2.XMLHTTP.3.0")},d.supportsTimeout=d.supportsXHR&&"timeout"in new d.GlobalXMLHttpRequest,d.supportsCORS=h||d.supportsXHR&&"withCredentials"in new d.GlobalXMLHttpRequest;var g={"Accept-Charset":!0,"Access-Control-Request-Headers":!0,"Access-Control-Request-Method":!0,"Accept-Encoding":!0,Connection:!0,"Content-Length":!0,Cookie:!0,Cookie2:!0,"Content-Transfer-Encoding":!0,Date:!0,DNT:!0,Expect:!0,Host:!0,"Keep-Alive":!0,Origin:!0,Referer:!0,TE:!0,Trailer:!0,"Transfer-Encoding":!0,Upgrade:!0,"User-Agent":!0,Via:!0};function m(){var l=this;["loadstart","progress","abort","error","load","timeout","loadend"].forEach(function(n){l.addEventListener(n,function(e){var t=l["on"+n];t&&"function"==typeof t&&t.call(this,e)})})}function y(l){m.call(this),this.readyState=y.UNSENT,this.requestHeaders={},this.requestBody=null,this.status=0,this.statusText="",this.upload=new m,this.responseType="",this.response="",this.logError=u(l),d.supportsTimeout&&(this.timeout=0),d.supportsCORS&&(this.withCredentials=!1),"function"==typeof y.onCreate&&y.onCreate(this)}function b(l){if(l.readyState!==y.OPENED)throw new Error("INVALID_STATE_ERR");if(l.sendFlag)throw new Error("INVALID_STATE_ERR")}function v(l,n){return Object.keys(l).filter(function(l){return l.toLowerCase()===n.toLowerCase()})[0]||null}function w(l){return!/^Set-Cookie2?$/i.test(l)}m.prototype=r.EventTarget;var A=function(l,n,e){switch(e.length){case 0:return l[n]();case 1:return l[n](e[0]);case 2:return l[n](e[0],e[1]);case 3:return l[n](e[0],e[1],e[2]);case 4:return l[n](e[0],e[1],e[2],e[3]);case 5:return l[n](e[0],e[1],e[2],e[3],e[4]);default:throw new Error("Unhandled case")}};function E(l){if(l.readyState!==y.OPENED)throw new Error("INVALID_STATE_ERR - "+l.readyState)}function x(l,n){return l instanceof ArrayBuffer?l:new t(n||"utf-8").encode(l).buffer}function C(l){return!l||/(text\/xml)|(application\/xml)|(\+xml)/.test(l)}function _(l){""===l.responseType||"text"===l.responseType?l.response=l.responseText="":l.response=l.responseText=null,l.responseXML=null}function T(l){_(l),l.errorFlag=!0,l.requestHeaders={},l.responseHeaders={},l.readyState!==y.UNSENT&&l.sendFlag&&l.readyState!==y.DONE&&(l.readyStateChange(y.DONE),l.sendFlag=!1)}y.filters=[],y.addFilter=function(l){this.filters.push(l)},y.defake=function(l,n){var e=new d.workingXHR;["open","setRequestHeader","abort","getResponseHeader","getAllResponseHeaders","addEventListener","overrideMimeType","removeEventListener"].forEach(function(n){l[n]=function(){return A(e,n,arguments)}}),l.send=function(){return e.responseType!==l.responseType&&(e.responseType=l.responseType),A(e,"send",arguments)};var t=function(n){n.forEach(function(n){l[n]=e[n]})},u=function(){l.readyState=e.readyState,e.readyState>=y.HEADERS_RECEIVED&&t(["status","statusText"]),e.readyState>=y.LOADING&&(t(["response"]),""!==e.responseType&&"text"!==e.responseType||t(["responseText"])),e.readyState!==y.DONE||""!==e.responseType&&"document"!==e.responseType||t(["responseXML"])},r=function(){l.onreadystatechange&&l.onreadystatechange.call(l,{target:l,currentTarget:l})};e.addEventListener?(e.addEventListener("readystatechange",u),Object.keys(l.eventListeners).forEach(function(n){l.eventListeners[n].forEach(function(l){e.addEventListener(n,l.listener,{capture:l.capture,once:l.once})})}),e.addEventListener("readystatechange",r)):e.onreadystatechange=function(){u(),r()},A(e,"open",n)},y.useFilters=!1,y.parseXML=function(l){if(""!==l)try{if("undefined"!=typeof DOMParser){var n,e=new DOMParser,t="";try{var u=e.parseFromString("INVALID","text/xml").getElementsByTagName("parsererror");u.length&&(t=u[0].namespaceURI)}catch(l){}try{n=e.parseFromString(l,"text/xml")}catch(l){return null}return n.getElementsByTagNameNS(t,"parsererror").length?null:n}var r=new window.ActiveXObject("Microsoft.XMLDOM");return r.async="false",r.loadXML(l),0!==r.parseError.errorCode?null:r}catch(l){}return null},y.statusCodes={100:"Continue",101:"Switching Protocols",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",300:"Multiple Choice",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",307:"Temporary Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Request Entity Too Large",414:"Request-URI Too Long",415:"Unsupported Media Type",416:"Requested Range Not Satisfiable",417:"Expectation Failed",422:"Unprocessable Entity",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported"},o(y.prototype,r.EventTarget,{async:!0,open:function(l,n,e,t,u){if(this.method=l,this.url=n,this.async="boolean"!=typeof e||e,this.username=t,this.password=u,_(this),this.requestHeaders={},this.sendFlag=!1,!0===y.useFilters){var r=arguments;if(y.filters.some(function(l){return l.apply(this,r)}))return void y.defake(this,arguments)}this.readyStateChange(y.OPENED)},readyStateChange:function(l){this.readyState=l;var n,e,t=new r.Event("readystatechange",!1,!1,this);if("function"==typeof this.onreadystatechange)try{this.onreadystatechange(t)}catch(l){this.logError("Fake XHR onreadystatechange handler",l)}this.readyState===y.DONE&&(this.timedOut||this.aborted||0===this.status?(e={loaded:0,total:0},n=(this.timedOut?"timeout":this.aborted&&"abort")||"error"):(e={loaded:100,total:100},n="load"),a&&(this.upload.dispatchEvent(new r.ProgressEvent("progress",e,this)),this.upload.dispatchEvent(new r.ProgressEvent(n,e,this)),this.upload.dispatchEvent(new r.ProgressEvent("loadend",e,this))),this.dispatchEvent(new r.ProgressEvent("progress",e,this)),this.dispatchEvent(new r.ProgressEvent(n,e,this)),this.dispatchEvent(new r.ProgressEvent("loadend",e,this))),this.dispatchEvent(t)},setRequestHeader:function(l,n){if("string"!=typeof n)throw new TypeError("By RFC7230, section 3.2.4, header values should be strings. Got "+typeof n);b(this);var e=!0;if("function"==typeof this.unsafeHeadersEnabled&&(e=this.unsafeHeadersEnabled()),e&&(null!==v(g,l)||/^(Sec-|Proxy-)/i.test(l)))throw new Error('Refused to set unsafe header "'+l+'"');n=function(l){return l.replace(/^[\x09\x0A\x0D\x20]+|[\x09\x0A\x0D\x20]+$/g,"")}(n);var t=v(this.requestHeaders,l);t?this.requestHeaders[t]+=", "+n:this.requestHeaders[l]=n},setStatus:function(l){var n="number"==typeof l?l:200;E(this),this.status=n,this.statusText=y.statusCodes[n]},setResponseHeaders:function(l){E(this);var n=this.responseHeaders={};Object.keys(l).forEach(function(e){n[e]=l[e]}),this.async?this.readyStateChange(y.HEADERS_RECEIVED):this.readyState=y.HEADERS_RECEIVED},send:function(l){if(b(this),!/^(head)$/i.test(this.method)){var n=v(this.requestHeaders,"Content-Type");if(this.requestHeaders[n]){var e=this.requestHeaders[n].split(";");this.requestHeaders[n]=e[0]+";charset=utf-8"}else!c||l instanceof FormData||(this.requestHeaders["Content-Type"]="text/plain;charset=utf-8");this.requestBody=l}if(this.errorFlag=!1,this.sendFlag=this.async,_(this),this.readyStateChange(y.OPENED),"function"==typeof this.onSend&&this.onSend(this),d.supportsTimeout&&"object"==typeof setInterval.clock&&"object"==typeof Date.clock)var t=Date.now(),u=this,o=setInterval(function(){u.readyState===y.UNSENT||u.readyState===y.DONE?clearInterval(o):"number"==typeof u.timeout&&u.timeout>0&&Date.now()>=t+u.timeout&&(u.triggerTimeout(),clearInterval(o))},1);this.dispatchEvent(new r.Event("loadstart",!1,!1,this))},abort:function(){this.aborted=!0,T(this),this.readyState=y.UNSENT},error:function(){_(this),this.errorFlag=!0,this.requestHeaders={},this.responseHeaders={},this.readyStateChange(y.DONE)},triggerTimeout:function(){d.supportsTimeout&&(this.timedOut=!0,T(this))},getResponseHeader:function(l){return this.readyState=y.LOADING)throw new Error("INVALID_STATE_ERR");this.overriddenMimeType=l}});var S={UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4};o(y,S),o(y.prototype,S),n.exports={xhr:d,FakeXMLHttpRequest:y,useFakeXMLHttpRequest:function(){return y.restore=function(l){d.supportsXHR&&(e.XMLHttpRequest=d.GlobalXMLHttpRequest),d.supportsActiveX&&(e.ActiveXObject=d.GlobalActiveXObject),delete y.restore,!0!==l&&delete y.onCreate},d.supportsXHR&&(e.XMLHttpRequest=y),d.supportsActiveX&&(e.ActiveXObject=function(l){return"Microsoft.XMLHTTP"===l||/^Msxml2\.XMLHTTP/i.test(l)?new y:new d.GlobalActiveXObject(l)}),y}}}).call(this,void 0!==commonjsGlobal?commonjsGlobal:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../configure-logger":1,"../event":5,"./blob":10,"just-extend":42,"text-encoding":46}],12:[function(l,n,e){n.exports={fakeServer:l("./fake-server"),fakeServerWithClock:l("./fake-server/fake-server-with-clock"),fakeXhr:l("./fake-xhr")}},{"./fake-server":9,"./fake-server/fake-server-with-clock":7,"./fake-xhr":11}],13:[function(l,n,e){n.exports=function(l,n){var e=!0;try{l.forEach(function(){if(!n.apply(this,arguments))throw new Error})}catch(l){e=!1}return e}},{}],14:[function(l,n,e){n.exports=function(l){return l.displayName||l.name||(String(l).match(/function ([^\s\(]+)/)||[])[1]}},{}],15:[function(l,n,e){n.exports={every:l("./every"),functionName:l("./function-name"),prototypes:l("./prototypes"),typeOf:l("./type-of"),valueToString:l("./value-to-string")}},{"./every":13,"./function-name":14,"./prototypes":19,"./type-of":22,"./value-to-string":23}],16:[function(l,n,e){var t=l("./copy-prototype");n.exports=t(Array.prototype)},{"./copy-prototype":17}],17:[function(l,n,e){var t=Function.call;n.exports=function(l){return Object.getOwnPropertyNames(l).reduce(function(n,e){return"size"!==e&&"caller"!==e&&"callee"!==e&&"arguments"!==e&&"function"==typeof l[e]&&(n[e]=t.bind(l[e])),n},Object.create(null))}},{}],18:[function(l,n,e){var t=l("./copy-prototype");n.exports=t(Function.prototype)},{"./copy-prototype":17}],19:[function(l,n,e){n.exports={array:l("./array"),function:l("./function"),object:l("./object"),string:l("./string")}},{"./array":16,"./function":18,"./object":20,"./string":21}],20:[function(l,n,e){var t=l("./copy-prototype");n.exports=t(Object.prototype)},{"./copy-prototype":17}],21:[function(l,n,e){var t=l("./copy-prototype");n.exports=t(String.prototype)},{"./copy-prototype":17}],22:[function(l,n,e){var t=l("type-detect");n.exports=function(l){return t(l).toLowerCase()}},{"type-detect":49}],23:[function(l,n,e){n.exports=function(l){return l&&l.toString?l.toString():String(l)}},{}],24:[function(l,n,e){(function(e){var t=l("@sinonjs/samsam"),u={excludeConstructors:["Object",/^.$/],quoteStrings:!0,limitChildrenCount:0},r=[];function o(l){if(!l)return"";if(l.displayName)return l.displayName;if(l.name)return l.name;var n=l.toString().match(/function\s+([^\(]+)/m);return n&&n[1]||""}function i(l,n){var e,t,r=o(n&&n.constructor),i=l.excludeConstructors||u.excludeConstructors||[];for(e=0,t=i.length;e0?Math.min(this.limitChildrenCount,l.length):l.length,t=0;t0?Math.min(this.limitChildrenCount,h.length):h.length,o=0;o80?m+"{\n "+y+p.join(",\n "+y)+"\n"+y+"}":m+"{ "+p.join(", ")+" }"},s.element=function(l){var n,e,t,u,r,o=l.tagName.toLowerCase(),i=l.attributes,a=[];for(t=0,u=i.length;t0?" ":""),c=l.innerHTML||"";return c.length>20&&(c=c.substr(0,20)+"[...]"),(s+a.join(" ")+">"+c+"").replace(/ contentEditable="inherit"/,"")},c.prototype={functionName:o,configure:function(l){return new c(l)},constructorName:function(l){return i(this,l)},ascii:function(l,n,e){return s(this,l,n,e)}},n.exports=c.prototype}).call(this,void 0!==commonjsGlobal?commonjsGlobal:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"@sinonjs/samsam":40}],25:[function(l,n,e){var t=l("./get-class"),u=l("./identical"),r=l("./is-arguments"),o=l("./is-date"),i=l("./is-element"),a=l("./is-nan"),s=l("./is-object"),c=l("./is-set"),f=l("./is-subset"),p=l("./get-class-name"),h=Array.prototype.every,d=Date.prototype.getTime,g=Object.prototype.hasOwnProperty,m=Array.prototype.indexOf,y=Object.keys;function b(l,n,e){var b=[],v=[],w=[],A=[],E={};return function l(n,x,C,_){if(e&&e.isMatcher(x))return e.isMatcher(n)?n===x:x.test(n);var T=typeof n,S=typeof x;if(n===x||a(n)||a(x)||null==n||null==x||"object"!==T||"object"!==S)return u(n,x);if(i(n)||i(x))return!1;var k=o(n),F=o(x);if((k||F)&&(!k||!F||d.call(n)!==d.call(x)))return!1;if(n instanceof RegExp&&x instanceof RegExp&&n.toString()!==x.toString())return!1;if(n instanceof Error&&x instanceof Error&&(n.constructor!==x.constructor||n.message!==x.message||n.stack!==x.stack))return!1;var D=t(n),P=t(x),j=y(n),O=y(x),B=p(n),$=p(x);if(r(n)||r(x)){if(n.length!==x.length)return!1}else if(T!==S||D!==P||j.length!==O.length||B&&$&&B!==$)return!1;return c(n)||c(x)?!(!c(n)||!c(x)||n.size!==x.size)&&f(n,x,l):h.call(j,function(e){if(!g.call(x,e))return!1;var t=n[e],u=x[e],r=s(t),o=s(u),i=r?m.call(b,t):-1,a=o?m.call(v,u):-1,c=-1!==i?w[i]:C+"["+JSON.stringify(e)+"]",f=-1!==a?A[a]:_+"["+JSON.stringify(e)+"]",p=c+f;return!!E[p]||(-1===i&&r&&(b.push(t),w.push(c)),-1===a&&o&&(v.push(u),A.push(f)),r&&o&&(E[p]=!0),l(t,u,c,f))})}(l,n,"$1","$2")}b.use=function(l){return function(n,e){return b(n,e,l)}},n.exports=b},{"./get-class":27,"./get-class-name":26,"./identical":28,"./is-arguments":29,"./is-date":30,"./is-element":31,"./is-nan":32,"./is-object":34,"./is-set":35,"./is-subset":36}],26:[function(l,n,e){var t=/function (\w+)\s*\(/;n.exports=function(l){if(l.constructor&&"name"in l.constructor)return l.constructor.name;if("function"==typeof l.constructor){var n=l.constructor.toString().match(t);if(n.length>1)return n[1]}return null}},{}],27:[function(l,n,e){var t=Object.prototype;n.exports=function(l){return t.toString.call(l).split(/[ \]]/)[1]}},{}],28:[function(l,n,e){var t=l("./is-nan"),u=l("./is-neg-zero");n.exports=function(l,n){return!!(l===n||t(l)&&t(n))&&(0!==l||u(l)===u(n))}},{"./is-nan":32,"./is-neg-zero":33}],29:[function(l,n,e){var t=l("./get-class");n.exports=function(l){if("Arguments"===t(l))return!0;if("object"!=typeof l||"number"!=typeof l.length||"Array"===t(l))return!1;if("function"==typeof l.callee)return!0;try{l[l.length]=6,delete l[l.length]}catch(l){return!0}return!1}},{"./get-class":27}],30:[function(l,n,e){n.exports=function(l){return l instanceof Date}},{}],31:[function(l,n,e){var t="undefined"!=typeof document&&document.createElement("div");n.exports=function(l){if(!l||1!==l.nodeType||!t)return!1;try{l.appendChild(t),l.removeChild(t)}catch(l){return!1}return!0}},{}],32:[function(l,n,e){n.exports=function(l){return"number"==typeof l&&l!=l}},{}],33:[function(l,n,e){n.exports=function(l){return 0===l&&1/l==-1/0}},{}],34:[function(l,n,e){n.exports=function(l){return!("object"!=typeof l||null===l||l instanceof Boolean||l instanceof Date||l instanceof Error||l instanceof Number||l instanceof RegExp||l instanceof String)}},{}],35:[function(l,n,e){n.exports=function(l){return"undefined"!=typeof Set&&l instanceof Set||!1}},{}],36:[function(l,n,e){n.exports=function(l,n,e){var t=!0;return l.forEach(function(l){var u=!1;n.forEach(function(n){e(n,l)&&(u=!0)}),t=t&&u}),t}},{}],37:[function(l,n,e){var t=l("@sinonjs/commons").prototypes.string.slice,u=l("@sinonjs/commons").typeOf;n.exports=function(l){var n="";function e(l){return"string"==typeof l?"'"+l+"'":String(l)}return"map"===u(l)?(l.forEach(function(l,t){n+="["+e(t)+","+e(l)+"],"}),n=t(n,0,-1)):(l.forEach(function(l){n+=e(l)+","}),n=t(n,0,-1))}},{"@sinonjs/commons":15}],38:[function(l,n,e){var t=l("./deep-equal").use(s),u=l("./get-class"),r=l("./is-date"),o=l("./is-set"),i=l("./is-subset"),a=l("./matcher");function s(l,n){if(n&&"function"==typeof n.test)return n.test(l);if("function"==typeof n)return!0===n(l);if("string"==typeof n)return n=n.toLowerCase(),("string"==typeof l||!!l)&&String(l).toLowerCase().indexOf(n)>=0;if("number"==typeof n)return n===l;if("boolean"==typeof n)return n===l;if(void 0===n)return void 0===l;if(null===n)return null===l;if(null===l)return!1;if(o(l))return i(n,l,s);if("Array"===u(l)&&"Array"===u(n))return function(l,n,e){if(0===n.length)return!0;var t,u,r,o;for(t=0,u=l.length;t=u)return!1;if(!e(l[t+r],n[r]))return!1}return!0}return!1}(l,n,s);if(r(n))return r(l)&&l.getTime()===n.getTime();if(n&&"object"==typeof n){if(n===l)return!0;if("object"!=typeof l)return!1;var e;for(e in n){var a=l[e];if(void 0===a&&"function"==typeof l.getAttribute&&(a=l.getAttribute(e)),null===n[e]||void 0===n[e]){if(a!==n[e])return!1}else if(void 0===a||!t(a,n[e]))return!1}return!0}throw new Error("Matcher was not a string, a number, a function, a boolean or an object")}Object.keys(a).forEach(function(l){s[l]=a[l]}),n.exports=s},{"./deep-equal":25,"./get-class":27,"./is-date":30,"./is-set":35,"./is-subset":36,"./matcher":39}],39:[function(l,n,e){var t=l("@sinonjs/commons").prototypes.array,u=l("./deep-equal").use(_),r=l("@sinonjs/commons").every,o=l("@sinonjs/commons").functionName,i=l("lodash.get"),a=l("./iterable-to-string"),s=l("@sinonjs/commons").prototypes.object,c=l("@sinonjs/commons").prototypes.string,f=l("@sinonjs/commons").typeOf,p=l("@sinonjs/commons").valueToString,h=t.indexOf,d=t.every,g=t.join,m=t.map,y=t.some,b=s.hasOwnProperty,v=s.isPrototypeOf,w=c.indexOf;function A(l,n,e){var t=f(l);if(t!==n)throw new TypeError("Expected type of "+e+" to be "+n+", but was "+t)}var E={toString:function(){return this.message}};function x(l){return v(E,l)}var C={function:function(l,n,e){l.test=n,l.message=e||"match("+o(n)+")"},number:function(l,n){l.test=function(l){return n==l}},object:function(l,n){var e;return"function"==typeof n.test?(l.test=function(l){return!0===n.test(l)},l.message="match("+o(n.test)+")",l):(e=m(Object.keys(n),function(l){return l+": "+p(n[l])}),l.test=function(l){return function l(n,e){return null!=n&&d(Object.keys(e),function(t){var r=e[t],o=n[t];if(x(r)){if(!r.test(o))return!1}else if("object"===f(r)){if(!l(o,r))return!1}else if(!u(o,r))return!1;return!0})}(l,n)},l.message="match("+g(e,", ")+")",l)},regexp:function(l,n){l.test=function(l){return"string"==typeof l&&n.test(l)}},string:function(l,n){l.test=function(l){return"string"==typeof l&&-1!==w(l,n)},l.message='match("'+n+'")'}};function _(l,n){var e=Object.create(E),t=f(l);return t in C?C[t](e,l,n):e.test=function(n){return u(n,l)},e.message||(e.message="match("+p(l)+")"),e}function T(l,n){return function(e,t){A(e,"string","property");var r=1===arguments.length,o=n+'("'+e+'"';return r||(o+=", "+p(t)),_(function(n){return!(null==n||!l(n,e))&&(r||u(n[e],t))},o+=")")}}E.or=function(l){if(!arguments.length)throw new TypeError("Matcher expected");x(l)||(l=_(l));var n=this,e=Object.create(E);return e.test=function(e){return n.test(e)||l.test(e)},e.message=n.message+".or("+l.message+")",e},E.and=function(l){if(!arguments.length)throw new TypeError("Matcher expected");x(l)||(l=_(l));var n=this,e=Object.create(E);return e.test=function(e){return n.test(e)&&l.test(e)},e.message=n.message+".and("+l.message+")",e},_.isMatcher=x,_.any=_(function(){return!0},"any"),_.defined=_(function(l){return null!=l},"defined"),_.truthy=_(function(l){return!!l},"truthy"),_.falsy=_(function(l){return!l},"falsy"),_.same=function(l){return _(function(n){return l===n},"same("+p(l)+")")},_.in=function(l){if(!Array.isArray(l))throw new TypeError("array expected");return _(function(n){return y(l,function(l){return l===n})},"in("+p(l)+")")},_.typeOf=function(l){return A(l,"string","type"),_(function(n){return f(n)===l},'typeOf("'+l+'")')},_.instanceOf=function(l){return"undefined"==typeof Symbol||void 0===Symbol.hasInstance?A(l,"function","type"):function(l,n,e,t){if(null==l[n])throw new TypeError("Expected "+e+" to have method "+t)}(l,Symbol.hasInstance,"type","[Symbol.hasInstance]"),_(function(n){return n instanceof l},"instanceOf("+(o(l)||Object.prototype.toString.call(l))+")")},_.has=T(function(l,n){return"object"==typeof l?n in l:void 0!==l[n]},"has"),_.hasOwn=T(function(l,n){return b(l,n)},"hasOwn"),_.hasNested=function(l,n){A(l,"string","property");var e=1===arguments.length,t='hasNested("'+l+'"';return e||(t+=", "+p(n)),_(function(t){return null!=t&&void 0!==i(t,l)&&(e||u(i(t,l),n))},t+=")")},_.every=function(l){if(!x(l))throw new TypeError("Matcher expected");return _(function(n){return"object"===f(n)?r(Object.keys(n),function(e){return l.test(n[e])}):!!n&&"function"===f(n.forEach)&&r(n,function(n){return l.test(n)})},"every("+l.message+")")},_.some=function(l){if(!x(l))throw new TypeError("Matcher expected");return _(function(n){return"object"===f(n)?!r(Object.keys(n),function(e){return!l.test(n[e])}):!!n&&"function"===f(n.forEach)&&!r(n,function(n){return!l.test(n)})},"some("+l.message+")")},_.array=_.typeOf("array"),_.array.deepEquals=function(l){return _(function(n){var e=n.length===l.length;return"array"===f(n)&&e&&r(n,function(n,e){return l[e]===n})},"deepEquals(["+a(l)+"])")},_.array.startsWith=function(l){return _(function(n){return"array"===f(n)&&r(l,function(l,e){return n[e]===l})},"startsWith(["+a(l)+"])")},_.array.endsWith=function(l){return _(function(n){var e=n.length-l.length;return"array"===f(n)&&r(l,function(l,t){return n[e+t]===l})},"endsWith(["+a(l)+"])")},_.array.contains=function(l){return _(function(n){return"array"===f(n)&&r(l,function(l){return-1!==h(n,l)})},"contains(["+a(l)+"])")},_.map=_.typeOf("map"),_.map.deepEquals=function(l){return _(function(n){var e=n.size===l.size;return"map"===f(n)&&e&&r(n,function(n,e){return l.has(e)&&l.get(e)===n})},"deepEquals(Map["+a(l)+"])")},_.map.contains=function(l){return _(function(n){return"map"===f(n)&&r(l,function(l,e){return n.has(e)&&n.get(e)===l})},"contains(Map["+a(l)+"])")},_.set=_.typeOf("set"),_.set.deepEquals=function(l){return _(function(n){var e=n.size===l.size;return"set"===f(n)&&e&&r(n,function(n){return l.has(n)})},"deepEquals(Set["+a(l)+"])")},_.set.contains=function(l){return _(function(n){return"set"===f(n)&&r(l,function(l){return n.has(l)})},"contains(Set["+a(l)+"])")},_.bool=_.typeOf("boolean"),_.number=_.typeOf("number"),_.string=_.typeOf("string"),_.object=_.typeOf("object"),_.func=_.typeOf("function"),_.regexp=_.typeOf("regexp"),_.date=_.typeOf("date"),_.symbol=_.typeOf("symbol"),n.exports=_},{"./deep-equal":25,"./iterable-to-string":37,"@sinonjs/commons":15,"lodash.get":43}],40:[function(l,n,e){var t=l("./identical"),u=l("./is-arguments"),r=l("./is-element"),o=l("./is-neg-zero"),i=l("./match"),a=l("./deep-equal").use(i),s=l("./matcher");n.exports={createMatcher:s,deepEqual:a,isArguments:u,isElement:r,isNegZero:o,identical:t,match:i}},{"./deep-equal":25,"./identical":28,"./is-arguments":29,"./is-element":31,"./is-neg-zero":33,"./match":38,"./matcher":39}],41:[function(l,n,e){n.exports=Array.isArray||function(l){return"[object Array]"==Object.prototype.toString.call(l)}},{}],42:[function(l,n,e){n.exports=function l(){var n=[].slice.call(arguments);var e=!1;"boolean"==typeof n[0]&&(e=n.shift());var t=n[0];if(!t||"object"!=typeof t&&"function"!=typeof t)throw new Error("extendee must be an object");var u=n.slice(1);var r=u.length;for(var o=0;o-1},B.prototype.set=function(l,n){var e=this.__data__,t=L(e,l);return t<0?e.push([l,n]):e[t][1]=n,this},$.prototype.clear=function(){this.__data__={hash:new O,map:new(F||B),string:new O}},$.prototype.delete=function(l){return R(this,l).delete(l)},$.prototype.get=function(l){return R(this,l).get(l)},$.prototype.has=function(l){return R(this,l).has(l)},$.prototype.set=function(l,n){return R(this,l).set(l,n),this};var q=H(function(l){var n;l=null==(n=l)?"":function(l){if("string"==typeof l)return l;if(V(l))return j?j.call(l):"";var n=l+"";return"0"==n&&1/l==-u?"-0":n}(n);var e=[];return c.test(l)&&e.push(""),l.replace(f,function(l,n,t,u){e.push(t?u.replace(p,"$1"):n||l)}),e});function U(l){if("string"==typeof l||V(l))return l;var n=l+"";return"0"==n&&1/l==-u?"-0":n}function H(l,n){if("function"!=typeof l||n&&"function"!=typeof n)throw new TypeError(e);var t=function(){var e=arguments,u=n?n.apply(this,e):e[0],r=t.cache;if(r.has(u))return r.get(u);var o=l.apply(this,e);return t.cache=r.set(u,o),o};return t.cache=new(H.Cache||$),t}H.Cache=$;var z=Array.isArray;function W(l){var n=typeof l;return!!l&&("object"==n||"function"==n)}function V(l){return"symbol"==typeof l||function(l){return!!l&&"object"==typeof l}(l)&&_.call(l)==i}n.exports=function(l,n,e){var t=null==l?void 0:N(l,n);return void 0===t?e:t}}).call(this,void 0!==commonjsGlobal?commonjsGlobal:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],44:[function(require,module,exports){(function(global){var userAgent=global.navigator&&global.navigator.userAgent,isRunningInIE=userAgent&&userAgent.indexOf("MSIE ")>-1,maxTimeout=Math.pow(2,31)-1;isRunningInIE&&(global.setTimeout=global.setTimeout,global.clearTimeout=global.clearTimeout,global.setInterval=global.setInterval,global.clearInterval=global.clearInterval,global.Date=global.Date),void 0!==global.setImmediate&&(global.setImmediate=global.setImmediate,global.clearImmediate=global.clearImmediate);var NOOP=function(){},timeoutResult=setTimeout(NOOP,0),addTimerReturnsObject="object"==typeof timeoutResult,hrtimePresent=global.process&&"function"==typeof global.process.hrtime,nextTickPresent=global.process&&"function"==typeof global.process.nextTick,performancePresent=global.performance&&"function"==typeof global.performance.now,requestAnimationFramePresent=global.requestAnimationFrame&&"function"==typeof global.requestAnimationFrame,cancelAnimationFramePresent=global.cancelAnimationFrame&&"function"==typeof global.cancelAnimationFrame;clearTimeout(timeoutResult);var NativeDate=Date,uniqueTimerId=1;function parseTime(l){if(!l)return 0;var n,e=l.split(":"),t=e.length,u=t,r=0;if(t>3||!/^(\d\d:){0,2}\d\d?$/.test(l))throw new Error("tick only understands numbers, 'm:s' and 'h:m:s'. Each part must be two digits");for(;u--;){if((n=parseInt(e[u],10))>=60)throw new Error("Invalid time "+l);r+=n*Math.pow(60,t-u-1)}return 1e3*r}function fixedFloor(l){return l>=0?Math.floor(l):Math.ceil(l)}function fixedModulo(l,n){return(l%n+n)%n}function getEpoch(l){if(!l)return 0;if("function"==typeof l.getTime)return l.getTime();if("number"==typeof l)return l;throw new TypeError("now should be milliseconds since UNIX epoch")}function inRange(l,n,e){return e&&e.callAt>=l&&e.callAt<=n}function mirrorDateProperties(l,n){var e;for(e in n)n.hasOwnProperty(e)&&(l[e]=n[e]);return n.now?l.now=function(){return l.clock.now}:delete l.now,n.toSource?l.toSource=function(){return n.toSource()}:delete l.toSource,l.toString=function(){return n.toString()},l.prototype=n.prototype,l.parse=n.parse,l.UTC=n.UTC,l.prototype.toUTCString=n.prototype.toUTCString,l}function createDate(){return mirrorDateProperties(function l(n,e,t,u,r,o,i){switch(arguments.length){case 0:return new NativeDate(l.clock.now);case 1:return new NativeDate(n);case 2:return new NativeDate(n,e);case 3:return new NativeDate(n,e,t);case 4:return new NativeDate(n,e,t,u);case 5:return new NativeDate(n,e,t,u,r);case 6:return new NativeDate(n,e,t,u,r,o);default:return new NativeDate(n,e,t,u,r,o,i)}},NativeDate)}function enqueueJob(l,n){l.jobs||(l.jobs=[]),l.jobs.push(n)}function runJobs(l){if(l.jobs){for(var n=0;nmaxTimeout?1:n.delay,n.delay=Math.max(0,n.delay)),n.hasOwnProperty("interval")&&(n.type="Interval",n.interval=n.interval>maxTimeout?1:n.interval),n.hasOwnProperty("animation")&&(n.type="AnimationFrame",n.animation=!0),l.timers||(l.timers={}),n.id=uniqueTimerId++,n.createdAt=l.now,n.callAt=l.now+(parseInt(n.delay)||(l.duringTick?1:0)),l.timers[n.id]=n,addTimerReturnsObject?{id:n.id,ref:NOOP,unref:NOOP}:n.id}function compareTimers(l,n){return l.callAtn.callAt?1:l.immediate&&!n.immediate?-1:!l.immediate&&n.immediate?1:l.createdAtn.createdAt?1:l.idn.id?1:void 0}function firstTimerInRange(l,n,e){var t,u=l.timers,r=null;for(t in u)u.hasOwnProperty(t)&&(!inRange(n,e,u[t])||r&&1!==compareTimers(r,u[t])||(r=u[t]));return r}function firstTimer(l){var n,e=l.timers,t=null;for(n in e)e.hasOwnProperty(n)&&(t&&1!==compareTimers(t,e[n])||(t=e[n]));return t}function lastTimer(l){var n,e=l.timers,t=null;for(n in e)e.hasOwnProperty(n)&&(t&&-1!==compareTimers(t,e[n])||(t=e[n]));return t}function callTimer(clock,timer){"number"==typeof timer.interval?clock.timers[timer.id].callAt+=timer.interval:delete clock.timers[timer.id],"function"==typeof timer.func?timer.func.apply(null,timer.args):eval(timer.func)}function clearTimer(l,n,e){if(n&&(l.timers||(l.timers=[]),"object"==typeof n&&(n=n.id),l.timers.hasOwnProperty(n))){var t=l.timers[n];if(t.type!==e){var u="AnimationFrame"===e?"cancelAnimationFrame":"clear"+e,r="AnimationFrame"===t.type?"requestAnimationFrame":"set"+t.type;throw new Error("Cannot clear timer: timer created with "+r+"() but cleared with "+u+"()")}delete l.timers[n]}}function uninstall(l,n,e){var t,u,r;for(u=0,r=l.methods.length;u1||l instanceof Date||Array.isArray(l)||"number"==typeof l)throw new TypeError("lolex.install called with "+String(l)+" lolex 2.0+ requires an object parameter - see https://github.com/sinonjs/lolex");var n,e;(l=void 0!==l?l:{}).shouldAdvanceTime=l.shouldAdvanceTime||!1,l.advanceTimeDelta=l.advanceTimeDelta||20;var t=l.target||global,u=createClock(l.now,l.loopLimit);for(u.uninstall=function(){return uninstall(u,t,l)},u.methods=l.toFake||[],0===u.methods.length&&(u.methods=keys(timers).filter(function(l){return"nextTick"!==l})),n=0,e=u.methods.length;n>6*e)+u];e>0;){var o=n>>6*(e-1);r.push(128|63&o),e-=1}return r}}function k(l,n){var e=n.fatal;this.handler=function(n,t){if(t===a)return c;if(o(t))return t;var u=l[t-128];return null===u?f(e):u}}function F(l,n){n.fatal;this.handler=function(n,e){if(e===a)return c;if(i(e))return e;var t=A(e,l);return null===t&&p(e),t+128}}function D(l){var n=l.fatal,e=0,u=0,r=0;this.handler=function(l,i){if(i===a&&0===e&&0===u&&0===r)return c;var s;if(i!==a||0===e&&0===u&&0===r||(e=0,u=0,r=0,f(n)),0!==r){s=null,t(i,48,57)&&(s=function(l){if(l>39419&&l<189e3||l>1237575)return null;if(7457===l)return 59335;var n,e=0,t=0,u=E("gb18030-ranges");for(n=0;n>8,t=255&l;return n?[e,t]:[t,e]}function H(l,n){var e=n.fatal,u=null,r=null;this.handler=function(n,o){if(o===a&&(null!==u||null!==r))return f(e);if(o===a&&null===u&&null===r)return c;if(null===u)return u=o,null;var i;if(i=l?(u<<8)+o:(o<<8)+u,u=null,null!==r){var s=r;return r=null,t(i,56320,57343)?65536+1024*(s-55296)+(i-56320):(n.prepend(U(i,l)),f(e))}return t(i,55296,56319)?(r=i,null):t(i,56320,57343)?f(e):i}}function z(l,n){n.fatal;this.handler=function(n,e){if(e===a)return c;if(t(e,0,65535))return U(e,l);var u=U(55296+(e-65536>>10),l),r=U(56320+(e-65536&1023),l);return u.concat(r)}}function W(l){l.fatal;this.handler=function(l,n){return n===a?c:o(n)?n:63360+n-128}}function V(l){l.fatal;this.handler=function(l,n){return n===a?c:i(n)?n:t(n,63360,63487)?n-63360+128:p(n)}}Object.defineProperty&&(Object.defineProperty(C.prototype,"encoding",{get:function(){return this._encoding.name.toLowerCase()}}),Object.defineProperty(C.prototype,"fatal",{get:function(){return"fatal"===this._error_mode}}),Object.defineProperty(C.prototype,"ignoreBOM",{get:function(){return this._ignoreBOM}})),C.prototype.decode=function(l,n){var e;e="object"==typeof l&&l instanceof ArrayBuffer?new Uint8Array(l):"object"==typeof l&&"buffer"in l&&l.buffer instanceof ArrayBuffer?new Uint8Array(l.buffer,l.byteOffset,l.byteLength):new Uint8Array(0),n=r(n),this._do_not_flush||(this._decoder=v[this._encoding.name]({fatal:"fatal"===this._error_mode}),this._BOMseen=!1),this._do_not_flush=Boolean(n.stream);for(var t,u=new s(e),o=[];;){var i=u.read();if(i===a)break;if((t=this._decoder.handler(u,i))===c)break;null!==t&&(Array.isArray(t)?o.push.apply(o,t):o.push(t))}if(!this._do_not_flush){do{if((t=this._decoder.handler(u,u.read()))===c)break;null!==t&&(Array.isArray(t)?o.push.apply(o,t):o.push(t))}while(!u.endOfStream());this._decoder=null}return function(l){var n,e;return n=["UTF-8","UTF-16LE","UTF-16BE"],e=this._encoding.name,-1===n.indexOf(e)||this._ignoreBOM||this._BOMseen||(l.length>0&&65279===l[0]?(this._BOMseen=!0,l.shift()):l.length>0&&(this._BOMseen=!0)),function(l){for(var n="",e=0;e>10),56320+(1023&t)))}return n}(l)}.call(this,o)},Object.defineProperty&&Object.defineProperty(_.prototype,"encoding",{get:function(){return this._encoding.name.toLowerCase()}}),_.prototype.encode=function(l,n){l=void 0===l?"":String(l),n=r(n),this._do_not_flush||(this._encoder=b[this._encoding.name]({fatal:"fatal"===this._fatal})),this._do_not_flush=Boolean(n.stream);for(var e,t=new s(function(l){for(var n=String(l),e=n.length,t=0,u=[];t57343)u.push(r);else if(56320<=r&&r<=57343)u.push(65533);else if(55296<=r&&r<=56319)if(t===e-1)u.push(65533);else{var o=n.charCodeAt(t+1);if(56320<=o&&o<=57343){var i=1023&r,a=1023&o;u.push(65536+(i<<10)+a),t+=1}else u.push(65533)}t+=1}return u}(l)),u=[];;){var o=t.read();if(o===a)break;if((e=this._encoder.handler(t,o))===c)break;Array.isArray(e)?u.push.apply(u,e):u.push(e)}if(!this._do_not_flush){for(;(e=this._encoder.handler(t,t.read()))!==c;)Array.isArray(e)?u.push.apply(u,e):u.push(e);this._encoder=null}return new Uint8Array(u)},b["UTF-8"]=function(l){return new S(l)},v["UTF-8"]=function(l){return new T(l)},"encoding-indexes"in e&&d.forEach(function(l){"Legacy single-byte encodings"===l.heading&&l.encodings.forEach(function(l){var n=l.name,e=E(n.toLowerCase());v[n]=function(l){return new k(e,l)},b[n]=function(l){return new F(e,l)}})}),v.GBK=function(l){return new D(l)},b.GBK=function(l){return new P(l,!0)},b.gb18030=function(l){return new P(l)},v.gb18030=function(l){return new D(l)},b.Big5=function(l){return new O(l)},v.Big5=function(l){return new j(l)},b["EUC-JP"]=function(l){return new $(l)},v["EUC-JP"]=function(l){return new B(l)},b["ISO-2022-JP"]=function(l){return new N(l)},v["ISO-2022-JP"]=function(l){return new L(l)},b.Shift_JIS=function(l){return new R(l)},v.Shift_JIS=function(l){return new M(l)},b["EUC-KR"]=function(l){return new q(l)},v["EUC-KR"]=function(l){return new I(l)},b["UTF-16BE"]=function(l){return new z(!0,l)},v["UTF-16BE"]=function(l){return new H(!0,l)},b["UTF-16LE"]=function(l){return new z(!1,l)},v["UTF-16LE"]=function(l){return new H(!1,l)},b["x-user-defined"]=function(l){return new V(l)},v["x-user-defined"]=function(l){return new W(l)},e.TextEncoder||(e.TextEncoder=_),e.TextDecoder||(e.TextDecoder=C),void 0!==n&&n.exports&&(n.exports={TextEncoder:e.TextEncoder,TextDecoder:e.TextDecoder,EncodingIndexes:e["encoding-indexes"]})}(this||{})},{"./encoding-indexes.js":47}],49:[function(l,n,e){(function(l){!function(l,t){"object"==typeof e&&void 0!==n?n.exports=t():"function"==typeof define&&define.amd?define(t):l.typeDetect=t()}(this,function(){var n="function"==typeof Promise,e="object"==typeof self?self:l,t="undefined"!=typeof Symbol,u="undefined"!=typeof Map,r="undefined"!=typeof Set,o="undefined"!=typeof WeakMap,i="undefined"!=typeof WeakSet,a="undefined"!=typeof DataView,s=t&&void 0!==Symbol.iterator,c=t&&void 0!==Symbol.toStringTag,f=r&&"function"==typeof Set.prototype.entries,p=u&&"function"==typeof Map.prototype.entries,h=f&&Object.getPrototypeOf((new Set).entries()),d=p&&Object.getPrototypeOf((new Map).entries()),g=s&&"function"==typeof Array.prototype[Symbol.iterator],m=g&&Object.getPrototypeOf([][Symbol.iterator]()),y=s&&"function"==typeof String.prototype[Symbol.iterator],b=y&&Object.getPrototypeOf(""[Symbol.iterator]()),v=8,w=-1;return function(l){var t=typeof l;if("object"!==t)return t;if(null===l)return"null";if(l===e)return"global";if(Array.isArray(l)&&(!1===c||!(Symbol.toStringTag in l)))return"Array";if("object"==typeof window&&null!==window){if("object"==typeof window.location&&l===window.location)return"Location";if("object"==typeof window.document&&l===window.document)return"Document";if("object"==typeof window.navigator){if("object"==typeof window.navigator.mimeTypes&&l===window.navigator.mimeTypes)return"MimeTypeArray";if("object"==typeof window.navigator.plugins&&l===window.navigator.plugins)return"PluginArray"}if(("function"==typeof window.HTMLElement||"object"==typeof window.HTMLElement)&&l instanceof window.HTMLElement){if("BLOCKQUOTE"===l.tagName)return"HTMLQuoteElement";if("TD"===l.tagName)return"HTMLTableDataCellElement";if("TH"===l.tagName)return"HTMLTableHeaderCellElement"}}var s=c&&l[Symbol.toStringTag];if("string"==typeof s)return s;var f=Object.getPrototypeOf(l);return f===RegExp.prototype?"RegExp":f===Date.prototype?"Date":n&&f===Promise.prototype?"Promise":r&&f===Set.prototype?"Set":u&&f===Map.prototype?"Map":i&&f===WeakSet.prototype?"WeakSet":o&&f===WeakMap.prototype?"WeakMap":a&&f===DataView.prototype?"DataView":u&&f===d?"Map Iterator":r&&f===h?"Set Iterator":g&&f===m?"Array Iterator":y&&f===b?"String Iterator":null===f?"Object":Object.prototype.toString.call(l).slice(v,w)}})}).call(this,void 0!==commonjsGlobal?commonjsGlobal:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[12])(12)},module.exports=f()}),arrayProto$e=lib.prototypes.array,match$5=samsam.createMatcher,valueToString$9=lib.valueToString,fakeServer=nise.fakeServer,fakeXhr=nise.fakeXhr,filter$3=arrayProto$e.filter,forEach$8=arrayProto$e.filter,push$6=arrayProto$e.push,reverse$1=arrayProto$e.reverse;function applyOnEach(l,n){var e=filter$3(l,function(l){return"function"==typeof l[n]});forEach$8(e,function(l){l[n]()})}function Sandbox(){var l,n=this,e=[],t=[];function u(l,n){var e=getPropertyDescriptor(l,n);function t(){Object.defineProperty(l,n,e)}return t.object=l,t.property=n,t}function r(l,n){forEach$8(t,function(e){if(e.object===l&&e.property===n)throw new TypeError("Attempted to replace "+n+" which is already replaced")})}n.serverPrototype=fakeServer,n.getFakes=function(){return e},n.getRestorers=function(){return t},n.createStubInstance=function(l){if("function"!=typeof l)throw new TypeError("The constructor should be a function.");return this.stub(Object.create(l.prototype))},n.inject=function(l){return l.spy=function(){return n.spy.apply(null,arguments)},l.stub=function(){return n.stub.apply(null,arguments)},l.mock=function(){return n.mock.apply(null,arguments)},n.clock&&(l.clock=n.clock),n.server&&(l.server=n.server,l.requests=n.server.requests),l.match=match$5,l},n.mock=function(){var n=mock_1.apply(null,arguments);return push$6(e,n),usePromiseLibrary_1(l,n),n},n.reset=function(){applyOnEach(e,"reset"),applyOnEach(e,"resetHistory")},n.resetBehavior=function(){applyOnEach(e,"resetBehavior")},n.resetHistory=function(){function l(l){var n=l.resetHistory||l.reset;n&&n.call(l)}forEach$8(e,function(n){if("function"!=typeof n){var e=[];n.get&&push$6(e,n.get),n.set&&push$6(e,n.set),forEach$8(e,l)}else l(n)})},n.restore=function(){if(arguments.length)throw new Error("sandbox.restore() does not take any parameters. Perhaps you meant stub.restore()");reverse$1(e),applyOnEach(e,"restore"),e=[],forEach$8(t,function(l){l()}),t=[],n.restoreContext()},n.restoreContext=function(){var l=n.injectedKeys,e=n.injectInto;l&&(forEach$8(l,function(l){delete e[l]}),l=[])},n.replace=function(l,n,e){var o=getPropertyDescriptor(l,n);if(void 0===o)throw new TypeError("Cannot replace non-existent own property "+valueToString$9(n));if(void 0===e)throw new TypeError("Expected replacement argument to be defined");if("function"==typeof o.get)throw new Error("Use sandbox.replaceGetter for replacing getters");if("function"==typeof o.set)throw new Error("Use sandbox.replaceSetter for replacing setters");if(typeof l[n]!=typeof e)throw new TypeError("Cannot replace "+typeof l[n]+" with "+typeof e);return r(l,n),push$6(t,u(l,n)),l[n]=e,e},n.replaceGetter=function(l,n,e){var o=getPropertyDescriptor(l,n);if(void 0===o)throw new TypeError("Cannot replace non-existent own property "+valueToString$9(n));if("function"!=typeof e)throw new TypeError("Expected replacement argument to be a function");if("function"!=typeof o.get)throw new Error("`object.property` is not a getter");return r(l,n),push$6(t,u(l,n)),Object.defineProperty(l,n,{get:e,configurable:isPropertyConfigurable_1(l,n)}),e},n.replaceSetter=function(l,n,e){var o=getPropertyDescriptor(l,n);if(void 0===o)throw new TypeError("Cannot replace non-existent own property "+valueToString$9(n));if("function"!=typeof e)throw new TypeError("Expected replacement argument to be a function");if("function"!=typeof o.set)throw new Error("`object.property` is not a setter");return r(l,n),push$6(t,u(l,n)),Object.defineProperty(l,n,{set:e,configurable:isPropertyConfigurable_1(l,n)}),e},n.spy=function(){var l=spy_1.apply(spy_1,arguments);return push$6(e,l),l},n.stub=function(n,t){if(isEsModule(n))throw new TypeError("ES Modules cannot be stubbed");if(isNonExistentOwnProperty_1(n,t))throw new TypeError("Cannot stub non-existent own property "+valueToString$9(t));var u=stub_1.apply(null,arguments);if(void 0===t&&"object"==typeof n){var r=collectOwnMethods_1(u);forEach$8(r,function(l){push$6(e,l)}),usePromiseLibrary_1(l,r)}else push$6(e,u),usePromiseLibrary_1(l,u);return u},n.fake=function(l){var n=fake_1.apply(fake_1,arguments);return push$6(e,n),n},forEach$8(Object.keys(fake_1),function(l){var t=fake_1[l];"function"==typeof t&&(n.fake[l]=function(){var l=t.apply(t,arguments);return push$6(e,l),l})}),n.useFakeTimers=function(l){var t=fakeTimers.useFakeTimers.call(null,l);return n.clock=t,push$6(e,t),t},n.verify=function(){applyOnEach(e,"verify")},n.verifyAndRestore=function(){var l;try{n.verify()}catch(n){l=n}if(n.restore(),l)throw l},n.useFakeServer=function(){var l=n.serverPrototype||fakeServer;return l&&l.create?(n.server=l.create(),push$6(e,n.server),n.server):null},n.useFakeXMLHttpRequest=function(){var l=fakeXhr.useFakeXMLHttpRequest();return push$6(e,l),l},n.usingPromise=function(t){return l=t,e.promiseLibrary=t,n}}Sandbox.prototype.assert=assert_1,Sandbox.prototype.match=match$5;var sandbox=Sandbox,arrayProto$f=lib.prototypes.array,forEach$9=arrayProto$f.forEach,push$7=arrayProto$f.push;function prepareSandboxFromConfig(l){var n=new sandbox;return l.useFakeServer&&("object"==typeof l.useFakeServer&&(n.serverPrototype=l.useFakeServer),n.useFakeServer()),l.useFakeTimers&&("object"==typeof l.useFakeTimers?n.useFakeTimers(l.useFakeTimers):n.useFakeTimers()),n}function exposeValue(l,n,e,t){t&&(!n.injectInto||e in n.injectInto?push$7(l.args,t):(n.injectInto[e]=t,push$7(l.injectedKeys,e)))}function createSandbox(l){if(!l)return new sandbox;var n=prepareSandboxFromConfig(l);n.args=n.args||[],n.injectedKeys=[],n.injectInto=l.injectInto;var e=n.inject({});return l.properties?forEach$9(l.properties,function(t){var u=e[t]||"sandbox"===t&&n;exposeValue(n,l,t,u)}):exposeValue(n,l,"sandbox"),n}var createSandbox_1=createSandbox,deprecated=createCommonjsModule(function(l,n){n.wrap=function(l,e){var t=function(){return n.printWarning(e),l.apply(this,arguments)};return l.prototype&&(t.prototype=l.prototype),t},n.defaultMsg=function(l){return"sinon."+l+" is deprecated and will be removed from the public API in a future version of sinon."},n.printWarning=function(l){"undefined"!=typeof console&&(console.info?console.info(l):console.log(l))}}),deprecated_1=deprecated.wrap,deprecated_2=deprecated.defaultMsg,deprecated_3=deprecated.printWarning,defaultConfig={injectIntoThis:!0,injectInto:null,properties:["spy","stub","mock","clock","server","requests"],useFakeTimers:!0,useFakeServer:!0},apiMethods={createSandbox:createSandbox_1,assert:assert_1,match:samsam.createMatcher,spyCall:call$1,expectation:mockExpectation_1,createStubInstance:stub_1.createStubInstance,defaultConfig:defaultConfig,setFormatter:format_1.setFormatter,timers:fakeTimers.timers,xhr:nise.fakeXhr.xhr,FakeXMLHttpRequest:nise.fakeXhr.FakeXMLHttpRequest,fakeServer:nise.fakeServer,fakeServerWithClock:nise.fakeServerWithClock,createFakeServer:nise.fakeServer.create.bind(nise.fakeServer),createFakeServerWithClock:nise.fakeServerWithClock.create.bind(nise.fakeServerWithClock),addBehavior:function(l,n){behavior.addBehavior(stub_1,l,n)}},legacySandboxAPI={sandbox:{create:deprecated.wrap(createSandbox_1,"`sandbox.create()` is deprecated. Use default sandbox at `sinon.sandbox` or create new sandboxes with `sinon.createSandbox()`")}},sandbox$1=new sandbox,api=extend(sandbox$1,legacySandboxAPI,apiMethods),sinon=api;__webpack_exports__.default=sinon;const _serverPrototype=sinon.serverPrototype,_getFakes=sinon.getFakes,_getRestorers=sinon.getRestorers,_createStubInstance=sinon.createStubInstance,_inject=sinon.inject,_mock=sinon.mock,_reset=sinon.reset,_resetBehavior=sinon.resetBehavior,_resetHistory=sinon.resetHistory,_restore=sinon.restore,_restoreContext=sinon.restoreContext,_replace=sinon.replace,_replaceGetter=sinon.replaceGetter,_replaceSetter=sinon.replaceSetter,_spy=sinon.spy,_stub=sinon.stub,_fake=sinon.fake,_useFakeTimers=sinon.useFakeTimers,_verify=sinon.verify,_verifyAndRestore=sinon.verifyAndRestore,_useFakeServer=sinon.useFakeServer,_useFakeXMLHttpRequest=sinon.useFakeXMLHttpRequest,_usingPromise=sinon.usingPromise,_sandbox=sinon.sandbox,_createSandbox=sinon.createSandbox,_assert=sinon.assert,_match=sinon.match,_spyCall=sinon.spyCall,_expectation=sinon.expectation,_defaultConfig=sinon.defaultConfig,_setFormatter=sinon.setFormatter,_timers=sinon.timers,_xhr=sinon.xhr,_FakeXMLHttpRequest=sinon.FakeXMLHttpRequest,_fakeServer=sinon.fakeServer,_fakeServerWithClock=sinon.fakeServerWithClock,_createFakeServer=sinon.createFakeServer,_createFakeServerWithClock=sinon.createFakeServerWithClock,_addBehavior=sinon.addBehavior}.call(this,__webpack_require__(15),__webpack_require__(38).setImmediate,__webpack_require__(38).clearImmediate)},function(l,n){var e,t,u=l.exports={};function r(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function i(l){if(e===setTimeout)return setTimeout(l,0);if((e===r||!e)&&setTimeout)return e=setTimeout,setTimeout(l,0);try{return e(l,0)}catch(n){try{return e.call(null,l,0)}catch(n){return e.call(this,l,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:r}catch(l){e=r}try{t="function"==typeof clearTimeout?clearTimeout:o}catch(l){t=o}}();var a,s=[],c=!1,f=-1;function p(){c&&a&&(c=!1,a.length?s=a.concat(s):f=-1,s.length&&h())}function h(){if(!c){var l=i(p);c=!0;for(var n=s.length;n;){for(a=s,s=[];++f1)for(var e=1;e * MIT Licensed */ /*! * Return a function that will copy properties from * one object to another excluding any originally * listed. Returned function will create a new `{}`. * * @param {String} excluded properties ... * @return {Function} */ function e(){var l=[].slice.call(arguments);function n(n,e){Object.keys(e).forEach(function(t){~l.indexOf(t)||(n[t]=e[t])})}return function(){for(var l=[].slice.call(arguments),e=0,t={};e * MIT Licensed */ l.exports=function(l,n){return n.length>4?n[4]:l._obj}},function(l,n,e){ /*! * Chai - flag utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ /*! * Module dependencies */ var t=e(40),u=e(8);l.exports=function(l){var n=t(l),e=Object.prototype.toString.call(l);if(u.truncateThreshold&&n.length>=u.truncateThreshold){if("[object Function]"===e)return l.name&&""!==l.name?"[Function: "+l.name+"]":"[Function]";if("[object Array]"===e)return"[ Array("+l.length+") ]";if("[object Object]"===e){var r=Object.keys(l);return"{ Object ("+(r.length>2?r.splice(0,2).join(", ")+", ...":r.join(", "))+") }"}return n}return n}},function(l,n,e){"use strict";var t=Function.prototype.toString,u=/\s*function(?:\s|\s*\/\*[^(?:*\/)]+\*\/\s*)*([^\s\(\/]+)/;l.exports=function(l){if("function"!=typeof l)return null;var n="";if(void 0===Function.prototype.name&&void 0===l.name){var e=t.call(l).match(u);e&&(n=e[1])}else n=l.name;return n}},function(l,n){ /*! * Chai - getProperties utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ l.exports=function(l){var n=Object.getOwnPropertyNames(l);function e(l){-1===n.indexOf(l)&&n.push(l)}for(var t=Object.getPrototypeOf(l);null!==t;)Object.getOwnPropertyNames(t).forEach(e),t=Object.getPrototypeOf(t);return n}},function(l,n){ /*! * Chai - getOwnEnumerablePropertySymbols utility * Copyright(c) 2011-2016 Jake Luer * MIT Licensed */ l.exports=function(l){return"function"!=typeof Object.getOwnPropertySymbols?[]:Object.getOwnPropertySymbols(l).filter(function(n){return Object.getOwnPropertyDescriptor(l,n).enumerable})}},,,,function(l,n,e){"use strict";(function(l){e(53),mocha.setup({reporter:"spec",ui:"bdd"});var n=e(55);n.keys().forEach(n),l.nextTick(function(){return mocha.run()})}).call(this,e(42))},function(l,n,e){(function(l,n){var e;!function(){return function l(n,t,u){function r(i,a){if(!t[i]){if(!n[i]){if(!a&&"function"==typeof e&&e)return e(i,!0);if(o)return o(i,!0);var s=new Error("Cannot find module '"+i+"'");throw s.code="MODULE_NOT_FOUND",s}var c=t[i]={exports:{}};n[i][0].call(c.exports,function(l){return r(n[i][1][l]||l)},c,c.exports,l,n,t,u)}return t[i].exports}for(var o="function"==typeof e&&e,i=0;i1&&e.shift(),i.suite.create({title:l,file:r,fn:!1})},u.suite.only=function(l){return e.length>1&&e.shift(),i.suite.only({title:l,file:r,fn:!1})},u.test=function(l,n){var u=new t(l,n);return u.file=r,e[0].addTest(u),u},u.test.only=function(l,n){return i.test.only(o,u.test(l,n))},u.test.skip=i.test.skip,u.test.retries=i.test.retries})}},{"../test":35,"./common":8}],12:[function(l,n,e){"use strict";var t=l("../test");n.exports=function(n){var e=[n];n.on("pre-require",function(u,r,o){var i=l("./common")(e,u,o);u.setup=i.beforeEach,u.teardown=i.afterEach,u.suiteSetup=i.before,u.suiteTeardown=i.after,u.run=o.options.delay&&i.runWithSuite(n),u.suite=function(l,n){return i.suite.create({title:l,file:r,fn:n})},u.suite.skip=function(l,n){return i.suite.skip({title:l,file:r,fn:n})},u.suite.only=function(l,n){return i.suite.only({title:l,file:r,fn:n})},u.test=function(l,n){var u=e[0];u.isPending()&&(n=null);var o=new t(l,n);return o.file=r,u.addTest(o),o},u.test.only=function(l,n){return i.test.only(o,u.test(l,n))},u.test.skip=i.test.skip,u.test.retries=i.test.retries})}},{"../test":35,"./common":8}],13:[function(n,e,t){(function(l,u,r){"use strict"; /*! * mocha * Copyright(c) 2011 TJ Holowaychuk * MIT Licensed */var o=n("escape-string-regexp"),i=n("path"),a=n("./reporters"),s=n("./utils");if(t=e.exports=p,!l.browser){var c=l.cwd();e.paths.push(c,i.join(c,"node_modules"))}function f(l){return i.join(r,"..","assets","growl",l+".png")}function p(l){l=l||{},this.files=[],this.options=l,l.grep&&this.grep(new RegExp(l.grep)),l.fgrep&&this.fgrep(l.fgrep),this.suite=new t.Suite("",new t.Context),this.ui(l.ui),this.bail(l.bail),this.reporter(l.reporter,l.reporterOptions),void 0!==l.timeout&&null!==l.timeout&&this.timeout(l.timeout),void 0!==l.retries&&null!==l.retries&&this.retries(l.retries),this.useColors(l.useColors),null!==l.enableTimeouts&&this.enableTimeouts(l.enableTimeouts),l.slow&&this.slow(l.slow)}t.utils=s,t.interfaces=n("./interfaces"),t.reporters=a,t.Runnable=n("./runnable"),t.Context=n("./context"),t.Runner=n("./runner"),t.Suite=n("./suite"),t.Hook=n("./hook"),t.Test=n("./test"),p.prototype.bail=function(l){return arguments.length||(l=!0),this.suite.bail(l),this},p.prototype.addFile=function(l){return this.files.push(l),this},p.prototype.reporter=function(e,t){if("function"==typeof e)this._reporter=e;else{var u;if(a[e=e||"spec"]&&(u=a[e]),!u)try{u=n(e)}catch(t){if(-1!==t.message.indexOf("Cannot find module"))try{u=n(i.resolve(l.cwd(),e))}catch(l){-1!==t.message.indexOf("Cannot find module")?console.warn('"'+e+'" reporter not found'):console.warn('"'+e+'" reporter blew up with error:\n'+t.stack)}else console.warn('"'+e+'" reporter blew up with error:\n'+t.stack)}if(u||"teamcity"!==e||console.warn("The Teamcity reporter was moved to a package named mocha-teamcity-reporter (https://npmjs.org/package/mocha-teamcity-reporter)."),!u)throw new Error('invalid reporter "'+e+'"');this._reporter=u}return this.options.reporterOptions=t,this},p.prototype.ui=function(l){if(l=l||"bdd",this._ui=t.interfaces[l],!this._ui)try{this._ui=n(l)}catch(n){throw new Error('invalid interface "'+l+'"')}return this._ui=this._ui(this.suite),this.suite.on("pre-require",function(l){t.afterEach=l.afterEach||l.teardown,t.after=l.after||l.suiteTeardown,t.beforeEach=l.beforeEach||l.setup,t.before=l.before||l.suiteSetup,t.describe=l.describe||l.suite,t.it=l.it||l.test,t.xit=l.xit||l.test.skip,t.setup=l.setup||l.beforeEach,t.suiteSetup=l.suiteSetup||l.before,t.suiteTeardown=l.suiteTeardown||l.after,t.suite=l.suite||l.describe,t.teardown=l.teardown||l.afterEach,t.test=l.test||l.it,t.run=l.run}),this},p.prototype.loadFiles=function(l){var e=this,t=this.suite;this.files.forEach(function(l){l=i.resolve(l),t.emit("pre-require",u,l,e),t.emit("require",n(l),l,e),t.emit("post-require",u,l,e)}),l&&l()},p.prototype._growl=function(l,e){var t=n("growl");l.on("end",function(){var n=e.stats;if(n.failures){var u=n.failures+" of "+l.total+" tests failed";t(u,{name:"mocha",title:"Failed",image:f("error")})}else t(n.passes+" tests passed in "+n.duration+"ms",{name:"mocha",title:"Passed",image:f("ok")})})},p.prototype.fgrep=function(l){return this.grep(new RegExp(o(l)))},p.prototype.grep=function(l){if(s.isString(l)){var n=l.match(/^\/(.*)\/(g|i|)$|.*/);this.options.grep=new RegExp(n[1]||n[0],n[2])}else this.options.grep=l;return this},p.prototype.invert=function(){return this.options.invert=!0,this},p.prototype.ignoreLeaks=function(l){return this.options.ignoreLeaks=Boolean(l),this},p.prototype.checkLeaks=function(){return this.options.ignoreLeaks=!1,this},p.prototype.fullTrace=function(){return this.options.fullStackTrace=!0,this},p.prototype.growl=function(){return this.options.growl=!0,this},p.prototype.globals=function(l){return this.options.globals=(this.options.globals||[]).concat(l),this},p.prototype.useColors=function(l){return void 0!==l&&(this.options.useColors=l),this},p.prototype.useInlineDiffs=function(l){return this.options.useInlineDiffs=void 0!==l&&l,this},p.prototype.hideDiff=function(l){return this.options.hideDiff=void 0!==l&&l,this},p.prototype.timeout=function(l){return this.suite.timeout(l),this},p.prototype.retries=function(l){return this.suite.retries(l),this},p.prototype.slow=function(l){return this.suite.slow(l),this},p.prototype.enableTimeouts=function(l){return this.suite.enableTimeouts(!arguments.length||void 0===l||l),this},p.prototype.asyncOnly=function(){return this.options.asyncOnly=!0,this},p.prototype.noHighlighting=function(){return this.options.noHighlighting=!0,this},p.prototype.allowUncaught=function(){return this.options.allowUncaught=!0,this},p.prototype.delay=function(){return this.options.delay=!0,this},p.prototype.forbidOnly=function(){return this.options.forbidOnly=!0,this},p.prototype.forbidPending=function(){return this.options.forbidPending=!0,this},p.prototype.run=function(l){this.files.length&&this.loadFiles();var n=this.suite,e=this.options;e.files=this.files;var u=new t.Runner(n,e.delay),r=new this._reporter(u,e);return u.ignoreLeaks=!1!==e.ignoreLeaks,u.fullStackTrace=e.fullStackTrace,u.asyncOnly=e.asyncOnly,u.allowUncaught=e.allowUncaught,u.forbidOnly=e.forbidOnly,u.forbidPending=e.forbidPending,e.grep&&u.grep(e.grep,e.invert),e.globals&&u.globals(e.globals),e.growl&&this._growl(u,r),void 0!==e.useColors&&(t.reporters.Base.useColors=e.useColors),t.reporters.Base.inlineDiffs=e.useInlineDiffs,t.reporters.Base.hideDiff=e.hideDiff,u.run(function(n){r.done?r.done(n,l):l&&l(n)})}}).call(this,n("_process"),void 0!==l?l:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},"/lib")},{"./context":5,"./hook":6,"./interfaces":10,"./reporters":20,"./runnable":32,"./runner":33,"./suite":34,"./test":35,"./utils":36,_process:56,"escape-string-regexp":46,growl:2,path:40}],14:[function(l,n,e){"use strict";var t=1e3,u=60*t,r=60*u,o=24*r,i=365.25*o;n.exports=function(l){return"string"==typeof l?function(l){var n=/^((?:\d+)?\.?\d+) *(ms|seconds?|s|minutes?|m|hours?|h|days?|d|years?|y)?$/i.exec(l);if(!n)return;var e=parseFloat(n[1]);switch((n[2]||"ms").toLowerCase()){case"years":case"year":case"y":return e*i;case"days":case"day":case"d":return e*o;case"hours":case"hour":case"h":return e*r;case"minutes":case"minute":case"m":return e*u;case"seconds":case"second":case"s":return e*t;case"ms":return e}}(l):function(l){if(l>=o)return Math.round(l/o)+"d";if(l>=r)return Math.round(l/r)+"h";if(l>=u)return Math.round(l/u)+"m";if(l>=t)return Math.round(l/t)+"s";return l+"ms"}(l)}},{}],15:[function(l,n,e){"use strict";n.exports=function(l){this.message=l}},{}],16:[function(n,e,t){(function(l,u){"use strict";var r=n("tty"),o=n("diff"),i=n("../ms"),a=n("../utils"),s=l.browser?null:n("supports-color");t=e.exports=m;var c=u.Date,f=(u.setTimeout,u.setInterval,u.clearTimeout,u.clearInterval,r.isatty(1)&&r.isatty(2));t.useColors=!l.browser&&(s.stdout||void 0!==l.env.MOCHA_COLORS),t.inlineDiffs=!1,t.colors={pass:90,fail:31,"bright pass":92,"bright fail":91,"bright yellow":93,pending:36,suite:0,"error title":0,"error message":31,"error stack":90,checkmark:32,fast:90,medium:33,slow:31,green:32,light:90,"diff gutter":90,"diff added":32,"diff removed":31},t.symbols={ok:"✓",err:"✖",dot:"․",comma:",",bang:"!"},"win32"===l.platform&&(t.symbols.ok="√",t.symbols.err="×",t.symbols.dot=".");var p=t.color=function(l,n){return t.useColors?"["+t.colors[l]+"m"+n+"":String(n)};function h(l){return l&&!1!==l.showDiff&&(n=l.actual,e=l.expected,b.call(n)===b.call(e))&&void 0!==l.expected;var n,e}function d(l){a.isString(l.actual)&&a.isString(l.expected)||(l.actual=a.stringify(l.actual),l.expected=a.stringify(l.expected))}t.window={width:75},f&&(t.window.width=l.stdout.getWindowSize?l.stdout.getWindowSize(1)[0]:r.getWindowSize()[1]),t.cursor={hide:function(){f&&l.stdout.write("[?25l")},show:function(){f&&l.stdout.write("[?25h")},deleteLine:function(){f&&l.stdout.write("")},beginningOfLine:function(){f&&l.stdout.write("")},CR:function(){f?(t.cursor.deleteLine(),t.cursor.beginningOfLine()):l.stdout.write("\r")}};var g=t.generateDiff=function(l,n){return t.inlineDiffs?function(l,n){var e=function(l,n){return o.diffWordsWithSpace(l,n).map(function(l){return l.added?y("diff added",l.value):l.removed?y("diff removed",l.value):l.value}).join("")}(l,n),t=e.split("\n");if(t.length>4){var u=String(t.length).length;e=t.map(function(l,n){return function(l,n){return l=String(l),Array(n-l.length+1).join(" ")+l}(++n,u)+" | "+l}).join("\n")}return e=(e="\n"+p("diff removed","actual")+" "+p("diff added","expected")+"\n\n"+e+"\n").replace(/^/gm," ")}(l,n):function(l,n){var e=" ";var t=o.createPatch("string",l,n).split("\n").splice(5);return"\n "+y("diff added","+ expected")+" "+y("diff removed","- actual")+"\n\n"+t.map(function(l){if("+"===l[0])return e+y("diff added",l);if("-"===l[0])return e+y("diff removed",l);if(l.match(/@@/))return"--";if(l.match(/\\ No newline/))return null;return e+l}).filter(function(l){return null!=l}).join("\n")}(l,n)};function m(l){var n=this.stats={suites:0,tests:0,passes:0,pending:0,failures:0},e=this.failures=[];l&&(this.runner=l,l.stats=n,l.on("start",function(){n.start=new c}),l.on("suite",function(l){n.suites=n.suites||0,l.root||n.suites++}),l.on("test end",function(){n.tests=n.tests||0,n.tests++}),l.on("pass",function(l){n.passes=n.passes||0,l.duration>l.slow()?l.speed="slow":l.duration>l.slow()/2?l.speed="medium":l.speed="fast",n.passes++}),l.on("fail",function(l,t){n.failures=n.failures||0,n.failures++,h(t)&&d(t),l.err=t,e.push(l)}),l.once("end",function(){n.end=new c,n.duration=n.end-n.start}),l.on("pending",function(){n.pending++}))}function y(l,n){return n.split("\n").map(function(n){return p(l,n)}).join("\n")}t.list=function(l){console.log(),l.forEach(function(l,n){var e,u,r=p("error title"," %s) %s:\n")+p("error message"," %s")+p("error stack","\n%s\n"),o=l.err;u=o.message&&"function"==typeof o.message.toString?o.message+"":"function"==typeof o.inspect?o.inspect()+"":"";var i=o.stack||u,a=u?i.indexOf(u):-1;if(-1===a?e=u:(a+=u.length,e=i.slice(0,a),i=i.slice(a+1)),o.uncaught&&(e="Uncaught "+e),!t.hideDiff&&h(o)){d(o),r=p("error title"," %s) %s:\n%s")+p("error stack","\n%s\n");var s=u.match(/^([^:]+): expected/);e="\n "+p("error message",s?s[1]:e),e+=g(o.actual,o.expected)}i=i.replace(/^/gm," ");var c="";l.titlePath().forEach(function(l,n){0!==n&&(c+="\n ");for(var e=0;e',e()),++n,console.log("%s

%s

",e(),u.escape(l.title)),console.log("%s
",e()))}),l.on("suite end",function(l){l.root||(console.log("%s
",e()),--n,console.log("%s",e()),--n)}),l.on("pass",function(l){console.log("%s
%s
",e(),u.escape(l.title));var n=u.escape(u.clean(l.body));console.log("%s
%s
",e(),n)}),l.on("fail",function(l,n){console.log('%s
%s
',e(),u.escape(l.title));var t=u.escape(u.clean(l.body));console.log('%s
%s
',e(),t),console.log('%s
%s
',e(),u.escape(n))})}},{"../utils":36,"./base":16}],18:[function(l,n,e){(function(e){"use strict";var t=l("./base"),u=l("../utils").inherits,r=t.color;function o(l){t.call(this,l);var n=this,u=.75*t.window.width|0,o=-1;l.on("start",function(){e.stdout.write("\n")}),l.on("pending",function(){++o%u==0&&e.stdout.write("\n "),e.stdout.write(r("pending",t.symbols.comma))}),l.on("pass",function(l){++o%u==0&&e.stdout.write("\n "),"slow"===l.speed?e.stdout.write(r("bright yellow",t.symbols.dot)):e.stdout.write(r(l.speed,t.symbols.dot))}),l.on("fail",function(){++o%u==0&&e.stdout.write("\n "),e.stdout.write(r("fail",t.symbols.bang))}),l.once("end",function(){console.log(),n.epilogue()})}n.exports=o,u(o,t)}).call(this,l("_process"))},{"../utils":36,"./base":16,_process:56}],19:[function(n,e,t){(function(l){"use strict";var t=n("./base"),u=n("../utils"),r=n("../browser/progress"),o=n("escape-string-regexp"),i=u.escape,a=l.Date;l.setTimeout,l.setInterval,l.clearTimeout,l.clearInterval;e.exports=f;var s='',c="‣";function f(l){t.call(this,l);var n,e,u,o=this,f=this.stats,p=h(s),b=p.getElementsByTagName("li"),v=b[1].getElementsByTagName("em")[0],w=b[1].getElementsByTagName("a")[0],A=b[2].getElementsByTagName("em")[0],E=b[2].getElementsByTagName("a")[0],x=b[3].getElementsByTagName("em")[0],C=p.getElementsByTagName("canvas")[0],_=h('
    '),T=[_],S=document.getElementById("mocha");if(C.getContext){var k=window.devicePixelRatio||1;C.style.width=C.width,C.style.height=C.height,C.width*=k,C.height*=k,(e=C.getContext("2d")).scale(k,k),n=new r}if(!S)return u="#mocha div missing, add it to your document",void document.body.appendChild(h('
    %s
    ',u));function F(l){T[0]&&T[0].appendChild(l)}function D(){var t=f.tests/l.total*100|0;n&&n.update(t).draw(e);var u=new a-f.start;m(v,f.passes),m(A,f.failures),m(x,(u/1e3).toFixed(2))}y(w,"click",function(l){l.preventDefault(),g();var n=/pass/.test(_.className)?"":" pass";_.className=_.className.replace(/fail|pass/g,"")+n,_.className.trim()&&d("test pass")}),y(E,"click",function(l){l.preventDefault(),g();var n=/fail/.test(_.className)?"":" fail";_.className=_.className.replace(/fail|pass/g,"")+n,_.className.trim()&&d("test fail")}),S.appendChild(p),S.appendChild(_),n&&n.size(40),l.on("suite",function(l){if(!l.root){var n=h('
  • %s

  • ',o.suiteURL(l),i(l.title));T[0].appendChild(n),T.unshift(document.createElement("ul")),n.appendChild(T[0])}}),l.on("suite end",function(l){l.root?D():T.shift()}),l.on("pass",function(l){var n=o.testURL(l),e=h('
  • %e%ems '+c+"

  • ",l.speed,l.title,l.duration,n);o.addCodeToggle(e,l.body),F(e),D()}),l.on("fail",function(l){var n,e=h('
  • %e '+c+"

  • ",l.title,o.testURL(l)),t=l.err.toString();if("[object Error]"===t&&(t=l.err.message),l.err.stack){var u=l.err.stack.indexOf(l.err.message);n=-1===u?l.err.stack:l.err.stack.substr(l.err.message.length+u)}else l.err.sourceURL&&void 0!==l.err.line&&(n="\n("+l.err.sourceURL+":"+l.err.line+")");n=n||"",l.err.htmlMessage&&n?e.appendChild(h('
    %s\n
    %e
    ',l.err.htmlMessage,n)):l.err.htmlMessage?e.appendChild(h('
    %s
    ',l.err.htmlMessage)):e.appendChild(h('
    %e%e
    ',t,n)),o.addCodeToggle(e,l.body),F(e),D()}),l.on("pending",function(l){F(h('
  • %e

  • ',l.title)),D()})}function p(l){var n=window.location.search;return n&&(n=n.replace(/[?&]grep=[^&\s]*/g,"").replace(/^&/,"?")),window.location.pathname+(n?n+"&":"?")+"grep="+encodeURIComponent(o(l))}function h(l){var n=arguments,e=document.createElement("div"),t=1;return e.innerHTML=l.replace(/%([se])/g,function(l,e){switch(e){case"s":return String(n[t++]);case"e":return i(n[t++])}}),e.firstChild}function d(l){for(var n=document.getElementsByClassName("suite"),e=0;e%e",u.clean(n));l.appendChild(e),e.style.display="none"}}).call(this,void 0!==l?l:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../browser/progress":3,"../utils":36,"./base":16,"escape-string-regexp":46}],20:[function(l,n,e){"use strict";e.Base=e.base=l("./base"),e.Dot=e.dot=l("./dot"),e.Doc=e.doc=l("./doc"),e.TAP=e.tap=l("./tap"),e.JSON=e.json=l("./json"),e.HTML=e.html=l("./html"),e.List=e.list=l("./list"),e.Min=e.min=l("./min"),e.Spec=e.spec=l("./spec"),e.Nyan=e.nyan=l("./nyan"),e.XUnit=e.xunit=l("./xunit"),e.Markdown=e.markdown=l("./markdown"),e.Progress=e.progress=l("./progress"),e.Landing=e.landing=l("./landing"),e.JSONStream=e["json-stream"]=l("./json-stream")},{"./base":16,"./doc":17,"./dot":18,"./html":19,"./json":22,"./json-stream":21,"./landing":23,"./list":24,"./markdown":25,"./min":26,"./nyan":27,"./progress":28,"./spec":29,"./tap":30,"./xunit":31}],21:[function(l,n,e){(function(e){"use strict";var t=l("./base");function u(l){return{title:l.title,fullTitle:l.fullTitle(),duration:l.duration,currentRetry:l.currentRetry()}}n.exports=function(l){t.call(this,l);var n=this,r=l.total;l.on("start",function(){console.log(JSON.stringify(["start",{total:r}]))}),l.on("pass",function(l){console.log(JSON.stringify(["pass",u(l)]))}),l.on("fail",function(l,n){(l=u(l)).err=n.message,l.stack=n.stack||null,console.log(JSON.stringify(["fail",l]))}),l.once("end",function(){e.stdout.write(JSON.stringify(["end",n.stats]))})}}).call(this,l("_process"))},{"./base":16,_process:56}],22:[function(l,n,e){(function(e){"use strict";var t=l("./base");function u(l){var n,e,t=l.err||{};return t instanceof Error&&(t=function(l){var n={};return Object.getOwnPropertyNames(l).forEach(function(e){n[e]=l[e]},l),n}(t)),{title:l.title,fullTitle:l.fullTitle(),duration:l.duration,currentRetry:l.currentRetry(),err:(n=t,e=[],JSON.parse(JSON.stringify(n,function(l,n){if("object"==typeof n&&null!==n){if(-1!==e.indexOf(n))return""+n;e.push(n)}return n})))}}n.exports=function(l){t.call(this,l);var n=this,r=[],o=[],i=[],a=[];l.on("test end",function(l){r.push(l)}),l.on("pass",function(l){a.push(l)}),l.on("fail",function(l){i.push(l)}),l.on("pending",function(l){o.push(l)}),l.once("end",function(){var t={stats:n.stats,tests:r.map(u),pending:o.map(u),failures:i.map(u),passes:a.map(u)};l.testResults=t,e.stdout.write(JSON.stringify(t,null,2))})}}).call(this,l("_process"))},{"./base":16,_process:56}],23:[function(l,n,e){(function(e){"use strict";var t=l("./base"),u=l("../utils").inherits,r=t.cursor,o=t.color;function i(l){t.call(this,l);var n=this,u=.75*t.window.width|0,i=l.total,a=e.stdout,s=o("plane","✈"),c=-1,f=0;function p(){var l=Array(u).join("-");return" "+o("runway",l)}l.on("start",function(){a.write("\n\n\n "),r.hide()}),l.on("test end",function(l){var n=-1===c?u*++f/i|0:c;"failed"===l.state&&(s=o("plane crash","✈"),c=n),a.write("["+(u+1)+"D"),a.write(p()),a.write("\n "),a.write(o("runway",Array(n).join("⋅"))),a.write(s),a.write(o("runway",Array(u-n).join("⋅")+"\n")),a.write(p()),a.write("")}),l.once("end",function(){r.show(),console.log(),n.epilogue()})}n.exports=i,t.colors.plane=0,t.colors["plane crash"]=31,t.colors.runway=90,u(i,t)}).call(this,l("_process"))},{"../utils":36,"./base":16,_process:56}],24:[function(l,n,e){(function(e){"use strict";var t=l("./base"),u=l("../utils").inherits,r=t.color,o=t.cursor;function i(l){t.call(this,l);var n=0;l.on("start",function(){console.log()}),l.on("test",function(l){e.stdout.write(r("pass"," "+l.fullTitle()+": "))}),l.on("pending",function(l){var n=r("checkmark"," -")+r("pending"," %s");console.log(n,l.fullTitle())}),l.on("pass",function(l){var n=r("checkmark"," "+t.symbols.ok)+r("pass"," %s: ")+r(l.speed,"%dms");o.CR(),console.log(n,l.fullTitle(),l.duration)}),l.on("fail",function(l){o.CR(),console.log(r("fail"," %d) %s"),++n,l.fullTitle())}),l.once("end",this.epilogue.bind(this))}n.exports=i,u(i,t)}).call(this,l("_process"))},{"../utils":36,"./base":16,_process:56}],25:[function(l,n,e){(function(e){"use strict";var t=l("./base"),u=l("../utils"),r="$";n.exports=function(l){t.call(this,l);var n=0,o="";function i(l){var n=function l(n,e){var t=e;var u=r+n.title;e=e[u]=e[u]||{suite:n};n.suites.forEach(function(n){l(n,e)});return t}(l,{});return function l(n,e){++e;var t="";var o;for(var i in n)"suite"!==i&&(i!==r&&(o=" - ["+i.substring(1)+"]",o+="(#"+u.slug(n[i].suite.fullTitle())+")\n",t+=Array(e).join(" ")+o),t+=l(n[i],e));return t}(n,0)}i(l.suite),l.on("suite",function(l){++n;var e,t=u.slug(l.fullTitle());o+='\n',o+=(e=l.title,Array(n).join("#")+" "+e+"\n")}),l.on("suite end",function(){--n}),l.on("pass",function(l){var n=u.clean(l.body);o+=l.title+".\n",o+="\n```js\n",o+=n+"\n",o+="```\n\n"}),l.once("end",function(){e.stdout.write("# TOC\n"),e.stdout.write(i(l.suite)),e.stdout.write(o)})}}).call(this,l("_process"))},{"../utils":36,"./base":16,_process:56}],26:[function(l,n,e){(function(e){"use strict";var t=l("./base"),u=l("../utils").inherits;function r(l){t.call(this,l),l.on("start",function(){e.stdout.write(""),e.stdout.write("")}),l.once("end",this.epilogue.bind(this))}n.exports=r,u(r,t)}).call(this,l("_process"))},{"../utils":36,"./base":16,_process:56}],27:[function(l,n,e){(function(e){"use strict";var t=l("./base"),u=l("../utils").inherits;function r(l){t.call(this,l);var n=this,e=.75*t.window.width|0,u=this.nyanCatWidth=11;this.colorIndex=0,this.numberOfLines=4,this.rainbowColors=n.generateColors(),this.scoreboardWidth=5,this.tick=0,this.trajectories=[[],[],[],[]],this.trajectoryWidthMax=e-u,l.on("start",function(){t.cursor.hide(),n.draw()}),l.on("pending",function(){n.draw()}),l.on("pass",function(){n.draw()}),l.on("fail",function(){n.draw()}),l.once("end",function(){t.cursor.show();for(var l=0;l=this.trajectoryWidthMax&&t.shift(),t.push(n)}},r.prototype.drawRainbow=function(){var l=this;this.trajectories.forEach(function(n){o("["+l.scoreboardWidth+"C"),o(n.join("")),o("\n")}),this.cursorUp(this.numberOfLines)},r.prototype.drawNyanCat=function(){var l="["+(this.scoreboardWidth+this.trajectories[0].length)+"C",n="";o(l),o("_,------,"),o("\n"),o(l),o("_|"+(n=this.tick?" ":" ")+"/\\_/\\ "),o("\n"),o(l),n=this.tick?"_":"__",o((this.tick?"~":"^")+"|"+n+this.face()+" "),o("\n"),o(l),o((n=this.tick?" ":" ")+'"" "" '),o("\n"),this.cursorUp(this.numberOfLines)},r.prototype.face=function(){var l=this.stats;return l.failures?"( x .x)":l.pending?"( o .o)":l.passes?"( ^ .^)":"( - .-)"},r.prototype.cursorUp=function(l){o("["+l+"A")},r.prototype.cursorDown=function(l){o("["+l+"B")},r.prototype.generateColors=function(){for(var l=[],n=0;n<42;n++){var e=Math.floor(Math.PI/3),t=n*(1/6),u=Math.floor(3*Math.sin(t)+3),r=Math.floor(3*Math.sin(t+2*e)+3),o=Math.floor(3*Math.sin(t+4*e)+3);l.push(36*u+6*r+o+16)}return l},r.prototype.rainbowify=function(l){if(!t.useColors)return l;var n=this.rainbowColors[this.colorIndex%this.rainbowColors.length];return this.colorIndex+=1,"[38;5;"+n+"m"+l+""}}).call(this,l("_process"))},{"../utils":36,"./base":16,_process:56}],28:[function(l,n,e){(function(e){"use strict";var t=l("./base"),u=l("../utils").inherits,r=t.color,o=t.cursor;function i(l,n){t.call(this,l);var u=this,i=.5*t.window.width|0,a=l.total,s=0,c=-1,f=(n=n||{}).reporterOptions||{};n.open=f.open||"[",n.complete=f.complete||"▬",n.incomplete=f.incomplete||t.symbols.dot,n.close=f.close||"]",n.verbose=f.verbose||!1,l.on("start",function(){console.log(),o.hide()}),l.on("test end",function(){var l=i*(++s/a)|0,t=i-l;(l!==c||n.verbose)&&(c=l,o.CR(),e.stdout.write(""),e.stdout.write(r("progress"," "+n.open)),e.stdout.write(Array(l).join(n.complete)),e.stdout.write(Array(t).join(n.incomplete)),e.stdout.write(r("progress",n.close)),n.verbose&&e.stdout.write(r("progress"," "+s+" of "+a)))}),l.once("end",function(){o.show(),console.log(),u.epilogue()})}n.exports=i,t.colors.progress=90,u(i,t)}).call(this,l("_process"))},{"../utils":36,"./base":16,_process:56}],29:[function(l,n,e){"use strict";var t=l("./base"),u=l("../utils").inherits,r=t.color;function o(l){t.call(this,l);var n=0,e=0;function u(){return Array(n).join(" ")}l.on("start",function(){console.log()}),l.on("suite",function(l){++n,console.log(r("suite","%s%s"),u(),l.title)}),l.on("suite end",function(){1===--n&&console.log()}),l.on("pending",function(l){var n=u()+r("pending"," - %s");console.log(n,l.title)}),l.on("pass",function(l){var n;"fast"===l.speed?(n=u()+r("checkmark"," "+t.symbols.ok)+r("pass"," %s"),console.log(n,l.title)):(n=u()+r("checkmark"," "+t.symbols.ok)+r("pass"," %s")+r(l.speed," (%dms)"),console.log(n,l.title,l.duration))}),l.on("fail",function(l){console.log(u()+r("fail"," %d) %s"),++e,l.title)}),l.once("end",this.epilogue.bind(this))}n.exports=o,u(o,t)},{"../utils":36,"./base":16}],30:[function(l,n,e){"use strict";var t=l("./base");function u(l){return l.fullTitle().replace(/#/g,"")}n.exports=function(l){t.call(this,l);var n=1,e=0,r=0;l.on("start",function(){var n=l.grepTotal(l.suite);console.log("%d..%d",1,n)}),l.on("test end",function(){++n}),l.on("pending",function(l){console.log("ok %d %s # SKIP -",n,u(l))}),l.on("pass",function(l){e++,console.log("ok %d %s",n,u(l))}),l.on("fail",function(l,e){r++,console.log("not ok %d %s",n,u(l)),e.stack&&console.log(e.stack.replace(/^/gm," "))}),l.once("end",function(){console.log("# tests "+(e+r)),console.log("# pass "+e),console.log("# fail "+r)})}},{"./base":16}],31:[function(n,e,t){(function(l,t){"use strict";var u=n("./base"),r=n("../utils"),o=r.inherits,i=n("fs"),a=r.escape,s=n("mkdirp"),c=n("path"),f=t.Date;t.setTimeout,t.setInterval,t.clearTimeout,t.clearInterval;function p(l,n){u.call(this,l);var e,t=this.stats,r=[],o=this;if(n&&n.reporterOptions){if(n.reporterOptions.output){if(!i.createWriteStream)throw new Error("file output not supported in browser");s.sync(c.dirname(n.reporterOptions.output)),o.fileStream=i.createWriteStream(n.reporterOptions.output)}e=n.reporterOptions.suiteName}e=e||"Mocha Tests",l.on("pending",function(l){r.push(l)}),l.on("pass",function(l){r.push(l)}),l.on("fail",function(l){r.push(l)}),l.once("end",function(){o.write(h("testsuite",{name:e,tests:t.tests,failures:t.failures,errors:t.failures,skipped:t.tests-t.failures-t.passes,timestamp:(new f).toUTCString(),time:t.duration/1e3||0},!1)),r.forEach(function(l){o.test(l)}),o.write("")})}function h(l,n,e,t){var u,r=e?"/>":">",o=[];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&o.push(i+'="'+a(n[i])+'"');return u="<"+l+(o.length?" "+o.join(" "):"")+r,t&&(u+=t+"Math.pow(2,31))&&(this._enableTimeouts=!1),"string"==typeof l&&(l=o(l)),r("timeout %d",l),this._timeout=l,this.timer&&this.resetTimeout(),this):this._timeout},p.prototype.slow=function(l){return arguments.length&&void 0!==l?("string"==typeof l&&(l=o(l)),r("slow %d",l),this._slow=l,this):this._slow},p.prototype.enableTimeouts=function(l){return arguments.length?(r("enableTimeouts %s",l),this._enableTimeouts=l,this):this._enableTimeouts},p.prototype.skip=function(){throw new u("sync skip")},p.prototype.isPending=function(){return this.pending||this.parent&&this.parent.isPending()},p.prototype.isFailed=function(){return!this.isPending()&&"failed"===this.state},p.prototype.isPassed=function(){return!this.isPending()&&"passed"===this.state},p.prototype.retries=function(l){if(!arguments.length)return this._retries;this._retries=l},p.prototype.currentRetry=function(l){if(!arguments.length)return this._currentRetry;this._currentRetry=l},p.prototype.fullTitle=function(){return this.titlePath().join(" ")},p.prototype.titlePath=function(){return this.parent.titlePath().concat([this.title])},p.prototype.clearTimeout=function(){c(this.timer)},p.prototype.inspect=function(){return JSON.stringify(this,function(l,n){if("_"!==l[0])return"parent"===l?"#":"ctx"===l?"#":n},2)},p.prototype.resetTimeout=function(){var l=this,n=this.timeout()||1e9;this._enableTimeouts&&(this.clearTimeout(),this.timer=s(function(){l._enableTimeouts&&(l.callback(l._timeoutError(n)),l.timedOut=!0)},n))},p.prototype.globals=function(l){if(!arguments.length)return this._allowedGlobals;this._allowedGlobals=l},p.prototype.run=function(l){var n,e,t=this,r=new a,o=this.ctx;function s(u){var o=t.timeout();if(!t.timedOut){if(n)return function(l){if(!e){e=!0;var n="done() called multiple times";l&&l.message?(l.message+=" (and Mocha's "+n+")",t.emit("error",l)):t.emit("error",new Error(n))}}(u);t.clearTimeout(),t.duration=new a-r,n=!0,!u&&t.duration>o&&t._enableTimeouts&&(u=t._timeoutError(o)),l(u)}}if(o&&o.runnable&&o.runnable(this),this.callback=s,this.async){if(this.resetTimeout(),this.skip=function(){throw s(new u("async skip call")),new u("async skip; aborting execution")},this.allowUncaught)return p(this.fn);try{p(this.fn)}catch(l){e=!0,s(i.getError(l))}}else if(this.allowUncaught)this.isPending()?s():c(this.fn);else try{this.isPending()?s():c(this.fn)}catch(l){e=!0,s(i.getError(l))}function c(l){var n=l.call(o);if(n&&"function"==typeof n.then)t.resetTimeout(),n.then(function(){return s(),null},function(l){s(l||new Error("Promise rejected with no or falsy reason"))});else{if(t.asyncOnly)return s(new Error("--async-only option in use without declaring `done()` or returning a promise"));s()}}function p(l){var n=l.call(o,function(l){return l instanceof Error||"[object Error]"===f.call(l)?s(l):l?"[object Object]"===Object.prototype.toString.call(l)?s(new Error("done() invoked with non-Error: "+JSON.stringify(l))):s(new Error("done() invoked with non-Error: "+l)):n&&i.isPromise(n)?s(new Error("Resolution method is overspecified. Specify a callback *or* return a Promise; not both.")):void s()})}},p.prototype._timeoutError=function(l){var n="Timeout of "+l+'ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.';return this.file&&(n+=" ("+this.file+")"),new Error(n)}}).call(this,void 0!==l?l:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./ms":14,"./pending":15,"./utils":36,debug:43,events:47}],33:[function(n,e,t){(function(l,t){"use strict";var u=n("events").EventEmitter,r=n("./pending"),o=n("./utils"),i=o.inherits,a=n("debug")("mocha:runner"),s=n("./runnable"),c=o.stackTraceFilter(),f=o.stringify,p=o.type,h=o.undefinedError,d=["setTimeout","clearTimeout","setInterval","clearInterval","XMLHttpRequest","Date","setImmediate","clearImmediate"];function g(n,e){var t=this;this._globals=[],this._abort=!1,this._delay=e,this.suite=n,this.started=!1,this.total=n.total(),this.failures=0,this.on("test end",function(l){t.checkGlobals(l)}),this.on("hook end",function(l){t.checkGlobals(l)}),this._defaultGrep=/.*/,this.grep(this._defaultGrep),this.globals(this.globalProps().concat(function(){if("object"==typeof l&&"string"==typeof l.version){var n=l.version.split("."),e=n.reduce(function(l,n){return l<<8|n});if(e<2315)return["errno"]}return[]}()))}function m(){return!1}function y(l){function n(l){for(var n=0;n1?this.fail(l,new Error("global leaks detected: "+n.join(", "))):n.length&&this.fail(l,new Error("global leak detected: "+n[0])))}},g.prototype.fail=function(l,n){if(!l.isPending()){++this.failures,l.state="failed",n instanceof Error||n&&"string"==typeof n.message||(n=new Error("the "+p(n)+" "+f(n)+" was thrown, throw an Error :)"));try{n.stack=this.fullStackTrace||!n.stack?n.stack:c(n.stack)}catch(l){}this.emit("fail",l,n),this.suite.bail()&&this.emit("end")}},g.prototype.failHook=function(l,n){l.ctx&&l.ctx.currentTest&&(l.originalTitle=l.originalTitle||l.title,l.title=l.originalTitle+' for "'+l.ctx.currentTest.title+'"'),this.fail(l,n)},g.prototype.hook=function(l,n){var e=this.suite,t=e["_"+l],u=this;g.immediately(function(){!function o(i){var a=t[i];if(!a)return n();u.currentRunnable=a,a.ctx.currentTest=u.test,u.emit("hook",a),a.listeners("error").length||a.on("error",function(l){u.failHook(a,l)}),a.run(function(t){var s=a.error();if(s&&u.fail(u.test,s),t){if(!(t instanceof r))return u.failHook(a,t),n(t);"beforeEach"===l||"afterEach"===l?u.test.pending=!0:(e.tests.forEach(function(l){l.pending=!0}),a.pending=!0)}u.emit("hook end",a),delete a.ctx.currentTest,o(++i)})}(0)})},g.prototype.hooks=function(l,n,e){var t=this,u=this.suite;!function r(o){if(t.suite=o,!o)return t.suite=u,e();t.hook(l,function(l){if(l){var o=t.suite;return t.suite=u,e(l,o)}r(n.pop())})}(n.pop())},g.prototype.hookUp=function(l,n){var e=[this.suite].concat(this.parents()).reverse();this.hooks(l,e,n)},g.prototype.hookDown=function(l,n){var e=[this.suite].concat(this.parents());this.hooks(l,e,n)},g.prototype.parents=function(){for(var l=this.suite,n=[];l.parent;)l=l.parent,n.push(l);return n},g.prototype.runTest=function(l){var n=this,e=this.test;if(e)if(this.forbidOnly&&b(this.parents().reverse()[0]||this.suite))l(new Error("`.only` forbidden"));else{if(this.asyncOnly&&(e.asyncOnly=!0),e.on("error",function(l){n.fail(e,l)}),this.allowUncaught)return e.allowUncaught=!0,e.run(l);try{e.run(l)}catch(n){l(n)}}},g.prototype.runTests=function(l,n){var e,t=this,u=l.tests.slice();function o(l,e,u){var r=t.suite;t.suite=u?e.parent:e,t.suite?t.hookUp("afterEach",function(l,u){if(t.suite=r,l)return o(l,u,!0);n(e)}):(t.suite=r,n(e))}function i(a,s){if(t.failures&&l._bail)return n();if(t._abort)return n();if(a)return o(0,s,!0);if(!(e=u.shift()))return n();var c=t._grep.test(e.fullTitle());if(t._invert&&(c=!c),c){if(e.isPending())return t.forbidPending?(e.isPending=m,t.fail(e,new Error("Pending test forbidden")),delete e.isPending):t.emit("pending",e),t.emit("test end",e),i();t.emit("test",t.test=e),t.hookDown("beforeEach",function(l,n){return e.isPending()?(t.forbidPending?(e.isPending=m,t.fail(e,new Error("Pending test forbidden")),delete e.isPending):t.emit("pending",e),t.emit("test end",e),i()):l?o(0,n,!1):(t.currentRunnable=t.test,void t.runTest(function(l){if(e=t.test,l){var n=e.currentRetry();if(l instanceof r&&t.forbidPending)t.fail(e,new Error("Pending test forbidden"));else if(l instanceof r)e.pending=!0,t.emit("pending",e);else{if(n-1?this.hookErr(l,t,!0):n.fullTitle().indexOf("before each")>-1?this.hookErr(l,t,!1):this.nextSuite(t)}this.emit("end")}},g.prototype.run=function(n){var e=this,t=this.suite;function u(l){e.uncaught(l)}function r(){b(t)&&function l(n){n._onlyTests.length?(n.tests=n._onlyTests,n.suites=[]):(n.tests=[],n._onlySuites.forEach(function(n){b(n)&&l(n)}),n.suites=n.suites.filter(function(e){return-1!==n._onlySuites.indexOf(e)||l(e)}));return n.tests.length||n.suites.length}(t),e.started=!0,e.emit("start"),e.runSuite(t,function(){a("finished running"),e.emit("end")})}return n=n||function(){},a("start"),this.on("suite end",y),this.on("end",function(){a("end"),l.removeListener("uncaughtException",u),n(e.failures)}),l.on("uncaughtException",u),this._delay?(this.emit("waiting",t),t.once("run",r)):r(),this},g.prototype.abort=function(){return a("aborting"),this._abort=!0,this}}).call(this,n("_process"),void 0!==l?l:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./pending":15,"./runnable":32,"./utils":36,_process:56,debug:43,events:47}],34:[function(l,n,e){"use strict";var t=l("events").EventEmitter,u=l("./hook"),r=l("./utils"),o=r.inherits,i=l("debug")("mocha:suite"),a=l("./ms");function s(l,n){if(!r.isString(l))throw new Error('Suite `title` should be a "string" but "'+typeof l+'" was given instead.');function e(){}this.title=l,e.prototype=n,this.ctx=new e,this.suites=[],this.tests=[],this.pending=!1,this._beforeEach=[],this._beforeAll=[],this._afterEach=[],this._afterAll=[],this.root=!l,this._timeout=2e3,this._enableTimeouts=!0,this._slow=75,this._bail=!1,this._retries=-1,this._onlyTests=[],this._onlySuites=[],this.delayed=!1}(n.exports=s).create=function(l,n){var e=new s(n,l.ctx);return e.parent=l,n=e.fullTitle(),l.addSuite(e),e},o(s,t),s.prototype.clone=function(){var l=new s(this.title);return i("clone"),l.ctx=this.ctx,l.timeout(this.timeout()),l.retries(this.retries()),l.enableTimeouts(this.enableTimeouts()),l.slow(this.slow()),l.bail(this.bail()),l},s.prototype.timeout=function(l){return arguments.length?("0"===l.toString()&&(this._enableTimeouts=!1),"string"==typeof l&&(l=a(l)),i("timeout %d",l),this._timeout=parseInt(l,10),this):this._timeout},s.prototype.retries=function(l){return arguments.length?(i("retries %d",l),this._retries=parseInt(l,10)||0,this):this._retries},s.prototype.enableTimeouts=function(l){return arguments.length?(i("enableTimeouts %s",l),this._enableTimeouts=l,this):this._enableTimeouts},s.prototype.slow=function(l){return arguments.length?("string"==typeof l&&(l=a(l)),i("slow %d",l),this._slow=l,this):this._slow},s.prototype.bail=function(l){return arguments.length?(i("bail %s",l),this._bail=l,this):this._bail},s.prototype.isPending=function(){return this.pending||this.parent&&this.parent.isPending()},s.prototype._createHook=function(l,n){var e=new u(l,n);return e.parent=this,e.timeout(this.timeout()),e.retries(this.retries()),e.enableTimeouts(this.enableTimeouts()),e.slow(this.slow()),e.ctx=this.ctx,e.file=this.file,e},s.prototype.beforeAll=function(l,n){if(this.isPending())return this;"function"==typeof l&&(l=(n=l).name),l='"before all" hook'+(l?": "+l:"");var e=this._createHook(l,n);return this._beforeAll.push(e),this.emit("beforeAll",e),this},s.prototype.afterAll=function(l,n){if(this.isPending())return this;"function"==typeof l&&(l=(n=l).name),l='"after all" hook'+(l?": "+l:"");var e=this._createHook(l,n);return this._afterAll.push(e),this.emit("afterAll",e),this},s.prototype.beforeEach=function(l,n){if(this.isPending())return this;"function"==typeof l&&(l=(n=l).name),l='"before each" hook'+(l?": "+l:"");var e=this._createHook(l,n);return this._beforeEach.push(e),this.emit("beforeEach",e),this},s.prototype.afterEach=function(l,n){if(this.isPending())return this;"function"==typeof l&&(l=(n=l).name),l='"after each" hook'+(l?": "+l:"");var e=this._createHook(l,n);return this._afterEach.push(e),this.emit("afterEach",e),this},s.prototype.addSuite=function(l){return l.parent=this,l.timeout(this.timeout()),l.retries(this.retries()),l.enableTimeouts(this.enableTimeouts()),l.slow(this.slow()),l.bail(this.bail()),this.suites.push(l),this.emit("suite",l),this},s.prototype.addTest=function(l){return l.parent=this,l.timeout(this.timeout()),l.retries(this.retries()),l.enableTimeouts(this.enableTimeouts()),l.slow(this.slow()),l.ctx=this.ctx,this.tests.push(l),this.emit("test",l),this},s.prototype.fullTitle=function(){return this.titlePath().join(" ")},s.prototype.titlePath=function(){var l=[];return this.parent&&(l=l.concat(this.parent.titlePath())),this.root||l.push(this.title),l},s.prototype.total=function(){return this.suites.reduce(function(l,n){return l+n.total()},0)+this.tests.length},s.prototype.eachTest=function(l){return this.tests.forEach(l),this.suites.forEach(function(n){n.eachTest(l)}),this},s.prototype.run=function(){this.root&&this.emit("run")}},{"./hook":6,"./ms":14,"./utils":36,debug:43,events:47}],35:[function(l,n,e){"use strict";var t=l("./runnable"),u=l("./utils"),r=u.isString;function o(l,n){if(!r(l))throw new Error('Test `title` should be a "string" but "'+typeof l+'" was given instead.');t.call(this,l,n),this.pending=!n,this.type="test"}n.exports=o,u.inherits(o,t),o.prototype.clone=function(){var l=new o(this.title,this.fn);return l.timeout(this.timeout()),l.slow(this.slow()),l.enableTimeouts(this.enableTimeouts()),l.retries(this.retries()),l.currentRetry(this.currentRetry()),l.globals(this.globals()),l.parent=this.parent,l.file=this.file,l.ctx=this.ctx,l}},{"./runnable":32,"./utils":36}],36:[function(l,n,e){(function(n,t){"use strict";var u=l("debug")("mocha:watch"),r=l("fs"),o=l("glob"),i=l("path"),a=i.join,s=l("he"),c=["node_modules",".git"];function f(l){return!~c.indexOf(l)}function p(l,n){switch(n){case"function":return"[Function]";case"object":return"{}";case"array":return"[]";default:return l.toString()}}e.inherits=l("util").inherits,e.escape=function(l){return s.encode(String(l),{useNamedReferences:!1})},e.isString=function(l){return"string"==typeof l},e.watch=function(l,n){var e={interval:100};l.forEach(function(l){u("file %s",l),r.watchFile(l,e,function(e,t){t.mtime\s*(?:\{((?:.|\n)*?)\s*\}|((?:.|\n)*))$/,"$1$2$3")).match(/^\n?( *)/)[1].length,e=l.match(/^\n?(\t*)/)[1].length,t=new RegExp("^\n?"+(e?"\t":" ")+"{"+(e||n)+"}","gm");return(l=l.replace(t,"")).trim()},e.parseQuery=function(l){return l.replace("?","").split("&").reduce(function(l,n){var e=n.indexOf("="),t=n.slice(0,e),u=n.slice(++e);return l[t]=decodeURIComponent(u.replace(/\+/g,"%20")),l},{})},e.highlightTags=function(l){for(var n=document.getElementById("mocha").getElementsByTagName(l),e=0,t=n.length;e/g,">").replace(/\/\/(.*)/gm,'//$1').replace(/('.*?')/gm,'$1').replace(/(\d+\.\d+)/gm,'$1').replace(/(\d+)/gm,'$1').replace(/\bnew[ \t]+(\w+)/gm,'new $1').replace(/\b(function|new|throw|return|var|if|else)\b/gm,'$1')};var h=e.type=function(l){return void 0===l?"undefined":null===l?"null":t.isBuffer(l)?"buffer":Object.prototype.toString.call(l).replace(/^\[.+\s(.+?)]$/,"$1").toLowerCase()};function d(l,n,e){if(void 0===n)return a(l);var t=n*(e=e||1),u=Array.isArray(l)?"[":"{",r=Array.isArray(l)?"]":"}",o="number"==typeof l.length?l.length:Object.keys(l).length;function i(l,n){return new Array(n).join(l)}function a(l){switch(h(l)){case"null":case"undefined":l="["+l+"]";break;case"array":case"object":l=d(l,n,e+1);break;case"boolean":case"regexp":case"symbol":case"number":l=0===l&&1/l==-1/0?"-0":l.toString();break;case"date":var t=isNaN(l.getTime())?l.toString():l.toISOString();l="[Date: "+t+"]";break;case"buffer":var u=l.toJSON();l="[Buffer: "+d(u=u.data&&u.type?u.data:u,2,e+1)+"]";break;default:l="[Function]"===l||"[Circular]"===l?l:JSON.stringify(l)}return l}for(var s in l)Object.prototype.hasOwnProperty.call(l,s)&&(--o,u+="\n "+i(" ",t)+(Array.isArray(l)?"":'"'+s+'": ')+a(l[s])+(o?",":""));return u+(1!==u.length?"\n"+i(" ",--t)+r:r)}e.stringify=function(l){var n=h(l);if(!~["object","array","function"].indexOf(n)){if("buffer"===n){var u=t.prototype.toJSON.call(l);return d(u.data&&u.type?u.data:u,2).replace(/,(\n|$)/g,"$1")}if("string"!==n||"object"!=typeof l)return d(l);l=l.split("").reduce(function(l,n,e){return l[e]=n,l},{}),n="object"}for(var r in l)if(Object.prototype.hasOwnProperty.call(l,r))return d(e.canonicalize(l,null,n),2).replace(/,(\n|$)/g,"$1");return p(l,n)},e.canonicalize=function(l,n,t){var u,r;function o(l,e){n.push(l),e(),n.pop()}if(t=t||h(l),-1!==(n=n||[]).indexOf(l))return"[Circular]";switch(t){case"undefined":case"buffer":case"null":u=l;break;case"array":o(l,function(){u=l.map(function(l){return e.canonicalize(l,n)})});break;case"function":for(r in l){u={};break}if(!u){u=p(l,t);break}case"object":u=u||{},o(l,function(){Object.keys(l).sort().forEach(function(t){u[t]=e.canonicalize(l[t],n)})});break;case"date":case"number":case"regexp":case"boolean":case"symbol":u=l;break;default:u=l+""}return u},e.lookupFiles=function l(n,e,t){var u=[];if(!r.existsSync(n)){if(!r.existsSync(n+".js")){if(!(u=o.sync(n)).length)throw new Error("cannot resolve path (or pattern) '"+n+"'");return u}n+=".js"}try{if(r.statSync(n).isFile())return n}catch(l){return}return r.readdirSync(n).forEach(function(o){o=i.join(n,o);try{var a=r.statSync(o);if(a.isDirectory())return void(t&&(u=u.concat(l(o,e,t))))}catch(l){return}if(!e)throw new Error("extensions parameter required when filepath is a directory");var s=new RegExp("\\.(?:"+e.join("|")+")$");a.isFile()&&s.test(o)&&"."!==i.basename(o)[0]&&u.push(o)}),u},e.undefinedError=function(){return new Error("Caught undefined error, did you throw without specifying what?")},e.getError=function(l){return l||e.undefinedError()},e.stackTraceFilter=function(){var l,e="undefined"==typeof document?{node:!0}:{browser:!0},t=i.sep;return e.node?l=n.cwd()+t:(l=("undefined"==typeof location?window.location:location).href.replace(/\/[^\/]*$/,"/"),t="/"),function(n){return(n=(n=n.split("\n")).reduce(function(n,u){return function(l){return~l.indexOf("node_modules"+t+"mocha"+t)||~l.indexOf("node_modules"+t+"mocha.js")||~l.indexOf("bower_components"+t+"mocha.js")||~l.indexOf(t+"mocha.js")}(u)?n:e.node&&function(l){return~l.indexOf("(timers.js:")||~l.indexOf("(events.js:")||~l.indexOf("(node.js:")||~l.indexOf("(module.js:")||~l.indexOf("GeneratorFunctionPrototype.next (native)")||!1}(u)?n:(/\(?.+:\d+:\d+\)?$/.test(u)&&(u=u.replace("("+l,"(")),n.push(u),n)},[])).join("\n")}},e.isPromise=function(l){return"object"==typeof l&&"function"==typeof l.then},e.noop=function(){}}).call(this,l("_process"),l("buffer").Buffer)},{_process:56,buffer:41,debug:43,fs:40,glob:40,he:48,path:40,util:76}],37:[function(l,n,e){"use strict";e.byteLength=function(l){var n=s(l),e=n[0],t=n[1];return 3*(e+t)/4-t},e.toByteArray=function(l){for(var n,e=s(l),t=e[0],o=e[1],i=new r(function(l,n,e){return 3*(n+e)/4-e}(0,t,o)),a=0,c=o>0?t-4:t,f=0;f>16&255,i[a++]=n>>8&255,i[a++]=255&n;2===o&&(n=u[l.charCodeAt(f)]<<2|u[l.charCodeAt(f+1)]>>4,i[a++]=255&n);1===o&&(n=u[l.charCodeAt(f)]<<10|u[l.charCodeAt(f+1)]<<4|u[l.charCodeAt(f+2)]>>2,i[a++]=n>>8&255,i[a++]=255&n);return i},e.fromByteArray=function(l){for(var n,e=l.length,u=e%3,r=[],o=0,i=e-u;oi?i:o+16383));1===u?(n=l[e-1],r.push(t[n>>2]+t[n<<4&63]+"==")):2===u&&(n=(l[e-2]<<8)+l[e-1],r.push(t[n>>10]+t[n>>4&63]+t[n<<2&63]+"="));return r.join("")};for(var t=[],u=[],r="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,a=o.length;i0)throw new Error("Invalid string. Length must be a multiple of 4");var e=l.indexOf("=");return-1===e&&(e=n),[e,e===n?0:4-e%4]}function c(l,n,e){for(var u,r,o=[],i=n;i>18&63]+t[r>>12&63]+t[r>>6&63]+t[63&r]);return o.join("")}u["-".charCodeAt(0)]=62,u["_".charCodeAt(0)]=63},{}],38:[function(l,n,e){},{}],39:[function(l,n,e){(function(e){var t=l("stream").Writable,u=l("util").inherits;function r(l){if(!(this instanceof r))return new r(l);l=l||{},t.call(this,l),this.label=void 0!==l.label?l.label:"stdout"}n.exports=r,u(r,t),r.prototype._write=function(l,n,t){var u=l.toString?l.toString():l;!1===this.label?console.log(u):console.log(this.label+":",u),e.nextTick(t)}}).call(this,l("_process"))},{_process:56,stream:71,util:76}],40:[function(l,n,e){arguments[4][38][0].apply(e,arguments)},{dup:38}],41:[function(l,n,e){ /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */ "use strict";var t=l("base64-js"),u=l("ieee754");e.Buffer=i,e.SlowBuffer=function(l){+l!=l&&(l=0);return i.alloc(+l)},e.INSPECT_MAX_BYTES=50;var r=2147483647;function o(l){if(l>r)throw new RangeError("Invalid typed array length");var n=new Uint8Array(l);return n.__proto__=i.prototype,n}function i(l,n,e){if("number"==typeof l){if("string"==typeof n)throw new Error("If encoding is specified then the first argument must be a string");return c(l)}return a(l,n,e)}function a(l,n,e){if("number"==typeof l)throw new TypeError('"value" argument must not be a number');return I(l)||l&&I(l.buffer)?function(l,n,e){if(n<0||l.byteLength=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|l}function h(l,n){if(i.isBuffer(l))return l.length;if(ArrayBuffer.isView(l)||I(l))return l.byteLength;"string"!=typeof l&&(l=""+l);var e=l.length;if(0===e)return 0;for(var t=!1;;)switch(n){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":case void 0:return N(l).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*e;case"hex":return e>>>1;case"base64":return M(l).length;default:if(t)return N(l).length;n=(""+n).toLowerCase(),t=!0}}function d(l,n,e){var t=l[n];l[n]=l[e],l[e]=t}function g(l,n,e,t,u){if(0===l.length)return-1;if("string"==typeof e?(t=e,e=0):e>2147483647?e=2147483647:e<-2147483648&&(e=-2147483648),q(e=+e)&&(e=u?0:l.length-1),e<0&&(e=l.length+e),e>=l.length){if(u)return-1;e=l.length-1}else if(e<0){if(!u)return-1;e=0}if("string"==typeof n&&(n=i.from(n,t)),i.isBuffer(n))return 0===n.length?-1:m(l,n,e,t,u);if("number"==typeof n)return n&=255,"function"==typeof Uint8Array.prototype.indexOf?u?Uint8Array.prototype.indexOf.call(l,n,e):Uint8Array.prototype.lastIndexOf.call(l,n,e):m(l,[n],e,t,u);throw new TypeError("val must be string, number or Buffer")}function m(l,n,e,t,u){var r,o=1,i=l.length,a=n.length;if(void 0!==t&&("ucs2"===(t=String(t).toLowerCase())||"ucs-2"===t||"utf16le"===t||"utf-16le"===t)){if(l.length<2||n.length<2)return-1;o=2,i/=2,a/=2,e/=2}function s(l,n){return 1===o?l[n]:l.readUInt16BE(n*o)}if(u){var c=-1;for(r=e;ri&&(e=i-a),r=e;r>=0;r--){for(var f=!0,p=0;pu&&(t=u):t=u;var r=n.length;t>r/2&&(t=r/2);for(var o=0;o>8,u=e%256,r.push(u),r.push(t);return r}(n,l.length-e),l,e,t)}function x(l,n,e){return 0===n&&e===l.length?t.fromByteArray(l):t.fromByteArray(l.slice(n,e))}function C(l,n,e){e=Math.min(l.length,e);for(var t=[],u=n;u239?4:s>223?3:s>191?2:1;if(u+f<=e)switch(f){case 1:s<128&&(c=s);break;case 2:128==(192&(r=l[u+1]))&&(a=(31&s)<<6|63&r)>127&&(c=a);break;case 3:r=l[u+1],o=l[u+2],128==(192&r)&&128==(192&o)&&(a=(15&s)<<12|(63&r)<<6|63&o)>2047&&(a<55296||a>57343)&&(c=a);break;case 4:r=l[u+1],o=l[u+2],i=l[u+3],128==(192&r)&&128==(192&o)&&128==(192&i)&&(a=(15&s)<<18|(63&r)<<12|(63&o)<<6|63&i)>65535&&a<1114112&&(c=a)}null===c?(c=65533,f=1):c>65535&&(c-=65536,t.push(c>>>10&1023|55296),c=56320|1023&c),t.push(c),u+=f}return function(l){var n=l.length;if(n<=_)return String.fromCharCode.apply(String,l);var e="",t=0;for(;tthis.length)return"";if((void 0===e||e>this.length)&&(e=this.length),e<=0)return"";if((e>>>=0)<=(n>>>=0))return"";for(l||(l="utf8");;)switch(l){case"hex":return k(this,n,e);case"utf8":case"utf-8":return C(this,n,e);case"ascii":return T(this,n,e);case"latin1":case"binary":return S(this,n,e);case"base64":return x(this,n,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,n,e);default:if(t)throw new TypeError("Unknown encoding: "+l);l=(l+"").toLowerCase(),t=!0}}.apply(this,arguments)},i.prototype.toLocaleString=i.prototype.toString,i.prototype.equals=function(l){if(!i.isBuffer(l))throw new TypeError("Argument must be a Buffer");return this===l||0===i.compare(this,l)},i.prototype.inspect=function(){var l="",n=e.INSPECT_MAX_BYTES;return this.length>0&&(l=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(l+=" ... ")),""},i.prototype.compare=function(l,n,e,t,u){if(!i.isBuffer(l))throw new TypeError("Argument must be a Buffer");if(void 0===n&&(n=0),void 0===e&&(e=l?l.length:0),void 0===t&&(t=0),void 0===u&&(u=this.length),n<0||e>l.length||t<0||u>this.length)throw new RangeError("out of range index");if(t>=u&&n>=e)return 0;if(t>=u)return-1;if(n>=e)return 1;if(this===l)return 0;for(var r=(u>>>=0)-(t>>>=0),o=(e>>>=0)-(n>>>=0),a=Math.min(r,o),s=this.slice(t,u),c=l.slice(n,e),f=0;f>>=0,isFinite(e)?(e>>>=0,void 0===t&&(t="utf8")):(t=e,e=void 0)}var u=this.length-n;if((void 0===e||e>u)&&(e=u),l.length>0&&(e<0||n<0)||n>this.length)throw new RangeError("Attempt to write outside buffer bounds");t||(t="utf8");for(var r=!1;;)switch(t){case"hex":return y(this,l,n,e);case"utf8":case"utf-8":return b(this,l,n,e);case"ascii":return v(this,l,n,e);case"latin1":case"binary":return w(this,l,n,e);case"base64":return A(this,l,n,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,l,n,e);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(""+t).toLowerCase(),r=!0}},i.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var _=4096;function T(l,n,e){var t="";e=Math.min(l.length,e);for(var u=n;ut)&&(e=t);for(var u="",r=n;re)throw new RangeError("Trying to access beyond buffer length")}function P(l,n,e,t,u,r){if(!i.isBuffer(l))throw new TypeError('"buffer" argument must be a Buffer instance');if(n>u||nl.length)throw new RangeError("Index out of range")}function j(l,n,e,t,u,r){if(e+t>l.length)throw new RangeError("Index out of range");if(e<0)throw new RangeError("Index out of range")}function O(l,n,e,t,r){return n=+n,e>>>=0,r||j(l,0,e,4),u.write(l,n,e,t,23,4),e+4}function B(l,n,e,t,r){return n=+n,e>>>=0,r||j(l,0,e,8),u.write(l,n,e,t,52,8),e+8}i.prototype.slice=function(l,n){var e=this.length;(l=~~l)<0?(l+=e)<0&&(l=0):l>e&&(l=e),(n=void 0===n?e:~~n)<0?(n+=e)<0&&(n=0):n>e&&(n=e),n>>=0,n>>>=0,e||D(l,n,this.length);for(var t=this[l],u=1,r=0;++r>>=0,n>>>=0,e||D(l,n,this.length);for(var t=this[l+--n],u=1;n>0&&(u*=256);)t+=this[l+--n]*u;return t},i.prototype.readUInt8=function(l,n){return l>>>=0,n||D(l,1,this.length),this[l]},i.prototype.readUInt16LE=function(l,n){return l>>>=0,n||D(l,2,this.length),this[l]|this[l+1]<<8},i.prototype.readUInt16BE=function(l,n){return l>>>=0,n||D(l,2,this.length),this[l]<<8|this[l+1]},i.prototype.readUInt32LE=function(l,n){return l>>>=0,n||D(l,4,this.length),(this[l]|this[l+1]<<8|this[l+2]<<16)+16777216*this[l+3]},i.prototype.readUInt32BE=function(l,n){return l>>>=0,n||D(l,4,this.length),16777216*this[l]+(this[l+1]<<16|this[l+2]<<8|this[l+3])},i.prototype.readIntLE=function(l,n,e){l>>>=0,n>>>=0,e||D(l,n,this.length);for(var t=this[l],u=1,r=0;++r=(u*=128)&&(t-=Math.pow(2,8*n)),t},i.prototype.readIntBE=function(l,n,e){l>>>=0,n>>>=0,e||D(l,n,this.length);for(var t=n,u=1,r=this[l+--t];t>0&&(u*=256);)r+=this[l+--t]*u;return r>=(u*=128)&&(r-=Math.pow(2,8*n)),r},i.prototype.readInt8=function(l,n){return l>>>=0,n||D(l,1,this.length),128&this[l]?-1*(255-this[l]+1):this[l]},i.prototype.readInt16LE=function(l,n){l>>>=0,n||D(l,2,this.length);var e=this[l]|this[l+1]<<8;return 32768&e?4294901760|e:e},i.prototype.readInt16BE=function(l,n){l>>>=0,n||D(l,2,this.length);var e=this[l+1]|this[l]<<8;return 32768&e?4294901760|e:e},i.prototype.readInt32LE=function(l,n){return l>>>=0,n||D(l,4,this.length),this[l]|this[l+1]<<8|this[l+2]<<16|this[l+3]<<24},i.prototype.readInt32BE=function(l,n){return l>>>=0,n||D(l,4,this.length),this[l]<<24|this[l+1]<<16|this[l+2]<<8|this[l+3]},i.prototype.readFloatLE=function(l,n){return l>>>=0,n||D(l,4,this.length),u.read(this,l,!0,23,4)},i.prototype.readFloatBE=function(l,n){return l>>>=0,n||D(l,4,this.length),u.read(this,l,!1,23,4)},i.prototype.readDoubleLE=function(l,n){return l>>>=0,n||D(l,8,this.length),u.read(this,l,!0,52,8)},i.prototype.readDoubleBE=function(l,n){return l>>>=0,n||D(l,8,this.length),u.read(this,l,!1,52,8)},i.prototype.writeUIntLE=function(l,n,e,t){(l=+l,n>>>=0,e>>>=0,t)||P(this,l,n,e,Math.pow(2,8*e)-1,0);var u=1,r=0;for(this[n]=255&l;++r>>=0,e>>>=0,t)||P(this,l,n,e,Math.pow(2,8*e)-1,0);var u=e-1,r=1;for(this[n+u]=255&l;--u>=0&&(r*=256);)this[n+u]=l/r&255;return n+e},i.prototype.writeUInt8=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,1,255,0),this[n]=255&l,n+1},i.prototype.writeUInt16LE=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,2,65535,0),this[n]=255&l,this[n+1]=l>>>8,n+2},i.prototype.writeUInt16BE=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,2,65535,0),this[n]=l>>>8,this[n+1]=255&l,n+2},i.prototype.writeUInt32LE=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,4,4294967295,0),this[n+3]=l>>>24,this[n+2]=l>>>16,this[n+1]=l>>>8,this[n]=255&l,n+4},i.prototype.writeUInt32BE=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,4,4294967295,0),this[n]=l>>>24,this[n+1]=l>>>16,this[n+2]=l>>>8,this[n+3]=255&l,n+4},i.prototype.writeIntLE=function(l,n,e,t){if(l=+l,n>>>=0,!t){var u=Math.pow(2,8*e-1);P(this,l,n,e,u-1,-u)}var r=0,o=1,i=0;for(this[n]=255&l;++r>0)-i&255;return n+e},i.prototype.writeIntBE=function(l,n,e,t){if(l=+l,n>>>=0,!t){var u=Math.pow(2,8*e-1);P(this,l,n,e,u-1,-u)}var r=e-1,o=1,i=0;for(this[n+r]=255&l;--r>=0&&(o*=256);)l<0&&0===i&&0!==this[n+r+1]&&(i=1),this[n+r]=(l/o>>0)-i&255;return n+e},i.prototype.writeInt8=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,1,127,-128),l<0&&(l=255+l+1),this[n]=255&l,n+1},i.prototype.writeInt16LE=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,2,32767,-32768),this[n]=255&l,this[n+1]=l>>>8,n+2},i.prototype.writeInt16BE=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,2,32767,-32768),this[n]=l>>>8,this[n+1]=255&l,n+2},i.prototype.writeInt32LE=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,4,2147483647,-2147483648),this[n]=255&l,this[n+1]=l>>>8,this[n+2]=l>>>16,this[n+3]=l>>>24,n+4},i.prototype.writeInt32BE=function(l,n,e){return l=+l,n>>>=0,e||P(this,l,n,4,2147483647,-2147483648),l<0&&(l=4294967295+l+1),this[n]=l>>>24,this[n+1]=l>>>16,this[n+2]=l>>>8,this[n+3]=255&l,n+4},i.prototype.writeFloatLE=function(l,n,e){return O(this,l,n,!0,e)},i.prototype.writeFloatBE=function(l,n,e){return O(this,l,n,!1,e)},i.prototype.writeDoubleLE=function(l,n,e){return B(this,l,n,!0,e)},i.prototype.writeDoubleBE=function(l,n,e){return B(this,l,n,!1,e)},i.prototype.copy=function(l,n,e,t){if(!i.isBuffer(l))throw new TypeError("argument should be a Buffer");if(e||(e=0),t||0===t||(t=this.length),n>=l.length&&(n=l.length),n||(n=0),t>0&&t=this.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("sourceEnd out of bounds");t>this.length&&(t=this.length),l.length-n=0;--r)l[r+n]=this[r+e];else Uint8Array.prototype.set.call(l,this.subarray(e,t),n);return u},i.prototype.fill=function(l,n,e,t){if("string"==typeof l){if("string"==typeof n?(t=n,n=0,e=this.length):"string"==typeof e&&(t=e,e=this.length),void 0!==t&&"string"!=typeof t)throw new TypeError("encoding must be a string");if("string"==typeof t&&!i.isEncoding(t))throw new TypeError("Unknown encoding: "+t);if(1===l.length){var u=l.charCodeAt(0);("utf8"===t&&u<128||"latin1"===t)&&(l=u)}}else"number"==typeof l&&(l&=255);if(n<0||this.length>>=0,e=void 0===e?this.length:e>>>0,l||(l=0),"number"==typeof l)for(r=n;r55295&&e<57344){if(!u){if(e>56319){(n-=3)>-1&&r.push(239,191,189);continue}if(o+1===t){(n-=3)>-1&&r.push(239,191,189);continue}u=e;continue}if(e<56320){(n-=3)>-1&&r.push(239,191,189),u=e;continue}e=65536+(u-55296<<10|e-56320)}else u&&(n-=3)>-1&&r.push(239,191,189);if(u=null,e<128){if((n-=1)<0)break;r.push(e)}else if(e<2048){if((n-=2)<0)break;r.push(e>>6|192,63&e|128)}else if(e<65536){if((n-=3)<0)break;r.push(e>>12|224,e>>6&63|128,63&e|128)}else{if(!(e<1114112))throw new Error("Invalid code point");if((n-=4)<0)break;r.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}}return r}function M(l){return t.toByteArray(function(l){if((l=(l=l.split("=")[0]).trim().replace($,"")).length<2)return"";for(;l.length%4!=0;)l+="=";return l}(l))}function R(l,n,e,t){for(var u=0;u=n.length||u>=l.length);++u)n[u+e]=l[u];return u}function I(l){return l instanceof ArrayBuffer||null!=l&&null!=l.constructor&&"ArrayBuffer"===l.constructor.name&&"number"==typeof l.byteLength}function q(l){return l!=l}},{"base64-js":37,ieee754:49}],42:[function(l,n,e){(function(l){function n(l){return Object.prototype.toString.call(l)}e.isArray=function(l){return Array.isArray?Array.isArray(l):"[object Array]"===n(l)},e.isBoolean=function(l){return"boolean"==typeof l},e.isNull=function(l){return null===l},e.isNullOrUndefined=function(l){return null==l},e.isNumber=function(l){return"number"==typeof l},e.isString=function(l){return"string"==typeof l},e.isSymbol=function(l){return"symbol"==typeof l},e.isUndefined=function(l){return void 0===l},e.isRegExp=function(l){return"[object RegExp]"===n(l)},e.isObject=function(l){return"object"==typeof l&&null!==l},e.isDate=function(l){return"[object Date]"===n(l)},e.isError=function(l){return"[object Error]"===n(l)||l instanceof Error},e.isFunction=function(l){return"function"==typeof l},e.isPrimitive=function(l){return null===l||"boolean"==typeof l||"number"==typeof l||"string"==typeof l||"symbol"==typeof l||void 0===l},e.isBuffer=l.isBuffer}).call(this,{isBuffer:l("../../is-buffer/index.js")})},{"../../is-buffer/index.js":51}],43:[function(l,n,e){(function(t){function u(){var l;try{l=e.storage.debug}catch(l){}return!l&&void 0!==t&&"env"in t&&(l=t.env.DEBUG),l}(e=n.exports=l("./debug")).log=function(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},e.formatArgs=function(l){var n=this.useColors;if(l[0]=(n?"%c":"")+this.namespace+(n?" %c":" ")+l[0]+(n?"%c ":" ")+"+"+e.humanize(this.diff),!n)return;var t="color: "+this.color;l.splice(1,0,t,"color: inherit");var u=0,r=0;l[0].replace(/%[a-zA-Z%]/g,function(l){"%%"!==l&&(u++,"%c"===l&&(r=u))}),l.splice(r,0,t)},e.save=function(l){try{null==l?e.storage.removeItem("debug"):e.storage.debug=l}catch(l){}},e.load=u,e.useColors=function(){if("undefined"!=typeof window&&window.process&&"renderer"===window.process.type)return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},e.storage="undefined"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(l){}}(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],e.formatters.j=function(l){try{return JSON.stringify(l)}catch(l){return"[UnexpectedJSONParseError]: "+l.message}},e.enable(u())}).call(this,l("_process"))},{"./debug":44,_process:56}],44:[function(l,n,e){function t(l){var n;function t(){if(t.enabled){var l=t,u=+new Date,r=u-(n||u);l.diff=r,l.prev=n,l.curr=u,n=u;for(var o=new Array(arguments.length),i=0;i All rights reserved. Redistribution and use of this software in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Kevin Decker nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @license */ var t,u;t=this,u=function(){return function(l){var n={};function e(t){if(n[t])return n[t].exports;var u=n[t]={exports:{},id:t,loaded:!1};return l[t].call(u.exports,u,u.exports,e),u.loaded=!0,u.exports}return e.m=l,e.c=n,e.p="",e(0)}([function(l,n,e){"use strict";n.__esModule=!0,n.canonicalize=n.convertChangesToXML=n.convertChangesToDMP=n.merge=n.parsePatch=n.applyPatches=n.applyPatch=n.createPatch=n.createTwoFilesPatch=n.structuredPatch=n.diffArrays=n.diffJson=n.diffCss=n.diffSentences=n.diffTrimmedLines=n.diffLines=n.diffWordsWithSpace=n.diffWords=n.diffChars=n.Diff=void 0;var t,u=e(1),r=(t=u)&&t.__esModule?t:{default:t},o=e(2),i=e(3),a=e(5),s=e(6),c=e(7),f=e(8),p=e(9),h=e(10),d=e(11),g=e(13),m=e(14),y=e(16),b=e(17);n.Diff=r.default,n.diffChars=o.diffChars,n.diffWords=i.diffWords,n.diffWordsWithSpace=i.diffWordsWithSpace,n.diffLines=a.diffLines,n.diffTrimmedLines=a.diffTrimmedLines,n.diffSentences=s.diffSentences,n.diffCss=c.diffCss,n.diffJson=f.diffJson,n.diffArrays=p.diffArrays,n.structuredPatch=m.structuredPatch,n.createTwoFilesPatch=m.createTwoFilesPatch,n.createPatch=m.createPatch,n.applyPatch=h.applyPatch,n.applyPatches=h.applyPatches,n.parsePatch=d.parsePatch,n.merge=g.merge,n.convertChangesToDMP=y.convertChangesToDMP,n.convertChangesToXML=b.convertChangesToXML,n.canonicalize=f.canonicalize},function(l,n){"use strict";function e(){}function t(l,n,e,t,u){for(var r=0,o=n.length,i=0,a=0;rl.length?e:l}),s.value=l.join(f)}else s.value=l.join(e.slice(i,i+s.count));i+=s.count,s.added||(a+=s.count)}}var p=n[o-1];return o>1&&"string"==typeof p.value&&(p.added||p.removed)&&l.equals("",p.value)&&(n[o-2].value+=p.value,n.pop()),n}n.__esModule=!0,n.default=e,e.prototype={diff:function(l,n){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},u=e.callback;"function"==typeof e&&(u=e,e={}),this.options=e;var r=this;function o(l){return u?(setTimeout(function(){u(void 0,l)},0),!0):l}l=this.castInput(l),n=this.castInput(n),l=this.removeEmpty(this.tokenize(l));var i=(n=this.removeEmpty(this.tokenize(n))).length,a=l.length,s=1,c=i+a,f=[{newPos:-1,components:[]}],p=this.extractCommon(f[0],n,l,0);if(f[0].newPos+1>=i&&p+1>=a)return o([{value:this.join(n),count:n.length}]);function h(){for(var e=-1*s;e<=s;e+=2){var u=void 0,c=f[e-1],p=f[e+1],h=(p?p.newPos:0)-e;c&&(f[e-1]=void 0);var d=c&&c.newPos+1=i&&h+1>=a)return o(t(r,u.components,n,l,r.useLongestToken));f[e]=u}else f[e]=void 0}var m;s++}if(u)!function l(){setTimeout(function(){if(s>c)return u();h()||l()},0)}();else for(;s<=c;){var d=h();if(d)return d}},pushComponent:function(l,n,e){var t=l[l.length-1];t&&t.added===n&&t.removed===e?l[l.length-1]={count:t.count+1,added:n,removed:e}:l.push({count:1,added:n,removed:e})},extractCommon:function(l,n,e,t){for(var u=n.length,r=e.length,o=l.newPos,i=o-t,a=0;o+12&&void 0!==arguments[2]?arguments[2]:{};if("string"==typeof n&&(n=(0,u.parsePatch)(n)),Array.isArray(n)){if(n.length>1)throw new Error("applyPatch only works with a single input.");n=n[0]}var t=l.split(/\r\n|[\n\v\f\r\x85]/),r=l.match(/\r\n|[\n\v\f\r\x85]/g)||[],i=n.hunks,a=e.compareLine||function(l,n,e,t){return n===t},s=0,c=e.fuzzFactor||0,f=0,p=0,h=void 0,d=void 0;function g(l,n){for(var e=0;e0?u[0]:" ",o=u.length>0?u.substr(1):u;if(" "===r||"-"===r){if(!a(n+1,t[n],r,o)&&++s>c)return!1;n++}}return!0}for(var m=0;m0?S[0]:" ",F=S.length>0?S.substr(1):S,D=C.linedelimiters[T];if(" "===k)_++;else if("-"===k)t.splice(_,1),r.splice(_,1);else if("+"===k)t.splice(_,0,F),r.splice(_,0,D),_++;else if("\\"===k){var P=C.lines[T-1]?C.lines[T-1][0]:null;"+"===P?h=!0:"-"===P&&(d=!0)}}}if(h)for(;!t[t.length-1];)t.pop(),r.pop();else d&&(t.push(""),r.push("\n"));for(var j=0;j1&&void 0!==arguments[1]?arguments[1]:{},e=l.split(/\r\n|[\n\v\f\r\x85]/),t=l.match(/\r\n|[\n\v\f\r\x85]/g)||[],u=[],r=0;function o(){var l={};for(u.push(l);r0?c(i.lines.slice(-a.context)):[],p-=d.length,h-=d.length)}(o=d).push.apply(o,u(t.map(function(l){return(n.added?"+":"-")+l}))),n.added?m+=t.length:g+=t.length}else{if(p)if(t.length<=2*a.context&&l=s.length-2&&t.length<=a.context){var A=/\n$/.test(e),E=/\n$/.test(r);0!=t.length||A?A&&E||d.push("\\ No newline at end of file"):d.splice(w.oldLines,0,"\\ No newline at end of file")}f.push(w),p=0,h=0,d=[]}g+=t.length,m+=t.length}},b=0;bl.length)return!1;for(var e=0;e/g,">")).replace(/"/g,""")}n.__esModule=!0,n.convertChangesToXML=function(l){for(var n=[],t=0;t"):u.removed&&n.push(""),n.push(e(u.value)),u.added?n.push(""):u.removed&&n.push("")}return n.join("")}}])},"object"==typeof e&&"object"==typeof n?n.exports=u():"object"==typeof e?e.JsDiff=u():t.JsDiff=u()},{}],46:[function(l,n,e){"use strict";var t=/[|\\{}()[\]^$+*?.]/g;n.exports=function(l){if("string"!=typeof l)throw new TypeError("Expected a string");return l.replace(t,"\\$&")}},{}],47:[function(l,n,e){var t=Object.create||function(l){var n=function(){};return n.prototype=l,new n},u=Object.keys||function(l){var n=[];for(var e in l)Object.prototype.hasOwnProperty.call(l,e)&&n.push(e);return e},r=Function.prototype.bind||function(l){var n=this;return function(){return n.apply(l,arguments)}};function o(){this._events&&Object.prototype.hasOwnProperty.call(this,"_events")||(this._events=t(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0}n.exports=o,o.EventEmitter=o,o.prototype._events=void 0,o.prototype._maxListeners=void 0;var i,a=10;try{var s={};Object.defineProperty&&Object.defineProperty(s,"x",{value:0}),i=0===s.x}catch(l){i=!1}function c(l){return void 0===l._maxListeners?o.defaultMaxListeners:l._maxListeners}function f(l,n,e,u){var r,o,i;if("function"!=typeof e)throw new TypeError('"listener" argument must be a function');if((o=l._events)?(o.newListener&&(l.emit("newListener",n,e.listener?e.listener:e),o=l._events),i=o[n]):(o=l._events=t(null),l._eventsCount=0),i){if("function"==typeof i?i=o[n]=u?[e,i]:[i,e]:u?i.unshift(e):i.push(e),!i.warned&&(r=c(l))&&r>0&&i.length>r){i.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+i.length+' "'+String(n)+'" listeners added. Use emitter.setMaxListeners() to increase limit.');a.name="MaxListenersExceededWarning",a.emitter=l,a.type=n,a.count=i.length,"object"==typeof console&&console.warn&&console.warn("%s: %s",a.name,a.message)}}else i=o[n]=e,++l._eventsCount;return l}function p(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var l=new Array(arguments.length),n=0;n1&&(n=arguments[1]),n instanceof Error)throw n;var a=new Error('Unhandled "error" event. ('+n+")");throw a.context=n,a}if(!(e=o[l]))return!1;var s="function"==typeof e;switch(t=arguments.length){case 1:!function(l,n,e){if(n)l.call(e);else for(var t=l.length,u=g(l,t),r=0;r=0;o--)if(e[o]===n||e[o].listener===n){i=e[o].listener,r=o;break}if(r<0)return this;0===r?e.shift():function(l,n){for(var e=n,t=e+1,u=l.length;t=0;r--)this.removeListener(l,n[r]);return this},o.prototype.listeners=function(l){var n,e=this._events;return e&&(n=e[l])?"function"==typeof n?[n.listener||n]:function(l){for(var n=new Array(l.length),e=0;e0?Reflect.ownKeys(this._events):[]}},{}],48:[function(n,e,t){(function(l){!function(n){var u="object"==typeof t&&t,r="object"==typeof e&&e&&e.exports==u&&e,o="object"==typeof l&&l;o.global!==o&&o.window!==o||(n=o);var i=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,a=/[\x01-\x7F]/g,s=/[\x01-\t\x0B\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,c=/<\u20D2|=\u20E5|>\u20D2|\u205F\u200A|\u219D\u0338|\u2202\u0338|\u2220\u20D2|\u2229\uFE00|\u222A\uFE00|\u223C\u20D2|\u223D\u0331|\u223E\u0333|\u2242\u0338|\u224B\u0338|\u224D\u20D2|\u224E\u0338|\u224F\u0338|\u2250\u0338|\u2261\u20E5|\u2264\u20D2|\u2265\u20D2|\u2266\u0338|\u2267\u0338|\u2268\uFE00|\u2269\uFE00|\u226A\u0338|\u226A\u20D2|\u226B\u0338|\u226B\u20D2|\u227F\u0338|\u2282\u20D2|\u2283\u20D2|\u228A\uFE00|\u228B\uFE00|\u228F\u0338|\u2290\u0338|\u2293\uFE00|\u2294\uFE00|\u22B4\u20D2|\u22B5\u20D2|\u22D8\u0338|\u22D9\u0338|\u22DA\uFE00|\u22DB\uFE00|\u22F5\u0338|\u22F9\u0338|\u2933\u0338|\u29CF\u0338|\u29D0\u0338|\u2A6D\u0338|\u2A70\u0338|\u2A7D\u0338|\u2A7E\u0338|\u2AA1\u0338|\u2AA2\u0338|\u2AAC\uFE00|\u2AAD\uFE00|\u2AAF\u0338|\u2AB0\u0338|\u2AC5\u0338|\u2AC6\u0338|\u2ACB\uFE00|\u2ACC\uFE00|\u2AFD\u20E5|[\xA0-\u0113\u0116-\u0122\u0124-\u012B\u012E-\u014D\u0150-\u017E\u0192\u01B5\u01F5\u0237\u02C6\u02C7\u02D8-\u02DD\u0311\u0391-\u03A1\u03A3-\u03A9\u03B1-\u03C9\u03D1\u03D2\u03D5\u03D6\u03DC\u03DD\u03F0\u03F1\u03F5\u03F6\u0401-\u040C\u040E-\u044F\u0451-\u045C\u045E\u045F\u2002-\u2005\u2007-\u2010\u2013-\u2016\u2018-\u201A\u201C-\u201E\u2020-\u2022\u2025\u2026\u2030-\u2035\u2039\u203A\u203E\u2041\u2043\u2044\u204F\u2057\u205F-\u2063\u20AC\u20DB\u20DC\u2102\u2105\u210A-\u2113\u2115-\u211E\u2122\u2124\u2127-\u2129\u212C\u212D\u212F-\u2131\u2133-\u2138\u2145-\u2148\u2153-\u215E\u2190-\u219B\u219D-\u21A7\u21A9-\u21AE\u21B0-\u21B3\u21B5-\u21B7\u21BA-\u21DB\u21DD\u21E4\u21E5\u21F5\u21FD-\u2205\u2207-\u2209\u220B\u220C\u220F-\u2214\u2216-\u2218\u221A\u221D-\u2238\u223A-\u2257\u2259\u225A\u225C\u225F-\u2262\u2264-\u228B\u228D-\u229B\u229D-\u22A5\u22A7-\u22B0\u22B2-\u22BB\u22BD-\u22DB\u22DE-\u22E3\u22E6-\u22F7\u22F9-\u22FE\u2305\u2306\u2308-\u2310\u2312\u2313\u2315\u2316\u231C-\u231F\u2322\u2323\u232D\u232E\u2336\u233D\u233F\u237C\u23B0\u23B1\u23B4-\u23B6\u23DC-\u23DF\u23E2\u23E7\u2423\u24C8\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2550-\u256C\u2580\u2584\u2588\u2591-\u2593\u25A1\u25AA\u25AB\u25AD\u25AE\u25B1\u25B3-\u25B5\u25B8\u25B9\u25BD-\u25BF\u25C2\u25C3\u25CA\u25CB\u25EC\u25EF\u25F8-\u25FC\u2605\u2606\u260E\u2640\u2642\u2660\u2663\u2665\u2666\u266A\u266D-\u266F\u2713\u2717\u2720\u2736\u2758\u2772\u2773\u27C8\u27C9\u27E6-\u27ED\u27F5-\u27FA\u27FC\u27FF\u2902-\u2905\u290C-\u2913\u2916\u2919-\u2920\u2923-\u292A\u2933\u2935-\u2939\u293C\u293D\u2945\u2948-\u294B\u294E-\u2976\u2978\u2979\u297B-\u297F\u2985\u2986\u298B-\u2996\u299A\u299C\u299D\u29A4-\u29B7\u29B9\u29BB\u29BC\u29BE-\u29C5\u29C9\u29CD-\u29D0\u29DC-\u29DE\u29E3-\u29E5\u29EB\u29F4\u29F6\u2A00-\u2A02\u2A04\u2A06\u2A0C\u2A0D\u2A10-\u2A17\u2A22-\u2A27\u2A29\u2A2A\u2A2D-\u2A31\u2A33-\u2A3C\u2A3F\u2A40\u2A42-\u2A4D\u2A50\u2A53-\u2A58\u2A5A-\u2A5D\u2A5F\u2A66\u2A6A\u2A6D-\u2A75\u2A77-\u2A9A\u2A9D-\u2AA2\u2AA4-\u2AB0\u2AB3-\u2AC8\u2ACB\u2ACC\u2ACF-\u2ADB\u2AE4\u2AE6-\u2AE9\u2AEB-\u2AF3\u2AFD\uFB00-\uFB04]|\uD835[\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDCCF\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDD6B]/g,f={"­":"shy","‌":"zwnj","‍":"zwj","‎":"lrm","⁣":"ic","⁢":"it","⁡":"af","‏":"rlm","​":"ZeroWidthSpace","⁠":"NoBreak","̑":"DownBreve","⃛":"tdot","⃜":"DotDot","\t":"Tab","\n":"NewLine"," ":"puncsp"," ":"MediumSpace"," ":"thinsp"," ":"hairsp"," ":"emsp13"," ":"ensp"," ":"emsp14"," ":"emsp"," ":"numsp"," ":"nbsp","  ":"ThickSpace","‾":"oline",_:"lowbar","‐":"dash","–":"ndash","—":"mdash","―":"horbar",",":"comma",";":"semi","⁏":"bsemi",":":"colon","⩴":"Colone","!":"excl","¡":"iexcl","?":"quest","¿":"iquest",".":"period","‥":"nldr","…":"mldr","·":"middot","'":"apos","‘":"lsquo","’":"rsquo","‚":"sbquo","‹":"lsaquo","›":"rsaquo",'"':"quot","“":"ldquo","”":"rdquo","„":"bdquo","«":"laquo","»":"raquo","(":"lpar",")":"rpar","[":"lsqb","]":"rsqb","{":"lcub","}":"rcub","⌈":"lceil","⌉":"rceil","⌊":"lfloor","⌋":"rfloor","⦅":"lopar","⦆":"ropar","⦋":"lbrke","⦌":"rbrke","⦍":"lbrkslu","⦎":"rbrksld","⦏":"lbrksld","⦐":"rbrkslu","⦑":"langd","⦒":"rangd","⦓":"lparlt","⦔":"rpargt","⦕":"gtlPar","⦖":"ltrPar","⟦":"lobrk","⟧":"robrk","⟨":"lang","⟩":"rang","⟪":"Lang","⟫":"Rang","⟬":"loang","⟭":"roang","❲":"lbbrk","❳":"rbbrk","‖":"Vert","§":"sect","¶":"para","@":"commat","*":"ast","/":"sol",undefined:null,"&":"amp","#":"num","%":"percnt","‰":"permil","‱":"pertenk","†":"dagger","‡":"Dagger","•":"bull","⁃":"hybull","′":"prime","″":"Prime","‴":"tprime","⁗":"qprime","‵":"bprime","⁁":"caret","`":"grave","´":"acute","˜":"tilde","^":"Hat","¯":"macr","˘":"breve","˙":"dot","¨":"die","˚":"ring","˝":"dblac","¸":"cedil","˛":"ogon","ˆ":"circ","ˇ":"caron","°":"deg","©":"copy","®":"reg","℗":"copysr","℘":"wp","℞":"rx","℧":"mho","℩":"iiota","←":"larr","↚":"nlarr","→":"rarr","↛":"nrarr","↑":"uarr","↓":"darr","↔":"harr","↮":"nharr","↕":"varr","↖":"nwarr","↗":"nearr","↘":"searr","↙":"swarr","↝":"rarrw","↝̸":"nrarrw","↞":"Larr","↟":"Uarr","↠":"Rarr","↡":"Darr","↢":"larrtl","↣":"rarrtl","↤":"mapstoleft","↥":"mapstoup","↦":"map","↧":"mapstodown","↩":"larrhk","↪":"rarrhk","↫":"larrlp","↬":"rarrlp","↭":"harrw","↰":"lsh","↱":"rsh","↲":"ldsh","↳":"rdsh","↵":"crarr","↶":"cularr","↷":"curarr","↺":"olarr","↻":"orarr","↼":"lharu","↽":"lhard","↾":"uharr","↿":"uharl","⇀":"rharu","⇁":"rhard","⇂":"dharr","⇃":"dharl","⇄":"rlarr","⇅":"udarr","⇆":"lrarr","⇇":"llarr","⇈":"uuarr","⇉":"rrarr","⇊":"ddarr","⇋":"lrhar","⇌":"rlhar","⇐":"lArr","⇍":"nlArr","⇑":"uArr","⇒":"rArr","⇏":"nrArr","⇓":"dArr","⇔":"iff","⇎":"nhArr","⇕":"vArr","⇖":"nwArr","⇗":"neArr","⇘":"seArr","⇙":"swArr","⇚":"lAarr","⇛":"rAarr","⇝":"zigrarr","⇤":"larrb","⇥":"rarrb","⇵":"duarr","⇽":"loarr","⇾":"roarr","⇿":"hoarr","∀":"forall","∁":"comp","∂":"part","∂̸":"npart","∃":"exist","∄":"nexist","∅":"empty","∇":"Del","∈":"in","∉":"notin","∋":"ni","∌":"notni","϶":"bepsi","∏":"prod","∐":"coprod","∑":"sum","+":"plus","±":"pm","÷":"div","×":"times","<":"lt","≮":"nlt","<⃒":"nvlt","=":"equals","≠":"ne","=⃥":"bne","⩵":"Equal",">":"gt","≯":"ngt",">⃒":"nvgt","¬":"not","|":"vert","¦":"brvbar","−":"minus","∓":"mp","∔":"plusdo","⁄":"frasl","∖":"setmn","∗":"lowast","∘":"compfn","√":"Sqrt","∝":"prop","∞":"infin","∟":"angrt","∠":"ang","∠⃒":"nang","∡":"angmsd","∢":"angsph","∣":"mid","∤":"nmid","∥":"par","∦":"npar","∧":"and","∨":"or","∩":"cap","∩︀":"caps","∪":"cup","∪︀":"cups","∫":"int","∬":"Int","∭":"tint","⨌":"qint","∮":"oint","∯":"Conint","∰":"Cconint","∱":"cwint","∲":"cwconint","∳":"awconint","∴":"there4","∵":"becaus","∶":"ratio","∷":"Colon","∸":"minusd","∺":"mDDot","∻":"homtht","∼":"sim","≁":"nsim","∼⃒":"nvsim","∽":"bsim","∽̱":"race","∾":"ac","∾̳":"acE","∿":"acd","≀":"wr","≂":"esim","≂̸":"nesim","≃":"sime","≄":"nsime","≅":"cong","≇":"ncong","≆":"simne","≈":"ap","≉":"nap","≊":"ape","≋":"apid","≋̸":"napid","≌":"bcong","≍":"CupCap","≭":"NotCupCap","≍⃒":"nvap","≎":"bump","≎̸":"nbump","≏":"bumpe","≏̸":"nbumpe","≐":"doteq","≐̸":"nedot","≑":"eDot","≒":"efDot","≓":"erDot","≔":"colone","≕":"ecolon","≖":"ecir","≗":"cire","≙":"wedgeq","≚":"veeeq","≜":"trie","≟":"equest","≡":"equiv","≢":"nequiv","≡⃥":"bnequiv","≤":"le","≰":"nle","≤⃒":"nvle","≥":"ge","≱":"nge","≥⃒":"nvge","≦":"lE","≦̸":"nlE","≧":"gE","≧̸":"ngE","≨︀":"lvnE","≨":"lnE","≩":"gnE","≩︀":"gvnE","≪":"ll","≪̸":"nLtv","≪⃒":"nLt","≫":"gg","≫̸":"nGtv","≫⃒":"nGt","≬":"twixt","≲":"lsim","≴":"nlsim","≳":"gsim","≵":"ngsim","≶":"lg","≸":"ntlg","≷":"gl","≹":"ntgl","≺":"pr","⊀":"npr","≻":"sc","⊁":"nsc","≼":"prcue","⋠":"nprcue","≽":"sccue","⋡":"nsccue","≾":"prsim","≿":"scsim","≿̸":"NotSucceedsTilde","⊂":"sub","⊄":"nsub","⊂⃒":"vnsub","⊃":"sup","⊅":"nsup","⊃⃒":"vnsup","⊆":"sube","⊈":"nsube","⊇":"supe","⊉":"nsupe","⊊︀":"vsubne","⊊":"subne","⊋︀":"vsupne","⊋":"supne","⊍":"cupdot","⊎":"uplus","⊏":"sqsub","⊏̸":"NotSquareSubset","⊐":"sqsup","⊐̸":"NotSquareSuperset","⊑":"sqsube","⋢":"nsqsube","⊒":"sqsupe","⋣":"nsqsupe","⊓":"sqcap","⊓︀":"sqcaps","⊔":"sqcup","⊔︀":"sqcups","⊕":"oplus","⊖":"ominus","⊗":"otimes","⊘":"osol","⊙":"odot","⊚":"ocir","⊛":"oast","⊝":"odash","⊞":"plusb","⊟":"minusb","⊠":"timesb","⊡":"sdotb","⊢":"vdash","⊬":"nvdash","⊣":"dashv","⊤":"top","⊥":"bot","⊧":"models","⊨":"vDash","⊭":"nvDash","⊩":"Vdash","⊮":"nVdash","⊪":"Vvdash","⊫":"VDash","⊯":"nVDash","⊰":"prurel","⊲":"vltri","⋪":"nltri","⊳":"vrtri","⋫":"nrtri","⊴":"ltrie","⋬":"nltrie","⊴⃒":"nvltrie","⊵":"rtrie","⋭":"nrtrie","⊵⃒":"nvrtrie","⊶":"origof","⊷":"imof","⊸":"mumap","⊹":"hercon","⊺":"intcal","⊻":"veebar","⊽":"barvee","⊾":"angrtvb","⊿":"lrtri","⋀":"Wedge","⋁":"Vee","⋂":"xcap","⋃":"xcup","⋄":"diam","⋅":"sdot","⋆":"Star","⋇":"divonx","⋈":"bowtie","⋉":"ltimes","⋊":"rtimes","⋋":"lthree","⋌":"rthree","⋍":"bsime","⋎":"cuvee","⋏":"cuwed","⋐":"Sub","⋑":"Sup","⋒":"Cap","⋓":"Cup","⋔":"fork","⋕":"epar","⋖":"ltdot","⋗":"gtdot","⋘":"Ll","⋘̸":"nLl","⋙":"Gg","⋙̸":"nGg","⋚︀":"lesg","⋚":"leg","⋛":"gel","⋛︀":"gesl","⋞":"cuepr","⋟":"cuesc","⋦":"lnsim","⋧":"gnsim","⋨":"prnsim","⋩":"scnsim","⋮":"vellip","⋯":"ctdot","⋰":"utdot","⋱":"dtdot","⋲":"disin","⋳":"isinsv","⋴":"isins","⋵":"isindot","⋵̸":"notindot","⋶":"notinvc","⋷":"notinvb","⋹":"isinE","⋹̸":"notinE","⋺":"nisd","⋻":"xnis","⋼":"nis","⋽":"notnivc","⋾":"notnivb","⌅":"barwed","⌆":"Barwed","⌌":"drcrop","⌍":"dlcrop","⌎":"urcrop","⌏":"ulcrop","⌐":"bnot","⌒":"profline","⌓":"profsurf","⌕":"telrec","⌖":"target","⌜":"ulcorn","⌝":"urcorn","⌞":"dlcorn","⌟":"drcorn","⌢":"frown","⌣":"smile","⌭":"cylcty","⌮":"profalar","⌶":"topbot","⌽":"ovbar","⌿":"solbar","⍼":"angzarr","⎰":"lmoust","⎱":"rmoust","⎴":"tbrk","⎵":"bbrk","⎶":"bbrktbrk","⏜":"OverParenthesis","⏝":"UnderParenthesis","⏞":"OverBrace","⏟":"UnderBrace","⏢":"trpezium","⏧":"elinters","␣":"blank","─":"boxh","│":"boxv","┌":"boxdr","┐":"boxdl","└":"boxur","┘":"boxul","├":"boxvr","┤":"boxvl","┬":"boxhd","┴":"boxhu","┼":"boxvh","═":"boxH","║":"boxV","╒":"boxdR","╓":"boxDr","╔":"boxDR","╕":"boxdL","╖":"boxDl","╗":"boxDL","╘":"boxuR","╙":"boxUr","╚":"boxUR","╛":"boxuL","╜":"boxUl","╝":"boxUL","╞":"boxvR","╟":"boxVr","╠":"boxVR","╡":"boxvL","╢":"boxVl","╣":"boxVL","╤":"boxHd","╥":"boxhD","╦":"boxHD","╧":"boxHu","╨":"boxhU","╩":"boxHU","╪":"boxvH","╫":"boxVh","╬":"boxVH","▀":"uhblk","▄":"lhblk","█":"block","░":"blk14","▒":"blk12","▓":"blk34","□":"squ","▪":"squf","▫":"EmptyVerySmallSquare","▭":"rect","▮":"marker","▱":"fltns","△":"xutri","▴":"utrif","▵":"utri","▸":"rtrif","▹":"rtri","▽":"xdtri","▾":"dtrif","▿":"dtri","◂":"ltrif","◃":"ltri","◊":"loz","○":"cir","◬":"tridot","◯":"xcirc","◸":"ultri","◹":"urtri","◺":"lltri","◻":"EmptySmallSquare","◼":"FilledSmallSquare","★":"starf","☆":"star","☎":"phone","♀":"female","♂":"male","♠":"spades","♣":"clubs","♥":"hearts","♦":"diams","♪":"sung","✓":"check","✗":"cross","✠":"malt","✶":"sext","❘":"VerticalSeparator","⟈":"bsolhsub","⟉":"suphsol","⟵":"xlarr","⟶":"xrarr","⟷":"xharr","⟸":"xlArr","⟹":"xrArr","⟺":"xhArr","⟼":"xmap","⟿":"dzigrarr","⤂":"nvlArr","⤃":"nvrArr","⤄":"nvHarr","⤅":"Map","⤌":"lbarr","⤍":"rbarr","⤎":"lBarr","⤏":"rBarr","⤐":"RBarr","⤑":"DDotrahd","⤒":"UpArrowBar","⤓":"DownArrowBar","⤖":"Rarrtl","⤙":"latail","⤚":"ratail","⤛":"lAtail","⤜":"rAtail","⤝":"larrfs","⤞":"rarrfs","⤟":"larrbfs","⤠":"rarrbfs","⤣":"nwarhk","⤤":"nearhk","⤥":"searhk","⤦":"swarhk","⤧":"nwnear","⤨":"toea","⤩":"tosa","⤪":"swnwar","⤳":"rarrc","⤳̸":"nrarrc","⤵":"cudarrr","⤶":"ldca","⤷":"rdca","⤸":"cudarrl","⤹":"larrpl","⤼":"curarrm","⤽":"cularrp","⥅":"rarrpl","⥈":"harrcir","⥉":"Uarrocir","⥊":"lurdshar","⥋":"ldrushar","⥎":"LeftRightVector","⥏":"RightUpDownVector","⥐":"DownLeftRightVector","⥑":"LeftUpDownVector","⥒":"LeftVectorBar","⥓":"RightVectorBar","⥔":"RightUpVectorBar","⥕":"RightDownVectorBar","⥖":"DownLeftVectorBar","⥗":"DownRightVectorBar","⥘":"LeftUpVectorBar","⥙":"LeftDownVectorBar","⥚":"LeftTeeVector","⥛":"RightTeeVector","⥜":"RightUpTeeVector","⥝":"RightDownTeeVector","⥞":"DownLeftTeeVector","⥟":"DownRightTeeVector","⥠":"LeftUpTeeVector","⥡":"LeftDownTeeVector","⥢":"lHar","⥣":"uHar","⥤":"rHar","⥥":"dHar","⥦":"luruhar","⥧":"ldrdhar","⥨":"ruluhar","⥩":"rdldhar","⥪":"lharul","⥫":"llhard","⥬":"rharul","⥭":"lrhard","⥮":"udhar","⥯":"duhar","⥰":"RoundImplies","⥱":"erarr","⥲":"simrarr","⥳":"larrsim","⥴":"rarrsim","⥵":"rarrap","⥶":"ltlarr","⥸":"gtrarr","⥹":"subrarr","⥻":"suplarr","⥼":"lfisht","⥽":"rfisht","⥾":"ufisht","⥿":"dfisht","⦚":"vzigzag","⦜":"vangrt","⦝":"angrtvbd","⦤":"ange","⦥":"range","⦦":"dwangle","⦧":"uwangle","⦨":"angmsdaa","⦩":"angmsdab","⦪":"angmsdac","⦫":"angmsdad","⦬":"angmsdae","⦭":"angmsdaf","⦮":"angmsdag","⦯":"angmsdah","⦰":"bemptyv","⦱":"demptyv","⦲":"cemptyv","⦳":"raemptyv","⦴":"laemptyv","⦵":"ohbar","⦶":"omid","⦷":"opar","⦹":"operp","⦻":"olcross","⦼":"odsold","⦾":"olcir","⦿":"ofcir","⧀":"olt","⧁":"ogt","⧂":"cirscir","⧃":"cirE","⧄":"solb","⧅":"bsolb","⧉":"boxbox","⧍":"trisb","⧎":"rtriltri","⧏":"LeftTriangleBar","⧏̸":"NotLeftTriangleBar","⧐":"RightTriangleBar","⧐̸":"NotRightTriangleBar","⧜":"iinfin","⧝":"infintie","⧞":"nvinfin","⧣":"eparsl","⧤":"smeparsl","⧥":"eqvparsl","⧫":"lozf","⧴":"RuleDelayed","⧶":"dsol","⨀":"xodot","⨁":"xoplus","⨂":"xotime","⨄":"xuplus","⨆":"xsqcup","⨍":"fpartint","⨐":"cirfnint","⨑":"awint","⨒":"rppolint","⨓":"scpolint","⨔":"npolint","⨕":"pointint","⨖":"quatint","⨗":"intlarhk","⨢":"pluscir","⨣":"plusacir","⨤":"simplus","⨥":"plusdu","⨦":"plussim","⨧":"plustwo","⨩":"mcomma","⨪":"minusdu","⨭":"loplus","⨮":"roplus","⨯":"Cross","⨰":"timesd","⨱":"timesbar","⨳":"smashp","⨴":"lotimes","⨵":"rotimes","⨶":"otimesas","⨷":"Otimes","⨸":"odiv","⨹":"triplus","⨺":"triminus","⨻":"tritime","⨼":"iprod","⨿":"amalg","⩀":"capdot","⩂":"ncup","⩃":"ncap","⩄":"capand","⩅":"cupor","⩆":"cupcap","⩇":"capcup","⩈":"cupbrcap","⩉":"capbrcup","⩊":"cupcup","⩋":"capcap","⩌":"ccups","⩍":"ccaps","⩐":"ccupssm","⩓":"And","⩔":"Or","⩕":"andand","⩖":"oror","⩗":"orslope","⩘":"andslope","⩚":"andv","⩛":"orv","⩜":"andd","⩝":"ord","⩟":"wedbar","⩦":"sdote","⩪":"simdot","⩭":"congdot","⩭̸":"ncongdot","⩮":"easter","⩯":"apacir","⩰":"apE","⩰̸":"napE","⩱":"eplus","⩲":"pluse","⩳":"Esim","⩷":"eDDot","⩸":"equivDD","⩹":"ltcir","⩺":"gtcir","⩻":"ltquest","⩼":"gtquest","⩽":"les","⩽̸":"nles","⩾":"ges","⩾̸":"nges","⩿":"lesdot","⪀":"gesdot","⪁":"lesdoto","⪂":"gesdoto","⪃":"lesdotor","⪄":"gesdotol","⪅":"lap","⪆":"gap","⪇":"lne","⪈":"gne","⪉":"lnap","⪊":"gnap","⪋":"lEg","⪌":"gEl","⪍":"lsime","⪎":"gsime","⪏":"lsimg","⪐":"gsiml","⪑":"lgE","⪒":"glE","⪓":"lesges","⪔":"gesles","⪕":"els","⪖":"egs","⪗":"elsdot","⪘":"egsdot","⪙":"el","⪚":"eg","⪝":"siml","⪞":"simg","⪟":"simlE","⪠":"simgE","⪡":"LessLess","⪡̸":"NotNestedLessLess","⪢":"GreaterGreater","⪢̸":"NotNestedGreaterGreater","⪤":"glj","⪥":"gla","⪦":"ltcc","⪧":"gtcc","⪨":"lescc","⪩":"gescc","⪪":"smt","⪫":"lat","⪬":"smte","⪬︀":"smtes","⪭":"late","⪭︀":"lates","⪮":"bumpE","⪯":"pre","⪯̸":"npre","⪰":"sce","⪰̸":"nsce","⪳":"prE","⪴":"scE","⪵":"prnE","⪶":"scnE","⪷":"prap","⪸":"scap","⪹":"prnap","⪺":"scnap","⪻":"Pr","⪼":"Sc","⪽":"subdot","⪾":"supdot","⪿":"subplus","⫀":"supplus","⫁":"submult","⫂":"supmult","⫃":"subedot","⫄":"supedot","⫅":"subE","⫅̸":"nsubE","⫆":"supE","⫆̸":"nsupE","⫇":"subsim","⫈":"supsim","⫋︀":"vsubnE","⫋":"subnE","⫌︀":"vsupnE","⫌":"supnE","⫏":"csub","⫐":"csup","⫑":"csube","⫒":"csupe","⫓":"subsup","⫔":"supsub","⫕":"subsub","⫖":"supsup","⫗":"suphsub","⫘":"supdsub","⫙":"forkv","⫚":"topfork","⫛":"mlcp","⫤":"Dashv","⫦":"Vdashl","⫧":"Barv","⫨":"vBar","⫩":"vBarv","⫫":"Vbar","⫬":"Not","⫭":"bNot","⫮":"rnmid","⫯":"cirmid","⫰":"midcir","⫱":"topcir","⫲":"nhpar","⫳":"parsim","⫽":"parsl","⫽⃥":"nparsl","♭":"flat","♮":"natur","♯":"sharp","¤":"curren","¢":"cent",$:"dollar","£":"pound","¥":"yen","€":"euro","¹":"sup1","½":"half","⅓":"frac13","¼":"frac14","⅕":"frac15","⅙":"frac16","⅛":"frac18","²":"sup2","⅔":"frac23","⅖":"frac25","³":"sup3","¾":"frac34","⅗":"frac35","⅜":"frac38","⅘":"frac45","⅚":"frac56","⅝":"frac58","⅞":"frac78","𝒶":"ascr","𝕒":"aopf","𝔞":"afr","𝔸":"Aopf","𝔄":"Afr","𝒜":"Ascr","ª":"ordf","á":"aacute","Á":"Aacute","à":"agrave","À":"Agrave","ă":"abreve","Ă":"Abreve","â":"acirc","Â":"Acirc","å":"aring","Å":"angst","ä":"auml","Ä":"Auml","ã":"atilde","Ã":"Atilde","ą":"aogon","Ą":"Aogon","ā":"amacr","Ā":"Amacr","æ":"aelig","Æ":"AElig","𝒷":"bscr","𝕓":"bopf","𝔟":"bfr","𝔹":"Bopf","ℬ":"Bscr","𝔅":"Bfr","𝔠":"cfr","𝒸":"cscr","𝕔":"copf","ℭ":"Cfr","𝒞":"Cscr","ℂ":"Copf","ć":"cacute","Ć":"Cacute","ĉ":"ccirc","Ĉ":"Ccirc","č":"ccaron","Č":"Ccaron","ċ":"cdot","Ċ":"Cdot","ç":"ccedil","Ç":"Ccedil","℅":"incare","𝔡":"dfr","ⅆ":"dd","𝕕":"dopf","𝒹":"dscr","𝒟":"Dscr","𝔇":"Dfr","ⅅ":"DD","𝔻":"Dopf","ď":"dcaron","Ď":"Dcaron","đ":"dstrok","Đ":"Dstrok","ð":"eth","Ð":"ETH","ⅇ":"ee","ℯ":"escr","𝔢":"efr","𝕖":"eopf","ℰ":"Escr","𝔈":"Efr","𝔼":"Eopf","é":"eacute","É":"Eacute","è":"egrave","È":"Egrave","ê":"ecirc","Ê":"Ecirc","ě":"ecaron","Ě":"Ecaron","ë":"euml","Ë":"Euml","ė":"edot","Ė":"Edot","ę":"eogon","Ę":"Eogon","ē":"emacr","Ē":"Emacr","𝔣":"ffr","𝕗":"fopf","𝒻":"fscr","𝔉":"Ffr","𝔽":"Fopf","ℱ":"Fscr","ff":"fflig","ffi":"ffilig","ffl":"ffllig","fi":"filig",fj:"fjlig","fl":"fllig","ƒ":"fnof","ℊ":"gscr","𝕘":"gopf","𝔤":"gfr","𝒢":"Gscr","𝔾":"Gopf","𝔊":"Gfr","ǵ":"gacute","ğ":"gbreve","Ğ":"Gbreve","ĝ":"gcirc","Ĝ":"Gcirc","ġ":"gdot","Ġ":"Gdot","Ģ":"Gcedil","𝔥":"hfr","ℎ":"planckh","𝒽":"hscr","𝕙":"hopf","ℋ":"Hscr","ℌ":"Hfr","ℍ":"Hopf","ĥ":"hcirc","Ĥ":"Hcirc","ℏ":"hbar","ħ":"hstrok","Ħ":"Hstrok","𝕚":"iopf","𝔦":"ifr","𝒾":"iscr","ⅈ":"ii","𝕀":"Iopf","ℐ":"Iscr","ℑ":"Im","í":"iacute","Í":"Iacute","ì":"igrave","Ì":"Igrave","î":"icirc","Î":"Icirc","ï":"iuml","Ï":"Iuml","ĩ":"itilde","Ĩ":"Itilde","İ":"Idot","į":"iogon","Į":"Iogon","ī":"imacr","Ī":"Imacr","ij":"ijlig","IJ":"IJlig","ı":"imath","𝒿":"jscr","𝕛":"jopf","𝔧":"jfr","𝒥":"Jscr","𝔍":"Jfr","𝕁":"Jopf","ĵ":"jcirc","Ĵ":"Jcirc","ȷ":"jmath","𝕜":"kopf","𝓀":"kscr","𝔨":"kfr","𝒦":"Kscr","𝕂":"Kopf","𝔎":"Kfr","ķ":"kcedil","Ķ":"Kcedil","𝔩":"lfr","𝓁":"lscr","ℓ":"ell","𝕝":"lopf","ℒ":"Lscr","𝔏":"Lfr","𝕃":"Lopf","ĺ":"lacute","Ĺ":"Lacute","ľ":"lcaron","Ľ":"Lcaron","ļ":"lcedil","Ļ":"Lcedil","ł":"lstrok","Ł":"Lstrok","ŀ":"lmidot","Ŀ":"Lmidot","𝔪":"mfr","𝕞":"mopf","𝓂":"mscr","𝔐":"Mfr","𝕄":"Mopf","ℳ":"Mscr","𝔫":"nfr","𝕟":"nopf","𝓃":"nscr","ℕ":"Nopf","𝒩":"Nscr","𝔑":"Nfr","ń":"nacute","Ń":"Nacute","ň":"ncaron","Ň":"Ncaron","ñ":"ntilde","Ñ":"Ntilde","ņ":"ncedil","Ņ":"Ncedil","№":"numero","ŋ":"eng","Ŋ":"ENG","𝕠":"oopf","𝔬":"ofr","ℴ":"oscr","𝒪":"Oscr","𝔒":"Ofr","𝕆":"Oopf","º":"ordm","ó":"oacute","Ó":"Oacute","ò":"ograve","Ò":"Ograve","ô":"ocirc","Ô":"Ocirc","ö":"ouml","Ö":"Ouml","ő":"odblac","Ő":"Odblac","õ":"otilde","Õ":"Otilde","ø":"oslash","Ø":"Oslash","ō":"omacr","Ō":"Omacr","œ":"oelig","Œ":"OElig","𝔭":"pfr","𝓅":"pscr","𝕡":"popf","ℙ":"Popf","𝔓":"Pfr","𝒫":"Pscr","𝕢":"qopf","𝔮":"qfr","𝓆":"qscr","𝒬":"Qscr","𝔔":"Qfr","ℚ":"Qopf","ĸ":"kgreen","𝔯":"rfr","𝕣":"ropf","𝓇":"rscr","ℛ":"Rscr","ℜ":"Re","ℝ":"Ropf","ŕ":"racute","Ŕ":"Racute","ř":"rcaron","Ř":"Rcaron","ŗ":"rcedil","Ŗ":"Rcedil","𝕤":"sopf","𝓈":"sscr","𝔰":"sfr","𝕊":"Sopf","𝔖":"Sfr","𝒮":"Sscr","Ⓢ":"oS","ś":"sacute","Ś":"Sacute","ŝ":"scirc","Ŝ":"Scirc","š":"scaron","Š":"Scaron","ş":"scedil","Ş":"Scedil","ß":"szlig","𝔱":"tfr","𝓉":"tscr","𝕥":"topf","𝒯":"Tscr","𝔗":"Tfr","𝕋":"Topf","ť":"tcaron","Ť":"Tcaron","ţ":"tcedil","Ţ":"Tcedil","™":"trade","ŧ":"tstrok","Ŧ":"Tstrok","𝓊":"uscr","𝕦":"uopf","𝔲":"ufr","𝕌":"Uopf","𝔘":"Ufr","𝒰":"Uscr","ú":"uacute","Ú":"Uacute","ù":"ugrave","Ù":"Ugrave","ŭ":"ubreve","Ŭ":"Ubreve","û":"ucirc","Û":"Ucirc","ů":"uring","Ů":"Uring","ü":"uuml","Ü":"Uuml","ű":"udblac","Ű":"Udblac","ũ":"utilde","Ũ":"Utilde","ų":"uogon","Ų":"Uogon","ū":"umacr","Ū":"Umacr","𝔳":"vfr","𝕧":"vopf","𝓋":"vscr","𝔙":"Vfr","𝕍":"Vopf","𝒱":"Vscr","𝕨":"wopf","𝓌":"wscr","𝔴":"wfr","𝒲":"Wscr","𝕎":"Wopf","𝔚":"Wfr","ŵ":"wcirc","Ŵ":"Wcirc","𝔵":"xfr","𝓍":"xscr","𝕩":"xopf","𝕏":"Xopf","𝔛":"Xfr","𝒳":"Xscr","𝔶":"yfr","𝓎":"yscr","𝕪":"yopf","𝒴":"Yscr","𝔜":"Yfr","𝕐":"Yopf","ý":"yacute","Ý":"Yacute","ŷ":"ycirc","Ŷ":"Ycirc","ÿ":"yuml","Ÿ":"Yuml","𝓏":"zscr","𝔷":"zfr","𝕫":"zopf","ℨ":"Zfr","ℤ":"Zopf","𝒵":"Zscr","ź":"zacute","Ź":"Zacute","ž":"zcaron","Ž":"Zcaron","ż":"zdot","Ż":"Zdot","Ƶ":"imped","þ":"thorn","Þ":"THORN","ʼn":"napos","α":"alpha","Α":"Alpha","β":"beta","Β":"Beta","γ":"gamma","Γ":"Gamma","δ":"delta","Δ":"Delta","ε":"epsi","ϵ":"epsiv","Ε":"Epsilon","ϝ":"gammad","Ϝ":"Gammad","ζ":"zeta","Ζ":"Zeta","η":"eta","Η":"Eta","θ":"theta","ϑ":"thetav","Θ":"Theta","ι":"iota","Ι":"Iota","κ":"kappa","ϰ":"kappav","Κ":"Kappa","λ":"lambda","Λ":"Lambda","μ":"mu","µ":"micro","Μ":"Mu","ν":"nu","Ν":"Nu","ξ":"xi","Ξ":"Xi","ο":"omicron","Ο":"Omicron","π":"pi","ϖ":"piv","Π":"Pi","ρ":"rho","ϱ":"rhov","Ρ":"Rho","σ":"sigma","Σ":"Sigma","ς":"sigmaf","τ":"tau","Τ":"Tau","υ":"upsi","Υ":"Upsilon","ϒ":"Upsi","φ":"phi","ϕ":"phiv","Φ":"Phi","χ":"chi","Χ":"Chi","ψ":"psi","Ψ":"Psi","ω":"omega","Ω":"ohm","а":"acy","А":"Acy","б":"bcy","Б":"Bcy","в":"vcy","В":"Vcy","г":"gcy","Г":"Gcy","ѓ":"gjcy","Ѓ":"GJcy","д":"dcy","Д":"Dcy","ђ":"djcy","Ђ":"DJcy","е":"iecy","Е":"IEcy","ё":"iocy","Ё":"IOcy","є":"jukcy","Є":"Jukcy","ж":"zhcy","Ж":"ZHcy","з":"zcy","З":"Zcy","ѕ":"dscy","Ѕ":"DScy","и":"icy","И":"Icy","і":"iukcy","І":"Iukcy","ї":"yicy","Ї":"YIcy","й":"jcy","Й":"Jcy","ј":"jsercy","Ј":"Jsercy","к":"kcy","К":"Kcy","ќ":"kjcy","Ќ":"KJcy","л":"lcy","Л":"Lcy","љ":"ljcy","Љ":"LJcy","м":"mcy","М":"Mcy","н":"ncy","Н":"Ncy","њ":"njcy","Њ":"NJcy","о":"ocy","О":"Ocy","п":"pcy","П":"Pcy","р":"rcy","Р":"Rcy","с":"scy","С":"Scy","т":"tcy","Т":"Tcy","ћ":"tshcy","Ћ":"TSHcy","у":"ucy","У":"Ucy","ў":"ubrcy","Ў":"Ubrcy","ф":"fcy","Ф":"Fcy","х":"khcy","Х":"KHcy","ц":"tscy","Ц":"TScy","ч":"chcy","Ч":"CHcy","џ":"dzcy","Џ":"DZcy","ш":"shcy","Ш":"SHcy","щ":"shchcy","Щ":"SHCHcy","ъ":"hardcy","Ъ":"HARDcy","ы":"ycy","Ы":"Ycy","ь":"softcy","Ь":"SOFTcy","э":"ecy","Э":"Ecy","ю":"yucy","Ю":"YUcy","я":"yacy","Я":"YAcy","ℵ":"aleph","ℶ":"beth","ℷ":"gimel","ℸ":"daleth"},p=/["&'<>`]/g,h={'"':""","&":"&","'":"'","<":"<",">":">","`":"`"},d=/&#(?:[xX][^a-fA-F0-9]|[^0-9xX])/,g=/[\0-\x08\x0B\x0E-\x1F\x7F-\x9F\uFDD0-\uFDEF\uFFFE\uFFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDFFE\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,m=/&#([0-9]+)(;?)|&#[xX]([a-fA-F0-9]+)(;?)|&([0-9a-zA-Z]+);|&(Aacute|Agrave|Atilde|Ccedil|Eacute|Egrave|Iacute|Igrave|Ntilde|Oacute|Ograve|Oslash|Otilde|Uacute|Ugrave|Yacute|aacute|agrave|atilde|brvbar|ccedil|curren|divide|eacute|egrave|frac12|frac14|frac34|iacute|igrave|iquest|middot|ntilde|oacute|ograve|oslash|otilde|plusmn|uacute|ugrave|yacute|AElig|Acirc|Aring|Ecirc|Icirc|Ocirc|THORN|Ucirc|acirc|acute|aelig|aring|cedil|ecirc|icirc|iexcl|laquo|micro|ocirc|pound|raquo|szlig|thorn|times|ucirc|Auml|COPY|Euml|Iuml|Ouml|QUOT|Uuml|auml|cent|copy|euml|iuml|macr|nbsp|ordf|ordm|ouml|para|quot|sect|sup1|sup2|sup3|uuml|yuml|AMP|ETH|REG|amp|deg|eth|not|reg|shy|uml|yen|GT|LT|gt|lt)([=a-zA-Z0-9])?/g,y={aacute:"á",Aacute:"Á",abreve:"ă",Abreve:"Ă",ac:"∾",acd:"∿",acE:"∾̳",acirc:"â",Acirc:"Â",acute:"´",acy:"а",Acy:"А",aelig:"æ",AElig:"Æ",af:"⁡",afr:"𝔞",Afr:"𝔄",agrave:"à",Agrave:"À",alefsym:"ℵ",aleph:"ℵ",alpha:"α",Alpha:"Α",amacr:"ā",Amacr:"Ā",amalg:"⨿",amp:"&",AMP:"&",and:"∧",And:"⩓",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsd:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",aogon:"ą",Aogon:"Ą",aopf:"𝕒",Aopf:"𝔸",ap:"≈",apacir:"⩯",ape:"≊",apE:"⩰",apid:"≋",apos:"'",ApplyFunction:"⁡",approx:"≈",approxeq:"≊",aring:"å",Aring:"Å",ascr:"𝒶",Ascr:"𝒜",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",atilde:"ã",Atilde:"Ã",auml:"ä",Auml:"Ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",barwed:"⌅",Barwed:"⌆",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",bcy:"б",Bcy:"Б",bdquo:"„",becaus:"∵",because:"∵",Because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",beta:"β",Beta:"Β",beth:"ℶ",between:"≬",bfr:"𝔟",Bfr:"𝔅",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bnot:"⌐",bNot:"⫭",bopf:"𝕓",Bopf:"𝔹",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxdl:"┐",boxdL:"╕",boxDl:"╖",boxDL:"╗",boxdr:"┌",boxdR:"╒",boxDr:"╓",boxDR:"╔",boxh:"─",boxH:"═",boxhd:"┬",boxhD:"╥",boxHd:"╤",boxHD:"╦",boxhu:"┴",boxhU:"╨",boxHu:"╧",boxHU:"╩",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxuL:"╛",boxUl:"╜",boxUL:"╝",boxur:"└",boxuR:"╘",boxUr:"╙",boxUR:"╚",boxv:"│",boxV:"║",boxvh:"┼",boxvH:"╪",boxVh:"╫",boxVH:"╬",boxvl:"┤",boxvL:"╡",boxVl:"╢",boxVL:"╣",boxvr:"├",boxvR:"╞",boxVr:"╟",boxVR:"╠",bprime:"‵",breve:"˘",Breve:"˘",brvbar:"¦",bscr:"𝒷",Bscr:"ℬ",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpe:"≏",bumpE:"⪮",bumpeq:"≏",Bumpeq:"≎",cacute:"ć",Cacute:"Ć",cap:"∩",Cap:"⋒",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",ccaron:"č",Ccaron:"Č",ccedil:"ç",Ccedil:"Ç",ccirc:"ĉ",Ccirc:"Ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",cdot:"ċ",Cdot:"Ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",CenterDot:"·",cfr:"𝔠",Cfr:"ℭ",chcy:"ч",CHcy:"Ч",check:"✓",checkmark:"✓",chi:"χ",Chi:"Χ",cir:"○",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cire:"≗",cirE:"⧃",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",colon:":",Colon:"∷",colone:"≔",Colone:"⩴",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",conint:"∮",Conint:"∯",ContourIntegral:"∮",copf:"𝕔",Copf:"ℂ",coprod:"∐",Coproduct:"∐",copy:"©",COPY:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",cross:"✗",Cross:"⨯",cscr:"𝒸",Cscr:"𝒞",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cup:"∪",Cup:"⋓",cupbrcap:"⩈",cupcap:"⩆",CupCap:"≍",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dagger:"†",Dagger:"‡",daleth:"ℸ",darr:"↓",dArr:"⇓",Darr:"↡",dash:"‐",dashv:"⊣",Dashv:"⫤",dbkarow:"⤏",dblac:"˝",dcaron:"ď",Dcaron:"Ď",dcy:"д",Dcy:"Д",dd:"ⅆ",DD:"ⅅ",ddagger:"‡",ddarr:"⇊",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",delta:"δ",Delta:"Δ",demptyv:"⦱",dfisht:"⥿",dfr:"𝔡",Dfr:"𝔇",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",diamond:"⋄",Diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",djcy:"ђ",DJcy:"Ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",dopf:"𝕕",Dopf:"𝔻",dot:"˙",Dot:"¨",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",downarrow:"↓",Downarrow:"⇓",DownArrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",dscr:"𝒹",Dscr:"𝒟",dscy:"ѕ",DScy:"Ѕ",dsol:"⧶",dstrok:"đ",Dstrok:"Đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",dzcy:"џ",DZcy:"Џ",dzigrarr:"⟿",eacute:"é",Eacute:"É",easter:"⩮",ecaron:"ě",Ecaron:"Ě",ecir:"≖",ecirc:"ê",Ecirc:"Ê",ecolon:"≕",ecy:"э",Ecy:"Э",eDDot:"⩷",edot:"ė",eDot:"≑",Edot:"Ė",ee:"ⅇ",efDot:"≒",efr:"𝔢",Efr:"𝔈",eg:"⪚",egrave:"è",Egrave:"È",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",emacr:"ē",Emacr:"Ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp:" ",emsp13:" ",emsp14:" ",eng:"ŋ",ENG:"Ŋ",ensp:" ",eogon:"ę",Eogon:"Ę",eopf:"𝕖",Eopf:"𝔼",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",epsilon:"ε",Epsilon:"Ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",escr:"ℯ",Escr:"ℰ",esdot:"≐",esim:"≂",Esim:"⩳",eta:"η",Eta:"Η",eth:"ð",ETH:"Ð",euml:"ë",Euml:"Ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",exponentiale:"ⅇ",ExponentialE:"ⅇ",fallingdotseq:"≒",fcy:"ф",Fcy:"Ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",ffr:"𝔣",Ffr:"𝔉",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",fopf:"𝕗",Fopf:"𝔽",forall:"∀",ForAll:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",Fscr:"ℱ",gacute:"ǵ",gamma:"γ",Gamma:"Γ",gammad:"ϝ",Gammad:"Ϝ",gap:"⪆",gbreve:"ğ",Gbreve:"Ğ",Gcedil:"Ģ",gcirc:"ĝ",Gcirc:"Ĝ",gcy:"г",Gcy:"Г",gdot:"ġ",Gdot:"Ġ",ge:"≥",gE:"≧",gel:"⋛",gEl:"⪌",geq:"≥",geqq:"≧",geqslant:"⩾",ges:"⩾",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",gfr:"𝔤",Gfr:"𝔊",gg:"≫",Gg:"⋙",ggg:"⋙",gimel:"ℷ",gjcy:"ѓ",GJcy:"Ѓ",gl:"≷",gla:"⪥",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gnE:"≩",gneq:"⪈",gneqq:"≩",gnsim:"⋧",gopf:"𝕘",Gopf:"𝔾",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",gscr:"ℊ",Gscr:"𝒢",gsim:"≳",gsime:"⪎",gsiml:"⪐",gt:">",Gt:"≫",GT:">",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",hardcy:"ъ",HARDcy:"Ъ",harr:"↔",hArr:"⇔",harrcir:"⥈",harrw:"↭",Hat:"^",hbar:"ℏ",hcirc:"ĥ",Hcirc:"Ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",Hfr:"ℌ",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",Hopf:"ℍ",horbar:"―",HorizontalLine:"─",hscr:"𝒽",Hscr:"ℋ",hslash:"ℏ",hstrok:"ħ",Hstrok:"Ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",iacute:"í",Iacute:"Í",ic:"⁣",icirc:"î",Icirc:"Î",icy:"и",Icy:"И",Idot:"İ",iecy:"е",IEcy:"Е",iexcl:"¡",iff:"⇔",ifr:"𝔦",Ifr:"ℑ",igrave:"ì",Igrave:"Ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",ijlig:"ij",IJlig:"IJ",Im:"ℑ",imacr:"ī",Imacr:"Ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",imof:"⊷",imped:"Ƶ",Implies:"⇒",in:"∈",incare:"℅",infin:"∞",infintie:"⧝",inodot:"ı",int:"∫",Int:"∬",intcal:"⊺",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"⁣",InvisibleTimes:"⁢",iocy:"ё",IOcy:"Ё",iogon:"į",Iogon:"Į",iopf:"𝕚",Iopf:"𝕀",iota:"ι",Iota:"Ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",Iscr:"ℐ",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",itilde:"ĩ",Itilde:"Ĩ",iukcy:"і",Iukcy:"І",iuml:"ï",Iuml:"Ï",jcirc:"ĵ",Jcirc:"Ĵ",jcy:"й",Jcy:"Й",jfr:"𝔧",Jfr:"𝔍",jmath:"ȷ",jopf:"𝕛",Jopf:"𝕁",jscr:"𝒿",Jscr:"𝒥",jsercy:"ј",Jsercy:"Ј",jukcy:"є",Jukcy:"Є",kappa:"κ",Kappa:"Κ",kappav:"ϰ",kcedil:"ķ",Kcedil:"Ķ",kcy:"к",Kcy:"К",kfr:"𝔨",Kfr:"𝔎",kgreen:"ĸ",khcy:"х",KHcy:"Х",kjcy:"ќ",KJcy:"Ќ",kopf:"𝕜",Kopf:"𝕂",kscr:"𝓀",Kscr:"𝒦",lAarr:"⇚",lacute:"ĺ",Lacute:"Ĺ",laemptyv:"⦴",lagran:"ℒ",lambda:"λ",Lambda:"Λ",lang:"⟨",Lang:"⟪",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",larr:"←",lArr:"⇐",Larr:"↞",larrb:"⇤",larrbfs:"⤟",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",lat:"⪫",latail:"⤙",lAtail:"⤛",late:"⪭",lates:"⪭︀",lbarr:"⤌",lBarr:"⤎",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",lcaron:"ľ",Lcaron:"Ľ",lcedil:"ļ",Lcedil:"Ļ",lceil:"⌈",lcub:"{",lcy:"л",Lcy:"Л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",lE:"≦",LeftAngleBracket:"⟨",leftarrow:"←",Leftarrow:"⇐",LeftArrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",Leftrightarrow:"⇔",LeftRightArrow:"↔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",leg:"⋚",lEg:"⪋",leq:"≤",leqq:"≦",leqslant:"⩽",les:"⩽",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",lfr:"𝔩",Lfr:"𝔏",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",ljcy:"љ",LJcy:"Љ",ll:"≪",Ll:"⋘",llarr:"⇇",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",lmidot:"ŀ",Lmidot:"Ŀ",lmoust:"⎰",lmoustache:"⎰",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lnE:"≨",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",Longleftarrow:"⟸",LongLeftArrow:"⟵",longleftrightarrow:"⟷",Longleftrightarrow:"⟺",LongLeftRightArrow:"⟷",longmapsto:"⟼",longrightarrow:"⟶",Longrightarrow:"⟹",LongRightArrow:"⟶",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",lopf:"𝕝",Lopf:"𝕃",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",Lscr:"ℒ",lsh:"↰",Lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",lstrok:"ł",Lstrok:"Ł",lt:"<",Lt:"≪",LT:"<",ltcc:"⪦",ltcir:"⩹",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",map:"↦",Map:"⤅",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",mcy:"м",Mcy:"М",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",mfr:"𝔪",Mfr:"𝔐",mho:"℧",micro:"µ",mid:"∣",midast:"*",midcir:"⫰",middot:"·",minus:"−",minusb:"⊟",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",mopf:"𝕞",Mopf:"𝕄",mp:"∓",mscr:"𝓂",Mscr:"ℳ",mstpos:"∾",mu:"μ",Mu:"Μ",multimap:"⊸",mumap:"⊸",nabla:"∇",nacute:"ń",Nacute:"Ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natur:"♮",natural:"♮",naturals:"ℕ",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",ncaron:"ň",Ncaron:"Ň",ncedil:"ņ",Ncedil:"Ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",ncy:"н",Ncy:"Н",ndash:"–",ne:"≠",nearhk:"⤤",nearr:"↗",neArr:"⇗",nearrow:"↗",nedot:"≐̸",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:"\n",nexist:"∄",nexists:"∄",nfr:"𝔫",Nfr:"𝔑",nge:"≱",ngE:"≧̸",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",ngt:"≯",nGt:"≫⃒",ngtr:"≯",nGtv:"≫̸",nharr:"↮",nhArr:"⇎",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",njcy:"њ",NJcy:"Њ",nlarr:"↚",nlArr:"⇍",nldr:"‥",nle:"≰",nlE:"≦̸",nleftarrow:"↚",nLeftarrow:"⇍",nleftrightarrow:"↮",nLeftrightarrow:"⇎",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nlt:"≮",nLt:"≪⃒",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"⁠",NonBreakingSpace:" ",nopf:"𝕟",Nopf:"ℕ",not:"¬",Not:"⫬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrarr:"↛",nrArr:"⇏",nrarrc:"⤳̸",nrarrw:"↝̸",nrightarrow:"↛",nRightarrow:"⇏",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",nscr:"𝓃",Nscr:"𝒩",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsube:"⊈",nsubE:"⫅̸",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupe:"⊉",nsupE:"⫆̸",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",ntilde:"ñ",Ntilde:"Ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",nu:"ν",Nu:"Ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwarr:"↖",nwArr:"⇖",nwarrow:"↖",nwnear:"⤧",oacute:"ó",Oacute:"Ó",oast:"⊛",ocir:"⊚",ocirc:"ô",Ocirc:"Ô",ocy:"о",Ocy:"О",odash:"⊝",odblac:"ő",Odblac:"Ő",odiv:"⨸",odot:"⊙",odsold:"⦼",oelig:"œ",OElig:"Œ",ofcir:"⦿",ofr:"𝔬",Ofr:"𝔒",ogon:"˛",ograve:"ò",Ograve:"Ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",omacr:"ō",Omacr:"Ō",omega:"ω",Omega:"Ω",omicron:"ο",Omicron:"Ο",omid:"⦶",ominus:"⊖",oopf:"𝕠",Oopf:"𝕆",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",or:"∨",Or:"⩔",orarr:"↻",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",oscr:"ℴ",Oscr:"𝒪",oslash:"ø",Oslash:"Ø",osol:"⊘",otilde:"õ",Otilde:"Õ",otimes:"⊗",Otimes:"⨷",otimesas:"⨶",ouml:"ö",Ouml:"Ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",par:"∥",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",pcy:"п",Pcy:"П",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",pfr:"𝔭",Pfr:"𝔓",phi:"φ",Phi:"Φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",pi:"π",Pi:"Π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plus:"+",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",popf:"𝕡",Popf:"ℙ",pound:"£",pr:"≺",Pr:"⪻",prap:"⪷",prcue:"≼",pre:"⪯",prE:"⪳",prec:"≺",precapprox:"⪷",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",precsim:"≾",prime:"′",Prime:"″",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportion:"∷",Proportional:"∝",propto:"∝",prsim:"≾",prurel:"⊰",pscr:"𝓅",Pscr:"𝒫",psi:"ψ",Psi:"Ψ",puncsp:" ",qfr:"𝔮",Qfr:"𝔔",qint:"⨌",qopf:"𝕢",Qopf:"ℚ",qprime:"⁗",qscr:"𝓆",Qscr:"𝒬",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',QUOT:'"',rAarr:"⇛",race:"∽̱",racute:"ŕ",Racute:"Ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",Rang:"⟫",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarr:"→",rArr:"⇒",Rarr:"↠",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",rarrtl:"↣",Rarrtl:"⤖",rarrw:"↝",ratail:"⤚",rAtail:"⤜",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rBarr:"⤏",RBarr:"⤐",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",rcaron:"ř",Rcaron:"Ř",rcedil:"ŗ",Rcedil:"Ŗ",rceil:"⌉",rcub:"}",rcy:"р",Rcy:"Р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",Re:"ℜ",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",rect:"▭",reg:"®",REG:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",Rfr:"ℜ",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",rho:"ρ",Rho:"Ρ",rhov:"ϱ",RightAngleBracket:"⟩",rightarrow:"→",Rightarrow:"⇒",RightArrow:"→",RightArrowBar:"⇥",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTee:"⊢",RightTeeArrow:"↦",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangle:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",RightVectorBar:"⥓",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",Ropf:"ℝ",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",rscr:"𝓇",Rscr:"ℛ",rsh:"↱",Rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",sacute:"ś",Sacute:"Ś",sbquo:"‚",sc:"≻",Sc:"⪼",scap:"⪸",scaron:"š",Scaron:"Š",sccue:"≽",sce:"⪰",scE:"⪴",scedil:"ş",Scedil:"Ş",scirc:"ŝ",Scirc:"Ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",scy:"с",Scy:"С",sdot:"⋅",sdotb:"⊡",sdote:"⩦",searhk:"⤥",searr:"↘",seArr:"⇘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",sfr:"𝔰",Sfr:"𝔖",sfrown:"⌢",sharp:"♯",shchcy:"щ",SHCHcy:"Щ",shcy:"ш",SHcy:"Ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"­",sigma:"σ",Sigma:"Σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",softcy:"ь",SOFTcy:"Ь",sol:"/",solb:"⧄",solbar:"⌿",sopf:"𝕤",Sopf:"𝕊",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",squ:"□",square:"□",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squf:"▪",srarr:"→",sscr:"𝓈",Sscr:"𝒮",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",star:"☆",Star:"⋆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",Sub:"⋐",subdot:"⪽",sube:"⊆",subE:"⫅",subedot:"⫃",submult:"⫁",subne:"⊊",subnE:"⫋",subplus:"⪿",subrarr:"⥹",subset:"⊂",Subset:"⋐",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succ:"≻",succapprox:"⪸",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",sum:"∑",Sum:"∑",sung:"♪",sup:"⊃",Sup:"⋑",sup1:"¹",sup2:"²",sup3:"³",supdot:"⪾",supdsub:"⫘",supe:"⊇",supE:"⫆",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supne:"⊋",supnE:"⫌",supplus:"⫀",supset:"⊃",Supset:"⋑",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swarr:"↙",swArr:"⇙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:"\t",target:"⌖",tau:"τ",Tau:"Τ",tbrk:"⎴",tcaron:"ť",Tcaron:"Ť",tcedil:"ţ",Tcedil:"Ţ",tcy:"т",Tcy:"Т",tdot:"⃛",telrec:"⌕",tfr:"𝔱",Tfr:"𝔗",there4:"∴",therefore:"∴",Therefore:"∴",theta:"θ",Theta:"Θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:"  ",thinsp:" ",ThinSpace:" ",thkap:"≈",thksim:"∼",thorn:"þ",THORN:"Þ",tilde:"˜",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",times:"×",timesb:"⊠",timesbar:"⨱",timesd:"⨰",tint:"∭",toea:"⤨",top:"⊤",topbot:"⌶",topcir:"⫱",topf:"𝕥",Topf:"𝕋",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",TRADE:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",tscr:"𝓉",Tscr:"𝒯",tscy:"ц",TScy:"Ц",tshcy:"ћ",TSHcy:"Ћ",tstrok:"ŧ",Tstrok:"Ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",uacute:"ú",Uacute:"Ú",uarr:"↑",uArr:"⇑",Uarr:"↟",Uarrocir:"⥉",ubrcy:"ў",Ubrcy:"Ў",ubreve:"ŭ",Ubreve:"Ŭ",ucirc:"û",Ucirc:"Û",ucy:"у",Ucy:"У",udarr:"⇅",udblac:"ű",Udblac:"Ű",udhar:"⥮",ufisht:"⥾",ufr:"𝔲",Ufr:"𝔘",ugrave:"ù",Ugrave:"Ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",umacr:"ū",Umacr:"Ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",uogon:"ų",Uogon:"Ų",uopf:"𝕦",Uopf:"𝕌",uparrow:"↑",Uparrow:"⇑",UpArrow:"↑",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",updownarrow:"↕",Updownarrow:"⇕",UpDownArrow:"↕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",upsi:"υ",Upsi:"ϒ",upsih:"ϒ",upsilon:"υ",Upsilon:"Υ",UpTee:"⊥",UpTeeArrow:"↥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",uring:"ů",Uring:"Ů",urtri:"◹",uscr:"𝓊",Uscr:"𝒰",utdot:"⋰",utilde:"ũ",Utilde:"Ũ",utri:"▵",utrif:"▴",uuarr:"⇈",uuml:"ü",Uuml:"Ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",vArr:"⇕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vBar:"⫨",Vbar:"⫫",vBarv:"⫩",vcy:"в",Vcy:"В",vdash:"⊢",vDash:"⊨",Vdash:"⊩",VDash:"⊫",Vdashl:"⫦",vee:"∨",Vee:"⋁",veebar:"⊻",veeeq:"≚",vellip:"⋮",verbar:"|",Verbar:"‖",vert:"|",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",vfr:"𝔳",Vfr:"𝔙",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",vopf:"𝕧",Vopf:"𝕍",vprop:"∝",vrtri:"⊳",vscr:"𝓋",Vscr:"𝒱",vsubne:"⊊︀",vsubnE:"⫋︀",vsupne:"⊋︀",vsupnE:"⫌︀",Vvdash:"⊪",vzigzag:"⦚",wcirc:"ŵ",Wcirc:"Ŵ",wedbar:"⩟",wedge:"∧",Wedge:"⋀",wedgeq:"≙",weierp:"℘",wfr:"𝔴",Wfr:"𝔚",wopf:"𝕨",Wopf:"𝕎",wp:"℘",wr:"≀",wreath:"≀",wscr:"𝓌",Wscr:"𝒲",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",xfr:"𝔵",Xfr:"𝔛",xharr:"⟷",xhArr:"⟺",xi:"ξ",Xi:"Ξ",xlarr:"⟵",xlArr:"⟸",xmap:"⟼",xnis:"⋻",xodot:"⨀",xopf:"𝕩",Xopf:"𝕏",xoplus:"⨁",xotime:"⨂",xrarr:"⟶",xrArr:"⟹",xscr:"𝓍",Xscr:"𝒳",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",yacute:"ý",Yacute:"Ý",yacy:"я",YAcy:"Я",ycirc:"ŷ",Ycirc:"Ŷ",ycy:"ы",Ycy:"Ы",yen:"¥",yfr:"𝔶",Yfr:"𝔜",yicy:"ї",YIcy:"Ї",yopf:"𝕪",Yopf:"𝕐",yscr:"𝓎",Yscr:"𝒴",yucy:"ю",YUcy:"Ю",yuml:"ÿ",Yuml:"Ÿ",zacute:"ź",Zacute:"Ź",zcaron:"ž",Zcaron:"Ž",zcy:"з",Zcy:"З",zdot:"ż",Zdot:"Ż",zeetrf:"ℨ",ZeroWidthSpace:"​",zeta:"ζ",Zeta:"Ζ",zfr:"𝔷",Zfr:"ℨ",zhcy:"ж",ZHcy:"Ж",zigrarr:"⇝",zopf:"𝕫",Zopf:"ℤ",zscr:"𝓏",Zscr:"𝒵",zwj:"‍",zwnj:"‌"},b={aacute:"á",Aacute:"Á",acirc:"â",Acirc:"Â",acute:"´",aelig:"æ",AElig:"Æ",agrave:"à",Agrave:"À",amp:"&",AMP:"&",aring:"å",Aring:"Å",atilde:"ã",Atilde:"Ã",auml:"ä",Auml:"Ä",brvbar:"¦",ccedil:"ç",Ccedil:"Ç",cedil:"¸",cent:"¢",copy:"©",COPY:"©",curren:"¤",deg:"°",divide:"÷",eacute:"é",Eacute:"É",ecirc:"ê",Ecirc:"Ê",egrave:"è",Egrave:"È",eth:"ð",ETH:"Ð",euml:"ë",Euml:"Ë",frac12:"½",frac14:"¼",frac34:"¾",gt:">",GT:">",iacute:"í",Iacute:"Í",icirc:"î",Icirc:"Î",iexcl:"¡",igrave:"ì",Igrave:"Ì",iquest:"¿",iuml:"ï",Iuml:"Ï",laquo:"«",lt:"<",LT:"<",macr:"¯",micro:"µ",middot:"·",nbsp:" ",not:"¬",ntilde:"ñ",Ntilde:"Ñ",oacute:"ó",Oacute:"Ó",ocirc:"ô",Ocirc:"Ô",ograve:"ò",Ograve:"Ò",ordf:"ª",ordm:"º",oslash:"ø",Oslash:"Ø",otilde:"õ",Otilde:"Õ",ouml:"ö",Ouml:"Ö",para:"¶",plusmn:"±",pound:"£",quot:'"',QUOT:'"',raquo:"»",reg:"®",REG:"®",sect:"§",shy:"­",sup1:"¹",sup2:"²",sup3:"³",szlig:"ß",thorn:"þ",THORN:"Þ",times:"×",uacute:"ú",Uacute:"Ú",ucirc:"û",Ucirc:"Û",ugrave:"ù",Ugrave:"Ù",uml:"¨",uuml:"ü",Uuml:"Ü",yacute:"ý",Yacute:"Ý",yen:"¥",yuml:"ÿ"},v={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"},w=[1,2,3,4,5,6,7,8,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,64976,64977,64978,64979,64980,64981,64982,64983,64984,64985,64986,64987,64988,64989,64990,64991,64992,64993,64994,64995,64996,64997,64998,64999,65e3,65001,65002,65003,65004,65005,65006,65007,65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111],A=String.fromCharCode,E={}.hasOwnProperty,x=function(l,n){return E.call(l,n)},C=function(l,n){if(!l)return n;var e,t={};for(e in n)t[e]=x(l,e)?l[e]:n[e];return t},_=function(l,n){var e="";return l>=55296&&l<=57343||l>1114111?(n&&k("character reference outside the permissible Unicode range"),"�"):x(v,l)?(n&&k("disallowed character reference"),v[l]):(n&&function(l,n){for(var e=-1,t=l.length;++e65535&&(e+=A((l-=65536)>>>10&1023|55296),l=56320|1023&l),e+=A(l))},T=function(l){return"&#x"+l.toString(16).toUpperCase()+";"},S=function(l){return"&#"+l+";"},k=function(l){throw Error("Parse error: "+l)},F=function(l,n){(n=C(n,F.options)).strict&&g.test(l)&&k("forbidden code point");var e=n.encodeEverything,t=n.useNamedReferences,u=n.allowUnsafeSymbols,r=n.decimal?S:T,o=function(l){return r(l.charCodeAt(0))};return e?(l=l.replace(a,function(l){return t&&x(f,l)?"&"+f[l]+";":o(l)}),t&&(l=l.replace(/>\u20D2/g,">⃒").replace(/<\u20D2/g,"<⃒").replace(/fj/g,"fj")),t&&(l=l.replace(c,function(l){return"&"+f[l]+";"}))):t?(u||(l=l.replace(p,function(l){return"&"+f[l]+";"})),l=(l=l.replace(/>\u20D2/g,">⃒").replace(/<\u20D2/g,"<⃒")).replace(c,function(l){return"&"+f[l]+";"})):u||(l=l.replace(p,o)),l.replace(i,function(l){var n=l.charCodeAt(0),e=l.charCodeAt(1);return r(1024*(n-55296)+e-56320+65536)}).replace(s,o)};F.options={allowUnsafeSymbols:!1,encodeEverything:!1,strict:!1,useNamedReferences:!1,decimal:!1};var D=function(l,n){var e=(n=C(n,D.options)).strict;return e&&d.test(l)&&k("malformed character reference"),l.replace(m,function(l,t,u,r,o,i,a,s){var c,f,p,h,d,g;return t?(p=t,f=u,e&&!f&&k("character reference was not terminated by a semicolon"),c=parseInt(p,10),_(c,e)):r?(h=r,f=o,e&&!f&&k("character reference was not terminated by a semicolon"),c=parseInt(h,16),_(c,e)):i?x(y,d=i)?y[d]:(e&&k("named character reference was not terminated by a semicolon"),l):(d=a,(g=s)&&n.isAttributeValue?(e&&"="==g&&k("`&` did not start a character reference"),l):(e&&k("named character reference was not terminated by a semicolon"),b[d]+(g||"")))})};D.options={isAttributeValue:!1,strict:!1};var P={version:"1.1.1",encode:F,decode:D,escape:function(l){return l.replace(p,function(l){return h[l]})},unescape:D};if(u&&!u.nodeType)if(r)r.exports=P;else for(var j in P)x(P,j)&&(u[j]=P[j]);else n.he=P}(this)}).call(this,void 0!==l?l:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(l,n,e){e.read=function(l,n,e,t,u){var r,o,i=8*u-t-1,a=(1<>1,c=-7,f=e?u-1:0,p=e?-1:1,h=l[n+f];for(f+=p,r=h&(1<<-c)-1,h>>=-c,c+=i;c>0;r=256*r+l[n+f],f+=p,c-=8);for(o=r&(1<<-c)-1,r>>=-c,c+=t;c>0;o=256*o+l[n+f],f+=p,c-=8);if(0===r)r=1-s;else{if(r===a)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,t),r-=s}return(h?-1:1)*o*Math.pow(2,r-t)},e.write=function(l,n,e,t,u,r){var o,i,a,s=8*r-u-1,c=(1<>1,p=23===u?Math.pow(2,-24)-Math.pow(2,-77):0,h=t?0:r-1,d=t?1:-1,g=n<0||0===n&&1/n<0?1:0;for(n=Math.abs(n),isNaN(n)||n===1/0?(i=isNaN(n)?1:0,o=c):(o=Math.floor(Math.log(n)/Math.LN2),n*(a=Math.pow(2,-o))<1&&(o--,a*=2),(n+=o+f>=1?p/a:p*Math.pow(2,1-f))*a>=2&&(o++,a/=2),o+f>=c?(i=0,o=c):o+f>=1?(i=(n*a-1)*Math.pow(2,u),o+=f):(i=n*Math.pow(2,f-1)*Math.pow(2,u),o=0));u>=8;l[e+h]=255&i,h+=d,i/=256,u-=8);for(o=o<0;l[e+h]=255&o,h+=d,o/=256,s-=8);l[e+h-d]|=128*g}},{}],50:[function(l,n,e){"function"==typeof Object.create?n.exports=function(l,n){l.super_=n,l.prototype=Object.create(n.prototype,{constructor:{value:l,enumerable:!1,writable:!0,configurable:!0}})}:n.exports=function(l,n){l.super_=n;var e=function(){};e.prototype=n.prototype,l.prototype=new e,l.prototype.constructor=l}},{}],51:[function(l,n,e){function t(l){return!!l.constructor&&"function"==typeof l.constructor.isBuffer&&l.constructor.isBuffer(l)} /*! * Determine if an object is a Buffer * * @author Feross Aboukhadijeh * @license MIT */ n.exports=function(l){return null!=l&&(t(l)||function(l){return"function"==typeof l.readFloatLE&&"function"==typeof l.slice&&t(l.slice(0,0))}(l)||!!l._isBuffer)}},{}],52:[function(l,n,e){var t={}.toString;n.exports=Array.isArray||function(l){return"[object Array]"==t.call(l)}},{}],53:[function(l,n,e){(function(e){var t=l("path"),u=l("fs"),r=parseInt("0777",8);function o(l,n,i,a){"function"==typeof n?(i=n,n={}):n&&"object"==typeof n||(n={mode:n});var s=n.mode,c=n.fs||u;void 0===s&&(s=r&~e.umask()),a||(a=null);var f=i||function(){};l=t.resolve(l),c.mkdir(l,s,function(e){if(!e)return f(null,a=a||l);switch(e.code){case"ENOENT":o(t.dirname(l),n,function(e,t){e?f(e,t):o(l,n,f,t)});break;default:c.stat(l,function(l,n){l||!n.isDirectory()?f(e,a):f(null,a)})}})}n.exports=o.mkdirp=o.mkdirP=o,o.sync=function l(n,o,i){o&&"object"==typeof o||(o={mode:o});var a=o.mode,s=o.fs||u;void 0===a&&(a=r&~e.umask()),i||(i=null),n=t.resolve(n);try{s.mkdirSync(n,a),i=i||n}catch(e){switch(e.code){case"ENOENT":i=l(t.dirname(n),o,i),l(n,o,i);break;default:var c;try{c=s.statSync(n)}catch(l){throw e}if(!c.isDirectory())throw e}}return i}}).call(this,l("_process"))},{_process:56,fs:40,path:40}],54:[function(l,n,e){var t=1e3,u=60*t,r=60*u,o=24*r,i=365.25*o;function a(l,n,e){if(!(l0)return function(l){if((l=String(l)).length>100)return;var n=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(l);if(!n)return;var e=parseFloat(n[1]);switch((n[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return e*i;case"days":case"day":case"d":return e*o;case"hours":case"hour":case"hrs":case"hr":case"h":return e*r;case"minutes":case"minute":case"mins":case"min":case"m":return e*u;case"seconds":case"second":case"secs":case"sec":case"s":return e*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return e;default:return}}(l);if("number"===s&&!1===isNaN(l))return n.long?a(e=l,o,"day")||a(e,r,"hour")||a(e,u,"minute")||a(e,t,"second")||e+" ms":function(l){if(l>=o)return Math.round(l/o)+"d";if(l>=r)return Math.round(l/r)+"h";if(l>=u)return Math.round(l/u)+"m";if(l>=t)return Math.round(l/t)+"s";return l+"ms"}(l);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(l))}},{}],55:[function(l,n,e){(function(l){"use strict";!l.version||0===l.version.indexOf("v0.")||0===l.version.indexOf("v1.")&&0!==l.version.indexOf("v1.8.")?n.exports={nextTick:function(n,e,t,u){if("function"!=typeof n)throw new TypeError('"callback" argument must be a function');var r,o,i=arguments.length;switch(i){case 0:case 1:return l.nextTick(n);case 2:return l.nextTick(function(){n.call(null,e)});case 3:return l.nextTick(function(){n.call(null,e,t)});case 4:return l.nextTick(function(){n.call(null,e,t,u)});default:for(r=new Array(i-1),o=0;o1)for(var e=1;e0?("string"==typeof n||o.objectMode||Object.getPrototypeOf(n)===s.prototype||(n=function(l){return s.from(l)}(n)),t?o.endEmitted?l.emit("error",new Error("stream.unshift() after end event")):A(l,o,n,!0):o.ended?l.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!e?(n=o.decoder.write(n),o.objectMode||0!==n.length?A(l,o,n,!1):T(l,o)):A(l,o,n,!1))):t||(o.reading=!1));return function(l){return!l.ended&&(l.needReadable||l.lengthn.highWaterMark&&(n.highWaterMark=function(l){return l>=E?l=E:(l--,l|=l>>>1,l|=l>>>2,l|=l>>>4,l|=l>>>8,l|=l>>>16,l++),l}(l)),l<=n.length?l:n.ended?n.length:(n.needReadable=!0,0))}function C(l){var n=l._readableState;n.needReadable=!1,n.emittedReadable||(h("emitReadable",n.flowing),n.emittedReadable=!0,n.sync?u.nextTick(_,l):_(l))}function _(l){h("emit readable"),l.emit("readable"),D(l)}function T(l,n){n.readingMore||(n.readingMore=!0,u.nextTick(S,l,n))}function S(l,n){for(var e=n.length;!n.reading&&!n.flowing&&!n.ended&&n.length=n.length?(e=n.decoder?n.buffer.join(""):1===n.buffer.length?n.buffer.head.data:n.buffer.concat(n.length),n.buffer.clear()):e=function(l,n,e){var t;lr.length?r.length:l;if(o===r.length?u+=r:u+=r.slice(0,l),0===(l-=o)){o===r.length?(++t,e.next?n.head=e.next:n.head=n.tail=null):(n.head=e,e.data=r.slice(o));break}++t}return n.length-=t,u}(l,n):function(l,n){var e=s.allocUnsafe(l),t=n.head,u=1;t.data.copy(e),l-=t.data.length;for(;t=t.next;){var r=t.data,o=l>r.length?r.length:l;if(r.copy(e,e.length-l,0,o),0===(l-=o)){o===r.length?(++u,t.next?n.head=t.next:n.head=n.tail=null):(n.head=t,t.data=r.slice(o));break}++u}return n.length-=u,e}(l,n);return t}(l,n.buffer,n.decoder),e);var e}function j(l){var n=l._readableState;if(n.length>0)throw new Error('"endReadable()" called on non-empty stream');n.endEmitted||(n.ended=!0,u.nextTick(O,n,l))}function O(l,n){l.endEmitted||0!==l.length||(l.endEmitted=!0,n.readable=!1,n.emit("end"))}function B(l,n){for(var e=0,t=l.length;e=n.highWaterMark||n.ended))return h("read: emitReadable",n.length,n.ended),0===n.length&&n.ended?j(this):C(this),null;if(0===(l=x(l,n))&&n.ended)return 0===n.length&&j(this),null;var t,u=n.needReadable;return h("need readable",u),(0===n.length||n.length-l0?P(l,n):null)?(n.needReadable=!0,l=0):n.length-=l,0===n.length&&(n.ended||(n.needReadable=!0),e!==l&&n.ended&&j(this)),null!==t&&this.emit("data",t),t},v.prototype._read=function(l){this.emit("error",new Error("_read() is not implemented"))},v.prototype.pipe=function(n,e){var t=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=n;break;case 1:r.pipes=[r.pipes,n];break;default:r.pipes.push(n)}r.pipesCount+=1,h("pipe count=%d opts=%j",r.pipesCount,e);var a=(!e||!1!==e.end)&&n!==l.stdout&&n!==l.stderr?c:v;function s(l,e){h("onunpipe"),l===t&&e&&!1===e.hasUnpiped&&(e.hasUnpiped=!0,h("cleanup"),n.removeListener("close",y),n.removeListener("finish",b),n.removeListener("drain",f),n.removeListener("error",m),n.removeListener("unpipe",s),t.removeListener("end",c),t.removeListener("end",v),t.removeListener("data",g),p=!0,!r.awaitDrain||n._writableState&&!n._writableState.needDrain||f())}function c(){h("onend"),n.end()}r.endEmitted?u.nextTick(a):t.once("end",a),n.on("unpipe",s);var f=function(l){return function(){var n=l._readableState;h("pipeOnDrain",n.awaitDrain),n.awaitDrain&&n.awaitDrain--,0===n.awaitDrain&&i(l,"data")&&(n.flowing=!0,D(l))}}(t);n.on("drain",f);var p=!1;var d=!1;function g(l){h("ondata"),d=!1,!1!==n.write(l)||d||((1===r.pipesCount&&r.pipes===n||r.pipesCount>1&&-1!==B(r.pipes,n))&&!p&&(h("false write response, pause",t._readableState.awaitDrain),t._readableState.awaitDrain++,d=!0),t.pause())}function m(l){h("onerror",l),v(),n.removeListener("error",m),0===i(n,"error")&&n.emit("error",l)}function y(){n.removeListener("finish",b),v()}function b(){h("onfinish"),n.removeListener("close",y),v()}function v(){h("unpipe"),t.unpipe(n)}return t.on("data",g),function(l,n,e){if("function"==typeof l.prependListener)return l.prependListener(n,e);l._events&&l._events[n]?o(l._events[n])?l._events[n].unshift(e):l._events[n]=[e,l._events[n]]:l.on(n,e)}(n,"error",m),n.once("close",y),n.once("finish",b),n.emit("pipe",t),r.flowing||(h("pipe resume"),t.resume()),n},v.prototype.unpipe=function(l){var n=this._readableState,e={hasUnpiped:!1};if(0===n.pipesCount)return this;if(1===n.pipesCount)return l&&l!==n.pipes?this:(l||(l=n.pipes),n.pipes=null,n.pipesCount=0,n.flowing=!1,l&&l.emit("unpipe",this,e),this);if(!l){var t=n.pipes,u=n.pipesCount;n.pipes=null,n.pipesCount=0,n.flowing=!1;for(var r=0;r-1?n:r.nextTick;b.WritableState=y;var s=e("core-util-is");s.inherits=e("inherits");var c={deprecate:e("util-deprecate")},f=e("./internal/streams/stream"),p=e("safe-buffer").Buffer,h=u.Uint8Array||function(){};var d,g=e("./internal/streams/destroy");function m(){}function y(l,n){i=i||e("./_stream_duplex"),l=l||{};var t=n instanceof i;this.objectMode=!!l.objectMode,t&&(this.objectMode=this.objectMode||!!l.writableObjectMode);var u=l.highWaterMark,s=l.writableHighWaterMark,c=this.objectMode?16:16384;this.highWaterMark=u||0===u?u:t&&(s||0===s)?s:c,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===l.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=l.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(l){!function(l,n){var e=l._writableState,t=e.sync,u=e.writecb;if(function(l){l.writing=!1,l.writecb=null,l.length-=l.writelen,l.writelen=0}(e),n)!function(l,n,e,t,u){--n.pendingcb,e?(r.nextTick(u,t),r.nextTick(C,l,n),l._writableState.errorEmitted=!0,l.emit("error",t)):(u(t),l._writableState.errorEmitted=!0,l.emit("error",t),C(l,n))}(l,e,t,n,u);else{var o=E(e);o||e.corked||e.bufferProcessing||!e.bufferedRequest||A(l,e),t?a(w,l,e,o,u):w(l,e,o,u)}}(n,l)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function b(l){if(i=i||e("./_stream_duplex"),!(d.call(b,this)||this instanceof i))return new b(l);this._writableState=new y(l,this),this.writable=!0,l&&("function"==typeof l.write&&(this._write=l.write),"function"==typeof l.writev&&(this._writev=l.writev),"function"==typeof l.destroy&&(this._destroy=l.destroy),"function"==typeof l.final&&(this._final=l.final)),f.call(this)}function v(l,n,e,t,u,r,o){n.writelen=t,n.writecb=o,n.writing=!0,n.sync=!0,e?l._writev(u,n.onwrite):l._write(u,r,n.onwrite),n.sync=!1}function w(l,n,e,t){e||function(l,n){0===n.length&&n.needDrain&&(n.needDrain=!1,l.emit("drain"))}(l,n),n.pendingcb--,t(),C(l,n)}function A(l,n){n.bufferProcessing=!0;var e=n.bufferedRequest;if(l._writev&&e&&e.next){var t=n.bufferedRequestCount,u=new Array(t),r=n.corkedRequestsFree;r.entry=e;for(var i=0,a=!0;e;)u[i]=e,e.isBuf||(a=!1),e=e.next,i+=1;u.allBuffers=a,v(l,n,!0,n.length,u,"",r.finish),n.pendingcb++,n.lastBufferedRequest=null,r.next?(n.corkedRequestsFree=r.next,r.next=null):n.corkedRequestsFree=new o(n),n.bufferedRequestCount=0}else{for(;e;){var s=e.chunk,c=e.encoding,f=e.callback;if(v(l,n,!1,n.objectMode?1:s.length,s,c,f),e=e.next,n.bufferedRequestCount--,n.writing)break}null===e&&(n.lastBufferedRequest=null)}n.bufferedRequest=e,n.bufferProcessing=!1}function E(l){return l.ending&&0===l.length&&null===l.bufferedRequest&&!l.finished&&!l.writing}function x(l,n){l._final(function(e){n.pendingcb--,e&&l.emit("error",e),n.prefinished=!0,l.emit("prefinish"),C(l,n)})}function C(l,n){var e=E(n);return e&&(!function(l,n){n.prefinished||n.finalCalled||("function"==typeof l._final?(n.pendingcb++,n.finalCalled=!0,r.nextTick(x,l,n)):(n.prefinished=!0,l.emit("prefinish")))}(l,n),0===n.pendingcb&&(n.finished=!0,l.emit("finish"))),e}s.inherits(b,f),y.prototype.getBuffer=function(){for(var l=this.bufferedRequest,n=[];l;)n.push(l),l=l.next;return n},function(){try{Object.defineProperty(y.prototype,"buffer",{get:c.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(l){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(b,Symbol.hasInstance,{value:function(l){return!!d.call(this,l)||this===b&&(l&&l._writableState instanceof y)}})):d=function(l){return l instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(l,n,e){var t,u=this._writableState,o=!1,i=!u.objectMode&&(t=l,p.isBuffer(t)||t instanceof h);return i&&!p.isBuffer(l)&&(l=function(l){return p.from(l)}(l)),"function"==typeof n&&(e=n,n=null),i?n="buffer":n||(n=u.defaultEncoding),"function"!=typeof e&&(e=m),u.ended?function(l,n){var e=new Error("write after end");l.emit("error",e),r.nextTick(n,e)}(this,e):(i||function(l,n,e,t){var u=!0,o=!1;return null===e?o=new TypeError("May not write null values to stream"):"string"==typeof e||void 0===e||n.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(l.emit("error",o),r.nextTick(t,o),u=!1),u}(this,u,l,e))&&(u.pendingcb++,o=function(l,n,e,t,u,r){if(!e){var o=function(l,n,e){l.objectMode||!1===l.decodeStrings||"string"!=typeof n||(n=p.from(n,e));return n}(n,t,u);t!==o&&(e=!0,u="buffer",t=o)}var i=n.objectMode?1:t.length;n.length+=i;var a=n.length-1))throw new TypeError("Unknown encoding: "+l);return this._writableState.defaultEncoding=l,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(l,n,e){e(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(l,n,e){var t=this._writableState;"function"==typeof l?(e=l,l=null,n=null):"function"==typeof n&&(e=n,n=null),null!=l&&this.write(l,n),t.corked&&(t.corked=1,this.uncork()),t.ending||t.finished||function(l,n,e){n.ending=!0,C(l,n),e&&(n.finished?r.nextTick(e):l.once("finish",e));n.ended=!0,l.writable=!1}(this,t,e)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(l){this._writableState&&(this._writableState.destroyed=l)}}),b.prototype.destroy=g.destroy,b.prototype._undestroy=g.undestroy,b.prototype._destroy=function(l,n){this.end(),n(l)}}).call(this,e("_process"),void 0!==l?l:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./_stream_duplex":58,"./internal/streams/destroy":64,"./internal/streams/stream":65,_process:56,"core-util-is":42,inherits:50,"process-nextick-args":55,"safe-buffer":70,"util-deprecate":73}],63:[function(l,n,e){"use strict";var t=l("safe-buffer").Buffer,u=l("util");n.exports=function(){function l(){!function(l,n){if(!(l instanceof n))throw new TypeError("Cannot call a class as a function")}(this,l),this.head=null,this.tail=null,this.length=0}return l.prototype.push=function(l){var n={data:l,next:null};this.length>0?this.tail.next=n:this.head=n,this.tail=n,++this.length},l.prototype.unshift=function(l){var n={data:l,next:this.head};0===this.length&&(this.tail=n),this.head=n,++this.length},l.prototype.shift=function(){if(0!==this.length){var l=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,l}},l.prototype.clear=function(){this.head=this.tail=null,this.length=0},l.prototype.join=function(l){if(0===this.length)return"";for(var n=this.head,e=""+n.data;n=n.next;)e+=l+n.data;return e},l.prototype.concat=function(l){if(0===this.length)return t.alloc(0);if(1===this.length)return this.head.data;for(var n,e,u,r=t.allocUnsafe(l>>>0),o=this.head,i=0;o;)n=o.data,e=r,u=i,n.copy(e,u),i+=o.data.length,o=o.next;return r},l}(),u&&u.inspect&&u.inspect.custom&&(n.exports.prototype[u.inspect.custom]=function(){var l=u.inspect({length:this.length});return this.constructor.name+" "+l})},{"safe-buffer":70,util:38}],64:[function(l,n,e){"use strict";var t=l("process-nextick-args");function u(l,n){l.emit("error",n)}n.exports={destroy:function(l,n){var e=this,r=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return r||o?(n?n(l):!l||this._writableState&&this._writableState.errorEmitted||t.nextTick(u,this,l),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(l||null,function(l){!n&&l?(t.nextTick(u,e,l),e._writableState&&(e._writableState.errorEmitted=!0)):n&&n(l)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},{"process-nextick-args":55}],65:[function(l,n,e){n.exports=l("events").EventEmitter},{events:47}],66:[function(l,n,e){n.exports=l("./readable").PassThrough},{"./readable":67}],67:[function(l,n,e){(e=n.exports=l("./lib/_stream_readable.js")).Stream=e,e.Readable=e,e.Writable=l("./lib/_stream_writable.js"),e.Duplex=l("./lib/_stream_duplex.js"),e.Transform=l("./lib/_stream_transform.js"),e.PassThrough=l("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":58,"./lib/_stream_passthrough.js":59,"./lib/_stream_readable.js":60,"./lib/_stream_transform.js":61,"./lib/_stream_writable.js":62}],68:[function(l,n,e){n.exports=l("./readable").Transform},{"./readable":67}],69:[function(l,n,e){n.exports=l("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":62}],70:[function(l,n,e){var t=l("buffer"),u=t.Buffer;function r(l,n){for(var e in l)n[e]=l[e]}function o(l,n,e){return u(l,n,e)}u.from&&u.alloc&&u.allocUnsafe&&u.allocUnsafeSlow?n.exports=t:(r(t,e),e.Buffer=o),r(u,o),o.from=function(l,n,e){if("number"==typeof l)throw new TypeError("Argument must not be a number");return u(l,n,e)},o.alloc=function(l,n,e){if("number"!=typeof l)throw new TypeError("Argument must be a number");var t=u(l);return void 0!==n?"string"==typeof e?t.fill(n,e):t.fill(n):t.fill(0),t},o.allocUnsafe=function(l){if("number"!=typeof l)throw new TypeError("Argument must be a number");return u(l)},o.allocUnsafeSlow=function(l){if("number"!=typeof l)throw new TypeError("Argument must be a number");return t.SlowBuffer(l)}},{buffer:41}],71:[function(l,n,e){n.exports=u;var t=l("events").EventEmitter;function u(){t.call(this)}l("inherits")(u,t),u.Readable=l("readable-stream/readable.js"),u.Writable=l("readable-stream/writable.js"),u.Duplex=l("readable-stream/duplex.js"),u.Transform=l("readable-stream/transform.js"),u.PassThrough=l("readable-stream/passthrough.js"),u.Stream=u,u.prototype.pipe=function(l,n){var e=this;function u(n){l.writable&&!1===l.write(n)&&e.pause&&e.pause()}function r(){e.readable&&e.resume&&e.resume()}e.on("data",u),l.on("drain",r),l._isStdio||n&&!1===n.end||(e.on("end",i),e.on("close",a));var o=!1;function i(){o||(o=!0,l.end())}function a(){o||(o=!0,"function"==typeof l.destroy&&l.destroy())}function s(l){if(c(),0===t.listenerCount(this,"error"))throw l}function c(){e.removeListener("data",u),l.removeListener("drain",r),e.removeListener("end",i),e.removeListener("close",a),e.removeListener("error",s),l.removeListener("error",s),e.removeListener("end",c),e.removeListener("close",c),l.removeListener("close",c)}return e.on("error",s),l.on("error",s),e.on("end",c),e.on("close",c),l.on("close",c),l.emit("pipe",e),l}},{events:47,inherits:50,"readable-stream/duplex.js":57,"readable-stream/passthrough.js":66,"readable-stream/readable.js":67,"readable-stream/transform.js":68,"readable-stream/writable.js":69}],72:[function(l,n,e){"use strict";var t=l("safe-buffer").Buffer,u=t.isEncoding||function(l){switch((l=""+l)&&l.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function r(l){var n;switch(this.encoding=function(l){var n=function(l){if(!l)return"utf8";for(var n;;)switch(l){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return l;default:if(n)return;l=(""+l).toLowerCase(),n=!0}}(l);if("string"!=typeof n&&(t.isEncoding===u||!u(l)))throw new Error("Unknown encoding: "+l);return n||l}(l),this.encoding){case"utf16le":this.text=a,this.end=s,n=4;break;case"utf8":this.fillLast=i,n=4;break;case"base64":this.text=c,this.end=f,n=3;break;default:return this.write=p,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=t.allocUnsafe(n)}function o(l){return l<=127?0:l>>5==6?2:l>>4==14?3:l>>3==30?4:l>>6==2?-1:-2}function i(l){var n=this.lastTotal-this.lastNeed,e=function(l,n,e){if(128!=(192&n[0]))return l.lastNeed=0,"�";if(l.lastNeed>1&&n.length>1){if(128!=(192&n[1]))return l.lastNeed=1,"�";if(l.lastNeed>2&&n.length>2&&128!=(192&n[2]))return l.lastNeed=2,"�"}}(this,l);return void 0!==e?e:this.lastNeed<=l.length?(l.copy(this.lastChar,n,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(l.copy(this.lastChar,n,0,l.length),void(this.lastNeed-=l.length))}function a(l,n){if((l.length-n)%2==0){var e=l.toString("utf16le",n);if(e){var t=e.charCodeAt(e.length-1);if(t>=55296&&t<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=l[l.length-2],this.lastChar[1]=l[l.length-1],e.slice(0,-1)}return e}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=l[l.length-1],l.toString("utf16le",n,l.length-1)}function s(l){var n=l&&l.length?this.write(l):"";if(this.lastNeed){var e=this.lastTotal-this.lastNeed;return n+this.lastChar.toString("utf16le",0,e)}return n}function c(l,n){var e=(l.length-n)%3;return 0===e?l.toString("base64",n):(this.lastNeed=3-e,this.lastTotal=3,1===e?this.lastChar[0]=l[l.length-1]:(this.lastChar[0]=l[l.length-2],this.lastChar[1]=l[l.length-1]),l.toString("base64",n,l.length-e))}function f(l){var n=l&&l.length?this.write(l):"";return this.lastNeed?n+this.lastChar.toString("base64",0,3-this.lastNeed):n}function p(l){return l.toString(this.encoding)}function h(l){return l&&l.length?this.write(l):""}e.StringDecoder=r,r.prototype.write=function(l){if(0===l.length)return"";var n,e;if(this.lastNeed){if(void 0===(n=this.fillLast(l)))return"";e=this.lastNeed,this.lastNeed=0}else e=0;return e=0)return u>0&&(l.lastNeed=u-1),u;if(--t=0)return u>0&&(l.lastNeed=u-2),u;if(--t=0)return u>0&&(2===u?u=0:l.lastNeed=u-3),u;return 0}(this,l,n);if(!this.lastNeed)return l.toString("utf8",n);this.lastTotal=e;var t=l.length-(e-this.lastNeed);return l.copy(this.lastChar,0,t),l.toString("utf8",n,t)},r.prototype.fillLast=function(l){if(this.lastNeed<=l.length)return l.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);l.copy(this.lastChar,this.lastTotal-this.lastNeed,0,l.length),this.lastNeed-=l.length}},{"safe-buffer":70}],73:[function(n,e,t){(function(l){function n(n){try{if(!l.localStorage)return!1}catch(l){return!1}var e=l.localStorage[n];return null!=e&&"true"===String(e).toLowerCase()}e.exports=function(l,e){if(n("noDeprecation"))return l;var t=!1;return function(){if(!t){if(n("throwDeprecation"))throw new Error(e);n("traceDeprecation")?console.trace(e):console.warn(e),t=!0}return l.apply(this,arguments)}}}).call(this,void 0!==l?l:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],74:[function(l,n,e){arguments[4][50][0].apply(e,arguments)},{dup:50}],75:[function(l,n,e){n.exports=function(l){return l&&"object"==typeof l&&"function"==typeof l.copy&&"function"==typeof l.fill&&"function"==typeof l.readUInt8}},{}],76:[function(n,e,t){(function(l,e){var u=/%[sdj%]/g;t.format=function(l){if(!y(l)){for(var n=[],e=0;e=r)return l;switch(l){case"%s":return String(t[e++]);case"%d":return Number(t[e++]);case"%j":try{return JSON.stringify(t[e++])}catch(l){return"[Circular]"}default:return l}}),a=t[e];e=3&&(e.depth=arguments[2]),arguments.length>=4&&(e.colors=arguments[3]),d(n)?e.showHidden=n:n&&t._extend(e,n),b(e.showHidden)&&(e.showHidden=!1),b(e.depth)&&(e.depth=2),b(e.colors)&&(e.colors=!1),b(e.customInspect)&&(e.customInspect=!0),e.colors&&(e.stylize=a),c(e,l,e.depth)}function a(l,n){var e=i.styles[n];return e?"["+i.colors[e][0]+"m"+l+"["+i.colors[e][1]+"m":l}function s(l,n){return l}function c(l,n,e){if(l.customInspect&&n&&x(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var u=n.inspect(e,l);return y(u)||(u=c(l,u,e)),u}var r=function(l,n){if(b(n))return l.stylize("undefined","undefined");if(y(n)){var e="'"+JSON.stringify(n).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return l.stylize(e,"string")}if(m(n))return l.stylize(""+n,"number");if(d(n))return l.stylize(""+n,"boolean");if(g(n))return l.stylize("null","null")}(l,n);if(r)return r;var o=Object.keys(n),i=function(l){var n={};return l.forEach(function(l,e){n[l]=!0}),n}(o);if(l.showHidden&&(o=Object.getOwnPropertyNames(n)),E(n)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return f(n);if(0===o.length){if(x(n)){var a=n.name?": "+n.name:"";return l.stylize("[Function"+a+"]","special")}if(v(n))return l.stylize(RegExp.prototype.toString.call(n),"regexp");if(A(n))return l.stylize(Date.prototype.toString.call(n),"date");if(E(n))return f(n)}var s,w="",C=!1,_=["{","}"];(h(n)&&(C=!0,_=["[","]"]),x(n))&&(w=" [Function"+(n.name?": "+n.name:"")+"]");return v(n)&&(w=" "+RegExp.prototype.toString.call(n)),A(n)&&(w=" "+Date.prototype.toUTCString.call(n)),E(n)&&(w=" "+f(n)),0!==o.length||C&&0!=n.length?e<0?v(n)?l.stylize(RegExp.prototype.toString.call(n),"regexp"):l.stylize("[Object]","special"):(l.seen.push(n),s=C?function(l,n,e,t,u){for(var r=[],o=0,i=n.length;o=0&&0,l+n.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60)return e[0]+(""===n?"":n+"\n ")+" "+l.join(",\n ")+" "+e[1];return e[0]+n+" "+l.join(", ")+" "+e[1]}(s,w,_)):_[0]+w+_[1]}function f(l){return"["+Error.prototype.toString.call(l)+"]"}function p(l,n,e,t,u,r){var o,i,a;if((a=Object.getOwnPropertyDescriptor(n,u)||{value:n[u]}).get?i=a.set?l.stylize("[Getter/Setter]","special"):l.stylize("[Getter]","special"):a.set&&(i=l.stylize("[Setter]","special")),S(t,u)||(o="["+u+"]"),i||(l.seen.indexOf(a.value)<0?(i=g(e)?c(l,a.value,null):c(l,a.value,e-1)).indexOf("\n")>-1&&(i=r?i.split("\n").map(function(l){return" "+l}).join("\n").substr(2):"\n"+i.split("\n").map(function(l){return" "+l}).join("\n")):i=l.stylize("[Circular]","special")),b(o)){if(r&&u.match(/^\d+$/))return i;(o=JSON.stringify(""+u)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=l.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=l.stylize(o,"string"))}return o+": "+i}function h(l){return Array.isArray(l)}function d(l){return"boolean"==typeof l}function g(l){return null===l}function m(l){return"number"==typeof l}function y(l){return"string"==typeof l}function b(l){return void 0===l}function v(l){return w(l)&&"[object RegExp]"===C(l)}function w(l){return"object"==typeof l&&null!==l}function A(l){return w(l)&&"[object Date]"===C(l)}function E(l){return w(l)&&("[object Error]"===C(l)||l instanceof Error)}function x(l){return"function"==typeof l}function C(l){return Object.prototype.toString.call(l)}function _(l){return l<10?"0"+l.toString(10):l.toString(10)}t.debuglog=function(n){if(b(r)&&(r=l.env.NODE_DEBUG||""),n=n.toUpperCase(),!o[n])if(new RegExp("\\b"+n+"\\b","i").test(r)){var e=l.pid;o[n]=function(){var l=t.format.apply(t,arguments);console.error("%s %d: %s",n,e,l)}}else o[n]=function(){};return o[n]},t.inspect=i,i.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},i.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=d,t.isNull=g,t.isNullOrUndefined=function(l){return null==l},t.isNumber=m,t.isString=y,t.isSymbol=function(l){return"symbol"==typeof l},t.isUndefined=b,t.isRegExp=v,t.isObject=w,t.isDate=A,t.isError=E,t.isFunction=x,t.isPrimitive=function(l){return null===l||"boolean"==typeof l||"number"==typeof l||"string"==typeof l||"symbol"==typeof l||void 0===l},t.isBuffer=n("./support/isBuffer");var T=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function S(l,n){return Object.prototype.hasOwnProperty.call(l,n)}t.log=function(){var l,n;console.log("%s - %s",(l=new Date,n=[_(l.getHours()),_(l.getMinutes()),_(l.getSeconds())].join(":"),[l.getDate(),T[l.getMonth()],n].join(" ")),t.format.apply(t,arguments))},t.inherits=n("inherits"),t._extend=function(l,n){if(!n||!w(n))return l;for(var e=Object.keys(n),t=e.length;t--;)l[e[t]]=n[e[t]];return l}}).call(this,n("_process"),void 0!==l?l:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":75,_process:56,inherits:74}]},{},[1])}).call(this,e(15),e(38).setImmediate)},function(l,n,e){(function(l,n){!function(l,e){"use strict";if(!l.setImmediate){var t,u,r,o,i,a=1,s={},c=!1,f=l.document,p=Object.getPrototypeOf&&Object.getPrototypeOf(l);p=p&&p.setTimeout?p:l,"[object process]"==={}.toString.call(l.process)?t=function(l){n.nextTick(function(){d(l)})}:!function(){if(l.postMessage&&!l.importScripts){var n=!0,e=l.onmessage;return l.onmessage=function(){n=!1},l.postMessage("","*"),l.onmessage=e,n}}()?l.MessageChannel?((r=new MessageChannel).port1.onmessage=function(l){d(l.data)},t=function(l){r.port2.postMessage(l)}):f&&"onreadystatechange"in f.createElement("script")?(u=f.documentElement,t=function(l){var n=f.createElement("script");n.onreadystatechange=function(){d(l),n.onreadystatechange=null,u.removeChild(n),n=null},u.appendChild(n)}):t=function(l){setTimeout(d,0,l)}:(o="setImmediate$"+Math.random()+"$",i=function(n){n.source===l&&"string"==typeof n.data&&0===n.data.indexOf(o)&&d(+n.data.slice(o.length))},l.addEventListener?l.addEventListener("message",i,!1):l.attachEvent("onmessage",i),t=function(n){l.postMessage(o+n,"*")}),p.setImmediate=function(l){"function"!=typeof l&&(l=new Function(""+l));for(var n=new Array(arguments.length-1),e=0;e * MIT Licensed */ /*! * Dependencies that are used for multiple exports are required here only once */ var t=e(58); /*! * test utility */n.test=e(59), /*! * type utility */ n.type=e(39), /*! * expectTypes utility */ n.expectTypes=e(60), /*! * message utility */ n.getMessage=e(61), /*! * actual utility */ n.getActual=e(44), /*! * Inspect util */ n.inspect=e(40), /*! * Object Display util */ n.objDisplay=e(45), /*! * Flag utility */ n.flag=e(3), /*! * Flag transferring utility */ n.transferFlags=e(7), /*! * Deep equal utility */ n.eql=e(63), /*! * Deep path info */ n.getPathInfo=t.getPathInfo, /*! * Check if a property exists */ n.hasProperty=t.hasProperty, /*! * Function name */ n.getName=e(46), /*! * add Property */ n.addProperty=e(64), /*! * add Method */ n.addMethod=e(65), /*! * overwrite Property */ n.overwriteProperty=e(66), /*! * overwrite Method */ n.overwriteMethod=e(67), /*! * Add a chainable method */ n.addChainableMethod=e(68), /*! * Overwrite chainable method */ n.overwriteChainableMethod=e(69), /*! * Compare by inspect method */ n.compareByInspect=e(70), /*! * Get own enumerable property symbols method */ n.getOwnEnumerablePropertySymbols=e(48), /*! * Get own enumerable properties method */ n.getOwnEnumerableProperties=e(71), /*! * Checks error against a given set of criteria */ n.checkError=e(72), /*! * Proxify util */ n.proxify=e(18), /*! * addLengthGuard util */ n.addLengthGuard=e(17), /*! * isProxyEnabled helper */ n.isProxyEnabled=e(16), /*! * isNaN method */ n.isNaN=e(73)},function(l,n,e){"use strict";function t(l,n){return null!=l&&n in Object(l)}function u(l){return l.replace(/([^\\])\[/g,"$1.[").match(/(\\\.|[^.]+?)+/g).map(function(l){var n=/^\[(\d+)\]$/.exec(l);return n?{i:parseFloat(n[1])}:{p:l.replace(/\\([.\[\]])/g,"$1")}})}function r(l,n,e){var t=l,u=null;e=void 0===e?n.length:e;for(var r=0;r1?r(l,e,e.length-1):l,name:o.p||o.i,value:r(l,e)};return i.exists=t(i.parent,i.name),i}l.exports={hasProperty:t,getPathInfo:o,getPathValue:function(l,n){return o(l,n).value},setPathValue:function(l,n,e){return function(l,n,e){for(var t=l,u=e.length,r=null,o=0;o * MIT Licensed */ /*! * Module dependencies */ var t=e(3);l.exports=function(l,n){var e=t(l,"negate"),u=n[0];return e?!u:u}},function(l,n,e){ /*! * Chai - expectTypes utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ var t=e(43),u=e(3),r=e(39);l.exports=function(l,n){var e=u(l,"message"),o=u(l,"ssfi");e=e?e+": ":"",l=u(l,"object"),(n=n.map(function(l){return l.toLowerCase()})).sort();var i=n.map(function(l,e){var t=~["a","e","i","o","u"].indexOf(l.charAt(0))?"an":"a";return(n.length>1&&e===n.length-1?"or ":"")+t+" "+l}).join(", "),a=r(l).toLowerCase();if(!n.some(function(l){return a===l}))throw new t(e+"object tested must be "+i+", but "+a+" given",void 0,o)}},function(l,n,e){ /*! * Chai - message composition utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ /*! * Module dependencies */ var t=e(3),u=e(44),r=e(45);l.exports=function(l,n){var e=t(l,"negate"),o=t(l,"object"),i=n[3],a=u(l,n),s=e?n[2]:n[1],c=t(l,"message");return"function"==typeof s&&(s=s()),s=(s=s||"").replace(/#\{this\}/g,function(){return r(o)}).replace(/#\{act\}/g,function(){return r(a)}).replace(/#\{exp\}/g,function(){return r(i)}),c?c+": "+s:s}},function(l,n){ /*! * Chai - getEnumerableProperties utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ l.exports=function(l){var n=[];for(var e in l)n.push(e);return n}},function(l,n,e){"use strict"; /*! * deep-eql * Copyright(c) 2013 Jake Luer * MIT Licensed */var t=e(39);function u(){this._key="chai/deep-eql__"+Math.random()+Date.now()}u.prototype={get:function(l){return l[this._key]},set:function(l,n){Object.isExtensible(l)&&Object.defineProperty(l,this._key,{value:n,configurable:!0})}};var r="function"==typeof WeakMap?WeakMap:u; /*! * Check to see if the MemoizeMap has recorded a result of the two operands * * @param {Mixed} leftHandOperand * @param {Mixed} rightHandOperand * @param {MemoizeMap} memoizeMap * @returns {Boolean|null} result */function o(l,n,e){if(!e||m(l)||m(n))return null;var t=e.get(l);if(t){var u=t.get(n);if("boolean"==typeof u)return u}return null} /*! * Set the result of the equality into the MemoizeMap * * @param {Mixed} leftHandOperand * @param {Mixed} rightHandOperand * @param {MemoizeMap} memoizeMap * @param {Boolean} result */function i(l,n,e,t){if(e&&!m(l)&&!m(n)){var u=e.get(l);u?u.set(n,t):((u=new r).set(n,t),e.set(l,u))}} /*! * Primary Export */function a(l,n,e){if(e&&e.comparator)return c(l,n,e);var t=s(l,n);return null!==t?t:c(l,n,e)}function s(l,n){return l===n?0!==l||1/l==1/n:l!=l&&n!=n||!m(l)&&!m(n)&&null} /*! * The main logic of the `deepEqual` function. * * @param {Mixed} leftHandOperand * @param {Mixed} rightHandOperand * @param {Object} [options] (optional) Additional options * @param {Array} [options.comparator] (optional) Override default algorithm, determining custom equality. * @param {Array} [options.memoize] (optional) Provide a custom memoization object which will cache the results of complex objects for a speed boost. By passing `false` you can disable memoization, but this will cause circular references to blow the stack. * @return {Boolean} equal match */function c(l,n,e){(e=e||{}).memoize=!1!==e.memoize&&(e.memoize||new r);var u=e&&e.comparator,c=o(l,n,e.memoize);if(null!==c)return c;var m=o(n,l,e.memoize);if(null!==m)return m;if(u){var y=u(l,n);if(!1===y||!0===y)return i(l,n,e.memoize,y),y;var b=s(l,n);if(null!==b)return b}var v=t(l);if(v!==t(n))return i(l,n,e.memoize,!1),!1;i(l,n,e.memoize,!0);var w=function(l,n,e,t){switch(e){case"String":case"Number":case"Boolean":case"Date":return a(l.valueOf(),n.valueOf());case"Promise":case"Symbol":case"function":case"WeakMap":case"WeakSet":case"Error":return l===n;case"Arguments":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"Array":return p(l,n,t);case"RegExp": /*! * Compare two Regular Expressions for equality. * * @param {RegExp} leftHandOperand * @param {RegExp} rightHandOperand * @return {Boolean} result */ return function(l,n){return l.toString()===n.toString()} /*! * Compare two Sets/Maps for equality. Faster than other equality functions. * * @param {Set} leftHandOperand * @param {Set} rightHandOperand * @param {Object} [options] (Optional) * @return {Boolean} result */(l,n);case"Generator": /*! * Simple equality for generator objects such as those returned by generator functions. * * @param {Iterable} leftHandOperand * @param {Iterable} rightHandOperand * @param {Object} [options] (Optional) * @return {Boolean} result */ return function(l,n,e){return p(d(l),d(n),e)} /*! * Determine if the given object has an @@iterator function. * * @param {Object} target * @return {Boolean} `true` if the object has an @@iterator function. */(l,n,t);case"DataView":return p(new Uint8Array(l.buffer),new Uint8Array(n.buffer),t);case"ArrayBuffer":return p(new Uint8Array(l),new Uint8Array(n),t);case"Set":case"Map":return f(l,n,t);default: /*! * Recursively check the equality of two Objects. Once basic sameness has been established it will defer to `deepEqual` * for each enumerable key in the object. * * @param {Mixed} leftHandOperand * @param {Mixed} rightHandOperand * @param {Object} [options] (Optional) * @return {Boolean} result */ return function(l,n,e){var t=g(l),u=g(n);if(t.length&&t.length===u.length)return t.sort(),u.sort(),!1!==p(t,u)&& /*! * Determines if two objects have matching values, given a set of keys. Defers to deepEqual for the equality check of * each key. If any value of the given key is not equal, the function will return false (early). * * @param {Mixed} leftHandOperand * @param {Mixed} rightHandOperand * @param {Array} keys An array of keys to compare the values of leftHandOperand and rightHandOperand against * @param {Object} [options] (Optional) * @return {Boolean} result */ function(l,n,e,t){var u=e.length;if(0===u)return!0;for(var r=0;r * MIT Licensed */ var t=e(6),u=e(3),r=e(16),o=e(7);l.exports=function(l,n,e){e=void 0===e?function(){}:e,Object.defineProperty(l,n,{get:function l(){r()||u(this,"lockSsfi")||u(this,"ssfi",l);var n=e.call(this);if(void 0!==n)return n;var i=new t.Assertion;return o(this,i),i},configurable:!0})}},function(l,n,e){ /*! * Chai - addMethod utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ var t=e(17),u=e(6),r=e(3),o=e(18),i=e(7);l.exports=function(l,n,e){var a=function(){r(this,"lockSsfi")||r(this,"ssfi",a);var l=e.apply(this,arguments);if(void 0!==l)return l;var n=new u.Assertion;return i(this,n),n};t(a,n,!1),l[n]=o(a,n)}},function(l,n,e){ /*! * Chai - overwriteProperty utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ var t=e(6),u=e(3),r=e(16),o=e(7);l.exports=function(l,n,e){var i=Object.getOwnPropertyDescriptor(l,n),a=function(){};i&&"function"==typeof i.get&&(a=i.get),Object.defineProperty(l,n,{get:function l(){r()||u(this,"lockSsfi")||u(this,"ssfi",l);var n=u(this,"lockSsfi");u(this,"lockSsfi",!0);var i=e(a).call(this);if(u(this,"lockSsfi",n),void 0!==i)return i;var s=new t.Assertion;return o(this,s),s},configurable:!0})}},function(l,n,e){ /*! * Chai - overwriteMethod utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ var t=e(17),u=e(6),r=e(3),o=e(18),i=e(7);l.exports=function(l,n,e){var a=l[n],s=function(){throw new Error(n+" is not a function")};a&&"function"==typeof a&&(s=a);var c=function(){r(this,"lockSsfi")||r(this,"ssfi",c);var l=r(this,"lockSsfi");r(this,"lockSsfi",!0);var n=e(s).apply(this,arguments);if(r(this,"lockSsfi",l),void 0!==n)return n;var t=new u.Assertion;return i(this,t),t};t(c,n,!1),l[n]=o(c,n)}},function(l,n,e){ /*! * Chai - addChainingMethod utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ /*! * Module dependencies */ var t=e(17),u=e(6),r=e(3),o=e(18),i=e(7),a="function"==typeof Object.setPrototypeOf,s=function(){},c=Object.getOwnPropertyNames(s).filter(function(l){var n=Object.getOwnPropertyDescriptor(s,l);return"object"!=typeof n||!n.configurable}),f=Function.prototype.call,p=Function.prototype.apply;l.exports=function(l,n,e,s){"function"!=typeof s&&(s=function(){});var h={method:e,chainingBehavior:s};l.__methods||(l.__methods={}),l.__methods[n]=h,Object.defineProperty(l,n,{get:function(){h.chainingBehavior.call(this);var e=function(){r(this,"lockSsfi")||r(this,"ssfi",e);var l=h.method.apply(this,arguments);if(void 0!==l)return l;var n=new u.Assertion;return i(this,n),n};if(t(e,n,!0),a){var s=Object.create(this);s.call=f,s.apply=p,Object.setPrototypeOf(e,s)}else{Object.getOwnPropertyNames(l).forEach(function(n){if(-1===c.indexOf(n)){var t=Object.getOwnPropertyDescriptor(l,n);Object.defineProperty(e,n,t)}})}return i(this,e),o(e)},configurable:!0})}},function(l,n,e){ /*! * Chai - overwriteChainableMethod utility * Copyright(c) 2012-2014 Jake Luer * MIT Licensed */ var t=e(6),u=e(7);l.exports=function(l,n,e,r){var o=l.__methods[n],i=o.chainingBehavior;o.chainingBehavior=function(){var l=r(i).call(this);if(void 0!==l)return l;var n=new t.Assertion;return u(this,n),n};var a=o.method;o.method=function(){var l=e(a).apply(this,arguments);if(void 0!==l)return l;var n=new t.Assertion;return u(this,n),n}}},function(l,n,e){ /*! * Chai - compareByInspect utility * Copyright(c) 2011-2016 Jake Luer * MIT Licensed */ /*! * Module dependencies */ var t=e(40);l.exports=function(l,n){return t(l) * MIT Licensed */ /*! * Module dependencies */ var t=e(48);l.exports=function(l){return Object.keys(l).concat(t(l))}},function(l,n,e){"use strict";var t=/\s*function(?:\s|\s*\/\*[^(?:*\/)]+\*\/\s*)*([^\(\/]+)/;function u(l){var n="";if(void 0===l.name){var e=String(l).match(t);e&&(n=e[1])}else n=l.name;return n}l.exports={compatibleInstance:function(l,n){return n instanceof Error&&l===n},compatibleConstructor:function(l,n){return n instanceof Error?l.constructor===n.constructor||l instanceof n.constructor:(n.prototype instanceof Error||n===Error)&&(l.constructor===n||l instanceof n)},compatibleMessage:function(l,n){var e="string"==typeof l?l:l.message;return n instanceof RegExp?n.test(e):"string"==typeof n&&-1!==e.indexOf(n)},getMessage:function(l){var n="";return l&&l.message?n=l.message:"string"==typeof l&&(n=l),n},getConstructorName:function(l){var n=l;return l instanceof Error?n=u(l.constructor):"function"==typeof l&&(n=u(l).trim()||u(new l)),n}}},function(l,n){l.exports=Number.isNaN|| /*! * Chai - isNaN utility * Copyright(c) 2012-2015 Sakthipriyan Vairamani * MIT Licensed */ function(l){return l!=l}},function(l,n,e){ /*! * chai * http://chaijs.com * Copyright(c) 2011-2014 Jake Luer * MIT Licensed */ var t=e(8);l.exports=function(l,n){ /*! * Module dependencies. */ var e=l.AssertionError,u=n.flag; /*! * Module export. */ /*! * Assertion Constructor * * Creates object for chaining. * * `Assertion` objects contain metadata in the form of flags. Three flags can * be assigned during instantiation by passing arguments to this constructor: * * - `object`: This flag contains the target of the assertion. For example, in * the assertion `expect(numKittens).to.equal(7);`, the `object` flag will * contain `numKittens` so that the `equal` assertion can reference it when * needed. * * - `message`: This flag contains an optional custom error message to be * prepended to the error message that's generated by the assertion when it * fails. * * - `ssfi`: This flag stands for "start stack function indicator". It * contains a function reference that serves as the starting point for * removing frames from the stack trace of the error that's created by the * assertion when it fails. The goal is to provide a cleaner stack trace to * end users by removing Chai's internal functions. Note that it only works * in environments that support `Error.captureStackTrace`, and only when * `Chai.config.includeStack` hasn't been set to `false`. * * - `lockSsfi`: This flag controls whether or not the given `ssfi` flag * should retain its current value, even as assertions are chained off of * this object. This is usually set to `true` when creating a new assertion * from within another assertion. It's also temporarily set to `true` before * an overwritten assertion gets called by the overwriting assertion. * * @param {Mixed} obj target of the assertion * @param {String} msg (optional) custom error message * @param {Function} ssfi (optional) starting point for removing stack frames * @param {Boolean} lockSsfi (optional) whether or not the ssfi flag is locked * @api private */ function r(l,e,t,o){return u(this,"ssfi",t||r),u(this,"lockSsfi",o),u(this,"object",l),u(this,"message",e),n.proxify(this)}l.Assertion=r,Object.defineProperty(r,"includeStack",{get:function(){return console.warn("Assertion.includeStack is deprecated, use chai.config.includeStack instead."),t.includeStack},set:function(l){console.warn("Assertion.includeStack is deprecated, use chai.config.includeStack instead."),t.includeStack=l}}),Object.defineProperty(r,"showDiff",{get:function(){return console.warn("Assertion.showDiff is deprecated, use chai.config.showDiff instead."),t.showDiff},set:function(l){console.warn("Assertion.showDiff is deprecated, use chai.config.showDiff instead."),t.showDiff=l}}),r.addProperty=function(l,e){n.addProperty(this.prototype,l,e)},r.addMethod=function(l,e){n.addMethod(this.prototype,l,e)},r.addChainableMethod=function(l,e,t){n.addChainableMethod(this.prototype,l,e,t)},r.overwriteProperty=function(l,e){n.overwriteProperty(this.prototype,l,e)},r.overwriteMethod=function(l,e){n.overwriteMethod(this.prototype,l,e)},r.overwriteChainableMethod=function(l,e,t){n.overwriteChainableMethod(this.prototype,l,e,t)},r.prototype.assert=function(l,r,o,i,a,s){var c=n.test(this,arguments);if(!1!==s&&(s=!0),void 0===i&&void 0===a&&(s=!1),!0!==t.showDiff&&(s=!1),!c){r=n.getMessage(this,arguments);var f=n.getActual(this,arguments);throw new e(r,{actual:f,expected:i,showDiff:s},t.includeStack?this.assert:u(this,"ssfi"))}}, /*! * ### ._obj * * Quick reference to stored `actual` value for plugin developers. * * @api private */ Object.defineProperty(r.prototype,"_obj",{get:function(){return u(this,"object")},set:function(l){u(this,"object",l)}})}},function(l,n){ /*! * chai * http://chaijs.com * Copyright(c) 2011-2014 Jake Luer * MIT Licensed */ l.exports=function(l,n){var e=l.Assertion,t=l.AssertionError,u=n.flag;function r(l,e){e&&u(this,"message",e),l=l.toLowerCase();var t=u(this,"object"),r=~["a","e","i","o","u"].indexOf(l.charAt(0))?"an ":"a ";this.assert(l===n.type(t).toLowerCase(),"expected #{this} to be "+r+l,"expected #{this} not to be "+r+l)}function o(l,e){return n.isNaN(l)&&n.isNaN(e)||l===e}function i(){u(this,"contains",!0)}function a(l,r){r&&u(this,"message",r);var i=u(this,"object"),a=n.type(i).toLowerCase(),s=u(this,"message"),c=u(this,"negate"),f=u(this,"ssfi"),p=u(this,"deep"),h=p?"deep ":"";s=s?s+": ":"";var d=!1;switch(a){case"string":d=-1!==i.indexOf(l);break;case"weakset":if(p)throw new t(s+"unable to use .deep.include with WeakSet",void 0,f);d=i.has(l);break;case"map":var g=p?n.eql:o;i.forEach(function(n){d=d||g(n,l)});break;case"set":p?i.forEach(function(e){d=d||n.eql(e,l)}):d=i.has(l);break;case"array":d=p?i.some(function(e){return n.eql(e,l)}):-1!==i.indexOf(l);break;default:if(l!==Object(l))throw new t(s+"object tested must be an array, a map, an object, a set, a string, or a weakset, but "+a+" given",void 0,f);var m=Object.keys(l),y=null,b=0;if(m.forEach(function(r){var o=new e(i);if(n.transferFlags(this,o,!0),u(o,"lockSsfi",!0),c&&1!==m.length)try{o.property(r,l[r])}catch(l){if(!n.checkError.compatibleConstructor(l,t))throw l;null===y&&(y=l),b++}else o.property(r,l[r])},this),c&&m.length>1&&b===m.length)throw y;return}this.assert(d,"expected #{this} to "+h+"include "+n.inspect(l),"expected #{this} to not "+h+"include "+n.inspect(l))}function s(){var l=u(this,"object"),e=n.type(l);this.assert("Arguments"===e,"expected #{this} to be arguments but got "+e,"expected #{this} to not be arguments")}function c(l,n){n&&u(this,"message",n);var e=u(this,"object");if(u(this,"deep")){var t=u(this,"lockSsfi");u(this,"lockSsfi",!0),this.eql(l),u(this,"lockSsfi",t)}else this.assert(l===e,"expected #{this} to equal #{exp}","expected #{this} to not equal #{exp}",l,this._obj,!0)}function f(l,e){e&&u(this,"message",e),this.assert(n.eql(l,u(this,"object")),"expected #{this} to deeply equal #{exp}","expected #{this} to not deeply equal #{exp}",l,this._obj,!0)}function p(l,r){r&&u(this,"message",r);var o,i=u(this,"object"),a=u(this,"doLength"),s=u(this,"message"),c=s?s+": ":"",f=u(this,"ssfi"),p=n.type(i).toLowerCase(),h=n.type(l).toLowerCase(),d=!0;if(a&&"map"!==p&&"set"!==p&&new e(i,s,f,!0).to.have.property("length"),a||"date"!==p||"date"===h)if("number"===h||!a&&"number"!==p)if(a||"date"===p||"number"===p)d=!1;else{o=c+"expected "+("string"===p?"'"+i+"'":i)+" to be a number or a date"}else o=c+"the argument to above must be a number";else o=c+"the argument to above must be a date";if(d)throw new t(o,void 0,f);if(a){var g,m="length";"map"===p||"set"===p?(m="size",g=i.size):g=i.length,this.assert(g>l,"expected #{this} to have a "+m+" above #{exp} but got #{act}","expected #{this} to not have a "+m+" above #{exp}",l,g)}else this.assert(i>l,"expected #{this} to be above #{exp}","expected #{this} to be at most #{exp}",l)}function h(l,r){r&&u(this,"message",r);var o,i=u(this,"object"),a=u(this,"doLength"),s=u(this,"message"),c=s?s+": ":"",f=u(this,"ssfi"),p=n.type(i).toLowerCase(),h=n.type(l).toLowerCase(),d=!0;if(a&&"map"!==p&&"set"!==p&&new e(i,s,f,!0).to.have.property("length"),a||"date"!==p||"date"===h)if("number"===h||!a&&"number"!==p)if(a||"date"===p||"number"===p)d=!1;else{o=c+"expected "+("string"===p?"'"+i+"'":i)+" to be a number or a date"}else o=c+"the argument to least must be a number";else o=c+"the argument to least must be a date";if(d)throw new t(o,void 0,f);if(a){var g,m="length";"map"===p||"set"===p?(m="size",g=i.size):g=i.length,this.assert(g>=l,"expected #{this} to have a "+m+" at least #{exp} but got #{act}","expected #{this} to have a "+m+" below #{exp}",l,g)}else this.assert(i>=l,"expected #{this} to be at least #{exp}","expected #{this} to be below #{exp}",l)}function d(l,r){r&&u(this,"message",r);var o,i=u(this,"object"),a=u(this,"doLength"),s=u(this,"message"),c=s?s+": ":"",f=u(this,"ssfi"),p=n.type(i).toLowerCase(),h=n.type(l).toLowerCase(),d=!0;if(a&&"map"!==p&&"set"!==p&&new e(i,s,f,!0).to.have.property("length"),a||"date"!==p||"date"===h)if("number"===h||!a&&"number"!==p)if(a||"date"===p||"number"===p)d=!1;else{o=c+"expected "+("string"===p?"'"+i+"'":i)+" to be a number or a date"}else o=c+"the argument to below must be a number";else o=c+"the argument to below must be a date";if(d)throw new t(o,void 0,f);if(a){var g,m="length";"map"===p||"set"===p?(m="size",g=i.size):g=i.length,this.assert(g1&&this.assert(p&&(h?n.eql(e,m):e===m),"expected #{this} to have "+y+n.inspect(l)+" of #{exp}, but got #{act}","expected #{this} to not have "+y+n.inspect(l)+" of #{act}",e,m),u(this,"object",m)}function b(l,n,e){u(this,"own",!0),y.apply(this,arguments)}function v(l,e,t){"string"==typeof e&&(t=e,e=null),t&&u(this,"message",t);var r=u(this,"object"),o=Object.getOwnPropertyDescriptor(Object(r),l);o&&e?this.assert(n.eql(e,o),"expected the own property descriptor for "+n.inspect(l)+" on #{this} to match "+n.inspect(e)+", got "+n.inspect(o),"expected the own property descriptor for "+n.inspect(l)+" on #{this} to not match "+n.inspect(e),e,o,!0):this.assert(o,"expected #{this} to have an own property descriptor for "+n.inspect(l),"expected #{this} to not have an own property descriptor for "+n.inspect(l)),u(this,"object",o)}function w(){u(this,"doLength",!0)}function A(l,t){t&&u(this,"message",t);var r,o=u(this,"object"),i=n.type(o).toLowerCase(),a=u(this,"message"),s=u(this,"ssfi"),c="length";switch(i){case"map":case"set":c="size",r=o.size;break;default:new e(o,a,s,!0).to.have.property("length"),r=o.length}this.assert(r==l,"expected #{this} to have a "+c+" of #{exp} but got #{act}","expected #{this} to not have a "+c+" of #{act}",l,r)}function E(l,n){n&&u(this,"message",n);var e=u(this,"object");this.assert(l.exec(e),"expected #{this} to match "+l,"expected #{this} not to match "+l)}function x(l){var e,r,o=u(this,"object"),i=n.type(o),a=n.type(l),s=u(this,"ssfi"),c=u(this,"deep"),f="",p=!0,h=u(this,"message"),d=(h=h?h+": ":"")+"when testing keys against an object or an array you must give a single Array|Object|String argument or multiple String arguments";if("Map"===i||"Set"===i)f=c?"deeply ":"",r=[],o.forEach(function(l,n){r.push(n)}),"Array"!==a&&(l=Array.prototype.slice.call(arguments));else{switch(r=n.getOwnEnumerableProperties(o),a){case"Array":if(arguments.length>1)throw new t(d,void 0,s);break;case"Object":if(arguments.length>1)throw new t(d,void 0,s);l=Object.keys(l);break;default:l=Array.prototype.slice.call(arguments)}l=l.map(function(l){return"symbol"==typeof l?l:String(l)})}if(!l.length)throw new t(h+"keys required",void 0,s);var g=l.length,m=u(this,"any"),y=u(this,"all"),b=l;if(m||y||(y=!0),m&&(p=b.some(function(l){return r.some(function(e){return c?n.eql(l,e):l===e})})),y&&(p=b.every(function(l){return r.some(function(e){return c?n.eql(l,e):l===e})}),u(this,"contains")||(p=p&&l.length==r.length)),g>1){var v=(l=l.map(function(l){return n.inspect(l)})).pop();y&&(e=l.join(", ")+", and "+v),m&&(e=l.join(", ")+", or "+v)}else e=n.inspect(l[0]);e=(g>1?"keys ":"key ")+e,e=(u(this,"contains")?"contain ":"have ")+e,this.assert(p,"expected #{this} to "+f+e,"expected #{this} to not "+f+e,b.slice(0).sort(n.compareByInspect),r.sort(n.compareByInspect),!0)}function C(l,t,r){r&&u(this,"message",r);var o,i=u(this,"object"),a=u(this,"ssfi"),s=u(this,"message"),c=u(this,"negate")||!1;new e(i,s,a,!0).is.a("function"),(l instanceof RegExp||"string"==typeof l)&&(t=l,l=null);try{i()}catch(l){o=l}var f=void 0===l&&void 0===t,p=Boolean(l&&t),h=!1,d=!1;if(f||!f&&!c){var g="an error";l instanceof Error?g="#{exp}":l&&(g=n.checkError.getConstructorName(l)),this.assert(o,"expected #{this} to throw "+g,"expected #{this} to not throw an error but #{act} was thrown",l&&l.toString(),o instanceof Error?o.toString():"string"==typeof o?o:o&&n.checkError.getConstructorName(o))}if(l&&o){if(l instanceof Error)n.checkError.compatibleInstance(o,l)===c&&(p&&c?h=!0:this.assert(c,"expected #{this} to throw #{exp} but #{act} was thrown","expected #{this} to not throw #{exp}"+(o&&!c?" but #{act} was thrown":""),l.toString(),o.toString()));n.checkError.compatibleConstructor(o,l)===c&&(p&&c?h=!0:this.assert(c,"expected #{this} to throw #{exp} but #{act} was thrown","expected #{this} to not throw #{exp}"+(o?" but #{act} was thrown":""),l instanceof Error?l.toString():l&&n.checkError.getConstructorName(l),o instanceof Error?o.toString():o&&n.checkError.getConstructorName(o)))}if(o&&null!=t){var m="including";t instanceof RegExp&&(m="matching"),n.checkError.compatibleMessage(o,t)===c&&(p&&c?d=!0:this.assert(c,"expected #{this} to throw error "+m+" #{exp} but got #{act}","expected #{this} to throw error not "+m+" #{exp}",t,n.checkError.getMessage(o)))}h&&d&&this.assert(c,"expected #{this} to throw #{exp} but #{act} was thrown","expected #{this} to not throw #{exp}"+(o?" but #{act} was thrown":""),l instanceof Error?l.toString():l&&n.checkError.getConstructorName(l),o instanceof Error?o.toString():o&&n.checkError.getConstructorName(o)),u(this,"object",o)}function _(l,e){e&&u(this,"message",e);var t=u(this,"object"),r=u(this,"itself"),o="function"!=typeof t||r?t[l]:t.prototype[l];this.assert("function"==typeof o,"expected #{this} to respond to "+n.inspect(l),"expected #{this} to not respond to "+n.inspect(l))}function T(l,e){e&&u(this,"message",e);var t=l(u(this,"object"));this.assert(t,"expected #{this} to satisfy "+n.objDisplay(l),"expected #{this} to not satisfy"+n.objDisplay(l),!u(this,"negate"),t)}function S(l,n,r){r&&u(this,"message",r);var o=u(this,"object"),i=u(this,"message"),a=u(this,"ssfi");if(new e(o,i,a,!0).is.a("number"),"number"!=typeof l||"number"!=typeof n)throw new t((i=i?i+": ":"")+"the arguments to closeTo or approximately must be numbers",void 0,a);this.assert(Math.abs(o-l)<=n,"expected #{this} to be close to "+l+" +/- "+n,"expected #{this} not to be close to "+l+" +/- "+n)}function k(l,n,t){t&&u(this,"message",t);var r,o=u(this,"object"),i=u(this,"message"),a=u(this,"ssfi");new e(o,i,a,!0).is.a("function"),n?(new e(l,i,a,!0).to.have.property(n),r=l[n]):(new e(l,i,a,!0).is.a("function"),r=l()),o();var s=null==n?l():l[n],c=null==n?r:"."+n;u(this,"deltaMsgObj",c),u(this,"initialDeltaValue",r),u(this,"finalDeltaValue",s),u(this,"deltaBehavior","change"),u(this,"realDelta",s!==r),this.assert(r!==s,"expected "+c+" to change","expected "+c+" to not change")}function F(l,n,t){t&&u(this,"message",t);var r,o=u(this,"object"),i=u(this,"message"),a=u(this,"ssfi");new e(o,i,a,!0).is.a("function"),n?(new e(l,i,a,!0).to.have.property(n),r=l[n]):(new e(l,i,a,!0).is.a("function"),r=l()),new e(r,i,a,!0).is.a("number"),o();var s=null==n?l():l[n],c=null==n?r:"."+n;u(this,"deltaMsgObj",c),u(this,"initialDeltaValue",r),u(this,"finalDeltaValue",s),u(this,"deltaBehavior","increase"),u(this,"realDelta",s-r),this.assert(s-r>0,"expected "+c+" to increase","expected "+c+" to not increase")}function D(l,n,t){t&&u(this,"message",t);var r,o=u(this,"object"),i=u(this,"message"),a=u(this,"ssfi");new e(o,i,a,!0).is.a("function"),n?(new e(l,i,a,!0).to.have.property(n),r=l[n]):(new e(l,i,a,!0).is.a("function"),r=l()),new e(r,i,a,!0).is.a("number"),o();var s=null==n?l():l[n],c=null==n?r:"."+n;u(this,"deltaMsgObj",c),u(this,"initialDeltaValue",r),u(this,"finalDeltaValue",s),u(this,"deltaBehavior","decrease"),u(this,"realDelta",r-s),this.assert(s-r<0,"expected "+c+" to decrease","expected "+c+" to not decrease")}["to","be","been","is","and","has","have","with","that","which","at","of","same","but","does","still"].forEach(function(l){e.addProperty(l)}),e.addProperty("not",function(){u(this,"negate",!0)}),e.addProperty("deep",function(){u(this,"deep",!0)}),e.addProperty("nested",function(){u(this,"nested",!0)}),e.addProperty("own",function(){u(this,"own",!0)}),e.addProperty("ordered",function(){u(this,"ordered",!0)}),e.addProperty("any",function(){u(this,"any",!0),u(this,"all",!1)}),e.addProperty("all",function(){u(this,"all",!0),u(this,"any",!1)}),e.addChainableMethod("an",r),e.addChainableMethod("a",r),e.addChainableMethod("include",a,i),e.addChainableMethod("contain",a,i),e.addChainableMethod("contains",a,i),e.addChainableMethod("includes",a,i),e.addProperty("ok",function(){this.assert(u(this,"object"),"expected #{this} to be truthy","expected #{this} to be falsy")}),e.addProperty("true",function(){this.assert(!0===u(this,"object"),"expected #{this} to be true","expected #{this} to be false",!u(this,"negate"))}),e.addProperty("false",function(){this.assert(!1===u(this,"object"),"expected #{this} to be false","expected #{this} to be true",!!u(this,"negate"))}),e.addProperty("null",function(){this.assert(null===u(this,"object"),"expected #{this} to be null","expected #{this} not to be null")}),e.addProperty("undefined",function(){this.assert(void 0===u(this,"object"),"expected #{this} to be undefined","expected #{this} not to be undefined")}),e.addProperty("NaN",function(){this.assert(n.isNaN(u(this,"object")),"expected #{this} to be NaN","expected #{this} not to be NaN")}),e.addProperty("exist",function(){var l=u(this,"object");this.assert(null!=l,"expected #{this} to exist","expected #{this} to not exist")}),e.addProperty("empty",function(){var l,e=u(this,"object"),r=u(this,"ssfi"),o=u(this,"message");switch(o=o?o+": ":"",n.type(e).toLowerCase()){case"array":case"string":l=e.length;break;case"map":case"set":l=e.size;break;case"weakmap":case"weakset":throw new t(o+".empty was passed a weak collection",void 0,r);case"function":var i=o+".empty was passed a function "+n.getName(e);throw new t(i.trim(),void 0,r);default:if(e!==Object(e))throw new t(o+".empty was passed non-string primitive "+n.inspect(e),void 0,r);l=Object.keys(e).length}this.assert(0===l,"expected #{this} to be empty","expected #{this} not to be empty")}),e.addProperty("arguments",s),e.addProperty("Arguments",s),e.addMethod("equal",c),e.addMethod("equals",c),e.addMethod("eq",c),e.addMethod("eql",f),e.addMethod("eqls",f),e.addMethod("above",p),e.addMethod("gt",p),e.addMethod("greaterThan",p),e.addMethod("least",h),e.addMethod("gte",h),e.addMethod("below",d),e.addMethod("lt",d),e.addMethod("lessThan",d),e.addMethod("most",g),e.addMethod("lte",g),e.addMethod("within",function(l,r,o){o&&u(this,"message",o);var i,a=u(this,"object"),s=u(this,"doLength"),c=u(this,"message"),f=c?c+": ":"",p=u(this,"ssfi"),h=n.type(a).toLowerCase(),d=n.type(l).toLowerCase(),g=n.type(r).toLowerCase(),m=!0,y="date"===d&&"date"===g?l.toUTCString()+".."+r.toUTCString():l+".."+r;if(s&&"map"!==h&&"set"!==h&&new e(a,c,p,!0).to.have.property("length"),s||"date"!==h||"date"===d&&"date"===g)if("number"===d&&"number"===g||!s&&"number"!==h)if(s||"date"===h||"number"===h)m=!1;else{i=f+"expected "+("string"===h?"'"+a+"'":a)+" to be a number or a date"}else i=f+"the arguments to within must be numbers";else i=f+"the arguments to within must be dates";if(m)throw new t(i,void 0,p);if(s){var b,v="length";"map"===h||"set"===h?(v="size",b=a.size):b=a.length,this.assert(b>=l&&b<=r,"expected #{this} to have a "+v+" within "+y,"expected #{this} to not have a "+v+" within "+y)}else this.assert(a>=l&&a<=r,"expected #{this} to be within "+y,"expected #{this} to not be within "+y)}),e.addMethod("instanceof",m),e.addMethod("instanceOf",m),e.addMethod("property",y),e.addMethod("ownProperty",b),e.addMethod("haveOwnProperty",b),e.addMethod("ownPropertyDescriptor",v),e.addMethod("haveOwnPropertyDescriptor",v),e.addChainableMethod("length",A,w),e.addChainableMethod("lengthOf",A,w),e.addMethod("match",E),e.addMethod("matches",E),e.addMethod("string",function(l,t){t&&u(this,"message",t);var r=u(this,"object"),o=u(this,"message"),i=u(this,"ssfi");new e(r,o,i,!0).is.a("string"),this.assert(~r.indexOf(l),"expected #{this} to contain "+n.inspect(l),"expected #{this} to not contain "+n.inspect(l))}),e.addMethod("keys",x),e.addMethod("key",x),e.addMethod("throw",C),e.addMethod("throws",C),e.addMethod("Throw",C),e.addMethod("respondTo",_),e.addMethod("respondsTo",_),e.addProperty("itself",function(){u(this,"itself",!0)}),e.addMethod("satisfy",T),e.addMethod("satisfies",T),e.addMethod("closeTo",S),e.addMethod("approximately",S),e.addMethod("members",function(l,t){t&&u(this,"message",t);var r=u(this,"object"),o=u(this,"message"),i=u(this,"ssfi");new e(r,o,i,!0).to.be.an("array"),new e(l,o,i,!0).to.be.an("array");var a,s,c,f=u(this,"contains"),p=u(this,"ordered");f?(s="expected #{this} to be "+(a=p?"an ordered superset":"a superset")+" of #{exp}",c="expected #{this} to not be "+a+" of #{exp}"):(s="expected #{this} to have the same "+(a=p?"ordered members":"members")+" as #{exp}",c="expected #{this} to not have the same "+a+" as #{exp}");var h=u(this,"deep")?n.eql:void 0;this.assert(function(l,n,e,t,u){if(!t){if(l.length!==n.length)return!1;n=n.slice()}return l.every(function(l,r){if(u)return e?e(l,n[r]):l===n[r];if(!e){var o=n.indexOf(l);return-1!==o&&(t||n.splice(o,1),!0)}return n.some(function(u,r){return!!e(l,u)&&(t||n.splice(r,1),!0)})})}(l,r,h,f,p),s,c,l,r,!0)}),e.addMethod("oneOf",function(l,n){n&&u(this,"message",n);var t=u(this,"object"),r=u(this,"message"),o=u(this,"ssfi");new e(l,r,o,!0).to.be.an("array"),this.assert(l.indexOf(t)>-1,"expected #{this} to be one of #{exp}","expected #{this} to not be one of #{exp}",l,t)}),e.addMethod("change",k),e.addMethod("changes",k),e.addMethod("increase",F),e.addMethod("increases",F),e.addMethod("decrease",D),e.addMethod("decreases",D),e.addMethod("by",function(l,n){n&&u(this,"message",n);var e,t=u(this,"deltaMsgObj"),r=u(this,"initialDeltaValue"),o=u(this,"finalDeltaValue"),i=u(this,"deltaBehavior"),a=u(this,"realDelta");e="change"===i?Math.abs(o-r)===Math.abs(l):a===Math.abs(l),this.assert(e,"expected "+t+" to "+i+" by "+l,"expected "+t+" to not "+i+" by "+l)}),e.addProperty("extensible",function(){var l=u(this,"object"),n=l===Object(l)&&Object.isExtensible(l);this.assert(n,"expected #{this} to be extensible","expected #{this} to not be extensible")}),e.addProperty("sealed",function(){var l=u(this,"object"),n=l!==Object(l)||Object.isSealed(l);this.assert(n,"expected #{this} to be sealed","expected #{this} to not be sealed")}),e.addProperty("frozen",function(){var l=u(this,"object"),n=l!==Object(l)||Object.isFrozen(l);this.assert(n,"expected #{this} to be frozen","expected #{this} to not be frozen")}),e.addProperty("finite",function(l){var n=u(this,"object");this.assert("number"==typeof n&&isFinite(n),"expected #{this} to be a finite number","expected #{this} to not be a finite number")})}},function(l,n){ /*! * chai * Copyright(c) 2011-2014 Jake Luer * MIT Licensed */ l.exports=function(l,n){l.expect=function(n,e){return new l.Assertion(n,e)},l.expect.fail=function(n,e,t,u){throw arguments.length<2&&(t=n,n=void 0),t=t||"expect.fail()",new l.AssertionError(t,{actual:n,expected:e,operator:u},l.expect.fail)}}},function(l,n){ /*! * chai * Copyright(c) 2011-2014 Jake Luer * MIT Licensed */ l.exports=function(l,n){var e=l.Assertion;function t(){Object.defineProperty(Object.prototype,"should",{set:function(l){Object.defineProperty(this,"should",{value:l,enumerable:!0,configurable:!0,writable:!0})},get:function l(){return this instanceof String||this instanceof Number||this instanceof Boolean||"function"==typeof Symbol&&this instanceof Symbol?new e(this.valueOf(),null,l):new e(this,null,l)},configurable:!0});var n={fail:function(e,t,u,r){throw arguments.length<2&&(u=e,e=void 0),u=u||"should.fail()",new l.AssertionError(u,{actual:e,expected:t,operator:r},n.fail)},equal:function(l,n,t){new e(l,t).to.equal(n)},Throw:function(l,n,t,u){new e(l,u).to.Throw(n,t)},exist:function(l,n){new e(l,n).to.exist},not:{}};return n.not.equal=function(l,n,t){new e(l,t).to.not.equal(n)},n.not.Throw=function(l,n,t,u){new e(l,u).to.not.Throw(n,t)},n.not.exist=function(l,n){new e(l,n).to.not.exist},n.throw=n.Throw,n.not.throw=n.not.Throw,n}l.should=t,l.Should=t}},function(l,n){ /*! * chai * Copyright(c) 2011-2014 Jake Luer * MIT Licensed */ l.exports=function(l,n){ /*! * Chai dependencies. */ var e=l.Assertion,t=n.flag,u=l.assert=function(n,t){new e(null,null,l.assert,!0).assert(n,t,"[ negation message unavailable ]")}; /*! * Module export. */u.fail=function(n,e,t,r){throw arguments.length<2&&(t=n,n=void 0),t=t||"assert.fail()",new l.AssertionError(t,{actual:n,expected:e,operator:r},u.fail)},u.isOk=function(l,n){new e(l,n,u.isOk,!0).is.ok},u.isNotOk=function(l,n){new e(l,n,u.isNotOk,!0).is.not.ok},u.equal=function(l,n,r){var o=new e(l,r,u.equal,!0);o.assert(n==t(o,"object"),"expected #{this} to equal #{exp}","expected #{this} to not equal #{act}",n,l,!0)},u.notEqual=function(l,n,r){var o=new e(l,r,u.notEqual,!0);o.assert(n!=t(o,"object"),"expected #{this} to not equal #{exp}","expected #{this} to equal #{act}",n,l,!0)},u.strictEqual=function(l,n,t){new e(l,t,u.strictEqual,!0).to.equal(n)},u.notStrictEqual=function(l,n,t){new e(l,t,u.notStrictEqual,!0).to.not.equal(n)},u.deepEqual=u.deepStrictEqual=function(l,n,t){new e(l,t,u.deepEqual,!0).to.eql(n)},u.notDeepEqual=function(l,n,t){new e(l,t,u.notDeepEqual,!0).to.not.eql(n)},u.isAbove=function(l,n,t){new e(l,t,u.isAbove,!0).to.be.above(n)},u.isAtLeast=function(l,n,t){new e(l,t,u.isAtLeast,!0).to.be.least(n)},u.isBelow=function(l,n,t){new e(l,t,u.isBelow,!0).to.be.below(n)},u.isAtMost=function(l,n,t){new e(l,t,u.isAtMost,!0).to.be.most(n)},u.isTrue=function(l,n){new e(l,n,u.isTrue,!0).is.true},u.isNotTrue=function(l,n){new e(l,n,u.isNotTrue,!0).to.not.equal(!0)},u.isFalse=function(l,n){new e(l,n,u.isFalse,!0).is.false},u.isNotFalse=function(l,n){new e(l,n,u.isNotFalse,!0).to.not.equal(!1)},u.isNull=function(l,n){new e(l,n,u.isNull,!0).to.equal(null)},u.isNotNull=function(l,n){new e(l,n,u.isNotNull,!0).to.not.equal(null)},u.isNaN=function(l,n){new e(l,n,u.isNaN,!0).to.be.NaN},u.isNotNaN=function(l,n){new e(l,n,u.isNotNaN,!0).not.to.be.NaN},u.exists=function(l,n){new e(l,n,u.exists,!0).to.exist},u.notExists=function(l,n){new e(l,n,u.notExists,!0).to.not.exist},u.isUndefined=function(l,n){new e(l,n,u.isUndefined,!0).to.equal(void 0)},u.isDefined=function(l,n){new e(l,n,u.isDefined,!0).to.not.equal(void 0)},u.isFunction=function(l,n){new e(l,n,u.isFunction,!0).to.be.a("function")},u.isNotFunction=function(l,n){new e(l,n,u.isNotFunction,!0).to.not.be.a("function")},u.isObject=function(l,n){new e(l,n,u.isObject,!0).to.be.a("object")},u.isNotObject=function(l,n){new e(l,n,u.isNotObject,!0).to.not.be.a("object")},u.isArray=function(l,n){new e(l,n,u.isArray,!0).to.be.an("array")},u.isNotArray=function(l,n){new e(l,n,u.isNotArray,!0).to.not.be.an("array")},u.isString=function(l,n){new e(l,n,u.isString,!0).to.be.a("string")},u.isNotString=function(l,n){new e(l,n,u.isNotString,!0).to.not.be.a("string")},u.isNumber=function(l,n){new e(l,n,u.isNumber,!0).to.be.a("number")},u.isNotNumber=function(l,n){new e(l,n,u.isNotNumber,!0).to.not.be.a("number")},u.isFinite=function(l,n){new e(l,n,u.isFinite,!0).to.be.finite},u.isBoolean=function(l,n){new e(l,n,u.isBoolean,!0).to.be.a("boolean")},u.isNotBoolean=function(l,n){new e(l,n,u.isNotBoolean,!0).to.not.be.a("boolean")},u.typeOf=function(l,n,t){new e(l,t,u.typeOf,!0).to.be.a(n)},u.notTypeOf=function(l,n,t){new e(l,t,u.notTypeOf,!0).to.not.be.a(n)},u.instanceOf=function(l,n,t){new e(l,t,u.instanceOf,!0).to.be.instanceOf(n)},u.notInstanceOf=function(l,n,t){new e(l,t,u.notInstanceOf,!0).to.not.be.instanceOf(n)},u.include=function(l,n,t){new e(l,t,u.include,!0).include(n)},u.notInclude=function(l,n,t){new e(l,t,u.notInclude,!0).not.include(n)},u.deepInclude=function(l,n,t){new e(l,t,u.deepInclude,!0).deep.include(n)},u.notDeepInclude=function(l,n,t){new e(l,t,u.notDeepInclude,!0).not.deep.include(n)},u.nestedInclude=function(l,n,t){new e(l,t,u.nestedInclude,!0).nested.include(n)},u.notNestedInclude=function(l,n,t){new e(l,t,u.notNestedInclude,!0).not.nested.include(n)},u.deepNestedInclude=function(l,n,t){new e(l,t,u.deepNestedInclude,!0).deep.nested.include(n)},u.notDeepNestedInclude=function(l,n,t){new e(l,t,u.notDeepNestedInclude,!0).not.deep.nested.include(n)},u.ownInclude=function(l,n,t){new e(l,t,u.ownInclude,!0).own.include(n)},u.notOwnInclude=function(l,n,t){new e(l,t,u.notOwnInclude,!0).not.own.include(n)},u.deepOwnInclude=function(l,n,t){new e(l,t,u.deepOwnInclude,!0).deep.own.include(n)},u.notDeepOwnInclude=function(l,n,t){new e(l,t,u.notDeepOwnInclude,!0).not.deep.own.include(n)},u.match=function(l,n,t){new e(l,t,u.match,!0).to.match(n)},u.notMatch=function(l,n,t){new e(l,t,u.notMatch,!0).to.not.match(n)},u.property=function(l,n,t){new e(l,t,u.property,!0).to.have.property(n)},u.notProperty=function(l,n,t){new e(l,t,u.notProperty,!0).to.not.have.property(n)},u.propertyVal=function(l,n,t,r){new e(l,r,u.propertyVal,!0).to.have.property(n,t)},u.notPropertyVal=function(l,n,t,r){new e(l,r,u.notPropertyVal,!0).to.not.have.property(n,t)},u.deepPropertyVal=function(l,n,t,r){new e(l,r,u.deepPropertyVal,!0).to.have.deep.property(n,t)},u.notDeepPropertyVal=function(l,n,t,r){new e(l,r,u.notDeepPropertyVal,!0).to.not.have.deep.property(n,t)},u.ownProperty=function(l,n,t){new e(l,t,u.ownProperty,!0).to.have.own.property(n)},u.notOwnProperty=function(l,n,t){new e(l,t,u.notOwnProperty,!0).to.not.have.own.property(n)},u.ownPropertyVal=function(l,n,t,r){new e(l,r,u.ownPropertyVal,!0).to.have.own.property(n,t)},u.notOwnPropertyVal=function(l,n,t,r){new e(l,r,u.notOwnPropertyVal,!0).to.not.have.own.property(n,t)},u.deepOwnPropertyVal=function(l,n,t,r){new e(l,r,u.deepOwnPropertyVal,!0).to.have.deep.own.property(n,t)},u.notDeepOwnPropertyVal=function(l,n,t,r){new e(l,r,u.notDeepOwnPropertyVal,!0).to.not.have.deep.own.property(n,t)},u.nestedProperty=function(l,n,t){new e(l,t,u.nestedProperty,!0).to.have.nested.property(n)},u.notNestedProperty=function(l,n,t){new e(l,t,u.notNestedProperty,!0).to.not.have.nested.property(n)},u.nestedPropertyVal=function(l,n,t,r){new e(l,r,u.nestedPropertyVal,!0).to.have.nested.property(n,t)},u.notNestedPropertyVal=function(l,n,t,r){new e(l,r,u.notNestedPropertyVal,!0).to.not.have.nested.property(n,t)},u.deepNestedPropertyVal=function(l,n,t,r){new e(l,r,u.deepNestedPropertyVal,!0).to.have.deep.nested.property(n,t)},u.notDeepNestedPropertyVal=function(l,n,t,r){new e(l,r,u.notDeepNestedPropertyVal,!0).to.not.have.deep.nested.property(n,t)},u.lengthOf=function(l,n,t){new e(l,t,u.lengthOf,!0).to.have.lengthOf(n)},u.hasAnyKeys=function(l,n,t){new e(l,t,u.hasAnyKeys,!0).to.have.any.keys(n)},u.hasAllKeys=function(l,n,t){new e(l,t,u.hasAllKeys,!0).to.have.all.keys(n)},u.containsAllKeys=function(l,n,t){new e(l,t,u.containsAllKeys,!0).to.contain.all.keys(n)},u.doesNotHaveAnyKeys=function(l,n,t){new e(l,t,u.doesNotHaveAnyKeys,!0).to.not.have.any.keys(n)},u.doesNotHaveAllKeys=function(l,n,t){new e(l,t,u.doesNotHaveAllKeys,!0).to.not.have.all.keys(n)},u.hasAnyDeepKeys=function(l,n,t){new e(l,t,u.hasAnyDeepKeys,!0).to.have.any.deep.keys(n)},u.hasAllDeepKeys=function(l,n,t){new e(l,t,u.hasAllDeepKeys,!0).to.have.all.deep.keys(n)},u.containsAllDeepKeys=function(l,n,t){new e(l,t,u.containsAllDeepKeys,!0).to.contain.all.deep.keys(n)},u.doesNotHaveAnyDeepKeys=function(l,n,t){new e(l,t,u.doesNotHaveAnyDeepKeys,!0).to.not.have.any.deep.keys(n)},u.doesNotHaveAllDeepKeys=function(l,n,t){new e(l,t,u.doesNotHaveAllDeepKeys,!0).to.not.have.all.deep.keys(n)},u.throws=function(l,n,r,o){("string"==typeof n||n instanceof RegExp)&&(r=n,n=null);var i=new e(l,o,u.throws,!0).to.throw(n,r);return t(i,"object")},u.doesNotThrow=function(l,n,t,r){("string"==typeof n||n instanceof RegExp)&&(t=n,n=null),new e(l,r,u.doesNotThrow,!0).to.not.throw(n,t)},u.operator=function(r,o,i,a){var s;switch(o){case"==":s=r==i;break;case"===":s=r===i;break;case">":s=r>i;break;case">=":s=r>=i;break;case"<":s=r 0; }",input:"2",output:"2"}])}),describe("when any expression doesn't match",function(){it("reports match failure",function(){var n=r.generate("start = 'a' 'b' 'c'",l);i(n).to.failToParse("dbc"),i(n).to.failToParse("adc"),i(n).to.failToParse("abd")}),it("resets parse position",function(){var n=r.generate("start = 'a' 'b' / 'a'",l);i(n).to.parse("a","a")})})}),describe("action",function(){describe("when the expression matches",function(){it("returns the value returned by the code",function(){var n=r.generate("start = 'a' { return 42; }",l);i(n).to.parse("a",42)}),describe("label variables",function(){describe("in the expression",function(){it("can access variable defined by labeled expression",function(){var n=r.generate("start = a:'a' { return a; }",l);i(n).to.parse("a","a")}),it("can access variables defined by labeled sequence elements",function(){var n=r.generate("start = a:'a' b:'b' c:'c' { return [a, b, c]; }",l);i(n).to.parse("abc",["a","b","c"])}),it("cannot access variables defined by subexpressions",function(){[{grammar:"start = (a:'a') { return a; }",input:"a"},{grammar:"start = (a:'a')? { return a; }",input:"a"},{grammar:"start = (a:'a')* { return a; }",input:"a"},{grammar:"start = (a:'a')+ { return a; }",input:"a"},{grammar:"start = $(a:'a') { return a; }",input:"a"},{grammar:"start = &(a:'a') 'a' { return a; }",input:"a"},{grammar:"start = !(a:'a') 'b' { return a; }",input:"b"},{grammar:"start = b:(a:'a') { return a; }",input:"a"},{grammar:"start = ('a' b:'b' 'c') { return b; }",input:"abc"},{grammar:"start = (a:'a' { return a; }) { return a; }",input:"a"},{grammar:"start = ('a' / b:'b' / 'c') { return b; }",input:"b"}].forEach(function(n){var e=r.generate(n.grammar,l);i(e).to.failToParse(n.input)})})}),describe("in outer sequence",function(){it("can access variables defined by preceding labeled elements",function(){var n=r.generate("start = a:'a' ('b' { return a; })",l);i(n).to.parse("ab",["a","a"])}),it("cannot access variable defined by labeled action element",function(){var n=r.generate("start = 'a' b:('b' { return b; }) c:'c'",l);i(n).to.failToParse("abc")}),it("cannot access variables defined by following labeled elements",function(){var n=r.generate("start = ('a' { return b; }) b:'b'",l);i(n).to.failToParse("ab")})})}),describe("initializer variables & functions",function(){it("can access variables defined in the initializer",function(){var n=r.generate(["{ var v = 42 }","start = 'a' { return v; }"].join("\n"),l);i(n).to.parse("a",42)}),it("can access functions defined in the initializer",function(){var n=r.generate(["{ function f() { return 42; } }","start = 'a' { return f(); }"].join("\n"),l);i(n).to.parse("a",42)})}),describe("available variables & functions",function(){it("|options| contains options",function(){var n=r.generate("start = 'a' { return options; }",l);i(n).to.parse("a",{a:42},{a:42})}),it("|text| returns text matched by the expression",function(){var n=r.generate("start = 'a' { return text(); }",l);i(n).to.parse("a","a")}),it("|location| returns location info of the expression",function(){var n=r.generate(["{ var result; }","start = line (nl+ line)* { return result; }","line = thing (' '+ thing)*","thing = digit / mark","digit = [0-9]","mark = 'x' { result = location(); }","nl = '\\r'? '\\n'"].join("\n"),l);i(n).to.parse("1\n2\n\n3\n\n\n4 5 x",{start:{offset:13,line:7,column:5},end:{offset:14,line:7,column:6}}),i(n).to.parse("1\nx",{start:{offset:2,line:2,column:1},end:{offset:3,line:2,column:2}}),i(n).to.parse("1\r\nx",{start:{offset:3,line:2,column:1},end:{offset:4,line:2,column:2}})}),describe("|expected|",function(){it("terminates parsing and throws an exception",function(){var n=r.generate("start = 'a' { expected('a'); }",l);i(n).to.failToParse("a",{message:'Expected a but "a" found.',expected:[{type:"other",description:"a"}],found:"a",location:{start:{offset:0,line:1,column:1},end:{offset:1,line:1,column:2}}})}),it("allows to set custom location info",function(){var n=r.generate(["start = 'a' {"," expected('a', {"," start: { offset: 1, line: 1, column: 2 },"," end: { offset: 2, line: 1, column: 3 }"," });","}"].join("\n"),l);i(n).to.failToParse("a",{message:'Expected a but "a" found.',expected:[{type:"other",description:"a"}],found:"a",location:{start:{offset:1,line:1,column:2},end:{offset:2,line:1,column:3}}})})}),describe("|error|",function(){it("terminates parsing and throws an exception",function(){var n=r.generate("start = 'a' { error('a'); }",l);i(n).to.failToParse("a",{message:"a",found:null,expected:null,location:{start:{offset:0,line:1,column:1},end:{offset:1,line:1,column:2}}})}),it("allows to set custom location info",function(){var n=r.generate(["start = 'a' {"," error('a', {"," start: { offset: 1, line: 1, column: 2 },"," end: { offset: 2, line: 1, column: 3 }"," });","}"].join("\n"),l);i(n).to.failToParse("a",{message:"a",expected:null,found:null,location:{start:{offset:1,line:1,column:2},end:{offset:2,line:1,column:3}}})})})})}),describe("when the expression doesn't match",function(){it("reports match failure",function(){var n=r.generate("start = 'a' { return 42; }",l);i(n).to.failToParse("b")}),it("doesn't execute the code",function(){var n=r.generate("start = 'a' { throw 'Boom!'; } / 'b'",l);i(n).to.parse("b")})})}),describe("choice",function(){describe("when any expression matches",function(){it("returns its match result",function(){var n=r.generate("start = 'a' / 'b' / 'c'",l);i(n).to.parse("a","a"),i(n).to.parse("b","b"),i(n).to.parse("c","c")})}),describe("when all expressions don't match",function(){it("reports match failure",function(){var n=r.generate("start = 'a' / 'b' / 'c'",l);i(n).to.failToParse("d")})})}),describe("error reporting",function(){describe("behavior",function(){it("reports only the rightmost error",function(){var n=r.generate("start = 'a' 'b' / 'a' 'c' 'd'",l);i(n).to.failToParse("ace",{expected:[{type:"literal",text:"d",ignoreCase:!1}]})})}),describe("expectations reporting",function(){it("reports expectations correctly with no alternative",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("ab",{expected:[{type:"end"}]})}),it("reports expectations correctly with one alternative",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("b",{expected:[{type:"literal",text:"a",ignoreCase:!1}]})}),it("reports expectations correctly with multiple alternatives",function(){var n=r.generate("start = 'a' / 'b' / 'c'",l);i(n).to.failToParse("d",{expected:[{type:"literal",text:"a",ignoreCase:!1},{type:"literal",text:"b",ignoreCase:!1},{type:"literal",text:"c",ignoreCase:!1}]})}),it("reports expectations correctly with look ahead",function(){var n=r.generate(["Statement = '{' __ !Statement Statement __ '}'","__ = [ ]*"].join("\n"),l);i(n).to.failToParse("{x}",{expected:[{type:"class",parts:[" "],inverted:!1,ignoreCase:!1},{type:"not",expected:{type:"literal",text:"{",ignoreCase:!1}},{type:"literal",text:"{",ignoreCase:!1}]}),n=r.generate(["Start = Char+ End","End = 'e'","Char = !End [a-z]"].join("\n"),l),i(n).to.failToParse("a",{expected:[{type:"class",parts:[["a","z"]],inverted:!1,ignoreCase:!1},{type:"literal",text:"e",ignoreCase:!1}]})}),it("reports expectations correctly with look ahead + grouped names",function(){var n=r.generate(["Start = Char+ End","End 'end' = 'e'","Char = !End [a-z]"].join("\n"),l);i(n).to.failToParse("a",{expected:[{type:"class",parts:[["a","z"]],inverted:!1,ignoreCase:!1},{type:"other",description:"end"}]})})}),describe("found string reporting",function(){it("reports found string correctly at the end of input",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("",{found:null})}),it("reports found string correctly in the middle of input",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("b",{found:"b"})})}),describe("message building",function(){it("builds message correctly with no alternative",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("ab",{message:'Expected end of input but "b" found.'})}),it("builds message correctly with one alternative",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("b",{message:'Expected "a" but "b" found.'})}),it("builds message correctly with multiple alternatives",function(){var n=r.generate("start = 'a' / 'b' / 'c'",l);i(n).to.failToParse("d",{message:'Expected "a", "b", or "c" but "d" found.'})}),it("builds message correctly at the end of input",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("",{message:'Expected "a" but end of input found.'})}),it("builds message correctly in the middle of input",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("b",{message:'Expected "a" but "b" found.'})}),it("removes duplicates from expectations",function(){var n=r.generate("start = 'a' / 'a'",l);i(n).to.failToParse("b",{message:'Expected "a" but "b" found.'})}),it("sorts expectations",function(){var n=r.generate("start = 'c' / 'b' / 'a'",l);i(n).to.failToParse("d",{message:'Expected "a", "b", or "c" but "d" found.'})})}),describe("position reporting",function(){it("reports position correctly at the end of input",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("",{location:{start:{offset:0,line:1,column:1},end:{offset:0,line:1,column:1}}})}),it("reports position correctly in the middle of input",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("b",{location:{start:{offset:0,line:1,column:1},end:{offset:1,line:1,column:2}}})}),it("reports position correctly with trailing input",function(){var n=r.generate("start = 'a'",l);i(n).to.failToParse("aa",{location:{start:{offset:1,line:1,column:2},end:{offset:2,line:1,column:3}}})}),it("reports position correctly in complex cases",function(){var n=r.generate(["start = line (nl+ line)*","line = digit (' '+ digit)*","digit = [0-9]","nl = '\\r'? '\\n'"].join("\n"),l);i(n).to.failToParse("1\n2\n\n3\n\n\n4 5 x",{location:{start:{offset:13,line:7,column:5},end:{offset:14,line:7,column:6}}}),i(n).to.failToParse("1\nx",{location:{start:{offset:2,line:2,column:1},end:{offset:3,line:2,column:2}}}),i(n).to.failToParse("1\r\nx",{location:{start:{offset:3,line:2,column:1},end:{offset:4,line:2,column:2}}})})})}),describe("complex examples",function(){it("handles arithmetics example correctly",function(){var n=r.generate(["Expr = Sum","Sum = head:Product tail:(('+' / '-') Product)* {"," return tail.reduce(function(result, element) {"," if (element[0] === '+') { return result + element[1]; }"," if (element[0] === '-') { return result - element[1]; }"," }, head);"," }","Product = head:Value tail:(('*' / '/') Value)* {"," return tail.reduce(function(result, element) {"," if (element[0] === '*') { return result * element[1]; }"," if (element[0] === '/') { return result / element[1]; }"," }, head);"," }","Value = digits:[0-9]+ { return parseInt(digits.join(''), 10); }"," / '(' expr:Expr ')' { return expr; }"].join("\n"),l);i(n).to.parse("0",0),i(n).to.parse("123",123),i(n).to.parse("(42+43)",85),i(n).to.parse("42",42),i(n).to.parse("42*43",1806),i(n).to.parse("42*43*44*45",3575880),i(n).to.parse("42/43",42/43),i(n).to.parse("42/43/44/45",42/43/44/45),i(n).to.parse("42*43",1806),i(n).to.parse("42*43+44*45",3786),i(n).to.parse("42*43+44*45+46*47+48*49",8300),i(n).to.parse("42*43-44*45",-174),i(n).to.parse("42*43-44*45-46*47-48*49",-4688),i(n).to.parse("42+43",85),i(n).to.parse("(1+2)*(3+4)",21)}),it("handles non-context-free language correctly",function(){var n=r.generate(["S = &(A 'c') a:'a'+ B:B !('a' / 'b' / 'c') { return a.join('') + B; }","A = a:'a' A:A? b:'b' { return [a, A, b].join(''); }","B = b:'b' B:B? c:'c' { return [b, B, c].join(''); }"].join("\n"),l);i(n).to.parse("abc","abc"),i(n).to.parse("aaabbbccc","aaabbbccc"),i(n).to.failToParse("aabbbccc"),i(n).to.failToParse("aaaabbbccc"),i(n).to.failToParse("aaabbccc"),i(n).to.failToParse("aaabbbbccc"),i(n).to.failToParse("aaabbbcc"),i(n).to.failToParse("aaabbbcccc")}),it("handles nested comments example correctly",function(){var n=r.generate(["C = begin:Begin ns:N* end:End { return begin + ns.join('') + end; }","N = C"," / !Begin !End z:Z { return z; }","Z = .","Begin = '(*'","End = '*)'"].join("\n"),l);i(n).to.parse("(**)","(**)"),i(n).to.parse("(*abc*)","(*abc*)"),i(n).to.parse("(*(**)*)","(*(**)*)"),i(n).to.parse("(*abc(*def*)ghi(*(*(*jkl*)*)*)mno*)","(*abc(*def*)ghi(*(*(*jkl*)*)*)mno*)")})})},[{cache:!1,optimize:"speed",trace:!1},{cache:!1,optimize:"speed",trace:!0},{cache:!1,optimize:"size",trace:!1},{cache:!1,optimize:"size",trace:!0},{cache:!0,optimize:"speed",trace:!1},{cache:!0,optimize:"speed",trace:!0},{cache:!0,optimize:"size",trace:!1},{cache:!0,optimize:"size",trace:!0}].forEach(function(l){describe("with options "+u.util.inspect(l),function(){e(r.util.clone(l))})})})},function(l,n,e){"use strict";var t=e(2),u=e(4),r=e(0).compiler.passes.generate.generateBytecode;t.use(u);var o=t.expect;describe("compiler pass |generateBytecode|",function(){function l(l){return{rules:[{bytecode:l}]}}function n(l,n,e,t){return{literals:l,classes:n,expectations:e,functions:t}}describe("for grammar",function(){it("generates correct bytecode",function(){o(r).to.changeAST(["a = 'a'","b = 'b'","c = 'c'"].join("\n"),{rules:[{bytecode:[23,0,18,0,2,1,22,0,3]},{bytecode:[23,1,18,1,2,1,22,1,3]},{bytecode:[23,2,18,2,2,1,22,2,3]}]})}),it("defines correct constants",function(){o(r).to.changeAST(["a = 'a'","b = 'b'","c = 'c'"].join("\n"),n(["a","b","c"],[],[{type:"literal",value:"a",ignoreCase:!1},{type:"literal",value:"b",ignoreCase:!1},{type:"literal",value:"c",ignoreCase:!1}],[]))})}),describe("for rule",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a'",l([23,0,18,0,2,1,22,0,3]))})}),describe("for named",function(){var e="start 'start' = .",t="start 'start' = 'a'",u="start 'start' = [a]";describe("when |reportFailures=true|",function(){it("generates correct bytecode",function(){o(r).to.changeAST(e,l([23,0,28,17,2,1,21,1,3,29])),o(r).to.changeAST(t,l([23,0,28,18,0,2,1,22,0,3,29])),o(r).to.changeAST(u,l([23,0,28,20,0,2,1,21,1,3,29]))}),it("defines correct constants",function(){o(r).to.changeAST(e,n([],[],[{type:"rule",value:"start"}],[])),o(r).to.changeAST(t,n(["a"],[],[{type:"rule",value:"start"}],[])),o(r).to.changeAST(u,n([],[{value:["a"],inverted:!1,ignoreCase:!1}],[{type:"rule",value:"start"}],[]))})}),describe("when |reportFailures=false|",function(){it("generates correct bytecode",function(){o(r).to.changeAST(e,l([17,2,1,21,1,3]),{},{reportFailures:!1}),o(r).to.changeAST(t,l([18,0,2,1,22,0,3]),{},{reportFailures:!1}),o(r).to.changeAST(u,l([20,0,2,1,21,1,3]),{},{reportFailures:!1})}),it("defines correct constants",function(){o(r).to.changeAST(e,n([],[],[],[]),{},{reportFailures:!1}),o(r).to.changeAST(t,n(["a"],[],[],[]),{},{reportFailures:!1}),o(r).to.changeAST(u,n([],[{value:["a"],inverted:!1,ignoreCase:!1}],[],[]),{},{reportFailures:!1})})})}),describe("for choice",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a' / 'b' / 'c'",l([23,0,18,0,2,1,22,0,3,14,23,0,6,23,1,18,1,2,1,22,1,3,14,10,0,6,23,2,18,2,2,1,22,2,3]))})}),describe("for action",function(){describe("without labels",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a' { code }",l([5,23,0,18,0,2,1,22,0,3,15,6,0,24,1,26,0,1,0,9]))}),it("defines correct constants",function(){o(r).to.changeAST("start = 'a' { code }",n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[{predicate:!1,params:[],body:" code "}]))})}),describe("with one label",function(){var e="start = a:'a' { code }";it("generates correct bytecode",function(){o(r).to.changeAST(e,l([5,23,0,18,0,2,1,22,0,3,15,7,0,24,1,26,0,1,1,0,9]))}),it("defines correct constants",function(){o(r).to.changeAST(e,n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[{predicate:!1,params:["a"],body:" code "}]))})}),describe("with multiple labels",function(){var e="start = a:'a' b:'b' c:'c' { code }";it("generates correct bytecode",function(){o(r).to.changeAST(e,l([5,23,0,18,0,2,1,22,0,3,15,41,3,23,1,18,1,2,1,22,1,3,15,25,4,23,2,18,2,2,1,22,2,3,15,9,4,24,3,26,0,4,3,2,1,0,8,3,7,3,8,2,7,3,6,7,3]))}),it("defines correct constants",function(){o(r).to.changeAST(e,n(["a","b","c"],[],[{type:"literal",value:"a",ignoreCase:!1},{type:"literal",value:"b",ignoreCase:!1},{type:"literal",value:"c",ignoreCase:!1}],[{predicate:!1,params:["a","b","c"],body:" code "}]))})})}),describe("for sequence",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a' 'b' 'c'",l([5,23,0,18,0,2,1,22,0,3,15,35,3,23,1,18,1,2,1,22,1,3,15,19,4,23,2,18,2,2,1,22,2,3,15,3,4,11,3,9,8,3,7,3,8,2,7,3,6,7,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = 'a' 'b' 'c'",n(["a","b","c"],[],[{type:"literal",value:"a",ignoreCase:!1},{type:"literal",value:"b",ignoreCase:!1},{type:"literal",value:"c",ignoreCase:!1}],[]))}),it("generates correct plucking bytecode",function(){o(r).to.changeAST("start = 'a' @'b' 'c'",l([5,23,0,18,0,2,1,22,0,3,15,36,3,23,1,18,1,2,1,22,1,3,15,20,4,23,2,18,2,2,1,22,2,3,15,4,4,41,4,1,1,8,3,7,3,8,2,7,3,6,7,3])),o(r).to.changeAST("start = 'a' @'b' @'c'",l([5,23,0,18,0,2,1,22,0,3,15,37,3,23,1,18,1,2,1,22,1,3,15,21,4,23,2,18,2,2,1,22,2,3,15,5,4,41,4,2,1,0,8,3,7,3,8,2,7,3,6,7,3]))})}),describe("for labeled",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = a:'a'",l([23,0,18,0,2,1,22,0,3]))})}),describe("for text",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = $'a'",l([5,23,0,18,0,2,1,22,0,3,15,2,1,6,12,9]))})}),describe("for simple_and",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = &'a'",l([5,38,23,0,18,0,2,1,22,0,3,39,0,15,3,3,6,7,1,6,6,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = &'a'",n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[]))})}),describe("for simple_not",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = !'a'",l([5,38,23,0,18,0,2,1,22,0,3,39,1,14,3,3,6,6,1,6,7,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = !'a'",n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[]))})}),describe("for optional",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a'?",l([23,0,18,0,2,1,22,0,3,14,2,0,6,2]))}),it("defines correct constants",function(){o(r).to.changeAST("start = 'a'?",n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[]))})}),describe("for zero_or_more",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a'*",l([4,23,0,18,0,2,1,22,0,3,16,10,10,23,0,18,0,2,1,22,0,3,6]))}),it("defines correct constants",function(){o(r).to.changeAST("start = 'a'*",n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[]))})}),describe("for one_or_more",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a'+",l([4,23,0,18,0,2,1,22,0,3,15,13,3,16,10,10,23,0,18,0,2,1,22,0,3,6,6,6,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = 'a'+",n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[]))})}),describe("for group",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = ('a')",l([23,0,18,0,2,1,22,0,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = ('a')",n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[]))})}),describe("for semantic_and",function(){describe("without labels",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = &{ code }",l([25,26,0,0,0,13,2,2,6,1,6,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = &{ code }",n([],[],[],[{predicate:!0,params:[],body:" code "}]))})}),describe("with labels",function(){var e="start = a:'a' b:'b' c:'c' &{ code }";it("generates correct bytecode",function(){o(r).to.changeAST(e,l([5,23,0,18,0,2,1,22,0,3,15,57,3,23,1,18,1,2,1,22,1,3,15,41,4,23,2,18,2,2,1,22,2,3,15,25,4,25,26,0,0,3,2,1,0,13,2,2,6,1,6,3,15,3,4,11,4,9,8,4,7,3,8,3,7,3,8,2,7,3,6,7,3]))}),it("defines correct constants",function(){o(r).to.changeAST(e,n(["a","b","c"],[],[{type:"literal",value:"a",ignoreCase:!1},{type:"literal",value:"b",ignoreCase:!1},{type:"literal",value:"c",ignoreCase:!1}],[{predicate:!0,params:["a","b","c"],body:" code "}]))})})}),describe("for semantic_not",function(){describe("without labels",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = !{ code }",l([25,26,0,0,0,13,2,2,6,3,6,1]))}),it("defines correct constants",function(){o(r).to.changeAST("start = !{ code }",n([],[],[],[{predicate:!0,params:[],body:" code "}]))})}),describe("with labels",function(){var e="start = a:'a' b:'b' c:'c' !{ code }";it("generates correct bytecode",function(){o(r).to.changeAST(e,l([5,23,0,18,0,2,1,22,0,3,15,57,3,23,1,18,1,2,1,22,1,3,15,41,4,23,2,18,2,2,1,22,2,3,15,25,4,25,26,0,0,3,2,1,0,13,2,2,6,3,6,1,15,3,4,11,4,9,8,4,7,3,8,3,7,3,8,2,7,3,6,7,3]))}),it("defines correct constants",function(){o(r).to.changeAST(e,n(["a","b","c"],[],[{type:"literal",value:"a",ignoreCase:!1},{type:"literal",value:"b",ignoreCase:!1},{type:"literal",value:"c",ignoreCase:!1}],[{predicate:!0,params:["a","b","c"],body:" code "}]))})})}),describe("for rule_ref",function(){it("generates correct bytecode",function(){o(r).to.changeAST(["start = other","other = 'other'"].join("\n"),{rules:[{bytecode:[27,1]},{}]})})}),describe("for literal",function(){describe("when |reportFailures=true|",function(){describe("empty",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = ''",l([0]))}),it("defines correct constants",function(){o(r).to.changeAST("start = ''",n([],[],[],[]))})}),describe("non-empty case-sensitive",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a'",l([23,0,18,0,2,1,22,0,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = 'a'",n(["a"],[],[{type:"literal",value:"a",ignoreCase:!1}],[]))})}),describe("non-empty case-insensitive",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'A'i",l([23,0,19,0,2,1,21,1,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = 'A'i",n(["a"],[],[{type:"literal",value:"A",ignoreCase:!0}],[]))})})}),describe("when |reportFailures=false|",function(){describe("empty",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = ''",l([0]),{},{reportFailures:!1})}),it("defines correct constants",function(){o(r).to.changeAST("start = ''",n([],[],[],[]),{},{reportFailures:!1})})}),describe("non-empty case-sensitive",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'a'",l([18,0,2,1,22,0,3]),{},{reportFailures:!1})}),it("defines correct constants",function(){o(r).to.changeAST("start = 'a'",n(["a"],[],[],[]),{},{reportFailures:!1})})}),describe("non-empty case-insensitive",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = 'A'i",l([19,0,2,1,21,1,3]),{},{reportFailures:!1})}),it("defines correct constants",function(){o(r).to.changeAST("start = 'A'i",n(["a"],[],[],[]),{},{reportFailures:!1})})})})}),describe("for class",function(){describe("when |reportFailures=true|",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = [a]",l([23,0,20,0,2,1,21,1,3]))}),describe("non-inverted case-sensitive",function(){it("defines correct constants",function(){o(r).to.changeAST("start = [a]",n([],[{value:["a"],inverted:!1,ignoreCase:!1}],[{type:"class",value:["a"],inverted:!1,ignoreCase:!1}],[]))})}),describe("inverted case-sensitive",function(){it("defines correct constants",function(){o(r).to.changeAST("start = [^a]",n([],[{value:["a"],inverted:!0,ignoreCase:!1}],[{type:"class",value:["a"],inverted:!0,ignoreCase:!1}],[]))})}),describe("non-inverted case-insensitive",function(){it("defines correct constants",function(){o(r).to.changeAST("start = [a]i",n([],[{value:["a"],inverted:!1,ignoreCase:!0}],[{type:"class",value:["a"],inverted:!1,ignoreCase:!0}],[]))})}),describe("complex",function(){it("defines correct constants",function(){o(r).to.changeAST("start = [ab-def-hij-l]",n([],[{value:["a",["b","d"],"e",["f","h"],"i",["j","l"]],inverted:!1,ignoreCase:!1}],[{type:"class",value:["a",["b","d"],"e",["f","h"],"i",["j","l"]],inverted:!1,ignoreCase:!1}],[]))})})}),describe("when |reportFailures=false|",function(){it("generates correct bytecode",function(){o(r).to.changeAST("start = [a]",l([20,0,2,1,21,1,3]),{},{reportFailures:!1})}),describe("non-inverted case-sensitive",function(){it("defines correct constants",function(){o(r).to.changeAST("start = [a]",n([],[{value:["a"],inverted:!1,ignoreCase:!1}],[],[]),{},{reportFailures:!1})})}),describe("inverted case-sensitive",function(){it("defines correct constants",function(){o(r).to.changeAST("start = [^a]",n([],[{value:["a"],inverted:!0,ignoreCase:!1}],[],[]),{},{reportFailures:!1})})}),describe("non-inverted case-insensitive",function(){it("defines correct constants",function(){o(r).to.changeAST("start = [a]i",n([],[{value:["a"],inverted:!1,ignoreCase:!0}],[],[]),{},{reportFailures:!1})})}),describe("complex",function(){it("defines correct constants",function(){o(r).to.changeAST("start = [ab-def-hij-l]",n([],[{value:["a",["b","d"],"e",["f","h"],"i",["j","l"]],inverted:!1,ignoreCase:!1}],[],[]),{},{reportFailures:!1})})})})}),describe("for any",function(){describe("when |reportFailures=true|",function(){it("generates bytecode",function(){o(r).to.changeAST("start = .",l([23,0,17,2,1,21,1,3]))}),it("defines correct constants",function(){o(r).to.changeAST("start = .",n([],[],[{type:"any"}],[]))})}),describe("when |reportFailures=false|",function(){it("generates bytecode",function(){o(r).to.changeAST("start = .",l([17,2,1,21,1,3]),{},{reportFailures:!1})}),it("defines correct constants",function(){o(r).to.changeAST("start = .",n([],[],[],[]),{},{reportFailures:!1})})})})})},function(l,n,e){l.exports=e(85)},function(l,n,e){"use strict";let t=[];l.exports=function(l,n){function e(l,e){return n.type(e).toUpperCase()===l.toUpperCase()}l.Assertion.addMethod("like",function(u){let r=n.flag(this,"object");this.assert(function l(n,u){for(let l of t)if(l.match(n,u))return l.assert(n,u);if(n===u)return!0;if(e("object",u)&&e("object",n)){for(let e of Object.keys(u)){if(!(e in n))return!1;if(!l(n[e],u[e]))return!1}return!0}if(e("array",u)&&e("array",n)){if(n.length!==u.length)return!1;for(let e=0;e start).",location:{start:{offset:8,line:1,column:9},end:{offset:13,line:1,column:14}}})}),it("reports indirect left recursion",function(){o(r).to.reportError(["start = stop","stop = start"].join("\n"),{message:"Possible infinite loop when parsing (left recursion: start -> stop -> start).",location:{start:{offset:20,line:2,column:8},end:{offset:25,line:2,column:13}}})}),describe("in sequences",function(){it("reports left recursion if all preceding elements match empty string",function(){o(r).to.reportError("start = '' '' '' start")}),it("doesn't report left recursion if some preceding element doesn't match empty string",function(){o(r).to.not.reportError("start = 'a' '' '' start"),o(r).to.not.reportError("start = '' 'a' '' start"),o(r).to.not.reportError("start = '' '' 'a' start")}),it("reports left recursion when rule reference is wrapped in an expression",function(){o(r).to.reportError("start = '' start?")}),it("computes expressions that always consume input on success correctly",function(){o(r).to.reportError(["start = a start","a 'a' = ''"].join("\n")),o(r).to.not.reportError(["start = a start","a 'a' = 'a'"].join("\n")),o(r).to.reportError("start = ('' / 'a' / 'b') start"),o(r).to.reportError("start = ('a' / '' / 'b') start"),o(r).to.reportError("start = ('a' / 'b' / '') start"),o(r).to.not.reportError("start = ('a' / 'b' / 'c') start"),o(r).to.reportError("start = ('' { }) start"),o(r).to.not.reportError("start = ('a' { }) start"),o(r).to.reportError("start = ('' '' '') start"),o(r).to.not.reportError("start = ('a' '' '') start"),o(r).to.not.reportError("start = ('' 'a' '') start"),o(r).to.not.reportError("start = ('' '' 'a') start"),o(r).to.reportError("start = a:'' start"),o(r).to.not.reportError("start = a:'a' start"),o(r).to.reportError("start = $'' start"),o(r).to.not.reportError("start = $'a' start"),o(r).to.reportError("start = &'' start"),o(r).to.reportError("start = &'a' start"),o(r).to.reportError("start = !'' start"),o(r).to.reportError("start = !'a' start"),o(r).to.reportError("start = ''? start"),o(r).to.reportError("start = 'a'? start"),o(r).to.reportError("start = ''* start"),o(r).to.reportError("start = 'a'* start"),o(r).to.reportError("start = ''+ start"),o(r).to.not.reportError("start = 'a'+ start"),o(r).to.reportError("start = ('') start"),o(r).to.not.reportError("start = ('a') start"),o(r).to.reportError("start = &{ } start"),o(r).to.reportError("start = !{ } start"),o(r).to.reportError(["start = a start","a = ''"].join("\n")),o(r).to.not.reportError(["start = a start","a = 'a'"].join("\n")),o(r).to.reportError("start = '' start"),o(r).to.not.reportError("start = 'a' start"),o(r).to.not.reportError("start = [a-d] start"),o(r).to.not.reportError("start = . start")})})})},function(l,n,e){"use strict";var t=e(2),u=e(4),r=e(0).compiler.passes.check.reportInfiniteRepetition;t.use(u);var o=t.expect;describe("compiler pass |reportInfiniteRepetition|",function(){it("reports infinite loops for zero_or_more",function(){o(r).to.reportError("start = ('')*",{message:"Possible infinite loop when parsing (repetition used with an expression that may not consume any input).",location:{start:{offset:8,line:1,column:9},end:{offset:13,line:1,column:14}}})}),it("reports infinite loops for one_or_more",function(){o(r).to.reportError("start = ('')+",{message:"Possible infinite loop when parsing (repetition used with an expression that may not consume any input).",location:{start:{offset:8,line:1,column:9},end:{offset:13,line:1,column:14}}})}),it("computes expressions that always consume input on success correctly",function(){o(r).to.reportError(["start = a*","a 'a' = ''"].join("\n")),o(r).to.not.reportError(["start = a*","a 'a' = 'a'"].join("\n")),o(r).to.reportError("start = ('' / 'a' / 'b')*"),o(r).to.reportError("start = ('a' / '' / 'b')*"),o(r).to.reportError("start = ('a' / 'b' / '')*"),o(r).to.not.reportError("start = ('a' / 'b' / 'c')*"),o(r).to.reportError("start = ('' { })*"),o(r).to.not.reportError("start = ('a' { })*"),o(r).to.reportError("start = ('' '' '')*"),o(r).to.not.reportError("start = ('a' '' '')*"),o(r).to.not.reportError("start = ('' 'a' '')*"),o(r).to.not.reportError("start = ('' '' 'a')*"),o(r).to.reportError("start = (a:'')*"),o(r).to.not.reportError("start = (a:'a')*"),o(r).to.reportError("start = ($'')*"),o(r).to.not.reportError("start = ($'a')*"),o(r).to.reportError("start = (&'')*"),o(r).to.reportError("start = (&'a')*"),o(r).to.reportError("start = (!'')*"),o(r).to.reportError("start = (!'a')*"),o(r).to.reportError("start = (''?)*"),o(r).to.reportError("start = ('a'?)*"),o(r).to.reportError("start = (''*)*"),o(r).to.reportError("start = ('a'*)*"),o(r).to.reportError("start = (''+)*"),o(r).to.not.reportError("start = ('a'+)*"),o(r).to.reportError("start = ('')*"),o(r).to.not.reportError("start = ('a')*"),o(r).to.reportError("start = (&{ })*"),o(r).to.reportError("start = (!{ })*"),o(r).to.reportError(["start = a*","a = ''"].join("\n")),o(r).to.not.reportError(["start = a*","a = 'a'"].join("\n")),o(r).to.reportError("start = ''*"),o(r).to.not.reportError("start = 'a'*"),o(r).to.not.reportError("start = [a-d]*"),o(r).to.not.reportError("start = .*")})})},function(l,n,e){"use strict";var t=e(2),u=e(4),r=e(0).compiler.passes.check.reportUndefinedRules;t.use(u);var o=t.expect;describe("compiler pass |reportUndefinedRules|",function(){it("reports undefined rules",function(){o(r).to.reportError("start = undefined",{message:'Rule "undefined" is not defined.',location:{start:{offset:8,line:1,column:9},end:{offset:17,line:1,column:18}}})}),it("checks allowedStartRules",function(){o(r).to.reportError("start = 'a'",{message:'Start rule "missing" is not defined.'},{allowedStartRules:["missing"]})})})},function(l,n,e){"use strict";var t=e(2),u=e(4),r=e(0).compiler.passes.check.reportUnusedRules;t.use(u);var o=t.expect;describe("compiler pass |reportUnusedRules|",function(){it("should report rules that are not referenced",function(){o(r).to.reportWarning("\n start = .\n unused = .\n ",'Rule "unused" is not referenced.'),o(r).to.reportWarning("\n start = .\n unused = .\n used = .\n ",['Rule "used" is not referenced.','Rule "unused" is not referenced.'])}),it("does not report rules that are referenced",function(){o(r).not.to.reportWarning("start = ."),o(r).not.to.reportWarning("\n start = used\n used = .\n ")}),it("does not report any rules that the generated parser starts parsing from",function(){o(r).not.to.reportWarning('\n a = "x"\n b = a\n c = .+\n ',null,{allowedStartRules:["b","c"]})})})},function(l,n,e){"use strict";var t=e(2),u=e(0),r=u.parser,o=u.util,i=u.ast,a=t.expect;t.config.truncateThreshold=0,describe("PEG.js grammar parser",function(){var l={type:"literal",value:"abcd",ignoreCase:!1},n={type:"literal",value:"efgh",ignoreCase:!1},e={type:"literal",value:"ijkl",ignoreCase:!1},u={type:"literal",value:"mnop",ignoreCase:!1},s={type:"semantic_and",code:" code "},c={type:"semantic_not",code:" code "},f={type:"optional",expression:l},p={type:"zero_or_more",expression:l},h={type:"one_or_more",expression:l},d={type:"text",expression:f},g={type:"simple_not",expression:l},m={type:"simple_and",expression:f},y={type:"simple_not",expression:f},b={type:"labeled",label:"a",expression:l},v={type:"labeled",label:"b",expression:n},w={type:"labeled",label:"a",expression:g},A={type:"sequence",elements:[l,n,e]},E={type:"sequence",elements:[b,v]},x={type:"sequence",elements:[b,v,{type:"labeled",label:"c",expression:e},{type:"labeled",label:"d",expression:u}]},C={type:"group",expression:b},_={type:"group",expression:A},T={type:"action",expression:l,code:" code "},S={type:"action",expression:n,code:" code "},k={type:"action",expression:A,code:" code "},F={type:"choice",alternatives:[l,n,e]},D={type:"choice",alternatives:[T,S]},P={type:"choice",alternatives:[T,S,{type:"action",expression:e,code:" code "},{type:"action",expression:u,code:" code "}]},j={type:"named",name:"start rule",expression:l},O={type:"rule",name:"a",expression:l},B={type:"rule",name:"b",expression:n},$={type:"rule",name:"c",expression:e},L={type:"rule",name:"start",expression:l},N={type:"initializer",code:" code "};function M(l){return{type:"grammar",initializer:null,comments:null,rules:[{type:"rule",name:"start",expression:l}]}}function R(n){return M({type:"action",expression:l,code:n})}function I(l,n){return M({type:"literal",value:l,ignoreCase:n})}function q(l,n,e){return M({type:"class",parts:l,inverted:n,ignoreCase:e})}function U(){return M({type:"any"})}function H(l){return M({type:"rule_ref",name:l})}function z(l,n,e){return(l=o.clone(l)).comments=e.extractComments?n.reduce(function(l,n){return l[n.offset]={text:n.text,multiline:n.multiline},l},{}):null,l}var W,V=I("abcd",!1),G={type:"grammar",initializer:null,comments:null,rules:[O,B]},J=function(){var l;function n(l){delete l.location}function e(n){delete n.location,l(n.expression)}function t(n){return function(e){delete e.location,e[n].forEach(l)}}return l=i.visitor.build({grammar:function(e){delete e.location,delete e._alwaysConsumesOnSuccess,e.initializer&&l(e.initializer),e.comments&&o.each(e.comments,n),e.rules.forEach(l)},initializer:n,rule:e,named:e,choice:t("alternatives"),action:e,sequence:t("elements"),labeled:e,text:e,simple_and:e,simple_not:e,optional:e,zero_or_more:e,one_or_more:e,group:e,semantic_and:n,semantic_not:n,rule_ref:n,literal:n,class:n,any:n})}();function X(l,n){var e=l.Assertion;e.addMethod("parseAs",function(l,e){e=void 0===e?{}:e;var t=r.parse(n.flag(this,"object"),e);J(t),this.assert(n.eql(t,l),"expected #{this} to parse as #{exp} but got #{act}","expected #{this} to not parse as #{exp}",l,t,!n.flag(this,"negate"))}),e.addMethod("failToParse",function(l){var t,u;try{u=r.parse(n.flag(this,"object")),t=!0}catch(l){u=l,t=!1}t&&J(u),this.assert(!t,"expected #{this} to fail to parse but got #{act}","expected #{this} to not fail to parse but it failed with #{act}",null,u),t||void 0===l||Object.keys(l).forEach(function(n){new e(u).to.have.property(n).that.is.deep.equal(l[n])})})}beforeEach(function(){t.use(X)}),it("parses Rule+",function(){a("start = a").to.parseAs(H("a"));var l=H("a");l.initializer={type:"initializer",code:""},a("{}\nstart = a").to.parseAs(l),a("").to.failToParse(),a("{}").to.failToParse()}),it("parses Grammar",function(){a("\na = 'abcd';\n").to.parseAs({type:"grammar",comments:null,initializer:null,rules:[O]}),a("\na = 'abcd';\nb = 'efgh';\nc = 'ijkl';\n").to.parseAs({type:"grammar",comments:null,initializer:null,rules:[O,B,$]}),a("\n{ code };\na = 'abcd';\n").to.parseAs({type:"grammar",comments:null,initializer:N,rules:[O]})}),it("parses Initializer",function(){a("{ code };start = 'abcd'").to.parseAs({type:"grammar",comments:null,initializer:N,rules:[L]})}),it("parses Rule",function(){a("start\n=\n'abcd';").to.parseAs(M(l)),a("start\n'start rule'\n=\n'abcd';").to.parseAs(M(j))}),it("parses Expression",function(){a("start = 'abcd' / 'efgh' / 'ijkl'").to.parseAs(M(F))}),it("parses ChoiceExpression",function(){a("start = 'abcd' { code }").to.parseAs(M(T)),a("start = 'abcd' { code }\n/\n'efgh' { code }").to.parseAs(M(D)),a("start = 'abcd' { code }\n/\n'efgh' { code }\n/\n'ijkl' { code }\n/\n'mnop' { code }").to.parseAs(M(P))}),it("parses ActionExpression",function(){a("start = 'abcd' 'efgh' 'ijkl'").to.parseAs(M(A)),a("start = 'abcd' 'efgh' 'ijkl'\n{ code }").to.parseAs(M(k))}),it("parses SequenceExpression",function(){a("start = a:'abcd'").to.parseAs(M(b)),a("start = a:'abcd'\nb:'efgh'").to.parseAs(M(E)),a("start = a:'abcd'\nb:'efgh'\nc:'ijkl'\nd:'mnop'").to.parseAs(M(x))}),it("parses `@` (value plucking)",function(){function t(){for(var l=arguments.length,n=new Array(l),e=0;e\n'abcd'").to.failToParse()})},[{},{extractComments:!1},{extractComments:!0}].forEach(function(l){describe("with options "+t.util.inspect(l),function(){return W(l)})}),it("parses Identifier",function(){a("start = a:'abcd'").to.parseAs(M(b))}),it("parses IdentifierName",function(){a("start = a").to.parseAs(H("a")),a("start = ab").to.parseAs(H("ab")),a("start = abcd").to.parseAs(H("abcd"))}),it("parses IdentifierStart",function(){a("start = a").to.parseAs(H("a")),a("start = $").to.parseAs(H("$")),a("start = _").to.parseAs(H("_")),a("start = \\u0061").to.parseAs(H("a"))}),it("parses IdentifierPart",function(){a("start = aa").to.parseAs(H("aa")),a("start = à").to.parseAs(H("à")),a("start = a0").to.parseAs(H("a0")),a("start = a‿").to.parseAs(H("a‿")),a("start = a‌").to.parseAs(H("a‌")),a("start = a‍").to.parseAs(H("a‍"))}),it("parses LiteralMatcher",function(){a("start = 'abcd'").to.parseAs(I("abcd",!1)),a("start = 'abcd'i").to.parseAs(I("abcd",!0))}),it("parses StringLiteral",function(){a('start = ""').to.parseAs(I("",!1)),a('start = "a"').to.parseAs(I("a",!1)),a('start = "abc"').to.parseAs(I("abc",!1)),a("start = ''").to.parseAs(I("",!1)),a("start = 'a'").to.parseAs(I("a",!1)),a("start = 'abc'").to.parseAs(I("abc",!1))}),it("parses DoubleStringCharacter",function(){a('start = "a"').to.parseAs(I("a",!1)),a('start = "\\n"').to.parseAs(I("\n",!1)),a('start = "\\\n"').to.parseAs(I("",!1)),a('start = """').to.failToParse(),a('start = "\\"').to.failToParse(),a('start = "\n"').to.failToParse()}),it("parses SingleStringCharacter",function(){a("start = 'a'").to.parseAs(I("a",!1)),a("start = '\\n'").to.parseAs(I("\n",!1)),a("start = '\\\n'").to.parseAs(I("",!1)),a("start = '''").to.failToParse(),a("start = '\\'").to.failToParse(),a("start = '\n'").to.failToParse()}),it("parses CharacterClassMatcher",function(){a("start = []").to.parseAs(q([],!1,!1)),a("start = [a-d]").to.parseAs(q([["a","d"]],!1,!1)),a("start = [a]").to.parseAs(q(["a"],!1,!1)),a("start = [a-de-hi-l]").to.parseAs(q([["a","d"],["e","h"],["i","l"]],!1,!1)),a("start = [^a-d]").to.parseAs(q([["a","d"]],!0,!1)),a("start = [a-d]i").to.parseAs(q([["a","d"]],!1,!0)),a("start = [\\\n]").to.parseAs(q([],!1,!1))}),it("parses ClassCharacterRange",function(){a("start = [a-d]").to.parseAs(q([["a","d"]],!1,!1)),a("start = [a-a]").to.parseAs(q([["a","a"]],!1,!1)),a("start = [b-a]").to.failToParse({message:"Invalid character range: b-a."})}),it("parses ClassCharacter",function(){a("start = [a]").to.parseAs(q(["a"],!1,!1)),a("start = [\\n]").to.parseAs(q(["\n"],!1,!1)),a("start = [\\\n]").to.parseAs(q([],!1,!1)),a("start = []]").to.failToParse(),a("start = [\\]").to.failToParse(),a("start = [\n]").to.failToParse()}),it("parses LineContinuation",function(){a("start = '\\\r\n'").to.parseAs(I("",!1))}),it("parses EscapeSequence",function(){a("start = '\\n'").to.parseAs(I("\n",!1)),a("start = '\\0'").to.parseAs(I("\0",!1)),a("start = '\\xFF'").to.parseAs(I("ÿ",!1)),a("start = '\\uFFFF'").to.parseAs(I("￿",!1)),a("start = '\\09'").to.failToParse()}),it("parses CharacterEscapeSequence",function(){a("start = '\\n'").to.parseAs(I("\n",!1)),a("start = '\\a'").to.parseAs(I("a",!1))}),it("parses SingleEscapeCharacter",function(){a("start = '\\''").to.parseAs(I("'",!1)),a("start = '\\\"'").to.parseAs(I('"',!1)),a("start = '\\\\'").to.parseAs(I("\\",!1)),a("start = '\\b'").to.parseAs(I("\b",!1)),a("start = '\\f'").to.parseAs(I("\f",!1)),a("start = '\\n'").to.parseAs(I("\n",!1)),a("start = '\\r'").to.parseAs(I("\r",!1)),a("start = '\\t'").to.parseAs(I("\t",!1)),a("start = '\\v'").to.parseAs(I("\v",!1))}),it("parses NonEscapeCharacter",function(){a("start = '\\a'").to.parseAs(I("a",!1))}),it("parses HexEscapeSequence",function(){a("start = '\\xFF'").to.parseAs(I("ÿ",!1))}),it("parses UnicodeEscapeSequence",function(){a("start = '\\uFFFF'").to.parseAs(I("￿",!1))}),it("parses AnyMatcher",function(){a("start = .").to.parseAs(U())}),it("parses CodeBlock",function(){a("start = 'abcd' { code }").to.parseAs(R(" code "))}),it("parses Code",function(){a("start = 'abcd' {a}").to.parseAs(R("a")),a("start = 'abcd' {abc}").to.parseAs(R("abc")),a("start = 'abcd' {{a}}").to.parseAs(R("{a}")),a("start = 'abcd' {{a}{b}{c}}").to.parseAs(R("{a}{b}{c}")),a("start = 'abcd' {{}").to.failToParse(),a("start = 'abcd' {}}").to.failToParse()}),it("parses __",function(){a("start ='abcd'").to.parseAs(V),a("start = 'abcd'").to.parseAs(V),a("start =\r\n'abcd'").to.parseAs(V),a("start =/* comment */'abcd'").to.parseAs(V),a("start = 'abcd'").to.parseAs(V)}),it("parses _",function(){a("a = 'abcd'\r\nb = 'efgh'").to.parseAs(G),a("a = 'abcd' \r\nb = 'efgh'").to.parseAs(G),a("a = 'abcd'/* comment */\r\nb = 'efgh'").to.parseAs(G),a("a = 'abcd' \r\nb = 'efgh'").to.parseAs(G)}),it("parses EOS",function(){a("a = 'abcd'\n;b = 'efgh'").to.parseAs(G),a("a = 'abcd' \r\nb = 'efgh'").to.parseAs(G),a("a = 'abcd' // comment\r\nb = 'efgh'").to.parseAs(G),a("a = 'abcd'\nb = 'efgh'").to.parseAs(G)}),it("parses EOF",function(){a("start = 'abcd'\n").to.parseAs(V)}),it("reports unmatched brace",function(){a(function(){return r.parse("rule = \n 'x' { y \n z")}).to.throw("Unbalanced brace.").with.property("location").that.deep.equals({start:{offset:13,line:2,column:6},end:{offset:14,line:2,column:7}})})})}])});