mermaid/dist/mermaidAPI.slim.min.js

12 lines
276 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var e;"undefined"!=typeof window?e=window:"undefined"!=typeof global?e=global:"undefined"!=typeof self&&(e=self),e.mermaidAPI=t()}}(function(){var define,module,exports;return function t(e,n,r){function i(s,o){if(!n[s]){if(!e[s]){var u="function"==typeof require&&require;if(!o&&u)return u(s,!0);if(a)return a(s,!0);var c=new Error("Cannot find module '"+s+"'");throw c.code="MODULE_NOT_FOUND",c}var l=n[s]={exports:{}};e[s][0].call(l.exports,function(t){var n=e[s][1][t];return i(n?n:t)},l,l.exports,t,e,n,r)}return n[s].exports}for(var a="function"==typeof require&&require,s=0;s<r.length;s++)i(r[s]);return i}({1:[function(){},{}],2:[function(t,e,n){(function(t){function e(t,e){for(var n=0,r=t.length-1;r>=0;r--){var i=t[r];"."===i?t.splice(r,1):".."===i?(t.splice(r,1),n++):n&&(t.splice(r,1),n--)}if(e)for(;n--;n)t.unshift("..");return t}function r(t,e){if(t.filter)return t.filter(e);for(var n=[],r=0;r<t.length;r++)e(t[r],r,t)&&n.push(t[r]);return n}var i=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,a=function(t){return i.exec(t).slice(1)};n.resolve=function(){for(var n="",i=!1,a=arguments.length-1;a>=-1&&!i;a--){var s=a>=0?arguments[a]:t.cwd();if("string"!=typeof s)throw new TypeError("Arguments to path.resolve must be strings");s&&(n=s+"/"+n,i="/"===s.charAt(0))}return n=e(r(n.split("/"),function(t){return!!t}),!i).join("/"),(i?"/":"")+n||"."},n.normalize=function(t){var i=n.isAbsolute(t),a="/"===s(t,-1);return t=e(r(t.split("/"),function(t){return!!t}),!i).join("/"),t||i||(t="."),t&&a&&(t+="/"),(i?"/":"")+t},n.isAbsolute=function(t){return"/"===t.charAt(0)},n.join=function(){var t=Array.prototype.slice.call(arguments,0);return n.normalize(r(t,function(t){if("string"!=typeof t)throw new TypeError("Arguments to path.join must be strings");return t}).join("/"))},n.relative=function(t,e){function r(t){for(var e=0;e<t.length&&""===t[e];e++);for(var n=t.length-1;n>=0&&""===t[n];n--);return e>n?[]:t.slice(e,n-e+1)}t=n.resolve(t).substr(1),e=n.resolve(e).substr(1);for(var i=r(t.split("/")),a=r(e.split("/")),s=Math.min(i.length,a.length),o=s,u=0;s>u;u++)if(i[u]!==a[u]){o=u;break}for(var c=[],u=o;u<i.length;u++)c.push("..");return c=c.concat(a.slice(o)),c.join("/")},n.sep="/",n.delimiter=":",n.dirname=function(t){var e=a(t),n=e[0],r=e[1];return n||r?(r&&(r=r.substr(0,r.length-1)),n+r):"."},n.basename=function(t,e){var n=a(t)[2];return e&&n.substr(-1*e.length)===e&&(n=n.substr(0,n.length-e.length)),n},n.extname=function(t){return a(t)[3]};var s="b"==="ab".substr(-1)?function(t,e,n){return t.substr(e,n)}:function(t,e,n){return 0>e&&(e=t.length+e),t.substr(e,n)}}).call(this,t("_process"))},{_process:3}],3:[function(t,e){function n(){}var r=e.exports={};r.nextTick=function(){var t="undefined"!=typeof window&&window.setImmediate,e="undefined"!=typeof window&&window.MutationObserver,n="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(t)return function(t){return window.setImmediate(t)};var r=[];if(e){var i=document.createElement("div"),a=new MutationObserver(function(){var t=r.slice();r.length=0,t.forEach(function(t){t()})});return a.observe(i,{attributes:!0}),function(t){r.length||i.setAttribute("yes","no"),r.push(t)}}return n?(window.addEventListener("message",function(t){var e=t.source;if((e===window||null===e)&&"process-tick"===t.data&&(t.stopPropagation(),r.length>0)){var n=r.shift();n()}},!0),function(t){r.push(t),window.postMessage("process-tick","*")}):function(t){setTimeout(t,0)}}(),r.title="browser",r.browser=!0,r.env={},r.argv=[],r.on=n,r.addListener=n,r.once=n,r.off=n,r.removeListener=n,r.removeAllListeners=n,r.emit=n,r.binding=function(){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(){throw new Error("process.chdir is not supported")}},{}],4:[function(t,e){e.exports={graphlib:t("./lib/graphlib"),dagre:t("./lib/dagre"),intersect:t("./lib/intersect"),render:t("./lib/render"),util:t("./lib/util"),version:t("./lib/version")}},{"./lib/dagre":11,"./lib/graphlib":12,"./lib/intersect":13,"./lib/render":28,"./lib/util":30,"./lib/version":31}],5:[function(t,e){function n(t,e,n,r){var i=t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=i.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");a.applyStyle(s,n[r+"Style"])}function r(t,e,n,r){var i=t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=i.append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");a.applyStyle(s,n[r+"Style"])}function i(t,e,n,r){var i=t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),s=i.append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");a.applyStyle(s,n[r+"Style"])}var a=t("./util");e.exports={"default":n,normal:n,vee:r,undirected:i}},{"./util":30}],6:[function(t,e){function n(t,e){var n=e.nodes().filter(function(t){return r.isSubgraph(e,t)}),a=t.selectAll("g.cluster").data(n,function(t){return t});return a.selectAll("*").remove(),a.enter().append("g").attr("class","cluster").attr("id",function(t){var n=e.node(t);return n.id}).style("opacity",0),r.applyTransition(a,e).style("opacity",1),a.each(function(t){var n=e.node(t),r=d3.select(this);d3.select(this).append("rect");var a=r.append("g").attr("class","label");i(a,n,n.clusterLabelPos)}),a.selectAll("rect").each(function(t){var n=e.node(t),i=d3.select(this);r.applyStyle(i,n.style)}),r.applyTransition(a.exit(),e).style("opacity",0).remove(),a}var r=t("./util"),i=t("./label/add-label");e.exports=n},{"./label/add-label":21,"./util":30}],7:[function(t,e){"use strict";function n(t,e){var n=t.selectAll("g.edgeLabel").data(e.edges(),function(t){return a.edgeToId(t)}).classed("update",!0);return n.selectAll("*").remove(),n.enter().append("g").classed("edgeLabel",!0).style("opacity",0),n.each(function(t){var n=e.edge(t),a=i(s.select(this),e.edge(t),0,0).classed("label",!0),o=a.node().getBBox();n.labelId&&a.attr("id",n.labelId),r.has(n,"width")||(n.width=o.width),r.has(n,"height")||(n.height=o.height)}),a.applyTransition(n.exit(),e).style("opacity",0).remove(),n}var r=t("./lodash"),i=t("./label/add-label"),a=t("./util"),s=t("./d3");e.exports=n},{"./d3":10,"./label/add-label":21,"./lodash":24,"./util":30}],8:[function(t,e){"use strict";function n(t,e,n){var i=t.selectAll("g.edgePath").data(e.edges(),function(t){return l.edgeToId(t)}).classed("update",!0);return s(i,e),o(i,e),l.applyTransition(i,e).style("opacity",1),i.each(function(t){var n=h.select(this),r=e.edge(t);r.elem=this,r.id&&n.attr("id",r.id),l.applyClass(n,r["class"],(n.classed("update")?"update ":"")+"edgePath")}),i.selectAll("path.path").each(function(t){var n=e.edge(t);n.arrowheadId=u.uniqueId("arrowhead");var i=h.select(this).attr("marker-end",function(){return"url(#"+n.arrowheadId+")"}).style("fill","none");l.applyTransition(i,e).attr("d",function(t){return r(e,t)}),l.applyStyle(i,n.style)}),i.selectAll("defs *").remove(),i.selectAll("defs").each(function(t){var r=e.edge(t),i=n[r.arrowhead];i(h.select(this),r.arrowheadId,r,"arrowhead")}),i}function r(t,e){var n=t.edge(e),r=t.node(e.v),a=t.node(e.w),s=n.points.slice(1,n.points.length-1);return s.unshift(c(r,s[0])),s.push(c(a,s[s.length-1])),i(n,s)}function i(t,e){var n=h.svg.line().x(function(t){return t.x}).y(function(t){return t.y});return u.has(t,"lineInterpolate")&&n.interpolate(t.lineInterpolate),u.has(t,"lineTension")&&n.tension(Number(t.lineTension)),n(e)}function a(t){var e=t.getBBox(),n=t.getTransformToElement(t.ownerSVGElement).translate(e.width/2,e.height/2);return{x:n.e,y:n.f}}function s(t,e){var n=t.enter().append("g").attr("class","edgePath").style("opacity",0);n.append("path").attr("class","path").attr("d",function(t){var n=e.edge(t),r=e.node(t.v).elem,s=u.range(n.points.length).map(function(){return a(r)});return i(n,s)}),n.append("defs")}function o(t,e){var n=t.exit();l.applyTransition(n,e).style("opacity",0).remove(),l.applyTransition(n.select("path.path"),e).attr("d",function(t){var n=e.node(t.v);if(n){var r=u.range(this.pathSegList.length).map(function(){return n});return i({},r)}return h.select(this).attr("d")})}var u=t("./lodash"),c=t("./intersect/intersect-node"),l=t("./util"),h=t("./d3");e.exports=n},{"./d3":10,"./intersect/intersect-node":17,"./lodash":24,"./util":30}],9:[function(t,e){"use strict";function n(t,e,n){var o=e.nodes().filter(function(t){return!a.isSubgraph(e,t)}),u=t.selectAll("g.node").data(o,function(t){return t}).classed("update",!0);return u.selectAll("*").remove(),u.enter().append("g").attr("class","node").style("opacity",0),u.each(function(t){var o=e.node(t),u=s.select(this),c=u.append("g").attr("class","label"),l=i(c,o),h=n[o.shape],d=r.pick(l.node().getBBox(),"width","height");o.elem=this,o.id&&u.attr("id",o.id),o.labelId&&c.attr("id",o.labelId),a.applyClass(u,o["class"],(u.classed("update")?"update ":"")+"node"),r.has(o,"width")&&(d.width=o.width),r.has(o,"height")&&(d.height=o.height),d.width+=o.paddingLeft+o.paddingRight,d.height+=o.paddingTop+o.paddingBottom,c.attr("transform","translate("+(o.paddingLeft-o.paddingRight)/2+","+(o.paddingTop-o.paddingBottom)/2+")");var f=h(s.select(this),d,o);a.applyStyle(f,o.style);var p=f.node().getBBox();o.width=p.width,o.height=p.height}),a.applyTransition(u.exit(),e).style("opacity",0).remove(),u}var r=t("./lodash"),i=t("./label/add-label"),a=t("./util"),s=t("./d3");e.exports=n},{"./d3":10,"./label/add-label":21,"./lodash":24,"./util":30}],10:[function(t,e){e.exports=window.d3},{}],11:[function(t,e){var n;if(t)try{n=t("dagre")}catch(r){}n||(n=window.dagre),e.exports=n},{dagre:32}],12:[function(t,e){var n;if(t)try{n=t("graphlib")}catch(r){}n||(n=window.graphlib),e.exports=n},{graphlib:62}],13:[function(t,e){e.exports={node:t("./intersect-node"),circle:t("./intersect-circle"),ellipse:t("./intersect-ellipse"),polygon:t("./intersect-polygon"),rect:t("./intersect-rect")}},{"./intersect-circle":14,"./intersect-ellipse":15,"./intersect-node":17,"./intersect-polygon":18,"./intersect-rect":19}],14:[function(t,e){function n(t,e,n){return r(t,e,e,n)}var r=t("./intersect-ellipse");e.exports=n},{"./intersect-ellipse":15}],15:[function(t,e){function n(t,e,n,r){var i=t.x,a=t.y,s=i-r.x,o=a-r.y,u=Math.sqrt(e*e*o*o+n*n*s*s),c=Math.abs(e*n*s/u);r.x<i&&(c=-c);var l=Math.abs(e*n*o/u);return r.y<a&&(l=-l),{x:i+c,y:a+l}}e.exports=n},{}],16:[function(t,e){function n(t,e,n,i){var a,s,o,u,c,l,h,d,f,p,g,y,m,v,_;return a=e.y-t.y,o=t.x-e.x,c=e.x*t.y-t.x*e.y,f=a*n.x+o*n.y+c,p=a*i.x+o*i.y+c,0!==f&&0!==p&&r(f,p)||(s=i.y-n.y,u=n.x-i.x,l=i.x*n.y-n.x*i.y,h=s*t.x+u*t.yy+l,d=s*e.x+u*e.y+l,0!==h&&0!==d&&r(h,d)||(g=a*u-s*o,0===g))?void 0:(y=Math.abs(g/2),m=o*l-u*c,v=0>m?(m-y)/g:(m+y)/g,m=s*c-a*l,_=0>m?(m-y)/g:(m+y)/g,{x:v,y:_})}function r(t,e){return t*e>0}e.exports=n},{}],17:[function(t,e){function n(t,e){return t.intersect(e)}e.exports=n},{}],18:[function(t,e){function n(t,e,n){var i=t.x,a=t.y,s=[],o=Number.POSITIVE_INFINITY,u=Number.POSITIVE_INFINITY;e.forEach(function(t){o=Math.min(o,t.x),u=Math.min(u,t.y)});for(var c=i-t.width/2-o,l=a-t.height/2-u,h=0;h<e.length;h++){var d=e[h],f=e[h<e.length-1?h+1:0],p=r(t,n,{x:c+d.x,y:l+d.y},{x:c+f.x,y:l+f.y});p&&s.push(p)}return s.length?(s.length>1&&s.sort(function(t,e){var r=t.x-n.x,i=t.y-n.y,a=Math.sqrt(r*r+i*i),s=e.x-n.x,o=e.y-n.y,u=Math.sqrt(s*s+o*o);return u>a?-1:a===u?0:1}),s[0]):(console.log("NO INTERSECTION FOUND, RETURN NODE CENTER",t),t)}var r=t("./intersect-line");e.exports=n},{"./intersect-line":16}],19:[function(t,e){function n(t,e){var n,r,i=t.x,a=t.y,s=e.x-i,o=e.y-a,u=t.width/2,c=t.height/2;return Math.abs(o)*u>Math.abs(s)*c?(0>o&&(c=-c),n=0===o?0:c*s/o,r=c):(0>s&&(u=-u),n=u,r=0===s?0:u*o/s),{x:i+n,y:a+r}}e.exports=n},{}],20:[function(t,e){function n(t,e){var n=t.append("foreignObject").attr("width","100000"),i=n.append("xhtml:div"),a=e.label;switch(typeof a){case"function":i.insert(a);break;case"object":i.insert(function(){return a});break;default:i.html(a)}r.applyStyle(i,e.labelStyle),i.style("display","inline-block"),i.style("white-space","nowrap");var s,o;return i.each(function(){s=this.clientWidth,o=this.clientHeight}),n.attr("width",s).attr("height",o),n}var r=t("../util");e.exports=n},{"../util":30}],21:[function(t,e){function n(t,e,n){var s=e.label,o=t.append("g");"svg"===e.labelType?a(o,e):"string"!=typeof s||"html"===e.labelType?i(o,e):r(o,e);var u,c=o.node().getBBox();switch(n){case"top":u=-e.height/2;break;case"bottom":u=e.height/2-c.height;break;default:u=-c.height/2}return o.attr("transform","translate("+-c.width/2+","+u+")"),o}var r=t("./add-text-label"),i=t("./add-html-label"),a=t("./add-svg-label");e.exports=n},{"./add-html-label":20,"./add-svg-label":22,"./add-text-label":23}],22:[function(t,e){function n(t,e){var n=t;return n.node().appendChild(e.label),r.applyStyle(n,e.labelStyle),n}var r=t("../util");e.exports=n},{"../util":30}],23:[function(t,e){function n(t,e){for(var n=t.append("text"),a=r(e.label).split("\n"),s=0;s<a.length;s++)n.append("tspan").attr("xml:space","preserve").attr("dy","1em").attr("x","1").text(a[s]);return i.applyStyle(n,e.labelStyle),n}function r(t){for(var e,n="",r=!1,i=0;i<t.length;++i)if(e=t[i],r){switch(e){case"n":n+="\n";break;default:n+=e}r=!1}else"\\"===e?r=!0:n+=e;return n}var i=t("../util");e.exports=n},{"../util":30}],24:[function(t,e){var n;if(t)try{n=t("lodash")}catch(r){}n||(n=window._),e.exports=n},{lodash:82}],25:[function(t,e){"use strict";function n(t,e){function n(t){var n=e.node(t);return"translate("+n.x+","+n.y+")"}var a=t.filter(function(){return!i.select(this).classed("update")});a.attr("transform",n),r.applyTransition(t,e).style("opacity",1).attr("transform",n),r.applyTransition(a.selectAll("rect"),e).attr("width",function(t){return e.node(t).width}).attr("height",function(t){return e.node(t).height}).attr("x",function(t){var n=e.node(t);return-n.width/2}).attr("y",function(t){var n=e.node(t);return-n.height/2})}var r=t("./util"),i=t("./d3");e.exports=n},{"./d3":10,"./util":30}],26:[function(t,e){"use strict";function n(t,e){function n(t){var n=e.edge(t);return a.has(n,"x")?"translate("+n.x+","+n.y+")":""}var s=t.filter(function(){return!i.select(this).classed("update")});s.attr("transform",n),r.applyTransition(t,e).style("opacity",1).attr("transform",n)}var r=t("./util"),i=t("./d3"),a=t("./lodash");e.exports=n},{"./d3":10,"./lodash":24,"./util":30}],27:[function(t,e){"use strict";function n(t,e){function n(t){var n=e.node(t);return"translate("+n.x+","+n.y+")"}var a=t.filter(function(){return!i.select(this).classed("update")});a.attr("transform",n),r.applyTransition(t,e).style("opacity",1).attr("transform",n)}var r=t("./util"),i=t("./d3");e.exports=n},{"./d3":10,"./util":30}],28:[function(t,e){function n(){var e=t("./create-nodes"),n=t("./create-clusters"),s=t("./create-edge-labels"),u=t("./create-edge-paths"),c=t("./position-nodes"),l=t("./position-edge-labels"),h=t("./position-clusters"),d=t("./shapes"),f=t("./arrows"),p=function(t,p){r(p);var g=a(t,"output"),y=a(g,"clusters"),m=a(g,"edgePaths"),v=s(a(g,"edgeLabels"),p),_=e(a(g,"nodes"),p,d);o(p),c(_,p),l(v,p),u(m,p,f);var b=n(y,p);h(b,p),i(p)};return p.createNodes=function(t){return arguments.length?(e=t,p):e},p.createClusters=function(t){return arguments.length?(n=t,p):n},p.createEdgeLabels=function(t){return arguments.length?(s=t,p):s},p.createEdgePaths=function(t){return arguments.length?(u=t,p):u},p.shapes=function(t){return arguments.length?(d=t,p):d},p.arrows=function(t){return arguments.length?(f=t,p):f},p}function r(t){t.nodes().forEach(function(e){var n=t.node(e);s.has(n,"label")||t.children(e).length||(n.label=e),s.has(n,"paddingX")&&s.defaults(n,{paddingLeft:n.paddingX,paddingRight:n.paddingX}),s.has(n,"paddingY")&&s.defaults(n,{paddingTop:n.paddingY,paddingBottom:n.paddingY}),s.has(n,"padding")&&s.defaults(n,{paddingLeft:n.padding,paddingRight:n.padding,paddingTop:n.padding,paddingBottom:n.padding}),s.defaults(n,u),s.each(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(t){n[t]=Number(n[t])}),s.has(n,"width")&&(n._prevWidth=n.width),s.has(n,"height")&&(n._prevHeight=n.height)}),t.edges().forEach(function(e){var n=t.edge(e);s.has(n,"label")||(n.label=""),s.defaults(n,c)})}function i(t){s.each(t.nodes(),function(e){var n=t.node(e);s.has(n,"_prevWidth")?n.width=n._prevWidth:delete n.width,s.has(n,"_prevHeight")?n.height=n._prevHeight:delete n.height,delete n._prevWidth,delete n._prevHeight})}function a(t,e){var n=t.select("g."+e);return n.empty()&&(n=t.append("g").attr("class",e)),n}var s=t("./lodash"),o=t("./dagre").layout;e.exports=n;var u={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},c={arrowhead:"normal",lineInterpolate:"linear"}},{"./arrows":5,"./create-clusters":6,"./create-edge-labels":7,"./create-edge-paths":8,"./create-nodes":9,"./dagre":11,"./lodash":24,"./position-clusters":25,"./position-edge-labels":26,"./position-nodes":27,"./shapes":29}],29:[function(t,e){"use strict";function n(t,e,n){var r=t.insert("rect",":first-child").attr("rx",n.rx).attr("ry",n.ry).attr("x",-e.width/2).attr("y",-e.height/2).attr("width",e.width).attr("height",e.height);return n.intersect=function(t){return s(n,t)},r}function r(t,e,n){var r=e.width/2,i=e.height/2,a=t.insert("ellipse",":first-child").attr("x",-e.width/2).attr("y",-e.height/2).attr("rx",r).attr("ry",i);return n.intersect=function(t){return o(n,r,i,t)},a}function i(t,e,n){var r=Math.max(e.width,e.height)/2,i=t.insert("circle",":first-child").attr("x",-e.width/2).attr("y",-e.height/2).attr("r",r);return n.intersect=function(t){return u(n,r,t)},i}function a(t,e,n){var r=e.width*Math.SQRT2/2,i=e.height*Math.SQRT2/2,a=[{x:0,y:-i},{x:-r,y:0},{x:0,y:i},{x:r,y:0}],s=t.insert("polygon",":first-child").attr("points",a.map(function(t){return t.x+","+t.y}).join(" "));return n.intersect=function(t){return c(n,a,t)},s}var s=t("./intersect/intersect-rect"),o=t("./intersect/intersect-ellipse"),u=t("./intersect/intersect-circle"),c=t("./intersect/intersect-polygon");e.exports={rect:n,ellipse:r,circle:i,diamond:a}},{"./intersect/intersect-circle":14,"./intersect/intersect-ellipse":15,"./intersect/intersect-polygon":18,"./intersect/intersect-rect":19}],30:[function(t,e){function n(t,e){return!!t.children(e).length}function r(t){return i(t.v)+":"+i(t.w)+":"+i(t.name)}function i(t){return t?String(t).replace(c,"\\:"):""}function a(t,e){e&&t.attr("style",e)}function s(t,e,n){e&&t.attr("class",e).attr("class",n+" "+t.attr("class"))}function o(t,e){var n=e.graph();if(u.isPlainObject(n)){var r=n.transition;if(u.isFunction(r))return r(t)}return t}var u=t("./lodash");e.exports={isSubgraph:n,edgeToId:r,applyStyle:a,applyClass:s,applyTransition:o};var c=/:/g},{"./lodash":24}],31:[function(t,e){e.exports="0.4.10"},{}],32:[function(t,e){e.exports={graphlib:t("./lib/graphlib"),layout:t("./lib/layout"),debug:t("./lib/debug"),util:{time:t("./lib/util").time,notime:t("./lib/util").notime},version:t("./lib/version")}},{"./lib/debug":37,"./lib/graphlib":38,"./lib/layout":40,"./lib/util":60,"./lib/version":61}],33:[function(t,e){"use strict";function n(t){function e(t){return function(e){return t.edge(e).weight}}var n="greedy"===t.graph().acyclicer?s(t,e(t)):r(t);a.each(n,function(e){var n=t.edge(e);t.removeEdge(e),n.forwardName=e.name,n.reversed=!0,t.setEdge(e.w,e.v,n,a.uniqueId("rev"))})}function r(t){function e(s){a.has(i,s)||(i[s]=!0,r[s]=!0,a.each(t.outEdges(s),function(t){a.has(r,t.w)?n.push(t):e(t.w)}),delete r[s])}var n=[],r={},i={};return a.each(t.nodes(),e),n}function i(t){a.each(t.edges(),function(e){var n=t.edge(e);if(n.reversed){t.removeEdge(e);var r=n.forwardName;delete n.reversed,delete n.forwardName,t.setEdge(e.w,e.v,n,r)}})}var a=t("./lodash"),s=t("./greedy-fas");e.exports={run:n,undo:i}},{"./greedy-fas":39,"./lodash":41}],34:[function(t,e){function n(t){function e(n){var a=t.children(n),s=t.node(n);if(a.length&&i.each(a,e),i.has(s,"minRank")){s.borderLeft=[],s.borderRight=[];for(var o=s.minRank,u=s.maxRank+1;u>o;++o)r(t,"borderLeft","_bl",n,s,o),r(t,"borderRight","_br",n,s,o)}}i.each(t.children(),e)}function r(t,e,n,r,i,s){var o={width:0,height:0,rank:s,borderType:e},u=i[e][s-1],c=a.addDummyNode(t,"border",o,n);i[e][s]=c,t.setParent(c,r),u&&t.setEdge(u,c,{weight:1})}var i=t("./lodash"),a=t("./util");e.exports=n},{"./lodash":41,"./util":60}],35:[function(t,e){"use strict";function n(t){var e=t.graph().rankdir.toLowerCase();("lr"===e||"rl"===e)&&i(t)}function r(t){var e=t.graph().rankdir.toLowerCase();("bt"===e||"rl"===e)&&s(t),("lr"===e||"rl"===e)&&(u(t),i(t))}function i(t){l.each(t.nodes(),function(e){a(t.node(e))}),l.each(t.edges(),function(e){a(t.edge(e))})}function a(t){var e=t.width;t.width=t.height,t.height=e}function s(t){l.each(t.nodes(),function(e){o(t.node(e))}),l.each(t.edges(),function(e){var n=t.edge(e);l.each(n.points,o),l.has(n,"y")&&o(n)})}function o(t){t.y=-t.y}function u(t){l.each(t.nodes(),function(e){c(t.node(e))}),l.each(t.edges(),function(e){var n=t.edge(e);l.each(n.points,c),l.has(n,"x")&&c(n)})}function c(t){var e=t.x;t.x=t.y,t.y=e}var l=t("./lodash");e.exports={adjust:n,undo:r}},{"./lodash":41}],36:[function(t,e){function n(){var t={};t._next=t._prev=t,this._sentinel=t}function r(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function i(t,e){return"_next"!==t&&"_prev"!==t?e:void 0}e.exports=n,n.prototype.dequeue=function(){var t=this._sentinel,e=t._prev;return e!==t?(r(e),e):void 0},n.prototype.enqueue=function(t){var e=this._sentinel;t._prev&&t._next&&r(t),t._next=e._next,e._next._prev=t,e._next=t,t._prev=e},n.prototype.toString=function(){for(var t=[],e=this._sentinel,n=e._prev;n!==e;)t.push(JSON.stringify(n,i)),n=n._prev;return"["+t.join(", ")+"]"}},{}],37:[function(t,e){function n(t){var e=i.buildLayerMatrix(t),n=new a({compound:!0,multigraph:!0}).setGraph({});return r.each(t.nodes(),function(e){n.setNode(e,{label:e}),n.setParent(e,"layer"+t.node(e).rank)}),r.each(t.edges(),function(t){n.setEdge(t.v,t.w,{},t.name)}),r.each(e,function(t,e){var i="layer"+e;n.setNode(i,{rank:"same"}),r.reduce(t,function(t,e){return n.setEdge(t,e,{style:"invis"}),e})}),n}var r=t("./lodash"),i=t("./util"),a=t("./graphlib").Graph;e.exports={debugOrdering:n}},{"./graphlib":38,"./lodash":41,"./util":60}],38:[function(t,e){var n;if("function"==typeof t)try{n=t("graphlib")}catch(r){}n||(n=window.graphlib),e.exports=n},{graphlib:62}],39:[function(t,e){function n(t,e){if(t.nodeCount()<=1)return[];var n=a(t,e||l),i=r(n.graph,n.buckets,n.zeroIdx);return o.flatten(o.map(i,function(e){return t.outEdges(e.v,e.w)}),!0)}function r(t,e,n){for(var r,a=[],s=e[e.length-1],o=e[0];t.nodeCount();){for(;r=o.dequeue();)i(t,e,n,r);for(;r=s.dequeue();)i(t,e,n,r);if(t.nodeCount())for(var u=e.length-2;u>0;--u)if(r=e[u].dequeue()){a=a.concat(i(t,e,n,r,!0));break}}return a}function i(t,e,n,r,i){var a=i?[]:void 0;return o.each(t.inEdges(r.v),function(r){var o=t.edge(r),u=t.node(r.v);i&&a.push({v:r.v,w:r.w}),u.out-=o,s(e,n,u)}),o.each(t.outEdges(r.v),function(r){var i=t.edge(r),a=r.w,o=t.node(a);o["in"]-=i,s(e,n,o)}),t.removeNode(r.v),a}function a(t,e){var n=new u,r=0,i=0;o.each(t.nodes(),function(t){n.setNode(t,{v:t,"in":0,out:0})}),o.each(t.edges(),function(t){var a=n.edge(t.v,t.w)||0,s=e(t),o=a+s;n.setEdge(t.v,t.w,o),i=Math.max(i,n.node(t.v).out+=s),r=Math.max(r,n.node(t.w)["in"]+=s)});var a=o.range(i+r+3).map(function(){return new c}),l=r+1;return o.each(n.nodes(),function(t){s(a,l,n.node(t))}),{graph:n,buckets:a,zeroIdx:l}}function s(t,e,n){n.out?n["in"]?t[n.out-n["in"]+e].enqueue(n):t[t.length-1].enqueue(n):t[0].enqueue(n)}var o=t("./lodash"),u=t("./graphlib").Graph,c=t("./data/list");e.exports=n;var l=o.constant(1)},{"./data/list":36,"./graphlib":38,"./lodash":41}],40:[function(t,e){"use strict";function n(t,e){var n=e&&e.debugTiming?I.time:I.notime;n("layout",function(){var e=n(" buildLayoutGraph",function(){return a(t)});n(" runLayout",function(){r(e,n)}),n(" updateInputGraph",function(){i(t,e)})})}function r(t,e){e(" makeSpaceForEdgeLabels",function(){s(t)}),e(" removeSelfEdges",function(){g(t)}),e(" acyclic",function(){w.run(t)}),e(" nestingGraph.run",function(){T.run(t)}),e(" rank",function(){k(I.asNonCompoundGraph(t))}),e(" injectEdgeLabelProxies",function(){o(t)}),e(" removeEmptyRanks",function(){D(t)}),e(" nestingGraph.cleanup",function(){T.cleanup(t)}),e(" normalizeRanks",function(){A(t)}),e(" assignRankMinMax",function(){u(t)}),e(" removeEdgeLabelProxies",function(){c(t)}),e(" normalize.run",function(){x.run(t)}),e(" parentDummyChains",function(){E(t)}),e(" addBorderSegments",function(){S(t)}),e(" order",function(){F(t)}),e(" insertSelfEdges",function(){y(t)}),e(" adjustCoordinateSystem",function(){C.adjust(t)}),e(" position",function(){O(t)}),e(" positionSelfEdges",function(){m(t)}),e(" removeBorderNodes",function(){p(t)}),e(" normalize.undo",function(){x.undo(t)}),e(" fixupEdgeLabelCoords",function(){d(t)}),e(" undoCoordinateSystem",function(){C.undo(t)}),e(" translateGraph",function(){l(t)}),e(" assignNodeIntersects",function(){h(t)}),e(" reversePoints",function(){f(t)}),e(" acyclic.undo",function(){w.undo(t)})}function i(t,e){b.each(t.nodes(),function(n){var r=t.node(n),i=e.node(n);r&&(r.x=i.x,r.y=i.y,e.children(n).length&&(r.width=i.width,r.height=i.height))}),b.each(t.edges(),function(n){var r=t.edge(n),i=e.edge(n);r.points=i.points,b.has(i,"x")&&(r.x=i.x,r.y=i.y)}),t.graph().width=e.graph().width,t.graph().height=e.graph().height}function a(t){var e=new M({multigraph:!0,compound:!0}),n=_(t.graph());return e.setGraph(b.merge({},L,v(n,B),b.pick(n,P))),b.each(t.nodes(),function(n){var r=_(t.node(n));e.setNode(n,b.defaults(v(r,N),R)),e.setParent(n,t.parent(n))}),b.each(t.edges(),function(n){var r=_(t.edge(n));e.setEdge(n,b.merge({},Y,v(r,j),b.pick(r,$)))}),e}function s(t){var e=t.graph();e.ranksep/=2,b.each(t.edges(),function(n){var r=t.edge(n);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===e.rankdir||"BT"===e.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function o(t){b.each(t.edges(),function(e){var n=t.edge(e);if(n.width&&n.height){var r=t.node(e.v),i=t.node(e.w),a={rank:(i.rank-r.rank)/2+r.rank,e:e};I.addDummyNode(t,"edge-proxy",a,"_ep")}})}function u(t){var e=0;b.each(t.nodes(),function(n){var r=t.node(n);r.borderTop&&(r.minRank=t.node(r.borderTop).rank,r.maxRank=t.node(r.borderBottom).rank,e=b.max(e,r.maxRank))}),t.graph().maxRank=e}function c(t){b.each(t.nodes(),function(e){var n=t.node(e);"edge-proxy"===n.dummy&&(t.edge(n.e).labelRank=n.rank,t.removeNode(e))})}function l(t){function e(t){var e=t.x,s=t.y,o=t.width,u=t.height;n=Math.min(n,e-o/2),r=Math.max(r,e+o/2),i=Math.min(i,s-u/2),a=Math.max(a,s+u/2)}var n=Number.POSITIVE_INFINITY,r=0,i=Number.POSITIVE_INFINITY,a=0,s=t.graph(),o=s.marginx||0,u=s.marginy||0;b.each(t.nodes(),function(n){e(t.node(n))}),b.each(t.edges(),function(n){var r=t.edge(n);b.has(r,"x")&&e(r)}),n-=o,i-=u,b.each(t.nodes(),function(e){var r=t.node(e);r.x-=n,r.y-=i}),b.each(t.edges(),function(e){var r=t.edge(e);b.each(r.points,function(t){t.x-=n,t.y-=i}),b.has(r,"x")&&(r.x-=n),b.has(r,"y")&&(r.y-=i)}),s.width=r-n+o,s.height=a-i+u}function h(t){b.each(t.edges(),function(e){var n,r,i=t.edge(e),a=t.node(e.v),s=t.node(e.w);i.points?(n=i.points[0],r=i.points[i.points.length-1]):(i.points=[],n=s,r=a),i.points.unshift(I.intersectRect(a,n)),i.points.push(I.intersectRect(s,r))})}function d(t){b.each(t.edges(),function(e){var n=t.edge(e);if(b.has(n,"x"))switch(("l"===n.labelpos||"r"===n.labelpos)&&(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset}})}function f(t){b.each(t.edges(),function(e){var n=t.edge(e);n.reversed&&n.points.reverse()})}function p(t){b.each(t.nodes(),function(e){if(t.children(e).length){var n=t.node(e),r=t.node(n.borderTop),i=t.node(n.borderBottom),a=t.node(b.last(n.borderLeft)),s=t.node(b.last(n.borderRight));n.width=Math.abs(s.x-a.x),n.height=Math.abs(i.y-r.y),n.x=a.x+n.width/2,n.y=r.y+n.height/2}}),b.each(t.nodes(),function(e){"border"===t.node(e).dummy&&t.removeNode(e)})}function g(t){b.each(t.edges(),function(e){if(e.v===e.w){var n=t.node(e.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:e,label:t.edge(e)}),t.removeEdge(e)}})}function y(t){var e=I.buildLayerMatrix(t);b.each(e,function(e){var n=0;b.each(e,function(e,r){var i=t.node(e);i.order=r+n,b.each(i.selfEdges,function(e){I.addDummyNode(t,"selfedge",{width:e.label.width,height:e.label.height,rank:i.rank,order:r+ ++n,e:e.e,label:e.label},"_se")}),delete i.selfEdges})})}function m(t){b.each(t.nodes(),function(e){var n=t.node(e);if("selfedge"===n.dummy){var r=t.node(n.e.v),i=r.x+r.width/2,a=r.y,s=n.x-i,o=r.height/2;t.setEdge(n.e,n.label),t.removeNode(e),n.label.points=[{x:i+2*s/3,y:a-o},{x:i+5*s/6,y:a-o},{x:i+s,y:a},{x:i+5*s/6,y:a+o},{x:i+2*s/3,y:a+o}],n.label.x=n.x,n.label.y=n.y}})}function v(t,e){return b.mapValues(b.pick(t,e),Number)}function _(t){var e={};return b.each(t,function(t,n){e[n.toLowerCase()]=t}),e}var b=t("./lodash"),w=t("./acyclic"),x=t("./normalize"),k=t("./rank"),A=t("./util").normalizeRanks,E=t("./parent-dummy-chains"),D=t("./util").removeEmptyRanks,T=t("./nesting-graph"),S=t("./add-border-segments"),C=t("./coordinate-system"),F=t("./order"),O=t("./position"),I=t("./util"),M=t("./graphlib").Graph;e.exports=n;var B=["nodesep","edgesep","ranksep","marginx","marginy"],L={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},P=["acyclicer","ranker","rankdir","align"],N=["width","height"],R={width:0,height:0},j=["minlen","weight","width","height","labeloffset"],Y={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},$=["labelpos"]},{"./acyclic":33,"./add-border-segments":34,"./coordinate-system":35,"./graphlib":38,"./lodash":41,"./nesting-graph":42,"./normalize":43,"./order":48,"./parent-dummy-chains":53,"./position":55,"./rank":57,"./util":60}],41:[function(t,e){var n;if("function"==typeof t)try{n=t("lodash")}catch(r){}n||(n=window._),e.exports=n},{lodash:82}],42:[function(t,e){function n(t){var e=u.addDummyNode(t,"root",{},"_root"),n=i(t),s=o.max(n)-1,c=2*s+1;t.graph().nestingRoot=e,o.each(t.edges(),function(e){t.edge(e).minlen*=c});var l=a(t)+1;o.each(t.children(),function(i){r(t,e,c,l,s,n,i)}),t.graph().nodeRankFactor=c}function r(t,e,n,i,a,s,c){var l=t.children(c);if(!l.length)return void(c!==e&&t.setEdge(e,c,{weight:0,minlen:n}));var h=u.addBorderNode(t,"_bt"),d=u.addBorderNode(t,"_bb"),f=t.node(c);t.setParent(h,c),f.borderTop=h,t.setParent(d,c),f.borderBottom=d,o.each(l,function(o){r(t,e,n,i,a,s,o);var u=t.node(o),l=u.borderTop?u.borderTop:o,f=u.borderBottom?u.borderBottom:o,p=u.borderTop?i:2*i,g=l!==f?1:a-s[c]+1;t.setEdge(h,l,{weight:p,minlen:g,nestingEdge:!0}),t.setEdge(f,d,{weight:p,minlen:g,nestingEdge:!0})}),t.parent(c)||t.setEdge(e,h,{weight:0,minlen:a+s[c]})}function i(t){function e(r,i){var a=t.children(r);a&&a.length&&o.each(a,function(t){e(t,i+1)}),n[r]=i}var n={};return o.each(t.children(),function(t){e(t,1)}),n}function a(t){return o.reduce(t.edges(),function(e,n){return e+t.edge(n).weight},0)}function s(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,o.each(t.edges(),function(e){var n=t.edge(e);n.nestingEdge&&t.removeEdge(e)})}var o=t("./lodash"),u=t("./util");e.exports={run:n,cleanup:s}},{"./lodash":41,"./util":60}],43:[function(t,e){"use strict";function n(t){t.graph().dummyChains=[],a.each(t.edges(),function(e){
r(t,e)})}function r(t,e){var n=e.v,r=t.node(n).rank,i=e.w,a=t.node(i).rank,o=e.name,u=t.edge(e),c=u.labelRank;if(a!==r+1){t.removeEdge(e);var l,h,d;for(d=0,++r;a>r;++d,++r)u.points=[],h={width:0,height:0,edgeLabel:u,edgeObj:e,rank:r},l=s.addDummyNode(t,"edge",h,"_d"),r===c&&(h.width=u.width,h.height=u.height,h.dummy="edge-label",h.labelpos=u.labelpos),t.setEdge(n,l,{weight:u.weight},o),0===d&&t.graph().dummyChains.push(l),n=l;t.setEdge(n,i,{weight:u.weight},o)}}function i(t){a.each(t.graph().dummyChains,function(e){var n,r=t.node(e),i=r.edgeLabel;for(t.setEdge(r.edgeObj,i);r.dummy;)n=t.successors(e)[0],t.removeNode(e),i.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(i.x=r.x,i.y=r.y,i.width=r.width,i.height=r.height),e=n,r=t.node(e)})}var a=t("./lodash"),s=t("./util");e.exports={run:n,undo:i}},{"./lodash":41,"./util":60}],44:[function(t,e){function n(t,e,n){var i,a={};r.each(n,function(n){for(var r,s,o=t.parent(n);o;){if(r=t.parent(o),r?(s=a[r],a[r]=o):(s=i,i=o),s&&s!==o)return void e.setEdge(s,o);o=r}})}var r=t("../lodash");e.exports=n},{"../lodash":41}],45:[function(t,e){function n(t,e){return r.map(e,function(e){var n=t.inEdges(e);if(n.length){var i=r.reduce(n,function(e,n){var r=t.edge(n),i=t.node(n.v);return{sum:e.sum+r.weight*i.order,weight:e.weight+r.weight}},{sum:0,weight:0});return{v:e,barycenter:i.sum/i.weight,weight:i.weight}}return{v:e}})}var r=t("../lodash");e.exports=n},{"../lodash":41}],46:[function(t,e){function n(t,e,n){var s=r(t),o=new a({compound:!0}).setGraph({root:s}).setDefaultNodeLabel(function(e){return t.node(e)});return i.each(t.nodes(),function(r){var a=t.node(r),u=t.parent(r);(a.rank===e||a.minRank<=e&&e<=a.maxRank)&&(o.setNode(r),o.setParent(r,u||s),i.each(t[n](r),function(e){var n=e.v===r?e.w:e.v,a=o.edge(n,r),s=i.isUndefined(a)?0:a.weight;o.setEdge(n,r,{weight:t.edge(e).weight+s})}),i.has(a,"minRank")&&o.setNode(r,{borderLeft:a.borderLeft[e],borderRight:a.borderRight[e]}))}),o}function r(t){for(var e;t.hasNode(e=i.uniqueId("_root")););return e}var i=t("../lodash"),a=t("../graphlib").Graph;e.exports=n},{"../graphlib":38,"../lodash":41}],47:[function(t,e){"use strict";function n(t,e){for(var n=0,i=1;i<e.length;++i)n+=r(t,e[i-1],e[i]);return n}function r(t,e,n){for(var r=i.zipObject(n,i.map(n,function(t,e){return e})),a=i.flatten(i.map(e,function(e){return i.chain(t.outEdges(e)).map(function(e){return{pos:r[e.w],weight:t.edge(e).weight}}).sortBy("pos").value()}),!0),s=1;s<n.length;)s<<=1;var o=2*s-1;s-=1;var u=i.map(new Array(o),function(){return 0}),c=0;return i.each(a.forEach(function(t){var e=t.pos+s;u[e]+=t.weight;for(var n=0;e>0;)e%2&&(n+=u[e+1]),e=e-1>>1,u[e]+=t.weight;c+=t.weight*n})),c}var i=t("../lodash");e.exports=n},{"../lodash":41}],48:[function(t,e){"use strict";function n(t){var e=f.maxRank(t),n=r(t,s.range(1,e+1),"inEdges"),c=r(t,s.range(e-1,-1,-1),"outEdges"),l=o(t);a(t,l);for(var h,d=Number.POSITIVE_INFINITY,p=0,g=0;4>g;++p,++g){i(p%2?n:c,p%4>=2),l=f.buildLayerMatrix(t);var y=u(t,l);d>y&&(g=0,h=s.cloneDeep(l),d=y)}a(t,h)}function r(t,e,n){return s.map(e,function(e){return l(t,e,n)})}function i(t,e){var n=new d;s.each(t,function(t){var r=t.graph().root,i=c(t,r,n,e);s.each(i.vs,function(e,n){t.node(e).order=n}),h(t,n,i.vs)})}function a(t,e){s.each(e,function(e){s.each(e,function(e,n){t.node(e).order=n})})}var s=t("../lodash"),o=t("./init-order"),u=t("./cross-count"),c=t("./sort-subgraph"),l=t("./build-layer-graph"),h=t("./add-subgraph-constraints"),d=t("../graphlib").Graph,f=t("../util");e.exports=n},{"../graphlib":38,"../lodash":41,"../util":60,"./add-subgraph-constraints":44,"./build-layer-graph":46,"./cross-count":47,"./init-order":49,"./sort-subgraph":51}],49:[function(t,e){"use strict";function n(t){function e(i){if(!r.has(n,i)){n[i]=!0;var a=t.node(i);s[a.rank].push(i),r.each(t.successors(i),e)}}var n={},i=r.filter(t.nodes(),function(e){return!t.children(e).length}),a=r.max(r.map(i,function(e){return t.node(e).rank})),s=r.map(r.range(a+1),function(){return[]}),o=r.sortBy(i,function(e){return t.node(e).rank});return r.each(o,e),s}var r=t("../lodash");e.exports=n},{"../lodash":41}],50:[function(t,e){"use strict";function n(t,e){var n={};a.each(t,function(t,e){var r=n[t.v]={indegree:0,"in":[],out:[],vs:[t.v],i:e};a.isUndefined(t.barycenter)||(r.barycenter=t.barycenter,r.weight=t.weight)}),a.each(e.edges(),function(t){var e=n[t.v],r=n[t.w];a.isUndefined(e)||a.isUndefined(r)||(r.indegree++,e.out.push(n[t.w]))});var i=a.filter(n,function(t){return!t.indegree});return r(i)}function r(t){function e(t){return function(e){e.merged||(a.isUndefined(e.barycenter)||a.isUndefined(t.barycenter)||e.barycenter>=t.barycenter)&&i(t,e)}}function n(e){return function(n){n["in"].push(e),0===--n.indegree&&t.push(n)}}for(var r=[];t.length;){var s=t.pop();r.push(s),a.each(s["in"].reverse(),e(s)),a.each(s.out,n(s))}return a.chain(r).filter(function(t){return!t.merged}).map(function(t){return a.pick(t,["vs","i","barycenter","weight"])}).value()}function i(t,e){var n=0,r=0;t.weight&&(n+=t.barycenter*t.weight,r+=t.weight),e.weight&&(n+=e.barycenter*e.weight,r+=e.weight),t.vs=e.vs.concat(t.vs),t.barycenter=n/r,t.weight=r,t.i=Math.min(e.i,t.i),e.merged=!0}var a=t("../lodash");e.exports=n},{"../lodash":41}],51:[function(t,e){function n(t,e,c,l){var h=t.children(e),d=t.node(e),f=d?d.borderLeft:void 0,p=d?d.borderRight:void 0,g={};f&&(h=a.filter(h,function(t){return t!==f&&t!==p}));var y=s(t,h);a.each(y,function(e){if(t.children(e.v).length){var r=n(t,e.v,c,l);g[e.v]=r,a.has(r,"barycenter")&&i(e,r)}});var m=o(y,c);r(m,g);var v=u(m,l);if(f&&(v.vs=a.flatten([f,v.vs,p],!0),t.predecessors(f).length)){var _=t.node(t.predecessors(f)[0]),b=t.node(t.predecessors(p)[0]);a.has(v,"barycenter")||(v.barycenter=0,v.weight=0),v.barycenter=(v.barycenter*v.weight+_.order+b.order)/(v.weight+2),v.weight+=2}return v}function r(t,e){a.each(t,function(t){t.vs=a.flatten(t.vs.map(function(t){return e[t]?e[t].vs:t}),!0)})}function i(t,e){a.isUndefined(t.barycenter)?(t.barycenter=e.barycenter,t.weight=e.weight):(t.barycenter=(t.barycenter*t.weight+e.barycenter*e.weight)/(t.weight+e.weight),t.weight+=e.weight)}var a=t("../lodash"),s=t("./barycenter"),o=t("./resolve-conflicts"),u=t("./sort");e.exports=n},{"../lodash":41,"./barycenter":45,"./resolve-conflicts":50,"./sort":52}],52:[function(t,e){function n(t,e){var n=s.partition(t,function(t){return a.has(t,"barycenter")}),o=n.lhs,u=a.sortBy(n.rhs,function(t){return-t.i}),c=[],l=0,h=0,d=0;o.sort(i(!!e)),d=r(c,u,d),a.each(o,function(t){d+=t.vs.length,c.push(t.vs),l+=t.barycenter*t.weight,h+=t.weight,d=r(c,u,d)});var f={vs:a.flatten(c,!0)};return h&&(f.barycenter=l/h,f.weight=h),f}function r(t,e,n){for(var r;e.length&&(r=a.last(e)).i<=n;)e.pop(),t.push(r.vs),n++;return n}function i(t){return function(e,n){return e.barycenter<n.barycenter?-1:e.barycenter>n.barycenter?1:t?n.i-e.i:e.i-n.i}}var a=t("../lodash"),s=t("../util");e.exports=n},{"../lodash":41,"../util":60}],53:[function(t,e){function n(t){var e=i(t);a.each(t.graph().dummyChains,function(n){for(var i=t.node(n),a=i.edgeObj,s=r(t,e,a.v,a.w),o=s.path,u=s.lca,c=0,l=o[c],h=!0;n!==a.w;){if(i=t.node(n),h){for(;(l=o[c])!==u&&t.node(l).maxRank<i.rank;)c++;l===u&&(h=!1)}if(!h){for(;c<o.length-1&&t.node(l=o[c+1]).minRank<=i.rank;)c++;l=o[c]}t.setParent(n,l),n=t.successors(n)[0]}})}function r(t,e,n,r){var i,a,s=[],o=[],u=Math.min(e[n].low,e[r].low),c=Math.max(e[n].lim,e[r].lim);i=n;do i=t.parent(i),s.push(i);while(i&&(e[i].low>u||c>e[i].lim));for(a=i,i=r;(i=t.parent(i))!==a;)o.push(i);return{path:s.concat(o.reverse()),lca:a}}function i(t){function e(i){var s=r;a.each(t.children(i),e),n[i]={low:s,lim:r++}}var n={},r=0;return a.each(t.children(),e),n}var a=t("./lodash");e.exports=n},{"./lodash":41}],54:[function(t,e){"use strict";function n(t,e){function n(e,n){var s=0,o=0,u=e.length,c=y.last(n);return y.each(n,function(e,l){var h=i(t,e),d=h?t.node(h).order:u;(h||e===c)&&(y.each(n.slice(o,l+1),function(e){y.each(t.predecessors(e),function(n){var i=t.node(n),o=i.order;!(s>o||o>d)||i.dummy&&t.node(e).dummy||a(r,n,e)})}),o=l+1,s=d)}),n}var r={};return y.reduce(e,n),r}function r(t,e){function n(e,n,r,s,o){var u;y.each(y.range(n,r),function(n){u=e[n],t.node(u).dummy&&y.each(t.predecessors(u),function(e){var n=t.node(e);n.dummy&&(n.order<s||n.order>o)&&a(i,e,u)})})}function r(e,r){var i,a=-1,s=0;return y.each(r,function(o,u){if("border"===t.node(o).dummy){var c=t.predecessors(o);c.length&&(i=t.node(c[0]).order,n(r,s,u,a,i),s=u,a=i)}n(r,s,r.length,i,e.length)}),r}var i={};return y.reduce(e,r),i}function i(t,e){return t.node(e).dummy?y.find(t.predecessors(e),function(e){return t.node(e).dummy}):void 0}function a(t,e,n){if(e>n){var r=e;e=n,n=r}var i=t[e];i||(t[e]=i={}),i[n]=!0}function s(t,e,n){if(e>n){var r=e;e=n,n=r}return y.has(t[e],n)}function o(t,e,n,r){var i={},a={},o={};return y.each(e,function(t){y.each(t,function(t,e){i[t]=t,a[t]=t,o[t]=e})}),y.each(e,function(t){var e=-1;y.each(t,function(t){var u=r(t);if(u.length){u=y.sortBy(u,function(t){return o[t]});for(var c=(u.length-1)/2,l=Math.floor(c),h=Math.ceil(c);h>=l;++l){var d=u[l];a[t]===t&&e<o[d]&&!s(n,t,d)&&(a[d]=t,a[t]=i[t]=i[d],e=o[d])}}})}),{root:i,align:a}}function u(t,e,n,r,i){function a(t){y.has(l,t)||(l[t]=!0,o[t]=y.reduce(u.inEdges(t),function(t,e){return a(e.v),Math.max(t,o[e.v]+u.edge(e))},0))}function s(e){if(2!==l[e]){l[e]++;var n=t.node(e),r=y.reduce(u.outEdges(e),function(t,e){return s(e.w),Math.min(t,o[e.w]-u.edge(e))},Number.POSITIVE_INFINITY);r!==Number.POSITIVE_INFINITY&&n.borderType!==h&&(o[e]=Math.max(o[e],r))}}var o={},u=c(t,e,n,i),l={};y.each(u.nodes(),a);var h=i?"borderLeft":"borderRight";return y.each(u.nodes(),s),y.each(r,function(t){o[t]=o[n[t]]}),o}function c(t,e,n,r){var i=new m,a=t.graph(),s=p(a.nodesep,a.edgesep,r);return y.each(e,function(e){var r;y.each(e,function(e){var a=n[e];if(i.setNode(a),r){var o=n[r],u=i.edge(o,a);i.setEdge(o,a,Math.max(s(t,e,r),u||0))}r=e})}),i}function l(t,e){return y.min(e,function(e){var n=y.min(e,function(e,n){return e-g(t,n)/2}),r=y.max(e,function(e,n){return e+g(t,n)/2});return r-n})}function h(t,e){var n=y.min(e),r=y.max(e);y.each(["u","d"],function(i){y.each(["l","r"],function(a){var s,o=i+a,u=t[o];u!==e&&(s="l"===a?n-y.min(u):r-y.max(u),s&&(t[o]=y.mapValues(u,function(t){return t+s})))})})}function d(t,e){return y.mapValues(t.ul,function(n,r){if(e)return t[e.toLowerCase()][r];var i=y.sortBy(y.pluck(t,r));return(i[1]+i[2])/2})}function f(t){var e,i=v.buildLayerMatrix(t),a=y.merge(n(t,i),r(t,i)),s={};y.each(["u","d"],function(n){e="u"===n?i:y.values(i).reverse(),y.each(["l","r"],function(r){"r"===r&&(e=y.map(e,function(t){return y.values(t).reverse()}));var i=y.bind("u"===n?t.predecessors:t.successors,t),c=o(t,e,a,i),l=u(t,e,c.root,c.align,"r"===r);"r"===r&&(l=y.mapValues(l,function(t){return-t})),s[n+r]=l})});var c=l(t,s);return h(s,c),d(s,t.graph().align)}function p(t,e,n){return function(r,i,a){var s,o=r.node(i),u=r.node(a),c=0;if(c+=o.width/2,y.has(o,"labelpos"))switch(o.labelpos.toLowerCase()){case"l":s=-o.width/2;break;case"r":s=o.width/2}if(s&&(c+=n?s:-s),s=0,c+=(o.dummy?e:t)/2,c+=(u.dummy?e:t)/2,c+=u.width/2,y.has(u,"labelpos"))switch(u.labelpos.toLowerCase()){case"l":s=u.width/2;break;case"r":s=-u.width/2}return s&&(c+=n?s:-s),s=0,c}}function g(t,e){return t.node(e).width}var y=t("../lodash"),m=t("../graphlib").Graph,v=t("../util");e.exports={positionX:f,findType1Conflicts:n,findType2Conflicts:r,addConflict:a,hasConflict:s,verticalAlignment:o,horizontalCompaction:u,alignCoordinates:h,findSmallestWidthAlignment:l,balance:d}},{"../graphlib":38,"../lodash":41,"../util":60}],55:[function(t,e){"use strict";function n(t){t=a.asNonCompoundGraph(t),r(t),i.each(s(t),function(e,n){t.node(n).x=e})}function r(t){var e=a.buildLayerMatrix(t),n=t.graph().ranksep,r=0;i.each(e,function(e){var a=i.max(i.map(e,function(e){return t.node(e).height}));i.each(e,function(e){t.node(e).y=r+a/2}),r+=a+n})}var i=t("../lodash"),a=t("../util"),s=t("./bk").positionX;e.exports=n},{"../lodash":41,"../util":60,"./bk":54}],56:[function(t,e){"use strict";function n(t){var e=new o({directed:!1}),n=t.nodes()[0],s=t.nodeCount();e.setNode(n,{});for(var c,l;r(e,t)<s;)c=i(e,t),l=e.hasNode(c.v)?u(t,c):-u(t,c),a(e,t,l);return e}function r(t,e){function n(r){s.each(e.nodeEdges(r),function(i){var a=i.v,s=r===a?i.w:a;t.hasNode(s)||u(e,i)||(t.setNode(s,{}),t.setEdge(r,s,{}),n(s))})}return s.each(t.nodes(),n),t.nodeCount()}function i(t,e){return s.min(e.edges(),function(n){return t.hasNode(n.v)!==t.hasNode(n.w)?u(e,n):void 0})}function a(t,e,n){s.each(t.nodes(),function(t){e.node(t).rank+=n})}var s=t("../lodash"),o=t("../graphlib").Graph,u=t("./util").slack;e.exports=n},{"../graphlib":38,"../lodash":41,"./util":59}],57:[function(t,e){"use strict";function n(t){switch(t.graph().ranker){case"network-simplex":i(t);break;case"tight-tree":r(t);break;case"longest-path":c(t);break;default:i(t)}}function r(t){s(t),o(t)}function i(t){u(t)}var a=t("./util"),s=a.longestPath,o=t("./feasible-tree"),u=t("./network-simplex");e.exports=n;var c=s},{"./feasible-tree":56,"./network-simplex":58,"./util":59}],58:[function(t,e){"use strict";function n(t){t=b(t),m(t);var e=g(t);s(e),r(e,t);for(var n,i;n=u(e);)i=c(e,t,n),l(e,t,n,i)}function r(t,e){var n=_(t,t.nodes());n=n.slice(0,n.length-1),p.each(n,function(n){i(t,e,n)})}function i(t,e,n){var r=t.node(n),i=r.parent;t.edge(n,i).cutvalue=a(t,e,n)}function a(t,e,n){var r=t.node(n),i=r.parent,a=!0,s=e.edge(n,i),o=0;return s||(a=!1,s=e.edge(i,n)),o=s.weight,p.each(e.nodeEdges(n),function(r){var s=r.v===n,u=s?r.w:r.v;if(u!==i){var c=s===a,l=e.edge(r).weight;if(o+=c?l:-l,d(t,n,u)){var h=t.edge(n,u).cutvalue;o+=c?-h:h}}}),o}function s(t,e){arguments.length<2&&(e=t.nodes()[0]),o(t,{},1,e)}function o(t,e,n,r,i){var a=n,s=t.node(r);return e[r]=!0,p.each(t.neighbors(r),function(i){p.has(e,i)||(n=o(t,e,n,i,r))}),s.low=a,s.lim=n++,i?s.parent=i:delete s.parent,n}function u(t){return p.find(t.edges(),function(e){return t.edge(e).cutvalue<0})}function c(t,e,n){var r=n.v,i=n.w;e.hasEdge(r,i)||(r=n.w,i=n.v);var a=t.node(r),s=t.node(i),o=a,u=!1;a.lim>s.lim&&(o=s,u=!0);var c=p.filter(e.edges(),function(e){return u===f(t,t.node(e.v),o)&&u!==f(t,t.node(e.w),o)});return p.min(c,function(t){return y(e,t)})}function l(t,e,n,i){var a=n.v,o=n.w;t.removeEdge(a,o),t.setEdge(i.v,i.w,{}),s(t),r(t,e),h(t,e)}function h(t,e){var n=p.find(t.nodes(),function(t){return!e.node(t).parent}),r=v(t,n);r=r.slice(1),p.each(r,function(n){var r=t.node(n).parent,i=e.edge(n,r),a=!1;i||(i=e.edge(r,n),a=!0),e.node(n).rank=e.node(r).rank+(a?i.minlen:-i.minlen)})}function d(t,e,n){return t.hasEdge(e,n)}function f(t,e,n){return n.low<=e.lim&&e.lim<=n.lim}var p=t("../lodash"),g=t("./feasible-tree"),y=t("./util").slack,m=t("./util").longestPath,v=t("../graphlib").alg.preorder,_=t("../graphlib").alg.postorder,b=t("../util").simplify;e.exports=n,n.initLowLimValues=s,n.initCutValues=r,n.calcCutValue=a,n.leaveEdge=u,n.enterEdge=c,n.exchangeEdges=l},{"../graphlib":38,"../lodash":41,"../util":60,"./feasible-tree":56,"./util":59}],59:[function(t,e){"use strict";function n(t){function e(r){var a=t.node(r);if(i.has(n,r))return a.rank;n[r]=!0;var s=i.min(i.map(t.outEdges(r),function(n){return e(n.w)-t.edge(n).minlen}));return s===Number.POSITIVE_INFINITY&&(s=0),a.rank=s}var n={};i.each(t.sources(),e)}function r(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}var i=t("../lodash");e.exports={longestPath:n,slack:r}},{"../lodash":41}],60:[function(t,e){"use strict";function n(t,e,n,r){var i;do i=y.uniqueId(r);while(t.hasNode(i));return n.dummy=e,t.setNode(i,n),i}function r(t){var e=(new m).setGraph(t.graph());return y.each(t.nodes(),function(n){e.setNode(n,t.node(n))}),y.each(t.edges(),function(n){var r=e.edge(n.v,n.w)||{weight:0,minlen:1},i=t.edge(n);e.setEdge(n.v,n.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),e}function i(t){var e=new m({multigraph:t.isMultigraph()}).setGraph(t.graph());return y.each(t.nodes(),function(n){t.children(n).length||e.setNode(n,t.node(n))}),y.each(t.edges(),function(n){e.setEdge(n,t.edge(n))}),e}function a(t){var e=y.map(t.nodes(),function(e){var n={};return y.each(t.outEdges(e),function(e){n[e.w]=(n[e.w]||0)+t.edge(e).weight}),n});return y.zipObject(t.nodes(),e)}function s(t){var e=y.map(t.nodes(),function(e){var n={};return y.each(t.inEdges(e),function(e){n[e.v]=(n[e.v]||0)+t.edge(e).weight}),n});return y.zipObject(t.nodes(),e)}function o(t,e){var n=t.x,r=t.y,i=e.x-n,a=e.y-r,s=t.width/2,o=t.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var u,c;return Math.abs(a)*s>Math.abs(i)*o?(0>a&&(o=-o),u=o*i/a,c=o):(0>i&&(s=-s),u=s,c=s*a/i),{x:n+u,y:r+c}}function u(t){var e=y.map(y.range(d(t)+1),function(){return[]});return y.each(t.nodes(),function(n){var r=t.node(n),i=r.rank;y.isUndefined(i)||(e[i][r.order]=n)}),e}function c(t){var e=y.min(y.map(t.nodes(),function(e){return t.node(e).rank}));y.each(t.nodes(),function(n){var r=t.node(n);y.has(r,"rank")&&(r.rank-=e)})}function l(t){var e=y.min(y.map(t.nodes(),function(e){return t.node(e).rank})),n=[];y.each(t.nodes(),function(r){var i=t.node(r).rank-e;n[i]||(n[i]=[]),n[i].push(r)});var r=0,i=t.graph().nodeRankFactor;y.each(n,function(e,n){y.isUndefined(e)&&n%i!==0?--r:r&&y.each(e,function(e){t.node(e).rank+=r})})}function h(t,e,r,i){var a={width:0,height:0};return arguments.length>=4&&(a.rank=r,a.order=i),n(t,"border",a,e)}function d(t){return y.max(y.map(t.nodes(),function(e){var n=t.node(e).rank;return y.isUndefined(n)?void 0:n}))}function f(t,e){var n={lhs:[],rhs:[]};return y.each(t,function(t){e(t)?n.lhs.push(t):n.rhs.push(t)}),n}function p(t,e){var n=y.now();try{return e()}finally{console.log(t+" time: "+(y.now()-n)+"ms")}}function g(t,e){return e()}var y=t("./lodash"),m=t("./graphlib").Graph;e.exports={addDummyNode:n,simplify:r,asNonCompoundGraph:i,successorWeights:a,predecessorWeights:s,intersectRect:o,buildLayerMatrix:u,normalizeRanks:c,removeEmptyRanks:l,addBorderNode:h,maxRank:d,partition:f,time:p,notime:g}},{"./graphlib":38,"./lodash":41}],61:[function(t,e){e.exports="0.7.4"},{}],62:[function(t,e){var n=t("./lib");e.exports={Graph:n.Graph,json:t("./lib/json"),alg:t("./lib/alg"),version:n.version}},{"./lib":78,"./lib/alg":69,"./lib/json":79}],63:[function(t,e){function n(t){function e(a){r.has(i,a)||(i[a]=!0,n.push(a),r.each(t.successors(a),e),r.each(t.predecessors(a),e))}var n,i={},a=[];return r.each(t.nodes(),function(t){n=[],e(t),n.length&&a.push(n)}),a}var r=t("../lodash");e.exports=n},{"../lodash":80}],64:[function(t,e){function n(t,e,n){i.isArray(e)||(e=[e]);var a=[],s={};return i.each(e,function(e){if(!t.hasNode(e))throw new Error("Graph does not have node: "+e);r(t,e,"post"===n,s,a)}),a}function r(t,e,n,a,s){i.has(a,e)||(a[e]=!0,n||s.push(e),i.each(t.neighbors(e),function(e){r(t,e,n,a,s)}),n&&s.push(e))}var i=t("../lodash");e.exports=n},{"../lodash":80}],65:[function(t,e){function n(t,e,n){return i.transform(t.nodes(),function(i,a){i[a]=r(t,a,e,n)},{})}var r=t("./dijkstra"),i=t("../lodash");e.exports=n},{"../lodash":80,"./dijkstra":66}],66:[function(t,e){function n(t,e,n,i){return r(t,String(e),n||s,i||function(e){return t.outEdges(e)})}function r(t,e,n,r){var i,s,o={},u=new a,c=function(t){var e=t.v!==i?t.v:t.w,r=o[e],a=n(t),c=s.distance+a;if(0>a)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+t+" Weight: "+a);c<r.distance&&(r.distance=c,r.predecessor=i,u.decrease(e,c))};for(t.nodes().forEach(function(t){var n=t===e?0:Number.POSITIVE_INFINITY;o[t]={distance:n},u.add(t,n)});u.size()>0&&(i=u.removeMin(),s=o[i],s.distance!==Number.POSITIVE_INFINITY);)r(i).forEach(c);return o}var i=t("../lodash"),a=t("../data/priority-queue");e.exports=n;var s=i.constant(1)},{"../data/priority-queue":76,"../lodash":80}],67:[function(t,e){function n(t){return r.filter(i(t),function(e){return e.length>1||1===e.length&&t.hasEdge(e[0],e[0])})}var r=t("../lodash"),i=t("./tarjan");e.exports=n},{"../lodash":80,"./tarjan":74}],68:[function(t,e){function n(t,e,n){return r(t,e||a,n||function(e){return t.outEdges(e)})}function r(t,e,n){var r={},i=t.nodes();return i.forEach(function(t){r[t]={},r[t][t]={distance:0},i.forEach(function(e){t!==e&&(r[t][e]={distance:Number.POSITIVE_INFINITY})}),n(t).forEach(function(n){var i=n.v===t?n.w:n.v,a=e(n);r[t][i]={distance:a,predecessor:t}})}),i.forEach(function(t){var e=r[t];i.forEach(function(n){var a=r[n];i.forEach(function(n){var r=a[t],i=e[n],s=a[n],o=r.distance+i.distance;o<s.distance&&(s.distance=o,s.predecessor=i.predecessor)})})}),r}var i=t("../lodash");e.exports=n;var a=i.constant(1)},{"../lodash":80}],69:[function(t,e){e.exports={components:t("./components"),dijkstra:t("./dijkstra"),dijkstraAll:t("./dijkstra-all"),findCycles:t("./find-cycles"),floydWarshall:t("./floyd-warshall"),isAcyclic:t("./is-acyclic"),postorder:t("./postorder"),preorder:t("./preorder"),prim:t("./prim"),tarjan:t("./tarjan"),topsort:t("./topsort")}},{"./components":63,"./dijkstra":66,"./dijkstra-all":65,"./find-cycles":67,"./floyd-warshall":68,"./is-acyclic":70,"./postorder":71,"./preorder":72,"./prim":73,"./tarjan":74,"./topsort":75}],70:[function(t,e){function n(t){try{r(t)}catch(e){if(e instanceof r.CycleException)return!1;throw e}return!0}var r=t("./topsort");e.exports=n},{"./topsort":75}],71:[function(t,e){function n(t,e){return r(t,e,"post")}var r=t("./dfs");e.exports=n},{"./dfs":64}],72:[function(t,e){function n(t,e){return r(t,e,"pre")}var r=t("./dfs");e.exports=n},{"./dfs":64}],73:[function(t,e){function n(t,e){function n(t){var n=t.v===s?t.w:t.v,r=c.priority(n);if(void 0!==r){var i=e(t);r>i&&(u[n]=s,c.decrease(n,i))}}var s,o=new i,u={},c=new a;if(0===t.nodeCount())return o;r.each(t.nodes(),function(t){c.add(t,Number.POSITIVE_INFINITY),o.setNode(t)}),c.decrease(t.nodes()[0],0);for(var l=!1;c.size()>0;){if(s=c.removeMin(),r.has(u,s))o.setEdge(s,u[s]);else{if(l)throw new Error("Input graph is not connected: "+t);l=!0}t.nodeEdges(s).forEach(n)}return o}var r=t("../lodash"),i=t("../graph"),a=t("../data/priority-queue");e.exports=n},{"../data/priority-queue":76,"../graph":77,"../lodash":80}],74:[function(t,e){function n(t){function e(o){var u=a[o]={onStack:!0,lowlink:n,index:n++};if(i.push(o),t.successors(o).forEach(function(t){r.has(a,t)?a[t].onStack&&(u.lowlink=Math.min(u.lowlink,a[t].index)):(e(t),u.lowlink=Math.min(u.lowlink,a[t].lowlink))}),u.lowlink===u.index){var c,l=[];do c=i.pop(),a[c].onStack=!1,l.push(c);while(o!==c);s.push(l)}}var n=0,i=[],a={},s=[];return t.nodes().forEach(function(t){r.has(a,t)||e(t)}),s}var r=t("../lodash");e.exports=n},{"../lodash":80}],75:[function(t,e){function n(t){function e(o){if(i.has(a,o))throw new r;i.has(n,o)||(a[o]=!0,n[o]=!0,i.each(t.predecessors(o),e),delete a[o],s.push(o))}var n={},a={},s=[];if(i.each(t.sinks(),e),i.size(n)!==t.nodeCount())throw new r;return s}function r(){}var i=t("../lodash");e.exports=n,n.CycleException=r},{"../lodash":80}],76:[function(t,e){function n(){this._arr=[],this._keyIndices={}}var r=t("../lodash");e.exports=n,n.prototype.size=function(){return this._arr.length},n.prototype.keys=function(){return this._arr.map(function(t){return t.key})},n.prototype.has=function(t){return r.has(this._keyIndices,t)},n.prototype.priority=function(t){var e=this._keyIndices[t];return void 0!==e?this._arr[e].priority:void 0},n.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},n.prototype.add=function(t,e){var n=this._keyIndices;if(t=String(t),!r.has(n,t)){var i=this._arr,a=i.length;return n[t]=a,i.push({key:t,priority:e}),this._decrease(a),!0}return!1},n.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key},n.prototype.decrease=function(t,e){var n=this._keyIndices[t];if(e>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[n].priority+" New: "+e);this._arr[n].priority=e,this._decrease(n)},n.prototype._heapify=function(t){var e=this._arr,n=2*t,r=n+1,i=t;n<e.length&&(i=e[n].priority<e[i].priority?n:i,r<e.length&&(i=e[r].priority<e[i].priority?r:i),i!==t&&(this._swap(t,i),this._heapify(i)))},n.prototype._decrease=function(t){for(var e,n=this._arr,r=n[t].priority;0!==t&&(e=t>>1,!(n[e].priority<r));)this._swap(t,e),t=e},n.prototype._swap=function(t,e){var n=this._arr,r=this._keyIndices,i=n[t],a=n[e];n[t]=a,n[e]=i,r[a.key]=t,r[i.key]=e}},{"../lodash":80}],77:[function(t,e){"use strict";function n(t){this._isDirected=u.has(t,"directed")?t.directed:!0,this._isMultigraph=u.has(t,"multigraph")?t.multigraph:!1,this._isCompound=u.has(t,"compound")?t.compound:!1,this._label=void 0,this._defaultNodeLabelFn=u.constant(void 0),this._defaultEdgeLabelFn=u.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[l]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function r(t,e){t[e]?t[e]++:t[e]=1}function i(t,e){--t[e]||delete t[e]}function a(t,e,n,r){var i=""+e,a=""+n;if(!t&&i>a){var s=i;i=a,a=s}return i+h+a+h+(u.isUndefined(r)?c:r)}function s(t,e,n,r){var i=""+e,a=""+n;if(!t&&i>a){var s=i;i=a,a=s}var o={v:i,w:a};return r&&(o.name=r),o}function o(t,e){return a(t,e.v,e.w,e.name)}var u=t("./lodash");e.exports=n;var c="\x00",l="\x00",h="";n.prototype._nodeCount=0,n.prototype._edgeCount=0,n.prototype.isDirected=function(){return this._isDirected},n.prototype.isMultigraph=function(){return this._isMultigraph},n.prototype.isCompound=function(){return this._isCompound},n.prototype.setGraph=function(t){return this._label=t,this},n.prototype.graph=function(){return this._label},n.prototype.setDefaultNodeLabel=function(t){return u.isFunction(t)||(t=u.constant(t)),this._defaultNodeLabelFn=t,this},n.prototype.nodeCount=function(){return this._nodeCount},n.prototype.nodes=function(){return u.keys(this._nodes)},n.prototype.sources=function(){return u.filter(this.nodes(),function(t){return u.isEmpty(this._in[t])},this)},n.prototype.sinks=function(){return u.filter(this.nodes(),function(t){return u.isEmpty(this._out[t])},this)},n.prototype.setNodes=function(t,e){var n=arguments;return u.each(t,function(t){n.length>1?this.setNode(t,e):this.setNode(t)},this),this},n.prototype.setNode=function(t,e){return u.has(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=e),this):(this._nodes[t]=arguments.length>1?e:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=l,this._children[t]={},this._children[l][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)},n.prototype.node=function(t){return this._nodes[t]},n.prototype.hasNode=function(t){return u.has(this._nodes,t)},n.prototype.removeNode=function(t){var e=this;if(u.has(this._nodes,t)){var n=function(t){e.removeEdge(e._edgeObjs[t])};delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],u.each(this.children(t),function(t){this.setParent(t)},this),delete this._children[t]),u.each(u.keys(this._in[t]),n),delete this._in[t],delete this._preds[t],u.each(u.keys(this._out[t]),n),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this},n.prototype.setParent=function(t,e){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(u.isUndefined(e))e=l;else{e+="";for(var n=e;!u.isUndefined(n);n=this.parent(n))if(n===t)throw new Error("Setting "+e+" as parent of "+t+" would create create a cycle");this.setNode(e)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=e,this._children[e][t]=!0,this},n.prototype._removeFromParentsChildList=function(t){delete this._children[this._parent[t]][t]},n.prototype.parent=function(t){if(this._isCompound){var e=this._parent[t];if(e!==l)return e}},n.prototype.children=function(t){if(u.isUndefined(t)&&(t=l),this._isCompound){var e=this._children[t];if(e)return u.keys(e)}else{if(t===l)return this.nodes();if(this.hasNode(t))return[]}},n.prototype.predecessors=function(t){var e=this._preds[t];return e?u.keys(e):void 0},n.prototype.successors=function(t){var e=this._sucs[t];return e?u.keys(e):void 0},n.prototype.neighbors=function(t){var e=this.predecessors(t);return e?u.union(e,this.successors(t)):void 0},n.prototype.filterNodes=function(t){function e(t){var a=r.parent(t);return void 0===a||n.hasNode(a)?(i[t]=a,a):a in i?i[a]:e(a)}var n=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});n.setGraph(this.graph()),u.each(this._nodes,function(e,r){t(r)&&n.setNode(r,e)},this),u.each(this._edgeObjs,function(t){n.hasNode(t.v)&&n.hasNode(t.w)&&n.setEdge(t,this.edge(t))},this);var r=this,i={};return this._isCompound&&u.each(n.nodes(),function(t){n.setParent(t,e(t))}),n},n.prototype.setDefaultEdgeLabel=function(t){return u.isFunction(t)||(t=u.constant(t)),this._defaultEdgeLabelFn=t,this},n.prototype.edgeCount=function(){return this._edgeCount},n.prototype.edges=function(){return u.values(this._edgeObjs)},n.prototype.setPath=function(t,e){var n=this,r=arguments;return u.reduce(t,function(t,i){return r.length>1?n.setEdge(t,i,e):n.setEdge(t,i),i}),this},n.prototype.setEdge=function(){var t,e,n,i,o=!1,c=arguments[0];"object"==typeof c&&null!==c&&"v"in c?(t=c.v,e=c.w,n=c.name,2===arguments.length&&(i=arguments[1],o=!0)):(t=c,e=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),t=""+t,e=""+e,u.isUndefined(n)||(n=""+n);var l=a(this._isDirected,t,e,n);if(u.has(this._edgeLabels,l))return o&&(this._edgeLabels[l]=i),this;if(!u.isUndefined(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(e),this._edgeLabels[l]=o?i:this._defaultEdgeLabelFn(t,e,n);var h=s(this._isDirected,t,e,n);return t=h.v,e=h.w,Object.freeze(h),this._edgeObjs[l]=h,r(this._preds[e],t),r(this._sucs[t],e),this._in[e][l]=h,this._out[t][l]=h,this._edgeCount++,this},n.prototype.edge=function(t,e,n){var r=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,t,e,n);return this._edgeLabels[r]},n.prototype.hasEdge=function(t,e,n){var r=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,t,e,n);return u.has(this._edgeLabels,r)},n.prototype.removeEdge=function(t,e,n){var r=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,t,e,n),s=this._edgeObjs[r];return s&&(t=s.v,e=s.w,delete this._edgeLabels[r],delete this._edgeObjs[r],i(this._preds[e],t),i(this._sucs[t],e),delete this._in[e][r],delete this._out[t][r],this._edgeCount--),this},n.prototype.inEdges=function(t,e){var n=this._in[t];if(n){var r=u.values(n);return e?u.filter(r,function(t){return t.v===e}):r}},n.prototype.outEdges=function(t,e){var n=this._out[t];if(n){var r=u.values(n);return e?u.filter(r,function(t){return t.w===e}):r}},n.prototype.nodeEdges=function(t,e){var n=this.inEdges(t,e);return n?n.concat(this.outEdges(t,e)):void 0}},{"./lodash":80}],78:[function(t,e){e.exports={Graph:t("./graph"),version:t("./version")}},{"./graph":77,"./version":81}],79:[function(t,e){function n(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:r(t),edges:i(t)};return s.isUndefined(t.graph())||(e.value=s.clone(t.graph())),e}function r(t){return s.map(t.nodes(),function(e){var n=t.node(e),r=t.parent(e),i={v:e};return s.isUndefined(n)||(i.value=n),s.isUndefined(r)||(i.parent=r),i})}function i(t){return s.map(t.edges(),function(e){var n=t.edge(e),r={v:e.v,w:e.w};return s.isUndefined(e.name)||(r.name=e.name),s.isUndefined(n)||(r.value=n),r})}function a(t){var e=new o(t.options).setGraph(t.value);return s.each(t.nodes,function(t){e.setNode(t.v,t.value),t.parent&&e.setParent(t.v,t.parent)}),s.each(t.edges,function(t){e.setEdge({v:t.v,w:t.w,name:t.name},t.value)}),e}var s=t("./lodash"),o=t("./graph");e.exports={write:n,read:a}},{"./graph":77,"./lodash":80}],80:[function(t,e){e.exports=t(41)},{"/Users/knut/Documents/source/mermaid/node_modules/dagre-d3/node_modules/dagre/lib/lodash.js":41,
lodash:82}],81:[function(t,e){e.exports="1.0.7"},{}],82:[function(t,e,n){(function(t){(function(){function r(t,e){if(t!==e){var n=null===t,r=t===E,i=t===t,a=null===e,s=e===E,o=e===e;if(t>e&&!a||!i||n&&!s&&o||r&&o)return 1;if(e>t&&!n||!o||a&&!r&&i||s&&i)return-1}return 0}function i(t,e,n){for(var r=t.length,i=n?r:-1;n?i--:++i<r;)if(e(t[i],i,t))return i;return-1}function a(t,e,n){if(e!==e)return y(t,n);for(var r=n-1,i=t.length;++r<i;)if(t[r]===e)return r;return-1}function s(t){return"function"==typeof t||!1}function o(t){return null==t?"":t+""}function u(t,e){for(var n=-1,r=t.length;++n<r&&e.indexOf(t.charAt(n))>-1;);return n}function c(t,e){for(var n=t.length;n--&&e.indexOf(t.charAt(n))>-1;);return n}function l(t,e){return r(t.criteria,e.criteria)||t.index-e.index}function h(t,e,n){for(var i=-1,a=t.criteria,s=e.criteria,o=a.length,u=n.length;++i<o;){var c=r(a[i],s[i]);if(c){if(i>=u)return c;var l=n[i];return c*("asc"===l||l===!0?1:-1)}}return t.index-e.index}function d(t){return Gt[t]}function f(t){return Vt[t]}function p(t,e,n){return e?t=qt[t]:n&&(t=Kt[t]),"\\"+t}function g(t){return"\\"+Kt[t]}function y(t,e,n){for(var r=t.length,i=e+(n?0:-1);n?i--:++i<r;){var a=t[i];if(a!==a)return i}return-1}function m(t){return!!t&&"object"==typeof t}function v(t){return 160>=t&&t>=9&&13>=t||32==t||160==t||5760==t||6158==t||t>=8192&&(8202>=t||8232==t||8233==t||8239==t||8287==t||12288==t||65279==t)}function _(t,e){for(var n=-1,r=t.length,i=-1,a=[];++n<r;)t[n]===e&&(t[n]=G,a[++i]=n);return a}function b(t,e){for(var n,r=-1,i=t.length,a=-1,s=[];++r<i;){var o=t[r],u=e?e(o,r,t):o;r&&n===u||(n=u,s[++a]=o)}return s}function w(t){for(var e=-1,n=t.length;++e<n&&v(t.charCodeAt(e)););return e}function x(t){for(var e=t.length;e--&&v(t.charCodeAt(e)););return e}function k(t){return Ht[t]}function A(t){function e(t){if(m(t)&&!Co(t)&&!(t instanceof Z)){if(t instanceof v)return t;if(ts.call(t,"__chain__")&&ts.call(t,"__wrapped__"))return fr(t)}return new v(t)}function n(){}function v(t,e,n){this.__wrapped__=t,this.__actions__=n||[],this.__chain__=!!e}function Z(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=Ts,this.__views__=[]}function et(){var t=new Z(this.__wrapped__);return t.__actions__=te(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=te(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=te(this.__views__),t}function rt(){if(this.__filtered__){var t=new Z(this);t.__dir__=-1,t.__filtered__=!0}else t=this.clone(),t.__dir__*=-1;return t}function Gt(){var t=this.__wrapped__.value(),e=this.__dir__,n=Co(t),r=0>e,i=n?t.length:0,a=Hn(0,i,this.__views__),s=a.start,o=a.end,u=o-s,c=r?o:s-1,l=this.__iteratees__,h=l.length,d=0,f=xs(u,this.__takeCount__);if(!n||Y>i||i==u&&f==u)return nn(r&&n?t.reverse():t,this.__actions__);var p=[];t:for(;u--&&f>d;){c+=e;for(var g=-1,y=t[c];++g<h;){var m=l[g],v=m.iteratee,_=m.type,b=v(y);if(_==U)y=b;else if(!b){if(_==$)continue t;break t}}p[d++]=y}return p}function Vt(){this.__data__={}}function Ht(t){return this.has(t)&&delete this.__data__[t]}function zt(t){return"__proto__"==t?E:this.__data__[t]}function qt(t){return"__proto__"!=t&&ts.call(this.__data__,t)}function Kt(t,e){return"__proto__"!=t&&(this.__data__[t]=e),this}function Xt(t){var e=t?t.length:0;for(this.data={hash:ys(null),set:new ls};e--;)this.push(t[e])}function Zt(t,e){var n=t.data,r="string"==typeof e||Bi(e)?n.set.has(e):n.hash[e];return r?0:-1}function Qt(t){var e=this.data;"string"==typeof t||Bi(t)?e.set.add(t):e.hash[t]=!0}function Jt(t,e){for(var n=-1,r=t.length,i=-1,a=e.length,s=Ya(r+a);++n<r;)s[n]=t[n];for(;++i<a;)s[n++]=e[i];return s}function te(t,e){var n=-1,r=t.length;for(e||(e=Ya(r));++n<r;)e[n]=t[n];return e}function ee(t,e){for(var n=-1,r=t.length;++n<r&&e(t[n],n,t)!==!1;);return t}function ie(t,e){for(var n=t.length;n--&&e(t[n],n,t)!==!1;);return t}function ae(t,e){for(var n=-1,r=t.length;++n<r;)if(!e(t[n],n,t))return!1;return!0}function se(t,e,n,r){for(var i=-1,a=t.length,s=r,o=s;++i<a;){var u=t[i],c=+e(u);n(c,s)&&(s=c,o=u)}return o}function oe(t,e){for(var n=-1,r=t.length,i=-1,a=[];++n<r;){var s=t[n];e(s,n,t)&&(a[++i]=s)}return a}function ue(t,e){for(var n=-1,r=t.length,i=Ya(r);++n<r;)i[n]=e(t[n],n,t);return i}function ce(t,e){for(var n=-1,r=e.length,i=t.length;++n<r;)t[i+n]=e[n];return t}function le(t,e,n,r){var i=-1,a=t.length;for(r&&a&&(n=t[++i]);++i<a;)n=e(n,t[i],i,t);return n}function he(t,e,n,r){var i=t.length;for(r&&i&&(n=t[--i]);i--;)n=e(n,t[i],i,t);return n}function de(t,e){for(var n=-1,r=t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}function fe(t,e){for(var n=t.length,r=0;n--;)r+=+e(t[n])||0;return r}function pe(t,e){return t===E?e:t}function ge(t,e,n,r){return t!==E&&ts.call(r,n)?t:e}function ye(t,e,n){for(var r=-1,i=Yo(e),a=i.length;++r<a;){var s=i[r],o=t[s],u=n(o,e[s],s,t,e);(u===u?u===o:o!==o)&&(o!==E||s in t)||(t[s]=u)}return t}function me(t,e){return null==e?t:_e(e,Yo(e),t)}function ve(t,e){for(var n=-1,r=null==t,i=!r&&Zn(t),a=i?t.length:0,s=e.length,o=Ya(s);++n<s;){var u=e[n];o[n]=i?Qn(u,a)?t[u]:E:r?E:t[u]}return o}function _e(t,e,n){n||(n={});for(var r=-1,i=e.length;++r<i;){var a=e[r];n[a]=t[a]}return n}function be(t,e,n){var r=typeof t;return"function"==r?e===E?t:sn(t,e,n):null==t?Ta:"object"==r?je(t):e===E?Ma(t):Ye(t,e)}function we(t,e,n,r,i,a,s){var o;if(n&&(o=i?n(t,r,i):n(t)),o!==E)return o;if(!Bi(t))return t;var u=Co(t);if(u){if(o=zn(t),!e)return te(t,o)}else{var c=ns.call(t),l=c==X;if(c!=J&&c!=V&&(!l||i))return Wt[c]?Kn(t,c,e):i?t:{};if(o=qn(l?{}:t),!e)return me(o,t)}a||(a=[]),s||(s=[]);for(var h=a.length;h--;)if(a[h]==t)return s[h];return a.push(t),s.push(o),(u?ee:Oe)(t,function(r,i){o[i]=we(r,e,n,i,t,a,s)}),o}function xe(t,e,n){if("function"!=typeof t)throw new Ka(W);return hs(function(){t.apply(E,n)},e)}function ke(t,e){var n=t?t.length:0,r=[];if(!n)return r;var i=-1,s=Wn(),o=s==a,u=o&&e.length>=Y?gn(e):null,c=e.length;u&&(s=Zt,o=!1,e=u);t:for(;++i<n;){var l=t[i];if(o&&l===l){for(var h=c;h--;)if(e[h]===l)continue t;r.push(l)}else s(e,l,0)<0&&r.push(l)}return r}function Ae(t,e){var n=!0;return Ls(t,function(t,r,i){return n=!!e(t,r,i)}),n}function Ee(t,e,n,r){var i=r,a=i;return Ls(t,function(t,s,o){var u=+e(t,s,o);(n(u,i)||u===r&&u===a)&&(i=u,a=t)}),a}function De(t,e,n,r){var i=t.length;for(n=null==n?0:+n||0,0>n&&(n=-n>i?0:i+n),r=r===E||r>i?i:+r||0,0>r&&(r+=i),i=n>r?0:r>>>0,n>>>=0;i>n;)t[n++]=e;return t}function Te(t,e){var n=[];return Ls(t,function(t,r,i){e(t,r,i)&&n.push(t)}),n}function Se(t,e,n,r){var i;return n(t,function(t,n,a){return e(t,n,a)?(i=r?n:t,!1):void 0}),i}function Ce(t,e,n,r){r||(r=[]);for(var i=-1,a=t.length;++i<a;){var s=t[i];m(s)&&Zn(s)&&(n||Co(s)||Ei(s))?e?Ce(s,e,n,r):ce(r,s):n||(r[r.length]=s)}return r}function Fe(t,e){return Ns(t,e,ta)}function Oe(t,e){return Ns(t,e,Yo)}function Ie(t,e){return Rs(t,e,Yo)}function Me(t,e){for(var n=-1,r=e.length,i=-1,a=[];++n<r;){var s=e[n];Mi(t[s])&&(a[++i]=s)}return a}function Be(t,e,n){if(null!=t){n!==E&&n in hr(t)&&(e=[n]);for(var r=0,i=e.length;null!=t&&i>r;)t=t[e[r++]];return r&&r==i?t:E}}function Le(t,e,n,r,i,a){return t===e?!0:null==t||null==e||!Bi(t)&&!m(e)?t!==t&&e!==e:Pe(t,e,Le,n,r,i,a)}function Pe(t,e,n,r,i,a,s){var o=Co(t),u=Co(e),c=H,l=H;o||(c=ns.call(t),c==V?c=J:c!=J&&(o=Wi(t))),u||(l=ns.call(e),l==V?l=J:l!=J&&(u=Wi(e)));var h=c==J,d=l==J,f=c==l;if(f&&!o&&!h)return jn(t,e,c);if(!i){var p=h&&ts.call(t,"__wrapped__"),g=d&&ts.call(e,"__wrapped__");if(p||g)return n(p?t.value():t,g?e.value():e,r,i,a,s)}if(!f)return!1;a||(a=[]),s||(s=[]);for(var y=a.length;y--;)if(a[y]==t)return s[y]==e;a.push(t),s.push(e);var m=(o?Rn:Yn)(t,e,n,r,i,a,s);return a.pop(),s.pop(),m}function Ne(t,e,n){var r=e.length,i=r,a=!n;if(null==t)return!i;for(t=hr(t);r--;){var s=e[r];if(a&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++r<i;){s=e[r];var o=s[0],u=t[o],c=s[1];if(a&&s[2]){if(u===E&&!(o in t))return!1}else{var l=n?n(u,c,o):E;if(!(l===E?Le(c,u,n,!0):l))return!1}}return!0}function Re(t,e){var n=-1,r=Zn(t)?Ya(t.length):[];return Ls(t,function(t,i,a){r[++n]=e(t,i,a)}),r}function je(t){var e=Gn(t);if(1==e.length&&e[0][2]){var n=e[0][0],r=e[0][1];return function(t){return null==t?!1:t[n]===r&&(r!==E||n in hr(t))}}return function(t){return Ne(t,e)}}function Ye(t,e){var n=Co(t),r=tr(t)&&rr(e),i=t+"";return t=dr(t),function(a){if(null==a)return!1;var s=i;if(a=hr(a),!(!n&&r||s in a)){if(a=1==t.length?a:Be(a,qe(t,0,-1)),null==a)return!1;s=Dr(t),a=hr(a)}return a[s]===e?e!==E||s in a:Le(e,a[s],E,!0)}}function $e(t,e,n,r,i){if(!Bi(t))return t;var a=Zn(e)&&(Co(e)||Wi(e)),s=a?E:Yo(e);return ee(s||e,function(o,u){if(s&&(u=o,o=e[u]),m(o))r||(r=[]),i||(i=[]),Ue(t,e,u,$e,n,r,i);else{var c=t[u],l=n?n(c,o,u,t,e):E,h=l===E;h&&(l=o),l===E&&(!a||u in t)||!h&&(l===l?l===c:c!==c)||(t[u]=l)}}),t}function Ue(t,e,n,r,i,a,s){for(var o=a.length,u=e[n];o--;)if(a[o]==u)return void(t[n]=s[o]);var c=t[n],l=i?i(c,u,n,t,e):E,h=l===E;h&&(l=u,Zn(u)&&(Co(u)||Wi(u))?l=Co(c)?c:Zn(c)?te(c):[]:Yi(u)||Ei(u)?l=Ei(c)?qi(c):Yi(c)?c:{}:h=!1),a.push(u),s.push(l),h?t[n]=r(l,u,i,a,s):(l===l?l!==c:c===c)&&(t[n]=l)}function We(t){return function(e){return null==e?E:e[t]}}function Ge(t){var e=t+"";return t=dr(t),function(n){return Be(n,t,e)}}function Ve(t,e){for(var n=t?e.length:0;n--;){var r=e[n];if(r!=i&&Qn(r)){var i=r;ds.call(t,r,1)}}return t}function He(t,e){return t+ms(Es()*(e-t+1))}function ze(t,e,n,r,i){return i(t,function(t,i,a){n=r?(r=!1,t):e(n,t,i,a)}),n}function qe(t,e,n){var r=-1,i=t.length;e=null==e?0:+e||0,0>e&&(e=-e>i?0:i+e),n=n===E||n>i?i:+n||0,0>n&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var a=Ya(i);++r<i;)a[r]=t[r+e];return a}function Ke(t,e){var n;return Ls(t,function(t,r,i){return n=e(t,r,i),!n}),!!n}function Xe(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t}function Ze(t,e,n){var r=$n(),i=-1;e=ue(e,function(t){return r(t)});var a=Re(t,function(t){var n=ue(e,function(e){return e(t)});return{criteria:n,index:++i,value:t}});return Xe(a,function(t,e){return h(t,e,n)})}function Qe(t,e){var n=0;return Ls(t,function(t,r,i){n+=+e(t,r,i)||0}),n}function Je(t,e){var n=-1,r=Wn(),i=t.length,s=r==a,o=s&&i>=Y,u=o?gn():null,c=[];u?(r=Zt,s=!1):(o=!1,u=e?[]:c);t:for(;++n<i;){var l=t[n],h=e?e(l,n,t):l;if(s&&l===l){for(var d=u.length;d--;)if(u[d]===h)continue t;e&&u.push(h),c.push(l)}else r(u,h,0)<0&&((e||o)&&u.push(h),c.push(l))}return c}function tn(t,e){for(var n=-1,r=e.length,i=Ya(r);++n<r;)i[n]=t[e[n]];return i}function en(t,e,n,r){for(var i=t.length,a=r?i:-1;(r?a--:++a<i)&&e(t[a],a,t););return n?qe(t,r?0:a,r?a+1:i):qe(t,r?a+1:0,r?i:a)}function nn(t,e){var n=t;n instanceof Z&&(n=n.value());for(var r=-1,i=e.length;++r<i;){var a=e[r];n=a.func.apply(a.thisArg,ce([n],a.args))}return n}function rn(t,e,n){var r=0,i=t?t.length:r;if("number"==typeof e&&e===e&&Fs>=i){for(;i>r;){var a=r+i>>>1,s=t[a];(n?e>=s:e>s)&&null!==s?r=a+1:i=a}return i}return an(t,e,Ta,n)}function an(t,e,n,r){e=n(e);for(var i=0,a=t?t.length:0,s=e!==e,o=null===e,u=e===E;a>i;){var c=ms((i+a)/2),l=n(t[c]),h=l!==E,d=l===l;if(s)var f=d||r;else f=o?d&&h&&(r||null!=l):u?d&&(r||h):null==l?!1:r?e>=l:e>l;f?i=c+1:a=c}return xs(a,Cs)}function sn(t,e,n){if("function"!=typeof t)return Ta;if(e===E)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 3:return function(n,r,i){return t.call(e,n,r,i)};case 4:return function(n,r,i,a){return t.call(e,n,r,i,a)};case 5:return function(n,r,i,a,s){return t.call(e,n,r,i,a,s)}}return function(){return t.apply(e,arguments)}}function on(t){var e=new as(t.byteLength),n=new fs(e);return n.set(new fs(t)),e}function un(t,e,n){for(var r=n.length,i=-1,a=ws(t.length-r,0),s=-1,o=e.length,u=Ya(o+a);++s<o;)u[s]=e[s];for(;++i<r;)u[n[i]]=t[i];for(;a--;)u[s++]=t[i++];return u}function cn(t,e,n){for(var r=-1,i=n.length,a=-1,s=ws(t.length-i,0),o=-1,u=e.length,c=Ya(s+u);++a<s;)c[a]=t[a];for(var l=a;++o<u;)c[l+o]=e[o];for(;++r<i;)c[l+n[r]]=t[a++];return c}function ln(t,e){return function(n,r,i){var a=e?e():{};if(r=$n(r,i,3),Co(n))for(var s=-1,o=n.length;++s<o;){var u=n[s];t(a,u,r(u,s,n),n)}else Ls(n,function(e,n,i){t(a,e,r(e,n,i),i)});return a}}function hn(t){return mi(function(e,n){var r=-1,i=null==e?0:n.length,a=i>2?n[i-2]:E,s=i>2?n[2]:E,o=i>1?n[i-1]:E;for("function"==typeof a?(a=sn(a,o,5),i-=2):(a="function"==typeof o?o:E,i-=a?1:0),s&&Jn(n[0],n[1],s)&&(a=3>i?E:a,i=1);++r<i;){var u=n[r];u&&t(e,u,a)}return e})}function dn(t,e){return function(n,r){var i=n?$s(n):0;if(!nr(i))return t(n,r);for(var a=e?i:-1,s=hr(n);(e?a--:++a<i)&&r(s[a],a,s)!==!1;);return n}}function fn(t){return function(e,n,r){for(var i=hr(e),a=r(e),s=a.length,o=t?s:-1;t?o--:++o<s;){var u=a[o];if(n(i[u],u,i)===!1)break}return e}}function pn(t,e){function n(){var i=this&&this!==ne&&this instanceof n?r:t;return i.apply(e,arguments)}var r=mn(t);return n}function gn(t){return ys&&ls?new Xt(t):null}function yn(t){return function(e){for(var n=-1,r=Aa(la(e)),i=r.length,a="";++n<i;)a=t(a,r[n],n);return a}}function mn(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=Bs(t.prototype),r=t.apply(n,e);return Bi(r)?r:n}}function vn(t){function e(n,r,i){i&&Jn(n,r,i)&&(r=E);var a=Nn(n,t,E,E,E,E,E,r);return a.placeholder=e.placeholder,a}return e}function _n(t,e){return mi(function(n){var r=n[0];return null==r?r:(n.push(e),t.apply(E,n))})}function bn(t,e){return function(n,r,i){if(i&&Jn(n,r,i)&&(r=E),r=$n(r,i,3),1==r.length){n=Co(n)?n:lr(n);var a=se(n,r,t,e);if(!n.length||a!==e)return a}return Ee(n,r,t,e)}}function wn(t,e){return function(n,r,a){if(r=$n(r,a,3),Co(n)){var s=i(n,r,e);return s>-1?n[s]:E}return Se(n,r,t)}}function xn(t){return function(e,n,r){return e&&e.length?(n=$n(n,r,3),i(e,n,t)):-1}}function kn(t){return function(e,n,r){return n=$n(n,r,3),Se(e,n,t,!0)}}function An(t){return function(){for(var e,n=arguments.length,r=t?n:-1,i=0,a=Ya(n);t?r--:++r<n;){var s=a[i++]=arguments[r];if("function"!=typeof s)throw new Ka(W);!e&&v.prototype.thru&&"wrapper"==Un(s)&&(e=new v([],!0))}for(r=e?-1:n;++r<n;){s=a[r];var o=Un(s),u="wrapper"==o?Ys(s):E;e=u&&er(u[0])&&u[1]==(B|F|I|L)&&!u[4].length&&1==u[9]?e[Un(u[0])].apply(e,u[3]):1==s.length&&er(s)?e[o]():e.thru(s)}return function(){var t=arguments,r=t[0];if(e&&1==t.length&&Co(r)&&r.length>=Y)return e.plant(r).value();for(var i=0,s=n?a[i].apply(this,t):r;++i<n;)s=a[i].call(this,s);return s}}}function En(t,e){return function(n,r,i){return"function"==typeof r&&i===E&&Co(n)?t(n,r):e(n,sn(r,i,3))}}function Dn(t){return function(e,n,r){return("function"!=typeof n||r!==E)&&(n=sn(n,r,3)),t(e,n,ta)}}function Tn(t){return function(e,n,r){return("function"!=typeof n||r!==E)&&(n=sn(n,r,3)),t(e,n)}}function Sn(t){return function(e,n,r){var i={};return n=$n(n,r,3),Oe(e,function(e,r,a){var s=n(e,r,a);r=t?s:r,e=t?e:s,i[r]=e}),i}}function Cn(t){return function(e,n,r){return e=o(e),(t?e:"")+Mn(e,n,r)+(t?"":e)}}function Fn(t){var e=mi(function(n,r){var i=_(r,e.placeholder);return Nn(n,t,E,r,i)});return e}function On(t,e){return function(n,r,i,a){var s=arguments.length<3;return"function"==typeof r&&a===E&&Co(n)?t(n,r,i,s):ze(n,$n(r,a,4),i,s,e)}}function In(t,e,n,r,i,a,s,o,u,c){function l(){for(var v=arguments.length,b=v,w=Ya(v);b--;)w[b]=arguments[b];if(r&&(w=un(w,r,i)),a&&(w=cn(w,a,s)),p||y){var x=l.placeholder,k=_(w,x);if(v-=k.length,c>v){var A=o?te(o):E,D=ws(c-v,0),C=p?k:E,F=p?E:k,O=p?w:E,B=p?E:w;e|=p?I:M,e&=~(p?M:I),g||(e&=~(T|S));var L=[t,e,n,O,C,B,F,A,u,D],P=In.apply(E,L);return er(t)&&Us(P,L),P.placeholder=x,P}}var N=d?n:this,R=f?N[t]:t;return o&&(w=ur(w,o)),h&&u<w.length&&(w.length=u),this&&this!==ne&&this instanceof l&&(R=m||mn(t)),R.apply(N,w)}var h=e&B,d=e&T,f=e&S,p=e&F,g=e&C,y=e&O,m=f?E:mn(t);return l}function Mn(t,e,n){var r=t.length;if(e=+e,r>=e||!_s(e))return"";var i=e-r;return n=null==n?" ":n+"",ya(n,gs(i/n.length)).slice(0,i)}function Bn(t,e,n,r){function i(){for(var e=-1,o=arguments.length,u=-1,c=r.length,l=Ya(c+o);++u<c;)l[u]=r[u];for(;o--;)l[u++]=arguments[++e];var h=this&&this!==ne&&this instanceof i?s:t;return h.apply(a?n:this,l)}var a=e&T,s=mn(t);return i}function Ln(t){var e=Ga[t];return function(t,n){return n=n===E?0:+n||0,n?(n=us(10,n),e(t*n)/n):e(t)}}function Pn(t){return function(e,n,r,i){var a=$n(r);return null==r&&a===be?rn(e,n,t):an(e,n,a(r,i,1),t)}}function Nn(t,e,n,r,i,a,s,o){var u=e&S;if(!u&&"function"!=typeof t)throw new Ka(W);var c=r?r.length:0;if(c||(e&=~(I|M),r=i=E),c-=i?i.length:0,e&M){var l=r,h=i;r=i=E}var d=u?E:Ys(t),f=[t,e,n,r,i,l,h,a,s,o];if(d&&(ir(f,d),e=f[1],o=f[9]),f[9]=null==o?u?0:t.length:ws(o-c,0)||0,e==T)var p=pn(f[0],f[2]);else p=e!=I&&e!=(T|I)||f[4].length?In.apply(E,f):Bn.apply(E,f);var g=d?js:Us;return g(p,f)}function Rn(t,e,n,r,i,a,s){var o=-1,u=t.length,c=e.length;if(u!=c&&!(i&&c>u))return!1;for(;++o<u;){var l=t[o],h=e[o],d=r?r(i?h:l,i?l:h,o):E;if(d!==E){if(d)continue;return!1}if(i){if(!de(e,function(t){return l===t||n(l,t,r,i,a,s)}))return!1}else if(l!==h&&!n(l,h,r,i,a,s))return!1}return!0}function jn(t,e,n){switch(n){case z:case q:return+t==+e;case K:return t.name==e.name&&t.message==e.message;case Q:return t!=+t?e!=+e:t==+e;case tt:case nt:return t==e+""}return!1}function Yn(t,e,n,r,i,a,s){var o=Yo(t),u=o.length,c=Yo(e),l=c.length;if(u!=l&&!i)return!1;for(var h=u;h--;){var d=o[h];if(!(i?d in e:ts.call(e,d)))return!1}for(var f=i;++h<u;){d=o[h];var p=t[d],g=e[d],y=r?r(i?g:p,i?p:g,d):E;if(!(y===E?n(p,g,r,i,a,s):y))return!1;f||(f="constructor"==d)}if(!f){var m=t.constructor,v=e.constructor;if(m!=v&&"constructor"in t&&"constructor"in e&&!("function"==typeof m&&m instanceof m&&"function"==typeof v&&v instanceof v))return!1}return!0}function $n(t,n,r){var i=e.callback||Ea;return i=i===Ea?be:i,r?i(t,n,r):i}function Un(t){for(var e=t.name,n=Ms[e],r=n?n.length:0;r--;){var i=n[r],a=i.func;if(null==a||a==t)return i.name}return e}function Wn(t,n,r){var i=e.indexOf||Ar;return i=i===Ar?a:i,t?i(t,n,r):i}function Gn(t){for(var e=ea(t),n=e.length;n--;)e[n][2]=rr(e[n][1]);return e}function Vn(t,e){var n=null==t?E:t[e];return Ni(n)?n:E}function Hn(t,e,n){for(var r=-1,i=n.length;++r<i;){var a=n[r],s=a.size;switch(a.type){case"drop":t+=s;break;case"dropRight":e-=s;break;case"take":e=xs(e,t+s);break;case"takeRight":t=ws(t,e-s)}}return{start:t,end:e}}function zn(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&ts.call(t,"index")&&(n.index=t.index,n.input=t.input),n}function qn(t){var e=t.constructor;return"function"==typeof e&&e instanceof e||(e=Ha),new e}function Kn(t,e,n){var r=t.constructor;switch(e){case it:return on(t);case z:case q:return new r(+t);case at:case st:case ot:case ut:case ct:case lt:case ht:case dt:case ft:var i=t.buffer;return new r(n?on(i):i,t.byteOffset,t.length);case Q:case nt:return new r(t);case tt:var a=new r(t.source,It.exec(t));a.lastIndex=t.lastIndex}return a}function Xn(t,e,n){null==t||tr(e,t)||(e=dr(e),t=1==e.length?t:Be(t,qe(e,0,-1)),e=Dr(e));var r=null==t?t:t[e];return null==r?E:r.apply(t,n)}function Zn(t){return null!=t&&nr($s(t))}function Qn(t,e){return t="number"==typeof t||Lt.test(t)?+t:-1,e=null==e?Os:e,t>-1&&t%1==0&&e>t}function Jn(t,e,n){if(!Bi(n))return!1;var r=typeof e;if("number"==r?Zn(n)&&Qn(e,n.length):"string"==r&&e in n){var i=n[e];return t===t?t===i:i!==i}return!1}function tr(t,e){var n=typeof t;if("string"==n&&Et.test(t)||"number"==n)return!0;if(Co(t))return!1;var r=!At.test(t);return r||null!=e&&t in hr(e)}function er(t){var n=Un(t);if(!(n in Z.prototype))return!1;var r=e[n];if(t===r)return!0;var i=Ys(r);return!!i&&t===i[0]}function nr(t){return"number"==typeof t&&t>-1&&t%1==0&&Os>=t}function rr(t){return t===t&&!Bi(t)}function ir(t,e){var n=t[1],r=e[1],i=n|r,a=B>i,s=r==B&&n==F||r==B&&n==L&&t[7].length<=e[8]||r==(B|L)&&n==F;if(!a&&!s)return t;r&T&&(t[2]=e[2],i|=n&T?0:C);var o=e[3];if(o){var u=t[3];t[3]=u?un(u,o,e[4]):te(o),t[4]=u?_(t[3],G):te(e[4])}return o=e[5],o&&(u=t[5],t[5]=u?cn(u,o,e[6]):te(o),t[6]=u?_(t[5],G):te(e[6])),o=e[7],o&&(t[7]=te(o)),r&B&&(t[8]=null==t[8]?e[8]:xs(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=i,t}function ar(t,e){return t===E?e:Fo(t,e,ar)}function sr(t,e){t=hr(t);for(var n=-1,r=e.length,i={};++n<r;){var a=e[n];a in t&&(i[a]=t[a])}return i}function or(t,e){var n={};return Fe(t,function(t,r,i){e(t,r,i)&&(n[r]=t)}),n}function ur(t,e){for(var n=t.length,r=xs(e.length,n),i=te(t);r--;){var a=e[r];t[r]=Qn(a,n)?i[a]:E}return t}function cr(t){for(var e=ta(t),n=e.length,r=n&&t.length,i=!!r&&nr(r)&&(Co(t)||Ei(t)),a=-1,s=[];++a<n;){var o=e[a];(i&&Qn(o,r)||ts.call(t,o))&&s.push(o)}return s}function lr(t){return null==t?[]:Zn(t)?Bi(t)?t:Ha(t):aa(t)}function hr(t){return Bi(t)?t:Ha(t)}function dr(t){if(Co(t))return t;var e=[];return o(t).replace(Dt,function(t,n,r,i){e.push(r?i.replace(Ft,"$1"):n||t)}),e}function fr(t){return t instanceof Z?t.clone():new v(t.__wrapped__,t.__chain__,te(t.__actions__))}function pr(t,e,n){e=(n?Jn(t,e,n):null==e)?1:ws(ms(e)||1,1);for(var r=0,i=t?t.length:0,a=-1,s=Ya(gs(i/e));i>r;)s[++a]=qe(t,r,r+=e);return s}function gr(t){for(var e=-1,n=t?t.length:0,r=-1,i=[];++e<n;){var a=t[e];a&&(i[++r]=a)}return i}function yr(t,e,n){var r=t?t.length:0;return r?((n?Jn(t,e,n):null==e)&&(e=1),qe(t,0>e?0:e)):[]}function mr(t,e,n){var r=t?t.length:0;return r?((n?Jn(t,e,n):null==e)&&(e=1),e=r-(+e||0),qe(t,0,0>e?0:e)):[]}function vr(t,e,n){return t&&t.length?en(t,$n(e,n,3),!0,!0):[]}function _r(t,e,n){return t&&t.length?en(t,$n(e,n,3),!0):[]}function br(t,e,n,r){var i=t?t.length:0;return i?(n&&"number"!=typeof n&&Jn(t,e,n)&&(n=0,r=i),De(t,e,n,r)):[]}function wr(t){return t?t[0]:E}function xr(t,e,n){var r=t?t.length:0;return n&&Jn(t,e,n)&&(e=!1),r?Ce(t,e):[]}function kr(t){var e=t?t.length:0;return e?Ce(t,!0):[]}function Ar(t,e,n){var r=t?t.length:0;if(!r)return-1;if("number"==typeof n)n=0>n?ws(r+n,0):n;else if(n){var i=rn(t,e);return r>i&&(e===e?e===t[i]:t[i]!==t[i])?i:-1}return a(t,e,n||0)}function Er(t){return mr(t,1)}function Dr(t){var e=t?t.length:0;return e?t[e-1]:E}function Tr(t,e,n){var r=t?t.length:0;if(!r)return-1;var i=r;if("number"==typeof n)i=(0>n?ws(r+n,0):xs(n||0,r-1))+1;else if(n){i=rn(t,e,!0)-1;var a=t[i];return(e===e?e===a:a!==a)?i:-1}if(e!==e)return y(t,i,!0);for(;i--;)if(t[i]===e)return i;return-1}function Sr(){var t=arguments,e=t[0];if(!e||!e.length)return e;for(var n=0,r=Wn(),i=t.length;++n<i;)for(var a=0,s=t[n];(a=r(e,s,a))>-1;)ds.call(e,a,1);return e}function Cr(t,e,n){var r=[];if(!t||!t.length)return r;var i=-1,a=[],s=t.length;for(e=$n(e,n,3);++i<s;){var o=t[i];e(o,i,t)&&(r.push(o),a.push(i))}return Ve(t,a),r}function Fr(t){return yr(t,1)}function Or(t,e,n){var r=t?t.length:0;return r?(n&&"number"!=typeof n&&Jn(t,e,n)&&(e=0,n=r),qe(t,e,n)):[]}function Ir(t,e,n){var r=t?t.length:0;return r?((n?Jn(t,e,n):null==e)&&(e=1),qe(t,0,0>e?0:e)):[]}function Mr(t,e,n){var r=t?t.length:0;return r?((n?Jn(t,e,n):null==e)&&(e=1),e=r-(+e||0),qe(t,0>e?0:e)):[]}function Br(t,e,n){return t&&t.length?en(t,$n(e,n,3),!1,!0):[]}function Lr(t,e,n){return t&&t.length?en(t,$n(e,n,3)):[]}function Pr(t,e,n,r){var i=t?t.length:0;if(!i)return[];null!=e&&"boolean"!=typeof e&&(r=n,n=Jn(t,e,r)?E:e,e=!1);var s=$n();return(null!=n||s!==be)&&(n=s(n,r,3)),e&&Wn()==a?b(t,n):Je(t,n)}function Nr(t){if(!t||!t.length)return[];var e=-1,n=0;t=oe(t,function(t){return Zn(t)?(n=ws(t.length,n),!0):void 0});for(var r=Ya(n);++e<n;)r[e]=ue(t,We(e));return r}function Rr(t,e,n){var r=t?t.length:0;if(!r)return[];var i=Nr(t);return null==e?i:(e=sn(e,n,4),ue(i,function(t){return le(t,e,E,!0)}))}function jr(){for(var t=-1,e=arguments.length;++t<e;){var n=arguments[t];if(Zn(n))var r=r?ce(ke(r,n),ke(n,r)):n}return r?Je(r):[]}function Yr(t,e){var n=-1,r=t?t.length:0,i={};for(!r||e||Co(t[0])||(e=[]);++n<r;){var a=t[n];e?i[a]=e[n]:a&&(i[a[0]]=a[1])}return i}function $r(t){var n=e(t);return n.__chain__=!0,n}function Ur(t,e,n){return e.call(n,t),t}function Wr(t,e,n){return e.call(n,t)}function Gr(){return $r(this)}function Vr(){return new v(this.value(),this.__chain__)}function Hr(t){for(var e,r=this;r instanceof n;){var i=fr(r);e?a.__wrapped__=i:e=i;var a=i;r=r.__wrapped__}return a.__wrapped__=t,e}function zr(){var t=this.__wrapped__,e=function(t){return n&&n.__dir__<0?t:t.reverse()};if(t instanceof Z){var n=t;return this.__actions__.length&&(n=new Z(this)),n=n.reverse(),n.__actions__.push({func:Wr,args:[e],thisArg:E}),new v(n,this.__chain__)}return this.thru(e)}function qr(){return this.value()+""}function Kr(){return nn(this.__wrapped__,this.__actions__)}function Xr(t,e,n){var r=Co(t)?ae:Ae;return n&&Jn(t,e,n)&&(e=E),("function"!=typeof e||n!==E)&&(e=$n(e,n,3)),r(t,e)}function Zr(t,e,n){var r=Co(t)?oe:Te;return e=$n(e,n,3),r(t,e)}function Qr(t,e){return ro(t,je(e))}function Jr(t,e,n,r){var i=t?$s(t):0;return nr(i)||(t=aa(t),i=t.length),n="number"!=typeof n||r&&Jn(e,n,r)?0:0>n?ws(i+n,0):n||0,"string"==typeof t||!Co(t)&&Ui(t)?i>=n&&t.indexOf(e,n)>-1:!!i&&Wn(t,e,n)>-1}function ti(t,e,n){var r=Co(t)?ue:Re;return e=$n(e,n,3),r(t,e)}function ei(t,e){return ti(t,Ma(e))}function ni(t,e,n){var r=Co(t)?oe:Te;return e=$n(e,n,3),r(t,function(t,n,r){return!e(t,n,r)})}function ri(t,e,n){if(n?Jn(t,e,n):null==e){t=lr(t);var r=t.length;return r>0?t[He(0,r-1)]:E}var i=-1,a=zi(t),r=a.length,s=r-1;for(e=xs(0>e?0:+e||0,r);++i<e;){var o=He(i,s),u=a[o];a[o]=a[i],a[i]=u}return a.length=e,a}function ii(t){return ri(t,Ts)}function ai(t){var e=t?$s(t):0;return nr(e)?e:Yo(t).length}function si(t,e,n){var r=Co(t)?de:Ke;return n&&Jn(t,e,n)&&(e=E),("function"!=typeof e||n!==E)&&(e=$n(e,n,3)),r(t,e)}function oi(t,e,n){if(null==t)return[];n&&Jn(t,e,n)&&(e=E);var r=-1;e=$n(e,n,3);var i=Re(t,function(t,n,i){return{criteria:e(t,n,i),index:++r,value:t}});return Xe(i,l)}function ui(t,e,n,r){return null==t?[]:(r&&Jn(e,n,r)&&(n=E),Co(e)||(e=null==e?[]:[e]),Co(n)||(n=null==n?[]:[n]),Ze(t,e,n))}function ci(t,e){return Zr(t,je(e))}function li(t,e){if("function"!=typeof e){if("function"!=typeof t)throw new Ka(W);var n=t;t=e,e=n}return t=_s(t=+t)?t:0,function(){return--t<1?e.apply(this,arguments):void 0}}function hi(t,e,n){return n&&Jn(t,e,n)&&(e=E),e=t&&null==e?t.length:ws(+e||0,0),Nn(t,B,E,E,E,E,e)}function di(t,e){var n;if("function"!=typeof e){if("function"!=typeof t)throw new Ka(W);var r=t;t=e,e=r}return function(){return--t>0&&(n=e.apply(this,arguments)),1>=t&&(e=E),n}}function fi(t,e,n){function r(){f&&ss(f),c&&ss(c),g=0,c=f=p=E}function i(e,n){n&&ss(n),c=f=p=E,e&&(g=go(),l=t.apply(d,u),f||c||(u=d=E))}function a(){var t=e-(go()-h);0>=t||t>e?i(p,c):f=hs(a,t)}function s(){i(m,f)}function o(){if(u=arguments,h=go(),d=this,p=m&&(f||!v),y===!1)var n=v&&!f;else{c||v||(g=h);var r=y-(h-g),i=0>=r||r>y;i?(c&&(c=ss(c)),g=h,l=t.apply(d,u)):c||(c=hs(s,r))}return i&&f?f=ss(f):f||e===y||(f=hs(a,e)),n&&(i=!0,l=t.apply(d,u)),!i||f||c||(u=d=E),l}var u,c,l,h,d,f,p,g=0,y=!1,m=!0;if("function"!=typeof t)throw new Ka(W);if(e=0>e?0:+e||0,n===!0){var v=!0;m=!1}else Bi(n)&&(v=!!n.leading,y="maxWait"in n&&ws(+n.maxWait||0,e),m="trailing"in n?!!n.trailing:m);return o.cancel=r,o}function pi(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw new Ka(W);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var s=t.apply(this,r);return n.cache=a.set(i,s),s};return n.cache=new pi.Cache,n}function gi(t){if("function"!=typeof t)throw new Ka(W);return function(){return!t.apply(this,arguments)}}function yi(t){return di(2,t)}function mi(t,e){if("function"!=typeof t)throw new Ka(W);return e=ws(e===E?t.length-1:+e||0,0),function(){for(var n=arguments,r=-1,i=ws(n.length-e,0),a=Ya(i);++r<i;)a[r]=n[e+r];switch(e){case 0:return t.call(this,a);case 1:return t.call(this,n[0],a);case 2:return t.call(this,n[0],n[1],a)}var s=Ya(e+1);for(r=-1;++r<e;)s[r]=n[r];return s[e]=a,t.apply(this,s)}}function vi(t){if("function"!=typeof t)throw new Ka(W);return function(e){return t.apply(this,e)}}function _i(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new Ka(W);return n===!1?r=!1:Bi(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),fi(t,e,{leading:r,maxWait:+e,trailing:i})}function bi(t,e){return e=null==e?Ta:e,Nn(e,I,E,[t],[])}function wi(t,e,n,r){return e&&"boolean"!=typeof e&&Jn(t,e,n)?e=!1:"function"==typeof e&&(r=n,n=e,e=!1),"function"==typeof n?we(t,e,sn(n,r,1)):we(t,e)}function xi(t,e,n){return"function"==typeof e?we(t,!0,sn(e,n,1)):we(t,!0)}function ki(t,e){return t>e}function Ai(t,e){return t>=e}function Ei(t){return m(t)&&Zn(t)&&ts.call(t,"callee")&&!cs.call(t,"callee")}function Di(t){return t===!0||t===!1||m(t)&&ns.call(t)==z}function Ti(t){return m(t)&&ns.call(t)==q}function Si(t){return!!t&&1===t.nodeType&&m(t)&&!Yi(t)}function Ci(t){return null==t?!0:Zn(t)&&(Co(t)||Ui(t)||Ei(t)||m(t)&&Mi(t.splice))?!t.length:!Yo(t).length}function Fi(t,e,n,r){n="function"==typeof n?sn(n,r,3):E;var i=n?n(t,e):E;return i===E?Le(t,e,n):!!i}function Oi(t){return m(t)&&"string"==typeof t.message&&ns.call(t)==K}function Ii(t){return"number"==typeof t&&_s(t)}function Mi(t){return Bi(t)&&ns.call(t)==X}function Bi(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function Li(t,e,n,r){return n="function"==typeof n?sn(n,r,3):E,Ne(t,Gn(e),n)}function Pi(t){return ji(t)&&t!=+t}function Ni(t){return null==t?!1:Mi(t)?is.test(Ja.call(t)):m(t)&&Bt.test(t)}function Ri(t){return null===t}function ji(t){return"number"==typeof t||m(t)&&ns.call(t)==Q}function Yi(t){var e;if(!m(t)||ns.call(t)!=J||Ei(t)||!ts.call(t,"constructor")&&(e=t.constructor,"function"==typeof e&&!(e instanceof e)))return!1;var n;return Fe(t,function(t,e){n=e}),n===E||ts.call(t,n)}function $i(t){return Bi(t)&&ns.call(t)==tt}function Ui(t){return"string"==typeof t||m(t)&&ns.call(t)==nt}function Wi(t){return m(t)&&nr(t.length)&&!!Ut[ns.call(t)]}function Gi(t){return t===E}function Vi(t,e){return e>t}function Hi(t,e){return e>=t}function zi(t){var e=t?$s(t):0;return nr(e)?e?te(t):[]:aa(t)}function qi(t){return _e(t,ta(t))}function Ki(t,e,n){var r=Bs(t);return n&&Jn(t,e,n)&&(e=E),e?me(r,e):r}function Xi(t){return Me(t,ta(t))}function Zi(t,e,n){var r=null==t?E:Be(t,dr(e),e+"");return r===E?n:r}function Qi(t,e){if(null==t)return!1;var n=ts.call(t,e);if(!n&&!tr(e)){if(e=dr(e),t=1==e.length?t:Be(t,qe(e,0,-1)),null==t)return!1;e=Dr(e),n=ts.call(t,e)}return n||nr(t.length)&&Qn(e,t.length)&&(Co(t)||Ei(t))}function Ji(t,e,n){n&&Jn(t,e,n)&&(e=E);for(var r=-1,i=Yo(t),a=i.length,s={};++r<a;){var o=i[r],u=t[o];e?ts.call(s,u)?s[u].push(o):s[u]=[o]:s[u]=o}return s}function ta(t){if(null==t)return[];Bi(t)||(t=Ha(t));var e=t.length;e=e&&nr(e)&&(Co(t)||Ei(t))&&e||0;for(var n=t.constructor,r=-1,i="function"==typeof n&&n.prototype===t,a=Ya(e),s=e>0;++r<e;)a[r]=r+"";for(var o in t)s&&Qn(o,e)||"constructor"==o&&(i||!ts.call(t,o))||a.push(o);return a}function ea(t){t=hr(t);for(var e=-1,n=Yo(t),r=n.length,i=Ya(r);++e<r;){var a=n[e];i[e]=[a,t[a]]}return i}function na(t,e,n){var r=null==t?E:t[e];return r===E&&(null==t||tr(e,t)||(e=dr(e),t=1==e.length?t:Be(t,qe(e,0,-1)),r=null==t?E:t[Dr(e)]),r=r===E?n:r),Mi(r)?r.call(t):r}function ra(t,e,n){if(null==t)return t;var r=e+"";e=null!=t[r]||tr(e,t)?[r]:dr(e);for(var i=-1,a=e.length,s=a-1,o=t;null!=o&&++i<a;){var u=e[i];Bi(o)&&(i==s?o[u]=n:null==o[u]&&(o[u]=Qn(e[i+1])?[]:{})),o=o[u]}return t}function ia(t,e,n,r){var i=Co(t)||Wi(t);if(e=$n(e,r,4),null==n)if(i||Bi(t)){var a=t.constructor;n=i?Co(t)?new a:[]:Bs(Mi(a)?a.prototype:E)}else n={};return(i?ee:Oe)(t,function(t,r,i){return e(n,t,r,i)}),n}function aa(t){return tn(t,Yo(t))}function sa(t){return tn(t,ta(t))}function oa(t,e,n){return e=+e||0,n===E?(n=e,e=0):n=+n||0,t>=xs(e,n)&&t<ws(e,n)}function ua(t,e,n){n&&Jn(t,e,n)&&(e=n=E);var r=null==t,i=null==e;if(null==n&&(i&&"boolean"==typeof t?(n=t,t=1):"boolean"==typeof e&&(n=e,i=!0)),r&&i&&(e=1,i=!1),t=+t||0,i?(e=t,t=0):e=+e||0,n||t%1||e%1){var a=Es();return xs(t+a*(e-t+os("1e-"+((a+"").length-1))),e)}return He(t,e)}function ca(t){return t=o(t),
t&&t.charAt(0).toUpperCase()+t.slice(1)}function la(t){return t=o(t),t&&t.replace(Pt,d).replace(Ct,"")}function ha(t,e,n){t=o(t),e+="";var r=t.length;return n=n===E?r:xs(0>n?0:+n||0,r),n-=e.length,n>=0&&t.indexOf(e,n)==n}function da(t){return t=o(t),t&&bt.test(t)?t.replace(vt,f):t}function fa(t){return t=o(t),t&&St.test(t)?t.replace(Tt,p):t||"(?:)"}function pa(t,e,n){t=o(t),e=+e;var r=t.length;if(r>=e||!_s(e))return t;var i=(e-r)/2,a=ms(i),s=gs(i);return n=Mn("",s,n),n.slice(0,a)+t+n}function ga(t,e,n){return(n?Jn(t,e,n):null==e)?e=0:e&&(e=+e),t=_a(t),As(t,e||(Mt.test(t)?16:10))}function ya(t,e){var n="";if(t=o(t),e=+e,1>e||!t||!_s(e))return n;do e%2&&(n+=t),e=ms(e/2),t+=t;while(e);return n}function ma(t,e,n){return t=o(t),n=null==n?0:xs(0>n?0:+n||0,t.length),t.lastIndexOf(e,n)==n}function va(t,n,r){var i=e.templateSettings;r&&Jn(t,n,r)&&(n=r=E),t=o(t),n=ye(me({},r||n),i,ge);var a,s,u=ye(me({},n.imports),i.imports,ge),c=Yo(u),l=tn(u,c),h=0,d=n.interpolate||Nt,f="__p += '",p=za((n.escape||Nt).source+"|"+d.source+"|"+(d===kt?Ot:Nt).source+"|"+(n.evaluate||Nt).source+"|$","g"),y="//# sourceURL="+("sourceURL"in n?n.sourceURL:"lodash.templateSources["+ ++$t+"]")+"\n";t.replace(p,function(e,n,r,i,o,u){return r||(r=i),f+=t.slice(h,u).replace(Rt,g),n&&(a=!0,f+="' +\n__e("+n+") +\n'"),o&&(s=!0,f+="';\n"+o+";\n__p += '"),r&&(f+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),h=u+e.length,e}),f+="';\n";var m=n.variable;m||(f="with (obj) {\n"+f+"\n}\n"),f=(s?f.replace(pt,""):f).replace(gt,"$1").replace(yt,"$1;"),f="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(s?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var v=Zo(function(){return Wa(c,y+"return "+f).apply(E,l)});if(v.source=f,Oi(v))throw v;return v}function _a(t,e,n){var r=t;return(t=o(t))?(n?Jn(r,e,n):null==e)?t.slice(w(t),x(t)+1):(e+="",t.slice(u(t,e),c(t,e)+1)):t}function ba(t,e,n){var r=t;return t=o(t),t?t.slice((n?Jn(r,e,n):null==e)?w(t):u(t,e+"")):t}function wa(t,e,n){var r=t;return t=o(t),t?(n?Jn(r,e,n):null==e)?t.slice(0,x(t)+1):t.slice(0,c(t,e+"")+1):t}function xa(t,e,n){n&&Jn(t,e,n)&&(e=E);var r=P,i=N;if(null!=e)if(Bi(e)){var a="separator"in e?e.separator:a;r="length"in e?+e.length||0:r,i="omission"in e?o(e.omission):i}else r=+e||0;if(t=o(t),r>=t.length)return t;var s=r-i.length;if(1>s)return i;var u=t.slice(0,s);if(null==a)return u+i;if($i(a)){if(t.slice(s).search(a)){var c,l,h=t.slice(0,s);for(a.global||(a=za(a.source,(It.exec(a)||"")+"g")),a.lastIndex=0;c=a.exec(h);)l=c.index;u=u.slice(0,null==l?s:l)}}else if(t.indexOf(a,s)!=s){var d=u.lastIndexOf(a);d>-1&&(u=u.slice(0,d))}return u+i}function ka(t){return t=o(t),t&&_t.test(t)?t.replace(mt,k):t}function Aa(t,e,n){return n&&Jn(t,e,n)&&(e=E),t=o(t),t.match(e||jt)||[]}function Ea(t,e,n){return n&&Jn(t,e,n)&&(e=E),m(t)?Sa(t):be(t,e)}function Da(t){return function(){return t}}function Ta(t){return t}function Sa(t){return je(we(t,!0))}function Ca(t,e){return Ye(t,we(e,!0))}function Fa(t,e,n){if(null==n){var r=Bi(e),i=r?Yo(e):E,a=i&&i.length?Me(e,i):E;(a?a.length:r)||(a=!1,n=e,e=t,t=this)}a||(a=Me(e,Yo(e)));var s=!0,o=-1,u=Mi(t),c=a.length;n===!1?s=!1:Bi(n)&&"chain"in n&&(s=n.chain);for(;++o<c;){var l=a[o],h=e[l];t[l]=h,u&&(t.prototype[l]=function(e){return function(){var n=this.__chain__;if(s||n){var r=t(this.__wrapped__),i=r.__actions__=te(this.__actions__);return i.push({func:e,args:arguments,thisArg:t}),r.__chain__=n,r}return e.apply(t,ce([this.value()],arguments))}}(h))}return t}function Oa(){return ne._=rs,this}function Ia(){}function Ma(t){return tr(t)?We(t):Ge(t)}function Ba(t){return function(e){return Be(t,dr(e),e+"")}}function La(t,e,n){n&&Jn(t,e,n)&&(e=n=E),t=+t||0,n=null==n?1:+n||0,null==e?(e=t,t=0):e=+e||0;for(var r=-1,i=ws(gs((e-t)/(n||1)),0),a=Ya(i);++r<i;)a[r]=t,t+=n;return a}function Pa(t,e,n){if(t=ms(t),1>t||!_s(t))return[];var r=-1,i=Ya(xs(t,Ss));for(e=sn(e,n,1);++r<t;)Ss>r?i[r]=e(r):e(r);return i}function Na(t){var e=++es;return o(t)+e}function Ra(t,e){return(+t||0)+(+e||0)}function ja(t,e,n){return n&&Jn(t,e,n)&&(e=E),e=$n(e,n,3),1==e.length?fe(Co(t)?t:lr(t),e):Qe(t,e)}t=t?re.defaults(ne.Object(),t,re.pick(ne,Yt)):ne;{var Ya=t.Array,$a=t.Date,Ua=t.Error,Wa=t.Function,Ga=t.Math,Va=t.Number,Ha=t.Object,za=t.RegExp,qa=t.String,Ka=t.TypeError,Xa=Ya.prototype,Za=Ha.prototype,Qa=qa.prototype,Ja=Wa.prototype.toString,ts=Za.hasOwnProperty,es=0,ns=Za.toString,rs=ne._,is=za("^"+Ja.call(ts).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),as=t.ArrayBuffer,ss=t.clearTimeout,os=t.parseFloat,us=Ga.pow,cs=Za.propertyIsEnumerable,ls=Vn(t,"Set"),hs=t.setTimeout,ds=Xa.splice,fs=t.Uint8Array,ps=Vn(t,"WeakMap"),gs=Ga.ceil,ys=Vn(Ha,"create"),ms=Ga.floor,vs=Vn(Ya,"isArray"),_s=t.isFinite,bs=Vn(Ha,"keys"),ws=Ga.max,xs=Ga.min,ks=Vn($a,"now"),As=t.parseInt,Es=Ga.random,Ds=Va.NEGATIVE_INFINITY,Ts=Va.POSITIVE_INFINITY,Ss=4294967295,Cs=Ss-1,Fs=Ss>>>1,Os=9007199254740991,Is=ps&&new ps,Ms={};e.support={}}e.templateSettings={escape:wt,evaluate:xt,interpolate:kt,variable:"",imports:{_:e}};var Bs=function(){function t(){}return function(e){if(Bi(e)){t.prototype=e;var n=new t;t.prototype=E}return n||{}}}(),Ls=dn(Oe),Ps=dn(Ie,!0),Ns=fn(),Rs=fn(!0),js=Is?function(t,e){return Is.set(t,e),t}:Ta,Ys=Is?function(t){return Is.get(t)}:Ia,$s=We("length"),Us=function(){var t=0,e=0;return function(n,r){var i=go(),a=j-(i-e);if(e=i,a>0){if(++t>=R)return n}else t=0;return js(n,r)}}(),Ws=mi(function(t,e){return m(t)&&Zn(t)?ke(t,Ce(e,!1,!0)):[]}),Gs=xn(),Vs=xn(!0),Hs=mi(function(t){for(var e=t.length,n=e,r=Ya(h),i=Wn(),s=i==a,o=[];n--;){var u=t[n]=Zn(u=t[n])?u:[];r[n]=s&&u.length>=120?gn(n&&u):null}var c=t[0],l=-1,h=c?c.length:0,d=r[0];t:for(;++l<h;)if(u=c[l],(d?Zt(d,u):i(o,u,0))<0){for(var n=e;--n;){var f=r[n];if((f?Zt(f,u):i(t[n],u,0))<0)continue t}d&&d.push(u),o.push(u)}return o}),zs=mi(function(t,e){e=Ce(e);var n=ve(t,e);return Ve(t,e.sort(r)),n}),qs=Pn(),Ks=Pn(!0),Xs=mi(function(t){return Je(Ce(t,!1,!0))}),Zs=mi(function(t,e){return Zn(t)?ke(t,e):[]}),Qs=mi(Nr),Js=mi(function(t){var e=t.length,n=e>2?t[e-2]:E,r=e>1?t[e-1]:E;return e>2&&"function"==typeof n?e-=2:(n=e>1&&"function"==typeof r?(--e,r):E,r=E),t.length=e,Rr(t,n,r)}),to=mi(function(t){return t=Ce(t),this.thru(function(e){return Jt(Co(e)?e:[hr(e)],t)})}),eo=mi(function(t,e){return ve(t,Ce(e))}),no=ln(function(t,e,n){ts.call(t,n)?++t[n]:t[n]=1}),ro=wn(Ls),io=wn(Ps,!0),ao=En(ee,Ls),so=En(ie,Ps),oo=ln(function(t,e,n){ts.call(t,n)?t[n].push(e):t[n]=[e]}),uo=ln(function(t,e,n){t[n]=e}),co=mi(function(t,e,n){var r=-1,i="function"==typeof e,a=tr(e),s=Zn(t)?Ya(t.length):[];return Ls(t,function(t){var o=i?e:a&&null!=t?t[e]:E;s[++r]=o?o.apply(t,n):Xn(t,e,n)}),s}),lo=ln(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),ho=On(le,Ls),fo=On(he,Ps),po=mi(function(t,e){if(null==t)return[];var n=e[2];return n&&Jn(e[0],e[1],n)&&(e.length=1),Ze(t,Ce(e),[])}),go=ks||function(){return(new $a).getTime()},yo=mi(function(t,e,n){var r=T;if(n.length){var i=_(n,yo.placeholder);r|=I}return Nn(t,r,e,n,i)}),mo=mi(function(t,e){e=e.length?Ce(e):Xi(t);for(var n=-1,r=e.length;++n<r;){var i=e[n];t[i]=Nn(t[i],T,t)}return t}),vo=mi(function(t,e,n){var r=T|S;if(n.length){var i=_(n,vo.placeholder);r|=I}return Nn(e,r,t,n,i)}),_o=vn(F),bo=vn(O),wo=mi(function(t,e){return xe(t,1,e)}),xo=mi(function(t,e,n){return xe(t,e,n)}),ko=An(),Ao=An(!0),Eo=mi(function(t,e){if(e=Ce(e),"function"!=typeof t||!ae(e,s))throw new Ka(W);var n=e.length;return mi(function(r){for(var i=xs(r.length,n);i--;)r[i]=e[i](r[i]);return t.apply(this,r)})}),Do=Fn(I),To=Fn(M),So=mi(function(t,e){return Nn(t,L,E,E,E,Ce(e))}),Co=vs||function(t){return m(t)&&nr(t.length)&&ns.call(t)==H},Fo=hn($e),Oo=hn(function(t,e,n){return n?ye(t,e,n):me(t,e)}),Io=_n(Oo,pe),Mo=_n(Fo,ar),Bo=kn(Oe),Lo=kn(Ie),Po=Dn(Ns),No=Dn(Rs),Ro=Tn(Oe),jo=Tn(Ie),Yo=bs?function(t){var e=null==t?E:t.constructor;return"function"==typeof e&&e.prototype===t||"function"!=typeof t&&Zn(t)?cr(t):Bi(t)?bs(t):[]}:cr,$o=Sn(!0),Uo=Sn(),Wo=mi(function(t,e){if(null==t)return{};if("function"!=typeof e[0]){var e=ue(Ce(e),qa);return sr(t,ke(ta(t),e))}var n=sn(e[0],e[1],3);return or(t,function(t,e,r){return!n(t,e,r)})}),Go=mi(function(t,e){return null==t?{}:"function"==typeof e[0]?or(t,sn(e[0],e[1],3)):sr(t,Ce(e))}),Vo=yn(function(t,e,n){return e=e.toLowerCase(),t+(n?e.charAt(0).toUpperCase()+e.slice(1):e)}),Ho=yn(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),zo=Cn(),qo=Cn(!0),Ko=yn(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Xo=yn(function(t,e,n){return t+(n?" ":"")+(e.charAt(0).toUpperCase()+e.slice(1))}),Zo=mi(function(t,e){try{return t.apply(E,e)}catch(n){return Oi(n)?n:new Ua(n)}}),Qo=mi(function(t,e){return function(n){return Xn(n,t,e)}}),Jo=mi(function(t,e){return function(n){return Xn(t,n,e)}}),tu=Ln("ceil"),eu=Ln("floor"),nu=bn(ki,Ds),ru=bn(Vi,Ts),iu=Ln("round");return e.prototype=n.prototype,v.prototype=Bs(n.prototype),v.prototype.constructor=v,Z.prototype=Bs(n.prototype),Z.prototype.constructor=Z,Vt.prototype["delete"]=Ht,Vt.prototype.get=zt,Vt.prototype.has=qt,Vt.prototype.set=Kt,Xt.prototype.push=Qt,pi.Cache=Vt,e.after=li,e.ary=hi,e.assign=Oo,e.at=eo,e.before=di,e.bind=yo,e.bindAll=mo,e.bindKey=vo,e.callback=Ea,e.chain=$r,e.chunk=pr,e.compact=gr,e.constant=Da,e.countBy=no,e.create=Ki,e.curry=_o,e.curryRight=bo,e.debounce=fi,e.defaults=Io,e.defaultsDeep=Mo,e.defer=wo,e.delay=xo,e.difference=Ws,e.drop=yr,e.dropRight=mr,e.dropRightWhile=vr,e.dropWhile=_r,e.fill=br,e.filter=Zr,e.flatten=xr,e.flattenDeep=kr,e.flow=ko,e.flowRight=Ao,e.forEach=ao,e.forEachRight=so,e.forIn=Po,e.forInRight=No,e.forOwn=Ro,e.forOwnRight=jo,e.functions=Xi,e.groupBy=oo,e.indexBy=uo,e.initial=Er,e.intersection=Hs,e.invert=Ji,e.invoke=co,e.keys=Yo,e.keysIn=ta,e.map=ti,e.mapKeys=$o,e.mapValues=Uo,e.matches=Sa,e.matchesProperty=Ca,e.memoize=pi,e.merge=Fo,e.method=Qo,e.methodOf=Jo,e.mixin=Fa,e.modArgs=Eo,e.negate=gi,e.omit=Wo,e.once=yi,e.pairs=ea,e.partial=Do,e.partialRight=To,e.partition=lo,e.pick=Go,e.pluck=ei,e.property=Ma,e.propertyOf=Ba,e.pull=Sr,e.pullAt=zs,e.range=La,e.rearg=So,e.reject=ni,e.remove=Cr,e.rest=Fr,e.restParam=mi,e.set=ra,e.shuffle=ii,e.slice=Or,e.sortBy=oi,e.sortByAll=po,e.sortByOrder=ui,e.spread=vi,e.take=Ir,e.takeRight=Mr,e.takeRightWhile=Br,e.takeWhile=Lr,e.tap=Ur,e.throttle=_i,e.thru=Wr,e.times=Pa,e.toArray=zi,e.toPlainObject=qi,e.transform=ia,e.union=Xs,e.uniq=Pr,e.unzip=Nr,e.unzipWith=Rr,e.values=aa,e.valuesIn=sa,e.where=ci,e.without=Zs,e.wrap=bi,e.xor=jr,e.zip=Qs,e.zipObject=Yr,e.zipWith=Js,e.backflow=Ao,e.collect=ti,e.compose=Ao,e.each=ao,e.eachRight=so,e.extend=Oo,e.iteratee=Ea,e.methods=Xi,e.object=Yr,e.select=Zr,e.tail=Fr,e.unique=Pr,Fa(e,e),e.add=Ra,e.attempt=Zo,e.camelCase=Vo,e.capitalize=ca,e.ceil=tu,e.clone=wi,e.cloneDeep=xi,e.deburr=la,e.endsWith=ha,e.escape=da,e.escapeRegExp=fa,e.every=Xr,e.find=ro,e.findIndex=Gs,e.findKey=Bo,e.findLast=io,e.findLastIndex=Vs,e.findLastKey=Lo,e.findWhere=Qr,e.first=wr,e.floor=eu,e.get=Zi,e.gt=ki,e.gte=Ai,e.has=Qi,e.identity=Ta,e.includes=Jr,e.indexOf=Ar,e.inRange=oa,e.isArguments=Ei,e.isArray=Co,e.isBoolean=Di,e.isDate=Ti,e.isElement=Si,e.isEmpty=Ci,e.isEqual=Fi,e.isError=Oi,e.isFinite=Ii,e.isFunction=Mi,e.isMatch=Li,e.isNaN=Pi,e.isNative=Ni,e.isNull=Ri,e.isNumber=ji,e.isObject=Bi,e.isPlainObject=Yi,e.isRegExp=$i,e.isString=Ui,e.isTypedArray=Wi,e.isUndefined=Gi,e.kebabCase=Ho,e.last=Dr,e.lastIndexOf=Tr,e.lt=Vi,e.lte=Hi,e.max=nu,e.min=ru,e.noConflict=Oa,e.noop=Ia,e.now=go,e.pad=pa,e.padLeft=zo,e.padRight=qo,e.parseInt=ga,e.random=ua,e.reduce=ho,e.reduceRight=fo,e.repeat=ya,e.result=na,e.round=iu,e.runInContext=A,e.size=ai,e.snakeCase=Ko,e.some=si,e.sortedIndex=qs,e.sortedLastIndex=Ks,e.startCase=Xo,e.startsWith=ma,e.sum=ja,e.template=va,e.trim=_a,e.trimLeft=ba,e.trimRight=wa,e.trunc=xa,e.unescape=ka,e.uniqueId=Na,e.words=Aa,e.all=Xr,e.any=si,e.contains=Jr,e.eq=Fi,e.detect=ro,e.foldl=ho,e.foldr=fo,e.head=wr,e.include=Jr,e.inject=ho,Fa(e,function(){var t={};return Oe(e,function(n,r){e.prototype[r]||(t[r]=n)}),t}(),!1),e.sample=ri,e.prototype.sample=function(t){return this.__chain__||null!=t?this.thru(function(e){return ri(e,t)}):ri(this.value())},e.VERSION=D,ee(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){e[t].placeholder=e}),ee(["drop","take"],function(t,e){Z.prototype[t]=function(n){var r=this.__filtered__;if(r&&!e)return new Z(this);n=null==n?1:ws(ms(n)||0,0);var i=this.clone();return r?i.__takeCount__=xs(i.__takeCount__,n):i.__views__.push({size:n,type:t+(i.__dir__<0?"Right":"")}),i},Z.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),ee(["filter","map","takeWhile"],function(t,e){var n=e+1,r=n!=U;Z.prototype[t]=function(t,e){var i=this.clone();return i.__iteratees__.push({iteratee:$n(t,e,1),type:n}),i.__filtered__=i.__filtered__||r,i}}),ee(["first","last"],function(t,e){var n="take"+(e?"Right":"");Z.prototype[t]=function(){return this[n](1).value()[0]}}),ee(["initial","rest"],function(t,e){var n="drop"+(e?"":"Right");Z.prototype[t]=function(){return this.__filtered__?new Z(this):this[n](1)}}),ee(["pluck","where"],function(t,e){var n=e?"filter":"map",r=e?je:Ma;Z.prototype[t]=function(t){return this[n](r(t))}}),Z.prototype.compact=function(){return this.filter(Ta)},Z.prototype.reject=function(t,e){return t=$n(t,e,1),this.filter(function(e){return!t(e)})},Z.prototype.slice=function(t,e){t=null==t?0:+t||0;var n=this;return n.__filtered__&&(t>0||0>e)?new Z(n):(0>t?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==E&&(e=+e||0,n=0>e?n.dropRight(-e):n.take(e-t)),n)},Z.prototype.takeRightWhile=function(t,e){return this.reverse().takeWhile(t,e).reverse()},Z.prototype.toArray=function(){return this.take(Ts)},Oe(Z.prototype,function(t,n){var r=/^(?:filter|map|reject)|While$/.test(n),i=/^(?:first|last)$/.test(n),a=e[i?"take"+("last"==n?"Right":""):n];a&&(e.prototype[n]=function(){var e=i?[1]:arguments,n=this.__chain__,s=this.__wrapped__,o=!!this.__actions__.length,u=s instanceof Z,c=e[0],l=u||Co(s);l&&r&&"function"==typeof c&&1!=c.length&&(u=l=!1);var h=function(t){return i&&n?a(t,1)[0]:a.apply(E,ce([t],e))},d={func:Wr,args:[h],thisArg:E},f=u&&!o;if(i&&!n)return f?(s=s.clone(),s.__actions__.push(d),t.call(s)):a.call(E,this.value())[0];if(!i&&l){s=f?s:new Z(this);var p=t.apply(s,e);return p.__actions__.push(d),new v(p,n)}return this.thru(h)})}),ee(["join","pop","push","replace","shift","sort","splice","split","unshift"],function(t){var n=(/^(?:replace|split)$/.test(t)?Qa:Xa)[t],r=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",i=/^(?:join|pop|replace|shift)$/.test(t);e.prototype[t]=function(){var t=arguments;return i&&!this.__chain__?n.apply(this.value(),t):this[r](function(e){return n.apply(e,t)})}}),Oe(Z.prototype,function(t,n){var r=e[n];if(r){var i=r.name,a=Ms[i]||(Ms[i]=[]);a.push({name:n,func:r})}}),Ms[In(E,S).name]=[{name:"wrapper",func:E}],Z.prototype.clone=et,Z.prototype.reverse=rt,Z.prototype.value=Gt,e.prototype.chain=Gr,e.prototype.commit=Vr,e.prototype.concat=to,e.prototype.plant=Hr,e.prototype.reverse=zr,e.prototype.toString=qr,e.prototype.run=e.prototype.toJSON=e.prototype.valueOf=e.prototype.value=Kr,e.prototype.collect=e.prototype.map,e.prototype.head=e.prototype.first,e.prototype.select=e.prototype.filter,e.prototype.tail=e.prototype.rest,e}var E,D="3.10.1",T=1,S=2,C=4,F=8,O=16,I=32,M=64,B=128,L=256,P=30,N="...",R=150,j=16,Y=200,$=1,U=2,W="Expected a function",G="__lodash_placeholder__",V="[object Arguments]",H="[object Array]",z="[object Boolean]",q="[object Date]",K="[object Error]",X="[object Function]",Z="[object Map]",Q="[object Number]",J="[object Object]",tt="[object RegExp]",et="[object Set]",nt="[object String]",rt="[object WeakMap]",it="[object ArrayBuffer]",at="[object Float32Array]",st="[object Float64Array]",ot="[object Int8Array]",ut="[object Int16Array]",ct="[object Int32Array]",lt="[object Uint8Array]",ht="[object Uint8ClampedArray]",dt="[object Uint16Array]",ft="[object Uint32Array]",pt=/\b__p \+= '';/g,gt=/\b(__p \+=) '' \+/g,yt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,mt=/&(?:amp|lt|gt|quot|#39|#96);/g,vt=/[&<>"'`]/g,_t=RegExp(mt.source),bt=RegExp(vt.source),wt=/<%-([\s\S]+?)%>/g,xt=/<%([\s\S]+?)%>/g,kt=/<%=([\s\S]+?)%>/g,At=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,Et=/^\w*$/,Dt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g,Tt=/^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g,St=RegExp(Tt.source),Ct=/[\u0300-\u036f\ufe20-\ufe23]/g,Ft=/\\(\\)?/g,Ot=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,It=/\w*$/,Mt=/^0[xX]/,Bt=/^\[object .+?Constructor\]$/,Lt=/^\d+$/,Pt=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,Nt=/($^)/,Rt=/['\n\r\u2028\u2029\\]/g,jt=function(){var t="[A-Z\\xc0-\\xd6\\xd8-\\xde]",e="[a-z\\xdf-\\xf6\\xf8-\\xff]+";return RegExp(t+"+(?="+t+e+")|"+t+"?"+e+"|"+t+"+|[0-9]+","g")}(),Yt=["Array","ArrayBuffer","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Math","Number","Object","RegExp","Set","String","_","clearTimeout","isFinite","parseFloat","parseInt","setTimeout","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap"],$t=-1,Ut={};Ut[at]=Ut[st]=Ut[ot]=Ut[ut]=Ut[ct]=Ut[lt]=Ut[ht]=Ut[dt]=Ut[ft]=!0,Ut[V]=Ut[H]=Ut[it]=Ut[z]=Ut[q]=Ut[K]=Ut[X]=Ut[Z]=Ut[Q]=Ut[J]=Ut[tt]=Ut[et]=Ut[nt]=Ut[rt]=!1;var Wt={};Wt[V]=Wt[H]=Wt[it]=Wt[z]=Wt[q]=Wt[at]=Wt[st]=Wt[ot]=Wt[ut]=Wt[ct]=Wt[Q]=Wt[J]=Wt[tt]=Wt[nt]=Wt[lt]=Wt[ht]=Wt[dt]=Wt[ft]=!0,Wt[K]=Wt[X]=Wt[Z]=Wt[et]=Wt[rt]=!1;var Gt={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss"},Vt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"},Ht={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'","&#96;":"`"},zt={"function":!0,object:!0},qt={0:"x30",1:"x31",2:"x32",3:"x33",4:"x34",5:"x35",6:"x36",7:"x37",8:"x38",9:"x39",A:"x41",B:"x42",C:"x43",D:"x44",E:"x45",F:"x46",a:"x61",b:"x62",c:"x63",d:"x64",e:"x65",f:"x66",n:"x6e",r:"x72",t:"x74",u:"x75",v:"x76",x:"x78"},Kt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Xt=zt[typeof n]&&n&&!n.nodeType&&n,Zt=zt[typeof e]&&e&&!e.nodeType&&e,Qt=Xt&&Zt&&"object"==typeof t&&t&&t.Object&&t,Jt=zt[typeof self]&&self&&self.Object&&self,te=zt[typeof window]&&window&&window.Object&&window,ee=Zt&&Zt.exports===Xt&&Xt,ne=Qt||te!==(this&&this.window)&&te||Jt||this,re=A();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(ne._=re,define(function(){return re})):Xt&&Zt?ee?(Zt.exports=re)._=re:Xt._=re:ne._=re}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],83:[function(t,e,n){!function(t,r){"object"==typeof n&&"undefined"!=typeof e?e.exports=r():"function"==typeof define&&define.amd?define(r):t.moment=r()}(this,function(){"use strict";function n(){return Pn.apply(null,arguments)}function r(t){Pn=t}function i(t){return"[object Array]"===Object.prototype.toString.call(t)}function a(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t,e){var n,r=[];for(n=0;n<t.length;++n)r.push(e(t[n],n));return r}function o(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function u(t,e){for(var n in e)o(e,n)&&(t[n]=e[n]);return o(e,"toString")&&(t.toString=e.toString),o(e,"valueOf")&&(t.valueOf=e.valueOf),t}function c(t,e,n,r){return Ft(t,e,n,r,!0).utc()}function l(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function h(t){return null==t._pf&&(t._pf=l()),t._pf}function d(t){if(null==t._isValid){var e=h(t);t._isValid=!(isNaN(t._d.getTime())||!(e.overflow<0)||e.empty||e.invalidMonth||e.invalidWeekday||e.nullInput||e.invalidFormat||e.userInvalidated),t._strict&&(t._isValid=t._isValid&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour)}return t._isValid}function f(t){var e=c(0/0);return null!=t?u(h(e),t):h(e).userInvalidated=!0,e}function p(t,e){var n,r,i;if("undefined"!=typeof e._isAMomentObject&&(t._isAMomentObject=e._isAMomentObject),"undefined"!=typeof e._i&&(t._i=e._i),"undefined"!=typeof e._f&&(t._f=e._f),"undefined"!=typeof e._l&&(t._l=e._l),"undefined"!=typeof e._strict&&(t._strict=e._strict),"undefined"!=typeof e._tzm&&(t._tzm=e._tzm),"undefined"!=typeof e._isUTC&&(t._isUTC=e._isUTC),"undefined"!=typeof e._offset&&(t._offset=e._offset),"undefined"!=typeof e._pf&&(t._pf=h(e)),"undefined"!=typeof e._locale&&(t._locale=e._locale),Rn.length>0)for(n in Rn)r=Rn[n],i=e[r],"undefined"!=typeof i&&(t[r]=i);return t}function g(t){p(this,t),this._d=new Date(null!=t._d?t._d.getTime():0/0),jn===!1&&(jn=!0,n.updateOffset(this),jn=!1)}function y(t){return t instanceof g||null!=t&&null!=t._isAMomentObject}function m(t){return 0>t?Math.ceil(t):Math.floor(t)}function v(t){var e=+t,n=0;return 0!==e&&isFinite(e)&&(n=m(e)),n}function _(t,e,n){var r,i=Math.min(t.length,e.length),a=Math.abs(t.length-e.length),s=0;for(r=0;i>r;r++)(n&&t[r]!==e[r]||!n&&v(t[r])!==v(e[r]))&&s++;return s+a}function b(){}function w(t){return t?t.toLowerCase().replace("_","-"):t}function x(t){for(var e,n,r,i,a=0;a<t.length;){for(i=w(t[a]).split("-"),e=i.length,n=w(t[a+1]),n=n?n.split("-"):null;e>0;){if(r=k(i.slice(0,e).join("-")))return r;if(n&&n.length>=e&&_(i,n,!0)>=e-1)break;e--}a++}return null}function k(n){var r=null;if(!Yn[n]&&"undefined"!=typeof e&&e&&e.exports)try{r=Nn._abbr,t("./locale/"+n),A(r)}catch(i){}return Yn[n]}function A(t,e){var n;return t&&(n="undefined"==typeof e?D(t):E(t,e),n&&(Nn=n)),Nn._abbr}function E(t,e){return null!==e?(e.abbr=t,Yn[t]=Yn[t]||new b,Yn[t].set(e),A(t),Yn[t]):(delete Yn[t],null)}function D(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Nn;if(!i(t)){if(e=k(t))return e;t=[t]}return x(t)}function T(t,e){var n=t.toLowerCase();$n[n]=$n[n+"s"]=$n[e]=t}function S(t){return"string"==typeof t?$n[t]||$n[t.toLowerCase()]:void 0}function C(t){var e,n,r={};for(n in t)o(t,n)&&(e=S(n),e&&(r[e]=t[n]));return r}function F(t,e){return function(r){return null!=r?(I(this,t,r),n.updateOffset(this,e),this):O(this,t)}}function O(t,e){return t._d["get"+(t._isUTC?"UTC":"")+e]()}function I(t,e,n){return t._d["set"+(t._isUTC?"UTC":"")+e](n)}function M(t,e){var n;if("object"==typeof t)for(n in t)this.set(n,t[n]);else if(t=S(t),"function"==typeof this[t])return this[t](e);return this}function B(t,e,n){var r=""+Math.abs(t),i=e-r.length,a=t>=0;return(a?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+r}function L(t,e,n,r){var i=r;"string"==typeof r&&(i=function(){return this[r]()}),t&&(Vn[t]=i),e&&(Vn[e[0]]=function(){return B(i.apply(this,arguments),e[1],e[2])}),n&&(Vn[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),t)})}function P(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function N(t){var e,n,r=t.match(Un);for(e=0,n=r.length;n>e;e++)r[e]=Vn[r[e]]?Vn[r[e]]:P(r[e]);return function(i){var a="";for(e=0;n>e;e++)a+=r[e]instanceof Function?r[e].call(i,t):r[e];return a}}function R(t,e){return t.isValid()?(e=j(e,t.localeData()),Gn[e]=Gn[e]||N(e),Gn[e](t)):t.localeData().invalidDate()}function j(t,e){function n(t){return e.longDateFormat(t)||t}var r=5;for(Wn.lastIndex=0;r>=0&&Wn.test(t);)t=t.replace(Wn,n),Wn.lastIndex=0,r-=1;return t}function Y(t){return"function"==typeof t&&"[object Function]"===Object.prototype.toString.call(t)}function $(t,e,n){sr[t]=Y(e)?e:function(t){return t&&n?n:e}}function U(t,e){return o(sr,t)?sr[t](e._strict,e._locale):new RegExp(W(t))}function W(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,n,r,i){return e||n||r||i}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function G(t,e){var n,r=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(r=function(t,n){n[e]=v(t)}),n=0;n<t.length;n++)or[t[n]]=r}function V(t,e){G(t,function(t,n,r,i){r._w=r._w||{},e(t,r._w,r,i)})}function H(t,e,n){null!=e&&o(or,t)&&or[t](e,n._a,n,t)}function z(t,e){return new Date(Date.UTC(t,e+1,0)).getUTCDate()}function q(t){return this._months[t.month()]}function K(t){return this._monthsShort[t.month()]}function X(t,e,n){var r,i,a;for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),r=0;12>r;r++){if(i=c([2e3,r]),n&&!this._longMonthsParse[r]&&(this._longMonthsParse[r]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[r]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),n||this._monthsParse[r]||(a="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[r]=new RegExp(a.replace(".",""),"i")),n&&"MMMM"===e&&this._longMonthsParse[r].test(t))return r;if(n&&"MMM"===e&&this._shortMonthsParse[r].test(t))return r;if(!n&&this._monthsParse[r].test(t))return r}}function Z(t,e){var n;return"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(n=Math.min(t.date(),z(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,n),t)}function Q(t){return null!=t?(Z(this,t),n.updateOffset(this,!0),this):O(this,"Month")}function J(){return z(this.year(),this.month())}function tt(t){var e,n=t._a;return n&&-2===h(t).overflow&&(e=n[cr]<0||n[cr]>11?cr:n[lr]<1||n[lr]>z(n[ur],n[cr])?lr:n[hr]<0||n[hr]>24||24===n[hr]&&(0!==n[dr]||0!==n[fr]||0!==n[pr])?hr:n[dr]<0||n[dr]>59?dr:n[fr]<0||n[fr]>59?fr:n[pr]<0||n[pr]>999?pr:-1,h(t)._overflowDayOfYear&&(ur>e||e>lr)&&(e=lr),h(t).overflow=e),t}function et(t){n.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function nt(t,e){var n=!0;return u(function(){return n&&(et(t+"\n"+(new Error).stack),n=!1),e.apply(this,arguments)},e)}function rt(t,e){mr[t]||(et(e),mr[t]=!0)}function it(t){var e,n,r=t._i,i=vr.exec(r);if(i){for(h(t).iso=!0,e=0,n=_r.length;n>e;e++)if(_r[e][1].exec(r)){t._f=_r[e][0];break}for(e=0,n=br.length;n>e;e++)if(br[e][1].exec(r)){t._f+=(i[6]||" ")+br[e][0];break}r.match(rr)&&(t._f+="Z"),kt(t)}else t._isValid=!1}function at(t){var e=wr.exec(t._i);return null!==e?void(t._d=new Date(+e[1])):(it(t),void(t._isValid===!1&&(delete t._isValid,n.createFromInputFallback(t))))}function st(t,e,n,r,i,a,s){var o=new Date(t,e,n,r,i,a,s);return 1970>t&&o.setFullYear(t),o}function ot(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function ut(t){return ct(t)?366:365}function ct(t){return t%4===0&&t%100!==0||t%400===0}function lt(){return ct(this.year())}function ht(t,e,n){var r,i=n-e,a=n-t.day();return a>i&&(a-=7),i-7>a&&(a+=7),r=Ot(t).add(a,"d"),{week:Math.ceil(r.dayOfYear()/7),year:r.year()}}function dt(t){return ht(t,this._week.dow,this._week.doy).week}function ft(){return this._week.dow}function pt(){return this._week.doy}function gt(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function yt(t){var e=ht(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function mt(t,e,n,r,i){var a,s=6+i-r,o=ot(t,0,1+s),u=o.getUTCDay();return i>u&&(u+=7),n=null!=n?1*n:i,a=1+s+7*(e-1)-u+n,{year:a>0?t:t-1,dayOfYear:a>0?a:ut(t-1)+a}}function vt(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}function _t(t,e,n){return null!=t?t:null!=e?e:n}function bt(t){var e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}function wt(t){var e,n,r,i,a=[];if(!t._d){for(r=bt(t),t._w&&null==t._a[lr]&&null==t._a[cr]&&xt(t),t._dayOfYear&&(i=_t(t._a[ur],r[ur]),t._dayOfYear>ut(i)&&(h(t)._overflowDayOfYear=!0),n=ot(i,0,t._dayOfYear),t._a[cr]=n.getUTCMonth(),t._a[lr]=n.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=a[e]=r[e];for(;7>e;e++)t._a[e]=a[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[hr]&&0===t._a[dr]&&0===t._a[fr]&&0===t._a[pr]&&(t._nextDay=!0,t._a[hr]=0),t._d=(t._useUTC?ot:st).apply(null,a),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[hr]=24)}}function xt(t){var e,n,r,i,a,s,o;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(a=1,s=4,n=_t(e.GG,t._a[ur],ht(Ot(),1,4).year),r=_t(e.W,1),i=_t(e.E,1)):(a=t._locale._week.dow,s=t._locale._week.doy,n=_t(e.gg,t._a[ur],ht(Ot(),a,s).year),r=_t(e.w,1),null!=e.d?(i=e.d,a>i&&++r):i=null!=e.e?e.e+a:a),o=mt(n,r,i,s,a),t._a[ur]=o.year,t._dayOfYear=o.dayOfYear}function kt(t){if(t._f===n.ISO_8601)return void it(t);t._a=[],h(t).empty=!0;var e,r,i,a,s,o=""+t._i,u=o.length,c=0;for(i=j(t._f,t._locale).match(Un)||[],e=0;e<i.length;e++)a=i[e],r=(o.match(U(a,t))||[])[0],r&&(s=o.substr(0,o.indexOf(r)),s.length>0&&h(t).unusedInput.push(s),o=o.slice(o.indexOf(r)+r.length),c+=r.length),Vn[a]?(r?h(t).empty=!1:h(t).unusedTokens.push(a),H(a,r,t)):t._strict&&!r&&h(t).unusedTokens.push(a);h(t).charsLeftOver=u-c,o.length>0&&h(t).unusedInput.push(o),h(t).bigHour===!0&&t._a[hr]<=12&&t._a[hr]>0&&(h(t).bigHour=void 0),t._a[hr]=At(t._locale,t._a[hr],t._meridiem),wt(t),tt(t)}function At(t,e,n){var r;return null==n?e:null!=t.meridiemHour?t.meridiemHour(e,n):null!=t.isPM?(r=t.isPM(n),r&&12>e&&(e+=12),r||12!==e||(e=0),e):e}function Et(t){var e,n,r,i,a;if(0===t._f.length)return h(t).invalidFormat=!0,void(t._d=new Date(0/0));for(i=0;i<t._f.length;i++)a=0,e=p({},t),null!=t._useUTC&&(e._useUTC=t._useUTC),e._f=t._f[i],kt(e),d(e)&&(a+=h(e).charsLeftOver,a+=10*h(e).unusedTokens.length,h(e).score=a,(null==r||r>a)&&(r=a,n=e));u(t,n||e)}function Dt(t){if(!t._d){var e=C(t._i);t._a=[e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],wt(t)}}function Tt(t){var e=new g(tt(St(t)));return e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e}function St(t){var e=t._i,n=t._f;return t._locale=t._locale||D(t._l),null===e||void 0===n&&""===e?f({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),y(e)?new g(tt(e)):(i(n)?Et(t):n?kt(t):a(e)?t._d=e:Ct(t),t))}function Ct(t){var e=t._i;void 0===e?t._d=new Date:a(e)?t._d=new Date(+e):"string"==typeof e?at(t):i(e)?(t._a=s(e.slice(0),function(t){return parseInt(t,10)}),wt(t)):"object"==typeof e?Dt(t):"number"==typeof e?t._d=new Date(e):n.createFromInputFallback(t)}function Ft(t,e,n,r,i){var a={};return"boolean"==typeof n&&(r=n,n=void 0),a._isAMomentObject=!0,a._useUTC=a._isUTC=i,a._l=n,a._i=t,a._f=e,a._strict=r,Tt(a)}function Ot(t,e,n,r){return Ft(t,e,n,r,!1)}function It(t,e){var n,r;if(1===e.length&&i(e[0])&&(e=e[0]),!e.length)return Ot();for(n=e[0],r=1;r<e.length;++r)(!e[r].isValid()||e[r][t](n))&&(n=e[r]);return n}function Mt(){var t=[].slice.call(arguments,0);return It("isBefore",t)}function Bt(){var t=[].slice.call(arguments,0);return It("isAfter",t)}function Lt(t){var e=C(t),n=e.year||0,r=e.quarter||0,i=e.month||0,a=e.week||0,s=e.day||0,o=e.hour||0,u=e.minute||0,c=e.second||0,l=e.millisecond||0;this._milliseconds=+l+1e3*c+6e4*u+36e5*o,this._days=+s+7*a,this._months=+i+3*r+12*n,this._data={},this._locale=D(),this._bubble()}function Pt(t){return t instanceof Lt}function Nt(t,e){L(t,0,0,function(){var t=this.utcOffset(),n="+";return 0>t&&(t=-t,n="-"),n+B(~~(t/60),2)+e+B(~~t%60,2)})}function Rt(t){var e=(t||"").match(rr)||[],n=e[e.length-1]||[],r=(n+"").match(Dr)||["-",0,0],i=+(60*r[1])+v(r[2]);return"+"===r[0]?i:-i}function jt(t,e){var r,i;return e._isUTC?(r=e.clone(),i=(y(t)||a(t)?+t:+Ot(t))-+r,r._d.setTime(+r._d+i),n.updateOffset(r,!1),r):Ot(t).local()}function Yt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function $t(t,e){var r,i=this._offset||0;return null!=t?("string"==typeof t&&(t=Rt(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&e&&(r=Yt(this)),this._offset=t,this._isUTC=!0,null!=r&&this.add(r,"m"),
i!==t&&(!e||this._changeInProgress?re(this,Qt(t-i,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,n.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?i:Yt(this)}function Ut(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Wt(t){return this.utcOffset(0,t)}function Gt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Yt(this),"m")),this}function Vt(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Rt(this._i)),this}function Ht(t){return t=t?Ot(t).utcOffset():0,(this.utcOffset()-t)%60===0}function zt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function qt(){if("undefined"!=typeof this._isDSTShifted)return this._isDSTShifted;var t={};if(p(t,this),t=St(t),t._a){var e=t._isUTC?c(t._a):Ot(t._a);this._isDSTShifted=this.isValid()&&_(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Kt(){return!this._isUTC}function Xt(){return this._isUTC}function Zt(){return this._isUTC&&0===this._offset}function Qt(t,e){var n,r,i,a=t,s=null;return Pt(t)?a={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(a={},e?a[e]=t:a.milliseconds=t):(s=Tr.exec(t))?(n="-"===s[1]?-1:1,a={y:0,d:v(s[lr])*n,h:v(s[hr])*n,m:v(s[dr])*n,s:v(s[fr])*n,ms:v(s[pr])*n}):(s=Sr.exec(t))?(n="-"===s[1]?-1:1,a={y:Jt(s[2],n),M:Jt(s[3],n),d:Jt(s[4],n),h:Jt(s[5],n),m:Jt(s[6],n),s:Jt(s[7],n),w:Jt(s[8],n)}):null==a?a={}:"object"==typeof a&&("from"in a||"to"in a)&&(i=ee(Ot(a.from),Ot(a.to)),a={},a.ms=i.milliseconds,a.M=i.months),r=new Lt(a),Pt(t)&&o(t,"_locale")&&(r._locale=t._locale),r}function Jt(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function te(t,e){var n={milliseconds:0,months:0};return n.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function ee(t,e){var n;return e=jt(e,t),t.isBefore(e)?n=te(t,e):(n=te(e,t),n.milliseconds=-n.milliseconds,n.months=-n.months),n}function ne(t,e){return function(n,r){var i,a;return null===r||isNaN(+r)||(rt(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period)."),a=n,n=r,r=a),n="string"==typeof n?+n:n,i=Qt(n,r),re(this,i,t),this}}function re(t,e,r,i){var a=e._milliseconds,s=e._days,o=e._months;i=null==i?!0:i,a&&t._d.setTime(+t._d+a*r),s&&I(t,"Date",O(t,"Date")+s*r),o&&Z(t,O(t,"Month")+o*r),i&&n.updateOffset(t,s||o)}function ie(t,e){var n=t||Ot(),r=jt(n,this).startOf("day"),i=this.diff(r,"days",!0),a=-6>i?"sameElse":-1>i?"lastWeek":0>i?"lastDay":1>i?"sameDay":2>i?"nextDay":7>i?"nextWeek":"sameElse";return this.format(e&&e[a]||this.localeData().calendar(a,this,Ot(n)))}function ae(){return new g(this)}function se(t,e){var n;return e=S("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=y(t)?t:Ot(t),+this>+t):(n=y(t)?+t:+Ot(t),n<+this.clone().startOf(e))}function oe(t,e){var n;return e=S("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=y(t)?t:Ot(t),+t>+this):(n=y(t)?+t:+Ot(t),+this.clone().endOf(e)<n)}function ue(t,e,n){return this.isAfter(t,n)&&this.isBefore(e,n)}function ce(t,e){var n;return e=S(e||"millisecond"),"millisecond"===e?(t=y(t)?t:Ot(t),+this===+t):(n=+Ot(t),+this.clone().startOf(e)<=n&&n<=+this.clone().endOf(e))}function le(t,e,n){var r,i,a=jt(t,this),s=6e4*(a.utcOffset()-this.utcOffset());return e=S(e),"year"===e||"month"===e||"quarter"===e?(i=he(this,a),"quarter"===e?i/=3:"year"===e&&(i/=12)):(r=this-a,i="second"===e?r/1e3:"minute"===e?r/6e4:"hour"===e?r/36e5:"day"===e?(r-s)/864e5:"week"===e?(r-s)/6048e5:r),n?i:m(i)}function he(t,e){var n,r,i=12*(e.year()-t.year())+(e.month()-t.month()),a=t.clone().add(i,"months");return 0>e-a?(n=t.clone().add(i-1,"months"),r=(e-a)/(a-n)):(n=t.clone().add(i+1,"months"),r=(e-a)/(n-a)),-(i+r)}function de(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function fe(){var t=this.clone().utc();return 0<t.year()&&t.year()<=9999?"function"==typeof Date.prototype.toISOString?this.toDate().toISOString():R(t,"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]"):R(t,"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]")}function pe(t){var e=R(this,t||n.defaultFormat);return this.localeData().postformat(e)}function ge(t,e){return this.isValid()?Qt({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function ye(t){return this.from(Ot(),t)}function me(t,e){return this.isValid()?Qt({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function ve(t){return this.to(Ot(),t)}function _e(t){var e;return void 0===t?this._locale._abbr:(e=D(t),null!=e&&(this._locale=e),this)}function be(){return this._locale}function we(t){switch(t=S(t)){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return"week"===t&&this.weekday(0),"isoWeek"===t&&this.isoWeekday(1),"quarter"===t&&this.month(3*Math.floor(this.month()/3)),this}function xe(t){return t=S(t),void 0===t||"millisecond"===t?this:this.startOf(t).add(1,"isoWeek"===t?"week":t).subtract(1,"ms")}function ke(){return+this._d-6e4*(this._offset||0)}function Ae(){return Math.floor(+this/1e3)}function Ee(){return this._offset?new Date(+this):this._d}function De(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]}function Te(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}}function Se(){return d(this)}function Ce(){return u({},h(this))}function Fe(){return h(this).overflow}function Oe(t,e){L(0,[t,t.length],0,e)}function Ie(t,e,n){return ht(Ot([t,11,31+e-n]),e,n).week}function Me(t){var e=ht(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==t?e:this.add(t-e,"y")}function Be(t){var e=ht(this,1,4).year;return null==t?e:this.add(t-e,"y")}function Le(){return Ie(this.year(),1,4)}function Pe(){var t=this.localeData()._week;return Ie(this.year(),t.dow,t.doy)}function Ne(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function Re(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function je(t){return this._weekdays[t.day()]}function Ye(t){return this._weekdaysShort[t.day()]}function $e(t){return this._weekdaysMin[t.day()]}function Ue(t){var e,n,r;for(this._weekdaysParse=this._weekdaysParse||[],e=0;7>e;e++)if(this._weekdaysParse[e]||(n=Ot([2e3,1]).day(e),r="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[e]=new RegExp(r.replace(".",""),"i")),this._weekdaysParse[e].test(t))return e}function We(t){var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Re(t,this.localeData()),this.add(t-e,"d")):e}function Ge(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function Ve(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)}function He(t,e){L(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function ze(t,e){return e._meridiemParse}function qe(t){return"p"===(t+"").toLowerCase().charAt(0)}function Ke(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"}function Xe(t,e){e[pr]=v(1e3*("0."+t))}function Ze(){return this._isUTC?"UTC":""}function Qe(){return this._isUTC?"Coordinated Universal Time":""}function Je(t){return Ot(1e3*t)}function tn(){return Ot.apply(null,arguments).parseZone()}function en(t,e,n){var r=this._calendar[t];return"function"==typeof r?r.call(e,n):r}function nn(t){var e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,function(t){return t.slice(1)}),this._longDateFormat[t])}function rn(){return this._invalidDate}function an(t){return this._ordinal.replace("%d",t)}function sn(t){return t}function on(t,e,n,r){var i=this._relativeTime[n];return"function"==typeof i?i(t,e,n,r):i.replace(/%d/i,t)}function un(t,e){var n=this._relativeTime[t>0?"future":"past"];return"function"==typeof n?n(e):n.replace(/%s/i,e)}function cn(t){var e,n;for(n in t)e=t[n],"function"==typeof e?this[n]=e:this["_"+n]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function ln(t,e,n,r){var i=D(),a=c().set(r,e);return i[n](a,t)}function hn(t,e,n,r,i){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return ln(t,e,n,i);var a,s=[];for(a=0;r>a;a++)s[a]=ln(t,a,n,i);return s}function dn(t,e){return hn(t,e,"months",12,"month")}function fn(t,e){return hn(t,e,"monthsShort",12,"month")}function pn(t,e){return hn(t,e,"weekdays",7,"day")}function gn(t,e){return hn(t,e,"weekdaysShort",7,"day")}function yn(t,e){return hn(t,e,"weekdaysMin",7,"day")}function mn(){var t=this._data;return this._milliseconds=Zr(this._milliseconds),this._days=Zr(this._days),this._months=Zr(this._months),t.milliseconds=Zr(t.milliseconds),t.seconds=Zr(t.seconds),t.minutes=Zr(t.minutes),t.hours=Zr(t.hours),t.months=Zr(t.months),t.years=Zr(t.years),this}function vn(t,e,n,r){var i=Qt(e,n);return t._milliseconds+=r*i._milliseconds,t._days+=r*i._days,t._months+=r*i._months,t._bubble()}function _n(t,e){return vn(this,t,e,1)}function bn(t,e){return vn(this,t,e,-1)}function wn(t){return 0>t?Math.floor(t):Math.ceil(t)}function xn(){var t,e,n,r,i,a=this._milliseconds,s=this._days,o=this._months,u=this._data;return a>=0&&s>=0&&o>=0||0>=a&&0>=s&&0>=o||(a+=864e5*wn(An(o)+s),s=0,o=0),u.milliseconds=a%1e3,t=m(a/1e3),u.seconds=t%60,e=m(t/60),u.minutes=e%60,n=m(e/60),u.hours=n%24,s+=m(n/24),i=m(kn(s)),o+=i,s-=wn(An(i)),r=m(o/12),o%=12,u.days=s,u.months=o,u.years=r,this}function kn(t){return 4800*t/146097}function An(t){return 146097*t/4800}function En(t){var e,n,r=this._milliseconds;if(t=S(t),"month"===t||"year"===t)return e=this._days+r/864e5,n=this._months+kn(e),"month"===t?n:n/12;switch(e=this._days+Math.round(An(this._months)),t){case"week":return e/7+r/6048e5;case"day":return e+r/864e5;case"hour":return 24*e+r/36e5;case"minute":return 1440*e+r/6e4;case"second":return 86400*e+r/1e3;case"millisecond":return Math.floor(864e5*e)+r;default:throw new Error("Unknown unit "+t)}}function Dn(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*v(this._months/12)}function Tn(t){return function(){return this.as(t)}}function Sn(t){return t=S(t),this[t+"s"]()}function Cn(t){return function(){return this._data[t]}}function Fn(){return m(this.days()/7)}function On(t,e,n,r,i){return i.relativeTime(e||1,!!n,t,r)}function In(t,e,n){var r=Qt(t).abs(),i=fi(r.as("s")),a=fi(r.as("m")),s=fi(r.as("h")),o=fi(r.as("d")),u=fi(r.as("M")),c=fi(r.as("y")),l=i<pi.s&&["s",i]||1===a&&["m"]||a<pi.m&&["mm",a]||1===s&&["h"]||s<pi.h&&["hh",s]||1===o&&["d"]||o<pi.d&&["dd",o]||1===u&&["M"]||u<pi.M&&["MM",u]||1===c&&["y"]||["yy",c];return l[2]=e,l[3]=+t>0,l[4]=n,On.apply(null,l)}function Mn(t,e){return void 0===pi[t]?!1:void 0===e?pi[t]:(pi[t]=e,!0)}function Bn(t){var e=this.localeData(),n=In(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)}function Ln(){var t,e,n,r=gi(this._milliseconds)/1e3,i=gi(this._days),a=gi(this._months);t=m(r/60),e=m(t/60),r%=60,t%=60,n=m(a/12),a%=12;var s=n,o=a,u=i,c=e,l=t,h=r,d=this.asSeconds();return d?(0>d?"-":"")+"P"+(s?s+"Y":"")+(o?o+"M":"")+(u?u+"D":"")+(c||l||h?"T":"")+(c?c+"H":"")+(l?l+"M":"")+(h?h+"S":""):"P0D"}var Pn,Nn,Rn=n.momentProperties=[],jn=!1,Yn={},$n={},Un=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Wn=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Gn={},Vn={},Hn=/\d/,zn=/\d\d/,qn=/\d{3}/,Kn=/\d{4}/,Xn=/[+-]?\d{6}/,Zn=/\d\d?/,Qn=/\d{1,3}/,Jn=/\d{1,4}/,tr=/[+-]?\d{1,6}/,er=/\d+/,nr=/[+-]?\d+/,rr=/Z|[+-]\d\d:?\d\d/gi,ir=/[+-]?\d+(\.\d{1,3})?/,ar=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,sr={},or={},ur=0,cr=1,lr=2,hr=3,dr=4,fr=5,pr=6;L("M",["MM",2],"Mo",function(){return this.month()+1}),L("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),L("MMMM",0,0,function(t){return this.localeData().months(this,t)}),T("month","M"),$("M",Zn),$("MM",Zn,zn),$("MMM",ar),$("MMMM",ar),G(["M","MM"],function(t,e){e[cr]=v(t)-1}),G(["MMM","MMMM"],function(t,e,n,r){var i=n._locale.monthsParse(t,r,n._strict);null!=i?e[cr]=i:h(n).invalidMonth=t});var gr="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),yr="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),mr={};n.suppressDeprecationWarnings=!1;var vr=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,_r=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],br=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],wr=/^\/?Date\((\-?\d+)/i;n.createFromInputFallback=nt("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),L(0,["YY",2],0,function(){return this.year()%100}),L(0,["YYYY",4],0,"year"),L(0,["YYYYY",5],0,"year"),L(0,["YYYYYY",6,!0],0,"year"),T("year","y"),$("Y",nr),$("YY",Zn,zn),$("YYYY",Jn,Kn),$("YYYYY",tr,Xn),$("YYYYYY",tr,Xn),G(["YYYYY","YYYYYY"],ur),G("YYYY",function(t,e){e[ur]=2===t.length?n.parseTwoDigitYear(t):v(t)}),G("YY",function(t,e){e[ur]=n.parseTwoDigitYear(t)}),n.parseTwoDigitYear=function(t){return v(t)+(v(t)>68?1900:2e3)};var xr=F("FullYear",!1);L("w",["ww",2],"wo","week"),L("W",["WW",2],"Wo","isoWeek"),T("week","w"),T("isoWeek","W"),$("w",Zn),$("ww",Zn,zn),$("W",Zn),$("WW",Zn,zn),V(["w","ww","W","WW"],function(t,e,n,r){e[r.substr(0,1)]=v(t)});var kr={dow:0,doy:6};L("DDD",["DDDD",3],"DDDo","dayOfYear"),T("dayOfYear","DDD"),$("DDD",Qn),$("DDDD",qn),G(["DDD","DDDD"],function(t,e,n){n._dayOfYear=v(t)}),n.ISO_8601=function(){};var Ar=nt("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Ot.apply(null,arguments);return this>t?this:t}),Er=nt("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Ot.apply(null,arguments);return t>this?this:t});Nt("Z",":"),Nt("ZZ",""),$("Z",rr),$("ZZ",rr),G(["Z","ZZ"],function(t,e,n){n._useUTC=!0,n._tzm=Rt(t)});var Dr=/([\+\-]|\d\d)/gi;n.updateOffset=function(){};var Tr=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,Sr=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Qt.fn=Lt.prototype;var Cr=ne(1,"add"),Fr=ne(-1,"subtract");n.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var Or=nt("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});L(0,["gg",2],0,function(){return this.weekYear()%100}),L(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Oe("gggg","weekYear"),Oe("ggggg","weekYear"),Oe("GGGG","isoWeekYear"),Oe("GGGGG","isoWeekYear"),T("weekYear","gg"),T("isoWeekYear","GG"),$("G",nr),$("g",nr),$("GG",Zn,zn),$("gg",Zn,zn),$("GGGG",Jn,Kn),$("gggg",Jn,Kn),$("GGGGG",tr,Xn),$("ggggg",tr,Xn),V(["gggg","ggggg","GGGG","GGGGG"],function(t,e,n,r){e[r.substr(0,2)]=v(t)}),V(["gg","GG"],function(t,e,r,i){e[i]=n.parseTwoDigitYear(t)}),L("Q",0,0,"quarter"),T("quarter","Q"),$("Q",Hn),G("Q",function(t,e){e[cr]=3*(v(t)-1)}),L("D",["DD",2],"Do","date"),T("date","D"),$("D",Zn),$("DD",Zn,zn),$("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),G(["D","DD"],lr),G("Do",function(t,e){e[lr]=v(t.match(Zn)[0],10)});var Ir=F("Date",!0);L("d",0,"do","day"),L("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),L("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),L("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),L("e",0,0,"weekday"),L("E",0,0,"isoWeekday"),T("day","d"),T("weekday","e"),T("isoWeekday","E"),$("d",Zn),$("e",Zn),$("E",Zn),$("dd",ar),$("ddd",ar),$("dddd",ar),V(["dd","ddd","dddd"],function(t,e,n){var r=n._locale.weekdaysParse(t);null!=r?e.d=r:h(n).invalidWeekday=t}),V(["d","e","E"],function(t,e,n,r){e[r]=v(t)});var Mr="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Br="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Lr="Su_Mo_Tu_We_Th_Fr_Sa".split("_");L("H",["HH",2],0,"hour"),L("h",["hh",2],0,function(){return this.hours()%12||12}),He("a",!0),He("A",!1),T("hour","h"),$("a",ze),$("A",ze),$("H",Zn),$("h",Zn),$("HH",Zn,zn),$("hh",Zn,zn),G(["H","HH"],hr),G(["a","A"],function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t}),G(["h","hh"],function(t,e,n){e[hr]=v(t),h(n).bigHour=!0});var Pr=/[ap]\.?m?\.?/i,Nr=F("Hours",!0);L("m",["mm",2],0,"minute"),T("minute","m"),$("m",Zn),$("mm",Zn,zn),G(["m","mm"],dr);var Rr=F("Minutes",!1);L("s",["ss",2],0,"second"),T("second","s"),$("s",Zn),$("ss",Zn,zn),G(["s","ss"],fr);var jr=F("Seconds",!1);L("S",0,0,function(){return~~(this.millisecond()/100)}),L(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),L(0,["SSS",3],0,"millisecond"),L(0,["SSSS",4],0,function(){return 10*this.millisecond()}),L(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),L(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),L(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),L(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),L(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),T("millisecond","ms"),$("S",Qn,Hn),$("SS",Qn,zn),$("SSS",Qn,qn);var Yr;for(Yr="SSSS";Yr.length<=9;Yr+="S")$(Yr,er);for(Yr="S";Yr.length<=9;Yr+="S")G(Yr,Xe);var $r=F("Milliseconds",!1);L("z",0,0,"zoneAbbr"),L("zz",0,0,"zoneName");var Ur=g.prototype;Ur.add=Cr,Ur.calendar=ie,Ur.clone=ae,Ur.diff=le,Ur.endOf=xe,Ur.format=pe,Ur.from=ge,Ur.fromNow=ye,Ur.to=me,Ur.toNow=ve,Ur.get=M,Ur.invalidAt=Fe,Ur.isAfter=se,Ur.isBefore=oe,Ur.isBetween=ue,Ur.isSame=ce,Ur.isValid=Se,Ur.lang=Or,Ur.locale=_e,Ur.localeData=be,Ur.max=Er,Ur.min=Ar,Ur.parsingFlags=Ce,Ur.set=M,Ur.startOf=we,Ur.subtract=Fr,Ur.toArray=De,Ur.toObject=Te,Ur.toDate=Ee,Ur.toISOString=fe,Ur.toJSON=fe,Ur.toString=de,Ur.unix=Ae,Ur.valueOf=ke,Ur.year=xr,Ur.isLeapYear=lt,Ur.weekYear=Me,Ur.isoWeekYear=Be,Ur.quarter=Ur.quarters=Ne,Ur.month=Q,Ur.daysInMonth=J,Ur.week=Ur.weeks=gt,Ur.isoWeek=Ur.isoWeeks=yt,Ur.weeksInYear=Pe,Ur.isoWeeksInYear=Le,Ur.date=Ir,Ur.day=Ur.days=We,Ur.weekday=Ge,Ur.isoWeekday=Ve,Ur.dayOfYear=vt,Ur.hour=Ur.hours=Nr,Ur.minute=Ur.minutes=Rr,Ur.second=Ur.seconds=jr,Ur.millisecond=Ur.milliseconds=$r,Ur.utcOffset=$t,Ur.utc=Wt,Ur.local=Gt,Ur.parseZone=Vt,Ur.hasAlignedHourOffset=Ht,Ur.isDST=zt,Ur.isDSTShifted=qt,Ur.isLocal=Kt,Ur.isUtcOffset=Xt,Ur.isUtc=Zt,Ur.isUTC=Zt,Ur.zoneAbbr=Ze,Ur.zoneName=Qe,Ur.dates=nt("dates accessor is deprecated. Use date instead.",Ir),Ur.months=nt("months accessor is deprecated. Use month instead",Q),Ur.years=nt("years accessor is deprecated. Use year instead",xr),Ur.zone=nt("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Ut);var Wr=Ur,Gr={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Vr={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},Hr="Invalid date",zr="%d",qr=/\d{1,2}/,Kr={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},Xr=b.prototype;Xr._calendar=Gr,Xr.calendar=en,Xr._longDateFormat=Vr,Xr.longDateFormat=nn,Xr._invalidDate=Hr,Xr.invalidDate=rn,Xr._ordinal=zr,Xr.ordinal=an,Xr._ordinalParse=qr,Xr.preparse=sn,Xr.postformat=sn,Xr._relativeTime=Kr,Xr.relativeTime=on,Xr.pastFuture=un,Xr.set=cn,Xr.months=q,Xr._months=gr,Xr.monthsShort=K,Xr._monthsShort=yr,Xr.monthsParse=X,Xr.week=dt,Xr._week=kr,Xr.firstDayOfYear=pt,Xr.firstDayOfWeek=ft,Xr.weekdays=je,Xr._weekdays=Mr,Xr.weekdaysMin=$e,Xr._weekdaysMin=Lr,Xr.weekdaysShort=Ye,Xr._weekdaysShort=Br,Xr.weekdaysParse=Ue,Xr.isPM=qe,Xr._meridiemParse=Pr,Xr.meridiem=Ke,A("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,n=1===v(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+n}}),n.lang=nt("moment.lang is deprecated. Use moment.locale instead.",A),n.langData=nt("moment.langData is deprecated. Use moment.localeData instead.",D);var Zr=Math.abs,Qr=Tn("ms"),Jr=Tn("s"),ti=Tn("m"),ei=Tn("h"),ni=Tn("d"),ri=Tn("w"),ii=Tn("M"),ai=Tn("y"),si=Cn("milliseconds"),oi=Cn("seconds"),ui=Cn("minutes"),ci=Cn("hours"),li=Cn("days"),hi=Cn("months"),di=Cn("years"),fi=Math.round,pi={s:45,m:45,h:22,d:26,M:11},gi=Math.abs,yi=Lt.prototype;yi.abs=mn,yi.add=_n,yi.subtract=bn,yi.as=En,yi.asMilliseconds=Qr,yi.asSeconds=Jr,yi.asMinutes=ti,yi.asHours=ei,yi.asDays=ni,yi.asWeeks=ri,yi.asMonths=ii,yi.asYears=ai,yi.valueOf=Dn,yi._bubble=xn,yi.get=Sn,yi.milliseconds=si,yi.seconds=oi,yi.minutes=ui,yi.hours=ci,yi.days=li,yi.weeks=Fn,yi.months=hi,yi.years=di,yi.humanize=Bn,yi.toISOString=Ln,yi.toString=Ln,yi.toJSON=Ln,yi.locale=_e,yi.localeData=be,yi.toIsoString=nt("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ln),yi.lang=Or,L("X",0,0,"unix"),L("x",0,0,"valueOf"),$("x",nr),$("X",ir),G("X",function(t,e,n){n._d=new Date(1e3*parseFloat(t,10))}),G("x",function(t,e,n){n._d=new Date(v(t))}),n.version="2.10.6",r(Ot),n.fn=Wr,n.min=Mt,n.max=Bt,n.utc=c,n.unix=Je,n.months=dn,n.isDate=a,n.locale=A,n.invalid=f,n.duration=Qt,n.isMoment=y,n.weekdays=pn,n.parseZone=tn,n.localeData=D,n.isDuration=Pt,n.monthsShort=fn,n.weekdaysMin=yn,n.defineLocale=E,n.weekdaysShort=gn,n.normalizeUnits=S,n.relativeTimeThreshold=Mn;var mi=n;return mi})},{}],84:[function(t,e){e.exports={name:"mermaid",version:"0.5.5",description:"Markdownish syntax for generating flowcharts, sequence diagrams and gantt charts.",main:"src/mermaid.js",keywords:["diagram","markdown","flowchart","sequence diagram","gantt"],bin:{mermaid:"./bin/mermaid.js"},scripts:{live:"live-server ./test/examples",lint:"node node_modules/eslint/bin/eslint.js src",watch:"source ./scripts/watch.sh",doc:"rm -r build;rm -r dist/www;gulp vartree;cp dist/www/all.html ../mermaid-pages/index.html;cp dist/mermaid.js ../mermaid-pages/javascripts/lib;cp dist/mermaid.forest.css ../mermaid-pages/stylesheets",tape:"node node_modules/.bin/tape test/cli_test-*.js",jasmine:"node node_modules/jasmine-es6/bin/jasmine.js",test:"npm run dist && npm run jasmine && npm run tape","dist-slim-mermaid":"node node_modules/browserify/bin/cmd.js src/mermaid.js -t babelify -s mermaid -o dist/mermaid.slim.js -x d3 && cat dist/mermaid.slim.js | node node_modules/uglifyjs/bin/uglifyjs -mc > dist/mermaid.slim.min.js","dist-slim-mermaidAPI":"node node_modules/browserify/bin/cmd.js src/mermaidAPI.js -t babelify -s mermaidAPI -o dist/mermaidAPI.slim.js -x d3 && cat dist/mermaidAPI.slim.js | node node_modules/uglifyjs/bin/uglifyjs -mc > dist/mermaidAPI.slim.min.js","dist-mermaid":"node node_modules/browserify/bin/cmd.js src/mermaid.js -t babelify -s mermaid -o dist/mermaid.js && cat dist/mermaid.js | node node_modules/uglifyjs/bin/uglifyjs -mc > dist/mermaid.min.js","dist-mermaidAPI":"node node_modules/browserify/bin/cmd.js src/mermaidAPI.js -t babelify -s mermaidAPI -o dist/mermaidAPI.js && cat dist/mermaidAPI.js | node node_modules/uglifyjs/bin/uglifyjs -mc > dist/mermaidAPI.min.js",dist:"npm run dist-slim-mermaid;npm run dist-slim-mermaidAPI; npm run dist-mermaid;npm run dist-mermaidAPI"},repository:{type:"git",url:"https://github.com/knsv/mermaid"},author:"Knut Sveidqvist",license:"MIT",dependencies:{chalk:"^0.5.1",d3:"~3.5.6","dagre-d3":"~0.4.8",he:"^0.5.0",minimist:"^1.1.0",mkdirp:"^0.5.0",moment:"^2.9.0",semver:"^4.1.1",which:"^1.0.8"},devDependencies:{async:"^0.9.0","babel-eslint":"^4.1.3",babelify:"^6.3.0",browserify:"~6.2.0",clone:"^0.2.0","codeclimate-test-reporter":"0.0.4",dateformat:"^1.0.11",dox:"^0.8.0",eslint:"^1.6.0","eslint-watch":"^2.1.2","event-stream":"^3.2.0",foundation:"^4.2.1-1","front-matter":"^0.2.0",gulp:"~3.9.0","gulp-bower":"0.0.10","gulp-browserify":"^0.5.0","gulp-bump":"^0.1.11","gulp-concat":"~2.4.1","gulp-data":"^1.1.1","gulp-dox":"^0.1.6","gulp-ext-replace":"^0.2.0","gulp-filelog":"^0.4.1","gulp-front-matter":"^1.2.3","gulp-hogan":"^1.1.0","gulp-if":"^1.2.5","gulp-insert":"^0.4.0","gulp-istanbul":"^0.4.0","gulp-jasmine":"~2.1.0","gulp-jison":"~1.2.0","gulp-jshint":"^1.9.0","gulp-less":"^3.0.1","gulp-livereload":"^3.8.0","gulp-marked":"^1.0.0","gulp-mdvars":"^2.0.0","gulp-qunit":"~1.2.1","gulp-rename":"~1.2.0","gulp-shell":"^0.2.10","gulp-tag-version":"^1.2.1","gulp-uglify":"~1.0.1","gulp-vartree":"^2.0.1","hogan.js":"^3.0.2",jasmine:"2.3.2","jasmine-es6":"0.0.18",jison:"~0.4.15",jsdom:"^6.5.1","jshint-stylish":"^2.0.1","map-stream":"0.0.6",marked:"^0.3.2","mock-browser":"^0.91.34",path:"^0.4.9",phantomjs:"^1.9.18",proxyquire:"^1.3.1","require-dir":"^0.3.0",rewire:"^2.1.3",rimraf:"^2.2.8",tape:"^3.0.3",uglifyjs:"^2.4.10","vinyl-source-stream":"^1.1.0",watchify:"^3.2.2"}}},{}],85:[function(t,e){"use strict";var n;if(t)try{n=t("d3")}catch(r){}n||(n=window.d3),e.exports=n,function(){var t=!1;if(t="tspans",n.selection.prototype.textwrap)return!1;if("undefined"==typeof t)var t=!1;n.selection.prototype.textwrap=n.selection.enter.prototype.textwrap=function(e,r){var i,r=parseInt(r)||0,a=this,s=function(t){var e=t[0][0],r=e.tagName.toString();if("rect"!==r)return!1;var i={};return i.x=n.select(e).attr("x")||0,i.y=n.select(e).attr("y")||0,i.width=n.select(e).attr("width")||0,i.height=n.select(e).attr("height")||0,i.attr=t.attr,i},o=function(t){if(t.attr||(t.attr=function(t){return this[t]?this[t]:void 0}),"object"==typeof t&&"undefined"!=typeof t.x&&"undefined"!=typeof t.y&&"undefined"!=typeof t.width&&"undefined"!=typeof t.height)return t;if("function"==typeof Array.isArray&&Array.isArray(t)||"[object Array]"===Object.prototype.toString.call(t)){var e=s(t);return e}return!1},u=function(t,e){var n=t;return 0!==e&&(n.x=parseInt(n.x)+e,n.y=parseInt(n.y)+e,n.width-=2*e,n.height-=2*e),n},c=o(e);if(r&&(c=u(c,r)),0!=a.length&&n&&e&&c){e=c;var l,h=function(t){var r=n.select(t[0].parentNode),a=r.select("text"),s=a.style("line-height"),o=a.text();a.remove();var u=r.append("foreignObject");u.attr("requiredFeatures","http://www.w3.org/TR/SVG11/feature#Extensibility").attr("x",e.x).attr("y",e.y).attr("width",e.width).attr("height",e.height);var c=u.append("xhtml:div").attr("class","wrapped");c.style("height",e.height).style("width",e.width).html(o),s&&c.style("line-height",s),i=r.select("foreignObject")},d=function(t){var a,s=t[0],o=s.parentNode,u=n.select(s),c=s.getBBox().height,l=s.getBBox().width,h=c,d=u.style("line-height");if(a=d&&parseInt(d)?parseInt(d.replace("px","")):h,l>e.width){var f=u.text();if(u.text(""),f){var p,g;if(-1!==f.indexOf(" ")){var p=" ";g=f.split(" ")}else{p="";var y=f.length,m=Math.ceil(l/e.width),v=Math.floor(y/m);v*m>=y||m++;for(var _,b,g=[],w=0;m>w;w++)b=w*v,_=f.substr(b,v),g.push(_)}for(var x=[],k=0,A={},w=0;w<g.length;w++){var E,D=g[w],T=u.text(),S=s.getComputedTextLength();E=T?T+p+D:D,u.text(E);var C=s.getComputedTextLength();if(C>e.width&&T&&""!==T&&(k+=S,A={string:T,width:S,offset:k},x.push(A),u.text(""),u.text(D),w==g.length-1&&(E=D,u.text(E),C=s.getComputedTextLength())),w==g.length-1){u.text("");var F=E;F&&""!==F&&(C-k>0&&(C-=k),A={string:F,width:C,offset:k},x.push(A))}}var O;u.text("");for(var w=0;w<x.length;w++){var _=x[w].string;if(w>0){x[w-1]}w*a<e.height-1.5*a&&(O=u.append("tspan").text(_),O.attr("dy",function(){return w>0?a:void 0}),O.attr("x",function(){var t=e.x;return r&&(t+=r),t}))}}}u.attr("y",function(){var t=e.y;return a&&(t+=a),r&&(t+=r),t}),u.attr("x",function(){var t=e.x;return r&&(t+=r),t}),i=n.select(o).selectAll("text")};t&&("foreignobjects"==t?l=h:"tspans"==t&&(l=d)),t||(l="undefined"!=typeof SVGForeignObjectElement?h:d);for(var f=0;f<a.length;f++){var p=a[f];l(p)}return i}return a?a:!1}}()},{d3:"d3"}],86:[function(t,e,n){(function(e){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var i=t("../../logger"),a=r(i),s=new a.Log,o="",u=!1;n.setMessage=function(t){s.debug("Setting message to: "+t),o=t},n.getMessage=function(){return o},n.setInfo=function(t){u=t},n.getInfo=function(){return u},n.parseError=function(t,n){e.mermaidAPI.parseError(t,n)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../../logger":101}],87:[function(t,e,n){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var i=t("../../logger"),a=r(i),s=t("./exampleDb"),o=t("./parser/example.js"),u=t("../../d3"),c=new a.Log;n.draw=function(t,e,n){var r;r=o.parser,r.yy=s,c.debug("Renering example diagram"),r.parse(t);var i=u.select("#"+e),a=i.append("g");a.append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size","32px").style("text-anchor","middle").text("mermaid "+n),i.attr("height",100),i.attr("width",400)}},{"../../d3":85,"../../logger":101,"./exampleDb":86,"./parser/example.js":88}],88:[function(t,e,n){(function(r){"use strict";var i=function(){function t(){this.yy={}}var e=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},n=[6,9,10,12],r={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,message:11,say:12,TXT:13,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo",12:"say",13:"TXT"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1],[8,1],[11,2]],performAction:function(t,e,n,r,i,a){var s=a.length-1;switch(i){case 1:return r;case 4:break;case 6:r.setInfo(!0);break;case 7:r.setMessage(a[s]);break;case 8:this.$=a[s-1].substring(1).trim().replace(/\\n/gm,"\n")}},table:[{3:1,4:[1,2]},{1:[3]},e(n,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8],11:9,12:[1,10]},{1:[2,1]},e(n,[2,3]),e(n,[2,4]),e(n,[2,5]),e(n,[2,6]),e(n,[2,7]),{13:[1,11]},e(n,[2,8])],defaultActions:{4:[2,1]},parseError:function(t,e){if(!e.recoverable)throw new Error(t);this.trace(t)},parse:function(t){var e=this,n=[0],r=[null],i=[],a=this.table,s="",o=0,u=0,c=0,l=2,h=1,d=i.slice.call(arguments,1),f=Object.create(this.lexer),p={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(p.yy[g]=this.yy[g]);f.setInput(t,p.yy),p.yy.lexer=f,p.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var y=f.yylloc;i.push(y);var m=f.options&&f.options.ranges;this.parseError="function"==typeof p.yy.parseError?p.yy.parseError:Object.getPrototypeOf(this).parseError;for(var v,_,b,w,x,k,A,E,D,T=function(){var t;return t=f.lex()||h,"number"!=typeof t&&(t=e.symbols_[t]||t),t},S={};;){if(b=n[n.length-1],this.defaultActions[b]?w=this.defaultActions[b]:((null===v||"undefined"==typeof v)&&(v=T()),w=a[b]&&a[b][v]),"undefined"==typeof w||!w.length||!w[0]){var C="";D=[];for(k in a[b])this.terminals_[k]&&k>l&&D.push("'"+this.terminals_[k]+"'");C=f.showPosition?"Parse error on line "+(o+1)+":\n"+f.showPosition()+"\nExpecting "+D.join(", ")+", got '"+(this.terminals_[v]||v)+"'":"Parse error on line "+(o+1)+": Unexpected "+(v==h?"end of input":"'"+(this.terminals_[v]||v)+"'"),
this.parseError(C,{text:f.match,token:this.terminals_[v]||v,line:f.yylineno,loc:y,expected:D})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+v);switch(w[0]){case 1:n.push(v),r.push(f.yytext),i.push(f.yylloc),n.push(w[1]),v=null,_?(v=_,_=null):(u=f.yyleng,s=f.yytext,o=f.yylineno,y=f.yylloc,c>0&&c--);break;case 2:if(A=this.productions_[w[1]][1],S.$=r[r.length-A],S._$={first_line:i[i.length-(A||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(A||1)].first_column,last_column:i[i.length-1].last_column},m&&(S._$.range=[i[i.length-(A||1)].range[0],i[i.length-1].range[1]]),x=this.performAction.apply(S,[s,u,o,p.yy,w[1],r,i].concat(d)),"undefined"!=typeof x)return x;A&&(n=n.slice(0,-1*A*2),r=r.slice(0,-1*A),i=i.slice(0,-1*A)),n.push(this.productions_[w[1]][0]),r.push(S.$),i.push(S._$),E=a[n[n.length-2]][n[n.length-1]],n.push(E);break;case 3:return!0}}return!0}},i=function(){var t={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var e=t.match(/(?:\r\n?|\n).*/g);return e?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=t[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var t,e,n,r;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(t=this.test_match(n,i[a]),t!==!1)return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?(t=this.test_match(e,i[r]),t!==!1?t:!1):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t?t:this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){var t=this.conditionStack.length-1;return t>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return t=this.conditionStack.length-1-Math.abs(t||0),t>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 9;case 1:return 10;case 2:return 4;case 3:return 12;case 4:return 13;case 5:return 6;case 6:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:showInfo\b)/i,/^(?:info\b)/i,/^(?:say\b)/i,/^(?::[^#\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6],inclusive:!0}}};return t}();return r.lexer=i,t.prototype=r,r.Parser=t,new t}();"undefined"!=typeof t&&"undefined"!=typeof n&&(n.parser=i,n.Parser=i.Parser,n.parse=function(){return i.parse.apply(i,arguments)},n.main=function(e){e[1]||(console.log("Usage: "+e[0]+" FILE"),r.exit(1));var i=t("fs").readFileSync(t("path").normalize(e[1]),"utf8");return n.parser.parse(i)},"undefined"!=typeof e&&t.main===e&&n.main(r.argv.slice(1)))}).call(this,t("_process"))},{_process:3,fs:1,path:2}],89:[function(t,e){"use strict";function n(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var r,i=t("../../logger"),a=n(i),s=new a.Log;if(t)try{r=t("dagre-d3")}catch(o){s.debug("Could not load dagre-d3")}r||(r=window.dagreD3),e.exports=r},{"../../logger":101,"dagre-d3":4}],90:[function(t,e,n){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var i=t("../../logger"),a=r(i),s=t("./graphDb"),o=t("./parser/flow"),u=t("./parser/dot"),c=t("../../d3"),l=t("./dagre-d3"),h=new a.Log,d={};e.exports.setConf=function(t){var e,n=Object.keys(t);for(e=0;e<n.length;e++)d[n[e]]=t[n[e]]},n.addVertices=function(t,e){var n=Object.keys(t),r=function(t,e){var n;for(n=0;n<e.length;n++)"undefined"!=typeof e[n]&&(t=t+e[n]+";");return t};n.forEach(function(n){var i,a=t[n],s="";a.classes.length>0&&(s=a.classes.join(" "));var o="";o=r(o,a.styles),i="undefined"==typeof a.text?a.id:a.text;var u="";d.htmlLabels?(u="html",i=i.replace(/fa:fa[\w\-]+/g,function(t){return'<i class="fa '+t.substring(3)+'">'})):(i=i.replace(/<br>/g,"\n"),u="text");var c=0,l="";switch(a.type){case"round":c=5,l="rect";break;case"square":l="rect";break;case"diamond":l="question";break;case"odd":l="rect_left_inv_arrow";break;case"odd_right":l="rect_left_inv_arrow";break;case"circle":l="circle";break;case"group":l="rect",i="";break;default:l="rect"}e.setNode(a.id,{labelType:u,shape:l,label:i,rx:c,ry:c,"class":s,style:o,id:a.id})})},n.addEdges=function(t,e){var n,r,i=0;"undefined"!=typeof t.defaultStyle&&(r=t.defaultStyle.toString().replace(/,/g,";")),t.forEach(function(t){i++,n="arrow_open"===t.type?"none":"normal";var a="";if("undefined"!=typeof t.style)t.style.forEach(function(t){a=a+t+";"});else switch(t.stroke){case"normal":a="fill:none","undefined"!=typeof r&&(a=r);break;case"dotted":a="stroke: #333; fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":a="stroke: #333; stroke-width: 3.5px;fill:none"}if("undefined"==typeof t.text)"undefined"==typeof t.style?e.setEdge(t.start,t.end,{style:a,arrowhead:n},i):e.setEdge(t.start,t.end,{style:a,arrowheadStyle:"fill: #333",arrowhead:n},i);else{var s=t.text.replace(/<br>/g,"\n");"undefined"==typeof t.style?d.htmlLabels?e.setEdge(t.start,t.end,{labelType:"html",style:a,labelpos:"c",label:'<span style="background:#e8e8e8">'+t.text+"</span>",arrowheadStyle:"fill: #333",arrowhead:n},i):e.setEdge(t.start,t.end,{labelType:"text",style:"stroke: #333; stroke-width: 1.5px;fill:none",labelpos:"c",label:s,arrowheadStyle:"fill: #333",arrowhead:n},i):e.setEdge(t.start,t.end,{labelType:"text",style:a,arrowheadStyle:"fill: #333",label:s,arrowhead:n},i)}})},n.getClasses=function(t,e){var n;s.clear(),n=e?u.parser:o.parser,n.yy=s,n.parse(t);var r=s.getClasses();return"undefined"==typeof r["default"]&&(r["default"]={id:"default"},r["default"].styles=[],r["default"].clusterStyles=["rx:4px","fill: rgb(255, 255, 222)","rx: 4px","stroke: rgb(170, 170, 51)","stroke-width: 1px"],r["default"].nodeLabelStyles=["fill:#000","stroke:none","font-weight:300",'font-family:"Helvetica Neue",Helvetica,Arial,sans-serf',"font-size:14px"],r["default"].edgeLabelStyles=["fill:#000","stroke:none","font-weight:300",'font-family:"Helvetica Neue",Helvetica,Arial,sans-serf',"font-size:14px"]),r},n.draw=function(t,e,r){h.debug("Drawing flowchart");var i;s.clear(),i=r?u.parser:o.parser,i.yy=s;try{i.parse(t)}catch(a){h.debug("Parsing failed")}var f;f=s.getDirection(),"undefined"==typeof f&&(f="TD");var p,g=new l.graphlib.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,marginx:20,marginy:20}).setDefaultEdgeLabel(function(){return{}}),y=s.getSubGraphs(),m=0;for(m=y.length-1;m>=0;m--)p=y[m],s.addVertex(p.id,p.title,"group",void 0);var v=s.getVertices(),_=s.getEdges();m=0;var b;for(m=y.length-1;m>=0;m--)for(p=y[m],c.selectAll("cluster").append("text"),b=0;b<p.nodes.length;b++)g.setParent(p.nodes[b],p.id);n.addVertices(v,g),n.addEdges(_,g);var w=new l.render;w.shapes().question=function(t,e,n){var r=e.width,i=e.height,a=.8*(r+i),s=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}],o=t.insert("polygon",":first-child").attr("points",s.map(function(t){return t.x+","+t.y}).join(" ")).attr("rx",5).attr("ry",5).attr("transform","translate("+-a/2+","+2*a/4+")");return n.intersect=function(t){return l.intersect.polygon(n,s,t)},o},w.shapes().rect_left_inv_arrow=function(t,e,n){var r=e.width,i=e.height,a=[{x:-i/2,y:0},{x:r,y:0},{x:r,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}],s=t.insert("polygon",":first-child").attr("points",a.map(function(t){return t.x+","+t.y}).join(" ")).attr("transform","translate("+-r/2+","+2*i/4+")");return n.intersect=function(t){return l.intersect.polygon(n,a,t)},s},w.shapes().rect_right_inv_arrow=function(t,e,n){var r=e.width,i=e.height,a=[{x:0,y:0},{x:r+i/2,y:0},{x:r,y:-i/2},{x:r+i/2,y:-i},{x:0,y:-i}],s=t.insert("polygon",":first-child").attr("points",a.map(function(t){return t.x+","+t.y}).join(" ")).attr("transform","translate("+-r/2+","+2*i/4+")");return n.intersect=function(t){return l.intersect.polygon(n,a,t)},s},w.arrows().none=function(t,e,n,r){var i=t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),a=i.append("path").attr("d","M 0 0 L 0 0 L 0 0 z");l.util.applyStyle(a,n[r+"Style"])};var x=c.select("#"+e),k=c.select("#"+e+" g");for(w(k,g),k.selectAll("g.node").attr("title",function(){return s.getTooltip(this.id)}),d.useMaxWidth?(x.attr("height","100%"),x.attr("width",d.width),x.attr("viewBox","0 0 "+(g.graph().width+20)+" "+(g.graph().height+20)),x.attr("style","max-width:"+(g.graph().width+20)+"px;")):(x.attr("height",g.graph().height),"undefined"==typeof d.width?x.attr("width",g.graph().width):x.attr("width",d.width),x.attr("viewBox","0 0 "+(g.graph().width+20)+" "+(g.graph().height+20))),s.indexNodes("subGraph"+m),m=0;m<y.length;m++)if(p=y[m],"undefined"!==p.title){var A=document.querySelectorAll("#"+e+" #"+p.id+" rect"),E=document.querySelectorAll("#"+e+" #"+p.id),D=A[0].x.baseVal.value,T=A[0].y.baseVal.value,S=A[0].width.baseVal.value,C=c.select(E[0]),F=C.append("text");F.attr("x",D+S/2),F.attr("y",T+14),F.attr("fill","black"),F.attr("stroke","none"),F.attr("id",e+"Text"),F.style("text-anchor","middle"),F.text("undefined"==typeof p.title?"Undef":p.title)}}},{"../../d3":85,"../../logger":101,"./dagre-d3":89,"./graphDb":91,"./parser/dot":92,"./parser/flow":93}],91:[function(require,module,exports){(function(global){"use strict";function _interopRequireWildcard(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var _logger=require("../../logger"),Logger=_interopRequireWildcard(_logger),log=new Logger.Log,d3=require("../../d3"),vertices={},edges=[],classes=[],subGraphs=[],tooltips={},subCount=0,direction,funs=[];exports.addVertex=function(t,e,n,r){var i;"undefined"!=typeof t&&0!==t.trim().length&&("undefined"==typeof vertices[t]&&(vertices[t]={id:t,styles:[],classes:[]}),"undefined"!=typeof e&&(i=e.trim(),'"'===i[0]&&'"'===i[i.length-1]&&(i=i.substring(1,i.length-1)),vertices[t].text=i),"undefined"!=typeof n&&(vertices[t].type=n),"undefined"!=typeof n&&(vertices[t].type=n),"undefined"!=typeof r&&null!==r&&r.forEach(function(e){vertices[t].styles.push(e)}))},exports.addLink=function(t,e,n,r){log.debug("Got edge",t,e);var i={start:t,end:e,type:void 0,text:""};r=n.text,"undefined"!=typeof r&&(i.text=r.trim(),'"'===i.text[0]&&'"'===i.text[i.text.length-1]&&(i.text=i.text.substring(1,i.text.length-1))),"undefined"!=typeof n&&(i.type=n.type,i.stroke=n.stroke),edges.push(i)},exports.updateLink=function(t,e){"default"===t?edges.defaultStyle=e:edges[t].style=e},exports.addClass=function(t,e){"undefined"==typeof classes[t]&&(classes[t]={id:t,styles:[]}),"undefined"!=typeof e&&null!==e&&e.forEach(function(e){classes[t].styles.push(e)})},exports.setDirection=function(t){direction=t},exports.setClass=function(t,e){t.indexOf(",")>0?t.split(",").forEach(function(t){"undefined"!=typeof vertices[t]&&vertices[t].classes.push(e)}):"undefined"!=typeof vertices[t]&&vertices[t].classes.push(e)};var setTooltip=function(t,e){"undefined"!=typeof e&&(tooltips[t]=e)},setClickFun=function setClickFun(id,functionName){"undefined"!=typeof functionName&&"undefined"!=typeof vertices[id]&&funs.push(function(element){var elem=d3.select(element).select("#"+id);null!==elem&&elem.on("click",function(){eval(functionName+"('"+id+"')")})})},setLink=function(t,e){"undefined"!=typeof e&&"undefined"!=typeof vertices[t]&&funs.push(function(n){var r=d3.select(n).select("#"+t);null!==r&&r.on("click",function(){window.open(e,"newTab")})})};exports.getTooltip=function(t){return tooltips[t]},exports.setClickEvent=function(t,e,n,r){t.indexOf(",")>0?t.split(",").forEach(function(t){setTooltip(t,r),setClickFun(t,e),setLink(t,n)}):(setTooltip(t,r),setClickFun(t,e),setLink(t,n))},exports.bindFunctions=function(t){funs.forEach(function(e){e(t)})},exports.getDirection=function(){return direction},exports.getVertices=function(){return vertices},exports.getEdges=function(){return edges},exports.getClasses=function(){return classes};var setupToolTips=function(t){var e=d3.select(".mermaidTooltip");null===e[0][0]&&(e=d3.select("body").append("div").attr("class","mermaidTooltip").style("opacity",0));var n=d3.select(t).select("svg"),r=n.selectAll("g.node");r.on("mouseover",function(){var t=d3.select(this),n=t.attr("title");if(null!==n){var r=this.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.html(t.attr("title")).style("left",r.left+(r.right-r.left)/2+"px").style("top",r.top-14+document.body.scrollTop+"px"),t.classed("hover",!0)}}).on("mouseout",function(){e.transition().duration(500).style("opacity",0);var t=d3.select(this);t.classed("hover",!1)})};funs.push(setupToolTips),exports.clear=function(){vertices={},classes={},edges=[],funs=[],funs.push(setupToolTips),subGraphs=[],subCount=0,tooltips=[]},exports.defaultStyle=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},exports.addSubGraph=function(t,e){function n(t){var e={"boolean":{},number:{},string:{}},n=[];return t.filter(function(t){var r=typeof t;return" "===t?!1:r in e?e[r].hasOwnProperty(t)?!1:e[r][t]=!0:n.indexOf(t)>=0?!1:n.push(t)})}var r=[];r=n(r.concat.apply(r,t));var i={id:"subGraph"+subCount,nodes:r,title:e};return subGraphs.push(i),subCount+=1,i.id};var getPosForId=function(t){var e;for(e=0;e<subGraphs.length;e++)if(subGraphs[e].id===t)return e;return-1},secCount=-1,posCrossRef=[],indexNodes=function t(e,n){var r=subGraphs[n].nodes;if(secCount+=1,!(secCount>2e3)){if(posCrossRef[secCount]=n,subGraphs[n].id===e)return{result:!0,count:0};for(var i=0,a=1;i<r.length;){var s=getPosForId(r[i]);if(s>=0){var o=t(e,s);if(o.result)return{result:!0,count:a+o.count};a+=o.count}i+=1}return{result:!1,count:a}}};exports.getDepthFirstPos=function(t){return posCrossRef[t]},exports.indexNodes=function(){secCount=-1,subGraphs.length>0&&indexNodes("none",subGraphs.length-1,0)},exports.getSubGraphs=function(){return subGraphs},exports.parseError=function(t,e){global.mermaidAPI.parseError(t,e)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../../d3":85,"../../logger":101}],92:[function(t,e,n){(function(r){"use strict";var i=function(){function t(){this.yy={}}var e=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},n=[1,5],r=[1,6],i=[1,12],a=[1,13],s=[1,14],o=[1,15],u=[1,16],c=[1,17],l=[1,18],h=[1,19],d=[1,20],f=[1,21],p=[1,22],g=[8,16,17,18,19,20,21,22,23,24,25,26],y=[1,37],m=[1,33],v=[1,34],_=[1,35],b=[1,36],w=[8,10,16,17,18,19,20,21,22,23,24,25,26,28,32,37,39,40,45,57,58],x=[10,28],k=[10,28,37,57,58],A=[2,49],E=[1,45],D=[1,48],T=[1,49],S=[1,52],C=[2,65],F=[1,65],O=[1,66],I=[1,67],M=[1,68],B=[1,69],L=[1,70],P=[1,71],N=[1,72],R=[1,73],j=[8,16,17,18,19,20,21,22,23,24,25,26,47],Y=[10,28,37],$={trace:function(){},yy:{},symbols_:{error:2,expressions:3,graph:4,EOF:5,graphStatement:6,idStatement:7,"{":8,stmt_list:9,"}":10,strict:11,GRAPH:12,DIGRAPH:13,textNoTags:14,textNoTagsToken:15,ALPHA:16,NUM:17,COLON:18,PLUS:19,EQUALS:20,MULT:21,DOT:22,BRKT:23,SPACE:24,MINUS:25,keywords:26,stmt:27,";":28,node_stmt:29,edge_stmt:30,attr_stmt:31,"=":32,subgraph:33,attr_list:34,NODE:35,EDGE:36,"[":37,a_list:38,"]":39,",":40,edgeRHS:41,node_id:42,edgeop:43,port:44,":":45,compass_pt:46,SUBGRAPH:47,n:48,ne:49,e:50,se:51,s:52,sw:53,w:54,nw:55,c:56,ARROW_POINT:57,ARROW_OPEN:58,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",8:"{",10:"}",11:"strict",12:"GRAPH",13:"DIGRAPH",16:"ALPHA",17:"NUM",18:"COLON",19:"PLUS",20:"EQUALS",21:"MULT",22:"DOT",23:"BRKT",24:"SPACE",25:"MINUS",26:"keywords",28:";",32:"=",35:"NODE",36:"EDGE",37:"[",39:"]",40:",",45:":",47:"SUBGRAPH",48:"n",49:"ne",50:"e",51:"se",52:"s",53:"sw",54:"w",55:"nw",56:"c",57:"ARROW_POINT",58:"ARROW_OPEN"},productions_:[0,[3,2],[4,5],[4,6],[4,4],[6,1],[6,1],[7,1],[14,1],[14,2],[15,1],[15,1],[15,1],[15,1],[15,1],[15,1],[15,1],[15,1],[15,1],[15,1],[15,1],[9,1],[9,3],[27,1],[27,1],[27,1],[27,3],[27,1],[31,2],[31,2],[31,2],[34,4],[34,3],[34,3],[34,2],[38,5],[38,5],[38,3],[30,3],[30,3],[30,2],[30,2],[41,3],[41,3],[41,2],[41,2],[29,2],[29,1],[42,2],[42,1],[44,4],[44,2],[44,2],[33,5],[33,4],[33,3],[46,1],[46,1],[46,1],[46,1],[46,1],[46,1],[46,1],[46,1],[46,1],[46,0],[43,1],[43,1]],performAction:function(t,e,n,r,i,a){var s=a.length-1;switch(i){case 1:this.$=a[s-1];break;case 2:this.$=a[s-4];break;case 3:this.$=a[s-5];break;case 4:this.$=a[s-3];break;case 8:case 10:case 11:this.$=a[s];break;case 9:this.$=a[s-1]+""+a[s];break;case 12:case 13:case 14:case 15:case 16:case 18:case 19:case 20:this.$=a[s];break;case 17:this.$="<br>";break;case 39:this.$="oy";break;case 40:r.addLink(a[s-1],a[s].id,a[s].op),this.$="oy";break;case 42:r.addLink(a[s-1],a[s].id,a[s].op),this.$={op:a[s-2],id:a[s-1]};break;case 44:this.$={op:a[s-1],id:a[s]};break;case 48:r.addVertex(a[s-1]),this.$=a[s-1];break;case 49:r.addVertex(a[s]),this.$=a[s];break;case 66:this.$="arrow";break;case 67:this.$="arrow_open"}},table:[{3:1,4:2,6:3,11:[1,4],12:n,13:r},{1:[3]},{5:[1,7]},{7:8,8:[1,9],14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p},{6:23,12:n,13:r},e(g,[2,5]),e(g,[2,6]),{1:[2,1]},{8:[1,24]},{7:30,8:y,9:25,12:m,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,27:26,29:27,30:28,31:29,33:31,35:v,36:_,42:32,47:b},e([8,10,28,32,37,39,40,45,57,58],[2,7],{15:38,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p}),e(w,[2,8]),e(w,[2,10]),e(w,[2,11]),e(w,[2,12]),e(w,[2,13]),e(w,[2,14]),e(w,[2,15]),e(w,[2,16]),e(w,[2,17]),e(w,[2,18]),e(w,[2,19]),e(w,[2,20]),{7:39,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p},{7:30,8:y,9:40,12:m,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,27:26,29:27,30:28,31:29,33:31,35:v,36:_,42:32,47:b},{10:[1,41]},{10:[2,21],28:[1,42]},e(x,[2,23]),e(x,[2,24]),e(x,[2,25]),e(k,A,{44:44,32:[1,43],45:E}),e(x,[2,27],{41:46,43:47,57:D,58:T}),e(x,[2,47],{43:47,34:50,41:51,37:S,57:D,58:T}),{34:53,37:S},{34:54,37:S},{34:55,37:S},{7:56,8:[1,57],14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p},{7:30,8:y,9:58,12:m,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,27:26,29:27,30:28,31:29,33:31,35:v,36:_,42:32,47:b},e(w,[2,9]),{8:[1,59]},{10:[1,60]},{5:[2,4]},{7:30,8:y,9:61,12:m,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,27:26,29:27,30:28,31:29,33:31,35:v,36:_,42:32,47:b},{7:62,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p},e(k,[2,48]),e(k,C,{14:10,15:11,7:63,46:64,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,48:F,49:O,50:I,51:M,52:B,53:L,54:P,55:N,56:R}),e(x,[2,41],{34:74,37:S}),{7:77,8:y,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,33:76,42:75,47:b},e(j,[2,66]),e(j,[2,67]),e(x,[2,46]),e(x,[2,40],{34:78,37:S}),{7:81,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,38:79,39:[1,80]},e(x,[2,28]),e(x,[2,29]),e(x,[2,30]),{8:[1,82]},{7:30,8:y,9:83,12:m,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,27:26,29:27,30:28,31:29,33:31,35:v,36:_,42:32,47:b},{10:[1,84]},{7:30,8:y,9:85,12:m,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,27:26,29:27,30:28,31:29,33:31,35:v,36:_,42:32,47:b},{5:[2,2]},{10:[2,22]},e(x,[2,26]),e(k,[2,51],{45:[1,86]}),e(k,[2,52]),e(k,[2,56]),e(k,[2,57]),e(k,[2,58]),e(k,[2,59]),e(k,[2,60]),e(k,[2,61]),e(k,[2,62]),e(k,[2,63]),e(k,[2,64]),e(x,[2,38]),e(Y,[2,44],{43:47,41:87,57:D,58:T}),e(Y,[2,45],{43:47,41:88,57:D,58:T}),e(k,A,{44:44,45:E}),e(x,[2,39]),{39:[1,89]},e(x,[2,34],{34:90,37:S}),{32:[1,91]},{7:30,8:y,9:92,12:m,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,27:26,29:27,30:28,31:29,33:31,35:v,36:_,42:32,47:b},{10:[1,93]},e(k,[2,55]),{10:[1,94]},e(k,C,{46:95,48:F,49:O,50:I,51:M,52:B,53:L,54:P,55:N,56:R}),e(Y,[2,42]),e(Y,[2,43]),e(x,[2,33],{34:96,37:S}),e(x,[2,32]),{7:97,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p},{10:[1,98]},e(k,[2,54]),{5:[2,3]},e(k,[2,50]),e(x,[2,31]),{28:[1,99],39:[2,37],40:[1,100]},e(k,[2,53]),{7:81,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,38:101},{7:81,14:10,15:11,16:i,17:a,18:s,19:o,20:u,21:c,22:l,23:h,24:d,25:f,26:p,38:102},{39:[2,35]},{39:[2,36]}],defaultActions:{7:[2,1],41:[2,4],60:[2,2],61:[2,22],94:[2,3],101:[2,35],102:[2,36]},parseError:function(t,e){if(!e.recoverable)throw new Error(t);this.trace(t)},parse:function(t){var e=this,n=[0],r=[null],i=[],a=this.table,s="",o=0,u=0,c=0,l=2,h=1,d=i.slice.call(arguments,1),f=Object.create(this.lexer),p={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(p.yy[g]=this.yy[g]);f.setInput(t,p.yy),p.yy.lexer=f,p.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var y=f.yylloc;i.push(y);var m=f.options&&f.options.ranges;this.parseError="function"==typeof p.yy.parseError?p.yy.parseError:Object.getPrototypeOf(this).parseError;for(var v,_,b,w,x,k,A,E,D,T=function(){var t;return t=f.lex()||h,"number"!=typeof t&&(t=e.symbols_[t]||t),t},S={};;){if(b=n[n.length-1],this.defaultActions[b]?w=this.defaultActions[b]:((null===v||"undefined"==typeof v)&&(v=T()),w=a[b]&&a[b][v]),"undefined"==typeof w||!w.length||!w[0]){var C="";D=[];for(k in a[b])this.terminals_[k]&&k>l&&D.push("'"+this.terminals_[k]+"'");C=f.showPosition?"Parse error on line "+(o+1)+":\n"+f.showPosition()+"\nExpecting "+D.join(", ")+", got '"+(this.terminals_[v]||v)+"'":"Parse error on line "+(o+1)+": Unexpected "+(v==h?"end of input":"'"+(this.terminals_[v]||v)+"'"),this.parseError(C,{text:f.match,token:this.terminals_[v]||v,line:f.yylineno,loc:y,expected:D})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+v);switch(w[0]){case 1:n.push(v),r.push(f.yytext),i.push(f.yylloc),n.push(w[1]),v=null,_?(v=_,_=null):(u=f.yyleng,s=f.yytext,o=f.yylineno,y=f.yylloc,c>0&&c--);break;case 2:if(A=this.productions_[w[1]][1],S.$=r[r.length-A],S._$={first_line:i[i.length-(A||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(A||1)].first_column,last_column:i[i.length-1].last_column},m&&(S._$.range=[i[i.length-(A||1)].range[0],i[i.length-1].range[1]]),x=this.performAction.apply(S,[s,u,o,p.yy,w[1],r,i].concat(d)),"undefined"!=typeof x)return x;A&&(n=n.slice(0,-1*A*2),r=r.slice(0,-1*A),i=i.slice(0,-1*A)),n.push(this.productions_[w[1]][0]),r.push(S.$),i.push(S._$),E=a[n[n.length-2]][n[n.length-1]],n.push(E);break;case 3:return!0}}return!0}},U=function(){var t={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var e=t.match(/(?:\r\n?|\n).*/g);return e?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=t[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var t,e,n,r;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(t=this.test_match(n,i[a]),t!==!1)return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?(t=this.test_match(e,i[r]),t!==!1?t:!1):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t?t:this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){var t=this.conditionStack.length-1;return t>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return t=this.conditionStack.length-1-Math.abs(t||0),t>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,n,r){switch(n){case 0:return"STYLE";case 1:return"LINKSTYLE";case 2:return"CLASSDEF";case 3:return"CLASS";case 4:return"CLICK";case 5:return 12;case 6:return 13;case 7:return 47;case 8:return 35;case 9:return 36;case 10:return"DIR";case 11:return"DIR";case 12:return"DIR";case 13:return"DIR";case 14:return"DIR";case 15:return"DIR";case 16:return 17;case 17:return 23;case 18:return 18;case 19:return 28;case 20:return 40;case 21:return 32;case 22:return 21;case 23:return 22;case 24:return"ARROW_CROSS";case 25:return 57;case 26:return"ARROW_CIRCLE";
case 27:return 58;case 28:return 25;case 29:return 19;case 30:return 20;case 31:return 16;case 32:return"PIPE";case 33:return"PS";case 34:return"PE";case 35:return 37;case 36:return 39;case 37:return 8;case 38:return 10;case 39:return"QUOTE";case 40:return 24;case 41:return"NEWLINE";case 42:return 5}},rules:[/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:digraph\b)/,/^(?:subgraph\b)/,/^(?:node\b)/,/^(?:edge\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:--[x])/,/^(?:->)/,/^(?:--[o])/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:=)/,/^(?:[\u0021-\u0027\u002A-\u002E\u003F\u0041-\u005A\u0061-\u007A\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC_])/,/^(?:\|)/,/^(?:\()/,/^(?:\))/,/^(?:\[)/,/^(?:\])/,/^(?:\{)/,/^(?:\})/,/^(?:")/,/^(?:\s)/,/^(?:\n)/,/^(?:$)/],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],inclusive:!0}}};return t}();return $.lexer=U,t.prototype=$,$.Parser=t,new t}();"undefined"!=typeof t&&"undefined"!=typeof n&&(n.parser=i,n.Parser=i.Parser,n.parse=function(){return i.parse.apply(i,arguments)},n.main=function(e){e[1]||(console.log("Usage: "+e[0]+" FILE"),r.exit(1));var i=t("fs").readFileSync(t("path").normalize(e[1]),"utf8");return n.parser.parse(i)},"undefined"!=typeof e&&t.main===e&&n.main(r.argv.slice(1)))}).call(this,t("_process"))},{_process:3,fs:1,path:2}],93:[function(t,e,n){(function(r){"use strict";var i=function(){function t(){this.yy={}}var e=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},n=[1,4],r=[1,3],i=[1,5],a=[1,8,9,10,11,13,18,30,44,69,70,71,72,73,79,83,85,86,88,89,91,92,93],s=[2,2],o=[1,12],u=[1,13],c=[1,14],l=[1,15],h=[1,31],d=[1,33],f=[1,22],p=[1,34],g=[1,24],y=[1,25],m=[1,26],v=[1,27],_=[1,28],b=[1,36],w=[1,38],x=[1,35],k=[1,37],A=[1,43],E=[1,42],D=[1,39],T=[1,40],S=[1,41],C=[1,8,9,10,11,13,18,30,32,44,69,70,71,72,73,79,83,85,86,88,89,91,92,93],F=[1,51],O=[1,50],I=[1,52],M=[1,70],B=[1,78],L=[1,79],P=[1,64],N=[1,63],R=[1,83],j=[1,82],Y=[1,80],$=[1,81],U=[1,71],W=[1,66],G=[1,65],V=[1,61],H=[1,73],z=[1,74],q=[1,75],K=[1,76],X=[1,77],Z=[1,68],Q=[1,67],J=[8,9,11],tt=[8,9,11,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62],et=[1,112],nt=[8,9,10,11,13,15,18,36,38,40,44,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,79,83,85,86,88,89,91,92,93],rt=[8,9,10,11,12,13,15,16,17,18,30,32,36,37,38,39,40,41,44,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,69,70,71,72,73,76,79,81,83,85,86,88,89,91,92,93],it=[1,114],at=[1,115],st=[8,9,10,11,13,18,30,32,44,69,70,71,72,73,79,83,85,86,88,89,91,92,93],ot=[8,9,10,11,12,13,15,16,17,18,30,32,37,39,41,44,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,69,70,71,72,73,76,79,81,83,85,86,88,89,91,92,93],ut=[13,18,44,79,83,85,86,88,89,91,92,93],ct=[13,18,44,47,63,79,83,85,86,88,89,91,92,93],lt=[1,186],ht=[1,183],dt=[1,190],ft=[1,187],pt=[1,184],gt=[1,191],yt=[1,181],mt=[1,182],vt=[1,185],_t=[1,188],bt=[1,189],wt=[1,205],xt=[8,9,11,83],kt=[8,9,10,11,44,69,78,79,81,83,85,86,87,88,89],At={trace:function(){},yy:{},symbols_:{error:2,mermaidDoc:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,DIR:13,FirstStmtSeperator:14,TAGEND:15,TAGSTART:16,UP:17,DOWN:18,ending:19,endToken:20,spaceList:21,spaceListNewline:22,verticeStatement:23,separator:24,styleStatement:25,linkStyleStatement:26,classDefStatement:27,classStatement:28,clickStatement:29,subgraph:30,text:31,end:32,vertex:33,link:34,alphaNum:35,SQS:36,SQE:37,PS:38,PE:39,DIAMOND_START:40,DIAMOND_STOP:41,alphaNumStatement:42,alphaNumToken:43,MINUS:44,linkStatement:45,arrowText:46,TESTSTR:47,"--":48,ARROW_POINT:49,ARROW_CIRCLE:50,ARROW_CROSS:51,ARROW_OPEN:52,"-.":53,DOTTED_ARROW_POINT:54,DOTTED_ARROW_CIRCLE:55,DOTTED_ARROW_CROSS:56,DOTTED_ARROW_OPEN:57,"==":58,THICK_ARROW_POINT:59,THICK_ARROW_CIRCLE:60,THICK_ARROW_CROSS:61,THICK_ARROW_OPEN:62,PIPE:63,textToken:64,STR:65,commentText:66,commentToken:67,keywords:68,STYLE:69,LINKSTYLE:70,CLASSDEF:71,CLASS:72,CLICK:73,textNoTags:74,textNoTagsToken:75,DEFAULT:76,stylesOpt:77,HEX:78,NUM:79,commentStatement:80,PCT:81,style:82,COMMA:83,styleComponent:84,ALPHA:85,COLON:86,UNIT:87,BRKT:88,DOT:89,graphCodeTokens:90,PLUS:91,EQUALS:92,MULT:93,TAG_START:94,TAG_END:95,QUOTE:96,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"DIR",15:"TAGEND",16:"TAGSTART",17:"UP",18:"DOWN",30:"subgraph",32:"end",36:"SQS",37:"SQE",38:"PS",39:"PE",40:"DIAMOND_START",41:"DIAMOND_STOP",44:"MINUS",47:"TESTSTR",48:"--",49:"ARROW_POINT",50:"ARROW_CIRCLE",51:"ARROW_CROSS",52:"ARROW_OPEN",53:"-.",54:"DOTTED_ARROW_POINT",55:"DOTTED_ARROW_CIRCLE",56:"DOTTED_ARROW_CROSS",57:"DOTTED_ARROW_OPEN",58:"==",59:"THICK_ARROW_POINT",60:"THICK_ARROW_CIRCLE",61:"THICK_ARROW_CROSS",62:"THICK_ARROW_OPEN",63:"PIPE",65:"STR",69:"STYLE",70:"LINKSTYLE",71:"CLASSDEF",72:"CLASS",73:"CLICK",76:"DEFAULT",78:"HEX",79:"NUM",81:"PCT",83:"COMMA",85:"ALPHA",86:"COLON",87:"UNIT",88:"BRKT",89:"DOT",91:"PLUS",92:"EQUALS",93:"MULT",94:"TAG_START",95:"TAG_END",96:"QUOTE"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,4],[4,4],[4,4],[4,4],[4,4],[19,2],[19,1],[20,1],[20,1],[20,1],[14,1],[14,1],[14,2],[22,2],[22,2],[22,1],[22,1],[21,2],[21,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,5],[7,4],[24,1],[24,1],[24,1],[23,3],[23,1],[33,4],[33,5],[33,6],[33,7],[33,4],[33,5],[33,4],[33,5],[33,4],[33,5],[33,1],[33,2],[35,1],[35,2],[42,1],[42,1],[42,1],[42,1],[34,2],[34,3],[34,3],[34,1],[34,3],[34,3],[34,3],[34,3],[34,3],[34,3],[34,3],[34,3],[34,3],[34,3],[34,3],[34,3],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[45,1],[46,3],[31,1],[31,2],[31,1],[66,1],[66,2],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[74,1],[74,2],[27,5],[27,5],[28,5],[29,5],[29,7],[29,5],[29,7],[25,5],[25,5],[26,5],[26,5],[80,3],[77,1],[77,3],[82,1],[82,2],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[84,1],[67,1],[67,1],[64,1],[64,1],[64,1],[64,1],[64,1],[64,1],[64,1],[75,1],[75,1],[75,1],[75,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1]],performAction:function(t,e,n,r,i,a){var s=a.length-1;switch(i){case 2:this.$=[];break;case 3:a[s]!==[]&&a[s-1].push(a[s]),this.$=a[s-1];break;case 4:case 55:case 57:case 58:case 90:case 92:case 93:case 106:this.$=a[s];break;case 11:r.setDirection(a[s-1]),this.$=a[s-1];break;case 12:r.setDirection("LR"),this.$=a[s-1];break;case 13:r.setDirection("RL"),this.$=a[s-1];break;case 14:r.setDirection("BT"),this.$=a[s-1];break;case 15:r.setDirection("TB"),this.$=a[s-1];break;case 30:this.$=a[s-1];break;case 31:case 32:case 33:case 34:case 35:this.$=[];break;case 36:this.$=r.addSubGraph(a[s-1],a[s-3]);break;case 37:this.$=r.addSubGraph(a[s-1],void 0);break;case 41:r.addLink(a[s-2],a[s],a[s-1]),this.$=[a[s-2],a[s]];break;case 42:this.$=[a[s]];break;case 43:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"square");break;case 44:this.$=a[s-4],r.addVertex(a[s-4],a[s-2],"square");break;case 45:this.$=a[s-5],r.addVertex(a[s-5],a[s-2],"circle");break;case 46:this.$=a[s-6],r.addVertex(a[s-6],a[s-3],"circle");break;case 47:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"round");break;case 48:this.$=a[s-4],r.addVertex(a[s-4],a[s-2],"round");break;case 49:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"diamond");break;case 50:this.$=a[s-4],r.addVertex(a[s-4],a[s-2],"diamond");break;case 51:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"odd");break;case 52:this.$=a[s-4],r.addVertex(a[s-4],a[s-2],"odd");break;case 53:this.$=a[s],r.addVertex(a[s]);break;case 54:this.$=a[s-1],r.addVertex(a[s-1]);break;case 56:case 91:case 94:case 107:this.$=a[s-1]+""+a[s];break;case 59:this.$="v";break;case 60:this.$="-";break;case 61:a[s-1].text=a[s],this.$=a[s-1];break;case 62:case 63:a[s-2].text=a[s-1],this.$=a[s-2];break;case 64:this.$=a[s];break;case 65:this.$={type:"arrow",stroke:"normal",text:a[s-1]};break;case 66:this.$={type:"arrow_circle",stroke:"normal",text:a[s-1]};break;case 67:this.$={type:"arrow_cross",stroke:"normal",text:a[s-1]};break;case 68:this.$={type:"arrow_open",stroke:"normal",text:a[s-1]};break;case 69:this.$={type:"arrow",stroke:"dotted",text:a[s-1]};break;case 70:this.$={type:"arrow_circle",stroke:"dotted",text:a[s-1]};break;case 71:this.$={type:"arrow_cross",stroke:"dotted",text:a[s-1]};break;case 72:this.$={type:"arrow_open",stroke:"dotted",text:a[s-1]};break;case 73:this.$={type:"arrow",stroke:"thick",text:a[s-1]};break;case 74:this.$={type:"arrow_circle",stroke:"thick",text:a[s-1]};break;case 75:this.$={type:"arrow_cross",stroke:"thick",text:a[s-1]};break;case 76:this.$={type:"arrow_open",stroke:"thick",text:a[s-1]};break;case 77:this.$={type:"arrow",stroke:"normal"};break;case 78:this.$={type:"arrow_circle",stroke:"normal"};break;case 79:this.$={type:"arrow_cross",stroke:"normal"};break;case 80:this.$={type:"arrow_open",stroke:"normal"};break;case 81:this.$={type:"arrow",stroke:"dotted"};break;case 82:this.$={type:"arrow_circle",stroke:"dotted"};break;case 83:this.$={type:"arrow_cross",stroke:"dotted"};break;case 84:this.$={type:"arrow_open",stroke:"dotted"};break;case 85:this.$={type:"arrow",stroke:"thick"};break;case 86:this.$={type:"arrow_circle",stroke:"thick"};break;case 87:this.$={type:"arrow_cross",stroke:"thick"};break;case 88:this.$={type:"arrow_open",stroke:"thick"};break;case 89:this.$=a[s-1];break;case 108:case 109:this.$=a[s-4],r.addClass(a[s-2],a[s]);break;case 110:this.$=a[s-4],r.setClass(a[s-2],a[s]);break;case 111:this.$=a[s-4],r.setClickEvent(a[s-2],a[s],void 0,void 0);break;case 112:this.$=a[s-6],r.setClickEvent(a[s-4],a[s-2],void 0,a[s]);break;case 113:this.$=a[s-4],r.setClickEvent(a[s-2],void 0,a[s],void 0);break;case 114:this.$=a[s-6],r.setClickEvent(a[s-4],void 0,a[s-2],a[s]);break;case 115:this.$=a[s-4],r.addVertex(a[s-2],void 0,void 0,a[s]);break;case 116:case 117:case 118:this.$=a[s-4],r.updateLink(a[s-2],a[s]);break;case 120:this.$=[a[s]];break;case 121:a[s-2].push(a[s]),this.$=a[s-2];break;case 123:this.$=a[s-1]+a[s]}},table:[{3:1,4:2,9:n,10:r,12:i},{1:[3]},e(a,s,{5:6}),{4:7,9:n,10:r,12:i},{4:8,9:n,10:r,12:i},{10:[1,9]},{1:[2,1],6:10,7:11,8:o,9:u,10:c,11:l,13:h,18:d,23:16,25:17,26:18,27:19,28:20,29:21,30:f,33:23,35:29,42:30,43:32,44:p,69:g,70:y,71:m,72:v,73:_,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(a,[2,9]),e(a,[2,10]),{13:[1,44],15:[1,45],16:[1,46],17:[1,47],18:[1,48]},e(C,[2,3]),e(C,[2,4]),e(C,[2,5]),e(C,[2,6]),e(C,[2,7]),e(C,[2,8]),{8:F,9:O,11:I,24:49},{8:F,9:O,11:I,24:53},{8:F,9:O,11:I,24:54},{8:F,9:O,11:I,24:55},{8:F,9:O,11:I,24:56},{8:F,9:O,11:I,24:57},{8:F,9:O,10:M,11:I,12:B,13:L,15:P,16:N,17:R,18:j,24:59,30:Y,31:58,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(J,[2,42],{34:84,45:85,48:[1,86],49:[1,89],50:[1,90],51:[1,91],52:[1,92],53:[1,87],54:[1,93],55:[1,94],56:[1,95],57:[1,96],58:[1,88],59:[1,97],60:[1,98],61:[1,99],62:[1,100]}),{10:[1,101]},{10:[1,102]},{10:[1,103]},{10:[1,104]},{10:[1,105]},e(tt,[2,53],{43:32,21:110,42:111,10:et,13:h,15:[1,109],18:d,36:[1,106],38:[1,107],40:[1,108],44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S}),e(nt,[2,55]),e(nt,[2,57]),e(nt,[2,58]),e(nt,[2,59]),e(nt,[2,60]),e(rt,[2,148]),e(rt,[2,149]),e(rt,[2,150]),e(rt,[2,151]),e(rt,[2,152]),e(rt,[2,153]),e(rt,[2,154]),e(rt,[2,155]),e(rt,[2,156]),{8:it,9:at,10:et,14:113,21:116},{8:it,9:at,10:et,14:117,21:116},{8:it,9:at,10:et,14:118,21:116},{8:it,9:at,10:et,14:119,21:116},{8:it,9:at,10:et,14:120,21:116},e(C,[2,30]),e(C,[2,38]),e(C,[2,39]),e(C,[2,40]),e(C,[2,31]),e(C,[2,32]),e(C,[2,33]),e(C,[2,34]),e(C,[2,35]),{8:F,9:O,10:M,11:I,12:B,13:L,15:P,16:N,17:R,18:j,24:121,30:Y,32:$,43:69,44:U,48:W,58:G,64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(st,s,{5:123}),e(ot,[2,90]),e(ot,[2,92]),e(ot,[2,137]),e(ot,[2,138]),e(ot,[2,139]),e(ot,[2,140]),e(ot,[2,141]),e(ot,[2,142]),e(ot,[2,143]),e(ot,[2,144]),e(ot,[2,145]),e(ot,[2,146]),e(ot,[2,147]),e(ot,[2,95]),e(ot,[2,96]),e(ot,[2,97]),e(ot,[2,98]),e(ot,[2,99]),e(ot,[2,100]),e(ot,[2,101]),e(ot,[2,102]),e(ot,[2,103]),e(ot,[2,104]),e(ot,[2,105]),{13:h,18:d,33:124,35:29,42:30,43:32,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(ut,[2,64],{46:125,47:[1,126],63:[1,127]}),{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:128,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:129,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:130,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(ct,[2,77]),e(ct,[2,78]),e(ct,[2,79]),e(ct,[2,80]),e(ct,[2,81]),e(ct,[2,82]),e(ct,[2,83]),e(ct,[2,84]),e(ct,[2,85]),e(ct,[2,86]),e(ct,[2,87]),e(ct,[2,88]),{13:h,18:d,35:131,42:30,43:32,44:p,78:[1,132],79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{76:[1,133],79:[1,134]},{13:h,18:d,35:136,42:30,43:32,44:p,76:[1,135],79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{13:h,18:d,35:137,42:30,43:32,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{13:h,18:d,35:138,42:30,43:32,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:139,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:141,32:$,38:[1,140],43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:142,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:143,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(tt,[2,54]),e(nt,[2,56]),e(tt,[2,29],{21:144,10:et}),e(a,[2,11]),e(a,[2,21]),e(a,[2,22]),{9:[1,145]},e(a,[2,12]),e(a,[2,13]),e(a,[2,14]),e(a,[2,15]),e(st,s,{5:146}),e(ot,[2,91]),{6:10,7:11,8:o,9:u,10:c,11:l,13:h,18:d,23:16,25:17,26:18,27:19,28:20,29:21,30:f,32:[1,147],33:23,35:29,42:30,43:32,44:p,69:g,70:y,71:m,72:v,73:_,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(J,[2,41]),e(ut,[2,61],{10:[1,148]}),{10:[1,149]},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:150,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,43:69,44:U,48:W,49:[1,151],50:[1,152],51:[1,153],52:[1,154],58:G,64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,43:69,44:U,48:W,54:[1,155],55:[1,156],56:[1,157],57:[1,158],58:G,64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,43:69,44:U,48:W,58:G,59:[1,159],60:[1,160],61:[1,161],62:[1,162],64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:[1,163],13:h,18:d,42:111,43:32,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:[1,164]},{10:[1,165]},{10:[1,166]},{10:[1,167]},{10:[1,168],13:h,18:d,42:111,43:32,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:[1,169],13:h,18:d,42:111,43:32,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:[1,170],13:h,18:d,42:111,43:32,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,37:[1,171],43:69,44:U,48:W,58:G,64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,31:172,32:$,43:69,44:U,48:W,58:G,64:60,65:V,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,39:[1,173],43:69,44:U,48:W,58:G,64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,41:[1,174],43:69,44:U,48:W,58:G,64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,37:[1,175],43:69,44:U,48:W,58:G,64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(tt,[2,28]),e(a,[2,23]),{6:10,7:11,8:o,9:u,10:c,11:l,13:h,18:d,23:16,25:17,26:18,27:19,28:20,29:21,30:f,32:[1,176],33:23,35:29,42:30,43:32,44:p,69:g,70:y,71:m,72:v,73:_,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(C,[2,37]),e(ut,[2,63]),e(ut,[2,62]),{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,43:69,44:U,48:W,58:G,63:[1,177],64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(ut,[2,65]),e(ut,[2,66]),e(ut,[2,67]),e(ut,[2,68]),e(ut,[2,69]),e(ut,[2,70]),e(ut,[2,71]),e(ut,[2,72]),e(ut,[2,73]),e(ut,[2,74]),e(ut,[2,75]),e(ut,[2,76]),{10:lt,44:ht,69:dt,77:178,78:ft,79:pt,81:gt,82:179,84:180,85:yt,86:mt,87:vt,88:_t,89:bt},{10:lt,44:ht,69:dt,77:192,78:ft,79:pt,81:gt,82:179,84:180,85:yt,86:mt,87:vt,88:_t,89:bt},{10:lt,44:ht,69:dt,77:193,78:ft,79:pt,81:gt,82:179,84:180,85:yt,86:mt,87:vt,88:_t,89:bt},{10:lt,44:ht,69:dt,77:194,78:ft,79:pt,81:gt,82:179,84:180,85:yt,86:mt,87:vt,88:_t,89:bt},{10:lt,44:ht,69:dt,77:195,78:ft,79:pt,81:gt,82:179,84:180,85:yt,86:mt,87:vt,88:_t,89:bt},{10:lt,44:ht,69:dt,77:196,78:ft,79:pt,81:gt,82:179,84:180,85:yt,86:mt,87:vt,88:_t,89:bt},{13:h,18:d,35:197,42:30,43:32,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},{13:h,18:d,35:198,42:30,43:32,44:p,65:[1,199],79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(tt,[2,43],{21:200,10:et}),{10:M,12:B,13:L,15:P,16:N,17:R,18:j,30:Y,32:$,39:[1,201],43:69,44:U,48:W,58:G,64:122,68:72,69:H,70:z,71:q,72:K,73:X,75:62,76:Z,79:b,81:Q,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S},e(tt,[2,47],{21:202,10:et}),e(tt,[2,49],{21:203,10:et}),e(tt,[2,51],{21:204,10:et}),e(C,[2,36]),e([10,13,18,44,79,83,85,86,88,89,91,92,93],[2,89]),e(J,[2,115],{83:wt}),e(xt,[2,120],{84:206,10:lt,44:ht,69:dt,78:ft,79:pt,81:gt,85:yt,86:mt,87:vt,88:_t,89:bt}),e(kt,[2,122]),e(kt,[2,124]),e(kt,[2,125]),e(kt,[2,126]),e(kt,[2,127]),e(kt,[2,128]),e(kt,[2,129]),e(kt,[2,130]),e(kt,[2,131]),e(kt,[2,132]),e(kt,[2,133]),e(kt,[2,134]),e(J,[2,116],{83:wt}),e(J,[2,117],{83:wt}),e(J,[2,118],{83:wt}),e(J,[2,108],{83:wt}),e(J,[2,109],{83:wt}),e(J,[2,110],{43:32,42:111,13:h,18:d,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S}),e(J,[2,111],{43:32,42:111,10:[1,207],13:h,18:d,44:p,79:b,83:w,85:x,86:k,88:A,89:E,91:D,92:T,93:S}),e(J,[2,113],{10:[1,208]}),e(tt,[2,44]),{39:[1,209]},e(tt,[2,48]),e(tt,[2,50]),e(tt,[2,52]),{10:lt,44:ht,69:dt,78:ft,79:pt,81:gt,82:210,84:180,85:yt,86:mt,87:vt,88:_t,89:bt},e(kt,[2,123]),{65:[1,211]},{65:[1,212]},e(tt,[2,45],{21:213,10:et}),e(xt,[2,121],{84:206,10:lt,44:ht,69:dt,78:ft,79:pt,81:gt,85:yt,86:mt,87:vt,88:_t,89:bt}),e(J,[2,112]),e(J,[2,114]),e(tt,[2,46])],defaultActions:{},parseError:function(t,e){if(!e.recoverable)throw new Error(t);this.trace(t)},parse:function(t){var e=this,n=[0],r=[null],i=[],a=this.table,s="",o=0,u=0,c=0,l=2,h=1,d=i.slice.call(arguments,1),f=Object.create(this.lexer),p={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(p.yy[g]=this.yy[g]);f.setInput(t,p.yy),p.yy.lexer=f,p.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var y=f.yylloc;i.push(y);var m=f.options&&f.options.ranges;this.parseError="function"==typeof p.yy.parseError?p.yy.parseError:Object.getPrototypeOf(this).parseError;for(var v,_,b,w,x,k,A,E,D,T=function(){var t;return t=f.lex()||h,"number"!=typeof t&&(t=e.symbols_[t]||t),t},S={};;){if(b=n[n.length-1],this.defaultActions[b]?w=this.defaultActions[b]:((null===v||"undefined"==typeof v)&&(v=T()),w=a[b]&&a[b][v]),"undefined"==typeof w||!w.length||!w[0]){var C="";D=[];for(k in a[b])this.terminals_[k]&&k>l&&D.push("'"+this.terminals_[k]+"'");C=f.showPosition?"Parse error on line "+(o+1)+":\n"+f.showPosition()+"\nExpecting "+D.join(", ")+", got '"+(this.terminals_[v]||v)+"'":"Parse error on line "+(o+1)+": Unexpected "+(v==h?"end of input":"'"+(this.terminals_[v]||v)+"'"),this.parseError(C,{text:f.match,token:this.terminals_[v]||v,line:f.yylineno,loc:y,expected:D})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+v);switch(w[0]){case 1:n.push(v),r.push(f.yytext),i.push(f.yylloc),n.push(w[1]),v=null,_?(v=_,_=null):(u=f.yyleng,s=f.yytext,o=f.yylineno,y=f.yylloc,c>0&&c--);break;case 2:if(A=this.productions_[w[1]][1],S.$=r[r.length-A],S._$={first_line:i[i.length-(A||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(A||1)].first_column,last_column:i[i.length-1].last_column},m&&(S._$.range=[i[i.length-(A||1)].range[0],i[i.length-1].range[1]]),x=this.performAction.apply(S,[s,u,o,p.yy,w[1],r,i].concat(d)),"undefined"!=typeof x)return x;A&&(n=n.slice(0,-1*A*2),r=r.slice(0,-1*A),i=i.slice(0,-1*A)),n.push(this.productions_[w[1]][0]),r.push(S.$),i.push(S._$),E=a[n[n.length-2]][n[n.length-1]],n.push(E);break;case 3:return!0}}return!0}},Et=function(){var t={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var e=t.match(/(?:\r\n?|\n).*/g);return e?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=t[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var t,e,n,r;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(t=this.test_match(n,i[a]),t!==!1)return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?(t=this.test_match(e,i[r]),t!==!1?t:!1):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t?t:this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){var t=this.conditionStack.length-1;return t>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return t=this.conditionStack.length-1-Math.abs(t||0),t>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,n,r){switch(n){case 0:break;case 1:this.begin("string");break;case 2:this.popState();break;case 3:return"STR";case 4:return 69;case 5:return 76;case 6:return 70;case 7:return 71;case 8:return 72;case 9:return 73;case 10:return 12;case 11:return 30;case 12:return 32;case 13:return 13;case 14:return 13;case 15:return 13;case 16:return 13;case 17:return 13;case 18:return 13;case 19:return 79;case 20:return 88;case 21:return 86;case 22:return 8;case 23:return 83;case 24:return 93;case 25:return 16;case 26:return 15;case 27:return 17;case 28:return 18;case 29:return 51;case 30:return 49;case 31:return 50;case 32:return 52;case 33:return 56;case 34:return 54;case 35:return 55;case 36:return 57;case 37:return 56;case 38:return 54;case 39:return 55;case 40:return 57;case 41:return 61;case 42:return 59;case 43:return 60;case 44:return 62;case 45:return 48;case 46:return 53;case 47:return 58;case 48:return 44;case 49:return 89;case 50:return 91;case 51:return 81;case 52:return 92;case 53:return 92;case 54:return 85;case 55:return 63;case 56:return 38;case 57:return 39;case 58:return 36;case 59:return 37;case 60:return 40;case 61:return 41;case 62:return 96;case 63:return 9;
case 64:return 10;case 65:return 11}},rules:[/^(?:%%[^\n]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:\s*--[x]\s*)/,/^(?:\s*-->\s*)/,/^(?:\s*--[o]\s*)/,/^(?:\s*---\s*)/,/^(?:\s*-\.-[x]\s*)/,/^(?:\s*-\.->\s*)/,/^(?:\s*-\.-[o]\s*)/,/^(?:\s*-\.-\s*)/,/^(?:\s*.-[x]\s*)/,/^(?:\s*\.->\s*)/,/^(?:\s*\.-[o]\s*)/,/^(?:\s*\.-\s*)/,/^(?:\s*==[x]\s*)/,/^(?:\s*==>\s*)/,/^(?:\s*==[o]\s*)/,/^(?:\s*==[\=]\s*)/,/^(?:\s*--\s*)/,/^(?:\s*-\.\s*)/,/^(?:\s*==\s*)/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:[\u0021-\u0027\u002A-\u002E\u003F\u0041-\u005A\u005C\u005F-\u007A\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC_\/])/,/^(?:\|)/,/^(?:\()/,/^(?:\))/,/^(?:\[)/,/^(?:\])/,/^(?:\{)/,/^(?:\})/,/^(?:")/,/^(?:\n+)/,/^(?:\s)/,/^(?:$)/],conditions:{string:{rules:[2,3],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65],inclusive:!0}}};return t}();return At.lexer=Et,t.prototype=At,At.Parser=t,new t}();"undefined"!=typeof t&&"undefined"!=typeof n&&(n.parser=i,n.Parser=i.Parser,n.parse=function(){return i.parse.apply(i,arguments)},n.main=function(e){e[1]||(console.log("Usage: "+e[0]+" FILE"),r.exit(1));var i=t("fs").readFileSync(t("path").normalize(e[1]),"utf8");return n.parser.parse(i)},"undefined"!=typeof e&&t.main===e&&n.main(r.argv.slice(1)))}).call(this,t("_process"))},{_process:3,fs:1,path:2}],94:[function(t,e,n){(function(e){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var i=t("../../logger"),a=r(i),s=t("moment"),o=new a.Log,u="",c="",l=[],h=[],d="";n.clear=function(){l=[],h=[],d="",c="",m=0,f=void 0,p=void 0,w=[]},n.setDateFormat=function(t){u=t},n.getDateFormat=function(){return u},n.setTitle=function(t){c=t},n.getTitle=function(){return c},n.addSection=function(t){d=t,l.push(t)},n.getTasks=function(){for(var t=k(),e=10,n=0;!t&&e>n;)t=k(),n++;return h=w};var f,p,g=function(t,e,r){r=r.trim();var i=/^after\s+([\d\w\-]+)/,a=i.exec(r.trim());if(null!==a){var u=n.findTaskById(a[1]);if("undefined"==typeof u){var c=new Date;return c.setHours(0,0,0,0),c}return u.endTime}return s(r,e.trim(),!0).isValid()?s(r,e.trim(),!0).toDate():(o.debug("Invalid date:"+r),o.debug("With date format:"+e.trim()),new Date)},y=function(t,e,n){if(n=n.trim(),s(n,e.trim(),!0).isValid())return s(n,e.trim()).toDate();var r=s(t),i=/^([\d]+)([wdhms])/,a=i.exec(n.trim());if(null!==a){switch(a[2]){case"s":r.add(a[1],"seconds");break;case"m":r.add(a[1],"minutes");break;case"h":r.add(a[1],"hours");break;case"d":r.add(a[1],"days");break;case"w":r.add(a[1],"weeks")}return r.toDate()}return r.toDate()},m=0,v=function(t){return"undefined"==typeof t?(m+=1,"task"+m):t},_=function(t,e){var r;r=":"===e.substr(0,1)?e.substr(1,e.length):e;for(var i=r.split(","),a={},s=n.getDateFormat(),o=!0;o;)o=!1,i[0].match(/^\s*active\s*$/)&&(a.active=!0,i.shift(1),o=!0),i[0].match(/^\s*done\s*$/)&&(a.done=!0,i.shift(1),o=!0),i[0].match(/^\s*crit\s*$/)&&(a.crit=!0,i.shift(1),o=!0);var u;for(u=0;u<i.length;u++)i[u]=i[u].trim();switch(i.length){case 1:a.id=v(),a.startTime=t.endTime,a.endTime=y(a.startTime,s,i[0]);break;case 2:a.id=v(),a.startTime=g(void 0,s,i[0]),a.endTime=y(a.startTime,s,i[1]);break;case 3:a.id=v(i[0]),a.startTime=g(void 0,s,i[1]),a.endTime=y(a.startTime,s,i[2])}return a},b=function(t,e){var n;n=":"===e.substr(0,1)?e.substr(1,e.length):e;for(var r=n.split(","),i={},a=!0;a;)a=!1,r[0].match(/^\s*active\s*$/)&&(i.active=!0,r.shift(1),a=!0),r[0].match(/^\s*done\s*$/)&&(i.done=!0,r.shift(1),a=!0),r[0].match(/^\s*crit\s*$/)&&(i.crit=!0,r.shift(1),a=!0);var s;for(s=0;s<r.length;s++)r[s]=r[s].trim();switch(r.length){case 1:i.id=v(),i.startTime={type:"prevTaskEnd",id:t},i.endTime={data:r[0]};break;case 2:i.id=v(),i.startTime={type:"getStartDate",startData:r[0]},i.endTime={data:r[1]};break;case 3:i.id=v(r[0]),i.startTime={type:"getStartDate",startData:r[1]},i.endTime={data:r[2]}}return i},w=[],x={};n.addTask=function(t,e){var n={section:d,type:d,processed:!1,raw:{data:e},task:t},r=b(p,e);n.raw.startTime=r.startTime,n.raw.endTime=r.endTime,n.id=r.id,n.prevTaskId=p,n.active=r.active,n.done=r.done,n.crit=r.crit;var i=w.push(n);p=n.id,x[n.id]=i-1},n.findTaskById=function(t){var e=x[t];return w[e]},n.addTaskOrg=function(t,e){var n={section:d,type:d,description:t,task:t},r=_(f,e);n.startTime=r.startTime,n.endTime=r.endTime,n.id=r.id,n.active=r.active,n.done=r.done,n.crit=r.crit,f=n,h.push(n)};var k=function(){var t,e=n.getDateFormat(),r=function(t){var r=w[t],i="";switch(w[t].raw.startTime.type){case"prevTaskEnd":var a=n.findTaskById(r.prevTaskId);r.startTime=a.endTime;break;case"getStartDate":i=g(void 0,e,w[t].raw.startTime.startData),i&&(w[t].startTime=i)}return w[t].startTime&&(w[t].endTime=y(w[t].startTime,e,w[t].raw.endTime.data),w[t].endTime&&(w[t].processed=!0)),w[t].processed},i=!0;for(t=0;t<w.length;t++)r(t),i=i&&w[t].processed;return i};n.parseError=function(t,n){e.mermaidAPI.parseError(t,n)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../../logger":101,moment:83}],95:[function(t,e){"use strict";var n=t("./parser/gantt").parser;n.yy=t("./ganttDb");var r,i=t("../../d3"),a=t("moment"),s={titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,sidePadding:75,gridLineStartPadding:35,fontSize:11,fontFamily:'"Open-Sans", "sans-serif"'};e.exports.setConf=function(t){var e=Object.keys(t);e.forEach(function(e){s[e]=t[e]})};var o;e.exports.draw=function(t,e){function u(t,e,n){var r=s.barHeight,a=r+s.barGap,o=s.topPadding,u=s.sidePadding,f=i.scale.linear().domain([0,k.length]).range(["#00B9FA","#F95002"]).interpolate(i.interpolateHcl);l(u,o,e,n),c(t,a,o,u,r,f,e,n),h(a,o,u,r,f),d(u,o,e,n)}function c(t,e,n,r,i,a,o){_.append("g").selectAll("rect").data(t).enter().append("rect").attr("x",0).attr("y",function(t,r){return r*e+n-2}).attr("width",function(){return o-r/2}).attr("height",e).attr("class",function(t){for(var e=0;e<k.length;e++)if(t.type===k[e])return"section section"+e%s.numberSectionStyles;return"section section0"});var u=_.append("g").selectAll("rect").data(t).enter();u.append("rect").attr("rx",3).attr("ry",3).attr("x",function(t){return x(t.startTime)+r}).attr("y",function(t,r){return r*e+n}).attr("width",function(t){return x(t.endTime)-x(t.startTime)}).attr("height",i).attr("class",function(t){for(var e="task ",n=0,r=0;r<k.length;r++)t.type===k[r]&&(n=r%s.numberSectionStyles);return t.active?t.crit?e+" activeCrit"+n:e+" active"+n:t.done?t.crit?e+" doneCrit"+n:e+" done"+n:t.crit?e+" crit"+n:e+" task"+n}),u.append("text").text(function(t){return t.task}).attr("font-size",s.fontSize).attr("x",function(t){var e=x(t.startTime),n=x(t.endTime),i=this.getBBox().width;return i>n-e?n+i+1.5*s.sidePadding>o?e+r-5:n+r+5:(n-e)/2+e+r}).attr("y",function(t,r){return r*e+s.barHeight/2+(s.fontSize/2-2)+n}).attr("text-height",i).attr("class",function(t){for(var e=x(t.startTime),n=x(t.endTime),r=this.getBBox().width,i=0,a=0;a<k.length;a++)t.type===k[a]&&(i=a%s.numberSectionStyles);var u="";return t.active&&(u=t.crit?"activeCritText"+i:"activeText"+i),t.done?u=t.crit?u+" doneCritText"+i:u+" doneText"+i:t.crit&&(u=u+" critText"+i),r>n-e?n+r+1.5*s.sidePadding>o?"taskTextOutsideLeft taskTextOutside"+i+" "+u:"taskTextOutsideRight taskTextOutside"+i+" "+u:"taskText taskText"+i+" "+u})}function l(t,e,n,a){var o,u=[[".%L",function(t){return t.getMilliseconds()}],[":%S",function(t){return t.getSeconds()}],["h1 %I:%M",function(t){return t.getMinutes()}]],c=[["%Y",function(){return!0}]],l=[["%I:%M",function(t){return t.getHours()}],["%a %d",function(t){return t.getDay()&&1!=t.getDate()}],["%b %d",function(t){return 1!=t.getDate()}],["%B",function(t){return t.getMonth()}]];"undefined"!=typeof s.axisFormatter&&(l=[],s.axisFormatter.forEach(function(t){var e=[];e[0]=t[0],e[1]=t[1],l.push(e)})),o=u.concat(l).concat(c);var h=i.svg.axis().scale(x).orient("bottom").tickSize(-a+e+s.gridLineStartPadding,0,0).tickFormat(i.time.format.multi(o));r>7&&230>r&&(h=h.ticks(i.time.monday.range)),_.append("g").attr("class","grid").attr("transform","translate("+t+", "+(a-50)+")").call(h).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em")}function h(t,e){for(var n=[],r=0,i=0;i<k.length;i++)n[i]=[k[i],g(k[i],E)];_.append("g").selectAll("text").data(n).enter().append("text").text(function(t){return t[0]}).attr("x",10).attr("y",function(i,a){if(!(a>0))return i[1]*t/2+e;for(var s=0;a>s;s++)return r+=n[a-1][1],i[1]*t/2+r*t+e}).attr("class",function(t){for(var e=0;e<k.length;e++)if(t[0]===k[e])return"sectionTitle sectionTitle"+e%s.numberSectionStyles;return"sectionTitle"})}function d(t,e,n,r){var i=_.append("g").attr("class","today"),a=new Date;i.append("line").attr("x1",x(a)+t).attr("x2",x(a)+t).attr("y1",s.titleTopMargin).attr("y2",r-s.titleTopMargin).attr("class","today")}function f(t){for(var e={},n=[],r=0,i=t.length;i>r;++r)e.hasOwnProperty(t[r])||(e[t[r]]=!0,n.push(t[r]));return n}function p(t){for(var e=t.length,n={};e;)n[t[--e]]=(n[t[e]]||0)+1;return n}function g(t,e){return p(e)[t]||0}n.yy.clear(),n.parse(t);var y=document.getElementById(e);o=y.parentElement.offsetWidth,"undefined"==typeof o&&(o=1200),"undefined"!=typeof s.useWidth&&(o=s.useWidth);var m=n.yy.getTasks(),v=m.length*(s.barHeight+s.barGap)+2*s.topPadding;y.setAttribute("height","100%"),y.setAttribute("viewBox","0 0 "+o+" "+v);var _=i.select("#"+e),b=i.min(m,function(t){return t.startTime}),w=i.max(m,function(t){return t.endTime}),x=i.time.scale().domain([i.min(m,function(t){return t.startTime}),i.max(m,function(t){return t.endTime})]).rangeRound([0,o-150]),k=[];r=a.duration(w-b).asDays();for(var A=0;A<m.length;A++)k.push(m[A].type);var E=k;k=f(k),u(m,o,v),"undefined"!=typeof s.useWidth&&y.setAttribute("width",o),_.append("text").text(n.yy.getTitle()).attr("x",o/2).attr("y",s.titleTopMargin).attr("class","titleText")}},{"../../d3":85,"./ganttDb":94,"./parser/gantt":96,moment:83}],96:[function(t,e,n){(function(r){"use strict";var i=function(){function t(){this.yy={}}var e=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},n=[6,8,10,11,12,13,14],r=[1,9],i=[1,10],a=[1,11],s=[1,12],o={trace:function(){},yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,dateFormat:11,title:12,section:13,taskTxt:14,taskData:15,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",11:"dateFormat",12:"title",13:"section",14:"taskTxt",15:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,1],[9,1],[9,2]],performAction:function(t,e,n,r,i,a){var s=a.length-1;switch(i){case 1:return a[s-1];case 2:this.$=[];break;case 3:a[s-1].push(a[s]),this.$=a[s-1];break;case 4:case 5:this.$=a[s];break;case 6:case 7:this.$=[];break;case 8:r.setDateFormat(a[s].substr(11)),this.$=a[s].substr(11);break;case 9:r.setTitle(a[s].substr(6)),this.$=a[s].substr(6);break;case 10:r.addSection(a[s].substr(8)),this.$=a[s].substr(8);break;case 11:r.addTask(a[s-1],a[s]),this.$="task"}},table:[{3:1,4:[1,2]},{1:[3]},e(n,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:i,13:a,14:s},e(n,[2,7],{1:[2,1]}),e(n,[2,3]),{9:13,11:r,12:i,13:a,14:s},e(n,[2,5]),e(n,[2,6]),e(n,[2,8]),e(n,[2,9]),e(n,[2,10]),{15:[1,14]},e(n,[2,4]),e(n,[2,11])],defaultActions:{},parseError:function(t,e){if(!e.recoverable)throw new Error(t);this.trace(t)},parse:function(t){var e=this,n=[0],r=[null],i=[],a=this.table,s="",o=0,u=0,c=0,l=2,h=1,d=i.slice.call(arguments,1),f=Object.create(this.lexer),p={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(p.yy[g]=this.yy[g]);f.setInput(t,p.yy),p.yy.lexer=f,p.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var y=f.yylloc;i.push(y);var m=f.options&&f.options.ranges;this.parseError="function"==typeof p.yy.parseError?p.yy.parseError:Object.getPrototypeOf(this).parseError;for(var v,_,b,w,x,k,A,E,D,T=function(){var t;return t=f.lex()||h,"number"!=typeof t&&(t=e.symbols_[t]||t),t},S={};;){if(b=n[n.length-1],this.defaultActions[b]?w=this.defaultActions[b]:((null===v||"undefined"==typeof v)&&(v=T()),w=a[b]&&a[b][v]),"undefined"==typeof w||!w.length||!w[0]){var C="";D=[];for(k in a[b])this.terminals_[k]&&k>l&&D.push("'"+this.terminals_[k]+"'");C=f.showPosition?"Parse error on line "+(o+1)+":\n"+f.showPosition()+"\nExpecting "+D.join(", ")+", got '"+(this.terminals_[v]||v)+"'":"Parse error on line "+(o+1)+": Unexpected "+(v==h?"end of input":"'"+(this.terminals_[v]||v)+"'"),this.parseError(C,{text:f.match,token:this.terminals_[v]||v,line:f.yylineno,loc:y,expected:D})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+v);switch(w[0]){case 1:n.push(v),r.push(f.yytext),i.push(f.yylloc),n.push(w[1]),v=null,_?(v=_,_=null):(u=f.yyleng,s=f.yytext,o=f.yylineno,y=f.yylloc,c>0&&c--);break;case 2:if(A=this.productions_[w[1]][1],S.$=r[r.length-A],S._$={first_line:i[i.length-(A||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(A||1)].first_column,last_column:i[i.length-1].last_column},m&&(S._$.range=[i[i.length-(A||1)].range[0],i[i.length-1].range[1]]),x=this.performAction.apply(S,[s,u,o,p.yy,w[1],r,i].concat(d)),"undefined"!=typeof x)return x;A&&(n=n.slice(0,-1*A*2),r=r.slice(0,-1*A),i=i.slice(0,-1*A)),n.push(this.productions_[w[1]][0]),r.push(S.$),i.push(S._$),E=a[n[n.length-2]][n[n.length-1]],n.push(E);break;case 3:return!0}}return!0}},u=function(){var t={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var e=t.match(/(?:\r\n?|\n).*/g);return e?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=t[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var t,e,n,r;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(t=this.test_match(n,i[a]),t!==!1)return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?(t=this.test_match(e,i[r]),t!==!1?t:!1):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t?t:this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){var t=this.conditionStack.length-1;return t>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return t=this.conditionStack.length-1-Math.abs(t||0),t>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 10;case 1:break;case 2:break;case 3:break;case 4:return 4;case 5:return 11;case 6:return"date";case 7:return 12;case 8:return 13;case 9:return 14;case 10:return 15;case 11:return":";case 12:return 6;case 13:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13],inclusive:!0}}};return t}();return o.lexer=u,t.prototype=o,o.Parser=t,new t}();"undefined"!=typeof t&&"undefined"!=typeof n&&(n.parser=i,n.Parser=i.Parser,n.parse=function(){return i.parse.apply(i,arguments)},n.main=function(e){e[1]||(console.log("Usage: "+e[0]+" FILE"),r.exit(1));var i=t("fs").readFileSync(t("path").normalize(e[1]),"utf8");return n.parser.parse(i)},"undefined"!=typeof e&&t.main===e&&n.main(r.argv.slice(1)))}).call(this,t("_process"))},{_process:3,fs:1,path:2}],97:[function(t,e,n){(function(r){"use strict";var i=function(){function t(){this.yy={}}var e=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},n=[6,8,10,11,15,17,19,20,22,33],r=[2,2],i=[1,6],a=[1,8],s=[1,9],o=[1,12],u=[1,13],c=[1,14],l=[1,15],h=[1,17],d=[1,18],f=[2,7],p=[6,8,10,11,15,17,18,19,20,21,22,33],g=[6,8,10,11,15,17,18,19,20,22,33],y=[1,46],m=[1,49],v=[1,53],_={trace:function(){},yy:{},symbols_:{error:2,start:3,SD:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,participant:11,actor:12,signal:13,note_statement:14,title:15,text:16,loop:17,end:18,opt:19,alt:20,"else":21,note:22,placement:23,text2:24,over:25,spaceList:26,actor_pair:27,",":28,left_of:29,right_of:30,signaltype:31,actors:32,ACTOR:33,SOLID_OPEN_ARROW:34,DOTTED_OPEN_ARROW:35,SOLID_ARROW:36,DOTTED_ARROW:37,SOLID_CROSS:38,DOTTED_CROSS:39,TXT:40,$accept:0,$end:1},terminals_:{2:"error",4:"SD",6:"EOF",8:"SPACE",10:"NL",11:"participant",15:"title",16:"text",17:"loop",18:"end",19:"opt",20:"alt",21:"else",22:"note",25:"over",28:",",29:"left_of",30:"right_of",33:"ACTOR",34:"SOLID_OPEN_ARROW",35:"DOTTED_OPEN_ARROW",36:"SOLID_ARROW",37:"DOTTED_ARROW",38:"SOLID_CROSS",39:"DOTTED_CROSS",40:"TXT"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,3],[9,2],[9,2],[9,4],[9,4],[9,4],[9,7],[14,4],[14,5],[26,2],[26,1],[27,1],[27,3],[23,1],[23,1],[13,4],[32,2],[32,1],[12,1],[31,1],[31,1],[31,1],[31,1],[31,1],[31,1],[24,1]],performAction:function(t,e,n,r,i,a){var s=a.length-1;switch(i){case 1:return r.apply(a[s-1]),a[s-1];case 2:this.$=[];break;case 3:a[s-1].push(a[s]),this.$=a[s-1];break;case 4:case 5:this.$=a[s];break;case 6:case 7:this.$=[];break;case 8:this.$=a[s-1];break;case 12:a[s-1].unshift({type:"loopStart",loopText:a[s-2].actor,signalType:r.LINETYPE.LOOP_START}),a[s-1].push({type:"loopEnd",loopText:a[s-2],signalType:r.LINETYPE.LOOP_END}),this.$=a[s-1];break;case 13:a[s-1].unshift({type:"optStart",optText:a[s-2].actor,signalType:r.LINETYPE.OPT_START}),a[s-1].push({type:"optEnd",optText:a[s-2].actor,signalType:r.LINETYPE.OPT_END}),this.$=a[s-1];break;case 14:a[s-4].unshift({type:"altStart",altText:a[s-5].actor,signalType:r.LINETYPE.ALT_START}),a[s-4].push({type:"else",altText:a[s-2].actor,signalType:r.LINETYPE.ALT_ELSE}),a[s-4]=a[s-4].concat(a[s-1]),a[s-4].push({type:"altEnd",signalType:r.LINETYPE.ALT_END}),this.$=a[s-4];break;case 15:this.$=[a[s-1],{type:"addNote",placement:a[s-2],actor:a[s-1].actor,text:a[s]}];break;case 19:this.$=a[s];break;case 20:this.$=[a[s-2],a[s]];break;case 21:this.$=r.PLACEMENT.LEFTOF;break;case 22:this.$=r.PLACEMENT.RIGHTOF;break;case 23:this.$=[a[s-3],a[s-1],{type:"addMessage",from:a[s-3].actor,to:a[s-1].actor,signalType:a[s-2],msg:a[s]}];break;case 26:this.$={type:"addActor",actor:a[s]};break;case 27:this.$=r.LINETYPE.SOLID_OPEN;break;case 28:this.$=r.LINETYPE.DOTTED_OPEN;break;case 29:this.$=r.LINETYPE.SOLID;break;case 30:this.$=r.LINETYPE.DOTTED;break;case 31:this.$=r.LINETYPE.SOLID_CROSS;break;case 32:this.$=r.LINETYPE.DOTTED_CROSS;break;case 33:this.$=a[s].substring(1).trim().replace(/\\n/gm,"\n")}},table:[{3:1,4:[1,2]},{1:[3]},e(n,r,{5:3}),{6:[1,4],7:5,8:i,9:7,10:a,11:s,12:16,13:10,14:11,15:o,17:u,19:c,20:l,22:h,33:d},e(n,f,{1:[2,1]}),e(p,[2,3]),{9:19,11:s,12:16,13:10,14:11,15:o,17:u,19:c,20:l,22:h,33:d},e(p,[2,5]),e(p,[2,6]),{12:20,33:d},{10:[1,21]},{10:[1,22]},{8:[1,23]},{12:24,33:d},{12:25,33:d},{12:26,33:d},{31:27,34:[1,28],35:[1,29],36:[1,30],37:[1,31],38:[1,32],39:[1,33]},{23:34,25:[1,35],29:[1,36],30:[1,37]},e([6,8,10,11,15,17,18,19,20,21,22,28,33,34,35,36,37,38,39,40],[2,26]),e(p,[2,4]),{10:[1,38]},e(p,[2,9]),e(p,[2,10]),{16:[1,39]},e(g,r,{5:40}),e(g,r,{5:41}),e([6,8,10,11,15,17,19,20,21,22,33],r,{5:42}),{12:43,33:d},{33:[2,27]},{33:[2,28]},{33:[2,29]},{33:[2,30]},{33:[2,31]},{33:[2,32]},{12:44,33:d},{8:y,26:45},{33:[2,21]},{33:[2,22]},e(p,[2,8]),{10:[1,47]},{6:m,7:5,8:i,9:7,10:a,11:s,12:16,13:10,14:11,15:o,17:u,18:[1,48],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:s,12:16,13:10,14:11,15:o,17:u,18:[1,50],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:s,12:16,13:10,14:11,15:o,17:u,19:c,20:l,21:[1,51],22:h,33:d},{24:52,40:v},{24:54,40:v},{12:56,27:55,33:d},{8:y,26:57,33:[2,18]},e(p,[2,11]),e(p,[2,12]),e(p,f),e(p,[2,13]),{12:58,33:d},{10:[2,23]},{10:[2,33]},{10:[2,15]},{12:59,33:d},{28:[1,60],33:[2,19]},{33:[2,17]},e(g,r,{5:61}),{10:[2,16]},{12:62,33:d},{6:m,7:5,8:i,9:7,10:a,11:s,12:16,13:10,14:11,15:o,17:u,18:[1,63],19:c,20:l,22:h,33:d},{33:[2,20]},e(p,[2,14])],defaultActions:{28:[2,27],29:[2,28],30:[2,29],31:[2,30],32:[2,31],33:[2,32],36:[2,21],37:[2,22],52:[2,23],53:[2,33],54:[2,15],57:[2,17],59:[2,16],62:[2,20]},parseError:function(t,e){if(!e.recoverable)throw new Error(t);this.trace(t)},parse:function(t){var e=this,n=[0],r=[null],i=[],a=this.table,s="",o=0,u=0,c=0,l=2,h=1,d=i.slice.call(arguments,1),f=Object.create(this.lexer),p={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(p.yy[g]=this.yy[g]);f.setInput(t,p.yy),p.yy.lexer=f,p.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var y=f.yylloc;i.push(y);var m=f.options&&f.options.ranges;this.parseError="function"==typeof p.yy.parseError?p.yy.parseError:Object.getPrototypeOf(this).parseError;for(var v,_,b,w,x,k,A,E,D,T=function(){var t;return t=f.lex()||h,"number"!=typeof t&&(t=e.symbols_[t]||t),t},S={};;){if(b=n[n.length-1],this.defaultActions[b]?w=this.defaultActions[b]:((null===v||"undefined"==typeof v)&&(v=T()),w=a[b]&&a[b][v]),"undefined"==typeof w||!w.length||!w[0]){var C="";D=[];for(k in a[b])this.terminals_[k]&&k>l&&D.push("'"+this.terminals_[k]+"'");C=f.showPosition?"Parse error on line "+(o+1)+":\n"+f.showPosition()+"\nExpecting "+D.join(", ")+", got '"+(this.terminals_[v]||v)+"'":"Parse error on line "+(o+1)+": Unexpected "+(v==h?"end of input":"'"+(this.terminals_[v]||v)+"'"),this.parseError(C,{text:f.match,token:this.terminals_[v]||v,line:f.yylineno,loc:y,expected:D})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+v);switch(w[0]){case 1:n.push(v),r.push(f.yytext),i.push(f.yylloc),n.push(w[1]),v=null,_?(v=_,_=null):(u=f.yyleng,s=f.yytext,o=f.yylineno,y=f.yylloc,c>0&&c--);break;case 2:if(A=this.productions_[w[1]][1],S.$=r[r.length-A],S._$={first_line:i[i.length-(A||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(A||1)].first_column,last_column:i[i.length-1].last_column},m&&(S._$.range=[i[i.length-(A||1)].range[0],i[i.length-1].range[1]]),x=this.performAction.apply(S,[s,u,o,p.yy,w[1],r,i].concat(d)),"undefined"!=typeof x)return x;A&&(n=n.slice(0,-1*A*2),r=r.slice(0,-1*A),i=i.slice(0,-1*A)),n.push(this.productions_[w[1]][0]),r.push(S.$),i.push(S._$),E=a[n[n.length-2]][n[n.length-1]],n.push(E);break;case 3:return!0}}return!0}},b=function(){var t={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var e=t.match(/(?:\r\n?|\n).*/g);return e?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);
this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=t[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var t,e,n,r;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(t=this.test_match(n,i[a]),t!==!1)return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?(t=this.test_match(e,i[r]),t!==!1?t:!1):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return t?t:this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){var t=this.conditionStack.length-1;return t>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return t=this.conditionStack.length-1-Math.abs(t||0),t>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 10;case 1:return 38;case 2:return 39;case 3:return 36;case 4:return 37;case 5:break;case 6:break;case 7:break;case 8:return 11;case 9:return 19;case 10:return 17;case 11:return 20;case 12:return 21;case 13:return 18;case 14:return 29;case 15:return 30;case 16:return 25;case 17:return 22;case 18:return 15;case 19:return 4;case 20:return 28;case 21:return 10;case 22:return 33;case 23:return 34;case 24:return 35;case 25:return 36;case 26:return 37;case 27:return 40;case 28:return 6;case 29:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:[\-][x])/i,/^(?:[\-][\-][x])/i,/^(?:[\-][>][>])/i,/^(?:[\-][\-][>][>])/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:participant\b)/i,/^(?:opt\b)/i,/^(?:loop\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:title\b)/i,/^(?:sequenceDiagram\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\->:\n,;]+)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?::[^#\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29],inclusive:!0}}};return t}();return _.lexer=b,t.prototype=_,_.Parser=t,new t}();"undefined"!=typeof t&&"undefined"!=typeof n&&(n.parser=i,n.Parser=i.Parser,n.parse=function(){return i.parse.apply(i,arguments)},n.main=function(e){e[1]||(console.log("Usage: "+e[0]+" FILE"),r.exit(1));var i=t("fs").readFileSync(t("path").normalize(e[1]),"utf8");return n.parser.parse(i)},"undefined"!=typeof e&&t.main===e&&n.main(r.argv.slice(1)))}).call(this,t("_process"))},{_process:3,fs:1,path:2}],98:[function(t,e,n){(function(e){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var i=t("../../logger"),a=r(i),s={},o=[],u=[],c=[],l=new a.Log;n.addActor=function(t,e,n){s[t]={name:e,description:n},o.push(t)},n.addMessage=function(t,e,n,r){u.push({from:t,to:e,message:n,answer:r})},n.addSignal=function(t,e,n,r){l.debug("Adding message from="+t+" to="+e+" message="+n+" type="+r),u.push({from:t,to:e,message:n,type:r})},n.getMessages=function(){return u},n.getActors=function(){return s},n.getActor=function(t){return s[t]},n.getActorKeys=function(){return Object.keys(s)},n.clear=function(){s={},u=[]},n.LINETYPE={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16},n.ARROWTYPE={FILLED:0,OPEN:1},n.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},n.addNote=function(t,e,r){var i={actor:t,placement:e,message:r};c.push(i),u.push({from:t,to:t,message:r,type:n.LINETYPE.NOTE,placement:e})},n.parseError=function(t,n){e.mermaidAPI.parseError(t,n)},n.apply=function(t){if(t instanceof Array)t.forEach(function(t){n.apply(t)});else switch(t.type){case"addActor":n.addActor(t.actor,t.actor,t.actor);break;case"addNote":n.addNote(t.actor,t.placement,t.text);break;case"addMessage":n.addSignal(t.from,t.to,t.msg,t.signalType);break;case"loopStart":n.addSignal(void 0,void 0,t.loopText,t.signalType);break;case"loopEnd":n.addSignal(void 0,void 0,void 0,t.signalType);break;case"optStart":n.addSignal(void 0,void 0,t.optText,t.signalType);break;case"optEnd":n.addSignal(void 0,void 0,void 0,t.signalType);break;case"altStart":n.addSignal(void 0,void 0,t.altText,t.signalType);break;case"else":n.addSignal(void 0,void 0,t.altText,t.signalType);break;case"altEnd":n.addSignal(void 0,void 0,void 0,t.signalType)}}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../../logger":101}],99:[function(t,e,n){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var i=t("../../logger"),a=r(i),s=t("./parser/sequenceDiagram").parser;s.yy=t("./sequenceDb");var o=t("./svgDraw"),u=t("../../d3"),c=new a.Log,l={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,mirrorActors:!1,bottomMarginAdj:1};n.bounds={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,list:[],init:function(){this.list=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},updateVal:function(t,e,n,r){t[e]="undefined"==typeof t[e]?n:r(n,t[e])},updateLoops:function(t,e,r,i){var a=this,s=0;this.list.forEach(function(o){s++;var u=a.list.length-s+1;a.updateVal(o,"startx",t-u*l.boxMargin,Math.min),a.updateVal(o,"starty",e-u*l.boxMargin,Math.min),a.updateVal(o,"stopx",r+u*l.boxMargin,Math.max),a.updateVal(o,"stopy",i+u*l.boxMargin,Math.max),a.updateVal(n.bounds.data,"startx",t-u*l.boxMargin,Math.min),a.updateVal(n.bounds.data,"starty",e-u*l.boxMargin,Math.min),a.updateVal(n.bounds.data,"stopx",r+u*l.boxMargin,Math.max),a.updateVal(n.bounds.data,"stopy",i+u*l.boxMargin,Math.max)})},insert:function(t,e,r,i){var a,s,o,u;a=Math.min(t,r),o=Math.max(t,r),s=Math.min(e,i),u=Math.max(e,i),this.updateVal(n.bounds.data,"startx",a,Math.min),this.updateVal(n.bounds.data,"starty",s,Math.min),this.updateVal(n.bounds.data,"stopx",o,Math.max),this.updateVal(n.bounds.data,"stopy",u,Math.max),this.updateLoops(a,s,o,u)},newLoop:function(t){this.list.push({startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t})},endLoop:function(){var t=this.list.pop();return t},addElseToLoop:function(t){var e=this.list.pop();e.elsey=n.bounds.getVerticalPos(),e.elseText=t,this.list.push(e)},bumpVerticalPos:function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}};var h=function(t,e,r,i){var a=o.getNoteRect();a.x=e,a.y=r,a.width=l.width,a["class"]="note";var s=t.append("g"),u=o.drawRect(s,a),c=o.getTextObj();c.x=e-4,c.y=r-13,c.textMargin=l.noteMargin,c.dy="1em",c.text=i.message,c["class"]="noteText";var h=o.drawText(s,c,l.width-l.noteMargin),d=h[0][0].getBBox().height;d>l.width?(h.remove(),s=t.append("g"),h=o.drawText(s,c,2*l.width-l.noteMargin),d=h[0][0].getBBox().height,u.attr("width",2*l.width),n.bounds.insert(e,r,e+2*l.width,r+2*l.noteMargin+d)):n.bounds.insert(e,r,e+l.width,r+2*l.noteMargin+d),u.attr("height",d+2*l.noteMargin),n.bounds.bumpVerticalPos(d+2*l.noteMargin)},d=function(t,e,r,i,a){var o,u=t.append("g"),c=e+(r-e)/2,l=u.append("text").attr("x",c).attr("y",i-7).style("text-anchor","middle").attr("class","messageText").text(a.message);o="undefined"!=typeof l[0][0].getBBox?l[0][0].getBBox().width:l[0][0].getBoundingClientRect();var h;if(e===r){h=u.append("path").attr("d","M "+e+","+i+" C "+(e+60)+","+(i-10)+" "+(e+60)+","+(i+30)+" "+e+","+(i+20)),n.bounds.bumpVerticalPos(30);var d=Math.max(o/2,100);n.bounds.insert(e-d,n.bounds.getVerticalPos()-10,r+d,n.bounds.getVerticalPos())}else h=u.append("line"),h.attr("x1",e),h.attr("y1",i),h.attr("x2",r),h.attr("y2",i),n.bounds.insert(e,n.bounds.getVerticalPos()-10,r,n.bounds.getVerticalPos());a.type===s.yy.LINETYPE.DOTTED||a.type===s.yy.LINETYPE.DOTTED_CROSS||a.type===s.yy.LINETYPE.DOTTED_OPEN?(h.style("stroke-dasharray","3, 3"),h.attr("class","messageLine1")):h.attr("class","messageLine0");var f=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search;f=f.replace(/\(/g,"\\("),f=f.replace(/\)/g,"\\)"),h.attr("stroke-width",2),h.attr("stroke","black"),h.style("fill","none"),(a.type===s.yy.LINETYPE.SOLID||a.type===s.yy.LINETYPE.DOTTED)&&h.attr("marker-end","url("+f+"#arrowhead)"),(a.type===s.yy.LINETYPE.SOLID_CROSS||a.type===s.yy.LINETYPE.DOTTED_CROSS)&&h.attr("marker-end","url("+f+"#crosshead)")};e.exports.drawActors=function(t,e,r,i){var a;for(a=0;a<r.length;a++){var s=r[a];e[s].x=a*l.actorMargin+a*l.width,e[s].y=i,e[s].width=l.diagramMarginY,e[s].height=l.diagramMarginY,o.drawActor(t,e[s].x,i,e[s].description,l),n.bounds.insert(e[s].x,i,e[s].x+l.width,l.height)}n.bounds.bumpVerticalPos(l.height)},e.exports.setConf=function(t){var e=Object.keys(t);e.forEach(function(e){l[e]=t[e]})},e.exports.draw=function(t,r){s.yy.clear(),s.parse(t+"\n"),n.bounds.init();var i,a,f=u.select("#"+r),p=s.yy.getActors(),g=s.yy.getActorKeys(),y=s.yy.getMessages();e.exports.drawActors(f,p,g,0),o.insertArrowHead(f),o.insertArrowCrossHead(f),y.forEach(function(t){var e;switch(t.type){case s.yy.LINETYPE.NOTE:n.bounds.bumpVerticalPos(l.boxMargin),i=p[t.from].x,a=p[t.to].x,0!==t.placement?h(f,i+(l.width+l.actorMargin)/2,n.bounds.getVerticalPos(),t):h(f,i-(l.width+l.actorMargin)/2,n.bounds.getVerticalPos(),t);break;case s.yy.LINETYPE.LOOP_START:n.bounds.bumpVerticalPos(l.boxMargin),n.bounds.newLoop(t.message),n.bounds.bumpVerticalPos(l.boxMargin+l.boxTextMargin);break;case s.yy.LINETYPE.LOOP_END:e=n.bounds.endLoop(),o.drawLoop(f,e,"loop",l),n.bounds.bumpVerticalPos(l.boxMargin);break;case s.yy.LINETYPE.OPT_START:n.bounds.bumpVerticalPos(l.boxMargin),n.bounds.newLoop(t.message),n.bounds.bumpVerticalPos(l.boxMargin+l.boxTextMargin);break;case s.yy.LINETYPE.OPT_END:e=n.bounds.endLoop(),o.drawLoop(f,e,"opt",l),n.bounds.bumpVerticalPos(l.boxMargin);break;case s.yy.LINETYPE.ALT_START:n.bounds.bumpVerticalPos(l.boxMargin),n.bounds.newLoop(t.message),n.bounds.bumpVerticalPos(l.boxMargin+l.boxTextMargin);break;case s.yy.LINETYPE.ALT_ELSE:n.bounds.bumpVerticalPos(l.boxMargin),e=n.bounds.addElseToLoop(t.message),n.bounds.bumpVerticalPos(l.boxMargin);break;case s.yy.LINETYPE.ALT_END:e=n.bounds.endLoop(),o.drawLoop(f,e,"alt",l),n.bounds.bumpVerticalPos(l.boxMargin);break;default:n.bounds.bumpVerticalPos(l.messageMargin),i=p[t.from].x+l.width/2,a=p[t.to].x+l.width/2,d(f,i,a,n.bounds.getVerticalPos(),t)}}),l.mirrorActors&&(n.bounds.bumpVerticalPos(2*l.boxMargin),e.exports.drawActors(f,p,g,n.bounds.getVerticalPos()));var m=n.bounds.getBounds();c.debug("For line height fix Querying: #"+r+" .actor-line");var v=u.selectAll("#"+r+" .actor-line");v.attr("y2",m.stopy);var _=m.stopy-m.starty+2*l.diagramMarginY;l.mirrorActors&&(_=_-l.boxMargin+l.bottomMarginAdj);var b=m.stopx-m.startx+2*l.diagramMarginX;l.useMaxWidth?(f.attr("height","100%"),f.attr("width","100%"),f.attr("style","max-width:"+b+"px;")):(f.attr("height",_),f.attr("width",b)),f.attr("viewBox",m.startx-l.diagramMarginX+" -"+l.diagramMarginY+" "+b+" "+_)}},{"../../d3":85,"../../logger":101,"./parser/sequenceDiagram":97,"./sequenceDb":98,"./svgDraw":100}],100:[function(t,e,n){"use strict";n.drawRect=function(t,e){var n=t.append("rect");return n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),n.attr("rx",e.rx),n.attr("ry",e.ry),"undefined"!=typeof e["class"]&&n.attr("class",e["class"]),n},n.drawText=function(t,e,n){var r=e.text.replace(/<br\/?>/gi," "),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.attr("fill",e.fill),"undefined"!=typeof e["class"]&&i.attr("class",e["class"]);var a=i.append("tspan");return a.attr("x",e.x+2*e.textMargin),a.text(r),"undefined"!=typeof i.textwrap&&i.textwrap({x:e.x,y:e.y,width:n,height:1800},e.textMargin),i},n.drawLabel=function(t,e){var r=n.getNoteRect();r.x=e.x,r.y=e.y,r.width=50,r.height=20,r.fill="#526e52",r.stroke="none",r["class"]="labelBox",n.drawRect(t,r),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,e.fill="white",n.drawText(t,e)};var r=-1;n.drawActor=function(t,e,i,a,s){var o=e+s.width/2,u=t.append("g");0===i&&(r++,u.append("line").attr("id","actor"+r).attr("x1",o).attr("y1",5).attr("x2",o).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999"));var c=n.getNoteRect();c.x=e,c.y=i,c.fill="#eaeaea",c.width=s.width,c.height=s.height,c["class"]="actor",c.rx=3,c.ry=3,n.drawRect(u,c),u.append("text").attr("x",o).attr("y",i+s.height/2+5).attr("class","actor").style("text-anchor","middle").text(a)},n.drawLoop=function(t,e,r,i){var a=t.append("g"),s=function(t,e,n,r){a.append("line").attr("x1",t).attr("y1",e).attr("x2",n).attr("y2",r).attr("stroke-width",2).attr("stroke","#526e52").attr("class","loopLine")};s(e.startx,e.starty,e.stopx,e.starty),s(e.stopx,e.starty,e.stopx,e.stopy),s(e.startx,e.stopy,e.stopx,e.stopy),s(e.startx,e.starty,e.startx,e.stopy),"undefined"!=typeof e.elsey&&s(e.startx,e.elsey,e.stopx,e.elsey);var o=n.getTextObj();o.text=r,o.x=e.startx,o.y=e.starty,o.labelMargin=1.5*i.boxMargin,o["class"]="labelText",o.fill="white",n.drawLabel(a,o),o=n.getTextObj(),o.text="[ "+e.title+" ]",o.x=e.startx+(e.stopx-e.startx)/2,o.y=e.starty+1.5*i.boxMargin,o.anchor="middle",o["class"]="loopText",n.drawText(a,o),"undefined"!=typeof e.elseText&&(o.text="[ "+e.elseText+" ]",o.y=e.elsey+1.5*i.boxMargin,n.drawText(a,o))},n.insertArrowHead=function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},n.insertArrowCrossHead=function(t){var e=t.append("defs"),n=e.append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);n.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),n.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},n.getTextObj=function(){var t={x:0,y:0,fill:"black","text-anchor":"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0};return t},n.getNoteRect=function(){var t={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0};return t}},{}],101:[function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t){var e=t.getUTCHours(),n=t.getUTCMinutes(),r=t.getSeconds(),i=t.getMilliseconds();10>e&&(e="0"+e),10>n&&(n="0"+n),10>r&&(r="0"+r),100>i&&(i="0"+i),10>i&&(i="00"+i);var a=e+":"+n+":"+r+" ("+i+")";return a}var a=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),s={debug:1,info:2,warn:3,error:4,fatal:5,"default":5},o=s.error;n.setLogLevel=function(t){o=t};var u=function(){function t(e){r(this,t),this.level=e}return a(t,[{key:"log",value:function(t,e){var n=this.level;return"undefined"==typeof n&&(n=o),e>=n&&"undefined"!=typeof console&&"undefined"!=typeof console.log?console.log("["+i(new Date)+"] "+t):void 0}},{key:"trace",value:function(t){this.log(t,s.trace)}},{key:"debug",value:function(t){this.log(t,s.debug)}},{key:"info",value:function(t){this.log(t,s.info)}},{key:"warn",value:function(t){this.log(t,s.warn)}},{key:"error",value:function(t){this.log(t,s.error)}}]),t}();n.Log=u},{}],102:[function(t,e,n){(function(e){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}var i=t("./logger"),a=r(i),s=new a.Log,o=t("./diagrams/flowchart/graphDb"),u=t("./utils"),c=t("./diagrams/flowchart/flowRenderer"),l=t("./diagrams/sequenceDiagram/sequenceRenderer"),h=t("./diagrams/example/exampleRenderer"),d=t("./diagrams/example/parser/example"),f=t("./diagrams/flowchart/parser/flow"),p=t("./diagrams/flowchart/parser/dot"),g=t("./diagrams/sequenceDiagram/parser/sequenceDiagram"),y=t("./diagrams/sequenceDiagram/sequenceDb"),m=t("./diagrams/example/exampleDb"),v=t("./diagrams/gantt/ganttRenderer"),_=t("./diagrams/gantt/parser/gantt"),b=t("./diagrams/gantt/ganttDb"),w=t("./d3"),x={logLevel:5,cloneCssStyles:!0,startOnLoad:!0,flowchart:{htmlLabels:!0,useMaxWidth:!0},sequenceDiagram:{diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,mirrorActors:!0,bottomMarginAdj:1,useMaxWidth:!0},gantt:{titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,sidePadding:75,gridLineStartPadding:35,fontSize:11,fontFamily:'"Open-Sans", "sans-serif"',numberSectionStyles:3,axisFormatter:[["%I:%M",function(t){return t.getHours()}],["w. %U",function(t){return 1==t.getDay()}],["%a %d",function(t){return t.getDay()&&1!=t.getDate()}],["%b %d",function(t){return 1!=t.getDate()}],["%m-%y",function(t){return t.getMonth()}]]}};a.setLogLevel(x.logLevel);var k=function(t){var e,n=u.detectType(t);switch(n){case"graph":e=f,e.parser.yy=o;break;case"dotGraph":e=p,e.parser.yy=o;break;case"sequenceDiagram":e=g,e.parser.yy=y;break;case"info":e=d,e.parser.yy=m;break;case"gantt":e=_,e.parser.yy=b}try{return e.parse(t),!0}catch(r){return!1}};n.parse=k,n.version=function(){return t("../package.json").version},n.encodeEntities=function(t){var e=t;return e=e.replace(/style.*:\S*#.*;/g,function(t){var e=t.substring(0,t.length-1);return e}),e=e.replace(/classDef.*:\S*#.*;/g,function(t){var e=t.substring(0,t.length-1);return e}),e=e.replace(/#\w+\;/g,function(t){var e=t.substring(1,t.length-1),n=/^\+?\d+$/.test(e);return n?"fl°°"+e+"¶ß":"fl°"+e+"¶ß"})},n.decodeEntities=function(t){var e=t;return e=e.replace(/\fl\°\°/g,function(){return"&#"}),e=e.replace(/\fl\°/g,function(){return"&"}),e=e.replace(/¶ß/g,function(){return";"})};var A=function(t,e,r,i){"undefined"!=typeof i?w.select(i).append("div").attr("id","d"+t).append("svg").attr("id",t).attr("width","100%").attr("xmlns","http://www.w3.org/2000/svg").append("g"):w.select("body").append("div").attr("id","d"+t).append("svg").attr("id",t).attr("width","100%").attr("xmlns","http://www.w3.org/2000/svg").append("g"),window.txt=e,e=n.encodeEntities(e);var a=w.select("#d"+t).node(),d=u.detectType(e),f={};switch(d){case"graph":c.setConf(x.flowchart),c.draw(e,t,!1),x.cloneCssStyles&&(f=c.getClasses(e,!1),u.cloneCssStyles(a.firstChild,f));break;case"dotGraph":c.setConf(x.flowchart),c.draw(e,t,!0),x.cloneCssStyles&&(f=c.getClasses(e,!0),u.cloneCssStyles(a.firstChild,f));break;case"sequenceDiagram":l.setConf(x.sequenceDiagram),l.draw(e,t),x.cloneCssStyles&&u.cloneCssStyles(a.firstChild,[]);break;case"gantt":v.setConf(x.gantt),v.draw(e,t),x.cloneCssStyles&&u.cloneCssStyles(a.firstChild,[]);break;case"info":h.draw(e,t,n.version()),x.cloneCssStyles&&u.cloneCssStyles(a.firstChild,[])}w.select("#d"+t).selectAll("foreignobject div").attr("xmlns","http://www.w3.org/1999/xhtml");var p=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search;p=p.replace(/\(/g,"\\("),p=p.replace(/\)/g,"\\)");var g=w.select("#d"+t).node().innerHTML.replace(/url\(#arrowhead/g,"url("+p+"#arrowhead","g");g=n.decodeEntities(g),"undefined"!=typeof r?r(g,o.bindFunctions):s.warn("CB = undefined");var y=w.select("#d"+t).node();null!==y&&"function"==typeof y.remove&&w.select("#d"+t).node().remove()};n.render=function(t,e,n,r){"undefined"==typeof document||A(t,e,n,r)};var E=function(t){var e,n=Object.keys(t);for(e=0;e<n.length;e++)if("object"==typeof t[n[e]]){var r,i=Object.keys(t[n[e]]);for(r=0;r<i.length;r++)s.debug("Setting conf ",n[e],"-",i[r]),"undefined"==typeof x[n[e]]&&(x[n[e]]={}),s.debug("Setting config: "+n[e]+" "+i[r]+" to "+t[n[e]][i[r]]),x[n[e]][i[r]]=t[n[e]][i[r]]}else x[n[e]]=t[n[e]]};n.initialize=function(t){s.debug("Initializing mermaidAPI"),"object"==typeof t&&E(t),a.setLogLevel(x.logLevel)},n.getConfig=function(){return x},n.parseError=function(t,n){"undefined"!=typeof mermaid?e.mermaid.parseError(t,n):(s.debug("Mermaid Syntax error:"),s.debug(t))},e.mermaidAPI={render:n.render,parse:n.parse,initialize:n.initialize,detectType:u.detectType,parseError:n.parseError,getConfig:n.getConfig}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../package.json":84,"./d3":85,"./diagrams/example/exampleDb":86,"./diagrams/example/exampleRenderer":87,"./diagrams/example/parser/example":88,"./diagrams/flowchart/flowRenderer":90,"./diagrams/flowchart/graphDb":91,"./diagrams/flowchart/parser/dot":92,"./diagrams/flowchart/parser/flow":93,"./diagrams/gantt/ganttDb":94,"./diagrams/gantt/ganttRenderer":95,"./diagrams/gantt/parser/gantt":96,"./diagrams/sequenceDiagram/parser/sequenceDiagram":97,"./diagrams/sequenceDiagram/sequenceDb":98,"./diagrams/sequenceDiagram/sequenceRenderer":99,"./logger":101,"./utils":103}],103:[function(t,e,n){"use strict";function r(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e["default"]=t,e}Object.defineProperty(n,"__esModule",{value:!0});var i=t("./logger"),a=r(i),s=new a.Log,o=function(t){return t=t.replace(/^\s*%%.*\n/g,"\n"),t.match(/^\s*sequenceDiagram/)?"sequenceDiagram":t.match(/^\s*digraph/)?"dotGraph":t.match(/^\s*info/)?"info":t.match(/^\s*gantt/)?"gantt":"graph"};n.detectType=o;var u=function(t,e){for(var n,r="",i=document.styleSheets,a=0;a<i.length;a++)if("mermaid-svg-internal-css"!==i[a].title)try{var o=i[a].cssRules;if(null!==o)for(var u=0;u<o.length;u++)if(n=o[u],"undefined"!=typeof n.style){var c;c=t.querySelectorAll(n.selectorText),c.length>0&&(r+=n.selectorText+" { "+n.style.cssText+" }\n")}}catch(l){"undefined"!==n&&s.warn('Invalid CSS selector "'+n.selectorText+'"',l)}var h="",d="";for(var f in e)e.hasOwnProperty(f)&&"undefined"!=typeof f&&("default"===f?(e["default"].styles instanceof Array&&(h+="#"+t.id.trim()+" .node>rect { "+e[f].styles.join("; ")+"; }\n"),e["default"].nodeLabelStyles instanceof Array&&(h+="#"+t.id.trim()+" .node text { "+e[f].nodeLabelStyles.join("; ")+"; }\n"),e["default"].edgeLabelStyles instanceof Array&&(h+="#"+t.id.trim()+" .edgeLabel text { "+e[f].edgeLabelStyles.join("; ")+"; }\n"),e["default"].clusterStyles instanceof Array&&(h+="#"+t.id.trim()+" .cluster rect { "+e[f].clusterStyles.join("; ")+"; }\n")):e[f].styles instanceof Array&&(d+="#"+t.id.trim()+" ."+f+">rect { "+e[f].styles.join("; ")+"; }\n"));if(""!==r||""!==h||""!==d){var p=document.createElement("style");p.setAttribute("type","text/css"),p.setAttribute("title","mermaid-svg-internal-css"),p.innerHTML="/* <![CDATA[ */\n",""!==h&&(p.innerHTML+=h),""!==r&&(p.innerHTML+=r),""!==d&&(p.innerHTML+=d),p.innerHTML+="/* ]]> */\n",t.insertBefore(p,t.firstChild)}};n.cloneCssStyles=u},{"./logger":101}]},{},[102])(102)});