text: !function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return t[r].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){t.exports=n(36)},function(t,e,n){var r;try{r=n(100)}catch(i){}r||(r=window._),t.exports=r},function(t,e,n){function r(t,e){return!!t.children(e).length}function i(t){return a(t.v)+":"+a(t.w)+":"+a(t.name)}function a(t){return t?String(t).replace(l,"\\:"):""}function o(t,e){e&&t.attr("style",e)}function s(t,e,n){e&&t.attr("class",e).attr("class",n+" "+t.attr("class"))}function u(t,e){var n=e.graph();if(c.isPlainObject(n)){var r=n.transition;if(c.isFunction(r))return r(t)}return t}var c=n(16);t.exports={isSubgraph:r,edgeToId:i,applyStyle:o,applyClass:s,applyTransition:u};var l=/:/g},function(t,e,n){"use strict";function r(t,e,n,r){var i;do i=m.uniqueId(r);while(t.hasNode(i));return n.dummy=e,t.setNode(i,n),i}function i(t){var e=(new v).setGraph(t.graph());return m.each(t.nodes(),function(n){e.setNode(n,t.node(n))}),m.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 a(t){var e=new v({multigraph:t.isMultigraph()}).setGraph(t.graph());return m.each(t.nodes(),function(n){t.children(n).length||e.setNode(n,t.node(n))}),m.each(t.edges(),function(n){e.setEdge(n,t.edge(n))}),e}function o(t){var e=m.map(t.nodes(),function(e){var n={};return m.each(t.outEdges(e),function(e){n[e.w]=(n[e.w]||0)+t.edge(e).weight}),n});return m.zipObject(t.nodes(),e)}function s(t){var e=m.map(t.nodes(),function(e){var n={};return m.each(t.inEdges(e),function(e){n[e.v]=(n[e.v]||0)+t.edge(e).weight}),n});return m.zipObject(t.nodes(),e)}function u(t,e){var n=t.x,r=t.y,i=e.x-n,a=e.y-r,o=t.width/2,s=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)*o>Math.abs(i)*s?(0>a&&(s=-s),u=s*i/a,c=s):(0>i&&(o=-o),u=o,c=o*a/i),{x:n+u,y:r+c}}function c(t){var e=m.map(m.range(p(t)+1),function(){return[]});return m.each(t.nodes(),function(n){var r=t.node(n),i=r.rank;m.isUndefined(i)||(e[i][r.order]=n)}),e}function l(t){var e=m.min(m.map(t.nodes(),function(e){return t.node(e).rank}));m.each(t.nodes(),function(n){var r=t.node(n);m.has(r,"rank")&&(r.rank-=e)})}function h(t){var e=m.min(m.map(t.nodes(),function(e){return t.node(e).rank})),n=[];m.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;m.each(n,function(e,n){m.isUndefined(e)&&n%i!==0?--r:r&&m.each(e,function(e){t.node(e).rank+=r})})}function f(t,e,n,i){var a={width:0,height:0};return arguments.length>=4&&(a.rank=n,a.order=i),r(t,"border",a,e)}function p(t){return m.max(m.map(t.nodes(),function(e){var n=t.node(e).rank;return m.isUndefined(n)?void 0:n}))}function d(t,e){var n={lhs:[],rhs:[]};return m.each(t,function(t){e(t)?n.lhs.push(t):n.rhs.push(t)}),n}function g(t,e){var n=m.now();try{return e()}finally{console.log(t+" time: "+(m.now()-n)+"ms")}}function y(t,e){return e()}var m=n(1),v=n(9).Graph;t.exports={addDummyNode:r,simplify:i,asNonCompoundGraph:a,successorWeights:o,predecessorWeights:s,intersectRect:u,buildLayerMatrix:c,normalizeRanks:l,removeEmptyRanks:h,addBorderNode:f,maxRank:p,partition:d,time:g,notime:y}},function(t,e,n){var r;if(n(149))try{r=n(150)}catch(i){}r||(r=window._),t.exports=r},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var n=this[e];n[2]?t.push("@media "+n[2]+"{"+n[1]+"}"):t.push(n[1])}return t.join("")},t.i=function(e,n){"string"==typeof e&&(e=[[null,e,""]]);for(var r={},i=0;i<this.length;i++){var a=this[i][0];"number"==typeof a&&(r[a]=!0)}for(i=0;i<e.length;i++){var o=e[i];"number"==typeof o[0]&&r[o[0]]||(n&&!o[2]?o[2]=n:n&&(o[2]="("+o[2]+") and ("+n+")"),t.push(o))}},t}},function(t,e,n){(function(t,r){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,30,69,70,71,72,73,79,83,85,86,88,89,91,92,93],o=[2,2],s=[1,12],u=[1,13],c=[1,14],l=[1,15],h=[1,31],f=[1,22],p=[1,24],d=[1,25],g=[1,26],y=[1,27],m=[1,28],v=[1,34],x=[1,36],b=[1,33],_=[1,35],w=[1,41],A=[1,40],k=[1,37],E=[1,38],D=[1,39],B=[1,8,9,10,11,13,30,32,69,70,71,72,73,79,83,85,86,88,89,91,92,93],C=[1,49],T=[1,48],S=[1,50],M=[1,68],F=[1,76],L=[1,77],O=[1,62],N=[1,61],I=[1,81],R=[1,80],q=[1,78],P=[1,79],j=[1,69],Y=[1,64],U=[1,63],V=[1,59],$=[1,71],z=[1,72],H=[1,73],G=[1,74],W=[1,75],Z=[1,66],X=[1,65],K=[8,9,11],J=[8,9,11,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62],Q=[1,110],tt=[8,9,10,11,13,15,36,38,40,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,79,83,85,86,88,89,91,92,93],et=[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],nt=[1,113],rt=[1,114],it=[8,9,10,11,13,30,32,69,70,71,72,73,79,83,85,86,88,89,91,92,93],at=[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],ot=[13,79,83,85,86,88,89,91,92,93],st=[13,47,63,79,83,85,86,88,89,91,92,93],ut=[1,186],ct=[1,183],lt=[1,190],ht=[1,187],ft=[1,184],pt=[1,191],dt=[1,181],gt=[1,182],yt=[1,185],mt=[1,188],vt=[1,189],xt=[1,204],bt=[8,9,11,83],_t=[8,9,10,11,44,69,78,79,81,83,85,86,87,88,89],wt={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,3],[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],[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,o){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 89:case 91:case 92:case 105: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 90:case 93:case 106:this.$=a[s-1]+""+a[s];break;case 59:this.$=a[s-2]+"-"+a[s];break;case 60:a[s-1].text=a[s],this.$=a[s-1];break;case 61:case 62:a[s-2].text=a[s-1],this.$=a[s-2];break;case 63:this.$=a[s];break;case 64:this.$={type:"arrow",stroke:"normal",text:a[s-1]};break;case 65:this.$={type:"arrow_circle",stroke:"normal",text:a[s-1]};break;case 66:this.$={type:"arrow_cross",stroke:"normal",text:a[s-1]};break;case 67:this.$={type:"arrow_open",stroke:"normal",text:a[s-1]};break;case 68:this.$={type:"arrow",stroke:"dotted",text:a[s-1]};break;case 69:this.$={type:"arrow_circle",stroke:"dotted",text:a[s-1]};break;case 70:this.$={type:"arrow_cross",stroke:"dotted",text:a[s-1]};break;case 71:this.$={type:"arrow_open",stroke:"dotted",text:a[s-1]};break;case 72:this.$={type:"arrow",stroke:"thick",text:a[s-1]};break;case 73:this.$={type:"arrow_circle",stroke:"thick",text:a[s-1]};break;case 74:this.$={type:"arrow_cross",stroke:"thick",text:a[s-1]};break;case 75:this.$={type:"arrow_open",stroke:"thick",text:a[s-1]};break;case 76:this.$={type:"arrow",stroke:"normal"};break;case 77:this.$={type:"arrow_circle",stroke:"normal"};break;case 78:this.$={type:"arrow_cross",stroke:"normal"};break;case 79:this.$={type:"arrow_open",stroke:"normal"};break;case 80:this.$={type:"arrow",stroke:"dotted"};break;case 81:this.$={type:"arrow_circle",stroke:"dotted"};break;case 82:this.$={type:"arrow_cross",stroke:"dotted"};break;case 83:this.$={type:"arrow_open",stroke:"dotted"};break;case 84:this.$={type:"arrow",stroke:"thick"};break;case 85:this.$={type:"arrow_circle",stroke:"thick"};break;case 86:this.$={type:"arrow_cross",stroke:"thick"};break;case 87:this.$={type:"arrow_open",stroke:"thick"};break;case 88:this.$=a[s-1];break;case 107:case 108:this.$=a[s-4],r.addClass(a[s-2],a[s]);break;case 109:this.$=a[s-4],r.setClass(a[s-2],a[s]);break;case 110:this.$=a[s-4],r.setClickEvent(a[s-2],a[s]);break;case 111:this.$=a[s-4],r.addVertex(a[s-2],void 0,void 0,a[s]);break;case 112:case 113:case 114:this.$=a[s-4],r.updateLink(a[s-2],a[s]);break;case 116:this.$=[a[s]];break;case 117:a[s-2].push(a[s]),this.$=a[s-2];break;case 119:this.$=a[s-1]+a[s]}},table:[{3:1,4:2,9:n,10:r,12:i},{1:[3]},e(a,o,{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:s,9:u,10:c,11:l,13:h,23:16,25:17,26:18,27:19,28:20,29:21,30:f,33:23,35:29,42:30,43:32,69:p,70:d,71:g,72:y,73:m,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(a,[2,9]),e(a,[2,10]),{13:[1,42],15:[1,43],16:[1,44],17:[1,45],18:[1,46]},e(B,[2,3]),e(B,[2,4]),e(B,[2,5]),e(B,[2,6]),e(B,[2,7]),e(B,[2,8]),{8:C,9:T,11:S,24:47},{8:C,9:T,11:S,24:51},{8:C,9:T,11:S,24:52},{8:C,9:T,11:S,24:53},{8:C,9:T,11:S,24:54},{8:C,9:T,11:S,24:55},{8:C,9:T,10:M,11:S,12:F,13:L,15:O,16:N,17:I,18:R,24:57,30:q,31:56,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(K,[2,42],{34:82,45:83,48:[1,84],49:[1,87],50:[1,88],51:[1,89],52:[1,90],53:[1,85],54:[1,91],55:[1,92],56:[1,93],57:[1,94],58:[1,86],59:[1,95],60:[1,96],61:[1,97],62:[1,98]}),{10:[1,99]},{10:[1,100]},{10:[1,101]},{10:[1,102]},{10:[1,103]},e(J,[2,53],{43:32,21:108,42:109,10:Q,13:h,15:[1,107],36:[1,104],38:[1,105],40:[1,106],79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D}),e(tt,[2,55]),e(tt,[2,57]),e(tt,[2,58],{44:[1,111]}),e(et,[2,144]),e(et,[2,145]),e(et,[2,146]),e(et,[2,147]),e(et,[2,148]),e(et,[2,149]),e(et,[2,150]),e(et,[2,151]),e(et,[2,152]),{8:nt,9:rt,10:Q,14:112,21:115},{8:nt,9:rt,10:Q,14:116,21:115},{8:nt,9:rt,10:Q,14:117,21:115},{8:nt,9:rt,10:Q,14:118,21:115},{8:nt,9:rt,10:Q,14:119,21:115},e(B,[2,30]),e(B,[2,38]),e(B,[2,39]),e(B,[2,40]),e(B,[2,31]),e(B,[2,32]),e(B,[2,33]),e(B,[2,34]),e(B,[2,35]),{8:C,9:T,10:M,11:S,12:F,13:L,15:O,16:N,17:I,18:R,24:120,30:q,32:P,43:67,44:j,48:Y,58:U,64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(it,o,{5:122}),e(at,[2,89]),e(at,[2,91]),e(at,[2,133]),e(at,[2,134]),e(at,[2,135]),e(at,[2,136]),e(at,[2,137]),e(at,[2,138]),e(at,[2,139]),e(at,[2,140]),e(at,[2,141]),e(at,[2,142]),e(at,[2,143]),e(at,[2,94]),e(at,[2,95]),e(at,[2,96]),e(at,[2,97]),e(at,[2,98]),e(at,[2,99]),e(at,[2,100]),e(at,[2,101]),e(at,[2,102]),e(at,[2,103]),e(at,[2,104]),{13:h,33:123,35:29,42:30,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(ot,[2,63],{46:124,47:[1,125],63:[1,126]}),{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:127,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:128,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:129,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(st,[2,76]),e(st,[2,77]),e(st,[2,78]),e(st,[2,79]),e(st,[2,80]),e(st,[2,81]),e(st,[2,82]),e(st,[2,83]),e(st,[2,84]),e(st,[2,85]),e(st,[2,86]),e(st,[2,87]),{13:h,35:130,42:30,43:32,78:[1,131],79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{76:[1,132],79:[1,133]},{13:h,35:135,42:30,43:32,76:[1,134],79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{13:h,35:136,42:30,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{13:h,35:137,42:30,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:138,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:140,32:P,38:[1,139],43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:141,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:142,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(J,[2,54]),e(tt,[2,56]),e(J,[2,29],{21:143,10:Q}),{43:144,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},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(it,o,{5:146}),e(at,[2,90]),{6:10,7:11,8:s,9:u,10:c,11:l,13:h,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,69:p,70:d,71:g,72:y,73:m,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(K,[2,41]),e(ot,[2,60],{10:[1,148]}),{10:[1,149]},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:150,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,43:67,44:j,48:Y,49:[1,151],50:[1,152],51:[1,153],52:[1,154],58:U,64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,43:67,44:j,48:Y,54:[1,155],55:[1,156],56:[1,157],57:[1,158],58:U,64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,43:67,44:j,48:Y,58:U,59:[1,159],60:[1,160],61:[1,161],62:[1,162],64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:[1,163],13:h,42:109,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:[1,164]},{10:[1,165]},{10:[1,166]},{10:[1,167]},{10:[1,168],13:h,42:109,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:[1,169],13:h,42:109,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:[1,170],13:h,42:109,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,37:[1,171],43:67,44:j,48:Y,58:U,64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,31:172,32:P,43:67,44:j,48:Y,58:U,64:58,65:V,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,39:[1,173],43:67,44:j,48:Y,58:U,64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,41:[1,174],43:67,44:j,48:Y,58:U,64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,37:[1,175],43:67,44:j,48:Y,58:U,64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(J,[2,28]),e(tt,[2,59]),e(a,[2,23]),{6:10,7:11,8:s,9:u,10:c,11:l,13:h,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,69:p,70:d,71:g,72:y,73:m,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(B,[2,37]),e(ot,[2,62]),e(ot,[2,61]),{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,43:67,44:j,48:Y,58:U,63:[1,177],64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(ot,[2,64]),e(ot,[2,65]),e(ot,[2,66]),e(ot,[2,67]),e(ot,[2,68]),e(ot,[2,69]),e(ot,[2,70]),e(ot,[2,71]),e(ot,[2,72]),e(ot,[2,73]),e(ot,[2,74]),e(ot,[2,75]),{10:ut,44:ct,69:lt,77:178,78:ht,79:ft,81:pt,82:179,84:180,85:dt,86:gt,87:yt,88:mt,89:vt},{10:ut,44:ct,69:lt,77:192,78:ht,79:ft,81:pt,82:179,84:180,85:dt,86:gt,87:yt,88:mt,89:vt},{10:ut,44:ct,69:lt,77:193,78:ht,79:ft,81:pt,82:179,84:180,85:dt,86:gt,87:yt,88:mt,89:vt},{10:ut,44:ct,69:lt,77:194,78:ht,79:ft,81:pt,82:179,84:180,85:dt,86:gt,87:yt,88:mt,89:vt},{10:ut,44:ct,69:lt,77:195,78:ht,79:ft,81:pt,82:179,84:180,85:dt,86:gt,87:yt,88:mt,89:vt},{10:ut,44:ct,69:lt,77:196,78:ht,79:ft,81:pt,82:179,84:180,85:dt,86:gt,87:yt,88:mt,89:vt},{13:h,35:197,42:30,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},{13:h,35:198,42:30,43:32,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(J,[2,43],{21:199,10:Q}),{10:M,12:F,13:L,15:O,16:N,17:I,18:R,30:q,32:P,39:[1,200],43:67,44:j,48:Y,58:U,64:121,68:70,69:$,70:z,71:H,72:G,73:W,75:60,76:Z,79:v,81:X,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D},e(J,[2,47],{21:201,10:Q}),e(J,[2,49],{21:202,10:Q}),e(J,[2,51],{21:203,10:Q}),e(B,[2,36]),e([10,13,79,83,85,86,88,89,91,92,93],[2,88]),e(K,[2,111],{83:xt}),e(bt,[2,116],{84:205,10:ut,44:ct,69:lt,78:ht,79:ft,81:pt,85:dt,86:gt,87:yt,88:mt,89:vt}),e(_t,[2,118]),e(_t,[2,120]),e(_t,[2,121]),e(_t,[2,122]),e(_t,[2,123]),e(_t,[2,124]),e(_t,[2,125]),e(_t,[2,126]),e(_t,[2,127]),e(_t,[2,128]),e(_t,[2,129]),e(_t,[2,130]),e(K,[2,112],{83:xt}),e(K,[2,113],{83:xt}),e(K,[2,114],{83:xt}),e(K,[2,107],{83:xt}),e(K,[2,108],{83:xt}),e(K,[2,109],{43:32,42:109,13:h,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D}),e(K,[2,110],{43:32,42:109,13:h,79:v,83:x,85:b,86:_,88:w,89:A,91:k,92:E,93:D}),e(J,[2,44]),{39:[1,206]},e(J,[2,48]),e(J,[2,50]),e(J,[2,52]),{10:ut,44:ct,69:lt,78:ht,79:ft,81:pt,82:207,84:180,85:dt,86:gt,87:yt,88:mt,89:vt},e(_t,[2,119]),e(J,[2,45],{21:208,10:Q}),e(bt,[2,117],{84:205,10:ut,44:ct,69:lt,78:ht,79:ft,81:pt,85:dt,86:gt,87:yt,88:mt,89:vt}),e(J,[2,46])],defaultActions:{},parseError:function(t,e){if(!e.recoverable)throw new Error(t);this.trace(t)},parse:function(t){function e(){var t;return t=d.lex()||f,"number"!=typeof t&&(t=n.symbols_[t]||t),t}var n=this,r=[0],i=[null],a=[],o=this.table,s="",u=0,c=0,l=0,h=2,f=1,p=a.slice.call(arguments,1),d=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);d.setInput(t,g.yy),g.yy.lexer=d,g.yy.parser=this,"undefined"==typeof d.yylloc&&(d.yylloc={});var m=d.yylloc;a.push(m);var v=d.options&&d.options.ranges;"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var x,b,_,w,A,k,E,D,B,C={};;){if(_=r[r.length-1],this.defaultActions[_]?w=this.defaultActions[_]:((null===x||"undefined"==typeof x)&&(x=e()),w=o[_]&&o[_][x]),"undefined"==typeof w||!w.length||!w[0]){var T="";B=[];for(k in o[_])this.terminals_[k]&&k>h&&B.push("'"+this.terminals_[k]+"'");T=d.showPosition?"Parse error on line "+(u+1)+":\n"+d.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(u+1)+": Unexpected "+(x==f?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(T,{text:d.match,token:this.terminals_[x]||x,line:d.yylineno,loc:m,expected:B})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+x);switch(w[0]){case 1:r.push(x),i.push(d.yytext),a.push(d.yylloc),r.push(w[1]),x=null,b?(x=b,b=null):(c=d.yyleng,s=d.yytext,u=d.yylineno,m=d.yylloc,l>0&&l--);break;case 2:if(E=this.productions_[w[1]][1],C.$=i[i.length-E],C._$={first_line:a[a.length-(E||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(E||1)].first_column,last_column:a[a.length-1].last_column},v&&(C._$.range=[a[a.length-(E||1)].range[0],a[a.length-1].range[1]]),A=this.performAction.apply(C,[s,c,u,g.yy,w[1],i,a].concat(p)),"undefined"!=typeof A)return A;E&&(r=r.slice(0,-1*E*2),i=i.slice(0,-1*E),a=a.slice(0,-1*E)),r.push(this.productions_[w[1]][0]),i.push(C.$),a.push(C._$),D=o[r[r.length-2]][r[r.length-1]],r.push(D);break;case 3:return!0}}return!0}},At=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\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 wt.lexer=At,t.prototype=wt,wt.Parser=t,new t}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(17).readFileSync(n(13).normalize(r[1]),"utf8");return e.parser.parse(i)},"undefined"!=typeof r&&n.c[0]===r&&e.main(t.argv.slice(1))}).call(e,n(11),n(5)(t))},function(t,e,n){function r(t,e){for(var n=0;n<t.length;n++){var r=t[n],i=l[r.id];if(i){i.refs++;for(var a=0;a<i.parts.length;a++)i.parts[a](r.parts[a]);for(;a<r.parts.length;a++)i.parts.push(o(r.parts[a],e))}else{for(var s=[],a=0;a<r.parts.length;a++)s.push(o(r.parts[a],e));l[r.id]={id:r.id,refs:1,parts:s}}}}function i(t){for(var e=[],n={},r=0;r<t.length;r++){var i=t[r],a=i[0],o=i[1],s=i[2],u=i[3],c={css:o,media:s,sourceMap:u};n[a]?n[a].parts.push(c):e.push(n[a]={id:a,parts:[c]})}return e}function a(){var t=document.createElement("style"),e=p();return t.type="text/css",e.appendChild(t),t}function o(t,e){var n,r,i;if(e.singleton){var o=g++;n=d||(d=a()),r=u.bind(null,n,o,!1),i=u.bind(null,n,o,!0)}else n=a(),r=c.bind(null,n),i=function(){n.parentNode.removeChild(n)};return r(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;r(t=e)}else i()}}function s(t,e,n){var r=["/** >>"+e+" **/","/** "+e+"<< **/"],i=t.lastIndexOf(r[0]),a=n?r[0]+n+r[1]:"";if(t.lastIndexOf(r[0])>=0){var o=t.lastIndexOf(r[1])+r[1].length;return t.slice(0,i)+a+t.slice(o)}return t+a}function u(t,e,n,r){var i=n?"":r.css;if(t.styleSheet)t.styleSheet.cssText=s(t.styleSheet.cssText,e,i);else{var a=document.createTextNode(i),o=t.childNodes;o[e]&&t.removeChild(o[e]),o.length?t.insertBefore(a,o[e]):t.appendChild(a)}}function c(t,e){var n=e.css,r=e.media,i=e.sourceMap;if(i&&"function"==typeof btoa)try{n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(JSON.stringify(i))+" */",n='@import url("data:text/css;base64,'+btoa(n)+'")'}catch(a){}if(r&&t.setAttribute("media",r),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}var l={},h=function(t){var e;return function(){return"undefined"==typeof e&&(e=t.apply(this,arguments)),e}},f=h(function(){return/msie 9\b/.test(window.navigator.userAgent.toLowerCase())}),p=h(function(){return document.head||document.getElementsByTagName("head")[0]}),d=null,g=0;t.exports=function(t,e){e=e||{},"undefined"==typeof e.singleton&&(e.singleton=f());var n=i(t);return r(n,e),function(t){for(var a=[],o=0;o<n.length;o++){var s=n[o],u=l[s.id];u.refs--,a.push(u)}if(t){var c=i(t);r(c,e)}for(var o=0;o<a.length;o++){var u=a[o];if(0===u.refs){for(var h=0;h<u.parts.length;h++)u.parts[h]();delete l[u.id]}}}}},function(t,e,n){var r;try{r=n(98)}catch(i){}r||(r=window.graphlib),t.exports=r},function(module,exports){var vertices={},edges=[],classes=[],subGraphs=[],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){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){t.substr(1);"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 clickEvents=[];exports.setClickEvent=function(id,functionName){id.indexOf(",")>0?id.split(",").forEach(function(id2){"undefined"!=typeof vertices[id2]&&funs.push(function(){var elem=document.getElementById(id2);null!==elem&&(elem.onclick=function(){eval(functionName+"('"+id2+"')")})})}):"undefined"!=typeof vertices[id]&&funs.push(function(){var elem=document.getElementById(id);null!==elem&&(elem.onclick=function(){eval(functionName+"('"+id+"')")})})},exports.bindFunctions=function(){funs.forEach(function(t){t()})},exports.getDirection=function(){return direction},exports.getVertices=function(){return vertices},exports.getEdges=function(){return edges},exports.getClasses=function(){return classes},exports.clear=function(){vertices={},classes={},edges=[],subGraphs=[],subCount=0},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){var n=subGraphs[e].nodes;if(secCount+=1,!(secCount>2e3)){if(posCrossRef[secCount]=e,subGraphs[e].id===t)return{result:!0,count:0};for(var r=0,i=1;r<n.length;){var a=getPosForId(n[r]);if(a>=0){var o=indexNodes(t,a);if(o.result)return{result:!0,count:i+o.count};i+=o.count}r+=1}return{result:!1,count:i}}};exports.getDepthFirstPos=function(t){return posCrossRef[t]},exports.indexNodes=function(t){secCount=-1,subGraphs.length>0&&indexNodes("none",subGraphs.length-1,0)},exports.getSubGraphs=function(t){return subGraphs},exports.parseError=function(t,e){mermaid.parseError(t,e)}},function(t,e){function n(){c=!1,o.length?u=o.concat(u):l=-1,u.length&&r()}function r(){if(!c){var t=setTimeout(n);c=!0;for(var e=u.length;e;){for(o=u,u=[];++l<e;)o[l].run();l=-1,e=u.length}o=null,c=!1,clearTimeout(t)}}function i(t,e){this.fun=t,this.array=e}function a(){}var o,s=t.exports={},u=[],c=!1,l=-1;s.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];u.push(new i(t,e)),1!==u.length||c||setTimeout(r,0)},i.prototype.run=function(){this.fun.apply(null,this.array)},s.title="browser",s.browser=!0,s.env={},s.argv=[],s.version="",s.versions={},s.on=a,s.addListener=a,s.once=a,s.off=a,s.removeListener=a,s.removeAllListeners=a,s.emit=a,s.binding=function(t){throw new Error("process.binding is not supported")},s.cwd=function(){return"/"},s.chdir=function(t){throw new Error("process.chdir is not supported")},s.umask=function(){return 0}},function(t,e){var n={},r=[],i=[],a=[];e.addActor=function(t,e,i){n[t]={name:e,description:i},r.push(t)},e.addMessage=function(t,e,n,r){i.push({from:t,to:e,message:n,answer:r})},e.addSignal=function(t,e,n,r){i.push({from:t,to:e,message:n,type:r})},e.getMessages=function(){return i},e.getActors=function(){return n},e.getActor=function(t){return n[t]},e.getActorKeys=function(){return Object.keys(n)},e.clear=function(){n={},i=[]},e.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},e.ARROWTYPE={FILLED:0,OPEN:1},e.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},e.addNote=function(t,n,r){var o={actor:t,placement:n,message:r};a.push(o),i.push({from:t,to:t,message:r,type:e.LINETYPE.NOTE,placement:n})},e.parseError=function(t,e){mermaid.parseError(t,e)},e.apply=function(t){if(t instanceof Array)t.forEach(function(t){e.apply(t)});else switch(t.type){case"addActor":e.addActor(t.actor,t.actor,t.actor);break;case"addNote":e.addNote(t.actor,t.placement,t.text);break;case"addMessage":e.addSignal(t.from,t.to,t.msg,t.signalType);break;case"loopStart":e.addSignal(void 0,void 0,t.loopText,t.signalType);break;case"loopEnd":e.addSignal(void 0,void 0,void 0,t.signalType);break;case"optStart":e.addSignal(void 0,void 0,t.optText,t.signalType);break;case"optEnd":e.addSignal(void 0,void 0,void 0,t.signalType);break;case"altStart":e.addSignal(void 0,void 0,t.altText,t.signalType);break;case"else":e.addSignal(void 0,void 0,t.altText,t.signalType);break;case"altEnd":e.addSignal(void 0,void 0,void 0,t.signalType)}}},function(t,e,n){(function(t){function n(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)};e.resolve=function(){for(var e="",i=!1,a=arguments.length-1;a>=-1&&!i;a--){var o=a>=0?arguments[a]:t.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(e=o+"/"+e,i="/"===o.charAt(0))}return e=n(r(e.split("/"),function(t){return!!t}),!i).join("/"),(i?"/":"")+e||"."},e.normalize=function(t){var i=e.isAbsolute(t),a="/"===o(t,-1);return t=n(r(t.split("/"),function(t){return!!t}),!i).join("/"),t||i||(t="."),t&&a&&(t+="/"),(i?"/":"")+t},e.isAbsolute=function(t){return"/"===t.charAt(0)},e.join=function(){var t=Array.prototype.slice.call(arguments,0);return e.normalize(r(t,function(t,e){if("string"!=typeof t)throw new TypeError("Arguments to path.join must be strings");return t}).join("/"))},e.relative=function(t,n){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=e.resolve(t).substr(1),n=e.resolve(n).substr(1);for(var i=r(t.split("/")),a=r(n.split("/")),o=Math.min(i.length,a.length),s=o,u=0;o>u;u++)if(i[u]!==a[u]){s=u;break}for(var c=[],u=s;u<i.length;u++)c.push("..");return c=c.concat(a.slice(s)),c.join("/")},e.sep="/",e.delimiter=":",e.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):"."},e.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},e.extname=function(t){return a(t)[3]};var o="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(e,n(11))},function(t,e,n){var r;if(n(151))try{r=n(96)}catch(i){console.log("Exception ... but ok")}r||(r=window.d3),t.exports=r,function(){var t=!1;if(t="tspans",r.selection.prototype.textwrap)return!1;if("undefined"==typeof t)var t=!1;r.selection.prototype.textwrap=r.selection.enter.prototype.textwrap=function(e,n){var i,n=parseInt(n)||0,a=this,o=function(t){var e=t[0][0],n=e.tagName.toString();if("rect"!==n)return!1;var i={};return i.x=r.select(e).attr("x")||0,i.y=r.select(e).attr("y")||0,i.width=r.select(e).attr("width")||0,i.height=r.select(e).attr("height")||0,i.attr=t.attr,i},s=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=o(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=s(e);if(n&&(c=u(c,n)),0!=a.length&&r&&e&&c){e=c;var l,h=function(t){var n=r.select(t[0].parentNode),a=n.select("text"),o=a.style("line-height"),s=a.text();a.remove();var u=n.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(s),o&&c.style("line-height",o),i=n.select("foreignObject")},f=function(t){var a,o=t[0],s=o.parentNode,u=r.select(o),c=o.getBBox().height,l=o.getBBox().width,h=c,f=u.style("line-height");if(a=f&&parseInt(f)?parseInt(f.replace("px","")):h,l>e.width){var p=u.text();if(u.text(""),p){var d,g;if(-1!==p.indexOf(" ")){var d=" ";g=p.split(" ")}else{d="";var y=p.length,m=Math.ceil(l/e.width),v=Math.floor(y/m);v*m>=y||m++;for(var x,b,g=[],_=0;m>_;_++)b=_*v,x=p.substr(b,v),g.push(x)}for(var w=[],A=0,k={},_=0;_<g.length;_++){var E,D=g[_],B=u.text(),C=o.getComputedTextLength();E=B?B+d+D:D,u.text(E);var T=o.getComputedTextLength();if(T>e.width)B&&""!==B&&(A+=C,k={string:B,width:C,offset:A},w.push(k),u.text(""),u.text(D));else if(_==g.length-1){u.text("");var S=E;S&&""!==S&&(T-A>0&&(T-=A),k={string:S,width:T,offset:A},w.push(k))}}u.attr("y",function(){var t=e.y;return a&&(t+=a),t}),n&&u.attr("x",e.x);var M;u.text("");for(var _=0;_<w.length;_++){var x=w[_].string;if(_>0){w[_-1]}_*a<e.height-1.5*a&&(M=u.append("tspan").text(x),M.attr("dy",function(t){return _>0?a:void 0}),M.attr("x",function(){return e.x}))}}}i=r.select(s).selectAll("text")};t&&("foreignobjects"==t?l=h:"tspans"==t&&(l=f)),t||(l="undefined"!=typeof SVGForeignObjectElement?h:f);for(var p=0;p<a.length;p++){var d=a[p];l(d)}return i}return a?a:!1}}()},function(t,e,n){t.exports=n(96)},function(t,e,n){var r;if(n(51))try{r=n(100)}catch(i){}r||(r=window._),t.exports=r},function(t,e){},function(t,e,n){var r=n(10),i=n(7),a=n(19),o=n(14),s=n(26),u={};t.exports.setConf=function(t){var e,n=Object.keys(t);for(e=0;e<n.length;e++)u[n[e]]=t[n[e]]},e.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],o="";a.classes.length>0&&(o=a.classes.join(" "));var s="";s=r(s,a.styles),i="undefined"==typeof a.text?a.id:a.text;var c="";u.htmlLabels?c="html":(i=i.replace(/<br>/g,"\n"),c="text");var l=0,h="";switch(a.type){case"round":l=5,h="rect";break;case"square":h="rect";break;case"diamond":h="question";break;case"odd":h="rect_left_inv_arrow";break;case"odd_right":h="rect_left_inv_arrow";break;case"circle":h="circle";break;default:h="rect"}e.setNode(a.id,{labelType:c,shape:h,label:i,rx:l,ry:l,"class":o,style:s,id:a.id})})},e.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 o=t.text.replace(/<br>/g,"\n");"undefined"==typeof t.style?u.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:o,arrowheadStyle:"fill: #333",arrowhead:n},i):e.setEdge(t.start,t.end,{labelType:"text",style:a,arrowheadStyle:"fill: #333",label:o,arrowhead:n},i)}})},e.getClasses=function(t,e){var n;r.clear(),n=e?a.parser:i.parser,n.yy=r,n.parse(t);var o=r.getClasses();return"undefined"==typeof o["default"]&&(o["default"]={id:"default"},o["default"].styles=["fill:#ffa","stroke:#666","stroke-width:3px"],o["default"].clusterStyles=["rx:4px","fill: rgb(255, 255, 222)","rx: 4px","stroke: rgb(170, 170, 51)","stroke-width: 1px"],o["default"].nodeLabelStyles=["fill:#000","stroke:none","font-weight:300",'font-family:"Helvetica Neue",Helvetica,Arial,sans-serf',"font-size:14px"],o["default"].edgeLabelStyles=["fill:#000","stroke:none","font-weight:300",'font-family:"Helvetica Neue",Helvetica,Arial,sans-serf',"font-size:14px"]),o},e.draw=function(t,n,c){var l;r.clear(),l=c?a.parser:i.parser,l.yy=r;try{l.parse(t)}catch(h){}var f;f=r.getDirection(),"undefined"==typeof f&&(f="TD");var p,d=new s.graphlib.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,marginx:20,marginy:20}).setDefaultEdgeLabel(function(){return{}}),g=r.getSubGraphs(),y=0;for(y=g.length-1;y>=0;y--)p=g[y],r.addVertex(p.id,void 0,void 0,void 0);var m=r.getVertices(),v=r.getEdges();y=0;var x;for(y=g.length-1;y>=0;y--)for(p=g[y],o.selectAll("cluster").append("text"),x=0;x<p.nodes.length;x++)d.setParent(p.nodes[x],p.id);e.addVertices(m,d),e.addEdges(v,d);var b=new s.render;b.shapes().question=function(t,e,n){var r=e.width,i=e.height,a=.8*(r+i),o=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}],u=t.insert("polygon",":first-child").attr("points",o.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 s.intersect.polygon(n,o,t)},u},b.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}],o=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 s.intersect.polygon(n,a,t)},o},b.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}],o=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 s.intersect.polygon(n,a,t)},o},b.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");s.util.applyStyle(a,n[r+"Style"])};var _=o.select("#"+n);svgGroup=o.select("#"+n+" g"),b(o.select("#"+n+" g"),d);document.querySelector("#"+n);for(u.useMaxWidth?(_.attr("height","100%"),_.attr("width","100%"),_.attr("viewBox","0 0 "+(d.graph().width+20)+" "+(d.graph().height+20)),_.attr("style","max-width:"+(d.graph().width+20)+"px;")):(_.attr("height",d.graph().height),"undefined"==typeof u.width?_.attr("width",d.graph().width):_.attr("width",u.width),_.attr("viewBox","0 0 "+(d.graph().width+20)+" "+(d.graph().height+20))),r.indexNodes("sunGraph"+y),y=0;y<g.length;y++){r.getDepthFirstPos(y);if(p=g[y],"undefined"!==p.title){var w=document.querySelectorAll("#"+n+" #"+p.id+" rect"),A=document.querySelectorAll("#"+n+" #"+p.id),k=w[0].x.baseVal.value,E=w[0].y.baseVal.value,D=w[0].width.baseVal.value,B=o.select(A[0]),C=B.append("text");C.attr("x",k+D/2),C.attr("y",E+14),C.attr("fill","black"),C.attr("stroke","none"),C.attr("id",n+"Text"),C.style("text-anchor","middle"),"undefined"==typeof p.title?C.text("Undef"):C.text(p.title)}}}},function(t,e,n){(function(t,r){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],o=[1,14],s=[1,15],u=[1,16],c=[1,17],l=[1,18],h=[1,19],f=[1,20],p=[1,21],d=[1,22],g=[8,16,17,18,19,20,21,22,23,24,25,26],y=[1,37],m=[1,33],v=[1,34],x=[1,35],b=[1,36],_=[8,10,16,17,18,19,20,21,22,23,24,25,26,28,32,37,39,40,45,57,58],w=[10,28],A=[10,28,37,57,58],k=[2,49],E=[1,45],D=[1,48],B=[1,49],C=[1,52],T=[2,65],S=[1,65],M=[1,66],F=[1,67],L=[1,68],O=[1,69],N=[1,70],I=[1,71],R=[1,72],q=[1,73],P=[8,16,17,18,19,20,21,22,23,24,25,26,47],j=[10,28,37],Y={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,o){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:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d},{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:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,27:26,29:27,30:28,31:29,33:31,35:v,36:x,42:32,47:b},e([8,10,28,32,37,39,40,45,57,58],[2,7],{15:38,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d}),e(_,[2,8]),e(_,[2,10]),e(_,[2,11]),e(_,[2,12]),e(_,[2,13]),e(_,[2,14]),e(_,[2,15]),e(_,[2,16]),e(_,[2,17]),e(_,[2,18]),e(_,[2,19]),e(_,[2,20]),{7:39,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d},{7:30,8:y,9:40,12:m,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,27:26,29:27,30:28,31:29,33:31,35:v,36:x,42:32,47:b},{10:[1,41]},{10:[2,21],28:[1,42]},e(w,[2,23]),e(w,[2,24]),e(w,[2,25]),e(A,k,{44:44,32:[1,43],45:E}),e(w,[2,27],{41:46,43:47,57:D,58:B}),e(w,[2,47],{43:47,34:50,41:51,37:C,57:D,58:B}),{34:53,37:C},{34:54,37:C},{34:55,37:C},{7:56,8:[1,57],14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d},{7:30,8:y,9:58,12:m,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,27:26,29:27,30:28,31:29,33:31,35:v,36:x,42:32,47:b},e(_,[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:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,27:26,29:27,30:28,31:29,33:31,35:v,36:x,42:32,47:b},{7:62,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d},e(A,[2,48]),e(A,T,{14:10,15:11,7:63,46:64,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,48:S,49:M,50:F,51:L,52:O,53:N,54:I,55:R,56:q}),e(w,[2,41],{34:74,37:C}),{7:77,8:y,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,33:76,42:75,47:b},e(P,[2,66]),e(P,[2,67]),e(w,[2,46]),e(w,[2,40],{34:78,37:C}),{7:81,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,38:79,39:[1,80]},e(w,[2,28]),e(w,[2,29]),e(w,[2,30]),{8:[1,82]},{7:30,8:y,9:83,12:m,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,27:26,29:27,30:28,31:29,33:31,35:v,36:x,42:32,47:b},{10:[1,84]},{7:30,8:y,9:85,12:m,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,27:26,29:27,30:28,31:29,33:31,35:v,36:x,42:32,47:b},{5:[2,2]},{10:[2,22]},e(w,[2,26]),e(A,[2,51],{45:[1,86]}),e(A,[2,52]),e(A,[2,56]),e(A,[2,57]),e(A,[2,58]),e(A,[2,59]),e(A,[2,60]),e(A,[2,61]),e(A,[2,62]),e(A,[2,63]),e(A,[2,64]),e(w,[2,38]),e(j,[2,44],{43:47,41:87,57:D,58:B}),e(j,[2,45],{43:47,41:88,57:D,58:B}),e(A,k,{44:44,45:E}),e(w,[2,39]),{39:[1,89]},e(w,[2,34],{34:90,37:C}),{32:[1,91]},{7:30,8:y,9:92,12:m,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,27:26,29:27,30:28,31:29,33:31,35:v,36:x,42:32,47:b},{10:[1,93]},e(A,[2,55]),{10:[1,94]},e(A,T,{46:95,48:S,49:M,50:F,51:L,52:O,53:N,54:I,55:R,56:q}),e(j,[2,42]),e(j,[2,43]),e(w,[2,33],{34:96,37:C}),e(w,[2,32]),{7:97,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d},{10:[1,98]},e(A,[2,54]),{5:[2,3]},e(A,[2,50]),e(w,[2,31]),{28:[1,99],39:[2,37],40:[1,100]},e(A,[2,53]),{7:81,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,38:101},{7:81,14:10,15:11,16:i,17:a,18:o,19:s,20:u,21:c,22:l,23:h,24:f,25:p,26:d,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){function e(){var t;return t=d.lex()||f,"number"!=typeof t&&(t=n.symbols_[t]||t),t}var n=this,r=[0],i=[null],a=[],o=this.table,s="",u=0,c=0,l=0,h=2,f=1,p=a.slice.call(arguments,1),d=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);d.setInput(t,g.yy),g.yy.lexer=d,g.yy.parser=this,"undefined"==typeof d.yylloc&&(d.yylloc={});var m=d.yylloc;a.push(m);var v=d.options&&d.options.ranges;"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var x,b,_,w,A,k,E,D,B,C={};;){if(_=r[r.length-1],this.defaultActions[_]?w=this.defaultActions[_]:((null===x||"undefined"==typeof x)&&(x=e()),w=o[_]&&o[_][x]),"undefined"==typeof w||!w.length||!w[0]){var T="";B=[];for(k in o[_])this.terminals_[k]&&k>h&&B.push("'"+this.terminals_[k]+"'");T=d.showPosition?"Parse error on line "+(u+1)+":\n"+d.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(u+1)+": Unexpected "+(x==f?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(T,{text:d.match,token:this.terminals_[x]||x,line:d.yylineno,loc:m,expected:B})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+x);switch(w[0]){case 1:r.push(x),i.push(d.yytext),a.push(d.yylloc),r.push(w[1]),x=null,b?(x=b,b=null):(c=d.yyleng,s=d.yytext,u=d.yylineno,m=d.yylloc,l>0&&l--);break;case 2:if(E=this.productions_[w[1]][1],C.$=i[i.length-E],C._$={first_line:a[a.length-(E||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(E||1)].first_column,last_column:a[a.length-1].last_column},v&&(C._$.range=[a[a.length-(E||1)].range[0],a[a.length-1].range[1]]),A=this.performAction.apply(C,[s,c,u,g.yy,w[1],i,a].concat(p)),"undefined"!=typeof A)return A;E&&(r=r.slice(0,-1*E*2),i=i.slice(0,-1*E),a=a.slice(0,-1*E)),r.push(this.productions_[w[1]][0]),i.push(C.$),a.push(C._$),D=o[r[r.length-2]][r[r.length-1]],r.push(D);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 Y.lexer=U,t.prototype=Y,Y.Parser=t,new t}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(17).readFileSync(n(13).normalize(r[1]),"utf8");return e.parser.parse(i)},"undefined"!=typeof r&&n.c[0]===r&&e.main(t.argv.slice(1))}).call(e,n(11),n(5)(t))},function(t,e,n){var r=n(81),i="",a="",o=[],s=[],u="";e.clear=function(){o=[],s=[],u="",a="",f=0,c=void 0},e.setDateFormat=function(t){i=t},e.getDateFormat=function(){return i},e.setTitle=function(t){a=t},e.getTitle=function(){return a},e.addSection=function(t){u=t,o.push(t)},e.findTaskById=function(t){var e;for(e=0;e<s.length;e++)if(s[e].id===t)return s[e]},e.getTasks=function(){var t;for(t=1e4;t<s.length;t++)s[t].startTime=r(s[t].startTime).format(i),s[t].endTime=r(s[t].endTime).format(i);return s};var c,l=function(t,n,i){i=i.trim();var a=/^after\s+([\d\w\-]+)/,o=a.exec(i.trim());if(null!==o){var s=e.findTaskById(o[1]);if("undefined"==typeof s){var u=new Date;return u.setHours(0,0,0,0),u}return s.endTime}return r(i,n.trim(),!0).isValid()?r(i,n.trim(),!0).toDate():(console.log("Invalid date:"+i),console.log("With date format:"+n.trim()),new Date)},h=function(t,e,n){if(n=n.trim(),r(n,e.trim(),!0).isValid())return r(n,e.trim()).toDate();var i=r(t),a=/^([\d]+)([wdh])/,o=a.exec(n.trim());if(null!==o){switch(o[2]){case"h":i.add(o[1],"hours");break;case"d":i.add(o[1],"days");break;case"w":i.add(o[1],"weeks")}return i.toDate()}return i.toDate()},f=0,p=function(t){return"undefined"==typeof t?(f+=1,"task"+f):t},d=function(t,n){var r;r=":"===n.substr(0,1)?n.substr(1,n.length):n;for(var i=r.split(","),a={},o=e.getDateFormat(),s=!0;s;)s=!1,i[0].match(/^\s*active\s*$/)&&(a.active=!0,i.shift(1),s=!0),i[0].match(/^\s*done\s*$/)&&(a.done=!0,i.shift(1),s=!0),i[0].match(/^\s*crit\s*$/)&&(a.crit=!0,i.shift(1),s=!0);var u;for(u=0;u<i.length;u++)i[u]=i[u].trim();switch(i.length){case 1:a.id=p(),a.startTime=t.endTime,a.endTime=h(a.startTime,o,i[0]);break;case 2:a.id=p(),a.startTime=l(void 0,o,i[0]),a.endTime=h(a.startTime,o,i[1]);break;case 3:a.id=p(i[0]),a.startTime=l(void 0,o,i[1]),a.endTime=h(a.startTime,o,i[2])}return a};e.addTask=function(t,e){var n={section:u,type:u,description:t,task:t},r=d(c,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,c=n,s.push(n)},e.parseError=function(t,e){mermaid.parseError(t,e)}},function(t,e){t.exports.detectType=function(t,e){return t.match(/^\s*sequenceDiagram/)?"sequenceDiagram":t.match(/^\s*sequence/)?"sequence":t.match(/^\s*digraph/)?"dotGraph":t.match(/^\s*info/)?"info":t.match(/^\s*gantt/)?"gantt":"graph"},t.exports.cloneCssStyles=function(t,e){for(var n="",r=document.styleSheets,i=0;i<r.length;i++)if("mermaid-svg-internal-css"!==r[i].title)try{var a=r[i].cssRules;if(null!==a)for(var o=0;o<a.length;o++){var s=a[o];if("undefined"!=typeof s.style){var u;u=t.querySelectorAll(s.selectorText),u.length>0&&(n+=s.selectorText+" { "+s.style.cssText+" }\n")}}}catch(c){"undefined"!=typeof console&&"undefined"!==console.warn&&"undefined"!==s&&console.warn('Invalid CSS selector "'+s.selectorText+'"',c)}var l="",h="";for(var f in e)e.hasOwnProperty(f)&&"undefined"!=typeof f&&("default"===f?(e["default"].styles instanceof Array&&(l+="#"+t.id.trim()+" .node { "+e[f].styles.join("; ")+"; }\n"),e["default"].nodeLabelStyles instanceof Array&&(l+="#"+t.id.trim()+" .node text  { "+e[f].nodeLabelStyles.join("; ")+"; }\n"),e["default"].edgeLabelStyles instanceof Array&&(l+="#"+t.id.trim()+" .edgeLabel text  { "+e[f].edgeLabelStyles.join("; ")+"; }\n"),e["default"].clusterStyles instanceof Array&&(l+="#"+t.id.trim()+" .cluster rect  { "+e[f].clusterStyles.join("; ")+"; }\n")):e[f].styles instanceof Array&&(h+="#"+t.id.trim()+" ."+f+" { "+e[f].styles.join("; ")+"; }\n"));if(""!==n||""!==l||""!==h){var p=document.createElement("style");p.setAttribute("type","text/css"),p.setAttribute("title","mermaid-svg-internal-css"),p.innerHTML="/* <![CDATA[ */\n",""!==l&&(p.innerHTML+=l),""!==n&&(p.innerHTML+=n),""!==h&&(p.innerHTML+=h),p.innerHTML+="/* ]]> */\n",t.insertBefore(p,t.firstChild)}}},function(t,e){var n="",r=!1;e.setMessage=function(t){n=t},e.getMessage=function(){return n},e.setInfo=function(t){r=t},e.getInfo=function(){return r},e.parseError=function(t,e){mermaid.parseError(t,e)}},function(t,e,n){(function(t,r){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,o){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){function e(){var t;return t=d.lex()||f,"number"!=typeof t&&(t=n.symbols_[t]||t),t}var n=this,r=[0],i=[null],a=[],o=this.table,s="",u=0,c=0,l=0,h=2,f=1,p=a.slice.call(arguments,1),d=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);d.setInput(t,g.yy),g.yy.lexer=d,g.yy.parser=this,"undefined"==typeof d.yylloc&&(d.yylloc={});var m=d.yylloc;a.push(m);var v=d.options&&d.options.ranges;"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var x,b,_,w,A,k,E,D,B,C={};;){if(_=r[r.length-1],this.defaultActions[_]?w=this.defaultActions[_]:((null===x||"undefined"==typeof x)&&(x=e()),w=o[_]&&o[_][x]),"undefined"==typeof w||!w.length||!w[0]){var T="";B=[];for(k in o[_])this.terminals_[k]&&k>h&&B.push("'"+this.terminals_[k]+"'");T=d.showPosition?"Parse error on line "+(u+1)+":\n"+d.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(u+1)+": Unexpected "+(x==f?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(T,{text:d.match,token:this.terminals_[x]||x,line:d.yylineno,loc:m,expected:B})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+x);switch(w[0]){case 1:r.push(x),i.push(d.yytext),a.push(d.yylloc),r.push(w[1]),x=null,b?(x=b,b=null):(c=d.yyleng,s=d.yytext,u=d.yylineno,m=d.yylloc,l>0&&l--);break;case 2:if(E=this.productions_[w[1]][1],C.$=i[i.length-E],C._$={first_line:a[a.length-(E||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(E||1)].first_column,last_column:a[a.length-1].last_column},v&&(C._$.range=[a[a.length-(E||1)].range[0],a[a.length-1].range[1]]),A=this.performAction.apply(C,[s,c,u,g.yy,w[1],i,a].concat(p)),"undefined"!=typeof A)return A;E&&(r=r.slice(0,-1*E*2),i=i.slice(0,-1*E),a=a.slice(0,-1*E)),r.push(this.productions_[w[1]][0]),i.push(C.$),a.push(C._$),D=o[r[r.length-2]][r[r.length-1]],r.push(D);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}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(17).readFileSync(n(13).normalize(r[1]),"utf8");return e.parser.parse(i)},"undefined"!=typeof r&&n.c[0]===r&&e.main(t.argv.slice(1))}).call(e,n(11),n(5)(t))},function(t,e,n){(function(t,r){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],o=[1,12],s={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,o){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:o},e(n,[2,7],{1:[2,1]}),e(n,[2,3]),{9:13,11:r,12:i,13:a,14:o},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){function e(){var t;return t=d.lex()||f,"number"!=typeof t&&(t=n.symbols_[t]||t),t}var n=this,r=[0],i=[null],a=[],o=this.table,s="",u=0,c=0,l=0,h=2,f=1,p=a.slice.call(arguments,1),d=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);d.setInput(t,g.yy),g.yy.lexer=d,g.yy.parser=this,"undefined"==typeof d.yylloc&&(d.yylloc={});var m=d.yylloc;a.push(m);var v=d.options&&d.options.ranges;"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var x,b,_,w,A,k,E,D,B,C={};;){if(_=r[r.length-1],this.defaultActions[_]?w=this.defaultActions[_]:((null===x||"undefined"==typeof x)&&(x=e()),w=o[_]&&o[_][x]),"undefined"==typeof w||!w.length||!w[0]){var T="";B=[];for(k in o[_])this.terminals_[k]&&k>h&&B.push("'"+this.terminals_[k]+"'");T=d.showPosition?"Parse error on line "+(u+1)+":\n"+d.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(u+1)+": Unexpected "+(x==f?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(T,{text:d.match,token:this.terminals_[x]||x,line:d.yylineno,loc:m,expected:B})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+x);switch(w[0]){case 1:r.push(x),i.push(d.yytext),a.push(d.yylloc),r.push(w[1]),x=null,b?(x=b,b=null):(c=d.yyleng,s=d.yytext,u=d.yylineno,m=d.yylloc,l>0&&l--);break;case 2:if(E=this.productions_[w[1]][1],C.$=i[i.length-E],C._$={first_line:a[a.length-(E||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(E||1)].first_column,last_column:a[a.length-1].last_column},v&&(C._$.range=[a[a.length-(E||1)].range[0],a[a.length-1].range[1]]),A=this.performAction.apply(C,[s,c,u,g.yy,w[1],i,a].concat(p)),"undefined"!=typeof A)return A;E&&(r=r.slice(0,-1*E*2),i=i.slice(0,-1*E),a=a.slice(0,-1*E)),r.push(this.productions_[w[1]][0]),i.push(C.$),a.push(C._$),D=o[r[r.length-2]][r[r.length-1]],r.push(D);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 s.lexer=u,t.prototype=s,s.Parser=t,new t}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(17).readFileSync(n(13).normalize(r[1]),"utf8");return e.parser.parse(i)},"undefined"!=typeof r&&n.c[0]===r&&e.main(t.argv.slice(1))}).call(e,n(11),n(5)(t))},function(t,e,n){(function(t,r){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],o=[1,9],s=[1,12],u=[1,13],c=[1,14],l=[1,15],h=[1,17],f=[1,18],p=[2,7],d=[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],x={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,o){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:o,12:16,13:10,14:11,15:s,17:u,19:c,20:l,22:h,33:f},e(n,p,{1:[2,1]}),e(d,[2,3]),{9:19,11:o,12:16,13:10,14:11,15:s,17:u,19:c,20:l,22:h,33:f},e(d,[2,5]),e(d,[2,6]),{12:20,33:f},{10:[1,21]},{10:[1,22]},{8:[1,23]},{12:24,33:f},{12:25,33:f},{12:26,33:f},{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(d,[2,4]),{10:[1,38]},e(d,[2,9]),e(d,[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:f},{33:[2,27]},{33:[2,28]},{33:[2,29]},{33:[2,30]},{33:[2,31]},{33:[2,32]},{12:44,33:f},{8:y,26:45},{33:[2,21]},{33:[2,22]},e(d,[2,8]),{10:[1,47]},{6:m,7:5,8:i,9:7,10:a,11:o,12:16,13:10,14:11,15:s,17:u,18:[1,48],19:c,20:l,22:h,33:f},{6:m,7:5,8:i,9:7,10:a,11:o,12:16,13:10,14:11,15:s,17:u,18:[1,50],19:c,20:l,22:h,33:f},{6:m,7:5,8:i,9:7,10:a,11:o,12:16,13:10,14:11,15:s,17:u,19:c,20:l,21:[1,51],22:h,33:f},{24:52,40:v},{24:54,40:v},{12:56,27:55,33:f},{8:y,26:57,33:[2,18]},e(d,[2,11]),e(d,[2,12]),e(d,p),e(d,[2,13]),{12:58,33:f},{10:[2,23]},{10:[2,33]},{10:[2,15]},{12:59,33:f},{28:[1,60],33:[2,19]},{33:[2,17]},e(g,r,{5:61}),{10:[2,16]},{12:62,33:f},{6:m,7:5,8:i,9:7,10:a,11:o,12:16,13:10,14:11,15:s,17:u,18:[1,63],19:c,20:l,22:h,33:f},{33:[2,20]},e(d,[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){function e(){var t;return t=d.lex()||f,"number"!=typeof t&&(t=n.symbols_[t]||t),t}var n=this,r=[0],i=[null],a=[],o=this.table,s="",u=0,c=0,l=0,h=2,f=1,p=a.slice.call(arguments,1),d=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);d.setInput(t,g.yy),g.yy.lexer=d,g.yy.parser=this,"undefined"==typeof d.yylloc&&(d.yylloc={});var m=d.yylloc;a.push(m);var v=d.options&&d.options.ranges;"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var x,b,_,w,A,k,E,D,B,C={};;){if(_=r[r.length-1],this.defaultActions[_]?w=this.defaultActions[_]:((null===x||"undefined"==typeof x)&&(x=e()),w=o[_]&&o[_][x]),"undefined"==typeof w||!w.length||!w[0]){var T="";B=[];for(k in o[_])this.terminals_[k]&&k>h&&B.push("'"+this.terminals_[k]+"'");T=d.showPosition?"Parse error on line "+(u+1)+":\n"+d.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(u+1)+": Unexpected "+(x==f?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(T,{text:d.match,token:this.terminals_[x]||x,line:d.yylineno,loc:m,expected:B})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+x);switch(w[0]){case 1:r.push(x),i.push(d.yytext),a.push(d.yylloc),r.push(w[1]),x=null,b?(x=b,b=null):(c=d.yyleng,s=d.yytext,u=d.yylineno,m=d.yylloc,l>0&&l--);break;case 2:if(E=this.productions_[w[1]][1],C.$=i[i.length-E],C._$={first_line:a[a.length-(E||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(E||1)].first_column,last_column:a[a.length-1].last_column},v&&(C._$.range=[a[a.length-(E||1)].range[0],a[a.length-1].range[1]]),A=this.performAction.apply(C,[s,c,u,g.yy,w[1],i,a].concat(p)),"undefined"!=typeof A)return A;E&&(r=r.slice(0,-1*E*2),i=i.slice(0,-1*E),a=a.slice(0,-1*E)),r.push(this.productions_[w[1]][0]),i.push(C.$),a.push(C._$),D=o[r[r.length-2]][r[r.length-1]],r.push(D);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 x.lexer=b,t.prototype=x,x.Parser=t,new t}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(17).readFileSync(n(13).normalize(r[1]),"utf8");return e.parser.parse(i)},"undefined"!=typeof r&&n.c[0]===r&&e.main(t.argv.slice(1))}).call(e,n(11),n(5)(t))},function(t,e,n){var r;if(n(152))try{r=n(123)}catch(i){console.log("Could not load dagre-d3")}r||(r=window.dagreD3),t.exports=r},function(t,e,n){(function(t){var r=n(10),i=(n(7),n(21)),a=n(18),o=n(35),s=n(31),u=n(23),c=n(7),l=n(19),h=n(25),f=n(12),p=n(22),d=n(34),g=n(24),y=n(20),m=n(14),v={cloneCssStyles:!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()}]]}},x=function(t){var e,n=i.detectType(t);switch(n){case"graph":e=c,e.parser.yy=r;break;case"dotGraph":e=l,e.parser.yy=r;break;case"sequenceDiagram":e=h,e.parser.yy=f;break;case"info":e=u,e.parser.yy=p;break;case"gantt":e=g,e.parser.yy=y}try{return e.parse(t),!0}catch(a){return!1}};e.parse=x,e.version=function(){return n(48).version};var b=function(t,n,u,c){"undefined"!=typeof c?m.select(c).append("div").attr("id","d"+t).append("svg").attr("id",t).attr("width","100%").attr("xmlns","http://www.w3.org/2000/svg").append("g"):m.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");var l=m.select("#d"+t).node(),h=i.detectType(n),f={};switch(h){case"graph":a.setConf(v.flowchart),a.draw(n,t,!1),v.cloneCssStyles&&(f=a.getClasses(n,!1),i.cloneCssStyles(l.firstChild,f)),r.bindFunctions();break;case"dotGraph":a.setConf(v.flowchart),a.draw(n,t,!0),v.cloneCssStyles&&(f=a.getClasses(n,!0),i.cloneCssStyles(l.firstChild,f));break;case"sequenceDiagram":o.setConf(v.sequenceDiagram),o.draw(n,t),v.cloneCssStyles&&i.cloneCssStyles(l.firstChild,[]);break;case"gantt":d.setConf(v.gantt),d.draw(n,t),v.cloneCssStyles&&i.cloneCssStyles(l.firstChild,[]);break;case"info":s.draw(n,t,e.version()),v.cloneCssStyles&&i.cloneCssStyles(l.firstChild,[])}"undefined"!=typeof u&&u(m.select("#d"+t).node().innerHTML);var p=m.select("#d"+t).node();null!==p&&"function"==typeof p.remove&&m.select("#d"+t).node().remove()};e.render=function(t,e,n,r){"undefined"==typeof document||b(t,e,n,r)};var _=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++)"undefined"==typeof v[n[e]]&&(v[n[e]]={}),v[n[e]][i[r]]=t[n[e]][i[r]]}else v[n[e]]=t[n[e]]};e.initialize=function(t){"object"==typeof t&&_(t)},e.getConfig=function(){return v},t.mermaidAPI={render:e.render,parse:e.parse,initialize:e.initialize,detectType:i.detectType}}).call(e,function(){return this}())},function(t,e){function n(t,e,n,r){var i=t.x,a=t.y,o=i-r.x,s=a-r.y,u=Math.sqrt(e*e*s*s+n*n*o*o),c=Math.abs(e*n*o/u);r.x<i&&(c=-c);var l=Math.abs(e*n*s/u);return r.y<a&&(l=-l),{x:i+c,y:a+l}}t.exports=n},function(t,e,n){function r(t,e,n){var r=e.label,s=t.append("g");"svg"===e.labelType?o(s,e):"string"!=typeof r||"html"===e.labelType?a(s,e):i(s,e);var u,c=s.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 s.attr("transform","translate("+-c.width/2+","+u+")"),s}var i=n(62),a=n(60),o=n(61);t.exports=r},function(t,e,n){"use strict";function r(t){this._isDirected=c.has(t,"directed")?t.directed:!0,this._isMultigraph=c.has(t,"multigraph")?t.multigraph:!1,this._isCompound=c.has(t,"compound")?t.compound:!1,this._label=void 0,this._defaultNodeLabelFn=c.constant(void 0),this._defaultEdgeLabelFn=c.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[h]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function i(t,e){c.has(t,e)?t[e]++:t[e]=1}function a(t,e){--t[e]||delete t[e]}function o(t,e,n,r){if(!t&&e>n){var i=e;e=n,n=i}return e+f+n+f+(c.isUndefined(r)?l:r)}function s(t,e,n,r){if(!t&&e>n){var i=e;e=n,n=i}var a={v:e,w:n};return r&&(a.name=r),a}function u(t,e){return o(t,e.v,e.w,e.name)}var c=n(4);t.exports=r;var l="\x00",h="\x00",f="";r.prototype._nodeCount=0,r.prototype._edgeCount=0,r.prototype.isDirected=function(){return this._isDirected},r.prototype.isMultigraph=function(){return this._isMultigraph},r.prototype.isCompound=function(){return this._isCompound},r.prototype.setGraph=function(t){return this._label=t,this},r.prototype.graph=function(){return this._label},r.prototype.setDefaultNodeLabel=function(t){return c.isFunction(t)||(t=c.constant(t)),this._defaultNodeLabelFn=t,this},r.prototype.nodeCount=function(){return this._nodeCount},r.prototype.nodes=function(){return c.keys(this._nodes)},r.prototype.sources=function(){return c.filter(this.nodes(),function(t){return c.isEmpty(this._in[t])},this)},r.prototype.sinks=function(){return c.filter(this.nodes(),function(t){return c.isEmpty(this._out[t])},this)},r.prototype.setNodes=function(t,e){var n=arguments;return c.each(t,function(t){n.length>1?this.setNode(t,e):this.setNode(t)},this),this},r.prototype.setNode=function(t,e){return c.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]=h,this._children[t]={},this._children[h][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)},r.prototype.node=function(t){return this._nodes[t]},r.prototype.hasNode=function(t){return c.has(this._nodes,t)},r.prototype.removeNode=function(t){var e=this;if(c.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],c.each(this.children(t),function(t){this.setParent(t)},this),delete this._children[t]),c.each(c.keys(this._in[t]),n),delete this._in[t],delete this._preds[t],c.each(c.keys(this._out[t]),n),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this},r.prototype.setParent=function(t,e){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(c.isUndefined(e))e=h;else{for(var n=e;!c.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},r.prototype._removeFromParentsChildList=function(t){delete this._children[this._parent[t]][t]},r.prototype.parent=function(t){if(this._isCompound){var e=this._parent[t];if(e!==h)return e}},r.prototype.children=function(t){if(c.isUndefined(t)&&(t=h),this._isCompound){var e=this._children[t];if(e)return c.keys(e)}else{if(t===h)return this.nodes();if(this.hasNode(t))return[]}},r.prototype.predecessors=function(t){var e=this._preds[t];return e?c.keys(e):void 0},r.prototype.successors=function(t){var e=this._sucs[t];return e?c.keys(e):void 0},r.prototype.neighbors=function(t){var e=this.predecessors(t);return e?c.union(e,this.successors(t)):void 0},r.prototype.setDefaultEdgeLabel=function(t){return c.isFunction(t)||(t=c.constant(t)),this._defaultEdgeLabelFn=t,this},r.prototype.edgeCount=function(){return this._edgeCount},r.prototype.edges=function(){return c.values(this._edgeObjs)},r.prototype.setPath=function(t,e){var n=this,r=arguments;return c.reduce(t,function(t,i){return r.length>1?n.setEdge(t,i,e):n.setEdge(t,i),i}),this},r.prototype.setEdge=function(){var t,e,n,r,a=!1;c.isPlainObject(arguments[0])?(t=arguments[0].v,e=arguments[0].w,n=arguments[0].name,2===arguments.length&&(r=arguments[1],a=!0)):(t=arguments[0],e=arguments[1],n=arguments[3],arguments.length>2&&(r=arguments[2],a=!0)),t=""+t,e=""+e,c.isUndefined(n)||(n=""+n);var u=o(this._isDirected,t,e,n);if(c.has(this._edgeLabels,u))return a&&(this._edgeLabels[u]=r),this;if(!c.isUndefined(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(e),this._edgeLabels[u]=a?r:this._defaultEdgeLabelFn(t,e,n);var l=s(this._isDirected,t,e,n);return t=l.v,e=l.w,Object.freeze(l),this._edgeObjs[u]=l,i(this._preds[e],t),i(this._sucs[t],e),this._in[e][u]=l,this._out[t][u]=l,this._edgeCount++,this},r.prototype.edge=function(t,e,n){var r=1===arguments.length?u(this._isDirected,arguments[0]):o(this._isDirected,t,e,n);return this._edgeLabels[r]},r.prototype.hasEdge=function(t,e,n){var r=1===arguments.length?u(this._isDirected,arguments[0]):o(this._isDirected,t,e,n);return c.has(this._edgeLabels,r)},r.prototype.removeEdge=function(t,e,n){var r=1===arguments.length?u(this._isDirected,arguments[0]):o(this._isDirected,t,e,n),i=this._edgeObjs[r];return i&&(t=i.v,e=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],a(this._preds[e],t),a(this._sucs[t],e),delete this._in[e][r],delete this._out[t][r],this._edgeCount--),this},r.prototype.inEdges=function(t,e){var n=this._in[t];if(n){var r=c.values(n);return e?c.filter(r,function(t){return t.v===e}):r}},r.prototype.outEdges=function(t,e){var n=this._out[t];if(n){var r=c.values(n);return e?c.filter(r,function(t){return t.w===e}):r}},r.prototype.nodeEdges=function(t,e){var n=this.inEdges(t,e);return n?n.concat(this.outEdges(t,e)):void 0}},function(t,e,n){var r=n(22),i=n(23),a=n(14);e.draw=function(t,e,n){var o;o=i.parser,o.yy=r,o.parse(t);var s=a.select("#"+e),u=s.append("g");u.append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size","32px").style("text-anchor","middle").text("mermaid "+n),s.attr("height",100),s.attr("width",400)}},function(t,e){},function(t,e,n){var r=(n(10),n(7));describe("when parsing ",function(){beforeEach(function(){r.parser.yy=n(10),r.parser.yy.clear()}),it("should handle a nodes and edges",function(){var t=(r.parser.parse("graph TD;\nA-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it(!0,function(){var t=(r.parser.parse("graph >;A-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges(),n=r.parser.yy.getDirection();expect(n).toBe("LR"),expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it(!1,function(){var t=(r.parser.parse("graph <;A-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges(),n=r.parser.yy.getDirection();expect(n).toBe("RL"),expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it(0,function(){var t=(r.parser.parse("graph ^;A-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges(),n=r.parser.yy.getDirection();expect(n).toBe("BT"),expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle lower-case 'v' as direction TB",function(){var t=(r.parser.parse("graph v;A-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges(),n=r.parser.yy.getDirection();expect(n).toBe("TB"),expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle a nodes and edges and a space between link and node",function(){var t=(r.parser.parse("graph TD;A --> B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle a nodes and edges, a space between link and node and each line ending without semicolon",function(){var t=(r.parser.parse("graph TD\nA --> B\n style e red"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle statements ending without semicolon",function(){var t=(r.parser.parse("graph TD\nA-->B\nB-->C"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(2),expect(e[1].start).toBe("B"),expect(e[1].end).toBe("C"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle a comments",function(){var t=(r.parser.parse("graph TD;\n%% CComment\n A-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle comments a at the start",function(){var t=(r.parser.parse("%% Comment\ngraph TD;\n A-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle comments at the end",function(){var t=(r.parser.parse("graph TD;\n A-->B\n %% Comment at the find\n"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle comments at the end no trailing newline",function(){var t=(r.parser.parse("graph TD;\n A-->B\n%% Commento"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle comments at the end many trailing newlines",function(){var t=(r.parser.parse("graph TD;\n A-->B\n%% Commento\n\n\n"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle no trailing newlines",function(){var t=(r.parser.parse("graph TD;\n A-->B"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle many trailing newlines",function(){var t=(r.parser.parse("graph TD;\n A-->B\n\n"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle a comments with blank rows in-between",function(){var t=(r.parser.parse("graph TD;\n\n\n %% Comment\n A-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle a comments mermaid flowchart code in them",function(){var t=(r.parser.parse("graph TD;\n\n\n %% Test od>Odd shape]-->|Two line<br>edge comment|ro;\n A-->B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(1),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("it should handle a trailing whitespaces after statememnts",function(){var t=(r.parser.parse("graph TD;\n\n\n %% Comment\n A-->B; \n B-->C;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(2),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].type).toBe("arrow"),expect(e[0].text).toBe("")}),it("should handle open ended edges",function(){var t=(r.parser.parse("graph TD;A---B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_open")}),it("should handle cross ended edges",function(){var t=(r.parser.parse("graph TD;A--xB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("should handle open ended edges",function(){var t=(r.parser.parse("graph TD;A--oB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_circle")}),it("should handle subgraphs",function(){var t=(r.parser.parse("graph TD;A-->B;subgraph myTitle;c-->d;end;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow")}),it("should handle subgraphs",function(){var t=(r.parser.parse("graph TD\nA-->B\nsubgraph myTitle\n\n c-->d \nend\n"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow")}),it("should handle nested subgraphs",function(){var t="graph TD\nA-->B\nsubgraph myTitle\n\n c-->d \n\n subgraph inner\n\n   e-->f \n end \n\n subgraph inner\n\n   h-->i \n end \n\nend\n";r.parser.parse(t)}),it("should handle subgraphs",function(){var t=(r.parser.parse("graph TD\nA-->B\nsubgraph myTitle\nc-->d\nend;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow")}),it("should handle subgraphs",function(){var t=(r.parser.parse("graph TD\nA-->B\nsubgraph myTitle\nc-- text -->d\nd-->e\n end;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow")}),it("should handle classDefs with style in classes",function(){var t=(r.parser.parse("graph TD\nA-->B\nclassDef exClass font-style:bold;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow")}),it("should handle classDefs with % in classes",function(){var t=(r.parser.parse("graph TD\nA-->B\nclassDef exClass fill:#f96,stroke:#333,stroke-width:4px,font-size:50%,font-style:bold;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow")}),it("should handle style definitons with more then 1 digit in a row",function(){var t=(r.parser.parse("graph TD\nA-->B1\nA-->B2\nA-->B3\nA-->B4\nA-->B5\nA-->B6\nA-->B7\nA-->B8\nA-->B9\nA-->B10\nA-->B11\nlinkStyle 10 stroke-width:1px;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow")}),describe("it should handle text on edges",function(){it("it should handle text without space",function(){var t=(r.parser.parse("graph TD;A--x|textNoSpace|B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("should handle  with space",function(){var t=(r.parser.parse("graph TD;A--x|text including space|B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("it should handle text with /",function(){var t=(r.parser.parse("graph TD;A--x|text with / should work|B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].text).toBe("text with / should work")}),it("it should handle space and space between vertices and link",function(){var t=(r.parser.parse("graph TD;A --x|textNoSpace| B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("should handle space and CAPS",function(){var t=(r.parser.parse("graph TD;A--x|text including CAPS space|B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("should handle space and dir",function(){var t=(r.parser.parse("graph TD;A--x|text including URL space|B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross"),expect(t[0].text).toBe("text including URL space")}),it("should handle space and send",function(){var t=(r.parser.parse("graph TD;A--text including URL space and send-->B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow"),expect(t[0].text).toBe("text including URL space and send")}),it("should handle space and send",function(){var t=(r.parser.parse("graph TD;A-- text including URL space and send -->B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow"),expect(t[0].text).toBe("text including URL space and send")}),it("should handle space and dir (TD)",function(){var t=(r.parser.parse("graph TD;A--x|text including R TD space|B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross"),expect(t[0].text).toBe("text including R TD space")}),it("should handle `",function(){var t=(r.parser.parse("graph TD;A--x|text including `|B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross"),expect(t[0].text).toBe("text including `")}),it("should handle keywords",function(){var t=(r.parser.parse("graph TD;A--x|text including graph space|B;"),
  r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].text).toBe("text including graph space")}),it("should handle keywords",function(){var t=(r.parser.parse("graph TD;V-->a[v]"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.a.text).toBe("v")}),it("should handle keywords",function(){var t=(r.parser.parse("graph TD;V-->a[v]"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.a.text).toBe("v")}),it("should handle quoted text",function(){var t=(r.parser.parse('graph TD;V-- "test string()" -->a[v]'),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].text).toBe("test string()")})}),describe("it should handle new line type notation",function(){it("it should handle regular lines",function(){var t=(r.parser.parse("graph TD;A-->B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].stroke).toBe("normal")}),it("it should handle dotted lines",function(){var t=(r.parser.parse("graph TD;A-.->B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].stroke).toBe("dotted")}),it("it should handle dotted lines",function(){var t=(r.parser.parse("graph TD;A==>B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].stroke).toBe("thick")}),it("it should handle text on lines",function(){var t=(r.parser.parse("graph TD;A-- test text with == -->B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].stroke).toBe("normal")}),it("it should handle text on lines",function(){var t=(r.parser.parse("graph TD;A-. test text with == .->B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].stroke).toBe("dotted")}),it("it should handle text on lines",function(){var t=(r.parser.parse("graph TD;A== test text with - ==>B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].stroke).toBe("thick")})}),describe("it should handle text on edges using the new notation",function(){it("it should handle text without space",function(){var t=(r.parser.parse("graph TD;A-- textNoSpace --xB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("it should handle text with multiple leading space",function(){var t=(r.parser.parse("graph TD;A--    textNoSpace --xB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("should handle  with space",function(){var t=(r.parser.parse("graph TD;A-- text including space --xB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("it should handle text with /",function(){var t=(r.parser.parse("graph TD;A -- text with / should work --x B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].text).toBe("text with / should work")}),it("it should handle space and space between vertices and link",function(){var t=(r.parser.parse("graph TD;A -- textNoSpace --x B;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("should handle space and CAPS",function(){var t=(r.parser.parse("graph TD;A-- text including CAPS space --xB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross")}),it("should handle space and dir",function(){var t=(r.parser.parse("graph TD;A-- text including URL space --xB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross"),expect(t[0].text).toBe("text including URL space")}),it("should handle space and dir (TD)",function(){var t=(r.parser.parse("graph TD;A-- text including R TD space --xB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].type).toBe("arrow_cross"),expect(t[0].text).toBe("text including R TD space")}),it("should handle keywords",function(){var t=(r.parser.parse("graph TD;A-- text including graph space and v --xB;"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].text).toBe("text including graph space and v")}),it("should handle keywords",function(){var t=(r.parser.parse("graph TD;A-- text including graph space and v --xB[blav]"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].text).toBe("text including graph space and v")}),xit("should handle text on open links",function(){var t=(r.parser.parse("graph TD;A-- text including graph space --B"),r.parser.yy.getVertices(),r.parser.yy.getEdges());expect(t[0].text).toBe("text including graph space")})}),it("should handle multi-line text",function(){var t=(r.parser.parse("graph TD;A--o|text space|B;\n B-->|more text with space|C;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e[0].type).toBe("arrow_circle"),expect(e[1].type).toBe("arrow"),expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(t.C.id).toBe("C"),expect(e.length).toBe(2),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[1].start).toBe("B"),expect(e[1].end).toBe("C"),expect(e[1].text).toBe("more text with space")}),it("should handle multiple edges",function(){var t=(r.parser.parse("graph TD;A---|This is the 123 s text|B;\nA---|This is the second edge|B;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.id).toBe("A"),expect(t.B.id).toBe("B"),expect(e.length).toBe(2),expect(e[0].start).toBe("A"),expect(e[0].end).toBe("B"),expect(e[0].text).toBe("This is the 123 s text"),expect(e[1].start).toBe("A"),expect(e[1].end).toBe("B"),expect(e[1].text).toBe("This is the second edge")}),it("should handle text in vertices with space",function(){var t=(r.parser.parse("graph TD;A[chimpansen hoppar]-->C;"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.A.type).toBe("square"),expect(t.A.text).toBe("chimpansen hoppar")}),it("should handle text in vertices with space with spaces between vertices and link",function(){var t=(r.parser.parse("graph TD;A[chimpansen hoppar] --> C;"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.A.type).toBe("square"),expect(t.A.text).toBe("chimpansen hoppar")}),it("should handle quoted text in vertices ",function(){var t=(r.parser.parse('graph TD;A["chimpansen hoppar ()[]"] --> C;'),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.A.type).toBe("square"),expect(t.A.text).toBe("chimpansen hoppar ()[]")}),it("should handle text in circle vertices with space",function(){var t=(r.parser.parse("graph TD;A((chimpansen hoppar))-->C;"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.A.type).toBe("circle"),expect(t.A.text).toBe("chimpansen hoppar")}),it("should handle text in diamond vertices with space",function(){var t=(r.parser.parse("graph TD;A(chimpansen hoppar)-->C;"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.A.type).toBe("round"),expect(t.A.text).toBe("chimpansen hoppar")}),it("should handle text in with ?",function(){var t=(r.parser.parse("graph TD;A(?)-->|?|C;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.text).toBe("?"),expect(e[0].text).toBe("?")}),it("should handle text in with \xe9\xe8\xea\xe0\xe7\xf4",function(){var t=(r.parser.parse("graph TD;A(\xe9\xe8\xea\xe0\xe7\xf4)-->|\xe9\xe8\xea\xe0\xe7\xf4|C;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.text).toBe("\xe9\xe8\xea\xe0\xe7\xf4"),expect(e[0].text).toBe("\xe9\xe8\xea\xe0\xe7\xf4")}),it("should handle text in with ,.?!+-*",function(){var t=(r.parser.parse("graph TD;A(,.?!+-*)-->|,.?!+-*|C;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(t.A.text).toBe(",.?!+-*"),expect(e[0].text).toBe(",.?!+-*")}),describe("it should handle text in vertices, ",function(){it("it should handle space",function(){var t=(r.parser.parse("graph TD;A-->C(Chimpansen hoppar);"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.C.type).toBe("round"),expect(t.C.text).toBe("Chimpansen hoppar")}),it("it should handle \xe5\xe4\xf6 and minus",function(){var t=(r.parser.parse("graph TD;A-->C{Chimpansen hoppar \xe5\xe4\xf6-\xc5\xc4\xd6};"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.C.type).toBe("diamond"),expect(t.C.text).toBe("Chimpansen hoppar \xe5\xe4\xf6-\xc5\xc4\xd6")}),it("it should handle with \xe5\xe4\xf6, minus and space and br",function(){var t=(r.parser.parse("graph TD;A-->C(Chimpansen hoppar \xe5\xe4\xf6  <br> -  \xc5\xc4\xd6);"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.C.type).toBe("round"),expect(t.C.text).toBe("Chimpansen hoppar \xe5\xe4\xf6  <br> -  \xc5\xc4\xd6")}),xit("it should handle \xe5\xe4\xf6, minus and space and br",function(){var t=(r.parser.parse("graph TD; A[Object&#40;foo,bar&#41;]-->B(Thing);"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.C.type).toBe("round"),expect(t.C.text).toBe(" A[Object&#40;foo,bar&#41;]-->B(Thing);")}),it("it should handle unicode chars",function(){var t=(r.parser.parse("graph TD;A-->C(\u041d\u0430\u0447\u0430\u043b\u043e);"),r.parser.yy.getVertices());expect(t.C.text).toBe("\u041d\u0430\u0447\u0430\u043b\u043e")}),it("it should handle backslask",function(){var t=(r.parser.parse("graph TD;A-->C(c:\\windows);"),r.parser.yy.getVertices());expect(t.C.text).toBe("c:\\windows")}),it("it should handle CAPS",function(){var t=(r.parser.parse("graph TD;A-->C(some CAPS);"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.C.type).toBe("round"),expect(t.C.text).toBe("some CAPS")}),it("it should handle directions",function(){var t=(r.parser.parse("graph TD;A-->C(some URL);"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.C.type).toBe("round"),expect(t.C.text).toBe("some URL")})}),it("should handle a single node",function(){var t=(r.parser.parse("graph TD;A;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.A.styles.length).toBe(0)}),it("should handle a single square node",function(){var t=(r.parser.parse("graph TD;a[A];"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.a.styles.length).toBe(0),expect(t.a.type).toBe("square")}),it("should handle a single round square node",function(){var t=(r.parser.parse("graph TD;a[A];"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.a.styles.length).toBe(0),expect(t.a.type).toBe("square")}),it("should handle a single circle node",function(){var t=(r.parser.parse("graph TD;a((A));"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.a.type).toBe("circle")}),it("should handle a single round node",function(){var t=(r.parser.parse("graph TD;a(A);"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.a.type).toBe("round")}),it("should handle a single odd node",function(){var t=(r.parser.parse("graph TD;a>A];"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.a.type).toBe("odd")}),it("should handle a single diamond node",function(){var t=(r.parser.parse("graph TD;a{A};"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.a.type).toBe("diamond")}),it("should handle a single diamond node with html in it",function(){var t=(r.parser.parse("graph TD;a{A <br> end};"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.a.type).toBe("diamond"),expect(t.a.text).toBe("A <br> end")}),it("should handle a single round node with html in it",function(){var t=(r.parser.parse("graph TD;a(A <br> end);"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.a.type).toBe("round"),expect(t.a.text).toBe("A <br> end")}),it("should handle a single node with alphanumerics starting on a char",function(){var t=(r.parser.parse("graph TD;id1;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t.id1.styles.length).toBe(0)}),it("should handle a single node with alphanumerics starting on a num",function(){var t=(r.parser.parse("graph TD;1id;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t["1id"].styles.length).toBe(0)}),it("should handle a single node with alphanumerics containing a minus sign",function(){var t=(r.parser.parse("graph TD;i-d;"),r.parser.yy.getVertices()),e=r.parser.yy.getEdges();expect(e.length).toBe(0),expect(t["i-d"].styles.length).toBe(0)}),it("should handle styles for vertices",function(){var t=(r.parser.parse("graph TD;style Q background:#fff;"),r.parser.yy.getVertices());r.parser.yy.getEdges(),t.Q.styles[0];expect(t.Q.styles.length).toBe(1),expect(t.Q.styles[0]).toBe("background:#fff")}),it("should handle styles for edges",function(){var t=(r.parser.parse("graph TD;a-->b;\nstyle #0 stroke: #f66;"),r.parser.yy.getEdges());expect(t.length).toBe(1)}),it("should handle multiple styles for a vortex",function(){var t=(r.parser.parse("graph TD;style R background:#fff,border:1px solid red;"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.R.styles.length).toBe(2),expect(t.R.styles[0]).toBe("background:#fff"),expect(t.R.styles[1]).toBe("border:1px solid red")}),it("should handle multiple styles in a graph",function(){var t=(r.parser.parse("graph TD;style S background:#aaa;\nstyle T background:#bbb,border:1px solid red;"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.S.styles.length).toBe(1),expect(t.T.styles.length).toBe(2),expect(t.S.styles[0]).toBe("background:#aaa"),expect(t.T.styles[0]).toBe("background:#bbb"),expect(t.T.styles[1]).toBe("border:1px solid red")}),it("should handle styles and graph definitons in a graph",function(){var t=(r.parser.parse("graph TD;S-->T;\nstyle S background:#aaa;\nstyle T background:#bbb,border:1px solid red;"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(t.S.styles.length).toBe(1),expect(t.T.styles.length).toBe(2),expect(t.S.styles[0]).toBe("background:#aaa"),expect(t.T.styles[0]).toBe("background:#bbb"),expect(t.T.styles[1]).toBe("border:1px solid red")}),it("should handle styles and graph definitons in a graph",function(){var t=(r.parser.parse("graph TD;style T background:#bbb,border:1px solid red;"),r.parser.yy.getVertices());expect(t.T.styles.length).toBe(2),expect(t.T.styles[0]).toBe("background:#bbb"),expect(t.T.styles[1]).toBe("border:1px solid red")}),describe("special characters should be be handled.",function(){var t=function(t){var e=(r.parser.parse("graph TD;A("+t+")-->B;"),r.parser.yy.getVertices());r.parser.yy.getEdges();expect(e.A.id).toBe("A"),expect(e.B.id).toBe("B"),expect(e.A.text).toBe(t)};it("it should be able to parse a '.'",function(){t("."),t("Start 103a.a1")}),it("it should be able to parse text containing '_'",function(){t("_")}),it("it should be able to parse a ':'",function(){t(":")}),it("it should be able to parse a ','",function(){t(",")}),it("it should be able to parse text containing '-'",function(){t("a-b")}),it("it should be able to parse a '+'",function(){t("+")}),it("it should be able to parse a '*'",function(){t("*")}),it("it should be able to parse a '<'",function(){t("<")}),it("it should be able to parse a '>'",function(){t(">")}),it("it should be able to parse a '='",function(){t("=")})}),it("should be possible to declare a class",function(){var t=(r.parser.parse("graph TD;classDef exClass background:#bbb,border:1px solid red;"),r.parser.yy.getClasses());expect(t.exClass.styles.length).toBe(2),expect(t.exClass.styles[0]).toBe("background:#bbb"),expect(t.exClass.styles[1]).toBe("border:1px solid red")}),it("should be possible to declare a class with a dot in the style",function(){var t=(r.parser.parse("graph TD;classDef exClass background:#bbb,border:1.5px solid red;"),r.parser.yy.getClasses());expect(t.exClass.styles.length).toBe(2),expect(t.exClass.styles[0]).toBe("background:#bbb"),expect(t.exClass.styles[1]).toBe("border:1.5px solid red")}),it("should be possible to declare a class with a space in the style",function(){var t=(r.parser.parse("graph TD;classDef exClass background:  #bbb,border:1.5px solid red;"),r.parser.yy.getClasses());expect(t.exClass.styles.length).toBe(2),expect(t.exClass.styles[0]).toBe("background:  #bbb"),expect(t.exClass.styles[1]).toBe("border:1.5px solid red")}),it("should be possible to apply a class to a vertex",function(){var t="";t+="graph TD;\n",t+="classDef exClass background:#bbb,border:1px solid red;\n",t+="a-->b;\n",t+="class a exClass;";var e=(r.parser.parse(t),r.parser.yy.getClasses());expect(e.exClass.styles.length).toBe(2),expect(e.exClass.styles[0]).toBe("background:#bbb"),expect(e.exClass.styles[1]).toBe("border:1px solid red")}),it("should be possible to apply a class to a comma separated list of vertices",function(){var t="";t+="graph TD;\n",t+="classDef exClass background:#bbb,border:1px solid red;\n",t+="a-->b;\n",t+="class a,b exClass;";var e=(r.parser.parse(t),r.parser.yy.getClasses()),n=r.parser.yy.getVertices();expect(e.exClass.styles.length).toBe(2),expect(e.exClass.styles[0]).toBe("background:#bbb"),expect(e.exClass.styles[1]).toBe("border:1px solid red"),expect(n.a.classes[0]).toBe("exClass"),expect(n.b.classes[0]).toBe("exClass")})})},function(t,e,n){var r=n(24).parser;r.yy=n(20);var i,a=n(14),o=n(81),s={titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,sidePadding:75,gridLineStartPadding:35,fontSize:11,fontFamily:'"Open-Sans", "sans-serif"'};t.exports.setConf=function(t){var e=Object.keys(t);e.forEach(function(e){s[e]=t[e]})};var u;t.exports.draw=function(t,e){function n(t,e,n){var r=s.barHeight,i=r+s.barGap,o=s.topPadding,u=s.sidePadding,p=a.scale.linear().domain([0,A.length]).range(["#00B9FA","#F95002"]).interpolate(a.interpolateHcl);l(u,o,e,n),c(t,i,o,u,r,p,e,n),h(i,o,u,r,p),f(u,o,e,n)}function c(t,e,n,r,i,a,o,u){var c=(x.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(t){return o-r/2}).attr("height",e).attr("class",function(t){for(var e=0;e<A.length;e++)if(t.type===A[e])return"section section"+e%s.numberSectionStyles;return"section section0"}),x.append("g").selectAll("rect").data(t).enter());c.append("rect").attr("rx",3).attr("ry",3).attr("x",function(t){return w(t.startTime)+r}).attr("y",function(t,r){return r*e+n}).attr("width",function(t){return w(t.endTime)-w(t.startTime)}).attr("height",i).attr("class",function(t){for(var e="task ",n=0,r=0;r<A.length;r++)t.type===A[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}),c.append("text").text(function(t){return t.task}).attr("font-size",s.fontSize).attr("x",function(t){var e=w(t.startTime),n=w(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=w(t.startTime),n=w(t.endTime),r=this.getBBox().width,i=0,a=0;a<A.length;a++)t.type===A[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,r){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=a.svg.axis().scale(w).orient("bottom").tickSize(-r+e+s.gridLineStartPadding,0,0).tickFormat(a.time.format.multi(o));i>7&&230>i&&(h=h.ticks(a.time.monday.range));x.append("g").attr("class","grid").attr("transform","translate("+t+", "+(r-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,n,r,i){for(var a=[],o=0,u=0;u<A.length;u++)a[u]=[A[u],g(A[u],E)];x.append("g").selectAll("text").data(a).enter().append("text").text(function(t){return t[0]}).attr("x",10).attr("y",function(n,r){if(!(r>0))return n[1]*t/2+e;for(var i=0;r>i;i++)return o+=a[r-1][1],n[1]*t/2+o*t+e}).attr("class",function(t){for(var e=0;e<A.length;e++)if(t[0]===A[e])return"sectionTitle sectionTitle"+e%s.numberSectionStyles;return"sectionTitle"})}function f(t,e,n,r){var i=x.append("g").attr("class","today"),a=new Date;i.append("line").attr("x1",w(a)+t).attr("x2",w(a)+t).attr("y1",s.titleTopMargin).attr("y2",r-s.titleTopMargin).attr("class","today")}function p(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 d(t){for(var e=t.length,n={};e;)n[t[--e]]=(n[t[e]]||0)+1;return n}function g(t,e){return d(e)[t]||0}r.yy.clear(),r.parse(t);var y=document.getElementById(e);u=y.parentElement.offsetWidth,"undefined"==typeof u&&(u=1200),"undefined"!=typeof s.useWidth&&(u=s.useWidth);var m=r.yy.getTasks(),v=m.length*(s.barHeight+s.barGap)+2*s.topPadding;y.setAttribute("height","100%"),y.setAttribute("viewBox","0 0 "+u+" "+v);var x=a.select("#"+e),b=(a.time.format("%Y-%m-%d"),a.min(m,function(t){return t.startTime})),_=a.max(m,function(t){return t.endTime}),w=a.time.scale().domain([a.min(m,function(t){return t.startTime}),a.max(m,function(t){return t.endTime})]).rangeRound([0,u-150]),A=[];i=o.duration(_-b).asDays();for(var k=0;k<m.length;k++)A.push(m[k].type);var E=A;A=p(A),n(m,u,v),"undefined"!=typeof s.useWidth&&y.setAttribute("width",u);x.append("text").text(r.yy.getTitle()).attr("x",u/2).attr("y",s.titleTopMargin).attr("class","titleText")}},function(t,e,n){var r=n(25).parser;r.yy=n(12);var i=n(49),a=n(14),o={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,mirrorActors:!1,bottomMarginAdj:1};e.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){"undefined"==typeof t[e]?t[e]=n:t[e]=r(n,t[e])},updateLoops:function(t,n,r,i){var a=this,s=0;this.list.forEach(function(u){s++;var c=a.list.length-s+1;a.updateVal(u,"startx",t-c*o.boxMargin,Math.min),a.updateVal(u,"starty",n-c*o.boxMargin,Math.min),a.updateVal(u,"stopx",r+c*o.boxMargin,Math.max),a.updateVal(u,"stopy",i+c*o.boxMargin,Math.max),a.updateVal(e.bounds.data,"startx",t-c*o.boxMargin,Math.min),a.updateVal(e.bounds.data,"starty",n-c*o.boxMargin,Math.min),a.updateVal(e.bounds.data,"stopx",r+c*o.boxMargin,Math.max),a.updateVal(e.bounds.data,"stopy",i+c*o.boxMargin,Math.max)})},insert:function(t,n,r,i){var a,o,s,u;a=Math.min(t,r),s=Math.max(t,r),o=Math.min(n,i),u=Math.max(n,i),this.updateVal(e.bounds.data,"startx",a,Math.min),this.updateVal(e.bounds.data,"starty",o,Math.min),this.updateVal(e.bounds.data,"stopx",s,Math.max),this.updateVal(e.bounds.data,"stopy",u,Math.max),this.updateLoops(a,o,s,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 n=this.list.pop();n.elsey=e.bounds.getVerticalPos(),n.elseText=t,this.list.push(n)},bumpVerticalPos:function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}};var s=function(t,n,r,a){var s=i.getNoteRect();s.x=n,s.y=r,s.width=o.width,s["class"]="note";var u=t.append("g"),c=i.drawRect(u,s),l=i.getTextObj();l.x=n,l.y=r,l.textMargin=o.noteMargin,l.dy="1em",l.text=a.message,l["class"]="noteText";var h=i.drawText(u,l,o.width),f=h[0][0].getBBox().height;f>o.width?(h.remove(),u=t.append("g"),h=i.drawText(u,l,2*o.width),f=h[0][0].getBBox().height,c.attr("width",2*o.width),e.bounds.insert(n,r,n+2*o.width,r+2*o.noteMargin+f)):e.bounds.insert(n,r,n+o.width,r+2*o.noteMargin+f),c.attr("height",f+2*o.noteMargin),e.bounds.bumpVerticalPos(f+2*o.noteMargin)},u=function(t,n,i,a,o){var s,u=t.append("g"),c=n+(i-n)/2,l=u.append("text").attr("x",c).attr("y",a-7).style("text-anchor","middle").attr("class","messageText").text(o.message);s="undefined"!=typeof l[0][0].getBBox?l[0][0].getBBox().width:l[0][0].getBoundingClientRect();var h;if(n===i){h=u.append("path").attr("d","M "+n+","+a+" C "+(n+60)+","+(a-10)+" "+(n+60)+","+(a+30)+" "+n+","+(a+20)),e.bounds.bumpVerticalPos(30);var f=Math.max(s/2,100);e.bounds.insert(n-f,e.bounds.getVerticalPos()-10,i+f,e.bounds.getVerticalPos())}else h=u.append("line"),h.attr("x1",n),h.attr("y1",a),h.attr("x2",i),h.attr("y2",a),e.bounds.insert(n,e.bounds.getVerticalPos()-10,i,e.bounds.getVerticalPos());o.type===r.yy.LINETYPE.DOTTED||o.type===r.yy.LINETYPE.DOTTED_CROSS||o.type===r.yy.LINETYPE.DOTTED_OPEN?(h.style("stroke-dasharray","3, 3"),h.attr("class","messageLine1")):h.attr("class","messageLine0"),h.attr("stroke-width",2),h.attr("stroke","black"),h.style("fill","none"),(o.type===r.yy.LINETYPE.SOLID||o.type===r.yy.LINETYPE.DOTTED)&&h.attr("marker-end","url(#arrowhead)"),(o.type===r.yy.LINETYPE.SOLID_CROSS||o.type===r.yy.LINETYPE.DOTTED_CROSS)&&h.attr("marker-end","url(#crosshead)")};t.exports.drawActors=function(t,n,r,a){var s;for(s=0;s<r.length;s++){var u=r[s];n[u].x=s*o.actorMargin+s*o.width,n[u].y=a,n[u].width=o.diagramMarginY,n[u].height=o.diagramMarginY,i.drawActor(t,n[u].x,a,n[u].description,o),e.bounds.insert(n[u].x,a,n[u].x+o.width,o.height)}e.bounds.bumpVerticalPos(o.height)},t.exports.setConf=function(t){var e=Object.keys(t);e.forEach(function(e){o[e]=t[e]})},t.exports.draw=function(n,c){r.yy.clear(),r.parse(n+"\n"),e.bounds.init();var l,h,f=a.select("#"+c),p=r.yy.getActors(),d=r.yy.getActorKeys(),g=r.yy.getMessages();t.exports.drawActors(f,p,d,0),i.insertArrowHead(f),i.insertArrowCrossHead(f),g.forEach(function(t){var n;switch(t.type){case r.yy.LINETYPE.NOTE:e.bounds.bumpVerticalPos(o.boxMargin),l=p[t.from].x,h=p[t.to].x,0!==t.placement?s(f,l+(o.width+o.actorMargin)/2,e.bounds.getVerticalPos(),t):s(f,l-(o.width+o.actorMargin)/2,e.bounds.getVerticalPos(),t);break;case r.yy.LINETYPE.LOOP_START:e.bounds.bumpVerticalPos(o.boxMargin),e.bounds.newLoop(t.message),e.bounds.bumpVerticalPos(o.boxMargin+o.boxTextMargin);break;case r.yy.LINETYPE.LOOP_END:n=e.bounds.endLoop(),i.drawLoop(f,n,"loop",o),e.bounds.bumpVerticalPos(o.boxMargin);break;case r.yy.LINETYPE.OPT_START:e.bounds.bumpVerticalPos(o.boxMargin),e.bounds.newLoop(t.message),e.bounds.bumpVerticalPos(o.boxMargin+o.boxTextMargin);break;case r.yy.LINETYPE.OPT_END:n=e.bounds.endLoop(),i.drawLoop(f,n,"opt",o),e.bounds.bumpVerticalPos(o.boxMargin);break;case r.yy.LINETYPE.ALT_START:e.bounds.bumpVerticalPos(o.boxMargin),e.bounds.newLoop(t.message),e.bounds.bumpVerticalPos(o.boxMargin+o.boxTextMargin);break;case r.yy.LINETYPE.ALT_ELSE:e.bounds.bumpVerticalPos(o.boxMargin),n=e.bounds.addElseToLoop(t.message),e.bounds.bumpVerticalPos(o.boxMargin);break;case r.yy.LINETYPE.ALT_END:n=e.bounds.endLoop(),i.drawLoop(f,n,"alt",o),e.bounds.bumpVerticalPos(o.boxMargin);break;default:e.bounds.bumpVerticalPos(o.messageMargin),l=p[t.from].x+o.width/2,h=p[t.to].x+o.width/2,u(f,l,h,e.bounds.getVerticalPos(),t)}}),o.mirrorActors&&(e.bounds.bumpVerticalPos(2*o.boxMargin),t.exports.drawActors(f,p,d,e.bounds.getVerticalPos()));var y=e.bounds.getBounds(),m=y.stopy-y.starty+2*o.diagramMarginY;o.mirrorActors&&(m=m-o.boxMargin+o.bottomMarginAdj);var v=y.stopx-y.startx+2*o.diagramMarginX;o.useMaxWidth?(f.attr("height","100%"),f.attr("width","100%"),f.attr("style","max-width:"+v+"px;")):(f.attr("height",m),f.attr("width",v)),f.attr("viewBox",y.startx-o.diagramMarginX+" -"+o.diagramMarginY+" "+v+" "+m)}},function(t,e,n){(function(r){var i=n(99),a=n(27),o=0;t.exports.mermaidAPI=a;var s=function(){var t;2===arguments.length?("undefined"!=typeof arguments[0]&&(mermaid.sequenceConfig=arguments[0]),t=arguments[1]):t=arguments[0],t=void 0===t?document.querySelectorAll(".mermaid"):"string"==typeof t?document.querySelectorAll(t):t instanceof Node?[t]:t;var e;"undefined"!=typeof mermaid_config&&a.initialize(mermaid_config),"undefined"!=typeof mermaid.ganttConfig&&a.initialize({gantt:mermaid.ganttConfig});var n=function(t){r.innerHTML=t};for(e=0;e<t.length;e++){var r=t[e];if(!r.getAttribute("data-processed")){r.setAttribute("data-processed",!0);var s="mermaidChart"+o++,u=r.innerHTML;u=u.replace(/>/g,"&gt;"),u=u.replace(/</g,"&lt;"),u=i.decode(u).trim(),a.render(s,u,n,r)}}};e.tester=function(){},e.init=s,e.version=function(){return"v"+n(48).version},e.initialize=function(t){a.initialize(t)};var u=function(t,e){return"undefined"==typeof e?!1:t===e};r.mermaid={startOnLoad:!0,htmlLabels:!0,init:function(t,e){s.apply(null,arguments)},initialize:function(t){a.initialize(t)},version:function(){return a.version()},parse:function(t){return a.parse(t)},parseError:function(t,e){console.log("Mermaid Syntax error:"),console.log(t)},render:function(t,e,n,r){return a.render(t,e,n,r)}},e.contentLoaded=function(){var t;"undefined"!=typeof mermaid_config&&u(!1,mermaid_config.htmlLabels)&&(r.mermaid.htmlLabels=!1),r.mermaid.startOnLoad&&"undefined"!=typeof mermaid_config?u(!0,mermaid_config.startOnLoad)&&r.mermaid.init():(t=a.getConfig(),t.startOnLoad&&r.mermaid.init())},"undefined"!=typeof document&&document.addEventListener("DOMContentLoaded",function(){e.contentLoaded()},!1)}).call(e,function(){return this}())},function(t,e,n){var r;if(n(51))try{r=n(124)}catch(i){}r||(r=window.dagre),t.exports=r},function(t,e,n){function r(t,e,n){return i(t,e,e,n)}var i=n(28);t.exports=r},function(t,e){function n(t,e){return t.intersect(e)}t.exports=n},function(t,e,n){function r(t,e,n){var r=t.x,a=t.y,o=[],s=Number.POSITIVE_INFINITY,u=Number.POSITIVE_INFINITY;e.forEach(function(t){s=Math.min(s,t.x),u=Math.min(u,t.y)});for(var c=r-t.width/2-s,l=a-t.height/2-u,h=0;h<e.length;h++){var f=e[h],p=e[h<e.length-1?h+1:0],d=i(t,n,{x:c+f.x,y:l+f.y},{x:c+p.x,y:l+p.y});d&&o.push(d)}return o.length?(o.length>1&&o.sort(function(t,e){var r=t.x-n.x,i=t.y-n.y,a=Math.sqrt(r*r+i*i),o=e.x-n.x,s=e.y-n.y,u=Math.sqrt(o*o+s*s);return u>a?-1:a===u?0:1}),o[0]):(console.log("NO INTERSECTION FOUND, RETURN NODE CENTER",t),t)}var i=n(59);t.exports=r},function(t,e){function n(t,e){var n,r,i=t.x,a=t.y,o=e.x-i,s=e.y-a,u=t.width/2,c=t.height/2;return Math.abs(s)*u>Math.abs(o)*c?(0>s&&(c=-c),n=0===s?0:c*o/s,r=c):(0>o&&(u=-u),n=u,r=0===o?0:u*s/o),{x:i+n,y:a+r}}t.exports=n},function(t,e,n){"use strict";function r(t){function e(r){var i=t.node(r);if(a.has(n,r))return i.rank;n[r]=!0;var o=a.min(a.map(t.outEdges(r),function(n){return e(n.w)-t.edge(n).minlen}));return o===Number.POSITIVE_INFINITY&&(o=0),i.rank=o}var n={};a.each(t.sources(),e)}function i(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}var a=n(1);t.exports={longestPath:r,slack:i}},function(t,e,n){function r(t,e,n){a.isArray(e)||(e=[e]);var r=[],o={};return a.each(e,function(e){if(!t.hasNode(e))throw new Error("Graph does not have node: "+e);i(t,e,"post"===n,o,r)}),r}function i(t,e,n,r,o){a.has(r,e)||(r[e]=!0,n||o.push(e),a.each(t.neighbors(e),function(e){i(t,e,n,r,o)}),n&&o.push(e))}var a=n(4);t.exports=r},function(t,e,n){function r(t,e,n,r){return i(t,String(e),n||s,r||function(e){return t.outEdges(e)})}function i(t,e,n,r){var i,a,s={},u=new o,c=function(t){var e=t.v!==i?t.v:t.w,r=s[e],o=n(t),c=a.distance+o;if(0>o)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+t+" Weight: "+o);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;s[t]={distance:n},u.add(t,n)});u.size()>0&&(i=u.removeMin(),a=s[i],a.distance!==Number.POSITIVE_INFINITY);)r(i).forEach(c);return s}var a=n(4),o=n(47);t.exports=r;var s=a.constant(1)},function(t,e,n){function r(t){function e(s){var u=a[s]={onStack:!0,lowlink:n,index:n++};if(r.push(s),t.successors(s).forEach(function(t){
  i.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=r.pop(),a[c].onStack=!1,l.push(c);while(s!==c);o.push(l)}}var n=0,r=[],a={},o=[];return t.nodes().forEach(function(t){i.has(a,t)||e(t)}),o}var i=n(4);t.exports=r},function(t,e,n){function r(t){function e(s){if(a.has(r,s))throw new i;a.has(n,s)||(r[s]=!0,n[s]=!0,a.each(t.predecessors(s),e),delete r[s],o.push(s))}var n={},r={},o=[];if(a.each(t.sinks(),e),a.size(n)!==t.nodeCount())throw new i;return o}function i(){}var a=n(4);t.exports=r,r.CycleException=i},function(t,e,n){function r(){this._arr=[],this._keyIndices={}}var i=n(4);t.exports=r,r.prototype.size=function(){return this._arr.length},r.prototype.keys=function(){return this._arr.map(function(t){return t.key})},r.prototype.has=function(t){return i.has(this._keyIndices,t)},r.prototype.priority=function(t){var e=this._keyIndices[t];return void 0!==e?this._arr[e].priority:void 0},r.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},r.prototype.add=function(t,e){var n=this._keyIndices;if(t=String(t),!i.has(n,t)){var r=this._arr,a=r.length;return n[t]=a,r.push({key:t,priority:e}),this._decrease(a),!0}return!1},r.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},r.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)},r.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)))},r.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},r.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}},function(t,e){t.exports={name:"mermaid",version:"0.5.1",description:"Markdownish syntax for generating flowcharts, sequence diagrams and gantt charts.",main:"src/mermaid.js",keywords:["diagram","markdown","flowchart","sequence diagram","gantt"],spm:{main:"src/mermaid.js",dependencies:{chalk:"^0.5.1",d3:"*","dagre-d3":"~0.4.8",he:"*",minimist:"^1.1.0",mkdirp:"^0.5.0",moment:"^2.9.0",semver:"^4.1.1",which:"^1.0.8"}},bin:{mermaid:"./bin/mermaid.js"},scripts:{test:"gulp test"},repository:{type:"git",url:"git+https://github.com/knsv/mermaid.git"},author:{name:"Knut Sveidqvist"},license:"MIT",dependencies:{chalk:"^0.5.1",d3:"~3.4.13","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",browserify:"~6.2.0",clone:"^0.2.0","codeclimate-test-reporter":"0.0.4","connect-livereload":"^0.5.3",d3:"~3.4.13",dateformat:"^1.0.11","event-stream":"^3.2.0",express:"^4.12.4",foundation:"^4.2.1-1","front-matter":"^0.2.0",gulp:"~3.8.9","gulp-browserify":"^0.5.0","gulp-bump":"^0.1.11","gulp-concat":"~2.4.1","gulp-data":"^1.1.1","gulp-ext-replace":"~0.1.0","gulp-filelog":"^0.4.1","gulp-hogan":"^1.1.0","gulp-if":"^1.2.5","gulp-insert":"^0.4.0","gulp-istanbul":"^0.4.0","gulp-jasmine":"~1.0.1","gulp-jison":"~1.2.0","gulp-jshint":"^1.9.0","gulp-less":"^3.0.1","gulp-livereload":"^3.8.0","gulp-rename":"~1.2.0","gulp-shell":"^0.2.10","gulp-tag-version":"^1.2.1","gulp-uglify":"~1.0.1",he:"^0.5.0","hogan.js":"^3.0.2",jasmine:"~2.0.1",jison:"~0.4.15","jshint-stylish":"^1.0.0",karma:"~0.12.20","karma-chrome-launcher":"~0.1.5","karma-jasmine":"~0.2.1","karma-requirejs":"~0.2.2",lodash:"^2.4.1","lodash._escapestringchar":"^2.4.1","lodash._objecttypes":"^2.4.1","lodash._reinterpolate":"^2.4.1","lodash._reunescapedhtml":"^2.4.1","lodash.defaults":"^2.4.1","lodash.templatesettings":"^2.4.1","lodash.values":"^2.4.1",marked:"^0.3.2","mock-browser":"^0.90.27",path:"^0.4.9",phantomjs:"^1.9.17",proxyquire:"^1.3.1","require-dir":"^0.3.0",rewire:"^2.1.3",rimraf:"^2.2.8",tape:"^3.0.3","tiny-lr":"^0.1.6","vinyl-source-stream":"^1.1.0",watchify:"^3.2.2"},gitHead:"0dc983d04ab9400e604a460eea3a409570961ab2",bugs:{url:"https://github.com/knsv/mermaid/issues"},homepage:"https://github.com/knsv/mermaid",_id:"mermaid@0.5.1",_shasum:"02d8feebad8a5f746f9c04a7d180b24b3ccdc35f",_from:"mermaid@*",_npmVersion:"2.1.9",_nodeVersion:"0.10.21",_npmUser:{name:"knsv",email:"knsv@sveido.com"},maintainers:[{name:"knsv",email:"knsv@sveido.com"}],dist:{shasum:"02d8feebad8a5f746f9c04a7d180b24b3ccdc35f",size:1820441,noattachment:!1,tarball:"http://registry.npm.taobao.org/mermaid/download/mermaid-0.5.1.tgz"},directories:{},publish_time:1434900429108,_cnpm_publish_time:1434900429108,_resolved:"https://registry.npm.taobao.org/mermaid/download/mermaid-0.5.1.tgz",readme:"ERROR: No README data found!"}},function(t,e){e.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},e.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),a.attr("dy",e.dy),a.text(r),"undefined"!=typeof i.textwrap&&i.textwrap({x:e.x+4,y:e.y-2,width:n,height:1800},e.textMargin),i},e.drawLabel=function(t,n){var r=e.getNoteRect();r.x=n.x,r.y=n.y,r.width=50,r.height=20,r.fill="#526e52",r.stroke="none",r["class"]="labelBox",e.drawRect(t,r),n.y=n.y+n.labelMargin,n.x=n.x+.5*n.labelMargin,n.fill="white",e.drawText(t,n)},e.drawActor=function(t,n,r,i,a){var o=n+a.width/2,s=t.append("g");0===r&&s.append("line").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 u=e.getNoteRect();u.x=n,u.y=r,u.fill="#eaeaea",u.width=a.width,u.height=a.height,u["class"]="actor",u.rx=3,u.ry=3,e.drawRect(s,u),s.append("text").attr("x",o).attr("y",r+a.height/2+5).attr("class","actor").style("text-anchor","middle").text(i)},e.drawLoop=function(t,n,r,i){var a=t.append("g"),o=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")};o(n.startx,n.starty,n.stopx,n.starty),o(n.stopx,n.starty,n.stopx,n.stopy),o(n.startx,n.stopy,n.stopx,n.stopy),o(n.startx,n.starty,n.startx,n.stopy),"undefined"!=typeof n.elsey&&o(n.startx,n.elsey,n.stopx,n.elsey);var s=e.getTextObj();s.text=r,s.x=n.startx,s.y=n.starty,s.labelMargin=1.5*i.boxMargin,s["class"]="labelText",s.fill="white",e.drawLabel(a,s),s=e.getTextObj(),s.text="[ "+n.title+" ]",s.x=n.startx+(n.stopx-n.startx)/2,s.y=n.starty+1.5*i.boxMargin,s.anchor="middle",s["class"]="loopText",e.drawText(a,s),"undefined"!=typeof n.elseText&&(s.text="[ "+n.elseText+" ]",s.y=n.elsey+1.5*i.boxMargin,e.drawText(a,s))},e.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")},e.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")},e.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},e.getNoteRect=function(){var t={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0};return t}},function(t,e,n){(function(t){var r=n(10),i=n(7),a=n(21),o=n(18),s=n(35),u=n(31),c=n(99),l=n(23),h=n(7),f=n(19),p=n(25),d=n(12),g=n(22),y=n(34),m=n(24),v=n(20),x=n(14),b=0,_=function(t){var e,n=a.detectType(t);switch(n){case"graph":e=h,e.parser.yy=r;break;case"dotGraph":e=f,e.parser.yy=r;break;case"sequenceDiagram":e=p,e.parser.yy=d;break;case"info":e=l,e.parser.yy=g;break;case"gantt":e=m,e.parser.yy=v}try{return e.parse(t),!0}catch(i){return!1}},w=function(){var t;2===arguments.length?("undefined"!=typeof arguments[0]&&(mermaid.sequenceConfig=arguments[0]),t=arguments[1]):t=arguments[0],t=void 0===t?document.querySelectorAll(".mermaid"):"string"==typeof t?document.querySelectorAll(t):t instanceof Node?[t]:t;var n;for(console.log("Found ",t.length," nodes"),n=0;n<t.length;n++){var i=t[n];if(!i.getAttribute("data-processed")){i.setAttribute("data-processed",!0);var l="mermaidChart"+b++,h=i.innerHTML;h=h.replace(/>/g,"&gt;"),h=h.replace(/</g,"&lt;"),h=c.decode(h).trim(),i.innerHTML='<svg id="'+l+'" width="100%" xmlns="http://www.w3.org/2000/svg"><g /></svg>';var f=a.detectType(h),p={};switch(f){case"graph":p=o.getClasses(h,!1),"object"==typeof mermaid.flowchartConfig&&o.setConf(mermaid.flowchartConfig),o.draw(h,l,!1),a.cloneCssStyles(i.firstChild,p),r.bindFunctions();break;case"dotGraph":p=o.getClasses(h,!0),o.draw(h,l,!0),a.cloneCssStyles(i.firstChild,p);break;case"sequenceDiagram":"object"==typeof mermaid.sequenceConfig&&s.setConf(mermaid.sequenceConfig),s.draw(h,l),a.cloneCssStyles(i.firstChild,[]);break;case"gantt":"object"==typeof mermaid.ganttConfig&&y.setConf(mermaid.ganttConfig),y.draw(h,l),a.cloneCssStyles(i.firstChild,[]);break;case"info":u.draw(h,l,e.version()),a.cloneCssStyles(i.firstChild,[])}}}};e.tester=function(){},e.version=function(){return n(48).version};var A=function(t,e){return"undefined"==typeof e?!1:t===e},k=function(t,n,i){x.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"),console.log(x.select("#d"+t).node().innerHTML);var c=x.select("#d"+t).node(),l=a.detectType(n),h={};switch(l){case"graph":h=o.getClasses(n,!1),"object"==typeof mermaid.flowchartConfig&&o.setConf(mermaid.flowchartConfig),o.draw(n,t,!1),a.cloneCssStyles(c.firstChild,h),r.bindFunctions();break;case"dotGraph":h=o.getClasses(n,!0),o.draw(n,t,!0),a.cloneCssStyles(c.firstChild,h);break;case"sequenceDiagram":"object"==typeof mermaid.sequenceConfig&&s.setConf(mermaid.sequenceConfig),s.draw(n,t),a.cloneCssStyles(c.firstChild,[]);break;case"gantt":"object"==typeof mermaid.ganttConfig&&y.setConf(mermaid.ganttConfig),y.draw(n,t),a.cloneCssStyles(c.firstChild,[]);break;case"info":u.draw(n,t,e.version()),a.cloneCssStyles(c.firstChild,[])}i(x.select("#d"+t).node().innerHTML),x.select("#d"+t).node().remove()};e.render=function(t,e){var n=function(t){console.log(t)};"undefined"==typeof document?(htmlStub="<html><head></head><body></body></html>",k(t,e,n)):k(t,e,n)},t.mermaid={startOnLoad:!0,htmlLabels:!0,init:function(t,e){w.apply(null,arguments)},version:function(){return e.version()},getParser:function(){return i.parser},parse:function(t){return _(t)},parseError:function(t,e){console.log("Mermaid Syntax error:"),console.log(t)},render:function(t,n){return e.render(t,n)}},e.contentLoaded=function(){"undefined"!=typeof mermaid_config&&A(!1,mermaid_config.htmlLabels)&&(t.mermaid.htmlLabels=!1),t.mermaid.startOnLoad&&("undefined"!=typeof mermaid_config?A(!0,mermaid_config.startOnLoad)&&t.mermaid.init():t.mermaid.init())},"undefined"!=typeof document&&document.addEventListener("DOMContentLoaded",function(){e.contentLoaded()},!1)}).call(e,function(){return this}())},function(t,e,n){function r(t){return n(i(t))}function i(t){return a[t]||function(){throw new Error("Cannot find module '"+t+"'.")}()}var a={"./arrows":52,"./arrows.js":52,"./create-clusters":53,"./create-clusters.js":53,"./create-edge-labels":54,"./create-edge-labels.js":54,"./create-edge-paths":55,"./create-edge-paths.js":55,"./create-nodes":56,"./create-nodes.js":56,"./d3":15,"./d3.js":15,"./dagre":37,"./dagre.js":37,"./graphlib":57,"./graphlib.js":57,"./intersect/index":58,"./intersect/index.js":58,"./intersect/intersect-circle":38,"./intersect/intersect-circle.js":38,"./intersect/intersect-ellipse":28,"./intersect/intersect-ellipse.js":28,"./intersect/intersect-line":59,"./intersect/intersect-line.js":59,"./intersect/intersect-node":39,"./intersect/intersect-node.js":39,"./intersect/intersect-polygon":40,"./intersect/intersect-polygon.js":40,"./intersect/intersect-rect":41,"./intersect/intersect-rect.js":41,"./label/add-html-label":60,"./label/add-html-label.js":60,"./label/add-label":29,"./label/add-label.js":29,"./label/add-svg-label":61,"./label/add-svg-label.js":61,"./label/add-text-label":62,"./label/add-text-label.js":62,"./lodash":16,"./lodash.js":16,"./position-clusters":63,"./position-clusters.js":63,"./position-edge-labels":64,"./position-edge-labels.js":64,"./position-nodes":65,"./position-nodes.js":65,"./render":66,"./render.js":66,"./shapes":67,"./shapes.js":67,"./util":2,"./util.js":2,"./version":68,"./version.js":68};r.keys=function(){return Object.keys(a)},r.resolve=i,t.exports=r,r.id=51},function(t,e,n){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"),a=i.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");o.applyStyle(a,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"),a=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");o.applyStyle(a,n[r+"Style"])}function a(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 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");o.applyStyle(a,n[r+"Style"])}var o=n(2);t.exports={"default":r,normal:r,vee:i,undirected:a}},function(t,e,n){function r(t,e){var n=e.nodes().filter(function(t){return i.isSubgraph(e,t)}),r=t.selectAll("g.cluster").data(n,function(t){return t});return r.selectAll("*").remove(),r.enter().append("g").attr("class","cluster").attr("id",function(t){var n=e.node(t);return n.id}).style("opacity",0),i.applyTransition(r,e).style("opacity",1),r.each(function(t){var n=e.node(t),r=d3.select(this);d3.select(this).append("rect");var i=r.append("g").attr("class","label");a(i,n,n.clusterLabelPos)}),r.selectAll("rect").each(function(t){var n=e.node(t),r=d3.select(this);i.applyStyle(r,n.style)}),i.applyTransition(r.exit(),e).style("opacity",0).remove(),r}var i=n(2),a=n(29);t.exports=r},function(t,e,n){"use strict";function r(t,e){var n=t.selectAll("g.edgeLabel").data(e.edges(),function(t){return o.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),r=a(s.select(this),e.edge(t),0,0).classed("label",!0),o=r.node().getBBox();n.labelId&&r.attr("id",n.labelId),i.has(n,"width")||(n.width=o.width),i.has(n,"height")||(n.height=o.height)}),o.applyTransition(n.exit(),e).style("opacity",0).remove(),n}var i=n(16),a=n(29),o=n(2),s=n(15);t.exports=r},function(t,e,n){"use strict";function r(t,e,n){var r=t.selectAll("g.edgePath").data(e.edges(),function(t){return h.edgeToId(t)}).classed("update",!0);return s(r,e),u(r,e),h.applyTransition(r,e).style("opacity",1),r.each(function(t){var n=f.select(this),r=e.edge(t);r.elem=this,r.id&&n.attr("id",r.id),h.applyClass(n,r["class"],(n.classed("update")?"update ":"")+"edgePath")}),r.selectAll("path.path").each(function(t){var n=e.edge(t);n.arrowheadId=c.uniqueId("arrowhead");var r=f.select(this).attr("marker-end",function(){return"url(#"+n.arrowheadId+")"}).style("fill","none");h.applyTransition(r,e).attr("d",function(t){return i(e,t)}),h.applyStyle(r,n.style)}),r.selectAll("defs *").remove(),r.selectAll("defs").each(function(t){var r=e.edge(t),i=n[r.arrowhead];i(f.select(this),r.arrowheadId,r,"arrowhead")}),r}function i(t,e){var n=t.edge(e),r=t.node(e.v),i=t.node(e.w),o=n.points.slice(1,n.points.length-1);return o.unshift(l(r,o[0])),o.push(l(i,o[o.length-1])),a(n,o)}function a(t,e){var n=f.svg.line().x(function(t){return t.x}).y(function(t){return t.y});return c.has(t,"lineInterpolate")&&n.interpolate(t.lineInterpolate),c.has(t,"lineTension")&&n.tension(Number(t.lineTension)),n(e)}function o(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,i=c.range(n.points.length).map(function(){return o(r)});return a(n,i)}),n.append("defs")}function u(t,e){var n=t.exit();h.applyTransition(n,e).style("opacity",0).remove(),h.applyTransition(n.select("path.path"),e).attr("d",function(t){var n=e.node(t.v);if(n){var r=c.range(this.pathSegList.length).map(function(){return n});return a({},r)}return f.select(this).attr("d")})}var c=n(16),l=n(39),h=n(2),f=n(15);t.exports=r},function(t,e,n){"use strict";function r(t,e,n){var r=e.nodes().filter(function(t){return!o.isSubgraph(e,t)}),u=t.selectAll("g.node").data(r,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 r=e.node(t),u=s.select(this),c=u.append("g").attr("class","label"),l=a(c,r),h=n[r.shape],f=i.pick(l.node().getBBox(),"width","height");r.elem=this,r.id&&u.attr("id",r.id),r.labelId&&c.attr("id",r.labelId),o.applyClass(u,r["class"],(u.classed("update")?"update ":"")+"node"),i.has(r,"width")&&(f.width=r.width),i.has(r,"height")&&(f.height=r.height),f.width+=r.paddingLeft+r.paddingRight,f.height+=r.paddingTop+r.paddingBottom,c.attr("transform","translate("+(r.paddingLeft-r.paddingRight)/2+","+(r.paddingTop-r.paddingBottom)/2+")");var p=h(s.select(this),f,r);o.applyStyle(p,r.style);var d=p.node().getBBox();r.width=d.width,r.height=d.height}),o.applyTransition(u.exit(),e).style("opacity",0).remove(),u}var i=n(16),a=n(29),o=n(2),s=n(15);t.exports=r},function(t,e,n){var r;if(n(51))try{r=n(98)}catch(i){}r||(r=window.graphlib),t.exports=r},function(t,e,n){t.exports={node:n(39),circle:n(38),ellipse:n(28),polygon:n(40),rect:n(41)}},function(t,e){function n(t,e,n,i){var a,o,s,u,c,l,h,f,p,d,g,y,m,v,x;return a=e.y-t.y,s=t.x-e.x,c=e.x*t.y-t.x*e.y,p=a*n.x+s*n.y+c,d=a*i.x+s*i.y+c,0!==p&&0!==d&&r(p,d)||(o=i.y-n.y,u=n.x-i.x,l=i.x*n.y-n.x*i.y,h=o*t.x+u*t.yy+l,f=o*e.x+u*e.y+l,0!==h&&0!==f&&r(h,f)||(g=a*u-o*s,0===g))?void 0:(y=Math.abs(g/2),m=s*l-u*c,v=0>m?(m-y)/g:(m+y)/g,m=o*c-a*l,x=0>m?(m-y)/g:(m+y)/g,{x:v,y:x})}function r(t,e){return t*e>0}t.exports=n},function(t,e,n){function r(t,e){var n=t.append("foreignObject").attr("width","100000"),r=n.append("xhtml:div"),a=e.label;switch(typeof a){case"function":r.insert(a);break;case"object":r.insert(function(){return a});break;default:r.html(a)}i.applyStyle(r,e.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap");var o,s;return r.each(function(){o=this.clientWidth,s=this.clientHeight}),n.attr("width",o).attr("height",s),n}var i=n(2);t.exports=r},function(t,e,n){function r(t,e){var n=t;return n.node().appendChild(e.label),i.applyStyle(n,e.labelStyle),n}var i=n(2);t.exports=r},function(t,e,n){function r(t,e){for(var n=t.append("text"),r=i(e.label).split("\n"),o=0;o<r.length;o++)n.append("tspan").attr("xml:space","preserve").attr("dy","1em").attr("x","1").text(r[o]);return a.applyStyle(n,e.labelStyle),n}function i(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 a=n(2);t.exports=r},function(t,e,n){"use strict";function r(t,e){function n(t){var n=e.node(t);return"translate("+n.x+","+n.y+")"}var r=t.filter(function(){return!a.select(this).classed("update")});r.attr("transform",n),i.applyTransition(t,e).style("opacity",1).attr("transform",n),i.applyTransition(r.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 i=n(2),a=n(15);t.exports=r},function(t,e,n){"use strict";function r(t,e){function n(t){var n=e.edge(t);return o.has(n,"x")?"translate("+n.x+","+n.y+")":""}var r=t.filter(function(){return!a.select(this).classed("update")});r.attr("transform",n),i.applyTransition(t,e).style("opacity",1).attr("transform",n)}var i=n(2),a=n(15),o=n(16);t.exports=r},function(t,e,n){"use strict";function r(t,e){function n(t){var n=e.node(t);return"translate("+n.x+","+n.y+")"}var r=t.filter(function(){return!a.select(this).classed("update")});r.attr("transform",n),i.applyTransition(t,e).style("opacity",1).attr("transform",n)}var i=n(2),a=n(15);t.exports=r},function(t,e,n){function r(){var t=n(56),e=n(53),r=n(54),s=n(55),c=n(65),l=n(64),h=n(63),f=n(67),p=n(52),d=function(n,d){i(d);var g=o(n,"output"),y=o(g,"clusters"),m=o(g,"edgePaths"),v=r(o(g,"edgeLabels"),d),x=t(o(g,"nodes"),d,f);u(d),c(x,d),l(v,d),s(m,d,p);var b=e(y,d);h(b,d),a(d)};return d.createNodes=function(e){return arguments.length?(t=e,d):t},d.createClusters=function(t){return arguments.length?(e=t,d):e},d.createEdgeLabels=function(t){return arguments.length?(r=t,d):r},d.createEdgePaths=function(t){return arguments.length?(s=t,d):s},d.shapes=function(t){return arguments.length?(f=t,d):f},d.arrows=function(t){return arguments.length?(p=t,d):p},d}function i(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,c),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,l)})}function a(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 o(t,e){var n=t.select("g."+e);return n.empty()&&(n=t.append("g").attr("class",e)),n}var s=n(16),u=n(37).layout;t.exports=r;var c={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},l={arrowhead:"normal",lineInterpolate:"linear"}},function(t,e,n){"use strict";function r(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 i(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 u(n,r,i,t)},a}function a(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 c(n,r,t)},i}function o(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}],o=t.insert("polygon",":first-child").attr("points",a.map(function(t){return t.x+","+t.y}).join(" "));return n.intersect=function(t){return l(n,a,t)},o}var s=n(41),u=n(28),c=n(38),l=n(40);t.exports={rect:r,ellipse:i,circle:a,diamond:o}},function(t,e){t.exports="0.4.10"},function(t,e,n){function r(t){function e(a){i.has(r,a)||(r[a]=!0,n.push(a),i.each(t.successors(a),e),i.each(t.predecessors(a),e))}var n,r={},a=[];return i.each(t.nodes(),function(t){n=[],e(t),n.length&&a.push(n)}),a}var i=n(4);t.exports=r},function(t,e,n){function r(t,e,n){return a.transform(t.nodes(),function(r,a){r[a]=i(t,a,e,n)},{})}var i=n(44),a=n(4);t.exports=r},function(t,e,n){function r(t){return i.filter(a(t),function(t){return t.length>1})}var i=n(4),a=n(45);t.exports=r},function(t,e,n){function r(t,e,n){return i(t,e||o,n||function(e){return t.outEdges(e)})}function i(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],o=a[n],s=r.distance+i.distance;s<o.distance&&(o.distance=s,o.predecessor=i.predecessor)})})}),r}var a=n(4);t.exports=r;var o=a.constant(1)},function(t,e,n){t.exports={components:n(69),dijkstra:n(44),dijkstraAll:n(70),findCycles:n(71),floydWarshall:n(72),isAcyclic:n(74),postorder:n(75),preorder:n(76),prim:n(77),tarjan:n(45),topsort:n(46)}},function(t,e,n){function r(t){try{i(t)}catch(e){if(e instanceof i.CycleException)return!1;throw e}return!0}var i=n(46);t.exports=r},function(t,e,n){function r(t,e){return i(t,e,"post")}var i=n(43);t.exports=r},function(t,e,n){function r(t,e){return i(t,e,"pre")}var i=n(43);t.exports=r},function(t,e,n){function r(t,e){function n(t){var n=t.v===r?t.w:t.v,i=c.priority(n);if(void 0!==i){var a=e(t);i>a&&(u[n]=r,c.decrease(n,a))}}var r,s=new a,u={},c=new o;if(0===t.nodeCount())return s;i.each(t.nodes(),function(t){c.add(t,Number.POSITIVE_INFINITY),s.setNode(t)}),c.decrease(t.nodes()[0],0);for(var l=!1;c.size()>0;){if(r=c.removeMin(),i.has(u,r))s.setEdge(r,u[r]);else{if(l)throw new Error("Input graph is not connected: "+t);l=!0}t.nodeEdges(r).forEach(n)}return s}var i=n(4),a=n(30),o=n(47);t.exports=r},function(t,e,n){t.exports={Graph:n(30),version:n(80)}},function(t,e,n){function r(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:i(t),edges:a(t)};return s.isUndefined(t.graph())||(e.value=s.clone(t.graph())),e}function i(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 a(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 o(t){var e=new u(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=n(4),u=n(30);t.exports={write:r,read:o}},function(t,e){t.exports="1.0.1"},function(t,e,n){(function(t){!function(e,n){t.exports=n()}(this,function(){"use strict";function e(){return Nn.apply(null,arguments)}function n(t){Nn=t}function r(t){return"[object Array]"===Object.prototype.toString.call(t)}function i(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function a(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 s(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 u(t,e,n,r){return Tt(t,e,n,r,!0).utc()}function c(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function l(t){return null==t._pf&&(t._pf=c()),t._pf}function h(t){if(null==t._isValid){var e=l(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=u(NaN);return null!=t?s(l(e),t):l(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=l(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 d(t){p(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),qn===!1&&(qn=!0,e.updateOffset(this),qn=!1)}function g(t){return t instanceof d||null!=t&&null!=t._isAMomentObject}function y(t){return 0>t?Math.ceil(t):Math.floor(t)}function m(t){var e=+t,n=0;return 0!==e&&isFinite(e)&&(n=y(e)),n}function v(t,e,n){var r,i=Math.min(t.length,e.length),a=Math.abs(t.length-e.length),o=0;for(r=0;i>r;r++)(n&&t[r]!==e[r]||!n&&m(t[r])!==m(e[r]))&&o++;return o+a}function x(){}function b(t){return t?t.toLowerCase().replace("_","-"):t}function _(t){for(var e,n,r,i,a=0;a<t.length;){for(i=b(t[a]).split("-"),e=i.length,n=b(t[a+1]),n=n?n.split("-"):null;e>0;){if(r=w(i.slice(0,e).join("-")))return r;if(n&&n.length>=e&&v(i,n,!0)>=e-1)break;e--}a++}return null}function w(e){var n=null;if(!Pn[e]&&"undefined"!=typeof t&&t&&t.exports)try{n=In._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),A(n)}catch(r){}return Pn[e]}function A(t,e){var n;return t&&(n="undefined"==typeof e?E(t):k(t,e),n&&(In=n)),In._abbr}function k(t,e){return null!==e?(e.abbr=t,Pn[t]=Pn[t]||new x,Pn[t].set(e),A(t),Pn[t]):(delete Pn[t],null)}function E(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return In;if(!r(t)){if(e=w(t))return e;t=[t]}return _(t)}function D(t,e){var n=t.toLowerCase();jn[n]=jn[n+"s"]=jn[e]=t}function B(t){return"string"==typeof t?jn[t]||jn[t.toLowerCase()]:void 0}function C(t){var e,n,r={};for(n in t)o(t,n)&&(e=B(n),e&&(r[e]=t[n]));return r}function T(t,n){return function(r){return null!=r?(M(this,t,r),e.updateOffset(this,n),this):S(this,t)}}function S(t,e){return t._d["get"+(t._isUTC?"UTC":"")+e]()}function M(t,e,n){return t._d["set"+(t._isUTC?"UTC":"")+e](n)}function F(t,e){var n;if("object"==typeof t)for(n in t)this.set(n,t[n]);else if(t=B(t),"function"==typeof this[t])return this[t](e);return this}function L(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 O(t,e,n,r){var i=r;"string"==typeof r&&(i=function(){return this[r]()}),t&&($n[t]=i),e&&($n[e[0]]=function(){return L(i.apply(this,arguments),e[1],e[2])}),n&&($n[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),t)})}function N(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function I(t){var e,n,r=t.match(Yn);for(e=0,n=r.length;n>e;e++)$n[r[e]]?r[e]=$n[r[e]]:r[e]=N(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=q(e,t.localeData()),Vn[e]=Vn[e]||I(e),Vn[e](t)):t.localeData().invalidDate();
  }function q(t,e){function n(t){return e.longDateFormat(t)||t}var r=5;for(Un.lastIndex=0;r>=0&&Un.test(t);)t=t.replace(Un,n),Un.lastIndex=0,r-=1;return t}function P(t){return"function"==typeof t&&"[object Function]"===Object.prototype.toString.call(t)}function j(t,e,n){ar[t]=P(e)?e:function(t){return t&&n?n:e}}function Y(t,e){return o(ar,t)?ar[t](e._strict,e._locale):new RegExp(U(t))}function U(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,n,r,i){return e||n||r||i}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function V(t,e){var n,r=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(r=function(t,n){n[e]=m(t)}),n=0;n<t.length;n++)or[t[n]]=r}function $(t,e){V(t,function(t,n,r,i){r._w=r._w||{},e(t,r._w,r,i)})}function z(t,e,n){null!=e&&o(or,t)&&or[t](e,n._a,n,t)}function H(t,e){return new Date(Date.UTC(t,e+1,0)).getUTCDate()}function G(t){return this._months[t.month()]}function W(t){return this._monthsShort[t.month()]}function Z(t,e,n){var r,i,a;for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),r=0;12>r;r++){if(i=u([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 X(t,e){var n;return"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(n=Math.min(t.date(),H(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,n),t)}function K(t){return null!=t?(X(this,t),e.updateOffset(this,!0),this):S(this,"Month")}function J(){return H(this.year(),this.month())}function Q(t){var e,n=t._a;return n&&-2===l(t).overflow&&(e=n[ur]<0||n[ur]>11?ur:n[cr]<1||n[cr]>H(n[sr],n[ur])?cr:n[lr]<0||n[lr]>24||24===n[lr]&&(0!==n[hr]||0!==n[fr]||0!==n[pr])?lr:n[hr]<0||n[hr]>59?hr:n[fr]<0||n[fr]>59?fr:n[pr]<0||n[pr]>999?pr:-1,l(t)._overflowDayOfYear&&(sr>e||e>cr)&&(e=cr),l(t).overflow=e),t}function tt(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function et(t,e){var n=!0;return s(function(){return n&&(tt(t+"\n"+(new Error).stack),n=!1),e.apply(this,arguments)},e)}function nt(t,e){yr[t]||(tt(e),yr[t]=!0)}function rt(t){var e,n,r=t._i,i=mr.exec(r);if(i){for(l(t).iso=!0,e=0,n=vr.length;n>e;e++)if(vr[e][1].exec(r)){t._f=vr[e][0];break}for(e=0,n=xr.length;n>e;e++)if(xr[e][1].exec(r)){t._f+=(i[6]||" ")+xr[e][0];break}r.match(nr)&&(t._f+="Z"),wt(t)}else t._isValid=!1}function it(t){var n=br.exec(t._i);return null!==n?void(t._d=new Date(+n[1])):(rt(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function at(t,e,n,r,i,a,o){var s=new Date(t,e,n,r,i,a,o);return 1970>t&&s.setFullYear(t),s}function ot(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function st(t){return ut(t)?366:365}function ut(t){return t%4===0&&t%100!==0||t%400===0}function ct(){return ut(this.year())}function lt(t,e,n){var r,i=n-e,a=n-t.day();return a>i&&(a-=7),i-7>a&&(a+=7),r=St(t).add(a,"d"),{week:Math.ceil(r.dayOfYear()/7),year:r.year()}}function ht(t){return lt(t,this._week.dow,this._week.doy).week}function ft(){return this._week.dow}function pt(){return this._week.doy}function dt(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function gt(t){var e=lt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function yt(t,e,n,r,i){var a,o=6+i-r,s=ot(t,0,1+o),u=s.getUTCDay();return i>u&&(u+=7),n=null!=n?1*n:i,a=1+o+7*(e-1)-u+n,{year:a>0?t:t-1,dayOfYear:a>0?a:st(t-1)+a}}function mt(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 vt(t,e,n){return null!=t?t:null!=e?e:n}function xt(t){var e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}function bt(t){var e,n,r,i,a=[];if(!t._d){for(r=xt(t),t._w&&null==t._a[cr]&&null==t._a[ur]&&_t(t),t._dayOfYear&&(i=vt(t._a[sr],r[sr]),t._dayOfYear>st(i)&&(l(t)._overflowDayOfYear=!0),n=ot(i,0,t._dayOfYear),t._a[ur]=n.getUTCMonth(),t._a[cr]=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[lr]&&0===t._a[hr]&&0===t._a[fr]&&0===t._a[pr]&&(t._nextDay=!0,t._a[lr]=0),t._d=(t._useUTC?ot:at).apply(null,a),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[lr]=24)}}function _t(t){var e,n,r,i,a,o,s;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(a=1,o=4,n=vt(e.GG,t._a[sr],lt(St(),1,4).year),r=vt(e.W,1),i=vt(e.E,1)):(a=t._locale._week.dow,o=t._locale._week.doy,n=vt(e.gg,t._a[sr],lt(St(),a,o).year),r=vt(e.w,1),null!=e.d?(i=e.d,a>i&&++r):i=null!=e.e?e.e+a:a),s=yt(n,r,i,o,a),t._a[sr]=s.year,t._dayOfYear=s.dayOfYear}function wt(t){if(t._f===e.ISO_8601)return void rt(t);t._a=[],l(t).empty=!0;var n,r,i,a,o,s=""+t._i,u=s.length,c=0;for(i=q(t._f,t._locale).match(Yn)||[],n=0;n<i.length;n++)a=i[n],r=(s.match(Y(a,t))||[])[0],r&&(o=s.substr(0,s.indexOf(r)),o.length>0&&l(t).unusedInput.push(o),s=s.slice(s.indexOf(r)+r.length),c+=r.length),$n[a]?(r?l(t).empty=!1:l(t).unusedTokens.push(a),z(a,r,t)):t._strict&&!r&&l(t).unusedTokens.push(a);l(t).charsLeftOver=u-c,s.length>0&&l(t).unusedInput.push(s),l(t).bigHour===!0&&t._a[lr]<=12&&t._a[lr]>0&&(l(t).bigHour=void 0),t._a[lr]=At(t._locale,t._a[lr],t._meridiem),bt(t),Q(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 kt(t){var e,n,r,i,a;if(0===t._f.length)return l(t).invalidFormat=!0,void(t._d=new Date(NaN));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],wt(e),h(e)&&(a+=l(e).charsLeftOver,a+=10*l(e).unusedTokens.length,l(e).score=a,(null==r||r>a)&&(r=a,n=e));s(t,n||e)}function Et(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],bt(t)}}function Dt(t){var e=new d(Q(Bt(t)));return e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e}function Bt(t){var e=t._i,n=t._f;return t._locale=t._locale||E(t._l),null===e||void 0===n&&""===e?f({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),g(e)?new d(Q(e)):(r(n)?kt(t):n?wt(t):i(e)?t._d=e:Ct(t),t))}function Ct(t){var n=t._i;void 0===n?t._d=new Date:i(n)?t._d=new Date(+n):"string"==typeof n?it(t):r(n)?(t._a=a(n.slice(0),function(t){return parseInt(t,10)}),bt(t)):"object"==typeof n?Et(t):"number"==typeof n?t._d=new Date(n):e.createFromInputFallback(t)}function Tt(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,Dt(a)}function St(t,e,n,r){return Tt(t,e,n,r,!1)}function Mt(t,e){var n,i;if(1===e.length&&r(e[0])&&(e=e[0]),!e.length)return St();for(n=e[0],i=1;i<e.length;++i)(!e[i].isValid()||e[i][t](n))&&(n=e[i]);return n}function Ft(){var t=[].slice.call(arguments,0);return Mt("isBefore",t)}function Lt(){var t=[].slice.call(arguments,0);return Mt("isAfter",t)}function Ot(t){var e=C(t),n=e.year||0,r=e.quarter||0,i=e.month||0,a=e.week||0,o=e.day||0,s=e.hour||0,u=e.minute||0,c=e.second||0,l=e.millisecond||0;this._milliseconds=+l+1e3*c+6e4*u+36e5*s,this._days=+o+7*a,this._months=+i+3*r+12*n,this._data={},this._locale=E(),this._bubble()}function Nt(t){return t instanceof Ot}function It(t,e){O(t,0,0,function(){var t=this.utcOffset(),n="+";return 0>t&&(t=-t,n="-"),n+L(~~(t/60),2)+e+L(~~t%60,2)})}function Rt(t){var e=(t||"").match(nr)||[],n=e[e.length-1]||[],r=(n+"").match(Er)||["-",0,0],i=+(60*r[1])+m(r[2]);return"+"===r[0]?i:-i}function qt(t,n){var r,a;return n._isUTC?(r=n.clone(),a=(g(t)||i(t)?+t:+St(t))-+r,r._d.setTime(+r._d+a),e.updateOffset(r,!1),r):St(t).local()}function Pt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function jt(t,n){var r,i=this._offset||0;return null!=t?("string"==typeof t&&(t=Rt(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&n&&(r=Pt(this)),this._offset=t,this._isUTC=!0,null!=r&&this.add(r,"m"),i!==t&&(!n||this._changeInProgress?ne(this,Kt(t-i,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?i:Pt(this)}function Yt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Ut(t){return this.utcOffset(0,t)}function Vt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Pt(this),"m")),this}function $t(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Rt(this._i)),this}function zt(t){return t=t?St(t).utcOffset():0,(this.utcOffset()-t)%60===0}function Ht(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Gt(){if("undefined"!=typeof this._isDSTShifted)return this._isDSTShifted;var t={};if(p(t,this),t=Bt(t),t._a){var e=t._isUTC?u(t._a):St(t._a);this._isDSTShifted=this.isValid()&&v(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Wt(){return!this._isUTC}function Zt(){return this._isUTC}function Xt(){return this._isUTC&&0===this._offset}function Kt(t,e){var n,r,i,a=t,s=null;return Nt(t)?a={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(a={},e?a[e]=t:a.milliseconds=t):(s=Dr.exec(t))?(n="-"===s[1]?-1:1,a={y:0,d:m(s[cr])*n,h:m(s[lr])*n,m:m(s[hr])*n,s:m(s[fr])*n,ms:m(s[pr])*n}):(s=Br.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=te(St(a.from),St(a.to)),a={},a.ms=i.milliseconds,a.M=i.months),r=new Ot(a),Nt(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 Qt(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 te(t,e){var n;return e=qt(e,t),t.isBefore(e)?n=Qt(t,e):(n=Qt(e,t),n.milliseconds=-n.milliseconds,n.months=-n.months),n}function ee(t,e){return function(n,r){var i,a;return null===r||isNaN(+r)||(nt(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=Kt(n,r),ne(this,i,t),this}}function ne(t,n,r,i){var a=n._milliseconds,o=n._days,s=n._months;i=null==i?!0:i,a&&t._d.setTime(+t._d+a*r),o&&M(t,"Date",S(t,"Date")+o*r),s&&X(t,S(t,"Month")+s*r),i&&e.updateOffset(t,o||s)}function re(t,e){var n=t||St(),r=qt(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,St(n)))}function ie(){return new d(this)}function ae(t,e){var n;return e=B("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=g(t)?t:St(t),+this>+t):(n=g(t)?+t:+St(t),n<+this.clone().startOf(e))}function oe(t,e){var n;return e=B("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=g(t)?t:St(t),+t>+this):(n=g(t)?+t:+St(t),+this.clone().endOf(e)<n)}function se(t,e,n){return this.isAfter(t,n)&&this.isBefore(e,n)}function ue(t,e){var n;return e=B(e||"millisecond"),"millisecond"===e?(t=g(t)?t:St(t),+this===+t):(n=+St(t),+this.clone().startOf(e)<=n&&n<=+this.clone().endOf(e))}function ce(t,e,n){var r,i,a=qt(t,this),o=6e4*(a.utcOffset()-this.utcOffset());return e=B(e),"year"===e||"month"===e||"quarter"===e?(i=le(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-o)/864e5:"week"===e?(r-o)/6048e5:r),n?i:y(i)}function le(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 he(){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 n=R(this,t||e.defaultFormat);return this.localeData().postformat(n)}function de(t,e){return this.isValid()?Kt({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function ge(t){return this.from(St(),t)}function ye(t,e){return this.isValid()?Kt({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function me(t){return this.to(St(),t)}function ve(t){var e;return void 0===t?this._locale._abbr:(e=E(t),null!=e&&(this._locale=e),this)}function xe(){return this._locale}function be(t){switch(t=B(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 _e(t){return t=B(t),void 0===t||"millisecond"===t?this:this.startOf(t).add(1,"isoWeek"===t?"week":t).subtract(1,"ms")}function we(){return+this._d-6e4*(this._offset||0)}function Ae(){return Math.floor(+this/1e3)}function ke(){return this._offset?new Date(+this):this._d}function Ee(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]}function De(){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 Be(){return h(this)}function Ce(){return s({},l(this))}function Te(){return l(this).overflow}function Se(t,e){O(0,[t,t.length],0,e)}function Me(t,e,n){return lt(St([t,11,31+e-n]),e,n).week}function Fe(t){var e=lt(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==t?e:this.add(t-e,"y")}function Le(t){var e=lt(this,1,4).year;return null==t?e:this.add(t-e,"y")}function Oe(){return Me(this.year(),1,4)}function Ne(){var t=this.localeData()._week;return Me(this.year(),t.dow,t.doy)}function Ie(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 qe(t){return this._weekdays[t.day()]}function Pe(t){return this._weekdaysShort[t.day()]}function je(t){return this._weekdaysMin[t.day()]}function Ye(t){var e,n,r;for(this._weekdaysParse=this._weekdaysParse||[],e=0;7>e;e++)if(this._weekdaysParse[e]||(n=St([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 Ue(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 Ve(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function $e(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)}function ze(t,e){O(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function He(t,e){return e._meridiemParse}function Ge(t){return"p"===(t+"").toLowerCase().charAt(0)}function We(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"}function Ze(t,e){e[pr]=m(1e3*("0."+t))}function Xe(){return this._isUTC?"UTC":""}function Ke(){return this._isUTC?"Coordinated Universal Time":""}function Je(t){return St(1e3*t)}function Qe(){return St.apply(null,arguments).parseZone()}function tn(t,e,n){var r=this._calendar[t];return"function"==typeof r?r.call(e,n):r}function en(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 nn(){return this._invalidDate}function rn(t){return this._ordinal.replace("%d",t)}function an(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 sn(t,e){var n=this._relativeTime[t>0?"future":"past"];return"function"==typeof n?n(e):n.replace(/%s/i,e)}function un(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 cn(t,e,n,r){var i=E(),a=u().set(r,e);return i[n](a,t)}function ln(t,e,n,r,i){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return cn(t,e,n,i);var a,o=[];for(a=0;r>a;a++)o[a]=cn(t,a,n,i);return o}function hn(t,e){return ln(t,e,"months",12,"month")}function fn(t,e){return ln(t,e,"monthsShort",12,"month")}function pn(t,e){return ln(t,e,"weekdays",7,"day")}function dn(t,e){return ln(t,e,"weekdaysShort",7,"day")}function gn(t,e){return ln(t,e,"weekdaysMin",7,"day")}function yn(){var t=this._data;return this._milliseconds=Xr(this._milliseconds),this._days=Xr(this._days),this._months=Xr(this._months),t.milliseconds=Xr(t.milliseconds),t.seconds=Xr(t.seconds),t.minutes=Xr(t.minutes),t.hours=Xr(t.hours),t.months=Xr(t.months),t.years=Xr(t.years),this}function mn(t,e,n,r){var i=Kt(e,n);return t._milliseconds+=r*i._milliseconds,t._days+=r*i._days,t._months+=r*i._months,t._bubble()}function vn(t,e){return mn(this,t,e,1)}function xn(t,e){return mn(this,t,e,-1)}function bn(t){return 0>t?Math.floor(t):Math.ceil(t)}function _n(){var t,e,n,r,i,a=this._milliseconds,o=this._days,s=this._months,u=this._data;return a>=0&&o>=0&&s>=0||0>=a&&0>=o&&0>=s||(a+=864e5*bn(An(s)+o),o=0,s=0),u.milliseconds=a%1e3,t=y(a/1e3),u.seconds=t%60,e=y(t/60),u.minutes=e%60,n=y(e/60),u.hours=n%24,o+=y(n/24),i=y(wn(o)),s+=i,o-=bn(An(i)),r=y(s/12),s%=12,u.days=o,u.months=s,u.years=r,this}function wn(t){return 4800*t/146097}function An(t){return 146097*t/4800}function kn(t){var e,n,r=this._milliseconds;if(t=B(t),"month"===t||"year"===t)return e=this._days+r/864e5,n=this._months+wn(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 En(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*m(this._months/12)}function Dn(t){return function(){return this.as(t)}}function Bn(t){return t=B(t),this[t+"s"]()}function Cn(t){return function(){return this._data[t]}}function Tn(){return y(this.days()/7)}function Sn(t,e,n,r,i){return i.relativeTime(e||1,!!n,t,r)}function Mn(t,e,n){var r=Kt(t).abs(),i=fi(r.as("s")),a=fi(r.as("m")),o=fi(r.as("h")),s=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===o&&["h"]||o<pi.h&&["hh",o]||1===s&&["d"]||s<pi.d&&["dd",s]||1===u&&["M"]||u<pi.M&&["MM",u]||1===c&&["y"]||["yy",c];return l[2]=e,l[3]=+t>0,l[4]=n,Sn.apply(null,l)}function Fn(t,e){return void 0===pi[t]?!1:void 0===e?pi[t]:(pi[t]=e,!0)}function Ln(t){var e=this.localeData(),n=Mn(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)}function On(){var t,e,n,r=di(this._milliseconds)/1e3,i=di(this._days),a=di(this._months);t=y(r/60),e=y(t/60),r%=60,t%=60,n=y(a/12),a%=12;var o=n,s=a,u=i,c=e,l=t,h=r,f=this.asSeconds();return f?(0>f?"-":"")+"P"+(o?o+"Y":"")+(s?s+"M":"")+(u?u+"D":"")+(c||l||h?"T":"")+(c?c+"H":"")+(l?l+"M":"")+(h?h+"S":""):"P0D"}var Nn,In,Rn=e.momentProperties=[],qn=!1,Pn={},jn={},Yn=/(\[[^\[]*\])|(\\)?(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,Un=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Vn={},$n={},zn=/\d/,Hn=/\d\d/,Gn=/\d{3}/,Wn=/\d{4}/,Zn=/[+-]?\d{6}/,Xn=/\d\d?/,Kn=/\d{1,3}/,Jn=/\d{1,4}/,Qn=/[+-]?\d{1,6}/,tr=/\d+/,er=/[+-]?\d+/,nr=/Z|[+-]\d\d:?\d\d/gi,rr=/[+-]?\d+(\.\d{1,3})?/,ir=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,ar={},or={},sr=0,ur=1,cr=2,lr=3,hr=4,fr=5,pr=6;O("M",["MM",2],"Mo",function(){return this.month()+1}),O("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),O("MMMM",0,0,function(t){return this.localeData().months(this,t)}),D("month","M"),j("M",Xn),j("MM",Xn,Hn),j("MMM",ir),j("MMMM",ir),V(["M","MM"],function(t,e){e[ur]=m(t)-1}),V(["MMM","MMMM"],function(t,e,n,r){var i=n._locale.monthsParse(t,r,n._strict);null!=i?e[ur]=i:l(n).invalidMonth=t});var dr="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),gr="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),yr={};e.suppressDeprecationWarnings=!1;var mr=/^\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)?)?$/,vr=[["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}/]],xr=[["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/]],br=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=et("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":""))}),O(0,["YY",2],0,function(){return this.year()%100}),O(0,["YYYY",4],0,"year"),O(0,["YYYYY",5],0,"year"),O(0,["YYYYYY",6,!0],0,"year"),D("year","y"),j("Y",er),j("YY",Xn,Hn),j("YYYY",Jn,Wn),j("YYYYY",Qn,Zn),j("YYYYYY",Qn,Zn),V(["YYYYY","YYYYYY"],sr),V("YYYY",function(t,n){n[sr]=2===t.length?e.parseTwoDigitYear(t):m(t)}),V("YY",function(t,n){n[sr]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(t){return m(t)+(m(t)>68?1900:2e3)};var _r=T("FullYear",!1);O("w",["ww",2],"wo","week"),O("W",["WW",2],"Wo","isoWeek"),D("week","w"),D("isoWeek","W"),j("w",Xn),j("ww",Xn,Hn),j("W",Xn),j("WW",Xn,Hn),$(["w","ww","W","WW"],function(t,e,n,r){e[r.substr(0,1)]=m(t)});var wr={dow:0,doy:6};O("DDD",["DDDD",3],"DDDo","dayOfYear"),D("dayOfYear","DDD"),j("DDD",Kn),j("DDDD",Gn),V(["DDD","DDDD"],function(t,e,n){n._dayOfYear=m(t)}),e.ISO_8601=function(){};var Ar=et("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=St.apply(null,arguments);return this>t?this:t}),kr=et("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=St.apply(null,arguments);return t>this?this:t});It("Z",":"),It("ZZ",""),j("Z",nr),j("ZZ",nr),V(["Z","ZZ"],function(t,e,n){n._useUTC=!0,n._tzm=Rt(t)});var Er=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Dr=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,Br=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Kt.fn=Ot.prototype;var Cr=ee(1,"add"),Tr=ee(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var Sr=et("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)});O(0,["gg",2],0,function(){return this.weekYear()%100}),O(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Se("gggg","weekYear"),Se("ggggg","weekYear"),Se("GGGG","isoWeekYear"),Se("GGGGG","isoWeekYear"),D("weekYear","gg"),D("isoWeekYear","GG"),j("G",er),j("g",er),j("GG",Xn,Hn),j("gg",Xn,Hn),j("GGGG",Jn,Wn),j("gggg",Jn,Wn),j("GGGGG",Qn,Zn),j("ggggg",Qn,Zn),$(["gggg","ggggg","GGGG","GGGGG"],function(t,e,n,r){e[r.substr(0,2)]=m(t)}),$(["gg","GG"],function(t,n,r,i){n[i]=e.parseTwoDigitYear(t)}),O("Q",0,0,"quarter"),D("quarter","Q"),j("Q",zn),V("Q",function(t,e){e[ur]=3*(m(t)-1)}),O("D",["DD",2],"Do","date"),D("date","D"),j("D",Xn),j("DD",Xn,Hn),j("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),V(["D","DD"],cr),V("Do",function(t,e){e[cr]=m(t.match(Xn)[0],10)});var Mr=T("Date",!0);O("d",0,"do","day"),O("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),O("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),O("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),O("e",0,0,"weekday"),O("E",0,0,"isoWeekday"),D("day","d"),D("weekday","e"),D("isoWeekday","E"),j("d",Xn),j("e",Xn),j("E",Xn),j("dd",ir),j("ddd",ir),j("dddd",ir),$(["dd","ddd","dddd"],function(t,e,n){var r=n._locale.weekdaysParse(t);null!=r?e.d=r:l(n).invalidWeekday=t}),$(["d","e","E"],function(t,e,n,r){e[r]=m(t)});var Fr="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Lr="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Or="Su_Mo_Tu_We_Th_Fr_Sa".split("_");O("H",["HH",2],0,"hour"),O("h",["hh",2],0,function(){return this.hours()%12||12}),ze("a",!0),ze("A",!1),D("hour","h"),j("a",He),j("A",He),j("H",Xn),j("h",Xn),j("HH",Xn,Hn),j("hh",Xn,Hn),V(["H","HH"],lr),V(["a","A"],function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t}),V(["h","hh"],function(t,e,n){e[lr]=m(t),l(n).bigHour=!0});var Nr=/[ap]\.?m?\.?/i,Ir=T("Hours",!0);O("m",["mm",2],0,"minute"),D("minute","m"),j("m",Xn),j("mm",Xn,Hn),V(["m","mm"],hr);var Rr=T("Minutes",!1);O("s",["ss",2],0,"second"),D("second","s"),j("s",Xn),j("ss",Xn,Hn),V(["s","ss"],fr);var qr=T("Seconds",!1);O("S",0,0,function(){return~~(this.millisecond()/100)}),O(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),O(0,["SSS",3],0,"millisecond"),O(0,["SSSS",4],0,function(){return 10*this.millisecond()}),O(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),O(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),O(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),O(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),O(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),D("millisecond","ms"),j("S",Kn,zn),j("SS",Kn,Hn),j("SSS",Kn,Gn);var Pr;for(Pr="SSSS";Pr.length<=9;Pr+="S")j(Pr,tr);for(Pr="S";Pr.length<=9;Pr+="S")V(Pr,Ze);var jr=T("Milliseconds",!1);O("z",0,0,"zoneAbbr"),O("zz",0,0,"zoneName");var Yr=d.prototype;Yr.add=Cr,Yr.calendar=re,Yr.clone=ie,Yr.diff=ce,Yr.endOf=_e,Yr.format=pe,Yr.from=de,Yr.fromNow=ge,Yr.to=ye,Yr.toNow=me,Yr.get=F,Yr.invalidAt=Te,Yr.isAfter=ae,Yr.isBefore=oe,Yr.isBetween=se,Yr.isSame=ue,Yr.isValid=Be,Yr.lang=Sr,Yr.locale=ve,Yr.localeData=xe,Yr.max=kr,Yr.min=Ar,Yr.parsingFlags=Ce,Yr.set=F,Yr.startOf=be,Yr.subtract=Tr,Yr.toArray=Ee,Yr.toObject=De,Yr.toDate=ke,Yr.toISOString=fe,Yr.toJSON=fe,Yr.toString=he,Yr.unix=Ae,Yr.valueOf=we,Yr.year=_r,Yr.isLeapYear=ct,Yr.weekYear=Fe,Yr.isoWeekYear=Le,Yr.quarter=Yr.quarters=Ie,Yr.month=K,Yr.daysInMonth=J,Yr.week=Yr.weeks=dt,Yr.isoWeek=Yr.isoWeeks=gt,Yr.weeksInYear=Ne,Yr.isoWeeksInYear=Oe,Yr.date=Mr,Yr.day=Yr.days=Ue,Yr.weekday=Ve,Yr.isoWeekday=$e,Yr.dayOfYear=mt,Yr.hour=Yr.hours=Ir,Yr.minute=Yr.minutes=Rr,Yr.second=Yr.seconds=qr,Yr.millisecond=Yr.milliseconds=jr,Yr.utcOffset=jt,Yr.utc=Ut,Yr.local=Vt,Yr.parseZone=$t,Yr.hasAlignedHourOffset=zt,Yr.isDST=Ht,Yr.isDSTShifted=Gt,Yr.isLocal=Wt,Yr.isUtcOffset=Zt,Yr.isUtc=Xt,Yr.isUTC=Xt,Yr.zoneAbbr=Xe,Yr.zoneName=Ke,Yr.dates=et("dates accessor is deprecated. Use date instead.",Mr),Yr.months=et("months accessor is deprecated. Use month instead",K),Yr.years=et("years accessor is deprecated. Use year instead",_r),Yr.zone=et("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Yt);var Ur=Yr,Vr={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},$r={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"},zr="Invalid date",Hr="%d",Gr=/\d{1,2}/,Wr={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"},Zr=x.prototype;Zr._calendar=Vr,Zr.calendar=tn,Zr._longDateFormat=$r,Zr.longDateFormat=en,Zr._invalidDate=zr,Zr.invalidDate=nn,Zr._ordinal=Hr,Zr.ordinal=rn,Zr._ordinalParse=Gr,Zr.preparse=an,Zr.postformat=an,Zr._relativeTime=Wr,Zr.relativeTime=on,Zr.pastFuture=sn,Zr.set=un,Zr.months=G,Zr._months=dr,Zr.monthsShort=W,Zr._monthsShort=gr,Zr.monthsParse=Z,Zr.week=ht,Zr._week=wr,Zr.firstDayOfYear=pt,Zr.firstDayOfWeek=ft,Zr.weekdays=qe,Zr._weekdays=Fr,Zr.weekdaysMin=je,Zr._weekdaysMin=Or,Zr.weekdaysShort=Pe,Zr._weekdaysShort=Lr,Zr.weekdaysParse=Ye,Zr.isPM=Ge,Zr._meridiemParse=Nr,Zr.meridiem=We,A("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,n=1===m(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+n}}),e.lang=et("moment.lang is deprecated. Use moment.locale instead.",A),e.langData=et("moment.langData is deprecated. Use moment.localeData instead.",E);var Xr=Math.abs,Kr=Dn("ms"),Jr=Dn("s"),Qr=Dn("m"),ti=Dn("h"),ei=Dn("d"),ni=Dn("w"),ri=Dn("M"),ii=Dn("y"),ai=Cn("milliseconds"),oi=Cn("seconds"),si=Cn("minutes"),ui=Cn("hours"),ci=Cn("days"),li=Cn("months"),hi=Cn("years"),fi=Math.round,pi={s:45,m:45,h:22,d:26,M:11},di=Math.abs,gi=Ot.prototype;gi.abs=yn,gi.add=vn,gi.subtract=xn,gi.as=kn,gi.asMilliseconds=Kr,gi.asSeconds=Jr,gi.asMinutes=Qr,gi.asHours=ti,gi.asDays=ei,gi.asWeeks=ni,gi.asMonths=ri,gi.asYears=ii,gi.valueOf=En,gi._bubble=_n,gi.get=Bn,gi.milliseconds=ai,gi.seconds=oi,gi.minutes=si,gi.hours=ui,gi.days=ci,gi.weeks=Tn,gi.months=li,gi.years=hi,gi.humanize=Ln,gi.toISOString=On,gi.toString=On,gi.toJSON=On,gi.locale=ve,gi.localeData=xe,gi.toIsoString=et("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",On),gi.lang=Sr,O("X",0,0,"unix"),O("x",0,0,"valueOf"),j("x",er),j("X",rr),V("X",function(t,e,n){n._d=new Date(1e3*parseFloat(t,10))}),V("x",function(t,e,n){n._d=new Date(m(t))}),e.version="2.10.6",n(St),e.fn=Ur,e.min=Ft,e.max=Lt,e.utc=u,e.unix=Je,e.months=hn,e.isDate=i,e.locale=A,e.invalid=f,e.duration=Kt,e.isMoment=g,e.weekdays=pn,e.parseZone=Qe,e.localeData=E,e.isDuration=Nt,e.monthsShort=fn,e.weekdaysMin=gn,e.defineLocale=k,e.weekdaysShort=dn,e.normalizeUnits=B,e.relativeTimeThreshold=Fn;var yi=e;return yi})}).call(e,n(5)(t))},function(t,e,n){describe("when parsing an info graph it",function(){var t;beforeEach(function(){ex=n(23).parser,ex.yy=n(22),t=function(t,e){console.log("Syntax error:"+t)}}),it("should handle an info definition",function(){var t="info\nsay: hello";ex.parse(t)}),it("should handle an showMessage statement definition",function(){var t="info\nshowInfo";ex.parse(t)})})},function(t,e,n){(function(t,r){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,14,15,16,72,76,78,79,81,82,84,85,86],r=[1,20],i=[1,22],a=[1,19],o=[1,21],s=[1,27],u=[1,26],c=[1,23],l=[1,24],h=[1,25],f=[15,21,22,23,24,25,72,76,78,79,81,82,84,85,86],p={trace:function(){},yy:{},symbols_:{error:2,mermaidDoc:3,graphConfig:4,document:5,GRAPH:6,DIR:7,TAGEND:8,TAGSTART:9,UP:10,DOWN:11,line:12,statement:13,NEWLINE:14,EOF:15,SEMI:16,verticeStatement:17,vertex:18,alphaNum:19,vertexType:20,SQUARE:21,ROUND:22,CIRCLE:23,DIAMOND:24,ODD:25,link:26,linkStatement:27,arrowText:28,TESTSTR:29,SPACE:30,"--":31,text:32,ARROW_POINT:33,ARROW_CIRCLE:34,ARROW_CROSS:35,ARROW_OPEN:36,"-.":37,DOTTED_ARROW_POINT:38,DOTTED_ARROW_CIRCLE:39,DOTTED_ARROW_CROSS:40,DOTTED_ARROW_OPEN:41,"==":42,THICK_ARROW_POINT:43,THICK_ARROW_CIRCLE:44,
  THICK_ARROW_CROSS:45,THICK_ARROW_OPEN:46,alphaNumToken:47,alphaNum2:48,MINUS:49,PIPE:50,textToken:51,commentText:52,commentToken:53,keywords:54,STYLE:55,LINKSTYLE:56,CLASSDEF:57,CLASS:58,CLICK:59,subgraph:60,end:61,textNoTags:62,textNoTagsToken:63,classDefStatement:64,DEFAULT:65,stylesOpt:66,classStatement:67,clickStatement:68,styleStatement:69,HEX:70,linkStyleStatement:71,NUM:72,commentStatement:73,PCT:74,style:75,COMMA:76,styleComponent:77,ALPHA:78,COLON:79,UNIT:80,BRKT:81,DOT:82,graphCodeTokens:83,PLUS:84,EQUALS:85,MULT:86,PS:87,PE:88,SQS:89,SQE:90,DIAMOND_START:91,DIAMOND_STOP:92,TAG_START:93,TAG_END:94,QUOTE:95,$accept:0,$end:1},terminals_:{2:"error",6:"GRAPH",7:"DIR",8:"TAGEND",9:"TAGSTART",10:"UP",11:"DOWN",14:"NEWLINE",15:"EOF",16:"SEMI",21:"SQUARE",22:"ROUND",23:"CIRCLE",24:"DIAMOND",25:"ODD",29:"TESTSTR",30:"SPACE",31:"--",33:"ARROW_POINT",34:"ARROW_CIRCLE",35:"ARROW_CROSS",36:"ARROW_OPEN",37:"-.",38:"DOTTED_ARROW_POINT",39:"DOTTED_ARROW_CIRCLE",40:"DOTTED_ARROW_CROSS",41:"DOTTED_ARROW_OPEN",42:"==",43:"THICK_ARROW_POINT",44:"THICK_ARROW_CIRCLE",45:"THICK_ARROW_CROSS",46:"THICK_ARROW_OPEN",49:"MINUS",50:"PIPE",55:"STYLE",56:"LINKSTYLE",57:"CLASSDEF",58:"CLASS",59:"CLICK",60:"subgraph",61:"end",65:"DEFAULT",70:"HEX",72:"NUM",74:"PCT",76:"COMMA",78:"ALPHA",79:"COLON",80:"UNIT",81:"BRKT",82:"DOT",84:"PLUS",85:"EQUALS",86:"MULT",87:"PS",88:"PE",89:"SQS",90:"SQE",91:"DIAMOND_START",92:"DIAMOND_STOP",93:"TAG_START",94:"TAG_END",95:"QUOTE"},productions_:[0,[3,2],[4,2],[4,2],[4,2],[4,2],[4,2],[5,0],[5,2],[12,1],[12,1],[12,1],[12,1],[13,2],[17,1],[18,2],[18,1],[20,1],[20,1],[20,1],[20,1],[20,1],[26,2],[26,3],[26,3],[26,1],[26,3],[26,3],[26,3],[26,3],[26,3],[26,3],[26,3],[26,3],[26,3],[26,3],[26,3],[26,3],[27,1],[27,1],[27,1],[27,1],[27,1],[27,1],[27,1],[27,1],[27,1],[27,1],[27,1],[27,1],[19,1],[19,2],[48,1],[48,1],[48,3],[28,3],[32,1],[32,2],[32,1],[52,1],[52,2],[54,1],[54,1],[54,1],[54,1],[54,1],[54,1],[54,1],[54,1],[54,1],[54,1],[54,1],[62,1],[62,2],[64,5],[64,5],[67,5],[68,5],[69,5],[69,5],[71,5],[71,5],[73,3],[66,1],[66,3],[75,1],[75,2],[77,1],[77,1],[77,1],[77,1],[77,1],[77,1],[77,1],[77,1],[77,1],[77,1],[77,1],[53,1],[53,1],[51,1],[51,1],[51,1],[51,1],[51,1],[51,1],[51,1],[63,1],[63,1],[63,1],[63,1],[47,1],[47,1],[47,1],[47,1],[47,1],[47,1],[47,1],[47,1],[47,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 2:r.setDirection(a[s]),this.$=a[s];break;case 3:r.setDirection("LR"),this.$=a[s];break;case 4:r.setDirection("RL"),this.$=a[s];break;case 5:r.setDirection("BT"),this.$=a[s];break;case 6:r.setDirection("TB"),this.$=a[s];break;case 9:break;case 14:this.$=[a[s]];break;case 15:this.$=a[s-1],r.addVertex(a[s-1],a[s].text,a[s].type);break;case 16:this.$=a[s],r.addVertex(a[s],a[$01].text,a[$01].type);break;case 17:this.$={text:a[s],type:"square"};break;case 18:this.$=a[s],r.addVertex(a[s],a[$01],"round");break;case 19:this.$=a[s],r.addVertex(a[s],a[$01],"circle");break;case 20:case 21:this.$=a[s],r.addVertex(a[s],a[$01],"diamond");break;case 22:a[s-1].text=a[s],this.$=a[s-1];break;case 23:case 24:a[s-2].text=a[s-1],this.$=a[s-2];break;case 25:this.$=a[s];break;case 26:this.$={type:"arrow",stroke:"normal",text:a[s-1]};break;case 27:this.$={type:"arrow_circle",stroke:"normal",text:a[s-1]};break;case 28:this.$={type:"arrow_cross",stroke:"normal",text:a[s-1]};break;case 29:this.$={type:"arrow_open",stroke:"normal",text:a[s-1]};break;case 30:this.$={type:"arrow",stroke:"dotted",text:a[s-1]};break;case 31:this.$={type:"arrow_circle",stroke:"dotted",text:a[s-1]};break;case 32:this.$={type:"arrow_cross",stroke:"dotted",text:a[s-1]};break;case 33:this.$={type:"arrow_open",stroke:"dotted",text:a[s-1]};break;case 34:this.$={type:"arrow",stroke:"thick",text:a[s-1]};break;case 35:this.$={type:"arrow_circle",stroke:"thick",text:a[s-1]};break;case 36:this.$={type:"arrow_cross",stroke:"thick",text:a[s-1]};break;case 37:this.$={type:"arrow_open",stroke:"thick",text:a[s-1]};break;case 38:this.$={type:"arrow",stroke:"normal"};break;case 39:this.$={type:"arrow_circle",stroke:"normal"};break;case 40:this.$={type:"arrow_cross",stroke:"normal"};break;case 41:this.$={type:"arrow_open",stroke:"normal"};break;case 42:this.$={type:"arrow",stroke:"dotted"};break;case 43:this.$={type:"arrow_circle",stroke:"dotted"};break;case 44:this.$={type:"arrow_cross",stroke:"dotted"};break;case 45:this.$={type:"arrow_open",stroke:"dotted"};break;case 46:this.$={type:"arrow",stroke:"thick"};break;case 47:this.$={type:"arrow_circle",stroke:"thick"};break;case 48:this.$={type:"arrow_cross",stroke:"thick"};break;case 49:this.$={type:"arrow_open",stroke:"thick"};break;case 52:case 53:case 56:case 58:case 59:case 72:this.$=a[s];break;case 54:this.$=a[s-2]+"-"+a[s];break;case 55:this.$=a[s-1];break;case 57:case 60:case 73:this.$=a[s-1]+""+a[s];break;case 74:case 75:this.$=a[s-4],r.addClass(a[s-2],a[s]);break;case 76:this.$=a[s-4],r.setClass(a[s-2],a[s]);break;case 77:this.$=a[s-4],r.setClickEvent(a[s-2],a[s]);break;case 78:this.$=a[s-4],r.addVertex(a[s-2],void 0,void 0,a[s]);break;case 79:case 80:case 81:this.$=a[s-4],r.updateLink(a[s-2],a[s]);break;case 83:this.$=[a[s]];break;case 84:a[s-2].push(a[s]),this.$=a[s-2];break;case 86:this.$=a[s-1]+a[s]}},table:[{3:1,4:2,6:[1,3]},{1:[3]},e(n,[2,7],{5:4}),{7:[1,5],8:[1,6],9:[1,7],10:[1,8],11:[1,9]},{1:[2,1],12:10,13:11,14:[1,12],15:[1,13],16:[1,14],17:15,18:16,19:17,47:18,72:r,76:i,78:a,79:o,81:s,82:u,84:c,85:l,86:h},e(n,[2,2]),e(n,[2,3]),e(n,[2,4]),e(n,[2,5]),e(n,[2,6]),e(n,[2,8]),e(n,[2,9]),e(n,[2,10]),e(n,[2,11]),e(n,[2,12]),{15:[1,28]},{15:[2,14]},{15:[2,16],20:29,21:[1,31],22:[1,32],23:[1,33],24:[1,34],25:[1,35],47:30,72:r,76:i,78:a,79:o,81:s,82:u,84:c,85:l,86:h},e(f,[2,50]),e(f,[2,111]),e(f,[2,112]),e(f,[2,113]),e(f,[2,114]),e(f,[2,115]),e(f,[2,116]),e(f,[2,117]),e(f,[2,118]),e(f,[2,119]),e(n,[2,13]),{15:[2,15]},e(f,[2,51]),{15:[2,17]},{15:[2,18]},{15:[2,19]},{15:[2,20]},{15:[2,21]}],defaultActions:{16:[2,14],29:[2,15],31:[2,17],32:[2,18],33:[2,19],34:[2,20],35:[2,21]},parseError:function(t,e){if(!e.recoverable)throw new Error(t);this.trace(t)},parse:function(t){function e(){var t;return t=d.lex()||f,"number"!=typeof t&&(t=n.symbols_[t]||t),t}var n=this,r=[0],i=[null],a=[],o=this.table,s="",u=0,c=0,l=0,h=2,f=1,p=a.slice.call(arguments,1),d=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);d.setInput(t,g.yy),g.yy.lexer=d,g.yy.parser=this,"undefined"==typeof d.yylloc&&(d.yylloc={});var m=d.yylloc;a.push(m);var v=d.options&&d.options.ranges;"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var x,b,_,w,A,k,E,D,B,C={};;){if(_=r[r.length-1],this.defaultActions[_]?w=this.defaultActions[_]:((null===x||"undefined"==typeof x)&&(x=e()),w=o[_]&&o[_][x]),"undefined"==typeof w||!w.length||!w[0]){var T="";B=[];for(k in o[_])this.terminals_[k]&&k>h&&B.push("'"+this.terminals_[k]+"'");T=d.showPosition?"Parse error on line "+(u+1)+":\n"+d.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(u+1)+": Unexpected "+(x==f?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(T,{text:d.match,token:this.terminals_[x]||x,line:d.yylineno,loc:m,expected:B})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+x);switch(w[0]){case 1:r.push(x),i.push(d.yytext),a.push(d.yylloc),r.push(w[1]),x=null,b?(x=b,b=null):(c=d.yyleng,s=d.yytext,u=d.yylineno,m=d.yylloc,l>0&&l--);break;case 2:if(E=this.productions_[w[1]][1],C.$=i[i.length-E],C._$={first_line:a[a.length-(E||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(E||1)].first_column,last_column:a[a.length-1].last_column},v&&(C._$.range=[a[a.length-(E||1)].range[0],a[a.length-1].range[1]]),A=this.performAction.apply(C,[s,c,u,g.yy,w[1],i,a].concat(p)),"undefined"!=typeof A)return A;E&&(r=r.slice(0,-1*E*2),i=i.slice(0,-1*E),a=a.slice(0,-1*E)),r.push(this.productions_[w[1]][0]),i.push(C.$),a.push(C._$),D=o[r[r.length-2]][r[r.length-1]],r.push(D);break;case 3:return!0}}return!0}},d=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:break;case 1:this.begin("string");break;case 2:this.popState();break;case 3:return"TEXT";case 4:this.begin("eSquareVertex");break;case 5:this.popState();break;case 6:return"SQUARE";case 7:this.begin("squareVertex");break;case 8:this.popState();break;case 9:return"SQUARE";case 10:this.begin("eOddVertex");break;case 11:this.popState();break;case 12:return"ODD";case 13:this.begin("oddVertex");break;case 14:this.popState();break;case 15:return"ODD";case 16:this.begin("eDiamondVertex");break;case 17:this.popState();break;case 18:return console.log("edia: "+e.yytext),"DIAMOND";case 19:this.begin("diamondVertex");break;case 20:this.popState();break;case 21:return console.log("dia: "+e.yytext),"DIAMOND";case 22:this.begin("eCircleVertex");break;case 23:this.popState();break;case 24:return"CIRCLE";case 25:this.begin("circleVertex");break;case 26:this.popState();break;case 27:return"CIRCLE";case 28:this.begin("eRoundVertex");break;case 29:this.popState();break;case 30:return"ROUND";case 31:this.begin("roundVertex");break;case 32:this.popState();break;case 33:return"ROUND";case 34:break;case 35:return 55;case 36:return 65;case 37:return 56;case 38:return 57;case 39:return 58;case 40:return 59;case 41:return 6;case 42:return 60;case 43:return 61;case 44:return 7;case 45:return 7;case 46:return 7;case 47:return 7;case 48:return 7;case 49:return 7;case 50:return 72;case 51:return 81;case 52:return 79;case 53:return 16;case 54:return 76;case 55:return 86;case 56:return 9;case 57:return 8;case 58:return 10;case 59:return 11;case 60:return 35;case 61:return 33;case 62:return 34;case 63:return 36;case 64:return 40;case 65:return 38;case 66:return 39;case 67:return 41;case 68:return 40;case 69:return 38;case 70:return 39;case 71:return 41;case 72:return 45;case 73:return 43;case 74:return 44;case 75:return 46;case 76:return 31;case 77:return 37;case 78:return 42;case 79:return 49;case 80:return 82;case 81:return 84;case 82:return 74;case 83:return 85;case 84:return 85;case 85:return 78;case 86:return 50;case 87:return 87;case 88:return 88;case 89:return 89;case 90:return 90;case 91:return 91;case 92:return 92;case 93:return 95;case 94:return"say";case 95:return 14;case 96:return 15;case 97:return"INVALID"}},rules:[/^(?:%%[^\n]*)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\[]["])/i,/^(?:["][\]])/i,/^(?:[^"]*)/i,/^(?:[\[])/i,/^(?:[\]])/i,/^(?:[^\]]*)/i,/^(?:[\>]["])/i,/^(?:["][\]])/i,/^(?:[^"]*)/i,/^(?:[\>])/i,/^(?:[\]])/i,/^(?:[^\]]*)/i,/^(?:[\{]["])/i,/^(?:["][\}])/i,/^(?:[^"]*)/i,/^(?:[\{])/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:[\(][\(]["])/i,/^(?:["][\)][\)])/i,/^(?:[^\"]*)/i,/^(?:[\(][\(])/i,/^(?:[\)][\)])/i,/^(?:[^\)]*)/i,/^(?:[\(]["])/i,/^(?:["][\)])/i,/^(?:[^"]*)/i,/^(?:[\(])/i,/^(?:[\)])/i,/^(?:[^\)]*)/i,/^(?:\s+)/i,/^(?:style\b)/i,/^(?:default\b)/i,/^(?:linkStyle\b)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:click\b)/i,/^(?:graph\b)/i,/^(?:subgraph\b)/i,/^(?:end\s*)/i,/^(?:LR\b)/i,/^(?:RL\b)/i,/^(?:TB\b)/i,/^(?:BT\b)/i,/^(?:TD\b)/i,/^(?:BR\b)/i,/^(?:[0-9]+)/i,/^(?:#)/i,/^(?::)/i,/^(?:;)/i,/^(?:,)/i,/^(?:\*)/i,/^(?:<)/i,/^(?:>)/i,/^(?:\^)/i,/^(?:v\b)/i,/^(?:\s*--[x]\s*)/i,/^(?:\s*-->\s*)/i,/^(?:\s*--[o]\s*)/i,/^(?:\s*---\s*)/i,/^(?:\s*-\.-[x]\s*)/i,/^(?:\s*-\.->\s*)/i,/^(?:\s*-\.-[o]\s*)/i,/^(?:\s*-\.-\s*)/i,/^(?:\s*.-[x]\s*)/i,/^(?:\s*\.->\s*)/i,/^(?:\s*\.-[o]\s*)/i,/^(?:\s*\.-\s*)/i,/^(?:\s*==[x]\s*)/i,/^(?:\s*==>\s*)/i,/^(?:\s*==[o]\s*)/i,/^(?:\s*==[\=]\s*)/i,/^(?:\s*--\s*)/i,/^(?:\s*-\.\s*)/i,/^(?:\s*==\s*)/i,/^(?:-)/i,/^(?:\.)/i,/^(?:\+)/i,/^(?:%)/i,/^(?:=)/i,/^(?:=)/i,/^(?:[\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_\/])/i,/^(?:\|)/i,/^(?:\()/i,/^(?:\))/i,/^(?:\[)/i,/^(?:\])/i,/^(?:\{)/i,/^(?:\})/i,/^(?:")/i,/^(?:say\b)/i,/^(?:\n+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{string:{rules:[2,3],inclusive:!1},squareVertex:{rules:[8,9],inclusive:!1},eSquareVertex:{rules:[5,6],inclusive:!1},roundVertex:{rules:[32,33],inclusive:!1},eRoundVertex:{rules:[29,30],inclusive:!1},circleVertex:{rules:[26,27],inclusive:!1},eCircleVertex:{rules:[23,24],inclusive:!1},diamondVertex:{rules:[20,21],inclusive:!1},eDiamondVertex:{rules:[17,18],inclusive:!1},oddVertex:{rules:[14,15],inclusive:!1},eOddVertex:{rules:[11,12],inclusive:!1},INITIAL:{rules:[0,1,4,7,10,13,16,19,22,25,28,31,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97],inclusive:!0}}};return t}();return p.lexer=d,t.prototype=p,p.Parser=t,new t}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(17).readFileSync(n(13).normalize(r[1]),"utf8");return e.parser.parse(i)},"undefined"!=typeof r&&n.c[0]===r&&e.main(t.argv.slice(1))}).call(e,n(11),n(5)(t))},function(t,e){},function(t,e,n){describe("when parsing a gantt diagram it",function(){var t,e;beforeEach(function(){e=n(24).parser,e.yy=n(20),t=function(t,e){console.log("Syntax error:"+t)}}),it("should handle an dateFormat definition",function(){var t="gantt\ndateFormat yyyy-mm-dd";e.parse(t)}),it("should handle an dateFormat definition",function(){var t="gantt\ndateFormat yyyy-mm-dd\ntitle Adding gantt diagram functionality to mermaid";e.parse(t)}),it("should handle an dateFormat definition",function(){var t="gantt\ndateFormat yyyy-mm-dd\ntitle Adding gantt diagram functionality to mermaid";e.parse(t)}),it("should handle an section definition",function(){var t="gantt\ndateFormat yyyy-mm-dd\ntitle Adding gantt diagram functionality to mermaid";e.parse(t)}),it("should handle a task definition",function(){var t="gantt\ndateFormat yyyy-mm-dd\ntitle Adding gantt diagram functionality to mermaid\nsection Documentation\nDesign jison grammar:des1, 2014-01-01, 2014-01-04";e.parse(t)})})},function(t,e,n){describe("when using the ganttDb",function(){var t,e=n(81);beforeEach(function(){gDb=n(20),gDb.clear(),t=function(t,e){console.log("Syntax error:"+t)}}),it("should handle an fixed dates",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2013-01-12");var t=gDb.getTasks();expect(t[0].startTime).toEqual(e("2013-01-01","YYYY-MM-DD").toDate()),expect(t[0].endTime).toEqual(e("2013-01-12","YYYY-MM-DD").toDate()),expect(t[0].id).toEqual("id1"),expect(t[0].description).toEqual("test1")}),it("should handle duration instead of fixed date to determine end date",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2d");var t=gDb.getTasks();expect(t[0].startTime).toEqual(e("2013-01-01","YYYY-MM-DD").toDate()),expect(t[0].endTime).toEqual(e("2013-01-03","YYYY-MM-DD").toDate()),expect(t[0].id).toEqual("id1"),expect(t[0].description).toEqual("test1")}),it("should handle duration instead of fixed date to determine end date",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2h");var t=gDb.getTasks();expect(t[0].startTime).toEqual(e("2013-01-01","YYYY-MM-DD").toDate()),expect(t[0].endTime).toEqual(e("2013-01-01 2:00","YYYY-MM-DD hh:mm").toDate()),expect(t[0].id).toEqual("id1"),expect(t[0].description).toEqual("test1")}),it("should handle ",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2w");var t=gDb.getTasks();expect(t[0].startTime).toEqual(e("2013-01-01","YYYY-MM-DD").toDate()),expect(t[0].endTime).toEqual(e("2013-01-15","YYYY-MM-DD").toDate()),expect(t[0].id).toEqual("id1"),expect(t[0].description).toEqual("test1")}),it("should handle relative start date based on id",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2w"),gDb.addTask("test2","id2,after id1,1d");var t=gDb.getTasks();expect(t[1].startTime).toEqual(e("2013-01-15","YYYY-MM-DD").toDate()),expect(t[1].id).toEqual("id2"),expect(t[1].description).toEqual("test2")}),it("should handle relative start date based on id when id is invalid",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2w"),gDb.addTask("test2","id2,after id3,1d");var t=gDb.getTasks();expect(t[1].startTime).toEqual(new Date((new Date).setHours(0,0,0,0))),expect(t[1].id).toEqual("id2"),expect(t[1].description).toEqual("test2")}),it("should handle fixed dates without id",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","2013-01-01,2013-01-12");var t=gDb.getTasks();expect(t[0].startTime).toEqual(e("2013-01-01","YYYY-MM-DD").toDate()),expect(t[0].endTime).toEqual(e("2013-01-12","YYYY-MM-DD").toDate()),expect(t[0].id).toEqual("task1"),expect(t[0].description).toEqual("test1")}),it("should handle duration instead of a fixed date to determine end date without id",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","2013-01-01,4d");var t=gDb.getTasks();expect(t[0].startTime).toEqual(e("2013-01-01","YYYY-MM-DD").toDate()),expect(t[0].endTime).toEqual(e("2013-01-05","YYYY-MM-DD").toDate()),expect(t[0].id).toEqual("task1"),expect(t[0].description).toEqual("test1")}),it("should handle relative start date of a fixed date to determine end date without id",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2w"),gDb.addTask("test2","after id1,1d");var t=gDb.getTasks();expect(t[1].startTime).toEqual(e("2013-01-15","YYYY-MM-DD").toDate()),expect(t[1].id).toEqual("task1"),expect(t[1].description).toEqual("test2")}),it("should handle a new task with only an end date as definition",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2w"),gDb.addTask("test2","2013-01-26");var t=gDb.getTasks();expect(t[1].startTime).toEqual(e("2013-01-15","YYYY-MM-DD").toDate()),expect(t[1].endTime).toEqual(e("2013-01-26","YYYY-MM-DD").toDate()),expect(t[1].id).toEqual("task1"),expect(t[1].description).toEqual("test2")}),it("should handle a new task with only an end date as definition",function(){gDb.setDateFormat("YYYY-MM-DD"),gDb.addSection("testa1"),gDb.addTask("test1","id1,2013-01-01,2w"),gDb.addTask("test2","2d");var t=gDb.getTasks();expect(t[1].startTime).toEqual(e("2013-01-15","YYYY-MM-DD").toDate()),expect(t[1].endTime).toEqual(e("2013-01-17","YYYY-MM-DD").toDate()),expect(t[1].id).toEqual("task1"),expect(t[1].description).toEqual("test2")})})},function(t,e){},function(t,e,n){var r,i,a=n(!function(){var t=new Error('Cannot find module "proxyquire"');throw t.code="MODULE_NOT_FOUND",t}()),o=n(25).parser,s={select:function(){return new r}},u=a("./sequenceRenderer",{"../../d3":s});describe("when parsing a sequenceDiagram",function(){var t;beforeEach(function(){o.yy=n(12),o.yy.clear(),t=function(t,e){console.log("Syntax error:"+t),console.log(e)},o.yy.parseError=t}),it("it should handle a sequenceDiagram defintion",function(){i="sequenceDiagram\nAlice->Bob:Hello Bob, how are you?\nNote right of Bob: Bob thinks\nBob-->Alice: I am good thanks!\n",o.parse(i);var t=o.yy.getActors();expect(t.Alice.description).toBe("Alice"),t.Bob.description="Bob";var e=o.yy.getMessages();expect(e.length).toBe(3),expect(e[0].from).toBe("Alice"),expect(e[2].from).toBe("Bob")}),it("it should space in actor names",function(){i="sequenceDiagram\nAlice->Bob:Hello Bob, how are - you?\nBob-->Alice: I am good thanks!\n",o.parse(i);var t=o.yy.getActors();expect(t.Alice.description).toBe("Alice"),t.Bob.description="Bob";var e=o.yy.getMessages();expect(e.length).toBe(2),expect(e[0].from).toBe("Alice"),expect(e[1].from).toBe("Bob")}),it("it should handle in async messages",function(){var t="sequenceDiagram\nAlice-xBob:Hello Bob, how are you?\n";o.parse(t);var e=o.yy.getActors();expect(e.Alice.description).toBe("Alice"),expect(e.Bob.description).toBe("Bob");var n=o.yy.getMessages();expect(n.length).toBe(1),expect(n[0].type).toBe(o.yy.LINETYPE.SOLID_CROSS)}),it("it should handle in async dotted messages",function(){var t="sequenceDiagram\nAlice--xBob:Hello Bob, how are you?\n";o.parse(t);var e=o.yy.getActors();expect(e.Alice.description).toBe("Alice"),expect(e.Bob.description).toBe("Bob");var n=o.yy.getMessages();expect(n.length).toBe(1),expect(n[0].type).toBe(o.yy.LINETYPE.DOTTED_CROSS)}),it("it should handle in arrow messages",function(){var t="sequenceDiagram\nAlice->>Bob:Hello Bob, how are you?\n";o.parse(t);var e=o.yy.getActors();expect(e.Alice.description).toBe("Alice"),expect(e.Bob.description).toBe("Bob");var n=o.yy.getMessages();expect(n.length).toBe(1),expect(n[0].type).toBe(o.yy.LINETYPE.SOLID)}),it("it should handle in arrow messages",function(){var t="sequenceDiagram\nAlice-->>Bob:Hello Bob, how are you?\n";o.parse(t);var e=o.yy.getActors();expect(e.Alice.description).toBe("Alice"),expect(e.Bob.description).toBe("Bob");var n=o.yy.getMessages();expect(n.length).toBe(1),expect(n[0].type).toBe(o.yy.LINETYPE.DOTTED)}),it("it should handle comments in a sequenceDiagram",function(){i="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\n%% Comment\nNote right of Bob: Bob thinks\nBob-->Alice: I am good thanks!\n",o.parse(i);var t=o.yy.getActors();expect(t.Alice.description).toBe("Alice"),t.Bob.description="Bob";var e=o.yy.getMessages();expect(e.length).toBe(3),expect(e[0].from).toBe("Alice"),expect(e[2].from).toBe("Bob")}),it("it should handle new lines in a sequenceDiagram",function(){i="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\n\n%% Comment\nNote right of Bob: Bob thinks\nBob-->Alice: I am good thanks!\n",o.parse(i);var t=o.yy.getActors();expect(t.Alice.description).toBe("Alice"),t.Bob.description="Bob";var e=o.yy.getMessages();expect(e.length).toBe(3),expect(e[0].from).toBe("Alice"),expect(e[2].from).toBe("Bob")}),it("it should handle one leading space in lines in a sequenceDiagram",function(){i="sequenceDiagram\n Alice->Bob: Hello Bob, how are you?\n\n%% Comment\nNote right of Bob: Bob thinks\nBob-->Alice: I am good thanks!\n",o.parse(i);var t=o.yy.getActors();expect(t.Alice.description).toBe("Alice"),t.Bob.description="Bob";var e=o.yy.getMessages();expect(e.length).toBe(3),expect(e[0].from).toBe("Alice"),expect(e[2].from).toBe("Bob")}),it("it should handle several leading spaces in lines in a sequenceDiagram",function(){i="sequenceDiagram\n   Alice->Bob: Hello Bob, how are you?\n\n%% Comment\nNote right of Bob: Bob thinks\nBob-->Alice: I am good thanks!\n",
  o.parse(i);var t=o.yy.getActors();expect(t.Alice.description).toBe("Alice"),t.Bob.description="Bob";var e=o.yy.getMessages();expect(e.length).toBe(3),expect(e[0].from).toBe("Alice"),expect(e[2].from).toBe("Bob")}),it("it should handle several leading spaces in lines in a sequenceDiagram",function(){i="sequenceDiagram\nparticipant Alice\nparticipant Bob\nAlice->John: Hello John, how are you?\n    loop Healthcheck\nJohn->John: Fight against hypochondria\n end\nNote right of John: Rational thoughts<br/>prevail...\n    John-->Alice: Great!\n    John->Bob: How about you?\nBob-->John: Jolly good!\n",o.parse(i);var t=o.yy.getActors();expect(t.Alice.description).toBe("Alice"),t.Bob.description="Bob";var e=o.yy.getMessages();expect(e.length).toBe(8),expect(e[0].from).toBe("Alice"),expect(e[2].from).toBe("John")}),it("it should handle loop statements a sequenceDiagram",function(){var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\n\n%% Comment\nNote right of Bob: Bob thinks\nloop Multiple happy responses\n\nBob-->Alice: I am good thanks!\nend";o.parse(t);var e=o.yy.getActors();expect(e.Alice.description).toBe("Alice"),e.Bob.description="Bob";var n=o.yy.getMessages();expect(n.length).toBe(5),expect(n[0].from).toBe("Alice"),expect(n[1].from).toBe("Bob")}),it("it should handle opt statements a sequenceDiagram",function(){var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\n\n%% Comment\nNote right of Bob: Bob thinks\nopt Perhaps a happy response\n\nBob-->Alice: I am good thanks!\nend";o.parse(t);var e=o.yy.getActors();expect(e.Alice.description).toBe("Alice"),e.Bob.description="Bob";var n=o.yy.getMessages();expect(n.length).toBe(5),expect(n[0].from).toBe("Alice"),expect(n[1].from).toBe("Bob")}),it("it should handle opt statements a sequenceDiagram",function(){var t="sequenceDiagram;Alice->Bob: Hello Bob, how are you?;opt Perhaps a happy response;Bob-->Alice: I am good thanks!;end;";o.parse(t);var e=o.yy.getActors();expect(e.Alice.description).toBe("Alice"),e.Bob.description="Bob";var n=o.yy.getMessages();expect(n.length).toBe(4),expect(n[0].from).toBe("Alice"),expect(n[1].type).toBe(o.yy.LINETYPE.OPT_START),expect(n[2].from).toBe("Bob")}),it("it should handle alt statements a sequenceDiagram",function(){var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\n\n%% Comment\nNote right of Bob: Bob thinks\nalt isWell\n\nBob-->Alice: I am good thanks!\nelse isSick\nBob-->Alice: Feel sick...\nend";o.parse(t);var e=o.yy.getActors();expect(e.Alice.description).toBe("Alice"),e.Bob.description="Bob";var n=o.yy.getMessages();expect(n.length).toBe(7),expect(n[0].from).toBe("Alice"),expect(n[1].from).toBe("Bob")})}),describe("when checking the bounds in a sequenceDiagram",function(){var t,e;beforeEach(function(){o.yy=n(12),o.yy.clear(),t=function(t,e){console.log("Syntax error:"+t),console.log(e)},o.yy.parseError=t,e={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,messageMargin:40,boxTextMargin:15,noteMargin:25},u.setConf(e)}),it("it should handle a simple bound call",function(){u.bounds.init(),u.bounds.insert(100,100,200,200);var t=u.bounds.getBounds();expect(t.startx).toBe(100),expect(t.starty).toBe(100),expect(t.stopx).toBe(200),expect(t.stopy).toBe(200)}),it("it should handle an expanding bound",function(){u.bounds.init(),u.bounds.insert(100,100,200,200),u.bounds.insert(25,50,300,400);var t=u.bounds.getBounds();expect(t.startx).toBe(25),expect(t.starty).toBe(50),expect(t.stopx).toBe(300),expect(t.stopy).toBe(400)}),it("it should handle inserts within the bound without changing the outer bounds",function(){u.bounds.init(),u.bounds.insert(100,100,200,200),u.bounds.insert(25,50,300,400),u.bounds.insert(125,150,150,200);var t=u.bounds.getBounds();expect(t.startx).toBe(25),expect(t.starty).toBe(50),expect(t.stopx).toBe(300),expect(t.stopy).toBe(400)}),it("it should handle a loop without expanding the area",function(){u.bounds.init(),u.bounds.insert(25,50,300,400),u.bounds.verticalPos=150,u.bounds.newLoop(),u.bounds.insert(125,150,150,200);var t=u.bounds.endLoop();expect(t.startx).toBe(125-e.boxMargin),expect(t.starty).toBe(150-e.boxMargin),expect(t.stopx).toBe(150+e.boxMargin),expect(t.stopy).toBe(200+e.boxMargin);var n=u.bounds.getBounds();expect(n.startx).toBe(25),expect(n.starty).toBe(50),expect(n.stopx).toBe(300),expect(n.stopy).toBe(400)}),it("it should handle multiple loops withtout expanding the bounds",function(){u.bounds.init(),u.bounds.insert(100,100,1e3,1e3),u.bounds.verticalPos=200,u.bounds.newLoop(),u.bounds.newLoop(),u.bounds.insert(200,200,300,300);var t=u.bounds.endLoop();expect(t.startx).toBe(200-e.boxMargin),expect(t.starty).toBe(200-e.boxMargin),expect(t.stopx).toBe(300+e.boxMargin),expect(t.stopy).toBe(300+e.boxMargin),t=u.bounds.endLoop(),expect(t.startx).toBe(200-2*e.boxMargin),expect(t.starty).toBe(200-2*e.boxMargin),expect(t.stopx).toBe(300+2*e.boxMargin),expect(t.stopy).toBe(300+2*e.boxMargin);var n=u.bounds.getBounds();expect(n.startx).toBe(100),expect(n.starty).toBe(100),expect(n.stopx).toBe(1e3),expect(n.stopy).toBe(1e3)}),it("it should handle a loop that expands the area",function(){u.bounds.init(),u.bounds.insert(100,100,200,200),u.bounds.verticalPos=200,u.bounds.newLoop(),u.bounds.insert(50,50,300,300);var t=u.bounds.endLoop();expect(t.startx).toBe(50-e.boxMargin),expect(t.starty).toBe(50-e.boxMargin),expect(t.stopx).toBe(300+e.boxMargin),expect(t.stopy).toBe(300+e.boxMargin);var n=u.bounds.getBounds();expect(n.startx).toBe(t.startx),expect(n.starty).toBe(t.starty),expect(n.stopx).toBe(t.stopx),expect(n.stopy).toBe(t.stopy)})}),describe("when rendering a sequenceDiagram",function(){var t,e;beforeEach(function(){o.yy=n(12),o.yy.clear(),t=function(t,e){console.log("Syntax error:"+t),console.log(e)},o.yy.parseError=t,r=function(){var t={append:function(t){return r()},attr:function(t,e){return this},style:function(t,e){return this},text:function(t){return this},0:{0:{getBBox:function(){return{height:10,width:20}}}}};return t},e={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,messageMargin:40,boxTextMargin:15,noteMargin:25},u.setConf(e)}),it("it should handle one actor",function(){u.bounds.init();var t="sequenceDiagram\nparticipant Alice\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(0),expect(n.starty).toBe(0),expect(n.stopx).toBe(e.width),expect(n.stopy).toBe(e.height)}),it("it should handle one actor and a note",function(){u.bounds.init();var t="sequenceDiagram\nparticipant Alice\nNote left of Alice: Alice thinks\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(-(e.width/2)-e.actorMargin/2),expect(n.starty).toBe(0),expect(n.stopx).toBe(e.width),expect(n.stopy).toBe(e.height+e.boxMargin+2*e.noteMargin+10)}),it("it should handle one actor and a note to the right",function(){u.bounds.init();var t="sequenceDiagram\nparticipant Alice\nNote right of Alice: Alice thinks\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(0),expect(n.starty).toBe(0),expect(n.stopx).toBe(e.width/2+e.actorMargin/2+e.width),expect(n.stopy).toBe(e.height+e.boxMargin+2*e.noteMargin+10)}),it("it should handle two actors",function(){u.bounds.init();var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(0),expect(n.starty).toBe(0),expect(n.stopx).toBe(2*e.width+e.actorMargin),expect(n.stopy).toBe(0+e.messageMargin+e.height)}),it("it should draw two actors and two messages",function(){u.bounds.init();var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\nBob->Alice: Fine!\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(0),expect(n.starty).toBe(0),expect(n.stopx).toBe(0+2*e.width+e.actorMargin),expect(n.stopy).toBe(0+2*e.messageMargin+e.height)}),it("it should draw two actors notes to the right",function(){u.bounds.init();var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\nNote right of Bob: Bob thinks\nBob->Alice: Fine!\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(0),expect(n.starty).toBe(0);var r=e.actorMargin+e.width+e.width/2+e.noteMargin+e.width;expect(n.stopx).toBe(r),expect(n.stopy).toBe(2*e.messageMargin+e.height+e.boxMargin+10+2*e.noteMargin)}),it("it should draw two actors notes to the left",function(){u.bounds.init();var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\nNote left of Alice: Bob thinks\nBob->Alice: Fine!\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(-(e.width/2)-e.actorMargin/2),expect(n.starty).toBe(0),expect(n.stopx).toBe(2*e.width+e.actorMargin),expect(n.stopy).toBe(2*e.messageMargin+e.height+e.boxMargin+10+2*e.noteMargin)}),it("it should draw two loops",function(){u.bounds.init();var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\nloop Cheers\nBob->Alice: Fine!\nend\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(0),expect(n.starty).toBe(0),expect(n.stopx).toBe(0+2*e.width+e.actorMargin),expect(n.stopy).toBe(0+2*e.messageMargin+e.height+3*e.boxMargin+e.boxTextMargin)})}),describe("when rendering a sequenceDiagram with actor mirror activated",function(){var t,e;beforeEach(function(){o.yy=n(12),o.yy.clear(),t=function(t,e){console.log("Syntax error:"+t),console.log(e)},o.yy.parseError=t,r=function(){var t={append:function(t){return r()},attr:function(t,e){return this},style:function(t,e){return this},text:function(t){return this},0:{0:{getBBox:function(){return{height:10,width:20}}}}};return t},e={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,messageMargin:40,boxTextMargin:15,noteMargin:25,mirrorActors:!0,bottomMarginAdj:1},u.setConf(e)}),it("it should handle one actor",function(){u.bounds.init();var t="sequenceDiagram\nparticipant Alice\n";o.parse(t),u.draw(t,"tst");var n=u.bounds.getBounds();expect(n.startx).toBe(0),expect(n.starty).toBe(0),expect(n.stopx).toBe(e.width),expect(n.stopy).toBe(2*e.height+2*e.boxMargin)})})},function(t,e){function n(t){return t&&"string"==typeof t&&(element=document.querySelector(".editor"),t=t.replace(/<script[^>]*>([\S\s]*?)<\/script>/gim,""),t=t.replace(/<\/?\w(?:[^"'>]|"[^"]*"|'[^']*')*>/gim,""),element.innerHTML=t,t=element.textContent,element.textContent=""),t}var r={$:document.querySelector,textField:"",submit:"",graph:"",init:function(){document.querySelector(".button").addEventListener("click",function(){r.update()}.bind(this))},update:function(){var t=document.querySelector(".editor").value;t=t.replace(/>/g,"&gt;"),t=t.replace(/</g,"&lt;"),t=n(t).trim(),document.querySelector(".mermaid").innerHTML=t,mermaid.init(),document.querySelector(".editor").value=t}};document.addEventListener("DOMContentLoaded",function(){r.init()},!1),e=r},function(t,e,n){t.exports.mermaid=n(36),t.exports.mermaidAPI=n(27)},function(t,e,n){(function(t){var e=n(!function(){var t=new Error('Cannot find module "rewire"');throw t.code="MODULE_NOT_FOUND",t}()),r=(n(21),n(50));describe("when using main and ",function(){describe("when detecting chart type ",function(){beforeEach(function(){var e=n(!function(){var t=new Error('Cannot find module "mock-browser"');throw t.code="MODULE_NOT_FOUND",t}()).mocks.MockBrowser,r=new e;delete t.mermaid_config,document=r.getDocument(),window=r.getWindow()}),it("should not start rendering with mermaid_config.startOnLoad set to false",function(){r=e("./main"),mermaid_config={startOnLoad:!1},document.body.innerHTML='<div class="mermaid">graph TD;\na;</div>',spyOn(t.mermaid,"init"),r.contentLoaded(),expect(t.mermaid.init).not.toHaveBeenCalled()}),it("should not start rendering with mermaid.startOnLoad set to false",function(){r=e("./main"),mermaid.startOnLoad=!1,mermaid_config={startOnLoad:!0},document.body.innerHTML='<div class="mermaid">graph TD;\na;</div>',spyOn(t.mermaid,"init"),r.contentLoaded(),expect(t.mermaid.init).not.toHaveBeenCalled()}),it("should start rendering with both startOnLoad set",function(){r=e("./main"),mermaid.startOnLoad=!0,mermaid_config={startOnLoad:!0},document.body.innerHTML='<div class="mermaid">graph TD;\na;</div>',spyOn(t.mermaid,"init"),r.contentLoaded(),expect(t.mermaid.init).toHaveBeenCalled()}),it("should start rendering with mermaid.startOnLoad set and no mermaid_config defined",function(){r=e("./main"),mermaid.startOnLoad=!0,document.body.innerHTML='<div class="mermaid">graph TD;\na;</div>',spyOn(t.mermaid,"init"),r.contentLoaded(),expect(t.mermaid.init).toHaveBeenCalled()}),it("should start rendering as a default with no changes performed",function(){r=e("./main"),document.body.innerHTML='<div class="mermaid">graph TD;\na;</div>',spyOn(t.mermaid,"init"),r.contentLoaded(),expect(t.mermaid.init).toHaveBeenCalled()})}),describe("when calling addEdges ",function(){var t,r=n(10),i=n(7),a=n(18);beforeEach(function(){mermaid_config={startOnLoad:!1};var a=n(!function(){var t=new Error('Cannot find module "mock-browser"');throw t.code="MODULE_NOT_FOUND",t}()).mocks.MockBrowser,o=new a;i.parser.yy=r,r.clear(),document=o.getDocument(),t=e("./main")}),it("it should handle edges with text",function(){var t=(i.parser.parse("graph TD;A-->|text ex|B;"),i.parser.yy.getVertices(),i.parser.yy.getEdges()),e={setEdge:function(t,e,n,r){expect(t).toBe("A"),expect(e).toBe("B"),expect(n.arrowhead).toBe("normal"),expect(n.label.match("text ex")).toBeTruthy()}};a.addEdges(t,e)}),it("should handle edges without text",function(){var t=(i.parser.parse("graph TD;A-->B;"),i.parser.yy.getVertices(),i.parser.yy.getEdges()),e={setEdge:function(t,e,n,r){expect(t).toBe("A"),expect(e).toBe("B"),expect(n.arrowhead).toBe("normal")}};a.addEdges(t,e)}),it("should handle open-ended edges",function(){var t=(i.parser.parse("graph TD;A---B;"),i.parser.yy.getVertices(),i.parser.yy.getEdges()),e={setEdge:function(t,e,n,r){expect(t).toBe("A"),expect(e).toBe("B"),expect(n.arrowhead).toBe("none")}};a.addEdges(t,e)}),it("should handle edges with styles defined",function(){var t=(i.parser.parse("graph TD;A---B; linkStyle 0 stroke:val1,stroke-width:val2;"),i.parser.yy.getVertices(),i.parser.yy.getEdges()),e={setEdge:function(t,e,n,r){expect(t).toBe("A"),expect(e).toBe("B"),expect(n.arrowhead).toBe("none"),expect(n.style).toBe("stroke:val1;stroke-width:val2;")}};a.addEdges(t,e)}),it("should handle edges with text and styles defined",function(){var t=(i.parser.parse("graph TD;A---|the text|B; linkStyle 0 stroke:val1,stroke-width:val2;"),i.parser.yy.getVertices(),i.parser.yy.getEdges()),e={setEdge:function(t,e,n,r){expect(t).toBe("A"),expect(e).toBe("B"),expect(n.arrowhead).toBe("none"),expect(n.label.match("the text")).toBeTruthy(),expect(n.style).toBe("stroke:val1;stroke-width:val2;")}};a.addEdges(t,e)})}),describe("checking validity of input ",function(){it("it should return false for an invalid definiton",function(){spyOn(mermaid,"parseError");var t=mermaid.parse("this is not a mermaid diagram definition");expect(t).toBe(!1),expect(mermaid.parseError).toHaveBeenCalled()}),it("it should return true for a valid flow definition",function(){spyOn(mermaid,"parseError");var t=mermaid.parse("graph TD;A--x|text including URL space|B;");expect(t).toBe(!0),expect(mermaid.parseError).not.toHaveBeenCalled()}),it("it should return false for an invalid flow definition",function(){spyOn(mermaid,"parseError");var t=mermaid.parse("graph TQ;A--x|text including URL space|B;");expect(t).toBe(!1),expect(mermaid.parseError).toHaveBeenCalled()}),it("it should return true for a valid sequenceDiagram definition",function(){spyOn(mermaid,"parseError");var t="sequenceDiagram\nAlice->Bob: Hello Bob, how are you?\n\n%% Comment\nNote right of Bob: Bob thinks\nalt isWell\n\nBob-->Alice: I am good thanks!\nelse isSick\nBob-->Alice: Feel sick...\nend",e=mermaid.parse(t);expect(e).toBe(!0),expect(mermaid.parseError).not.toHaveBeenCalled()}),it("it should return false for an invalid sequenceDiagram definition",function(){spyOn(mermaid,"parseError");var t="sequenceDiagram\nAlice:->Bob: Hello Bob, how are you?\n\n%% Comment\nNote right of Bob: Bob thinks\nalt isWell\n\nBob-->Alice: I am good thanks!\nelse isSick\nBob-->Alice: Feel sick...\nend",e=mermaid.parse(t);expect(e).toBe(!1),expect(mermaid.parseError).toHaveBeenCalled()}),it("it should return true for a valid dot definition",function(){spyOn(mermaid,"parseError");var t=mermaid.parse("digraph\n{\n a -> b -> c -- d -> e;\n a -- e;\n}");expect(t).toBe(!0),expect(mermaid.parseError).not.toHaveBeenCalled()}),it("it should return false for an invalid dot definition",function(){spyOn(mermaid,"parseError");var t=mermaid.parse("digraph\n{\na -:> b -> c -- d -> e;\na -- e;\n}");expect(t).toBe(!1),expect(mermaid.parseError).toHaveBeenCalled()})})})}).call(e,function(){return this}())},function(t,e,n){(function(t){var e=n(27);describe("when using mermaidAPI and ",function(){describe("doing initialize ",function(){beforeEach(function(){var e=n(!function(){var t=new Error('Cannot find module "mock-browser"');throw t.code="MODULE_NOT_FOUND",t}()).mocks.MockBrowser,r=new e;delete t.mermaid_config,document=r.getDocument(),window=r.getWindow()}),it("should copy a literal into the configuration",function(){var t=e.getConfig();expect(t.testLiteral).toBe(void 0),e.initialize({testLiteral:!0});var n=e.getConfig();expect(n.testLiteral).toBe(!0)}),it("should copy a an object into the configuration",function(){var t=e.getConfig();expect(t.testObject).toBe(void 0);var n={test1:1,test2:!1};e.initialize({testObject:n}),e.initialize({testObject:{test3:!0}});var r=e.getConfig();expect(r.testObject.test1).toBe(1),expect(r.testObject.test2).toBe(!1),expect(r.testObject.test3).toBe(!0),expect(r.cloneCssStyles).toBe(t.cloneCssStyles)})})})}).call(e,function(){return this}())},function(t,e,n){(function(t,r){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,o){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){function e(){var t;return t=d.lex()||f,"number"!=typeof t&&(t=n.symbols_[t]||t),t}var n=this,r=[0],i=[null],a=[],o=this.table,s="",u=0,c=0,l=0,h=2,f=1,p=a.slice.call(arguments,1),d=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);d.setInput(t,g.yy),g.yy.lexer=d,g.yy.parser=this,"undefined"==typeof d.yylloc&&(d.yylloc={});var m=d.yylloc;a.push(m);var v=d.options&&d.options.ranges;"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var x,b,_,w,A,k,E,D,B,C={};;){if(_=r[r.length-1],this.defaultActions[_]?w=this.defaultActions[_]:((null===x||"undefined"==typeof x)&&(x=e()),w=o[_]&&o[_][x]),"undefined"==typeof w||!w.length||!w[0]){var T="";B=[];for(k in o[_])this.terminals_[k]&&k>h&&B.push("'"+this.terminals_[k]+"'");T=d.showPosition?"Parse error on line "+(u+1)+":\n"+d.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(u+1)+": Unexpected "+(x==f?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(T,{text:d.match,token:this.terminals_[x]||x,line:d.yylineno,loc:m,expected:B})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+x);switch(w[0]){case 1:r.push(x),i.push(d.yytext),a.push(d.yylloc),r.push(w[1]),x=null,b?(x=b,b=null):(c=d.yyleng,s=d.yytext,u=d.yylineno,m=d.yylloc,l>0&&l--);break;case 2:if(E=this.productions_[w[1]][1],C.$=i[i.length-E],C._$={first_line:a[a.length-(E||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(E||1)].first_column,last_column:a[a.length-1].last_column},v&&(C._$.range=[a[a.length-(E||1)].range[0],a[a.length-1].range[1]]),A=this.performAction.apply(C,[s,c,u,g.yy,w[1],i,a].concat(p)),"undefined"!=typeof A)return A;E&&(r=r.slice(0,-1*E*2),i=i.slice(0,-1*E),a=a.slice(0,-1*E)),r.push(this.productions_[w[1]][0]),i.push(C.$),a.push(C._$),D=o[r[r.length-2]][r[r.length-1]],r.push(D);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}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(17).readFileSync(n(13).normalize(r[1]),"utf8");return e.parser.parse(i)},"undefined"!=typeof r&&n.c[0]===r&&e.main(t.argv.slice(1))}).call(e,n(11),n(5)(t))},function(t,e,n){(function(t,r){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,o){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){function e(){var t;return t=d.lex()||f,"number"!=typeof t&&(t=n.symbols_[t]||t),t}var n=this,r=[0],i=[null],a=[],o=this.table,s="",u=0,c=0,l=0,h=2,f=1,p=a.slice.call(arguments,1),d=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);d.setInput(t,g.yy),g.yy.lexer=d,g.yy.parser=this,"undefined"==typeof d.yylloc&&(d.yylloc={});var m=d.yylloc;a.push(m);var v=d.options&&d.options.ranges;"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var x,b,_,w,A,k,E,D,B,C={};;){if(_=r[r.length-1],this.defaultActions[_]?w=this.defaultActions[_]:((null===x||"undefined"==typeof x)&&(x=e()),w=o[_]&&o[_][x]),"undefined"==typeof w||!w.length||!w[0]){var T="";B=[];for(k in o[_])this.terminals_[k]&&k>h&&B.push("'"+this.terminals_[k]+"'");T=d.showPosition?"Parse error on line "+(u+1)+":\n"+d.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(u+1)+": Unexpected "+(x==f?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(T,{text:d.match,token:this.terminals_[x]||x,line:d.yylineno,loc:m,expected:B})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+x);switch(w[0]){case 1:r.push(x),i.push(d.yytext),a.push(d.yylloc),r.push(w[1]),x=null,b?(x=b,b=null):(c=d.yyleng,s=d.yytext,u=d.yylineno,m=d.yylloc,l>0&&l--);break;case 2:if(E=this.productions_[w[1]][1],C.$=i[i.length-E],C._$={first_line:a[a.length-(E||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(E||1)].first_column,last_column:a[a.length-1].last_column},v&&(C._$.range=[a[a.length-(E||1)].range[0],a[a.length-1].range[1]]),A=this.performAction.apply(C,[s,c,u,g.yy,w[1],i,a].concat(p)),"undefined"!=typeof A)return A;E&&(r=r.slice(0,-1*E*2),i=i.slice(0,-1*E),a=a.slice(0,-1*E)),r.push(this.productions_[w[1]][0]),i.push(C.$),a.push(C._$),D=o[r[r.length-2]][r[r.length-1]],r.push(D);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:this.begin("string");break;case 1:this.popState();break;case 2:return"TEXT";case 3:return 9;case 4:return 10;case 5:return 4;case 6:return 12;case 7:return"OTXT";case 8:return 6;case 9:return"INVALID"}},rules:[/^(?:["])/i,/^(?:["])/i,/^(?:[^"\n]*)/i,/^(?:[\n]+)/i,/^(?:showInfo\b)/i,/^(?:info\b)/i,/^(?:say\b)/i,/^(?:"[^#\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{string:{rules:[1,2],inclusive:!1},INITIAL:{rules:[0,3,4,5,6,7,8,9],inclusive:!0}}};return t}();return r.lexer=i,t.prototype=r,r.Parser=t,new t}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(17).readFileSync(n(13).normalize(r[1]),"utf8");return e.parser.parse(i)},"undefined"!=typeof r&&n.c[0]===r&&e.main(t.argv.slice(1))}).call(e,n(11),n(5)(t))},function(t,e,n){describe("when detecting chart type ",function(){var t=n(21);beforeEach(function(){}),it("should handle a sequence defintion",function(){str="sequence TB\nbfs1:queue";var e=t.detectType(str);expect(e).toBe("sequence")}),it("should handle a sequence defintion with leading spaces",function(){str="    sequence TB\nbfs1:queue";var e=t.detectType(str);expect(e).toBe("sequence")}),it("should handle a graph defintion",function(){str="graph TB\nbfs1:queue";var e=t.detectType(str);expect(e).toBe("graph")}),it("should handle a graph defintion with leading spaces",function(){str="    graph TB\nbfs1:queue";var e=t.detectType(str);expect(e).toBe("graph")}),it("should handle a graph defintion with leading spaces and newline",function(){str="  \n  graph TB\nbfs1:queue";var e=t.detectType(str);expect(e).toBe("graph")}),it("should handle a sequence defintion with leading spaces and newline",function(){str="  \n  sequence TB\nbfs1:queue";var e=t.detectType(str);expect(e).toBe("sequence")})}),describe("when cloning CSS ",function(){function t(t){var e=t.getElementsByTagName("style");expect(e.length).toBe(1);var n=e[0],r=n.innerHTML,i=r.split("\n");expect(i.length).toBeGreaterThan(2);for(var a=i.slice(1,-2),o=0;o<a.length;o++)""===a[o].trim()&&(a.splice(o,1),o--);return a}function e(){var t=(document.styleSheets.length,document.createElement("style"));t.innerHTML=".node { stroke:#eee; }\n.node-square { stroke:#bbb; }\n",document.body.appendChild(t)}function r(){var t=(document.styleSheets.length,document.createElement("style"));t.innerHTML=".node2 { stroke:#eee; }\n.node-square { stroke:#beb; }\n",document.body.appendChild(t)}function i(){var t=document.createElement("svg");t.setAttribute("id","mermaid-01");var e=document.createElement("g");e.setAttribute("class","node"),t.appendChild(e);var n=document.createElement("g");return n.setAttribute("class","node-square"),t.appendChild(n),t}function a(){var t=document.styleSheets.length,e=document.createElement("svg");e.setAttribute("id","mermaid-03");var n=document.createElement("style");n.setAttribute("type","text/css"),n.setAttribute("title","mermaid-svg-internal-css"),n.innerHTML="#mermaid-05 .node2 { stroke:#eee; }\n.node-square { stroke:#bfe; }\n",e.appendChild(n),document.body.appendChild(e),document.styleSheets[t].title="mermaid-svg-internal-css"}var o=n(21);beforeEach(function(){var t=n(!function(){var t=new Error('Cannot find module "mock-browser"');throw t.code="MODULE_NOT_FOUND",t}()).mocks.MockBrowser,e=new t;document=e.getDocument()}),it("should handle an empty set of classes",function(){var t=document.createElement("svg");t.setAttribute("id","mermaid-01"),o.cloneCssStyles(t,{}),expect(t.innerHTML).toBe("")}),it("should handle a default class",function(){var e=document.createElement("svg");e.setAttribute("id","mermaid-01"),o.cloneCssStyles(e,{"default":{styles:["stroke:#fff","stroke-width:1.5px"]}}),expect(t(e)).toEqual(["#mermaid-01 .node { stroke:#fff; stroke-width:1.5px; }"]),expect(e.innerHTML).toBe('<style type="text/css" title="mermaid-svg-internal-css">/* <![CDATA[ */\n#mermaid-01 .node { stroke:#fff; stroke-width:1.5px; }\n/* ]]> */\n</style>')}),it("should handle stylesheet in document with no classes in SVG",function(){var t=document.createElement("svg");t.setAttribute("id","mermaid-01"),e("mermaid"),o.cloneCssStyles(t,{}),expect(t.innerHTML).toBe("")}),it("should handle stylesheet in document with classes in SVG",function(){var n=i();e(),o.cloneCssStyles(n,{}),expect(t(n)).toEqual([".node { stroke: #eee; }",".node-square { stroke: #bbb; }"])}),it("should handle multiple stylesheets in document with classes in SVG",function(){var n=i();e(),r(),o.cloneCssStyles(n,{}),expect(t(n)).toEqual([".node { stroke: #eee; }",".node-square { stroke: #bbb; }",".node-square { stroke: #beb; }"])}),it("should handle multiple stylesheets + ignore styles in other mermaid SVG",function(){var n=i();e(),r(),a(),o.cloneCssStyles(n,{}),expect(t(n)).toEqual([".node { stroke: #eee; }",".node-square { stroke: #bbb; }",".node-square { stroke: #beb; }"])}),it("should handle a default class together with stylesheet in document with classes in SVG",function(){var n=i();e(),o.cloneCssStyles(n,{"default":{styles:["stroke:#fff","stroke-width:1.5px"]}}),expect(t(n)).toEqual(["#mermaid-01 .node { stroke:#fff; stroke-width:1.5px; }",".node { stroke: #eee; }",".node-square { stroke: #bbb; }"])}),it("should handle a default class together with stylesheet in document and classDefs",function(){var n=i();e(),o.cloneCssStyles(n,{"default":{styles:["stroke:#fff","stroke-width:1.5px"]},"node-square":{styles:["fill:#eee","stroke:#aaa"]},"node-circle":{styles:["fill:#444","stroke:#111"]}}),expect(t(n)).toEqual(["#mermaid-01 .node { stroke:#fff; stroke-width:1.5px; }",".node { stroke: #eee; }",".node-square { stroke: #bbb; }","#mermaid-01 .node-square { fill:#eee; stroke:#aaa; }","#mermaid-01 .node-circle { fill:#444; stroke:#111; }"])})})},function(t,e,n){var r,i;!function(){function a(t,e){return e>t?-1:t>e?1:t>=e?0:NaN}function o(t){return null!=t&&!isNaN(t)}function s(t){return{left:function(e,n,r,i){for(arguments.length<3&&(r=0),arguments.length<4&&(i=e.length);i>r;){var a=r+i>>>1;t(e[a],n)<0?r=a+1:i=a}return r},right:function(e,n,r,i){for(arguments.length<3&&(r=0),arguments.length<4&&(i=e.length);i>r;){var a=r+i>>>1;t(e[a],n)>0?i=a:r=a+1}return r}}}function u(t){return t.length}function c(t){for(var e=1;t*e%1;)e*=10;return e}function l(t,e){try{for(var n in e)Object.defineProperty(t.prototype,n,{value:e[n],enumerable:!1})}catch(r){t.prototype=e}}function h(){}function f(t){return go+t in this}function p(t){return t=go+t,t in this&&delete this[t]}function d(){var t=[];return this.forEach(function(e){t.push(e)}),t}function g(){var t=0;for(var e in this)e.charCodeAt(0)===yo&&++t;return t}function y(){for(var t in this)if(t.charCodeAt(0)===yo)return!1;return!0}function m(){}function v(t,e,n){return function(){var r=n.apply(e,arguments);return r===e?t:r}}function x(t,e){if(e in t)return e;e=e.charAt(0).toUpperCase()+e.substring(1);for(var n=0,r=mo.length;r>n;++n){var i=mo[n]+e;if(i in t)return i}}function b(){}function _(){}function w(t){function e(){for(var e,r=n,i=-1,a=r.length;++i<a;)(e=r[i].on)&&e.apply(this,arguments);return t}var n=[],r=new h;return e.on=function(e,i){var a,o=r.get(e);return arguments.length<2?o&&o.on:(o&&(o.on=null,n=n.slice(0,a=n.indexOf(o)).concat(n.slice(a+1)),r.remove(e)),i&&n.push(r.set(e,{on:i})),t)},e}function A(){Qa.event.preventDefault()}function k(){for(var t,e=Qa.event;t=e.sourceEvent;)e=t;return e}function E(t){for(var e=new _,n=0,r=arguments.length;++n<r;)e[arguments[n]]=w(e);return e.of=function(n,r){return function(i){try{var a=i.sourceEvent=Qa.event;i.target=t,Qa.event=i,e[i.type].apply(n,r)}finally{Qa.event=a}}},e}function D(t){return xo(t,ko),t}function B(t){return"function"==typeof t?t:function(){return bo(t,this)}}function C(t){return"function"==typeof t?t:function(){return _o(t,this)}}function T(t,e){function n(){this.removeAttribute(t)}function r(){this.removeAttributeNS(t.space,t.local)}function i(){this.setAttribute(t,e)}function a(){this.setAttributeNS(t.space,t.local,e)}function o(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}function s(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}return t=Qa.ns.qualify(t),null==e?t.local?r:n:"function"==typeof e?t.local?s:o:t.local?a:i}function S(t){return t.trim().replace(/\s+/g," ")}function M(t){return new RegExp("(?:^|\\s+)"+Qa.requote(t)+"(?:\\s+|$)","g")}function F(t){return t.trim().split(/^|\s+/)}function L(t,e){function n(){for(var n=-1;++n<i;)t[n](this,e)}function r(){for(var n=-1,r=e.apply(this,arguments);++n<i;)t[n](this,r)}t=F(t).map(O);var i=t.length;return"function"==typeof e?r:n}function O(t){var e=M(t);return function(n,r){if(i=n.classList)return r?i.add(t):i.remove(t);var i=n.getAttribute("class")||"";r?(e.lastIndex=0,e.test(i)||n.setAttribute("class",S(i+" "+t))):n.setAttribute("class",S(i.replace(e," ")))}}function N(t,e,n){function r(){this.style.removeProperty(t)}function i(){this.style.setProperty(t,e,n)}function a(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}return null==e?r:"function"==typeof e?a:i}function I(t,e){function n(){delete this[t]}function r(){this[t]=e}function i(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}return null==e?n:"function"==typeof e?i:r}function R(t){return"function"==typeof t?t:(t=Qa.ns.qualify(t)).local?function(){return this.ownerDocument.createElementNS(t.space,t.local)}:function(){return this.ownerDocument.createElementNS(this.namespaceURI,t)}}function q(t){return{__data__:t}}function P(t){return function(){return Ao(this,t)}}function j(t){return arguments.length||(t=a),function(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}}function Y(t,e){for(var n=0,r=t.length;r>n;n++)for(var i,a=t[n],o=0,s=a.length;s>o;o++)(i=a[o])&&e(i,o,n);return t}function U(t){return xo(t,Do),t}function V(t){var e,n;return function(r,i,a){var o,s=t[a].update,u=s.length;for(a!=n&&(n=a,e=0),i>=e&&(e=i+1);!(o=s[e])&&++e<u;);return o}}function $(){var t=this.__transition__;t&&++t.active}function z(t,e,n){function r(){var e=this[o];e&&(this.removeEventListener(t,e,e.$),delete this[o])}function i(){var i=u(e,eo(arguments));r.call(this),this.addEventListener(t,this[o]=i,i.$=n),i._=e}function a(){var e,n=new RegExp("^__on([^.]+)"+Qa.requote(t)+"$");for(var r in this)if(e=r.match(n)){var i=this[r];this.removeEventListener(e[1],i,i.$),delete this[r]}}var o="__on"+t,s=t.indexOf("."),u=H;s>0&&(t=t.substring(0,s));var c=Co.get(t);return c&&(t=c,u=G),s?e?i:r:e?b:a}function H(t,e){return function(n){var r=Qa.event;Qa.event=n,e[0]=this.__data__;try{t.apply(this,e)}finally{Qa.event=r}}}function G(t,e){var n=H(t,e);return function(t){var e=this,r=t.relatedTarget;r&&(r===e||8&r.compareDocumentPosition(e))||n.call(e,t)}}function W(){var t=".dragsuppress-"+ ++So,e="click"+t,n=Qa.select(io).on("touchmove"+t,A).on("dragstart"+t,A).on("selectstart"+t,A);if(To){var r=ro.style,i=r[To];r[To]="none"}return function(a){function o(){n.on(e,null)}n.on(t,null),To&&(r[To]=i),a&&(n.on(e,function(){A(),o()},!0),setTimeout(o,0))}}function Z(t,e){e.changedTouches&&(e=e.changedTouches[0]);var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}function X(){return Qa.event.changedTouches[0].identifier}function K(){return Qa.event.target}function J(){return io}function Q(t){return t>0?1:0>t?-1:0}function tt(t,e,n){return(e[0]-t[0])*(n[1]-t[1])-(e[1]-t[1])*(n[0]-t[0])}function et(t){return t>1?0:-1>t?Mo:Math.acos(t)}function nt(t){return t>1?Lo:-1>t?-Lo:Math.asin(t)}function rt(t){return((t=Math.exp(t))-1/t)/2}function it(t){return((t=Math.exp(t))+1/t)/2}function at(t){return((t=Math.exp(2*t))-1)/(t+1)}function ot(t){return(t=Math.sin(t/2))*t}function st(){}function ut(t,e,n){return new ct(t,e,n)}function ct(t,e,n){this.h=t,this.s=e,this.l=n}function lt(t,e,n){function r(t){return t>360?t-=360:0>t&&(t+=360),60>t?a+(o-a)*t/60:180>t?o:240>t?a+(o-a)*(240-t)/60:a}function i(t){return Math.round(255*r(t))}var a,o;return t=isNaN(t)?0:(t%=360)<0?t+360:t,e=isNaN(e)?0:0>e?0:e>1?1:e,n=0>n?0:n>1?1:n,o=.5>=n?n*(1+e):n+e-n*e,a=2*n-o,At(i(t+120),i(t),i(t-120))}function ht(t,e,n){return new ft(t,e,n)}function ft(t,e,n){this.h=t,this.c=e,this.l=n}function pt(t,e,n){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),dt(n,Math.cos(t*=Io)*e,Math.sin(t)*e)}function dt(t,e,n){return new gt(t,e,n)}function gt(t,e,n){this.l=t,this.a=e,this.b=n}function yt(t,e,n){var r=(t+16)/116,i=r+e/500,a=r-n/200;return i=vt(i)*Go,r=vt(r)*Wo,a=vt(a)*Zo,At(bt(3.2404542*i-1.5371385*r-.4985314*a),bt(-.969266*i+1.8760108*r+.041556*a),bt(.0556434*i-.2040259*r+1.0572252*a))}function mt(t,e,n){return t>0?ht(Math.atan2(n,e)*Ro,Math.sqrt(e*e+n*n),t):ht(NaN,NaN,t)}function vt(t){return t>.206893034?t*t*t:(t-4/29)/7.787037}function xt(t){return t>.008856?Math.pow(t,1/3):7.787037*t+4/29}function bt(t){return Math.round(255*(.00304>=t?12.92*t:1.055*Math.pow(t,1/2.4)-.055))}function _t(t){return At(t>>16,t>>8&255,255&t)}function wt(t){return _t(t)+""}function At(t,e,n){return new kt(t,e,n)}function kt(t,e,n){this.r=t,this.g=e,this.b=n}function Et(t){return 16>t?"0"+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function Dt(t,e,n){var r,i,a,o=0,s=0,u=0;if(r=/([a-z]+)\((.*)\)/i.exec(t))switch(i=r[2].split(","),r[1]){case"hsl":return n(parseFloat(i[0]),parseFloat(i[1])/100,parseFloat(i[2])/100);case"rgb":return e(St(i[0]),St(i[1]),St(i[2]))}return(a=Jo.get(t))?e(a.r,a.g,a.b):(null==t||"#"!==t.charAt(0)||isNaN(a=parseInt(t.substring(1),16))||(4===t.length?(o=(3840&a)>>4,o=o>>4|o,s=240&a,s=s>>4|s,u=15&a,u=u<<4|u):7===t.length&&(o=(16711680&a)>>16,s=(65280&a)>>8,u=255&a)),e(o,s,u))}function Bt(t,e,n){var r,i,a=Math.min(t/=255,e/=255,n/=255),o=Math.max(t,e,n),s=o-a,u=(o+a)/2;return s?(i=.5>u?s/(o+a):s/(2-o-a),r=t==o?(e-n)/s+(n>e?6:0):e==o?(n-t)/s+2:(t-e)/s+4,r*=60):(r=NaN,i=u>0&&1>u?0:r),ut(r,i,u)}function Ct(t,e,n){t=Tt(t),e=Tt(e),n=Tt(n);var r=xt((.4124564*t+.3575761*e+.1804375*n)/Go),i=xt((.2126729*t+.7151522*e+.072175*n)/Wo),a=xt((.0193339*t+.119192*e+.9503041*n)/Zo);return dt(116*i-16,500*(r-i),200*(i-a))}function Tt(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function St(t){var e=parseFloat(t);return"%"===t.charAt(t.length-1)?Math.round(2.55*e):e}function Mt(t){return"function"==typeof t?t:function(){return t}}function Ft(t){return t}function Lt(t){return function(e,n,r){return 2===arguments.length&&"function"==typeof n&&(r=n,n=null),Ot(e,n,t,r)}}function Ot(t,e,n,r){function i(){var t,e=u.status;if(!e&&u.responseText||e>=200&&300>e||304===e){try{t=n.call(a,u)}catch(r){return void o.error.call(a,r)}o.load.call(a,t)}else o.error.call(a,u)}var a={},o=Qa.dispatch("beforesend","progress","load","error"),s={},u=new XMLHttpRequest,c=null;return!io.XDomainRequest||"withCredentials"in u||!/^(http(s)?:)?\/\//.test(t)||(u=new XDomainRequest),"onload"in u?u.onload=u.onerror=i:u.onreadystatechange=function(){u.readyState>3&&i()},u.onprogress=function(t){var e=Qa.event;Qa.event=t;try{o.progress.call(a,u)}finally{Qa.event=e}},a.header=function(t,e){return t=(t+"").toLowerCase(),arguments.length<2?s[t]:(null==e?delete s[t]:s[t]=e+"",a)},a.mimeType=function(t){return arguments.length?(e=null==t?null:t+"",a):e},a.responseType=function(t){return arguments.length?(c=t,a):c},a.response=function(t){return n=t,a},["get","post"].forEach(function(t){a[t]=function(){return a.send.apply(a,[t].concat(eo(arguments)))}}),a.send=function(n,r,i){if(2===arguments.length&&"function"==typeof r&&(i=r,r=null),u.open(n,t,!0),null==e||"accept"in s||(s.accept=e+",*/*"),u.setRequestHeader)for(var l in s)u.setRequestHeader(l,s[l]);return null!=e&&u.overrideMimeType&&u.overrideMimeType(e),null!=c&&(u.responseType=c),null!=i&&a.on("error",i).on("load",function(t){i(null,t)}),o.beforesend.call(a,u),u.send(null==r?null:r),a},a.abort=function(){return u.abort(),a},Qa.rebind(a,o,"on"),null==r?a:a.get(Nt(r))}function Nt(t){return 1===t.length?function(e,n){t(null==e?n:null)}:t}function It(){var t=Rt(),e=qt()-t;e>24?(isFinite(e)&&(clearTimeout(ns),ns=setTimeout(It,e)),es=0):(es=1,is(It))}function Rt(){var t=Date.now();for(rs=Qo;rs;)t>=rs.t&&(rs.f=rs.c(t-rs.t)),rs=rs.n;return t}function qt(){for(var t,e=Qo,n=1/0;e;)e.f?e=t?t.n=e.n:Qo=e.n:(e.t<n&&(n=e.t),e=(t=e).n);return ts=t,n}function Pt(t,e){return e-(t?Math.ceil(Math.log(t)/Math.LN10):1)}function jt(t,e){var n=Math.pow(10,3*po(8-e));return{scale:e>8?function(t){return t/n}:function(t){return t*n},symbol:t}}function Yt(t){var e=t.decimal,n=t.thousands,r=t.grouping,i=t.currency,a=r?function(t){for(var e=t.length,i=[],a=0,o=r[0];e>0&&o>0;)i.push(t.substring(e-=o,e+o)),o=r[a=(a+1)%r.length];return i.reverse().join(n)}:Ft;return function(t){var n=os.exec(t),r=n[1]||" ",o=n[2]||">",s=n[3]||"",u=n[4]||"",c=n[5],l=+n[6],h=n[7],f=n[8],p=n[9],d=1,g="",y="",m=!1;switch(f&&(f=+f.substring(1)),(c||"0"===r&&"="===o)&&(c=r="0",o="=",h&&(l-=Math.floor((l-1)/4))),p){case"n":h=!0,p="g";break;case"%":d=100,y="%",p="f";break;case"p":d=100,y="%",p="r";break;case"b":case"o":case"x":case"X":"#"===u&&(g="0"+p.toLowerCase());case"c":case"d":m=!0,f=0;break;case"s":d=-1,p="r"}"$"===u&&(g=i[0],y=i[1]),"r"!=p||f||(p="g"),null!=f&&("g"==p?f=Math.max(1,Math.min(21,f)):("e"==p||"f"==p)&&(f=Math.max(0,Math.min(20,f)))),p=ss.get(p)||Ut;var v=c&&h;return function(t){var n=y;if(m&&t%1)return"";var i=0>t||0===t&&0>1/t?(t=-t,"-"):s;if(0>d){var u=Qa.formatPrefix(t,f);t=u.scale(t),n=u.symbol+y}else t*=d;t=p(t,f);var x=t.lastIndexOf("."),b=0>x?t:t.substring(0,x),_=0>x?"":e+t.substring(x+1);!c&&h&&(b=a(b));var w=g.length+b.length+_.length+(v?0:i.length),A=l>w?new Array(w=l-w+1).join(r):"";return v&&(b=a(A+b)),i+=g,t=b+_,("<"===o?i+t+A:">"===o?A+i+t:"^"===o?A.substring(0,w>>=1)+i+t+A.substring(w):i+(v?t:A+t))+n}}}function Ut(t){return t+""}function Vt(){this._=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}function $t(t,e,n){function r(e){var n=t(e),r=a(n,1);return r-e>e-n?n:r}function i(n){return e(n=t(new cs(n-1)),1),n}function a(t,n){return e(t=new cs(+t),n),t}function o(t,r,a){var o=i(t),s=[];if(a>1)for(;r>o;)n(o)%a||s.push(new Date(+o)),e(o,1);else for(;r>o;)s.push(new Date(+o)),e(o,1);return s}function s(t,e,n){try{cs=Vt;var r=new Vt;return r._=t,o(r,e,n)}finally{cs=Date}}t.floor=t,t.round=r,t.ceil=i,t.offset=a,t.range=o;var u=t.utc=zt(t);return u.floor=u,u.round=zt(r),u.ceil=zt(i),u.offset=zt(a),u.range=s,t}function zt(t){return function(e,n){try{cs=Vt;var r=new Vt;return r._=e,t(r,n)._}finally{cs=Date}}}function Ht(t){function e(t){function e(e){for(var n,i,a,o=[],s=-1,u=0;++s<r;)37===t.charCodeAt(s)&&(o.push(t.substring(u,s)),null!=(i=hs[n=t.charAt(++s)])&&(n=t.charAt(++s)),(a=C[n])&&(n=a(e,null==i?"e"===n?" ":"0":i)),o.push(n),u=s+1);return o.push(t.substring(u,s)),o.join("")}var r=t.length;return e.parse=function(e){var r={y:1900,m:0,d:1,H:0,M:0,S:0,L:0,Z:null},i=n(r,t,e,0);if(i!=e.length)return null;"p"in r&&(r.H=r.H%12+12*r.p);var a=null!=r.Z&&cs!==Vt,o=new(a?Vt:cs);return"j"in r?o.setFullYear(r.y,0,r.j):"w"in r&&("W"in r||"U"in r)?(o.setFullYear(r.y,0,1),o.setFullYear(r.y,0,"W"in r?(r.w+6)%7+7*r.W-(o.getDay()+5)%7:r.w+7*r.U-(o.getDay()+6)%7)):o.setFullYear(r.y,r.m,r.d),o.setHours(r.H+Math.floor(r.Z/100),r.M+r.Z%100,r.S,r.L),a?o._:o},e.toString=function(){return t},e}function n(t,e,n,r){for(var i,a,o,s=0,u=e.length,c=n.length;u>s;){if(r>=c)return-1;if(i=e.charCodeAt(s++),37===i){if(o=e.charAt(s++),a=T[o in hs?e.charAt(s++):o],!a||(r=a(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}function r(t,e,n){w.lastIndex=0;var r=w.exec(e.substring(n));return r?(t.w=A.get(r[0].toLowerCase()),n+r[0].length):-1}function i(t,e,n){b.lastIndex=0;var r=b.exec(e.substring(n));return r?(t.w=_.get(r[0].toLowerCase()),n+r[0].length):-1}function a(t,e,n){D.lastIndex=0;var r=D.exec(e.substring(n));return r?(t.m=B.get(r[0].toLowerCase()),n+r[0].length):-1}function o(t,e,n){k.lastIndex=0;var r=k.exec(e.substring(n));return r?(t.m=E.get(r[0].toLowerCase()),n+r[0].length):-1}function s(t,e,r){return n(t,C.c.toString(),e,r)}function u(t,e,r){return n(t,C.x.toString(),e,r)}function c(t,e,r){return n(t,C.X.toString(),e,r)}function l(t,e,n){var r=x.get(e.substring(n,n+=2).toLowerCase());return null==r?-1:(t.p=r,n)}var h=t.dateTime,f=t.date,p=t.time,d=t.periods,g=t.days,y=t.shortDays,m=t.months,v=t.shortMonths;e.utc=function(t){function n(t){try{cs=Vt;var e=new cs;return e._=t,r(e)}finally{cs=Date}}var r=e(t);return n.parse=function(t){try{cs=Vt;var e=r.parse(t);return e&&e._}finally{cs=Date}},n.toString=r.toString,n},e.multi=e.utc.multi=fe;var x=Qa.map(),b=Wt(g),_=Zt(g),w=Wt(y),A=Zt(y),k=Wt(m),E=Zt(m),D=Wt(v),B=Zt(v);d.forEach(function(t,e){x.set(t.toLowerCase(),e)});var C={a:function(t){return y[t.getDay()]},A:function(t){return g[t.getDay()]},b:function(t){return v[t.getMonth()]},B:function(t){return m[t.getMonth()]},c:e(h),d:function(t,e){return Gt(t.getDate(),e,2)},e:function(t,e){return Gt(t.getDate(),e,2)},H:function(t,e){return Gt(t.getHours(),e,2)},I:function(t,e){return Gt(t.getHours()%12||12,e,2)},j:function(t,e){return Gt(1+us.dayOfYear(t),e,3)},L:function(t,e){return Gt(t.getMilliseconds(),e,3)},m:function(t,e){return Gt(t.getMonth()+1,e,2)},M:function(t,e){return Gt(t.getMinutes(),e,2)},p:function(t){return d[+(t.getHours()>=12)]},S:function(t,e){return Gt(t.getSeconds(),e,2)},U:function(t,e){return Gt(us.sundayOfYear(t),e,2)},w:function(t){return t.getDay()},W:function(t,e){return Gt(us.mondayOfYear(t),e,2)},x:e(f),X:e(p),y:function(t,e){return Gt(t.getFullYear()%100,e,2)},Y:function(t,e){return Gt(t.getFullYear()%1e4,e,4)},Z:le,"%":function(){return"%"}},T={a:r,A:i,b:a,B:o,c:s,d:ie,e:ie,H:oe,I:oe,j:ae,L:ce,m:re,M:se,p:l,S:ue,U:Kt,w:Xt,W:Jt,x:u,X:c,y:te,Y:Qt,Z:ee,"%":he};return e}function Gt(t,e,n){var r=0>t?"-":"",i=(r?-t:t)+"",a=i.length;return r+(n>a?new Array(n-a+1).join(e)+i:i)}function Wt(t){return new RegExp("^(?:"+t.map(Qa.requote).join("|")+")","i")}function Zt(t){for(var e=new h,n=-1,r=t.length;++n<r;)e.set(t[n].toLowerCase(),n);return e}function Xt(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function Kt(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n));return r?(t.U=+r[0],n+r[0].length):-1}function Jt(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n));return r?(t.W=+r[0],n+r[0].length):-1}function Qt(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function te(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+2));return r?(t.y=ne(+r[0]),n+r[0].length):-1}function ee(t,e,n){return/^[+-]\d{4}$/.test(e=e.substring(n,n+5))?(t.Z=-e,n+5):-1}function ne(t){return t+(t>68?1900:2e3)}function re(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function ie(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function ae(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+3));return r?(t.j=+r[0],n+r[0].length):-1}function oe(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function se(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function ue(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function ce(t,e,n){fs.lastIndex=0;var r=fs.exec(e.substring(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function le(t){var e=t.getTimezoneOffset(),n=e>0?"-":"+",r=~~(po(e)/60),i=po(e)%60;return n+Gt(r,"0",2)+Gt(i,"0",2)}function he(t,e,n){ps.lastIndex=0;var r=ps.exec(e.substring(n,n+1));return r?n+r[0].length:-1}function fe(t){for(var e=t.length,n=-1;++n<e;)t[n][0]=this(t[n][0]);return function(e){for(var n=0,r=t[n];!r[1](e);)r=t[++n];return r[0](e)}}function pe(){}function de(t,e,n){var r=n.s=t+e,i=r-t,a=r-i;n.t=t-a+(e-i)}function ge(t,e){t&&ms.hasOwnProperty(t.type)&&ms[t.type](t,e)}function ye(t,e,n){var r,i=-1,a=t.length-n;for(e.lineStart();++i<a;)r=t[i],e.point(r[0],r[1],r[2]);e.lineEnd()}function me(t,e){var n=-1,r=t.length;for(e.polygonStart();++n<r;)ye(t[n],e,1);e.polygonEnd()}function ve(){function t(t,e){t*=Io,e=e*Io/2+Mo/4;var n=t-r,o=n>=0?1:-1,s=o*n,u=Math.cos(e),c=Math.sin(e),l=a*c,h=i*u+l*Math.cos(s),f=l*o*Math.sin(s);xs.add(Math.atan2(f,h)),r=t,i=u,a=c}var e,n,r,i,a;bs.point=function(o,s){bs.point=t,r=(e=o)*Io,i=Math.cos(s=(n=s)*Io/2+Mo/4),a=Math.sin(s)},bs.lineEnd=function(){t(e,n)}}function xe(t){var e=t[0],n=t[1],r=Math.cos(n);return[r*Math.cos(e),r*Math.sin(e),Math.sin(n)]}function be(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function _e(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function we(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function Ae(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function ke(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}function Ee(t){return[Math.atan2(t[1],t[0]),nt(t[2])]}function De(t,e){return po(t[0]-e[0])<Oo&&po(t[1]-e[1])<Oo}function Be(t,e){t*=Io;var n=Math.cos(e*=Io);Ce(n*Math.cos(t),n*Math.sin(t),Math.sin(e))}function Ce(t,e,n){++_s,As+=(t-As)/_s,ks+=(e-ks)/_s,Es+=(n-Es)/_s}function Te(){function t(t,i){t*=Io;var a=Math.cos(i*=Io),o=a*Math.cos(t),s=a*Math.sin(t),u=Math.sin(i),c=Math.atan2(Math.sqrt((c=n*u-r*s)*c+(c=r*o-e*u)*c+(c=e*s-n*o)*c),e*o+n*s+r*u);ws+=c,Ds+=c*(e+(e=o)),Bs+=c*(n+(n=s)),Cs+=c*(r+(r=u)),Ce(e,n,r)}var e,n,r;Fs.point=function(i,a){i*=Io;var o=Math.cos(a*=Io);e=o*Math.cos(i),n=o*Math.sin(i),r=Math.sin(a),Fs.point=t,Ce(e,n,r)}}function Se(){Fs.point=Be}function Me(){function t(t,e){t*=Io;var n=Math.cos(e*=Io),o=n*Math.cos(t),s=n*Math.sin(t),u=Math.sin(e),c=i*u-a*s,l=a*o-r*u,h=r*s-i*o,f=Math.sqrt(c*c+l*l+h*h),p=r*o+i*s+a*u,d=f&&-et(p)/f,g=Math.atan2(f,p);Ts+=d*c,Ss+=d*l,Ms+=d*h,ws+=g,Ds+=g*(r+(r=o)),Bs+=g*(i+(i=s)),Cs+=g*(a+(a=u)),Ce(r,i,a)}var e,n,r,i,a;Fs.point=function(o,s){e=o,n=s,Fs.point=t,o*=Io;var u=Math.cos(s*=Io);r=u*Math.cos(o),i=u*Math.sin(o),a=Math.sin(s),Ce(r,i,a)},Fs.lineEnd=function(){t(e,n),Fs.lineEnd=Se,Fs.point=Be}}function Fe(){return!0}function Le(t,e,n,r,i){var a=[],o=[];if(t.forEach(function(t){if(!((e=t.length-1)<=0)){var e,n=t[0],r=t[e];if(De(n,r)){i.lineStart();for(var s=0;e>s;++s)i.point((n=t[s])[0],n[1]);return void i.lineEnd()}var u=new Ne(n,t,null,!0),c=new Ne(n,null,u,!1);u.o=c,a.push(u),o.push(c),u=new Ne(r,t,null,!1),c=new Ne(r,null,u,!0),u.o=c,a.push(u),o.push(c)}}),o.sort(e),Oe(a),Oe(o),a.length){for(var s=0,u=n,c=o.length;c>s;++s)o[s].e=u=!u;for(var l,h,f=a[0];;){for(var p=f,d=!0;p.v;)if((p=p.n)===f)return;l=p.z,i.lineStart();do{if(p.v=p.o.v=!0,p.e){if(d)for(var s=0,c=l.length;c>s;++s)i.point((h=l[s])[0],h[1]);else r(p.x,p.n.x,1,i);p=p.n}else{if(d){l=p.p.z;for(var s=l.length-1;s>=0;--s)i.point((h=l[s])[0],h[1])}else r(p.x,p.p.x,-1,i);p=p.p}p=p.o,l=p.z,d=!d}while(!p.v);i.lineEnd()}}}function Oe(t){if(e=t.length){for(var e,n,r=0,i=t[0];++r<e;)i.n=n=t[r],n.p=i,i=n;i.n=n=t[0],n.p=i}}function Ne(t,e,n,r){this.x=t,this.z=e,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function Ie(t,e,n,r){return function(i,a){function o(e,n){var r=i(e,n);t(e=r[0],n=r[1])&&a.point(e,n)}function s(t,e){var n=i(t,e);y.point(n[0],n[1])}function u(){v.point=s,y.lineStart()}function c(){v.point=o,y.lineEnd()}function l(t,e){g.push([t,e]);var n=i(t,e);b.point(n[0],n[1])}function h(){b.lineStart(),g=[]}function f(){l(g[0][0],g[0][1]),b.lineEnd();var t,e=b.clean(),n=x.buffer(),r=n.length;if(g.pop(),d.push(g),g=null,r)if(1&e){t=n[0];var i,r=t.length-1,o=-1;if(r>0){for(_||(a.polygonStart(),_=!0),a.lineStart();++o<r;)a.point((i=t[o])[0],i[1]);a.lineEnd()}}else r>1&&2&e&&n.push(n.pop().concat(n.shift())),p.push(n.filter(Re))}var p,d,g,y=e(a),m=i.invert(r[0],r[1]),v={point:o,lineStart:u,lineEnd:c,polygonStart:function(){v.point=l,v.lineStart=h,v.lineEnd=f,p=[],d=[]},polygonEnd:function(){v.point=o,v.lineStart=u,v.lineEnd=c,p=Qa.merge(p);var t=je(m,d);p.length?(_||(a.polygonStart(),_=!0),Le(p,Pe,t,n,a)):t&&(_||(a.polygonStart(),_=!0),a.lineStart(),n(null,null,1,a),a.lineEnd()),_&&(a.polygonEnd(),_=!1),p=d=null},sphere:function(){a.polygonStart(),a.lineStart(),n(null,null,1,a),a.lineEnd(),a.polygonEnd()}},x=qe(),b=e(x),_=!1;return v}}function Re(t){return t.length>1}function qe(){var t,e=[];return{lineStart:function(){e.push(t=[])},point:function(e,n){t.push([e,n])},lineEnd:b,buffer:function(){var n=e;return e=[],t=null,n},rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))}}}function Pe(t,e){return((t=t.x)[0]<0?t[1]-Lo-Oo:Lo-t[1])-((e=e.x)[0]<0?e[1]-Lo-Oo:Lo-e[1])}function je(t,e){var n=t[0],r=t[1],i=[Math.sin(n),-Math.cos(n),0],a=0,o=0;xs.reset();for(var s=0,u=e.length;u>s;++s){var c=e[s],l=c.length;if(l)for(var h=c[0],f=h[0],p=h[1]/2+Mo/4,d=Math.sin(p),g=Math.cos(p),y=1;;){y===l&&(y=0),t=c[y];var m=t[0],v=t[1]/2+Mo/4,x=Math.sin(v),b=Math.cos(v),_=m-f,w=_>=0?1:-1,A=w*_,k=A>Mo,E=d*x;if(xs.add(Math.atan2(E*w*Math.sin(A),g*b+E*Math.cos(A))),a+=k?_+w*Fo:_,k^f>=n^m>=n){var D=_e(xe(h),xe(t));ke(D);var B=_e(i,D);ke(B);var C=(k^_>=0?-1:1)*nt(B[2]);(r>C||r===C&&(D[0]||D[1]))&&(o+=k^_>=0?1:-1)}if(!y++)break;f=m,d=x,g=b,h=t}}return(-Oo>a||Oo>a&&0>xs)^1&o}function Ye(t){var e,n=NaN,r=NaN,i=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(a,o){var s=a>0?Mo:-Mo,u=po(a-n);po(u-Mo)<Oo?(t.point(n,r=(r+o)/2>0?Lo:-Lo),t.point(i,r),t.lineEnd(),t.lineStart(),
  t.point(s,r),t.point(a,r),e=0):i!==s&&u>=Mo&&(po(n-i)<Oo&&(n-=i*Oo),po(a-s)<Oo&&(a-=s*Oo),r=Ue(n,r,a,o),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(s,r),e=0),t.point(n=a,r=o),i=s},lineEnd:function(){t.lineEnd(),n=r=NaN},clean:function(){return 2-e}}}function Ue(t,e,n,r){var i,a,o=Math.sin(t-n);return po(o)>Oo?Math.atan((Math.sin(e)*(a=Math.cos(r))*Math.sin(n)-Math.sin(r)*(i=Math.cos(e))*Math.sin(t))/(i*a*o)):(e+r)/2}function Ve(t,e,n,r){var i;if(null==t)i=n*Lo,r.point(-Mo,i),r.point(0,i),r.point(Mo,i),r.point(Mo,0),r.point(Mo,-i),r.point(0,-i),r.point(-Mo,-i),r.point(-Mo,0),r.point(-Mo,i);else if(po(t[0]-e[0])>Oo){var a=t[0]<e[0]?Mo:-Mo;i=n*a/2,r.point(-a,i),r.point(0,i),r.point(a,i)}else r.point(e[0],e[1])}function $e(t){function e(t,e){return Math.cos(t)*Math.cos(e)>a}function n(t){var n,a,u,c,l;return{lineStart:function(){c=u=!1,l=1},point:function(h,f){var p,d=[h,f],g=e(h,f),y=o?g?0:i(h,f):g?i(h+(0>h?Mo:-Mo),f):0;if(!n&&(c=u=g)&&t.lineStart(),g!==u&&(p=r(n,d),(De(n,p)||De(d,p))&&(d[0]+=Oo,d[1]+=Oo,g=e(d[0],d[1]))),g!==u)l=0,g?(t.lineStart(),p=r(d,n),t.point(p[0],p[1])):(p=r(n,d),t.point(p[0],p[1]),t.lineEnd()),n=p;else if(s&&n&&o^g){var m;y&a||!(m=r(d,n,!0))||(l=0,o?(t.lineStart(),t.point(m[0][0],m[0][1]),t.point(m[1][0],m[1][1]),t.lineEnd()):(t.point(m[1][0],m[1][1]),t.lineEnd(),t.lineStart(),t.point(m[0][0],m[0][1])))}!g||n&&De(n,d)||t.point(d[0],d[1]),n=d,u=g,a=y},lineEnd:function(){u&&t.lineEnd(),n=null},clean:function(){return l|(c&&u)<<1}}}function r(t,e,n){var r=xe(t),i=xe(e),o=[1,0,0],s=_e(r,i),u=be(s,s),c=s[0],l=u-c*c;if(!l)return!n&&t;var h=a*u/l,f=-a*c/l,p=_e(o,s),d=Ae(o,h),g=Ae(s,f);we(d,g);var y=p,m=be(d,y),v=be(y,y),x=m*m-v*(be(d,d)-1);if(!(0>x)){var b=Math.sqrt(x),_=Ae(y,(-m-b)/v);if(we(_,d),_=Ee(_),!n)return _;var w,A=t[0],k=e[0],E=t[1],D=e[1];A>k&&(w=A,A=k,k=w);var B=k-A,C=po(B-Mo)<Oo,T=C||Oo>B;if(!C&&E>D&&(w=E,E=D,D=w),T?C?E+D>0^_[1]<(po(_[0]-A)<Oo?E:D):E<=_[1]&&_[1]<=D:B>Mo^(A<=_[0]&&_[0]<=k)){var S=Ae(y,(-m+b)/v);return we(S,d),[_,Ee(S)]}}}function i(e,n){var r=o?t:Mo-t,i=0;return-r>e?i|=1:e>r&&(i|=2),-r>n?i|=4:n>r&&(i|=8),i}var a=Math.cos(t),o=a>0,s=po(a)>Oo,u=xn(t,6*Io);return Ie(e,n,u,o?[0,-t]:[-Mo,t-Mo])}function ze(t,e,n,r){return function(i){var a,o=i.a,s=i.b,u=o.x,c=o.y,l=s.x,h=s.y,f=0,p=1,d=l-u,g=h-c;if(a=t-u,d||!(a>0)){if(a/=d,0>d){if(f>a)return;p>a&&(p=a)}else if(d>0){if(a>p)return;a>f&&(f=a)}if(a=n-u,d||!(0>a)){if(a/=d,0>d){if(a>p)return;a>f&&(f=a)}else if(d>0){if(f>a)return;p>a&&(p=a)}if(a=e-c,g||!(a>0)){if(a/=g,0>g){if(f>a)return;p>a&&(p=a)}else if(g>0){if(a>p)return;a>f&&(f=a)}if(a=r-c,g||!(0>a)){if(a/=g,0>g){if(a>p)return;a>f&&(f=a)}else if(g>0){if(f>a)return;p>a&&(p=a)}return f>0&&(i.a={x:u+f*d,y:c+f*g}),1>p&&(i.b={x:u+p*d,y:c+p*g}),i}}}}}}function He(t,e,n,r){function i(r,i){return po(r[0]-t)<Oo?i>0?0:3:po(r[0]-n)<Oo?i>0?2:1:po(r[1]-e)<Oo?i>0?1:0:i>0?3:2}function a(t,e){return o(t.x,e.x)}function o(t,e){var n=i(t,1),r=i(e,1);return n!==r?n-r:0===n?e[1]-t[1]:1===n?t[0]-e[0]:2===n?t[1]-e[1]:e[0]-t[0]}return function(s){function u(t){for(var e=0,n=y.length,r=t[1],i=0;n>i;++i)for(var a,o=1,s=y[i],u=s.length,c=s[0];u>o;++o)a=s[o],c[1]<=r?a[1]>r&&tt(c,a,t)>0&&++e:a[1]<=r&&tt(c,a,t)<0&&--e,c=a;return 0!==e}function c(a,s,u,c){var l=0,h=0;if(null==a||(l=i(a,u))!==(h=i(s,u))||o(a,s)<0^u>0){do c.point(0===l||3===l?t:n,l>1?r:e);while((l=(l+u+4)%4)!==h)}else c.point(s[0],s[1])}function l(i,a){return i>=t&&n>=i&&a>=e&&r>=a}function h(t,e){l(t,e)&&s.point(t,e)}function f(){T.point=d,y&&y.push(m=[]),k=!0,A=!1,_=w=NaN}function p(){g&&(d(v,x),b&&A&&B.rejoin(),g.push(B.buffer())),T.point=h,A&&s.lineEnd()}function d(t,e){t=Math.max(-Os,Math.min(Os,t)),e=Math.max(-Os,Math.min(Os,e));var n=l(t,e);if(y&&m.push([t,e]),k)v=t,x=e,b=n,k=!1,n&&(s.lineStart(),s.point(t,e));else if(n&&A)s.point(t,e);else{var r={a:{x:_,y:w},b:{x:t,y:e}};C(r)?(A||(s.lineStart(),s.point(r.a.x,r.a.y)),s.point(r.b.x,r.b.y),n||s.lineEnd(),E=!1):n&&(s.lineStart(),s.point(t,e),E=!1)}_=t,w=e,A=n}var g,y,m,v,x,b,_,w,A,k,E,D=s,B=qe(),C=ze(t,e,n,r),T={point:h,lineStart:f,lineEnd:p,polygonStart:function(){s=B,g=[],y=[],E=!0},polygonEnd:function(){s=D,g=Qa.merge(g);var e=u([t,r]),n=E&&e,i=g.length;(n||i)&&(s.polygonStart(),n&&(s.lineStart(),c(null,null,1,s),s.lineEnd()),i&&Le(g,a,e,c,s),s.polygonEnd()),g=y=m=null}};return T}}function Ge(t,e){function n(n,r){return n=t(n,r),e(n[0],n[1])}return t.invert&&e.invert&&(n.invert=function(n,r){return n=e.invert(n,r),n&&t.invert(n[0],n[1])}),n}function We(t){var e=0,n=Mo/3,r=hn(t),i=r(e,n);return i.parallels=function(t){return arguments.length?r(e=t[0]*Mo/180,n=t[1]*Mo/180):[e/Mo*180,n/Mo*180]},i}function Ze(t,e){function n(t,e){var n=Math.sqrt(a-2*i*Math.sin(e))/i;return[n*Math.sin(t*=i),o-n*Math.cos(t)]}var r=Math.sin(t),i=(r+Math.sin(e))/2,a=1+r*(2*i-r),o=Math.sqrt(a)/i;return n.invert=function(t,e){var n=o-e;return[Math.atan2(t,n)/i,nt((a-(t*t+n*n)*i*i)/(2*i))]},n}function Xe(){function t(t,e){Is+=i*t-r*e,r=t,i=e}var e,n,r,i;Ys.point=function(a,o){Ys.point=t,e=r=a,n=i=o},Ys.lineEnd=function(){t(e,n)}}function Ke(t,e){Rs>t&&(Rs=t),t>Ps&&(Ps=t),qs>e&&(qs=e),e>js&&(js=e)}function Je(){function t(t,e){o.push("M",t,",",e,a)}function e(t,e){o.push("M",t,",",e),s.point=n}function n(t,e){o.push("L",t,",",e)}function r(){s.point=t}function i(){o.push("Z")}var a=Qe(4.5),o=[],s={point:t,lineStart:function(){s.point=e},lineEnd:r,polygonStart:function(){s.lineEnd=i},polygonEnd:function(){s.lineEnd=r,s.point=t},pointRadius:function(t){return a=Qe(t),s},result:function(){if(o.length){var t=o.join("");return o=[],t}}};return s}function Qe(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function tn(t,e){As+=t,ks+=e,++Es}function en(){function t(t,r){var i=t-e,a=r-n,o=Math.sqrt(i*i+a*a);Ds+=o*(e+t)/2,Bs+=o*(n+r)/2,Cs+=o,tn(e=t,n=r)}var e,n;Vs.point=function(r,i){Vs.point=t,tn(e=r,n=i)}}function nn(){Vs.point=tn}function rn(){function t(t,e){var n=t-r,a=e-i,o=Math.sqrt(n*n+a*a);Ds+=o*(r+t)/2,Bs+=o*(i+e)/2,Cs+=o,o=i*t-r*e,Ts+=o*(r+t),Ss+=o*(i+e),Ms+=3*o,tn(r=t,i=e)}var e,n,r,i;Vs.point=function(a,o){Vs.point=t,tn(e=r=a,n=i=o)},Vs.lineEnd=function(){t(e,n)}}function an(t){function e(e,n){t.moveTo(e,n),t.arc(e,n,o,0,Fo)}function n(e,n){t.moveTo(e,n),s.point=r}function r(e,n){t.lineTo(e,n)}function i(){s.point=e}function a(){t.closePath()}var o=4.5,s={point:e,lineStart:function(){s.point=n},lineEnd:i,polygonStart:function(){s.lineEnd=a},polygonEnd:function(){s.lineEnd=i,s.point=e},pointRadius:function(t){return o=t,s},result:b};return s}function on(t){function e(t){return(s?r:n)(t)}function n(e){return cn(e,function(n,r){n=t(n,r),e.point(n[0],n[1])})}function r(e){function n(n,r){n=t(n,r),e.point(n[0],n[1])}function r(){x=NaN,k.point=a,e.lineStart()}function a(n,r){var a=xe([n,r]),o=t(n,r);i(x,b,v,_,w,A,x=o[0],b=o[1],v=n,_=a[0],w=a[1],A=a[2],s,e),e.point(x,b)}function o(){k.point=n,e.lineEnd()}function u(){r(),k.point=c,k.lineEnd=l}function c(t,e){a(h=t,f=e),p=x,d=b,g=_,y=w,m=A,k.point=a}function l(){i(x,b,v,_,w,A,p,d,h,g,y,m,s,e),k.lineEnd=o,o()}var h,f,p,d,g,y,m,v,x,b,_,w,A,k={point:n,lineStart:r,lineEnd:o,polygonStart:function(){e.polygonStart(),k.lineStart=u},polygonEnd:function(){e.polygonEnd(),k.lineStart=r}};return k}function i(e,n,r,s,u,c,l,h,f,p,d,g,y,m){var v=l-e,x=h-n,b=v*v+x*x;if(b>4*a&&y--){var _=s+p,w=u+d,A=c+g,k=Math.sqrt(_*_+w*w+A*A),E=Math.asin(A/=k),D=po(po(A)-1)<Oo||po(r-f)<Oo?(r+f)/2:Math.atan2(w,_),B=t(D,E),C=B[0],T=B[1],S=C-e,M=T-n,F=x*S-v*M;(F*F/b>a||po((v*S+x*M)/b-.5)>.3||o>s*p+u*d+c*g)&&(i(e,n,r,s,u,c,C,T,D,_/=k,w/=k,A,y,m),m.point(C,T),i(C,T,D,_,w,A,l,h,f,p,d,g,y,m))}}var a=.5,o=Math.cos(30*Io),s=16;return e.precision=function(t){return arguments.length?(s=(a=t*t)>0&&16,e):Math.sqrt(a)},e}function sn(t){var e=on(function(e,n){return t([e*Ro,n*Ro])});return function(t){return fn(e(t))}}function un(t){this.stream=t}function cn(t,e){return{point:e,sphere:function(){t.sphere()},lineStart:function(){t.lineStart()},lineEnd:function(){t.lineEnd()},polygonStart:function(){t.polygonStart()},polygonEnd:function(){t.polygonEnd()}}}function ln(t){return hn(function(){return t})()}function hn(t){function e(t){return t=s(t[0]*Io,t[1]*Io),[t[0]*f+u,c-t[1]*f]}function n(t){return t=s.invert((t[0]-u)/f,(c-t[1])/f),t&&[t[0]*Ro,t[1]*Ro]}function r(){s=Ge(o=gn(m,v,x),a);var t=a(g,y);return u=p-t[0]*f,c=d+t[1]*f,i()}function i(){return l&&(l.valid=!1,l=null),e}var a,o,s,u,c,l,h=on(function(t,e){return t=a(t,e),[t[0]*f+u,c-t[1]*f]}),f=150,p=480,d=250,g=0,y=0,m=0,v=0,x=0,b=Ls,_=Ft,w=null,A=null;return e.stream=function(t){return l&&(l.valid=!1),l=fn(b(o,h(_(t)))),l.valid=!0,l},e.clipAngle=function(t){return arguments.length?(b=null==t?(w=t,Ls):$e((w=+t)*Io),i()):w},e.clipExtent=function(t){return arguments.length?(A=t,_=t?He(t[0][0],t[0][1],t[1][0],t[1][1]):Ft,i()):A},e.scale=function(t){return arguments.length?(f=+t,r()):f},e.translate=function(t){return arguments.length?(p=+t[0],d=+t[1],r()):[p,d]},e.center=function(t){return arguments.length?(g=t[0]%360*Io,y=t[1]%360*Io,r()):[g*Ro,y*Ro]},e.rotate=function(t){return arguments.length?(m=t[0]%360*Io,v=t[1]%360*Io,x=t.length>2?t[2]%360*Io:0,r()):[m*Ro,v*Ro,x*Ro]},Qa.rebind(e,h,"precision"),function(){return a=t.apply(this,arguments),e.invert=a.invert&&n,r()}}function fn(t){return cn(t,function(e,n){t.point(e*Io,n*Io)})}function pn(t,e){return[t,e]}function dn(t,e){return[t>Mo?t-Fo:-Mo>t?t+Fo:t,e]}function gn(t,e,n){return t?e||n?Ge(mn(t),vn(e,n)):mn(t):e||n?vn(e,n):dn}function yn(t){return function(e,n){return e+=t,[e>Mo?e-Fo:-Mo>e?e+Fo:e,n]}}function mn(t){var e=yn(t);return e.invert=yn(-t),e}function vn(t,e){function n(t,e){var n=Math.cos(e),s=Math.cos(t)*n,u=Math.sin(t)*n,c=Math.sin(e),l=c*r+s*i;return[Math.atan2(u*a-l*o,s*r-c*i),nt(l*a+u*o)]}var r=Math.cos(t),i=Math.sin(t),a=Math.cos(e),o=Math.sin(e);return n.invert=function(t,e){var n=Math.cos(e),s=Math.cos(t)*n,u=Math.sin(t)*n,c=Math.sin(e),l=c*a-u*o;return[Math.atan2(u*a+c*o,s*r+l*i),nt(l*r-s*i)]},n}function xn(t,e){var n=Math.cos(t),r=Math.sin(t);return function(i,a,o,s){var u=o*e;null!=i?(i=bn(n,i),a=bn(n,a),(o>0?a>i:i>a)&&(i+=o*Fo)):(i=t+o*Fo,a=t-.5*u);for(var c,l=i;o>0?l>a:a>l;l-=u)s.point((c=Ee([n,-r*Math.cos(l),-r*Math.sin(l)]))[0],c[1])}}function bn(t,e){var n=xe(e);n[0]-=t,ke(n);var r=et(-n[1]);return((-n[2]<0?-r:r)+2*Math.PI-Oo)%(2*Math.PI)}function _n(t,e,n){var r=Qa.range(t,e-Oo,n).concat(e);return function(t){return r.map(function(e){return[t,e]})}}function wn(t,e,n){var r=Qa.range(t,e-Oo,n).concat(e);return function(t){return r.map(function(e){return[e,t]})}}function An(t){return t.source}function kn(t){return t.target}function En(t,e,n,r){var i=Math.cos(e),a=Math.sin(e),o=Math.cos(r),s=Math.sin(r),u=i*Math.cos(t),c=i*Math.sin(t),l=o*Math.cos(n),h=o*Math.sin(n),f=2*Math.asin(Math.sqrt(ot(r-e)+i*o*ot(n-t))),p=1/Math.sin(f),d=f?function(t){var e=Math.sin(t*=f)*p,n=Math.sin(f-t)*p,r=n*u+e*l,i=n*c+e*h,o=n*a+e*s;return[Math.atan2(i,r)*Ro,Math.atan2(o,Math.sqrt(r*r+i*i))*Ro]}:function(){return[t*Ro,e*Ro]};return d.distance=f,d}function Dn(){function t(t,i){var a=Math.sin(i*=Io),o=Math.cos(i),s=po((t*=Io)-e),u=Math.cos(s);$s+=Math.atan2(Math.sqrt((s=o*Math.sin(s))*s+(s=r*a-n*o*u)*s),n*a+r*o*u),e=t,n=a,r=o}var e,n,r;zs.point=function(i,a){e=i*Io,n=Math.sin(a*=Io),r=Math.cos(a),zs.point=t},zs.lineEnd=function(){zs.point=zs.lineEnd=b}}function Bn(t,e){function n(e,n){var r=Math.cos(e),i=Math.cos(n),a=t(r*i);return[a*i*Math.sin(e),a*Math.sin(n)]}return n.invert=function(t,n){var r=Math.sqrt(t*t+n*n),i=e(r),a=Math.sin(i),o=Math.cos(i);return[Math.atan2(t*a,r*o),Math.asin(r&&n*a/r)]},n}function Cn(t,e){function n(t,e){o>0?-Lo+Oo>e&&(e=-Lo+Oo):e>Lo-Oo&&(e=Lo-Oo);var n=o/Math.pow(i(e),a);return[n*Math.sin(a*t),o-n*Math.cos(a*t)]}var r=Math.cos(t),i=function(t){return Math.tan(Mo/4+t/2)},a=t===e?Math.sin(t):Math.log(r/Math.cos(e))/Math.log(i(e)/i(t)),o=r*Math.pow(i(t),a)/a;return a?(n.invert=function(t,e){var n=o-e,r=Q(a)*Math.sqrt(t*t+n*n);return[Math.atan2(t,n)/a,2*Math.atan(Math.pow(o/r,1/a))-Lo]},n):Sn}function Tn(t,e){function n(t,e){var n=a-e;return[n*Math.sin(i*t),a-n*Math.cos(i*t)]}var r=Math.cos(t),i=t===e?Math.sin(t):(r-Math.cos(e))/(e-t),a=r/i+t;return po(i)<Oo?pn:(n.invert=function(t,e){var n=a-e;return[Math.atan2(t,n)/i,a-Q(i)*Math.sqrt(t*t+n*n)]},n)}function Sn(t,e){return[t,Math.log(Math.tan(Mo/4+e/2))]}function Mn(t){var e,n=ln(t),r=n.scale,i=n.translate,a=n.clipExtent;return n.scale=function(){var t=r.apply(n,arguments);return t===n?e?n.clipExtent(null):n:t},n.translate=function(){var t=i.apply(n,arguments);return t===n?e?n.clipExtent(null):n:t},n.clipExtent=function(t){var o=a.apply(n,arguments);if(o===n){if(e=null==t){var s=Mo*r(),u=i();a([[u[0]-s,u[1]-s],[u[0]+s,u[1]+s]])}}else e&&(o=null);return o},n.clipExtent(null)}function Fn(t,e){return[Math.log(Math.tan(Mo/4+e/2)),-t]}function Ln(t){return t[0]}function On(t){return t[1]}function Nn(t){for(var e=t.length,n=[0,1],r=2,i=2;e>i;i++){for(;r>1&&tt(t[n[r-2]],t[n[r-1]],t[i])<=0;)--r;n[r++]=i}return n.slice(0,r)}function In(t,e){return t[0]-e[0]||t[1]-e[1]}function Rn(t,e,n){return(n[0]-e[0])*(t[1]-e[1])<(n[1]-e[1])*(t[0]-e[0])}function qn(t,e,n,r){var i=t[0],a=n[0],o=e[0]-i,s=r[0]-a,u=t[1],c=n[1],l=e[1]-u,h=r[1]-c,f=(s*(u-c)-h*(i-a))/(h*o-s*l);return[i+f*o,u+f*l]}function Pn(t){var e=t[0],n=t[t.length-1];return!(e[0]-n[0]||e[1]-n[1])}function jn(){sr(this),this.edge=this.site=this.circle=null}function Yn(t){var e=ru.pop()||new jn;return e.site=t,e}function Un(t){Jn(t),tu.remove(t),ru.push(t),sr(t)}function Vn(t){var e=t.circle,n=e.x,r=e.cy,i={x:n,y:r},a=t.P,o=t.N,s=[t];Un(t);for(var u=a;u.circle&&po(n-u.circle.x)<Oo&&po(r-u.circle.cy)<Oo;)a=u.P,s.unshift(u),Un(u),u=a;s.unshift(u),Jn(u);for(var c=o;c.circle&&po(n-c.circle.x)<Oo&&po(r-c.circle.cy)<Oo;)o=c.N,s.push(c),Un(c),c=o;s.push(c),Jn(c);var l,h=s.length;for(l=1;h>l;++l)c=s[l],u=s[l-1],ir(c.edge,u.site,c.site,i);u=s[0],c=s[h-1],c.edge=nr(u.site,c.site,null,i),Kn(u),Kn(c)}function $n(t){for(var e,n,r,i,a=t.x,o=t.y,s=tu._;s;)if(r=zn(s,o)-a,r>Oo)s=s.L;else{if(i=a-Hn(s,o),!(i>Oo)){r>-Oo?(e=s.P,n=s):i>-Oo?(e=s,n=s.N):e=n=s;break}if(!s.R){e=s;break}s=s.R}var u=Yn(t);if(tu.insert(e,u),e||n){if(e===n)return Jn(e),n=Yn(e.site),tu.insert(u,n),u.edge=n.edge=nr(e.site,u.site),Kn(e),void Kn(n);if(!n)return void(u.edge=nr(e.site,u.site));Jn(e),Jn(n);var c=e.site,l=c.x,h=c.y,f=t.x-l,p=t.y-h,d=n.site,g=d.x-l,y=d.y-h,m=2*(f*y-p*g),v=f*f+p*p,x=g*g+y*y,b={x:(y*v-p*x)/m+l,y:(f*x-g*v)/m+h};ir(n.edge,c,d,b),u.edge=nr(c,t,null,b),n.edge=nr(t,d,null,b),Kn(e),Kn(n)}}function zn(t,e){var n=t.site,r=n.x,i=n.y,a=i-e;if(!a)return r;var o=t.P;if(!o)return-(1/0);n=o.site;var s=n.x,u=n.y,c=u-e;if(!c)return s;var l=s-r,h=1/a-1/c,f=l/c;return h?(-f+Math.sqrt(f*f-2*h*(l*l/(-2*c)-u+c/2+i-a/2)))/h+r:(r+s)/2}function Hn(t,e){var n=t.N;if(n)return zn(n,e);var r=t.site;return r.y===e?r.x:1/0}function Gn(t){this.site=t,this.edges=[]}function Wn(t){for(var e,n,r,i,a,o,s,u,c,l,h=t[0][0],f=t[1][0],p=t[0][1],d=t[1][1],g=Qs,y=g.length;y--;)if(a=g[y],a&&a.prepare())for(s=a.edges,u=s.length,o=0;u>o;)l=s[o].end(),r=l.x,i=l.y,c=s[++o%u].start(),e=c.x,n=c.y,(po(r-e)>Oo||po(i-n)>Oo)&&(s.splice(o,0,new ar(rr(a.site,l,po(r-h)<Oo&&d-i>Oo?{x:h,y:po(e-h)<Oo?n:d}:po(i-d)<Oo&&f-r>Oo?{x:po(n-d)<Oo?e:f,y:d}:po(r-f)<Oo&&i-p>Oo?{x:f,y:po(e-f)<Oo?n:p}:po(i-p)<Oo&&r-h>Oo?{x:po(n-p)<Oo?e:h,y:p}:null),a.site,null)),++u)}function Zn(t,e){return e.angle-t.angle}function Xn(){sr(this),this.x=this.y=this.arc=this.site=this.cy=null}function Kn(t){var e=t.P,n=t.N;if(e&&n){var r=e.site,i=t.site,a=n.site;if(r!==a){var o=i.x,s=i.y,u=r.x-o,c=r.y-s,l=a.x-o,h=a.y-s,f=2*(u*h-c*l);if(!(f>=-No)){var p=u*u+c*c,d=l*l+h*h,g=(h*p-c*d)/f,y=(u*d-l*p)/f,h=y+s,m=iu.pop()||new Xn;m.arc=t,m.site=i,m.x=g+o,m.y=h+Math.sqrt(g*g+y*y),m.cy=h,t.circle=m;for(var v=null,x=nu._;x;)if(m.y<x.y||m.y===x.y&&m.x<=x.x){if(!x.L){v=x.P;break}x=x.L}else{if(!x.R){v=x;break}x=x.R}nu.insert(v,m),v||(eu=m)}}}}function Jn(t){var e=t.circle;e&&(e.P||(eu=e.N),nu.remove(e),iu.push(e),sr(e),t.circle=null)}function Qn(t){for(var e,n=Js,r=ze(t[0][0],t[0][1],t[1][0],t[1][1]),i=n.length;i--;)e=n[i],(!tr(e,t)||!r(e)||po(e.a.x-e.b.x)<Oo&&po(e.a.y-e.b.y)<Oo)&&(e.a=e.b=null,n.splice(i,1))}function tr(t,e){var n=t.b;if(n)return!0;var r,i,a=t.a,o=e[0][0],s=e[1][0],u=e[0][1],c=e[1][1],l=t.l,h=t.r,f=l.x,p=l.y,d=h.x,g=h.y,y=(f+d)/2,m=(p+g)/2;if(g===p){if(o>y||y>=s)return;if(f>d){if(a){if(a.y>=c)return}else a={x:y,y:u};n={x:y,y:c}}else{if(a){if(a.y<u)return}else a={x:y,y:c};n={x:y,y:u}}}else if(r=(f-d)/(g-p),i=m-r*y,-1>r||r>1)if(f>d){if(a){if(a.y>=c)return}else a={x:(u-i)/r,y:u};n={x:(c-i)/r,y:c}}else{if(a){if(a.y<u)return}else a={x:(c-i)/r,y:c};n={x:(u-i)/r,y:u}}else if(g>p){if(a){if(a.x>=s)return}else a={x:o,y:r*o+i};n={x:s,y:r*s+i}}else{if(a){if(a.x<o)return}else a={x:s,y:r*s+i};n={x:o,y:r*o+i}}return t.a=a,t.b=n,!0}function er(t,e){this.l=t,this.r=e,this.a=this.b=null}function nr(t,e,n,r){var i=new er(t,e);return Js.push(i),n&&ir(i,t,e,n),r&&ir(i,e,t,r),Qs[t.i].edges.push(new ar(i,t,e)),Qs[e.i].edges.push(new ar(i,e,t)),i}function rr(t,e,n){var r=new er(t,null);return r.a=e,r.b=n,Js.push(r),r}function ir(t,e,n,r){t.a||t.b?t.l===n?t.b=r:t.a=r:(t.a=r,t.l=e,t.r=n)}function ar(t,e,n){var r=t.a,i=t.b;this.edge=t,this.site=e,this.angle=n?Math.atan2(n.y-e.y,n.x-e.x):t.l===e?Math.atan2(i.x-r.x,r.y-i.y):Math.atan2(r.x-i.x,i.y-r.y)}function or(){this._=null}function sr(t){t.U=t.C=t.L=t.R=t.P=t.N=null}function ur(t,e){var n=e,r=e.R,i=n.U;i?i.L===n?i.L=r:i.R=r:t._=r,r.U=i,n.U=r,n.R=r.L,n.R&&(n.R.U=n),r.L=n}function cr(t,e){var n=e,r=e.L,i=n.U;i?i.L===n?i.L=r:i.R=r:t._=r,r.U=i,n.U=r,n.L=r.R,n.L&&(n.L.U=n),r.R=n}function lr(t){for(;t.L;)t=t.L;return t}function hr(t,e){var n,r,i,a=t.sort(fr).pop();for(Js=[],Qs=new Array(t.length),tu=new or,nu=new or;;)if(i=eu,a&&(!i||a.y<i.y||a.y===i.y&&a.x<i.x))(a.x!==n||a.y!==r)&&(Qs[a.i]=new Gn(a),$n(a),n=a.x,r=a.y),a=t.pop();else{if(!i)break;Vn(i.arc)}e&&(Qn(e),Wn(e));var o={cells:Qs,edges:Js};return tu=nu=Js=Qs=null,o}function fr(t,e){return e.y-t.y||e.x-t.x}function pr(t,e,n){return(t.x-n.x)*(e.y-t.y)-(t.x-e.x)*(n.y-t.y)}function dr(t){return t.x}function gr(t){return t.y}function yr(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function mr(t,e,n,r,i,a){if(!t(e,n,r,i,a)){var o=.5*(n+i),s=.5*(r+a),u=e.nodes;u[0]&&mr(t,u[0],n,r,o,s),u[1]&&mr(t,u[1],o,r,i,s),u[2]&&mr(t,u[2],n,s,o,a),u[3]&&mr(t,u[3],o,s,i,a)}}function vr(t,e){t=Qa.rgb(t),e=Qa.rgb(e);var n=t.r,r=t.g,i=t.b,a=e.r-n,o=e.g-r,s=e.b-i;return function(t){return"#"+Et(Math.round(n+a*t))+Et(Math.round(r+o*t))+Et(Math.round(i+s*t))}}function xr(t,e){var n,r={},i={};for(n in t)n in e?r[n]=wr(t[n],e[n]):i[n]=t[n];for(n in e)n in t||(i[n]=e[n]);return function(t){for(n in r)i[n]=r[n](t);return i}}function br(t,e){return e-=t=+t,function(n){return t+e*n}}function _r(t,e){var n,r,i,a=ou.lastIndex=su.lastIndex=0,o=-1,s=[],u=[];for(t+="",e+="";(n=ou.exec(t))&&(r=su.exec(e));)(i=r.index)>a&&(i=e.substring(a,i),s[o]?s[o]+=i:s[++o]=i),(n=n[0])===(r=r[0])?s[o]?s[o]+=r:s[++o]=r:(s[++o]=null,u.push({i:o,x:br(n,r)})),a=su.lastIndex;return a<e.length&&(i=e.substring(a),s[o]?s[o]+=i:s[++o]=i),s.length<2?u[0]?(e=u[0].x,function(t){return e(t)+""}):function(){return e}:(e=u.length,function(t){for(var n,r=0;e>r;++r)s[(n=u[r]).i]=n.x(t);return s.join("")})}function wr(t,e){for(var n,r=Qa.interpolators.length;--r>=0&&!(n=Qa.interpolators[r](t,e)););return n}function Ar(t,e){var n,r=[],i=[],a=t.length,o=e.length,s=Math.min(t.length,e.length);for(n=0;s>n;++n)r.push(wr(t[n],e[n]));for(;a>n;++n)i[n]=t[n];for(;o>n;++n)i[n]=e[n];return function(t){for(n=0;s>n;++n)i[n]=r[n](t);return i}}function kr(t){return function(e){return 0>=e?0:e>=1?1:t(e)}}function Er(t){return function(e){return 1-t(1-e)}}function Dr(t){return function(e){return.5*(.5>e?t(2*e):2-t(2-2*e))}}function Br(t){return t*t}function Cr(t){return t*t*t}function Tr(t){if(0>=t)return 0;if(t>=1)return 1;var e=t*t,n=e*t;return 4*(.5>t?n:3*(t-e)+n-.75)}function Sr(t){return function(e){return Math.pow(e,t)}}function Mr(t){return 1-Math.cos(t*Lo)}function Fr(t){return Math.pow(2,10*(t-1))}function Lr(t){return 1-Math.sqrt(1-t*t)}function Or(t,e){var n;return arguments.length<2&&(e=.45),arguments.length?n=e/Fo*Math.asin(1/t):(t=1,n=e/4),function(r){return 1+t*Math.pow(2,-10*r)*Math.sin((r-n)*Fo/e)}}function Nr(t){return t||(t=1.70158),function(e){return e*e*((t+1)*e-t)}}function Ir(t){return 1/2.75>t?7.5625*t*t:2/2.75>t?7.5625*(t-=1.5/2.75)*t+.75:2.5/2.75>t?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function Rr(t,e){t=Qa.hcl(t),e=Qa.hcl(e);var n=t.h,r=t.c,i=t.l,a=e.h-n,o=e.c-r,s=e.l-i;return isNaN(o)&&(o=0,r=isNaN(r)?e.c:r),isNaN(a)?(a=0,n=isNaN(n)?e.h:n):a>180?a-=360:-180>a&&(a+=360),function(t){return pt(n+a*t,r+o*t,i+s*t)+""}}function qr(t,e){t=Qa.hsl(t),e=Qa.hsl(e);var n=t.h,r=t.s,i=t.l,a=e.h-n,o=e.s-r,s=e.l-i;return isNaN(o)&&(o=0,r=isNaN(r)?e.s:r),isNaN(a)?(a=0,n=isNaN(n)?e.h:n):a>180?a-=360:-180>a&&(a+=360),function(t){return lt(n+a*t,r+o*t,i+s*t)+""}}function Pr(t,e){t=Qa.lab(t),e=Qa.lab(e);var n=t.l,r=t.a,i=t.b,a=e.l-n,o=e.a-r,s=e.b-i;return function(t){return yt(n+a*t,r+o*t,i+s*t)+""}}function jr(t,e){return e-=t,function(n){return Math.round(t+e*n)}}function Yr(t){var e=[t.a,t.b],n=[t.c,t.d],r=Vr(e),i=Ur(e,n),a=Vr($r(n,e,-i))||0;e[0]*n[1]<n[0]*e[1]&&(e[0]*=-1,e[1]*=-1,r*=-1,i*=-1),this.rotate=(r?Math.atan2(e[1],e[0]):Math.atan2(-n[0],n[1]))*Ro,this.translate=[t.e,t.f],this.scale=[r,a],this.skew=a?Math.atan2(i,a)*Ro:0}function Ur(t,e){return t[0]*e[0]+t[1]*e[1]}function Vr(t){var e=Math.sqrt(Ur(t,t));return e&&(t[0]/=e,t[1]/=e),e}function $r(t,e,n){return t[0]+=n*e[0],t[1]+=n*e[1],t}function zr(t,e){var n,r=[],i=[],a=Qa.transform(t),o=Qa.transform(e),s=a.translate,u=o.translate,c=a.rotate,l=o.rotate,h=a.skew,f=o.skew,p=a.scale,d=o.scale;return s[0]!=u[0]||s[1]!=u[1]?(r.push("translate(",null,",",null,")"),i.push({i:1,x:br(s[0],u[0])},{i:3,x:br(s[1],u[1])})):u[0]||u[1]?r.push("translate("+u+")"):r.push(""),c!=l?(c-l>180?l+=360:l-c>180&&(c+=360),i.push({i:r.push(r.pop()+"rotate(",null,")")-2,x:br(c,l)})):l&&r.push(r.pop()+"rotate("+l+")"),h!=f?i.push({i:r.push(r.pop()+"skewX(",null,")")-2,x:br(h,f)}):f&&r.push(r.pop()+"skewX("+f+")"),p[0]!=d[0]||p[1]!=d[1]?(n=r.push(r.pop()+"scale(",null,",",null,")"),i.push({i:n-4,x:br(p[0],d[0])},{i:n-2,x:br(p[1],d[1])})):(1!=d[0]||1!=d[1])&&r.push(r.pop()+"scale("+d+")"),n=i.length,function(t){for(var e,a=-1;++a<n;)r[(e=i[a]).i]=e.x(t);return r.join("")}}function Hr(t,e){return e=e-(t=+t)?1/(e-t):0,function(n){return(n-t)*e}}function Gr(t,e){return e=e-(t=+t)?1/(e-t):0,function(n){return Math.max(0,Math.min(1,(n-t)*e))}}function Wr(t){for(var e=t.source,n=t.target,r=Xr(e,n),i=[e];e!==r;)e=e.parent,i.push(e);for(var a=i.length;n!==r;)i.splice(a,0,n),n=n.parent;return i}function Zr(t){for(var e=[],n=t.parent;null!=n;)e.push(t),t=n,n=n.parent;return e.push(t),e}function Xr(t,e){if(t===e)return t;for(var n=Zr(t),r=Zr(e),i=n.pop(),a=r.pop(),o=null;i===a;)o=i,i=n.pop(),a=r.pop();return o}function Kr(t){t.fixed|=2}function Jr(t){t.fixed&=-7}function Qr(t){t.fixed|=4,t.px=t.x,t.py=t.y}function ti(t){t.fixed&=-5}function ei(t,e,n){var r=0,i=0;if(t.charge=0,!t.leaf)for(var a,o=t.nodes,s=o.length,u=-1;++u<s;)a=o[u],null!=a&&(ei(a,e,n),t.charge+=a.charge,r+=a.charge*a.cx,i+=a.charge*a.cy);if(t.point){t.leaf||(t.point.x+=Math.random()-.5,t.point.y+=Math.random()-.5);var c=e*n[t.point.index];t.charge+=t.pointCharge=c,r+=c*t.point.x,i+=c*t.point.y}t.cx=r/t.charge,t.cy=i/t.charge}function ni(t,e){return Qa.rebind(t,e,"sort","children","value"),t.nodes=t,t.links=ui,t}function ri(t,e){for(var n=[t];null!=(t=n.pop());)if(e(t),(i=t.children)&&(r=i.length))for(var r,i;--r>=0;)n.push(i[r])}function ii(t,e){for(var n=[t],r=[];null!=(t=n.pop());)if(r.push(t),(a=t.children)&&(i=a.length))for(var i,a,o=-1;++o<i;)n.push(a[o]);for(;null!=(t=r.pop());)e(t)}function ai(t){return t.children}function oi(t){return t.value}function si(t,e){return e.value-t.value}function ui(t){return Qa.merge(t.map(function(t){return(t.children||[]).map(function(e){return{source:t,target:e}})}))}function ci(t){return t.x}function li(t){return t.y}function hi(t,e,n){t.y0=e,t.y=n}function fi(t){return Qa.range(t.length)}function pi(t){for(var e=-1,n=t[0].length,r=[];++e<n;)r[e]=0;return r}function di(t){for(var e,n=1,r=0,i=t[0][1],a=t.length;a>n;++n)(e=t[n][1])>i&&(r=n,i=e);return r}function gi(t){return t.reduce(yi,0)}function yi(t,e){return t+e[1]}function mi(t,e){return vi(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function vi(t,e){for(var n=-1,r=+t[0],i=(t[1]-r)/e,a=[];++n<=e;)a[n]=i*n+r;return a}function xi(t){return[Qa.min(t),Qa.max(t)]}function bi(t,e){return t.value-e.value}function _i(t,e){var n=t._pack_next;t._pack_next=e,e._pack_prev=t,e._pack_next=n,n._pack_prev=e}function wi(t,e){t._pack_next=e,e._pack_prev=t}function Ai(t,e){var n=e.x-t.x,r=e.y-t.y,i=t.r+e.r;return.999*i*i>n*n+r*r}function ki(t){function e(t){l=Math.min(t.x-t.r,l),h=Math.max(t.x+t.r,h),f=Math.min(t.y-t.r,f),p=Math.max(t.y+t.r,p)}if((n=t.children)&&(c=n.length)){var n,r,i,a,o,s,u,c,l=1/0,h=-(1/0),f=1/0,p=-(1/0);if(n.forEach(Ei),r=n[0],r.x=-r.r,r.y=0,e(r),c>1&&(i=n[1],i.x=i.r,i.y=0,e(i),c>2))for(a=n[2],Ci(r,i,a),e(a),_i(r,a),r._pack_prev=a,_i(a,i),i=r._pack_next,o=3;c>o;o++){Ci(r,i,a=n[o]);var d=0,g=1,y=1;for(s=i._pack_next;s!==i;s=s._pack_next,g++)if(Ai(s,a)){d=1;break}if(1==d)for(u=r._pack_prev;u!==s._pack_prev&&!Ai(u,a);u=u._pack_prev,y++);d?(y>g||g==y&&i.r<r.r?wi(r,i=s):wi(r=u,i),o--):(_i(r,a),i=a,e(a))}var m=(l+h)/2,v=(f+p)/2,x=0;for(o=0;c>o;o++)a=n[o],a.x-=m,a.y-=v,x=Math.max(x,a.r+Math.sqrt(a.x*a.x+a.y*a.y));t.r=x,n.forEach(Di)}}function Ei(t){t._pack_next=t._pack_prev=t}function Di(t){delete t._pack_next,delete t._pack_prev}function Bi(t,e,n,r){var i=t.children;if(t.x=e+=r*t.x,t.y=n+=r*t.y,t.r*=r,i)for(var a=-1,o=i.length;++a<o;)Bi(i[a],e,n,r)}function Ci(t,e,n){var r=t.r+n.r,i=e.x-t.x,a=e.y-t.y;if(r&&(i||a)){var o=e.r+n.r,s=i*i+a*a;o*=o,r*=r;var u=.5+(r-o)/(2*s),c=Math.sqrt(Math.max(0,2*o*(r+s)-(r-=s)*r-o*o))/(2*s);n.x=t.x+u*i+c*a,n.y=t.y+u*a-c*i}else n.x=t.x+r,n.y=t.y}function Ti(t,e){return t.parent==e.parent?1:2}function Si(t){var e=t.children;return e.length?e[0]:t.t}function Mi(t){var e,n=t.children;return(e=n.length)?n[e-1]:t.t}function Fi(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}function Li(t){for(var e,n=0,r=0,i=t.children,a=i.length;--a>=0;)e=i[a],e.z+=n,e.m+=n,n+=e.s+(r+=e.c)}function Oi(t,e,n){return t.a.parent===e.parent?t.a:n}function Ni(t){return 1+Qa.max(t,function(t){return t.y})}function Ii(t){return t.reduce(function(t,e){return t+e.x},0)/t.length}function Ri(t){var e=t.children;return e&&e.length?Ri(e[0]):t}function qi(t){var e,n=t.children;return n&&(e=n.length)?qi(n[e-1]):t}function Pi(t){return{x:t.x,y:t.y,dx:t.dx,dy:t.dy}}function ji(t,e){var n=t.x+e[3],r=t.y+e[0],i=t.dx-e[1]-e[3],a=t.dy-e[0]-e[2];return 0>i&&(n+=i/2,i=0),0>a&&(r+=a/2,a=0),{x:n,y:r,dx:i,dy:a}}function Yi(t){var e=t[0],n=t[t.length-1];return n>e?[e,n]:[n,e]}function Ui(t){return t.rangeExtent?t.rangeExtent():Yi(t.range())}function Vi(t,e,n,r){var i=n(t[0],t[1]),a=r(e[0],e[1]);return function(t){return a(i(t))}}function $i(t,e){var n,r=0,i=t.length-1,a=t[r],o=t[i];return a>o&&(n=r,r=i,i=n,n=a,a=o,o=n),t[r]=e.floor(a),t[i]=e.ceil(o),t}function zi(t){return t?{floor:function(e){return Math.floor(e/t)*t},ceil:function(e){return Math.ceil(e/t)*t}}:vu}function Hi(t,e,n,r){var i=[],a=[],o=0,s=Math.min(t.length,e.length)-1;for(t[s]<t[0]&&(t=t.slice().reverse(),e=e.slice().reverse());++o<=s;)i.push(n(t[o-1],t[o])),a.push(r(e[o-1],e[o]));return function(e){var n=Qa.bisect(t,e,1,s)-1;return a[n](i[n](e))}}function Gi(t,e,n,r){function i(){var i=Math.min(t.length,e.length)>2?Hi:Vi,u=r?Gr:Hr;return o=i(t,e,u,n),s=i(e,t,u,wr),a}function a(t){return o(t)}var o,s;return a.invert=function(t){return s(t)},a.domain=function(e){return arguments.length?(t=e.map(Number),i()):t},a.range=function(t){return arguments.length?(e=t,i()):e},a.rangeRound=function(t){return a.range(t).interpolate(jr)},a.clamp=function(t){return arguments.length?(r=t,i()):r},a.interpolate=function(t){return arguments.length?(n=t,i()):n},a.ticks=function(e){return Ki(t,e)},a.tickFormat=function(e,n){return Ji(t,e,n)},a.nice=function(e){return Zi(t,e),i()},a.copy=function(){return Gi(t,e,n,r)},i()}function Wi(t,e){return Qa.rebind(t,e,"range","rangeRound","interpolate","clamp")}function Zi(t,e){return $i(t,zi(Xi(t,e)[2]))}function Xi(t,e){null==e&&(e=10);var n=Yi(t),r=n[1]-n[0],i=Math.pow(10,Math.floor(Math.log(r/e)/Math.LN10)),a=e/r*i;return.15>=a?i*=10:.35>=a?i*=5:.75>=a&&(i*=2),n[0]=Math.ceil(n[0]/i)*i,n[1]=Math.floor(n[1]/i)*i+.5*i,n[2]=i,n}function Ki(t,e){return Qa.range.apply(Qa,Xi(t,e))}function Ji(t,e,n){var r=Xi(t,e);if(n){var i=os.exec(n);if(i.shift(),"s"===i[8]){var a=Qa.formatPrefix(Math.max(po(r[0]),po(r[1])));return i[7]||(i[7]="."+Qi(a.scale(r[2]))),i[8]="f",n=Qa.format(i.join("")),function(t){return n(a.scale(t))+a.symbol}}i[7]||(i[7]="."+ta(i[8],r)),n=i.join("")}else n=",."+Qi(r[2])+"f";return Qa.format(n)}function Qi(t){return-Math.floor(Math.log(t)/Math.LN10+.01)}function ta(t,e){var n=Qi(e[2]);return t in xu?Math.abs(n-Qi(Math.max(po(e[0]),po(e[1]))))+ +("e"!==t):n-2*("%"===t)}function ea(t,e,n,r){function i(t){return(n?Math.log(0>t?0:t):-Math.log(t>0?0:-t))/Math.log(e)}function a(t){return n?Math.pow(e,t):-Math.pow(e,-t)}function o(e){return t(i(e))}return o.invert=function(e){return a(t.invert(e))},o.domain=function(e){return arguments.length?(n=e[0]>=0,t.domain((r=e.map(Number)).map(i)),o):r},o.base=function(n){return arguments.length?(e=+n,t.domain(r.map(i)),o):e},o.nice=function(){var e=$i(r.map(i),n?Math:_u);return t.domain(e),r=e.map(a),o},o.ticks=function(){var t=Yi(r),o=[],s=t[0],u=t[1],c=Math.floor(i(s)),l=Math.ceil(i(u)),h=e%1?2:e;if(isFinite(l-c)){if(n){for(;l>c;c++)for(var f=1;h>f;f++)o.push(a(c)*f);o.push(a(c))}else for(o.push(a(c));c++<l;)for(var f=h-1;f>0;f--)o.push(a(c)*f);for(c=0;o[c]<s;c++);for(l=o.length;o[l-1]>u;l--);o=o.slice(c,l)}return o},o.tickFormat=function(t,e){if(!arguments.length)return bu;arguments.length<2?e=bu:"function"!=typeof e&&(e=Qa.format(e));var r,s=Math.max(.1,t/o.ticks().length),u=n?(r=1e-12,Math.ceil):(r=-1e-12,Math.floor);return function(t){return t/a(u(i(t)+r))<=s?e(t):""}},o.copy=function(){return ea(t.copy(),e,n,r)},Wi(o,t)}function na(t,e,n){function r(e){return t(i(e))}var i=ra(e),a=ra(1/e);return r.invert=function(e){return a(t.invert(e))},r.domain=function(e){return arguments.length?(t.domain((n=e.map(Number)).map(i)),r):n},r.ticks=function(t){return Ki(n,t)},r.tickFormat=function(t,e){return Ji(n,t,e)},r.nice=function(t){return r.domain(Zi(n,t))},r.exponent=function(o){return arguments.length?(i=ra(e=o),a=ra(1/e),t.domain(n.map(i)),r):e},r.copy=function(){return na(t.copy(),e,n)},Wi(r,t)}function ra(t){return function(e){return 0>e?-Math.pow(-e,t):Math.pow(e,t)}}function ia(t,e){function n(n){return a[((i.get(n)||("range"===e.t?i.set(n,t.push(n)):NaN))-1)%a.length]}function r(e,n){return Qa.range(t.length).map(function(t){return e+n*t})}var i,a,o;return n.domain=function(r){if(!arguments.length)return t;t=[],i=new h;for(var a,o=-1,s=r.length;++o<s;)i.has(a=r[o])||i.set(a,t.push(a));return n[e.t].apply(n,e.a)},n.range=function(t){return arguments.length?(a=t,o=0,e={t:"range",a:arguments},n):a},n.rangePoints=function(i,s){arguments.length<2&&(s=0);var u=i[0],c=i[1],l=(c-u)/(Math.max(1,t.length-1)+s);return a=r(t.length<2?(u+c)/2:u+l*s/2,l),o=0,e={t:"rangePoints",a:arguments},n},n.rangeBands=function(i,s,u){arguments.length<2&&(s=0),arguments.length<3&&(u=s);var c=i[1]<i[0],l=i[c-0],h=i[1-c],f=(h-l)/(t.length-s+2*u);return a=r(l+f*u,f),c&&a.reverse(),o=f*(1-s),e={t:"rangeBands",a:arguments},n},n.rangeRoundBands=function(i,s,u){arguments.length<2&&(s=0),arguments.length<3&&(u=s);var c=i[1]<i[0],l=i[c-0],h=i[1-c],f=Math.floor((h-l)/(t.length-s+2*u)),p=h-l-(t.length-s)*f;return a=r(l+Math.round(p/2),f),c&&a.reverse(),o=Math.round(f*(1-s)),e={t:"rangeRoundBands",a:arguments},n},n.rangeBand=function(){return o;
  },n.rangeExtent=function(){return Yi(e.a[0])},n.copy=function(){return ia(t,e)},n.domain(t)}function aa(t,e){function n(){var n=0,a=e.length;for(i=[];++n<a;)i[n-1]=Qa.quantile(t,n/a);return r}function r(t){return isNaN(t=+t)?void 0:e[Qa.bisect(i,t)]}var i;return r.domain=function(e){return arguments.length?(t=e.filter(o).sort(a),n()):t},r.range=function(t){return arguments.length?(e=t,n()):e},r.quantiles=function(){return i},r.invertExtent=function(n){return n=e.indexOf(n),0>n?[NaN,NaN]:[n>0?i[n-1]:t[0],n<i.length?i[n]:t[t.length-1]]},r.copy=function(){return aa(t,e)},n()}function oa(t,e,n){function r(e){return n[Math.max(0,Math.min(o,Math.floor(a*(e-t))))]}function i(){return a=n.length/(e-t),o=n.length-1,r}var a,o;return r.domain=function(n){return arguments.length?(t=+n[0],e=+n[n.length-1],i()):[t,e]},r.range=function(t){return arguments.length?(n=t,i()):n},r.invertExtent=function(e){return e=n.indexOf(e),e=0>e?NaN:e/a+t,[e,e+1/a]},r.copy=function(){return oa(t,e,n)},i()}function sa(t,e){function n(n){return n>=n?e[Qa.bisect(t,n)]:void 0}return n.domain=function(e){return arguments.length?(t=e,n):t},n.range=function(t){return arguments.length?(e=t,n):e},n.invertExtent=function(n){return n=e.indexOf(n),[t[n-1],t[n]]},n.copy=function(){return sa(t,e)},n}function ua(t){function e(t){return+t}return e.invert=e,e.domain=e.range=function(n){return arguments.length?(t=n.map(e),e):t},e.ticks=function(e){return Ki(t,e)},e.tickFormat=function(e,n){return Ji(t,e,n)},e.copy=function(){return ua(t)},e}function ca(t){return t.innerRadius}function la(t){return t.outerRadius}function ha(t){return t.startAngle}function fa(t){return t.endAngle}function pa(t){function e(e){function o(){c.push("M",a(t(l),s))}for(var u,c=[],l=[],h=-1,f=e.length,p=Mt(n),d=Mt(r);++h<f;)i.call(this,u=e[h],h)?l.push([+p.call(this,u,h),+d.call(this,u,h)]):l.length&&(o(),l=[]);return l.length&&o(),c.length?c.join(""):null}var n=Ln,r=On,i=Fe,a=da,o=a.key,s=.7;return e.x=function(t){return arguments.length?(n=t,e):n},e.y=function(t){return arguments.length?(r=t,e):r},e.defined=function(t){return arguments.length?(i=t,e):i},e.interpolate=function(t){return arguments.length?(o="function"==typeof t?a=t:(a=Cu.get(t)||da).key,e):o},e.tension=function(t){return arguments.length?(s=t,e):s},e}function da(t){return t.join("L")}function ga(t){return da(t)+"Z"}function ya(t){for(var e=0,n=t.length,r=t[0],i=[r[0],",",r[1]];++e<n;)i.push("H",(r[0]+(r=t[e])[0])/2,"V",r[1]);return n>1&&i.push("H",r[0]),i.join("")}function ma(t){for(var e=0,n=t.length,r=t[0],i=[r[0],",",r[1]];++e<n;)i.push("V",(r=t[e])[1],"H",r[0]);return i.join("")}function va(t){for(var e=0,n=t.length,r=t[0],i=[r[0],",",r[1]];++e<n;)i.push("H",(r=t[e])[0],"V",r[1]);return i.join("")}function xa(t,e){return t.length<4?da(t):t[1]+wa(t.slice(1,t.length-1),Aa(t,e))}function ba(t,e){return t.length<3?da(t):t[0]+wa((t.push(t[0]),t),Aa([t[t.length-2]].concat(t,[t[1]]),e))}function _a(t,e){return t.length<3?da(t):t[0]+wa(t,Aa(t,e))}function wa(t,e){if(e.length<1||t.length!=e.length&&t.length!=e.length+2)return da(t);var n=t.length!=e.length,r="",i=t[0],a=t[1],o=e[0],s=o,u=1;if(n&&(r+="Q"+(a[0]-2*o[0]/3)+","+(a[1]-2*o[1]/3)+","+a[0]+","+a[1],i=t[1],u=2),e.length>1){s=e[1],a=t[u],u++,r+="C"+(i[0]+o[0])+","+(i[1]+o[1])+","+(a[0]-s[0])+","+(a[1]-s[1])+","+a[0]+","+a[1];for(var c=2;c<e.length;c++,u++)a=t[u],s=e[c],r+="S"+(a[0]-s[0])+","+(a[1]-s[1])+","+a[0]+","+a[1]}if(n){var l=t[u];r+="Q"+(a[0]+2*s[0]/3)+","+(a[1]+2*s[1]/3)+","+l[0]+","+l[1]}return r}function Aa(t,e){for(var n,r=[],i=(1-e)/2,a=t[0],o=t[1],s=1,u=t.length;++s<u;)n=a,a=o,o=t[s],r.push([i*(o[0]-n[0]),i*(o[1]-n[1])]);return r}function ka(t){if(t.length<3)return da(t);var e=1,n=t.length,r=t[0],i=r[0],a=r[1],o=[i,i,i,(r=t[1])[0]],s=[a,a,a,r[1]],u=[i,",",a,"L",Ca(Mu,o),",",Ca(Mu,s)];for(t.push(t[n-1]);++e<=n;)r=t[e],o.shift(),o.push(r[0]),s.shift(),s.push(r[1]),Ta(u,o,s);return t.pop(),u.push("L",r),u.join("")}function Ea(t){if(t.length<4)return da(t);for(var e,n=[],r=-1,i=t.length,a=[0],o=[0];++r<3;)e=t[r],a.push(e[0]),o.push(e[1]);for(n.push(Ca(Mu,a)+","+Ca(Mu,o)),--r;++r<i;)e=t[r],a.shift(),a.push(e[0]),o.shift(),o.push(e[1]),Ta(n,a,o);return n.join("")}function Da(t){for(var e,n,r=-1,i=t.length,a=i+4,o=[],s=[];++r<4;)n=t[r%i],o.push(n[0]),s.push(n[1]);for(e=[Ca(Mu,o),",",Ca(Mu,s)],--r;++r<a;)n=t[r%i],o.shift(),o.push(n[0]),s.shift(),s.push(n[1]),Ta(e,o,s);return e.join("")}function Ba(t,e){var n=t.length-1;if(n)for(var r,i,a=t[0][0],o=t[0][1],s=t[n][0]-a,u=t[n][1]-o,c=-1;++c<=n;)r=t[c],i=c/n,r[0]=e*r[0]+(1-e)*(a+i*s),r[1]=e*r[1]+(1-e)*(o+i*u);return ka(t)}function Ca(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}function Ta(t,e,n){t.push("C",Ca(Tu,e),",",Ca(Tu,n),",",Ca(Su,e),",",Ca(Su,n),",",Ca(Mu,e),",",Ca(Mu,n))}function Sa(t,e){return(e[1]-t[1])/(e[0]-t[0])}function Ma(t){for(var e=0,n=t.length-1,r=[],i=t[0],a=t[1],o=r[0]=Sa(i,a);++e<n;)r[e]=(o+(o=Sa(i=a,a=t[e+1])))/2;return r[e]=o,r}function Fa(t){for(var e,n,r,i,a=[],o=Ma(t),s=-1,u=t.length-1;++s<u;)e=Sa(t[s],t[s+1]),po(e)<Oo?o[s]=o[s+1]=0:(n=o[s]/e,r=o[s+1]/e,i=n*n+r*r,i>9&&(i=3*e/Math.sqrt(i),o[s]=i*n,o[s+1]=i*r));for(s=-1;++s<=u;)i=(t[Math.min(u,s+1)][0]-t[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),a.push([i||0,o[s]*i||0]);return a}function La(t){return t.length<3?da(t):t[0]+wa(t,Fa(t))}function Oa(t){for(var e,n,r,i=-1,a=t.length;++i<a;)e=t[i],n=e[0],r=e[1]+Du,e[0]=n*Math.cos(r),e[1]=n*Math.sin(r);return t}function Na(t){function e(e){function u(){g.push("M",s(t(m),h),l,c(t(y.reverse()),h),"Z")}for(var f,p,d,g=[],y=[],m=[],v=-1,x=e.length,b=Mt(n),_=Mt(i),w=n===r?function(){return p}:Mt(r),A=i===a?function(){return d}:Mt(a);++v<x;)o.call(this,f=e[v],v)?(y.push([p=+b.call(this,f,v),d=+_.call(this,f,v)]),m.push([+w.call(this,f,v),+A.call(this,f,v)])):y.length&&(u(),y=[],m=[]);return y.length&&u(),g.length?g.join(""):null}var n=Ln,r=Ln,i=0,a=On,o=Fe,s=da,u=s.key,c=s,l="L",h=.7;return e.x=function(t){return arguments.length?(n=r=t,e):r},e.x0=function(t){return arguments.length?(n=t,e):n},e.x1=function(t){return arguments.length?(r=t,e):r},e.y=function(t){return arguments.length?(i=a=t,e):a},e.y0=function(t){return arguments.length?(i=t,e):i},e.y1=function(t){return arguments.length?(a=t,e):a},e.defined=function(t){return arguments.length?(o=t,e):o},e.interpolate=function(t){return arguments.length?(u="function"==typeof t?s=t:(s=Cu.get(t)||da).key,c=s.reverse||s,l=s.closed?"M":"L",e):u},e.tension=function(t){return arguments.length?(h=t,e):h},e}function Ia(t){return t.radius}function Ra(t){return[t.x,t.y]}function qa(t){return function(){var e=t.apply(this,arguments),n=e[0],r=e[1]+Du;return[n*Math.cos(r),n*Math.sin(r)]}}function Pa(){return 64}function ja(){return"circle"}function Ya(t){var e=Math.sqrt(t/Mo);return"M0,"+e+"A"+e+","+e+" 0 1,1 0,"+-e+"A"+e+","+e+" 0 1,1 0,"+e+"Z"}function Ua(t,e){return xo(t,Ru),t.id=e,t}function Va(t,e,n,r){var i=t.id;return Y(t,"function"==typeof n?function(t,a,o){t.__transition__[i].tween.set(e,r(n.call(t,t.__data__,a,o)))}:(n=r(n),function(t){t.__transition__[i].tween.set(e,n)}))}function $a(t){return null==t&&(t=""),function(){this.textContent=t}}function za(t,e,n,r){var i=t.__transition__||(t.__transition__={active:0,count:0}),a=i[n];if(!a){var o=r.time;a=i[n]={tween:new h,time:o,ease:r.ease,delay:r.delay,duration:r.duration},++i.count,Qa.timer(function(r){function s(r){return i.active>n?c():(i.active=n,a.event&&a.event.start.call(t,l,e),a.tween.forEach(function(n,r){(r=r.call(t,l,e))&&g.push(r)}),void Qa.timer(function(){return d.c=u(r||1)?Fe:u,1},0,o))}function u(r){if(i.active!==n)return c();for(var o=r/p,s=h(o),u=g.length;u>0;)g[--u].call(t,s);return o>=1?(a.event&&a.event.end.call(t,l,e),c()):void 0}function c(){return--i.count?delete i[n]:delete t.__transition__,1}var l=t.__data__,h=a.ease,f=a.delay,p=a.duration,d=rs,g=[];return d.t=f+o,r>=f?s(r-f):void(d.c=s)},0,o)}}function Ha(t,e){t.attr("transform",function(t){return"translate("+e(t)+",0)"})}function Ga(t,e){t.attr("transform",function(t){return"translate(0,"+e(t)+")"})}function Wa(t){return t.toISOString()}function Za(t,e,n){function r(e){return t(e)}function i(t,n){var r=t[1]-t[0],i=r/n,a=Qa.bisect(Hu,i);return a==Hu.length?[e.year,Xi(t.map(function(t){return t/31536e6}),n)[2]]:a?e[i/Hu[a-1]<Hu[a]/i?a-1:a]:[Zu,Xi(t,n)[2]]}return r.invert=function(e){return Xa(t.invert(e))},r.domain=function(e){return arguments.length?(t.domain(e),r):t.domain().map(Xa)},r.nice=function(t,e){function n(n){return!isNaN(n)&&!t.range(n,Xa(+n+1),e).length}var a=r.domain(),o=Yi(a),s=null==t?i(o,10):"number"==typeof t&&i(o,t);return s&&(t=s[0],e=s[1]),r.domain($i(a,e>1?{floor:function(e){for(;n(e=t.floor(e));)e=Xa(e-1);return e},ceil:function(e){for(;n(e=t.ceil(e));)e=Xa(+e+1);return e}}:t))},r.ticks=function(t,e){var n=Yi(r.domain()),a=null==t?i(n,10):"number"==typeof t?i(n,t):!t.range&&[{range:t},e];return a&&(t=a[0],e=a[1]),t.range(n[0],Xa(+n[1]+1),1>e?1:e)},r.tickFormat=function(){return n},r.copy=function(){return Za(t.copy(),e,n)},Wi(r,t)}function Xa(t){return new Date(t)}function Ka(t){return JSON.parse(t.responseText)}function Ja(t){var e=no.createRange();return e.selectNode(no.body),e.createContextualFragment(t.responseText)}var Qa={version:"3.4.8"};Date.now||(Date.now=function(){return+new Date});var to=[].slice,eo=function(t){return to.call(t)},no=document,ro=no.documentElement,io=window;try{eo(ro.childNodes)[0].nodeType}catch(ao){eo=function(t){for(var e=t.length,n=new Array(e);e--;)n[e]=t[e];return n}}try{no.createElement("div").style.setProperty("opacity",0,"")}catch(oo){var so=io.Element.prototype,uo=so.setAttribute,co=so.setAttributeNS,lo=io.CSSStyleDeclaration.prototype,ho=lo.setProperty;so.setAttribute=function(t,e){uo.call(this,t,e+"")},so.setAttributeNS=function(t,e,n){co.call(this,t,e,n+"")},lo.setProperty=function(t,e,n){ho.call(this,t,e+"",n)}}Qa.ascending=a,Qa.descending=function(t,e){return t>e?-1:e>t?1:e>=t?0:NaN},Qa.min=function(t,e){var n,r,i=-1,a=t.length;if(1===arguments.length){for(;++i<a&&!(null!=(n=t[i])&&n>=n);)n=void 0;for(;++i<a;)null!=(r=t[i])&&n>r&&(n=r)}else{for(;++i<a&&!(null!=(n=e.call(t,t[i],i))&&n>=n);)n=void 0;for(;++i<a;)null!=(r=e.call(t,t[i],i))&&n>r&&(n=r)}return n},Qa.max=function(t,e){var n,r,i=-1,a=t.length;if(1===arguments.length){for(;++i<a&&!(null!=(n=t[i])&&n>=n);)n=void 0;for(;++i<a;)null!=(r=t[i])&&r>n&&(n=r)}else{for(;++i<a&&!(null!=(n=e.call(t,t[i],i))&&n>=n);)n=void 0;for(;++i<a;)null!=(r=e.call(t,t[i],i))&&r>n&&(n=r)}return n},Qa.extent=function(t,e){var n,r,i,a=-1,o=t.length;if(1===arguments.length){for(;++a<o&&!(null!=(n=i=t[a])&&n>=n);)n=i=void 0;for(;++a<o;)null!=(r=t[a])&&(n>r&&(n=r),r>i&&(i=r))}else{for(;++a<o&&!(null!=(n=i=e.call(t,t[a],a))&&n>=n);)n=void 0;for(;++a<o;)null!=(r=e.call(t,t[a],a))&&(n>r&&(n=r),r>i&&(i=r))}return[n,i]},Qa.sum=function(t,e){var n,r=0,i=t.length,a=-1;if(1===arguments.length)for(;++a<i;)isNaN(n=+t[a])||(r+=n);else for(;++a<i;)isNaN(n=+e.call(t,t[a],a))||(r+=n);return r},Qa.mean=function(t,e){var n,r=0,i=t.length,a=-1,s=i;if(1===arguments.length)for(;++a<i;)o(n=t[a])?r+=n:--s;else for(;++a<i;)o(n=e.call(t,t[a],a))?r+=n:--s;return s?r/s:void 0},Qa.quantile=function(t,e){var n=(t.length-1)*e+1,r=Math.floor(n),i=+t[r-1],a=n-r;return a?i+a*(t[r]-i):i},Qa.median=function(t,e){return arguments.length>1&&(t=t.map(e)),t=t.filter(o),t.length?Qa.quantile(t.sort(a),.5):void 0};var fo=s(a);Qa.bisectLeft=fo.left,Qa.bisect=Qa.bisectRight=fo.right,Qa.bisector=function(t){return s(1===t.length?function(e,n){return a(t(e),n)}:t)},Qa.shuffle=function(t){for(var e,n,r=t.length;r;)n=Math.random()*r--|0,e=t[r],t[r]=t[n],t[n]=e;return t},Qa.permute=function(t,e){for(var n=e.length,r=new Array(n);n--;)r[n]=t[e[n]];return r},Qa.pairs=function(t){for(var e,n=0,r=t.length-1,i=t[0],a=new Array(0>r?0:r);r>n;)a[n]=[e=i,i=t[++n]];return a},Qa.zip=function(){if(!(r=arguments.length))return[];for(var t=-1,e=Qa.min(arguments,u),n=new Array(e);++t<e;)for(var r,i=-1,a=n[t]=new Array(r);++i<r;)a[i]=arguments[i][t];return n},Qa.transpose=function(t){return Qa.zip.apply(Qa,t)},Qa.keys=function(t){var e=[];for(var n in t)e.push(n);return e},Qa.values=function(t){var e=[];for(var n in t)e.push(t[n]);return e},Qa.entries=function(t){var e=[];for(var n in t)e.push({key:n,value:t[n]});return e},Qa.merge=function(t){for(var e,n,r,i=t.length,a=-1,o=0;++a<i;)o+=t[a].length;for(n=new Array(o);--i>=0;)for(r=t[i],e=r.length;--e>=0;)n[--o]=r[e];return n};var po=Math.abs;Qa.range=function(t,e,n){if(arguments.length<3&&(n=1,arguments.length<2&&(e=t,t=0)),(e-t)/n===1/0)throw new Error("infinite range");var r,i=[],a=c(po(n)),o=-1;if(t*=a,e*=a,n*=a,0>n)for(;(r=t+n*++o)>e;)i.push(r/a);else for(;(r=t+n*++o)<e;)i.push(r/a);return i},Qa.map=function(t){var e=new h;if(t instanceof h)t.forEach(function(t,n){e.set(t,n)});else for(var n in t)e.set(n,t[n]);return e},l(h,{has:f,get:function(t){return this[go+t]},set:function(t,e){return this[go+t]=e},remove:p,keys:d,values:function(){var t=[];return this.forEach(function(e,n){t.push(n)}),t},entries:function(){var t=[];return this.forEach(function(e,n){t.push({key:e,value:n})}),t},size:g,empty:y,forEach:function(t){for(var e in this)e.charCodeAt(0)===yo&&t.call(this,e.substring(1),this[e])}});var go="\x00",yo=go.charCodeAt(0);Qa.nest=function(){function t(e,o,s){if(s>=a.length)return r?r.call(i,o):n?o.sort(n):o;for(var u,c,l,f,p=-1,d=o.length,g=a[s++],y=new h;++p<d;)(f=y.get(u=g(c=o[p])))?f.push(c):y.set(u,[c]);return e?(c=e(),l=function(n,r){c.set(n,t(e,r,s))}):(c={},l=function(n,r){c[n]=t(e,r,s)}),y.forEach(l),c}function e(t,n){if(n>=a.length)return t;var r=[],i=o[n++];return t.forEach(function(t,i){r.push({key:t,values:e(i,n)})}),i?r.sort(function(t,e){return i(t.key,e.key)}):r}var n,r,i={},a=[],o=[];return i.map=function(e,n){return t(n,e,0)},i.entries=function(n){return e(t(Qa.map,n,0),0)},i.key=function(t){return a.push(t),i},i.sortKeys=function(t){return o[a.length-1]=t,i},i.sortValues=function(t){return n=t,i},i.rollup=function(t){return r=t,i},i},Qa.set=function(t){var e=new m;if(t)for(var n=0,r=t.length;r>n;++n)e.add(t[n]);return e},l(m,{has:f,add:function(t){return this[go+t]=!0,t},remove:function(t){return t=go+t,t in this&&delete this[t]},values:d,size:g,empty:y,forEach:function(t){for(var e in this)e.charCodeAt(0)===yo&&t.call(this,e.substring(1))}}),Qa.behavior={},Qa.rebind=function(t,e){for(var n,r=1,i=arguments.length;++r<i;)t[n=arguments[r]]=v(t,e,e[n]);return t};var mo=["webkit","ms","moz","Moz","o","O"];Qa.dispatch=function(){for(var t=new _,e=-1,n=arguments.length;++e<n;)t[arguments[e]]=w(t);return t},_.prototype.on=function(t,e){var n=t.indexOf("."),r="";if(n>=0&&(r=t.substring(n+1),t=t.substring(0,n)),t)return arguments.length<2?this[t].on(r):this[t].on(r,e);if(2===arguments.length){if(null==e)for(t in this)this.hasOwnProperty(t)&&this[t].on(r,null);return this}},Qa.event=null,Qa.requote=function(t){return t.replace(vo,"\\$&")};var vo=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,xo={}.__proto__?function(t,e){t.__proto__=e}:function(t,e){for(var n in e)t[n]=e[n]},bo=function(t,e){return e.querySelector(t)},_o=function(t,e){return e.querySelectorAll(t)},wo=ro[x(ro,"matchesSelector")],Ao=function(t,e){return wo.call(t,e)};"function"==typeof Sizzle&&(bo=function(t,e){return Sizzle(t,e)[0]||null},_o=Sizzle,Ao=Sizzle.matchesSelector),Qa.selection=function(){return Bo};var ko=Qa.selection.prototype=[];ko.select=function(t){var e,n,r,i,a=[];t=B(t);for(var o=-1,s=this.length;++o<s;){a.push(e=[]),e.parentNode=(r=this[o]).parentNode;for(var u=-1,c=r.length;++u<c;)(i=r[u])?(e.push(n=t.call(i,i.__data__,u,o)),n&&"__data__"in i&&(n.__data__=i.__data__)):e.push(null)}return D(a)},ko.selectAll=function(t){var e,n,r=[];t=C(t);for(var i=-1,a=this.length;++i<a;)for(var o=this[i],s=-1,u=o.length;++s<u;)(n=o[s])&&(r.push(e=eo(t.call(n,n.__data__,s,i))),e.parentNode=n);return D(r)};var Eo={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};Qa.ns={prefix:Eo,qualify:function(t){var e=t.indexOf(":"),n=t;return e>=0&&(n=t.substring(0,e),t=t.substring(e+1)),Eo.hasOwnProperty(n)?{space:Eo[n],local:t}:t}},ko.attr=function(t,e){if(arguments.length<2){if("string"==typeof t){var n=this.node();return t=Qa.ns.qualify(t),t.local?n.getAttributeNS(t.space,t.local):n.getAttribute(t)}for(e in t)this.each(T(e,t[e]));return this}return this.each(T(t,e))},ko.classed=function(t,e){if(arguments.length<2){if("string"==typeof t){var n=this.node(),r=(t=F(t)).length,i=-1;if(e=n.classList){for(;++i<r;)if(!e.contains(t[i]))return!1}else for(e=n.getAttribute("class");++i<r;)if(!M(t[i]).test(e))return!1;return!0}for(e in t)this.each(L(e,t[e]));return this}return this.each(L(t,e))},ko.style=function(t,e,n){var r=arguments.length;if(3>r){if("string"!=typeof t){2>r&&(e="");for(n in t)this.each(N(n,t[n],e));return this}if(2>r)return io.getComputedStyle(this.node(),null).getPropertyValue(t);n=""}return this.each(N(t,e,n))},ko.property=function(t,e){if(arguments.length<2){if("string"==typeof t)return this.node()[t];for(e in t)this.each(I(e,t[e]));return this}return this.each(I(t,e))},ko.text=function(t){return arguments.length?this.each("function"==typeof t?function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}:null==t?function(){this.textContent=""}:function(){this.textContent=t}):this.node().textContent},ko.html=function(t){return arguments.length?this.each("function"==typeof t?function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}:null==t?function(){this.innerHTML=""}:function(){this.innerHTML=t}):this.node().innerHTML},ko.append=function(t){return t=R(t),this.select(function(){return this.appendChild(t.apply(this,arguments))})},ko.insert=function(t,e){return t=R(t),e=B(e),this.select(function(){return this.insertBefore(t.apply(this,arguments),e.apply(this,arguments)||null)})},ko.remove=function(){return this.each(function(){var t=this.parentNode;t&&t.removeChild(this)})},ko.data=function(t,e){function n(t,n){var r,i,a,o=t.length,l=n.length,f=Math.min(o,l),p=new Array(l),d=new Array(l),g=new Array(o);if(e){var y,m=new h,v=new h,x=[];for(r=-1;++r<o;)y=e.call(i=t[r],i.__data__,r),m.has(y)?g[r]=i:m.set(y,i),x.push(y);for(r=-1;++r<l;)y=e.call(n,a=n[r],r),(i=m.get(y))?(p[r]=i,i.__data__=a):v.has(y)||(d[r]=q(a)),v.set(y,a),m.remove(y);for(r=-1;++r<o;)m.has(x[r])&&(g[r]=t[r])}else{for(r=-1;++r<f;)i=t[r],a=n[r],i?(i.__data__=a,p[r]=i):d[r]=q(a);for(;l>r;++r)d[r]=q(n[r]);for(;o>r;++r)g[r]=t[r]}d.update=p,d.parentNode=p.parentNode=g.parentNode=t.parentNode,s.push(d),u.push(p),c.push(g)}var r,i,a=-1,o=this.length;if(!arguments.length){for(t=new Array(o=(r=this[0]).length);++a<o;)(i=r[a])&&(t[a]=i.__data__);return t}var s=U([]),u=D([]),c=D([]);if("function"==typeof t)for(;++a<o;)n(r=this[a],t.call(r,r.parentNode.__data__,a));else for(;++a<o;)n(r=this[a],t);return u.enter=function(){return s},u.exit=function(){return c},u},ko.datum=function(t){return arguments.length?this.property("__data__",t):this.property("__data__")},ko.filter=function(t){var e,n,r,i=[];"function"!=typeof t&&(t=P(t));for(var a=0,o=this.length;o>a;a++){i.push(e=[]),e.parentNode=(n=this[a]).parentNode;for(var s=0,u=n.length;u>s;s++)(r=n[s])&&t.call(r,r.__data__,s,a)&&e.push(r)}return D(i)},ko.order=function(){for(var t=-1,e=this.length;++t<e;)for(var n,r=this[t],i=r.length-1,a=r[i];--i>=0;)(n=r[i])&&(a&&a!==n.nextSibling&&a.parentNode.insertBefore(n,a),a=n);return this},ko.sort=function(t){t=j.apply(this,arguments);for(var e=-1,n=this.length;++e<n;)this[e].sort(t);return this.order()},ko.each=function(t){return Y(this,function(e,n,r){t.call(e,e.__data__,n,r)})},ko.call=function(t){var e=eo(arguments);return t.apply(e[0]=this,e),this},ko.empty=function(){return!this.node()},ko.node=function(){for(var t=0,e=this.length;e>t;t++)for(var n=this[t],r=0,i=n.length;i>r;r++){var a=n[r];if(a)return a}return null},ko.size=function(){var t=0;return this.each(function(){++t}),t};var Do=[];Qa.selection.enter=U,Qa.selection.enter.prototype=Do,Do.append=ko.append,Do.empty=ko.empty,Do.node=ko.node,Do.call=ko.call,Do.size=ko.size,Do.select=function(t){for(var e,n,r,i,a,o=[],s=-1,u=this.length;++s<u;){r=(i=this[s]).update,o.push(e=[]),e.parentNode=i.parentNode;for(var c=-1,l=i.length;++c<l;)(a=i[c])?(e.push(r[c]=n=t.call(i.parentNode,a.__data__,c,s)),n.__data__=a.__data__):e.push(null)}return D(o)},Do.insert=function(t,e){return arguments.length<2&&(e=V(this)),ko.insert.call(this,t,e)},ko.transition=function(){for(var t,e,n=Lu||++qu,r=[],i=Ou||{time:Date.now(),ease:Tr,delay:0,duration:250},a=-1,o=this.length;++a<o;){r.push(t=[]);for(var s=this[a],u=-1,c=s.length;++u<c;)(e=s[u])&&za(e,u,n,i),t.push(e)}return Ua(r,n)},ko.interrupt=function(){return this.each($)},Qa.select=function(t){var e=["string"==typeof t?bo(t,no):t];return e.parentNode=ro,D([e])},Qa.selectAll=function(t){var e=eo("string"==typeof t?_o(t,no):t);return e.parentNode=ro,D([e])};var Bo=Qa.select(ro);ko.on=function(t,e,n){var r=arguments.length;if(3>r){if("string"!=typeof t){2>r&&(e=!1);for(n in t)this.each(z(n,t[n],e));return this}if(2>r)return(r=this.node()["__on"+t])&&r._;n=!1}return this.each(z(t,e,n))};var Co=Qa.map({mouseenter:"mouseover",mouseleave:"mouseout"});Co.forEach(function(t){"on"+t in no&&Co.remove(t)});var To="onselectstart"in no?null:x(ro.style,"userSelect"),So=0;Qa.mouse=function(t){return Z(t,k())},Qa.touches=function(t,e){return arguments.length<2&&(e=k().touches),e?eo(e).map(function(e){var n=Z(t,e);return n.identifier=e.identifier,n}):[]},Qa.behavior.drag=function(){function t(){this.on("mousedown.drag",i).on("touchstart.drag",a)}function e(t,e,i,a,o){return function(){function s(){var t,n,r=e(f,g);r&&(t=r[0]-x[0],n=r[1]-x[1],d|=t|n,x=r,p({type:"drag",x:r[0]+c[0],y:r[1]+c[1],dx:t,dy:n}))}function u(){e(f,g)&&(m.on(a+y,null).on(o+y,null),v(d&&Qa.event.target===h),p({type:"dragend"}))}var c,l=this,h=Qa.event.target,f=l.parentNode,p=n.of(l,arguments),d=0,g=t(),y=".drag"+(null==g?"":"-"+g),m=Qa.select(i()).on(a+y,s).on(o+y,u),v=W(),x=e(f,g);r?(c=r.apply(l,arguments),c=[c.x-x[0],c.y-x[1]]):c=[0,0],p({type:"dragstart"})}}var n=E(t,"drag","dragstart","dragend"),r=null,i=e(b,Qa.mouse,J,"mousemove","mouseup"),a=e(X,Qa.touch,K,"touchmove","touchend");return t.origin=function(e){return arguments.length?(r=e,t):r},Qa.rebind(t,n,"on")};var Mo=Math.PI,Fo=2*Mo,Lo=Mo/2,Oo=1e-6,No=Oo*Oo,Io=Mo/180,Ro=180/Mo,qo=Math.SQRT2,Po=2,jo=4;Qa.interpolateZoom=function(t,e){function n(t){var e=t*v;if(m){var n=it(g),o=a/(Po*f)*(n*at(qo*e+g)-rt(g));return[r+o*c,i+o*l,a*n/it(qo*e+g)]}return[r+t*c,i+t*l,a*Math.exp(qo*e)]}var r=t[0],i=t[1],a=t[2],o=e[0],s=e[1],u=e[2],c=o-r,l=s-i,h=c*c+l*l,f=Math.sqrt(h),p=(u*u-a*a+jo*h)/(2*a*Po*f),d=(u*u-a*a-jo*h)/(2*u*Po*f),g=Math.log(Math.sqrt(p*p+1)-p),y=Math.log(Math.sqrt(d*d+1)-d),m=y-g,v=(m||Math.log(u/a))/qo;return n.duration=1e3*v,n},Qa.behavior.zoom=function(){function t(t){t.on(B,c).on(Vo+".zoom",h).on(C,f).on("dblclick.zoom",p).on(S,l)}function e(t){return[(t[0]-w.x)/w.k,(t[1]-w.y)/w.k]}function n(t){return[t[0]*w.k+w.x,t[1]*w.k+w.y]}function r(t){w.k=Math.max(D[0],Math.min(D[1],t))}function i(t,e){e=n(e),w.x+=t[0]-e[0],w.y+=t[1]-e[1]}function a(){x&&x.domain(v.range().map(function(t){return(t-w.x)/w.k}).map(v.invert)),_&&_.domain(b.range().map(function(t){return(t-w.y)/w.k}).map(b.invert))}function o(t){t({type:"zoomstart"})}function s(t){a(),t({type:"zoom",scale:w.k,translate:[w.x,w.y]})}function u(t){t({type:"zoomend"})}function c(){function t(){l=1,i(Qa.mouse(r),p),s(c)}function n(){h.on(C,io===r?f:null).on(T,null),d(l&&Qa.event.target===a),u(c)}var r=this,a=Qa.event.target,c=M.of(r,arguments),l=0,h=Qa.select(io).on(C,t).on(T,n),p=e(Qa.mouse(r)),d=W();$.call(r),o(c)}function l(){function t(){var t=Qa.touches(p);return f=w.k,t.forEach(function(t){t.identifier in g&&(g[t.identifier]=e(t))}),t}function n(){var e=Qa.event.target;Qa.select(e).on(x,a).on(b,h),_.push(e);for(var n=Qa.event.changedTouches,o=0,u=n.length;u>o;++o)g[n[o].identifier]=null;var c=t(),l=Date.now();if(1===c.length){if(500>l-m){var f=c[0],p=g[f.identifier];r(2*w.k),i(f,p),A(),s(d)}m=l}else if(c.length>1){var f=c[0],v=c[1],k=f[0]-v[0],E=f[1]-v[1];y=k*k+E*E}}function a(){for(var t,e,n,a,o=Qa.touches(p),u=0,c=o.length;c>u;++u,a=null)if(n=o[u],a=g[n.identifier]){if(e)break;t=n,e=a}if(a){var l=(l=n[0]-t[0])*l+(l=n[1]-t[1])*l,h=y&&Math.sqrt(l/y);t=[(t[0]+n[0])/2,(t[1]+n[1])/2],e=[(e[0]+a[0])/2,(e[1]+a[1])/2],r(h*f)}m=null,i(t,e),s(d)}function h(){if(Qa.event.touches.length){for(var e=Qa.event.changedTouches,n=0,r=e.length;r>n;++n)delete g[e[n].identifier];for(var i in g)return void t()}Qa.selectAll(_).on(v,null),k.on(B,c).on(S,l),E(),u(d)}var f,p=this,d=M.of(p,arguments),g={},y=0,v=".zoom-"+Qa.event.changedTouches[0].identifier,x="touchmove"+v,b="touchend"+v,_=[],k=Qa.select(p).on(B,null).on(S,n),E=W();$.call(p),n(),o(d)}function h(){var t=M.of(this,arguments);y?clearTimeout(y):($.call(this),o(t)),y=setTimeout(function(){y=null,u(t)},50),A();var n=g||Qa.mouse(this);d||(d=e(n)),r(Math.pow(2,.002*Yo())*w.k),i(n,d),s(t)}function f(){d=null}function p(){var t=M.of(this,arguments),n=Qa.mouse(this),a=e(n),c=Math.log(w.k)/Math.LN2;o(t),r(Math.pow(2,Qa.event.shiftKey?Math.ceil(c)-1:Math.floor(c)+1)),i(n,a),s(t),u(t)}var d,g,y,m,v,x,b,_,w={x:0,y:0,k:1},k=[960,500],D=Uo,B="mousedown.zoom",C="mousemove.zoom",T="mouseup.zoom",S="touchstart.zoom",M=E(t,"zoomstart","zoom","zoomend");return t.event=function(t){t.each(function(){var t=M.of(this,arguments),e=w;Lu?Qa.select(this).transition().each("start.zoom",function(){w=this.__chart__||{x:0,y:0,k:1},o(t)}).tween("zoom:zoom",function(){var n=k[0],r=k[1],i=n/2,a=r/2,o=Qa.interpolateZoom([(i-w.x)/w.k,(a-w.y)/w.k,n/w.k],[(i-e.x)/e.k,(a-e.y)/e.k,n/e.k]);return function(e){var r=o(e),u=n/r[2];this.__chart__=w={x:i-r[0]*u,y:a-r[1]*u,k:u},s(t)}}).each("end.zoom",function(){u(t)}):(this.__chart__=w,o(t),s(t),u(t))})},t.translate=function(e){return arguments.length?(w={x:+e[0],y:+e[1],k:w.k},a(),t):[w.x,w.y]},t.scale=function(e){return arguments.length?(w={x:w.x,y:w.y,k:+e},a(),t):w.k},t.scaleExtent=function(e){return arguments.length?(D=null==e?Uo:[+e[0],+e[1]],t):D},t.center=function(e){return arguments.length?(g=e&&[+e[0],+e[1]],t):g},t.size=function(e){return arguments.length?(k=e&&[+e[0],+e[1]],t):k},t.x=function(e){return arguments.length?(x=e,v=e.copy(),w={x:0,y:0,k:1},t):x},t.y=function(e){return arguments.length?(_=e,b=e.copy(),w={x:0,y:0,k:1},t):_},Qa.rebind(t,M,"on")};var Yo,Uo=[0,1/0],Vo="onwheel"in no?(Yo=function(){return-Qa.event.deltaY*(Qa.event.deltaMode?120:1)},"wheel"):"onmousewheel"in no?(Yo=function(){return Qa.event.wheelDelta},"mousewheel"):(Yo=function(){return-Qa.event.detail},"MozMousePixelScroll");st.prototype.toString=function(){return this.rgb()+""},Qa.hsl=function(t,e,n){return 1===arguments.length?t instanceof ct?ut(t.h,t.s,t.l):Dt(""+t,Bt,ut):ut(+t,+e,+n)};var $o=ct.prototype=new st;$o.brighter=function(t){return t=Math.pow(.7,arguments.length?t:1),ut(this.h,this.s,this.l/t)},$o.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),ut(this.h,this.s,t*this.l)},$o.rgb=function(){return lt(this.h,this.s,this.l)},Qa.hcl=function(t,e,n){return 1===arguments.length?t instanceof ft?ht(t.h,t.c,t.l):t instanceof gt?mt(t.l,t.a,t.b):mt((t=Ct((t=Qa.rgb(t)).r,t.g,t.b)).l,t.a,t.b):ht(+t,+e,+n)};var zo=ft.prototype=new st;zo.brighter=function(t){return ht(this.h,this.c,Math.min(100,this.l+Ho*(arguments.length?t:1)))},zo.darker=function(t){return ht(this.h,this.c,Math.max(0,this.l-Ho*(arguments.length?t:1)))},zo.rgb=function(){return pt(this.h,this.c,this.l).rgb()},Qa.lab=function(t,e,n){return 1===arguments.length?t instanceof gt?dt(t.l,t.a,t.b):t instanceof ft?pt(t.l,t.c,t.h):Ct((t=Qa.rgb(t)).r,t.g,t.b):dt(+t,+e,+n)};var Ho=18,Go=.95047,Wo=1,Zo=1.08883,Xo=gt.prototype=new st;Xo.brighter=function(t){return dt(Math.min(100,this.l+Ho*(arguments.length?t:1)),this.a,this.b)},Xo.darker=function(t){return dt(Math.max(0,this.l-Ho*(arguments.length?t:1)),this.a,this.b)},Xo.rgb=function(){return yt(this.l,this.a,this.b)},Qa.rgb=function(t,e,n){return 1===arguments.length?t instanceof kt?At(t.r,t.g,t.b):Dt(""+t,At,lt):At(~~t,~~e,~~n)};var Ko=kt.prototype=new st;Ko.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,n=this.g,r=this.b,i=30;return e||n||r?(e&&i>e&&(e=i),n&&i>n&&(n=i),r&&i>r&&(r=i),At(Math.min(255,~~(e/t)),Math.min(255,~~(n/t)),Math.min(255,~~(r/t)))):At(i,i,i)},Ko.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),At(~~(t*this.r),~~(t*this.g),~~(t*this.b))},Ko.hsl=function(){return Bt(this.r,this.g,this.b)},Ko.toString=function(){return"#"+Et(this.r)+Et(this.g)+Et(this.b)};var Jo=Qa.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Jo.forEach(function(t,e){Jo.set(t,_t(e))}),Qa.functor=Mt,Qa.xhr=Lt(Ft),Qa.dsv=function(t,e){function n(t,n,a){arguments.length<3&&(a=n,n=null);var o=Ot(t,e,null==n?r:i(n),a);return o.row=function(t){return arguments.length?o.response(null==(n=t)?r:i(t)):n},o}function r(t){return n.parse(t.responseText)}function i(t){return function(e){return n.parse(e.responseText,t)}}function a(e){return e.map(o).join(t)}function o(t){return s.test(t)?'"'+t.replace(/\"/g,'""')+'"':t}var s=new RegExp('["'+t+"\n]"),u=t.charCodeAt(0);return n.parse=function(t,e){var r;return n.parseRows(t,function(t,n){if(r)return r(t,n-1);
  var i=new Function("d","return {"+t.map(function(t,e){return JSON.stringify(t)+": d["+e+"]"}).join(",")+"}");r=e?function(t,n){return e(i(t),n)}:i})},n.parseRows=function(t,e){function n(){if(l>=c)return o;if(i)return i=!1,a;var e=l;if(34===t.charCodeAt(e)){for(var n=e;n++<c;)if(34===t.charCodeAt(n)){if(34!==t.charCodeAt(n+1))break;++n}l=n+2;var r=t.charCodeAt(n+1);return 13===r?(i=!0,10===t.charCodeAt(n+2)&&++l):10===r&&(i=!0),t.substring(e+1,n).replace(/""/g,'"')}for(;c>l;){var r=t.charCodeAt(l++),s=1;if(10===r)i=!0;else if(13===r)i=!0,10===t.charCodeAt(l)&&(++l,++s);else if(r!==u)continue;return t.substring(e,l-s)}return t.substring(e)}for(var r,i,a={},o={},s=[],c=t.length,l=0,h=0;(r=n())!==o;){for(var f=[];r!==a&&r!==o;)f.push(r),r=n();(!e||(f=e(f,h++)))&&s.push(f)}return s},n.format=function(e){if(Array.isArray(e[0]))return n.formatRows(e);var r=new m,i=[];return e.forEach(function(t){for(var e in t)r.has(e)||i.push(r.add(e))}),[i.map(o).join(t)].concat(e.map(function(e){return i.map(function(t){return o(e[t])}).join(t)})).join("\n")},n.formatRows=function(t){return t.map(a).join("\n")},n},Qa.csv=Qa.dsv(",","text/csv"),Qa.tsv=Qa.dsv("	","text/tab-separated-values"),Qa.touch=function(t,e,n){if(arguments.length<3&&(n=e,e=k().changedTouches),e)for(var r,i=0,a=e.length;a>i;++i)if((r=e[i]).identifier===n)return Z(t,r)};var Qo,ts,es,ns,rs,is=io[x(io,"requestAnimationFrame")]||function(t){setTimeout(t,17)};Qa.timer=function(t,e,n){var r=arguments.length;2>r&&(e=0),3>r&&(n=Date.now());var i=n+e,a={c:t,t:i,f:!1,n:null};ts?ts.n=a:Qo=a,ts=a,es||(ns=clearTimeout(ns),es=1,is(It))},Qa.timer.flush=function(){Rt(),qt()},Qa.round=function(t,e){return e?Math.round(t*(e=Math.pow(10,e)))/e:Math.round(t)};var as=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"].map(jt);Qa.formatPrefix=function(t,e){var n=0;return t&&(0>t&&(t*=-1),e&&(t=Qa.round(t,Pt(t,e))),n=1+Math.floor(1e-12+Math.log(t)/Math.LN10),n=Math.max(-24,Math.min(24,3*Math.floor((n-1)/3)))),as[8+n/3]};var os=/(?:([^{])?([<>=^]))?([+\- ])?([$#])?(0)?(\d+)?(,)?(\.-?\d+)?([a-z%])?/i,ss=Qa.map({b:function(t){return t.toString(2)},c:function(t){return String.fromCharCode(t)},o:function(t){return t.toString(8)},x:function(t){return t.toString(16)},X:function(t){return t.toString(16).toUpperCase()},g:function(t,e){return t.toPrecision(e)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},r:function(t,e){return(t=Qa.round(t,Pt(t,e))).toFixed(Math.max(0,Math.min(20,Pt(t*(1+1e-15),e))))}}),us=Qa.time={},cs=Date;Vt.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){ls.setUTCDate.apply(this._,arguments)},setDay:function(){ls.setUTCDay.apply(this._,arguments)},setFullYear:function(){ls.setUTCFullYear.apply(this._,arguments)},setHours:function(){ls.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){ls.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){ls.setUTCMinutes.apply(this._,arguments)},setMonth:function(){ls.setUTCMonth.apply(this._,arguments)},setSeconds:function(){ls.setUTCSeconds.apply(this._,arguments)},setTime:function(){ls.setTime.apply(this._,arguments)}};var ls=Date.prototype;us.year=$t(function(t){return t=us.day(t),t.setMonth(0,1),t},function(t,e){t.setFullYear(t.getFullYear()+e)},function(t){return t.getFullYear()}),us.years=us.year.range,us.years.utc=us.year.utc.range,us.day=$t(function(t){var e=new cs(2e3,0);return e.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),e},function(t,e){t.setDate(t.getDate()+e)},function(t){return t.getDate()-1}),us.days=us.day.range,us.days.utc=us.day.utc.range,us.dayOfYear=function(t){var e=us.year(t);return Math.floor((t-e-6e4*(t.getTimezoneOffset()-e.getTimezoneOffset()))/864e5)},["sunday","monday","tuesday","wednesday","thursday","friday","saturday"].forEach(function(t,e){e=7-e;var n=us[t]=$t(function(t){return(t=us.day(t)).setDate(t.getDate()-(t.getDay()+e)%7),t},function(t,e){t.setDate(t.getDate()+7*Math.floor(e))},function(t){var n=us.year(t).getDay();return Math.floor((us.dayOfYear(t)+(n+e)%7)/7)-(n!==e)});us[t+"s"]=n.range,us[t+"s"].utc=n.utc.range,us[t+"OfYear"]=function(t){var n=us.year(t).getDay();return Math.floor((us.dayOfYear(t)+(n+e)%7)/7)}}),us.week=us.sunday,us.weeks=us.sunday.range,us.weeks.utc=us.sunday.utc.range,us.weekOfYear=us.sundayOfYear;var hs={"-":"",_:" ",0:"0"},fs=/^\s*\d+/,ps=/^%/;Qa.locale=function(t){return{numberFormat:Yt(t),timeFormat:Ht(t)}};var ds=Qa.locale({decimal:".",thousands:",",grouping:[3],currency:["$",""],dateTime:"%a %b %e %X %Y",date:"%m/%d/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});Qa.format=ds.numberFormat,Qa.geo={},pe.prototype={s:0,t:0,add:function(t){de(t,this.t,gs),de(gs.s,this.s,this),this.s?this.t+=gs.t:this.s=gs.t},reset:function(){this.s=this.t=0},valueOf:function(){return this.s}};var gs=new pe;Qa.geo.stream=function(t,e){t&&ys.hasOwnProperty(t.type)?ys[t.type](t,e):ge(t,e)};var ys={Feature:function(t,e){ge(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r<i;)ge(n[r].geometry,e)}},ms={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates,e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)t=n[r],e.point(t[0],t[1],t[2])},LineString:function(t,e){ye(t.coordinates,e,0)},MultiLineString:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)ye(n[r],e,0)},Polygon:function(t,e){me(t.coordinates,e)},MultiPolygon:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)me(n[r],e)},GeometryCollection:function(t,e){for(var n=t.geometries,r=-1,i=n.length;++r<i;)ge(n[r],e)}};Qa.geo.area=function(t){return vs=0,Qa.geo.stream(t,bs),vs};var vs,xs=new pe,bs={sphere:function(){vs+=4*Mo},point:b,lineStart:b,lineEnd:b,polygonStart:function(){xs.reset(),bs.lineStart=ve},polygonEnd:function(){var t=2*xs;vs+=0>t?4*Mo+t:t,bs.lineStart=bs.lineEnd=bs.point=b}};Qa.geo.bounds=function(){function t(t,e){x.push(b=[l=t,f=t]),h>e&&(h=e),e>p&&(p=e)}function e(e,n){var r=xe([e*Io,n*Io]);if(m){var i=_e(m,r),a=[i[1],-i[0],0],o=_e(a,i);ke(o),o=Ee(o);var u=e-d,c=u>0?1:-1,g=o[0]*Ro*c,y=po(u)>180;if(y^(g>c*d&&c*e>g)){var v=o[1]*Ro;v>p&&(p=v)}else if(g=(g+360)%360-180,y^(g>c*d&&c*e>g)){var v=-o[1]*Ro;h>v&&(h=v)}else h>n&&(h=n),n>p&&(p=n);y?d>e?s(l,e)>s(l,f)&&(f=e):s(e,f)>s(l,f)&&(l=e):f>=l?(l>e&&(l=e),e>f&&(f=e)):e>d?s(l,e)>s(l,f)&&(f=e):s(e,f)>s(l,f)&&(l=e)}else t(e,n);m=r,d=e}function n(){_.point=e}function r(){b[0]=l,b[1]=f,_.point=t,m=null}function i(t,n){if(m){var r=t-d;v+=po(r)>180?r+(r>0?360:-360):r}else g=t,y=n;bs.point(t,n),e(t,n)}function a(){bs.lineStart()}function o(){i(g,y),bs.lineEnd(),po(v)>Oo&&(l=-(f=180)),b[0]=l,b[1]=f,m=null}function s(t,e){return(e-=t)<0?e+360:e}function u(t,e){return t[0]-e[0]}function c(t,e){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t<e[0]||e[1]<t}var l,h,f,p,d,g,y,m,v,x,b,_={point:t,lineStart:n,lineEnd:r,polygonStart:function(){_.point=i,_.lineStart=a,_.lineEnd=o,v=0,bs.polygonStart()},polygonEnd:function(){bs.polygonEnd(),_.point=t,_.lineStart=n,_.lineEnd=r,0>xs?(l=-(f=180),h=-(p=90)):v>Oo?p=90:-Oo>v&&(h=-90),b[0]=l,b[1]=f}};return function(t){p=f=-(l=h=1/0),x=[],Qa.geo.stream(t,_);var e=x.length;if(e){x.sort(u);for(var n,r=1,i=x[0],a=[i];e>r;++r)n=x[r],c(n[0],i)||c(n[1],i)?(s(i[0],n[1])>s(i[0],i[1])&&(i[1]=n[1]),s(n[0],i[1])>s(i[0],i[1])&&(i[0]=n[0])):a.push(i=n);for(var o,n,d=-(1/0),e=a.length-1,r=0,i=a[e];e>=r;i=n,++r)n=a[r],(o=s(i[1],n[0]))>d&&(d=o,l=n[0],f=i[1])}return x=b=null,l===1/0||h===1/0?[[NaN,NaN],[NaN,NaN]]:[[l,h],[f,p]]}}(),Qa.geo.centroid=function(t){_s=ws=As=ks=Es=Ds=Bs=Cs=Ts=Ss=Ms=0,Qa.geo.stream(t,Fs);var e=Ts,n=Ss,r=Ms,i=e*e+n*n+r*r;return No>i&&(e=Ds,n=Bs,r=Cs,Oo>ws&&(e=As,n=ks,r=Es),i=e*e+n*n+r*r,No>i)?[NaN,NaN]:[Math.atan2(n,e)*Ro,nt(r/Math.sqrt(i))*Ro]};var _s,ws,As,ks,Es,Ds,Bs,Cs,Ts,Ss,Ms,Fs={sphere:b,point:Be,lineStart:Te,lineEnd:Se,polygonStart:function(){Fs.lineStart=Me},polygonEnd:function(){Fs.lineStart=Te}},Ls=Ie(Fe,Ye,Ve,[-Mo,-Mo/2]),Os=1e9;Qa.geo.clipExtent=function(){var t,e,n,r,i,a,o={stream:function(t){return i&&(i.valid=!1),i=a(t),i.valid=!0,i},extent:function(s){return arguments.length?(a=He(t=+s[0][0],e=+s[0][1],n=+s[1][0],r=+s[1][1]),i&&(i.valid=!1,i=null),o):[[t,e],[n,r]]}};return o.extent([[0,0],[960,500]])},(Qa.geo.conicEqualArea=function(){return We(Ze)}).raw=Ze,Qa.geo.albers=function(){return Qa.geo.conicEqualArea().rotate([96,0]).center([-.6,38.7]).parallels([29.5,45.5]).scale(1070)},Qa.geo.albersUsa=function(){function t(t){var a=t[0],o=t[1];return e=null,n(a,o),e||(r(a,o),e)||i(a,o),e}var e,n,r,i,a=Qa.geo.albers(),o=Qa.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),s=Qa.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),u={point:function(t,n){e=[t,n]}};return t.invert=function(t){var e=a.scale(),n=a.translate(),r=(t[0]-n[0])/e,i=(t[1]-n[1])/e;return(i>=.12&&.234>i&&r>=-.425&&-.214>r?o:i>=.166&&.234>i&&r>=-.214&&-.115>r?s:a).invert(t)},t.stream=function(t){var e=a.stream(t),n=o.stream(t),r=s.stream(t);return{point:function(t,i){e.point(t,i),n.point(t,i),r.point(t,i)},sphere:function(){e.sphere(),n.sphere(),r.sphere()},lineStart:function(){e.lineStart(),n.lineStart(),r.lineStart()},lineEnd:function(){e.lineEnd(),n.lineEnd(),r.lineEnd()},polygonStart:function(){e.polygonStart(),n.polygonStart(),r.polygonStart()},polygonEnd:function(){e.polygonEnd(),n.polygonEnd(),r.polygonEnd()}}},t.precision=function(e){return arguments.length?(a.precision(e),o.precision(e),s.precision(e),t):a.precision()},t.scale=function(e){return arguments.length?(a.scale(e),o.scale(.35*e),s.scale(e),t.translate(a.translate())):a.scale()},t.translate=function(e){if(!arguments.length)return a.translate();var c=a.scale(),l=+e[0],h=+e[1];return n=a.translate(e).clipExtent([[l-.455*c,h-.238*c],[l+.455*c,h+.238*c]]).stream(u).point,r=o.translate([l-.307*c,h+.201*c]).clipExtent([[l-.425*c+Oo,h+.12*c+Oo],[l-.214*c-Oo,h+.234*c-Oo]]).stream(u).point,i=s.translate([l-.205*c,h+.212*c]).clipExtent([[l-.214*c+Oo,h+.166*c+Oo],[l-.115*c-Oo,h+.234*c-Oo]]).stream(u).point,t},t.scale(1070)};var Ns,Is,Rs,qs,Ps,js,Ys={point:b,lineStart:b,lineEnd:b,polygonStart:function(){Is=0,Ys.lineStart=Xe},polygonEnd:function(){Ys.lineStart=Ys.lineEnd=Ys.point=b,Ns+=po(Is/2)}},Us={point:Ke,lineStart:b,lineEnd:b,polygonStart:b,polygonEnd:b},Vs={point:tn,lineStart:en,lineEnd:nn,polygonStart:function(){Vs.lineStart=rn},polygonEnd:function(){Vs.point=tn,Vs.lineStart=en,Vs.lineEnd=nn}};Qa.geo.path=function(){function t(t){return t&&("function"==typeof s&&a.pointRadius(+s.apply(this,arguments)),o&&o.valid||(o=i(a)),Qa.geo.stream(t,o)),a.result()}function e(){return o=null,t}var n,r,i,a,o,s=4.5;return t.area=function(t){return Ns=0,Qa.geo.stream(t,i(Ys)),Ns},t.centroid=function(t){return As=ks=Es=Ds=Bs=Cs=Ts=Ss=Ms=0,Qa.geo.stream(t,i(Vs)),Ms?[Ts/Ms,Ss/Ms]:Cs?[Ds/Cs,Bs/Cs]:Es?[As/Es,ks/Es]:[NaN,NaN]},t.bounds=function(t){return Ps=js=-(Rs=qs=1/0),Qa.geo.stream(t,i(Us)),[[Rs,qs],[Ps,js]]},t.projection=function(t){return arguments.length?(i=(n=t)?t.stream||sn(t):Ft,e()):n},t.context=function(t){return arguments.length?(a=null==(r=t)?new Je:new an(t),"function"!=typeof s&&a.pointRadius(s),e()):r},t.pointRadius=function(e){return arguments.length?(s="function"==typeof e?e:(a.pointRadius(+e),+e),t):s},t.projection(Qa.geo.albersUsa()).context(null)},Qa.geo.transform=function(t){return{stream:function(e){var n=new un(e);for(var r in t)n[r]=t[r];return n}}},un.prototype={point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}},Qa.geo.projection=ln,Qa.geo.projectionMutator=hn,(Qa.geo.equirectangular=function(){return ln(pn)}).raw=pn.invert=pn,Qa.geo.rotation=function(t){function e(e){return e=t(e[0]*Io,e[1]*Io),e[0]*=Ro,e[1]*=Ro,e}return t=gn(t[0]%360*Io,t[1]*Io,t.length>2?t[2]*Io:0),e.invert=function(e){return e=t.invert(e[0]*Io,e[1]*Io),e[0]*=Ro,e[1]*=Ro,e},e},dn.invert=pn,Qa.geo.circle=function(){function t(){var t="function"==typeof r?r.apply(this,arguments):r,e=gn(-t[0]*Io,-t[1]*Io,0).invert,i=[];return n(null,null,1,{point:function(t,n){i.push(t=e(t,n)),t[0]*=Ro,t[1]*=Ro}}),{type:"Polygon",coordinates:[i]}}var e,n,r=[0,0],i=6;return t.origin=function(e){return arguments.length?(r=e,t):r},t.angle=function(r){return arguments.length?(n=xn((e=+r)*Io,i*Io),t):e},t.precision=function(r){return arguments.length?(n=xn(e*Io,(i=+r)*Io),t):i},t.angle(90)},Qa.geo.distance=function(t,e){var n,r=(e[0]-t[0])*Io,i=t[1]*Io,a=e[1]*Io,o=Math.sin(r),s=Math.cos(r),u=Math.sin(i),c=Math.cos(i),l=Math.sin(a),h=Math.cos(a);return Math.atan2(Math.sqrt((n=h*o)*n+(n=c*l-u*h*s)*n),u*l+c*h*s)},Qa.geo.graticule=function(){function t(){return{type:"MultiLineString",coordinates:e()}}function e(){return Qa.range(Math.ceil(a/y)*y,i,y).map(f).concat(Qa.range(Math.ceil(c/m)*m,u,m).map(p)).concat(Qa.range(Math.ceil(r/d)*d,n,d).filter(function(t){return po(t%y)>Oo}).map(l)).concat(Qa.range(Math.ceil(s/g)*g,o,g).filter(function(t){return po(t%m)>Oo}).map(h))}var n,r,i,a,o,s,u,c,l,h,f,p,d=10,g=d,y=90,m=360,v=2.5;return t.lines=function(){return e().map(function(t){return{type:"LineString",coordinates:t}})},t.outline=function(){return{type:"Polygon",coordinates:[f(a).concat(p(u).slice(1),f(i).reverse().slice(1),p(c).reverse().slice(1))]}},t.extent=function(e){return arguments.length?t.majorExtent(e).minorExtent(e):t.minorExtent()},t.majorExtent=function(e){return arguments.length?(a=+e[0][0],i=+e[1][0],c=+e[0][1],u=+e[1][1],a>i&&(e=a,a=i,i=e),c>u&&(e=c,c=u,u=e),t.precision(v)):[[a,c],[i,u]]},t.minorExtent=function(e){return arguments.length?(r=+e[0][0],n=+e[1][0],s=+e[0][1],o=+e[1][1],r>n&&(e=r,r=n,n=e),s>o&&(e=s,s=o,o=e),t.precision(v)):[[r,s],[n,o]]},t.step=function(e){return arguments.length?t.majorStep(e).minorStep(e):t.minorStep()},t.majorStep=function(e){return arguments.length?(y=+e[0],m=+e[1],t):[y,m]},t.minorStep=function(e){return arguments.length?(d=+e[0],g=+e[1],t):[d,g]},t.precision=function(e){return arguments.length?(v=+e,l=_n(s,o,90),h=wn(r,n,v),f=_n(c,u,90),p=wn(a,i,v),t):v},t.majorExtent([[-180,-90+Oo],[180,90-Oo]]).minorExtent([[-180,-80-Oo],[180,80+Oo]])},Qa.geo.greatArc=function(){function t(){return{type:"LineString",coordinates:[e||r.apply(this,arguments),n||i.apply(this,arguments)]}}var e,n,r=An,i=kn;return t.distance=function(){return Qa.geo.distance(e||r.apply(this,arguments),n||i.apply(this,arguments))},t.source=function(n){return arguments.length?(r=n,e="function"==typeof n?null:n,t):r},t.target=function(e){return arguments.length?(i=e,n="function"==typeof e?null:e,t):i},t.precision=function(){return arguments.length?t:0},t},Qa.geo.interpolate=function(t,e){return En(t[0]*Io,t[1]*Io,e[0]*Io,e[1]*Io)},Qa.geo.length=function(t){return $s=0,Qa.geo.stream(t,zs),$s};var $s,zs={sphere:b,point:b,lineStart:Dn,lineEnd:b,polygonStart:b,polygonEnd:b},Hs=Bn(function(t){return Math.sqrt(2/(1+t))},function(t){return 2*Math.asin(t/2)});(Qa.geo.azimuthalEqualArea=function(){return ln(Hs)}).raw=Hs;var Gs=Bn(function(t){var e=Math.acos(t);return e&&e/Math.sin(e)},Ft);(Qa.geo.azimuthalEquidistant=function(){return ln(Gs)}).raw=Gs,(Qa.geo.conicConformal=function(){return We(Cn)}).raw=Cn,(Qa.geo.conicEquidistant=function(){return We(Tn)}).raw=Tn;var Ws=Bn(function(t){return 1/t},Math.atan);(Qa.geo.gnomonic=function(){return ln(Ws)}).raw=Ws,Sn.invert=function(t,e){return[t,2*Math.atan(Math.exp(e))-Lo]},(Qa.geo.mercator=function(){return Mn(Sn)}).raw=Sn;var Zs=Bn(function(){return 1},Math.asin);(Qa.geo.orthographic=function(){return ln(Zs)}).raw=Zs;var Xs=Bn(function(t){return 1/(1+t)},function(t){return 2*Math.atan(t)});(Qa.geo.stereographic=function(){return ln(Xs)}).raw=Xs,Fn.invert=function(t,e){return[-e,2*Math.atan(Math.exp(t))-Lo]},(Qa.geo.transverseMercator=function(){var t=Mn(Fn),e=t.center,n=t.rotate;return t.center=function(t){return t?e([-t[1],t[0]]):(t=e(),[-t[1],t[0]])},t.rotate=function(t){return t?n([t[0],t[1],t.length>2?t[2]+90:90]):(t=n(),[t[0],t[1],t[2]-90])},t.rotate([0,0])}).raw=Fn,Qa.geom={},Qa.geom.hull=function(t){function e(t){if(t.length<3)return[];var e,i=Mt(n),a=Mt(r),o=t.length,s=[],u=[];for(e=0;o>e;e++)s.push([+i.call(this,t[e],e),+a.call(this,t[e],e),e]);for(s.sort(In),e=0;o>e;e++)u.push([s[e][0],-s[e][1]]);var c=Nn(s),l=Nn(u),h=l[0]===c[0],f=l[l.length-1]===c[c.length-1],p=[];for(e=c.length-1;e>=0;--e)p.push(t[s[c[e]][2]]);for(e=+h;e<l.length-f;++e)p.push(t[s[l[e]][2]]);return p}var n=Ln,r=On;return arguments.length?e(t):(e.x=function(t){return arguments.length?(n=t,e):n},e.y=function(t){return arguments.length?(r=t,e):r},e)},Qa.geom.polygon=function(t){return xo(t,Ks),t};var Ks=Qa.geom.polygon.prototype=[];Ks.area=function(){for(var t,e=-1,n=this.length,r=this[n-1],i=0;++e<n;)t=r,r=this[e],i+=t[1]*r[0]-t[0]*r[1];return.5*i},Ks.centroid=function(t){var e,n,r=-1,i=this.length,a=0,o=0,s=this[i-1];for(arguments.length||(t=-1/(6*this.area()));++r<i;)e=s,s=this[r],n=e[0]*s[1]-s[0]*e[1],a+=(e[0]+s[0])*n,o+=(e[1]+s[1])*n;return[a*t,o*t]},Ks.clip=function(t){for(var e,n,r,i,a,o,s=Pn(t),u=-1,c=this.length-Pn(this),l=this[c-1];++u<c;){for(e=t.slice(),t.length=0,i=this[u],a=e[(r=e.length-s)-1],n=-1;++n<r;)o=e[n],Rn(o,l,i)?(Rn(a,l,i)||t.push(qn(a,o,l,i)),t.push(o)):Rn(a,l,i)&&t.push(qn(a,o,l,i)),a=o;s&&t.push(t[0]),l=i}return t};var Js,Qs,tu,eu,nu,ru=[],iu=[];Gn.prototype.prepare=function(){for(var t,e=this.edges,n=e.length;n--;)t=e[n].edge,t.b&&t.a||e.splice(n,1);return e.sort(Zn),e.length},ar.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}},or.prototype={insert:function(t,e){var n,r,i;if(t){if(e.P=t,e.N=t.N,t.N&&(t.N.P=e),t.N=e,t.R){for(t=t.R;t.L;)t=t.L;t.L=e}else t.R=e;n=t}else this._?(t=lr(this._),e.P=null,e.N=t,t.P=t.L=e,n=t):(e.P=e.N=null,this._=e,n=null);for(e.L=e.R=null,e.U=n,e.C=!0,t=e;n&&n.C;)r=n.U,n===r.L?(i=r.R,i&&i.C?(n.C=i.C=!1,r.C=!0,t=r):(t===n.R&&(ur(this,n),t=n,n=t.U),n.C=!1,r.C=!0,cr(this,r))):(i=r.L,i&&i.C?(n.C=i.C=!1,r.C=!0,t=r):(t===n.L&&(cr(this,n),t=n,n=t.U),n.C=!1,r.C=!0,ur(this,r))),n=t.U;this._.C=!1},remove:function(t){t.N&&(t.N.P=t.P),t.P&&(t.P.N=t.N),t.N=t.P=null;var e,n,r,i=t.U,a=t.L,o=t.R;if(n=a?o?lr(o):a:o,i?i.L===t?i.L=n:i.R=n:this._=n,a&&o?(r=n.C,n.C=t.C,n.L=a,a.U=n,n!==o?(i=n.U,n.U=t.U,t=n.R,i.L=t,n.R=o,o.U=n):(n.U=i,i=n,t=n.R)):(r=t.C,t=n),t&&(t.U=i),!r){if(t&&t.C)return void(t.C=!1);do{if(t===this._)break;if(t===i.L){if(e=i.R,e.C&&(e.C=!1,i.C=!0,ur(this,i),e=i.R),e.L&&e.L.C||e.R&&e.R.C){e.R&&e.R.C||(e.L.C=!1,e.C=!0,cr(this,e),e=i.R),e.C=i.C,i.C=e.R.C=!1,ur(this,i),t=this._;break}}else if(e=i.L,e.C&&(e.C=!1,i.C=!0,cr(this,i),e=i.L),e.L&&e.L.C||e.R&&e.R.C){e.L&&e.L.C||(e.R.C=!1,e.C=!0,ur(this,e),e=i.L),e.C=i.C,i.C=e.L.C=!1,cr(this,i),t=this._;break}e.C=!0,t=i,i=i.U}while(!t.C);t&&(t.C=!1)}}},Qa.geom.voronoi=function(t){function e(t){var e=new Array(t.length),r=s[0][0],i=s[0][1],a=s[1][0],o=s[1][1];return hr(n(t),s).cells.forEach(function(n,s){var u=n.edges,c=n.site,l=e[s]=u.length?u.map(function(t){var e=t.start();return[e.x,e.y]}):c.x>=r&&c.x<=a&&c.y>=i&&c.y<=o?[[r,o],[a,o],[a,i],[r,i]]:[];l.point=t[s]}),e}function n(t){return t.map(function(t,e){return{x:Math.round(a(t,e)/Oo)*Oo,y:Math.round(o(t,e)/Oo)*Oo,i:e}})}var r=Ln,i=On,a=r,o=i,s=au;return t?e(t):(e.links=function(t){return hr(n(t)).edges.filter(function(t){return t.l&&t.r}).map(function(e){return{source:t[e.l.i],target:t[e.r.i]}})},e.triangles=function(t){var e=[];return hr(n(t)).cells.forEach(function(n,r){for(var i,a,o=n.site,s=n.edges.sort(Zn),u=-1,c=s.length,l=s[c-1].edge,h=l.l===o?l.r:l.l;++u<c;)i=l,a=h,l=s[u].edge,h=l.l===o?l.r:l.l,r<a.i&&r<h.i&&pr(o,a,h)<0&&e.push([t[r],t[a.i],t[h.i]])}),e},e.x=function(t){return arguments.length?(a=Mt(r=t),e):r},e.y=function(t){return arguments.length?(o=Mt(i=t),e):i},e.clipExtent=function(t){return arguments.length?(s=null==t?au:t,e):s===au?null:s},e.size=function(t){return arguments.length?e.clipExtent(t&&[[0,0],t]):s===au?null:s&&s[1]},e)};var au=[[-1e6,-1e6],[1e6,1e6]];Qa.geom.delaunay=function(t){return Qa.geom.voronoi().triangles(t)},Qa.geom.quadtree=function(t,e,n,r,i){function a(t){function a(t,e,n,r,i,a,o,s){if(!isNaN(n)&&!isNaN(r))if(t.leaf){var u=t.x,l=t.y;if(null!=u)if(po(u-n)+po(l-r)<.01)c(t,e,n,r,i,a,o,s);else{var h=t.point;t.x=t.y=t.point=null,c(t,h,u,l,i,a,o,s),c(t,e,n,r,i,a,o,s)}else t.x=n,t.y=r,t.point=e}else c(t,e,n,r,i,a,o,s)}function c(t,e,n,r,i,o,s,u){var c=.5*(i+s),l=.5*(o+u),h=n>=c,f=r>=l,p=(f<<1)+h;t.leaf=!1,t=t.nodes[p]||(t.nodes[p]=yr()),h?i=c:s=c,f?o=l:u=l,a(t,e,n,r,i,o,s,u)}var l,h,f,p,d,g,y,m,v,x=Mt(s),b=Mt(u);if(null!=e)g=e,y=n,m=r,v=i;else if(m=v=-(g=y=1/0),h=[],f=[],d=t.length,o)for(p=0;d>p;++p)l=t[p],l.x<g&&(g=l.x),l.y<y&&(y=l.y),l.x>m&&(m=l.x),l.y>v&&(v=l.y),h.push(l.x),f.push(l.y);else for(p=0;d>p;++p){var _=+x(l=t[p],p),w=+b(l,p);g>_&&(g=_),y>w&&(y=w),_>m&&(m=_),w>v&&(v=w),h.push(_),f.push(w)}var A=m-g,k=v-y;A>k?v=y+A:m=g+k;var E=yr();if(E.add=function(t){a(E,t,+x(t,++p),+b(t,p),g,y,m,v)},E.visit=function(t){mr(t,E,g,y,m,v)},p=-1,null==e){for(;++p<d;)a(E,t[p],h[p],f[p],g,y,m,v);--p}else t.forEach(E.add);return h=f=t=l=null,E}var o,s=Ln,u=On;return(o=arguments.length)?(s=dr,u=gr,3===o&&(i=n,r=e,n=e=0),a(t)):(a.x=function(t){return arguments.length?(s=t,a):s},a.y=function(t){return arguments.length?(u=t,a):u},a.extent=function(t){return arguments.length?(null==t?e=n=r=i=null:(e=+t[0][0],n=+t[0][1],r=+t[1][0],i=+t[1][1]),a):null==e?null:[[e,n],[r,i]]},a.size=function(t){return arguments.length?(null==t?e=n=r=i=null:(e=n=0,r=+t[0],i=+t[1]),a):null==e?null:[r-e,i-n]},a)},Qa.interpolateRgb=vr,Qa.interpolateObject=xr,Qa.interpolateNumber=br,Qa.interpolateString=_r;var ou=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,su=new RegExp(ou.source,"g");Qa.interpolate=wr,Qa.interpolators=[function(t,e){var n=typeof e;return("string"===n?Jo.has(e)||/^(#|rgb\(|hsl\()/.test(e)?vr:_r:e instanceof st?vr:Array.isArray(e)?Ar:"object"===n&&isNaN(e)?xr:br)(t,e)}],Qa.interpolateArray=Ar;var uu=function(){return Ft},cu=Qa.map({linear:uu,poly:Sr,quad:function(){return Br},cubic:function(){return Cr},sin:function(){return Mr},exp:function(){return Fr},circle:function(){return Lr},elastic:Or,back:Nr,bounce:function(){return Ir}}),lu=Qa.map({"in":Ft,out:Er,"in-out":Dr,"out-in":function(t){return Dr(Er(t))}});Qa.ease=function(t){var e=t.indexOf("-"),n=e>=0?t.substring(0,e):t,r=e>=0?t.substring(e+1):"in";return n=cu.get(n)||uu,r=lu.get(r)||Ft,kr(r(n.apply(null,to.call(arguments,1))))},Qa.interpolateHcl=Rr,Qa.interpolateHsl=qr,Qa.interpolateLab=Pr,Qa.interpolateRound=jr,Qa.transform=function(t){var e=no.createElementNS(Qa.ns.prefix.svg,"g");return(Qa.transform=function(t){if(null!=t){e.setAttribute("transform",t);var n=e.transform.baseVal.consolidate()}return new Yr(n?n.matrix:hu)})(t)},Yr.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var hu={a:1,b:0,c:0,d:1,e:0,f:0};Qa.interpolateTransform=zr,Qa.layout={},Qa.layout.bundle=function(){return function(t){for(var e=[],n=-1,r=t.length;++n<r;)e.push(Wr(t[n]));return e}},Qa.layout.chord=function(){function t(){var t,c,h,f,p,d={},g=[],y=Qa.range(a),m=[];for(n=[],r=[],t=0,f=-1;++f<a;){for(c=0,p=-1;++p<a;)c+=i[f][p];g.push(c),m.push(Qa.range(a)),t+=c}for(o&&y.sort(function(t,e){return o(g[t],g[e])}),s&&m.forEach(function(t,e){t.sort(function(t,n){return s(i[e][t],i[e][n])})}),t=(Fo-l*a)/t,c=0,f=-1;++f<a;){for(h=c,p=-1;++p<a;){var v=y[f],x=m[v][p],b=i[v][x],_=c,w=c+=b*t;d[v+"-"+x]={index:v,subindex:x,startAngle:_,endAngle:w,value:b}}r[v]={index:v,startAngle:h,endAngle:c,value:(c-h)/t},c+=l}for(f=-1;++f<a;)for(p=f-1;++p<a;){var A=d[f+"-"+p],k=d[p+"-"+f];(A.value||k.value)&&n.push(A.value<k.value?{source:k,target:A}:{source:A,target:k})}u&&e()}function e(){n.sort(function(t,e){return u((t.source.value+t.target.value)/2,(e.source.value+e.target.value)/2)})}var n,r,i,a,o,s,u,c={},l=0;return c.matrix=function(t){return arguments.length?(a=(i=t)&&i.length,n=r=null,c):i},c.padding=function(t){return arguments.length?(l=t,n=r=null,c):l},c.sortGroups=function(t){return arguments.length?(o=t,n=r=null,c):o},c.sortSubgroups=function(t){return arguments.length?(s=t,n=null,c):s},c.sortChords=function(t){return arguments.length?(u=t,n&&e(),c):u},c.chords=function(){return n||t(),n},c.groups=function(){return r||t(),r},c},Qa.layout.force=function(){function t(t){return function(e,n,r,i){if(e.point!==t){var a=e.cx-t.x,o=e.cy-t.y,s=i-n,u=a*a+o*o;if(u>s*s/y){if(d>u){var c=e.charge/u;t.px-=a*c,t.py-=o*c}return!0}if(e.point&&u&&d>u){var c=e.pointCharge/u;t.px-=a*c,t.py-=o*c}}return!e.charge}}function e(t){t.px=Qa.event.x,t.py=Qa.event.y,s.resume()}var n,r,i,a,o,s={},u=Qa.dispatch("start","tick","end"),c=[1,1],l=.9,h=fu,f=pu,p=-30,d=du,g=.1,y=.64,m=[],v=[];return s.tick=function(){if((r*=.99)<.005)return u.end({type:"end",alpha:r=0}),!0;var e,n,s,h,f,d,y,x,b,_=m.length,w=v.length;for(n=0;w>n;++n)s=v[n],h=s.source,f=s.target,x=f.x-h.x,b=f.y-h.y,(d=x*x+b*b)&&(d=r*a[n]*((d=Math.sqrt(d))-i[n])/d,x*=d,b*=d,f.x-=x*(y=h.weight/(f.weight+h.weight)),f.y-=b*y,h.x+=x*(y=1-y),h.y+=b*y);if((y=r*g)&&(x=c[0]/2,b=c[1]/2,n=-1,y))for(;++n<_;)s=m[n],s.x+=(x-s.x)*y,s.y+=(b-s.y)*y;if(p)for(ei(e=Qa.geom.quadtree(m),r,o),n=-1;++n<_;)(s=m[n]).fixed||e.visit(t(s));for(n=-1;++n<_;)s=m[n],s.fixed?(s.x=s.px,s.y=s.py):(s.x-=(s.px-(s.px=s.x))*l,s.y-=(s.py-(s.py=s.y))*l);u.tick({type:"tick",alpha:r})},s.nodes=function(t){return arguments.length?(m=t,s):m},s.links=function(t){return arguments.length?(v=t,s):v},s.size=function(t){return arguments.length?(c=t,s):c},s.linkDistance=function(t){return arguments.length?(h="function"==typeof t?t:+t,s):h},s.distance=s.linkDistance,s.linkStrength=function(t){return arguments.length?(f="function"==typeof t?t:+t,s):f},s.friction=function(t){return arguments.length?(l=+t,s):l},s.charge=function(t){return arguments.length?(p="function"==typeof t?t:+t,s):p},s.chargeDistance=function(t){return arguments.length?(d=t*t,s):Math.sqrt(d)},s.gravity=function(t){return arguments.length?(g=+t,s):g},s.theta=function(t){return arguments.length?(y=t*t,s):Math.sqrt(y)},s.alpha=function(t){return arguments.length?(t=+t,r?r=t>0?t:0:t>0&&(u.start({type:"start",alpha:r=t}),Qa.timer(s.tick)),s):r},s.start=function(){function t(t,r){if(!n){for(n=new Array(u),s=0;u>s;++s)n[s]=[];for(s=0;c>s;++s){var i=v[s];n[i.source.index].push(i.target),n[i.target.index].push(i.source)}}for(var a,o=n[e],s=-1,c=o.length;++s<c;)if(!isNaN(a=o[s][t]))return a;return Math.random()*r}var e,n,r,u=m.length,l=v.length,d=c[0],g=c[1];for(e=0;u>e;++e)(r=m[e]).index=e,r.weight=0;for(e=0;l>e;++e)r=v[e],"number"==typeof r.source&&(r.source=m[r.source]),"number"==typeof r.target&&(r.target=m[r.target]),++r.source.weight,++r.target.weight;for(e=0;u>e;++e)r=m[e],isNaN(r.x)&&(r.x=t("x",d)),isNaN(r.y)&&(r.y=t("y",g)),isNaN(r.px)&&(r.px=r.x),isNaN(r.py)&&(r.py=r.y);if(i=[],"function"==typeof h)for(e=0;l>e;++e)i[e]=+h.call(this,v[e],e);else for(e=0;l>e;++e)i[e]=h;if(a=[],"function"==typeof f)for(e=0;l>e;++e)a[e]=+f.call(this,v[e],e);else for(e=0;l>e;++e)a[e]=f;if(o=[],"function"==typeof p)for(e=0;u>e;++e)o[e]=+p.call(this,m[e],e);else for(e=0;u>e;++e)o[e]=p;return s.resume()},s.resume=function(){return s.alpha(.1)},s.stop=function(){return s.alpha(0)},s.drag=function(){return n||(n=Qa.behavior.drag().origin(Ft).on("dragstart.force",Kr).on("drag.force",e).on("dragend.force",Jr)),arguments.length?void this.on("mouseover.force",Qr).on("mouseout.force",ti).call(n):n},Qa.rebind(s,u,"on")};var fu=20,pu=1,du=1/0;Qa.layout.hierarchy=function(){function t(i){var a,o=[i],s=[];for(i.depth=0;null!=(a=o.pop());)if(s.push(a),(c=n.call(t,a,a.depth))&&(u=c.length)){for(var u,c,l;--u>=0;)o.push(l=c[u]),l.parent=a,l.depth=a.depth+1;r&&(a.value=0),a.children=c}else r&&(a.value=+r.call(t,a,a.depth)||0),delete a.children;return ii(i,function(t){var n,i;e&&(n=t.children)&&n.sort(e),r&&(i=t.parent)&&(i.value+=t.value)}),s}var e=si,n=ai,r=oi;return t.sort=function(n){return arguments.length?(e=n,t):e},t.children=function(e){return arguments.length?(n=e,t):n},t.value=function(e){return arguments.length?(r=e,t):r},t.revalue=function(e){return r&&(ri(e,function(t){t.children&&(t.value=0)}),ii(e,function(e){var n;e.children||(e.value=+r.call(t,e,e.depth)||0),(n=e.parent)&&(n.value+=e.value)})),e},t},Qa.layout.partition=function(){function t(e,n,r,i){var a=e.children;if(e.x=n,e.y=e.depth*i,e.dx=r,e.dy=i,a&&(o=a.length)){var o,s,u,c=-1;for(r=e.value?r/e.value:0;++c<o;)t(s=a[c],n,u=s.value*r,i),n+=u}}function e(t){var n=t.children,r=0;if(n&&(i=n.length))for(var i,a=-1;++a<i;)r=Math.max(r,e(n[a]));return 1+r}function n(n,a){var o=r.call(this,n,a);return t(o[0],0,i[0],i[1]/e(o[0])),o}var r=Qa.layout.hierarchy(),i=[1,1];return n.size=function(t){return arguments.length?(i=t,n):i},ni(n,r)},Qa.layout.pie=function(){function t(a){var o=a.map(function(n,r){return+e.call(t,n,r)}),s=+("function"==typeof r?r.apply(this,arguments):r),u=(("function"==typeof i?i.apply(this,arguments):i)-s)/Qa.sum(o),c=Qa.range(a.length);null!=n&&c.sort(n===gu?function(t,e){return o[e]-o[t]}:function(t,e){return n(a[t],a[e])});var l=[];return c.forEach(function(t){var e;l[t]={data:a[t],value:e=o[t],startAngle:s,endAngle:s+=e*u}}),l}var e=Number,n=gu,r=0,i=Fo;return t.value=function(n){return arguments.length?(e=n,t):e},t.sort=function(e){return arguments.length?(n=e,t):n},t.startAngle=function(e){return arguments.length?(r=e,t):r},t.endAngle=function(e){return arguments.length?(i=e,t):i},t};var gu={};Qa.layout.stack=function(){function t(s,u){var c=s.map(function(n,r){return e.call(t,n,r)}),l=c.map(function(e){return e.map(function(e,n){return[a.call(t,e,n),o.call(t,e,n)]})}),h=n.call(t,l,u);c=Qa.permute(c,h),l=Qa.permute(l,h);var f,p,d,g=r.call(t,l,u),y=c.length,m=c[0].length;for(p=0;m>p;++p)for(i.call(t,c[0][p],d=g[p],l[0][p][1]),f=1;y>f;++f)i.call(t,c[f][p],d+=l[f-1][p][1],l[f][p][1]);return s}var e=Ft,n=fi,r=pi,i=hi,a=ci,o=li;return t.values=function(n){return arguments.length?(e=n,t):e},t.order=function(e){return arguments.length?(n="function"==typeof e?e:yu.get(e)||fi,t):n},t.offset=function(e){return arguments.length?(r="function"==typeof e?e:mu.get(e)||pi,t):r},t.x=function(e){return arguments.length?(a=e,t):a},t.y=function(e){return arguments.length?(o=e,t):o},t.out=function(e){return arguments.length?(i=e,t):i},t};var yu=Qa.map({"inside-out":function(t){var e,n,r=t.length,i=t.map(di),a=t.map(gi),o=Qa.range(r).sort(function(t,e){return i[t]-i[e]}),s=0,u=0,c=[],l=[];for(e=0;r>e;++e)n=o[e],u>s?(s+=a[n],c.push(n)):(u+=a[n],l.push(n));return l.reverse().concat(c)},reverse:function(t){return Qa.range(t.length).reverse()},"default":fi}),mu=Qa.map({silhouette:function(t){var e,n,r,i=t.length,a=t[0].length,o=[],s=0,u=[];for(n=0;a>n;++n){for(e=0,r=0;i>e;e++)r+=t[e][n][1];r>s&&(s=r),o.push(r)}for(n=0;a>n;++n)u[n]=(s-o[n])/2;return u},wiggle:function(t){var e,n,r,i,a,o,s,u,c,l=t.length,h=t[0],f=h.length,p=[];for(p[0]=u=c=0,n=1;f>n;++n){for(e=0,i=0;l>e;++e)i+=t[e][n][1];for(e=0,
  a=0,s=h[n][0]-h[n-1][0];l>e;++e){for(r=0,o=(t[e][n][1]-t[e][n-1][1])/(2*s);e>r;++r)o+=(t[r][n][1]-t[r][n-1][1])/s;a+=o*t[e][n][1]}p[n]=u-=i?a/i*s:0,c>u&&(c=u)}for(n=0;f>n;++n)p[n]-=c;return p},expand:function(t){var e,n,r,i=t.length,a=t[0].length,o=1/i,s=[];for(n=0;a>n;++n){for(e=0,r=0;i>e;e++)r+=t[e][n][1];if(r)for(e=0;i>e;e++)t[e][n][1]/=r;else for(e=0;i>e;e++)t[e][n][1]=o}for(n=0;a>n;++n)s[n]=0;return s},zero:pi});Qa.layout.histogram=function(){function t(t,a){for(var o,s,u=[],c=t.map(n,this),l=r.call(this,c,a),h=i.call(this,l,c,a),a=-1,f=c.length,p=h.length-1,d=e?1:1/f;++a<p;)o=u[a]=[],o.dx=h[a+1]-(o.x=h[a]),o.y=0;if(p>0)for(a=-1;++a<f;)s=c[a],s>=l[0]&&s<=l[1]&&(o=u[Qa.bisect(h,s,1,p)-1],o.y+=d,o.push(t[a]));return u}var e=!0,n=Number,r=xi,i=mi;return t.value=function(e){return arguments.length?(n=e,t):n},t.range=function(e){return arguments.length?(r=Mt(e),t):r},t.bins=function(e){return arguments.length?(i="number"==typeof e?function(t){return vi(t,e)}:Mt(e),t):i},t.frequency=function(n){return arguments.length?(e=!!n,t):e},t},Qa.layout.pack=function(){function t(t,a){var o=n.call(this,t,a),s=o[0],u=i[0],c=i[1],l=null==e?Math.sqrt:"function"==typeof e?e:function(){return e};if(s.x=s.y=0,ii(s,function(t){t.r=+l(t.value)}),ii(s,ki),r){var h=r*(e?1:Math.max(2*s.r/u,2*s.r/c))/2;ii(s,function(t){t.r+=h}),ii(s,ki),ii(s,function(t){t.r-=h})}return Bi(s,u/2,c/2,e?1:1/Math.max(2*s.r/u,2*s.r/c)),o}var e,n=Qa.layout.hierarchy().sort(bi),r=0,i=[1,1];return t.size=function(e){return arguments.length?(i=e,t):i},t.radius=function(n){return arguments.length?(e=null==n||"function"==typeof n?n:+n,t):e},t.padding=function(e){return arguments.length?(r=+e,t):r},ni(t,n)},Qa.layout.tree=function(){function t(t,i){var l=o.call(this,t,i),h=l[0],f=e(h);if(ii(f,n),f.parent.m=-f.z,ri(f,r),c)ri(h,a);else{var p=h,d=h,g=h;ri(h,function(t){t.x<p.x&&(p=t),t.x>d.x&&(d=t),t.depth>g.depth&&(g=t)});var y=s(p,d)/2-p.x,m=u[0]/(d.x+s(d,p)/2+y),v=u[1]/(g.depth||1);ri(h,function(t){t.x=(t.x+y)*m,t.y=t.depth*v})}return l}function e(t){for(var e,n={A:null,children:[t]},r=[n];null!=(e=r.pop());)for(var i,a=e.children,o=0,s=a.length;s>o;++o)r.push((a[o]=i={_:a[o],parent:e,children:(i=a[o].children)&&i.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:o}).a=i);return n.children[0]}function n(t){var e=t.children,n=t.parent.children,r=t.i?n[t.i-1]:null;if(e.length){Li(t);var a=(e[0].z+e[e.length-1].z)/2;r?(t.z=r.z+s(t._,r._),t.m=t.z-a):t.z=a}else r&&(t.z=r.z+s(t._,r._));t.parent.A=i(t,r,t.parent.A||n[0])}function r(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function i(t,e,n){if(e){for(var r,i=t,a=t,o=e,u=i.parent.children[0],c=i.m,l=a.m,h=o.m,f=u.m;o=Mi(o),i=Si(i),o&&i;)u=Si(u),a=Mi(a),a.a=t,r=o.z+h-i.z-c+s(o._,i._),r>0&&(Fi(Oi(o,t,n),t,r),c+=r,l+=r),h+=o.m,c+=i.m,f+=u.m,l+=a.m;o&&!Mi(a)&&(a.t=o,a.m+=h-l),i&&!Si(u)&&(u.t=i,u.m+=c-f,n=t)}return n}function a(t){t.x*=u[0],t.y=t.depth*u[1]}var o=Qa.layout.hierarchy().sort(null).value(null),s=Ti,u=[1,1],c=null;return t.separation=function(e){return arguments.length?(s=e,t):s},t.size=function(e){return arguments.length?(c=null==(u=e)?a:null,t):c?null:u},t.nodeSize=function(e){return arguments.length?(c=null==(u=e)?null:a,t):c?u:null},ni(t,o)},Qa.layout.cluster=function(){function t(t,a){var o,s=e.call(this,t,a),u=s[0],c=0;ii(u,function(t){var e=t.children;e&&e.length?(t.x=Ii(e),t.y=Ni(e)):(t.x=o?c+=n(t,o):0,t.y=0,o=t)});var l=Ri(u),h=qi(u),f=l.x-n(l,h)/2,p=h.x+n(h,l)/2;return ii(u,i?function(t){t.x=(t.x-u.x)*r[0],t.y=(u.y-t.y)*r[1]}:function(t){t.x=(t.x-f)/(p-f)*r[0],t.y=(1-(u.y?t.y/u.y:1))*r[1]}),s}var e=Qa.layout.hierarchy().sort(null).value(null),n=Ti,r=[1,1],i=!1;return t.separation=function(e){return arguments.length?(n=e,t):n},t.size=function(e){return arguments.length?(i=null==(r=e),t):i?null:r},t.nodeSize=function(e){return arguments.length?(i=null!=(r=e),t):i?r:null},ni(t,e)},Qa.layout.treemap=function(){function t(t,e){for(var n,r,i=-1,a=t.length;++i<a;)r=(n=t[i]).value*(0>e?0:e),n.area=isNaN(r)||0>=r?0:r}function e(n){var a=n.children;if(a&&a.length){var o,s,u,c=h(n),l=[],f=a.slice(),d=1/0,g="slice"===p?c.dx:"dice"===p?c.dy:"slice-dice"===p?1&n.depth?c.dy:c.dx:Math.min(c.dx,c.dy);for(t(f,c.dx*c.dy/n.value),l.area=0;(u=f.length)>0;)l.push(o=f[u-1]),l.area+=o.area,"squarify"!==p||(s=r(l,g))<=d?(f.pop(),d=s):(l.area-=l.pop().area,i(l,g,c,!1),g=Math.min(c.dx,c.dy),l.length=l.area=0,d=1/0);l.length&&(i(l,g,c,!0),l.length=l.area=0),a.forEach(e)}}function n(e){var r=e.children;if(r&&r.length){var a,o=h(e),s=r.slice(),u=[];for(t(s,o.dx*o.dy/e.value),u.area=0;a=s.pop();)u.push(a),u.area+=a.area,null!=a.z&&(i(u,a.z?o.dx:o.dy,o,!s.length),u.length=u.area=0);r.forEach(n)}}function r(t,e){for(var n,r=t.area,i=0,a=1/0,o=-1,s=t.length;++o<s;)(n=t[o].area)&&(a>n&&(a=n),n>i&&(i=n));return r*=r,e*=e,r?Math.max(e*i*d/r,r/(e*a*d)):1/0}function i(t,e,n,r){var i,a=-1,o=t.length,s=n.x,c=n.y,l=e?u(t.area/e):0;if(e==n.dx){for((r||l>n.dy)&&(l=n.dy);++a<o;)i=t[a],i.x=s,i.y=c,i.dy=l,s+=i.dx=Math.min(n.x+n.dx-s,l?u(i.area/l):0);i.z=!0,i.dx+=n.x+n.dx-s,n.y+=l,n.dy-=l}else{for((r||l>n.dx)&&(l=n.dx);++a<o;)i=t[a],i.x=s,i.y=c,i.dx=l,c+=i.dy=Math.min(n.y+n.dy-c,l?u(i.area/l):0);i.z=!1,i.dy+=n.y+n.dy-c,n.x+=l,n.dx-=l}}function a(r){var i=o||s(r),a=i[0];return a.x=0,a.y=0,a.dx=c[0],a.dy=c[1],o&&s.revalue(a),t([a],a.dx*a.dy/a.value),(o?n:e)(a),f&&(o=i),i}var o,s=Qa.layout.hierarchy(),u=Math.round,c=[1,1],l=null,h=Pi,f=!1,p="squarify",d=.5*(1+Math.sqrt(5));return a.size=function(t){return arguments.length?(c=t,a):c},a.padding=function(t){function e(e){var n=t.call(a,e,e.depth);return null==n?Pi(e):ji(e,"number"==typeof n?[n,n,n,n]:n)}function n(e){return ji(e,t)}if(!arguments.length)return l;var r;return h=null==(l=t)?Pi:"function"==(r=typeof t)?e:"number"===r?(t=[t,t,t,t],n):n,a},a.round=function(t){return arguments.length?(u=t?Math.round:Number,a):u!=Number},a.sticky=function(t){return arguments.length?(f=t,o=null,a):f},a.ratio=function(t){return arguments.length?(d=t,a):d},a.mode=function(t){return arguments.length?(p=t+"",a):p},ni(a,s)},Qa.random={normal:function(t,e){var n=arguments.length;return 2>n&&(e=1),1>n&&(t=0),function(){var n,r,i;do n=2*Math.random()-1,r=2*Math.random()-1,i=n*n+r*r;while(!i||i>1);return t+e*n*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var t=Qa.random.normal.apply(Qa,arguments);return function(){return Math.exp(t())}},bates:function(t){var e=Qa.random.irwinHall(t);return function(){return e()/t}},irwinHall:function(t){return function(){for(var e=0,n=0;t>n;n++)e+=Math.random();return e}}},Qa.scale={};var vu={floor:Ft,ceil:Ft};Qa.scale.linear=function(){return Gi([0,1],[0,1],wr,!1)};var xu={s:1,g:1,p:1,r:1,e:1};Qa.scale.log=function(){return ea(Qa.scale.linear().domain([0,1]),10,!0,[1,10])};var bu=Qa.format(".0e"),_u={floor:function(t){return-Math.ceil(-t)},ceil:function(t){return-Math.floor(-t)}};Qa.scale.pow=function(){return na(Qa.scale.linear(),1,[0,1])},Qa.scale.sqrt=function(){return Qa.scale.pow().exponent(.5)},Qa.scale.ordinal=function(){return ia([],{t:"range",a:[[]]})},Qa.scale.category10=function(){return Qa.scale.ordinal().range(wu)},Qa.scale.category20=function(){return Qa.scale.ordinal().range(Au)},Qa.scale.category20b=function(){return Qa.scale.ordinal().range(ku)},Qa.scale.category20c=function(){return Qa.scale.ordinal().range(Eu)};var wu=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(wt),Au=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(wt),ku=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(wt),Eu=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(wt);Qa.scale.quantile=function(){return aa([],[])},Qa.scale.quantize=function(){return oa(0,1,[0,1])},Qa.scale.threshold=function(){return sa([.5],[0,1])},Qa.scale.identity=function(){return ua([0,1])},Qa.svg={},Qa.svg.arc=function(){function t(){var t=e.apply(this,arguments),a=n.apply(this,arguments),o=r.apply(this,arguments)+Du,s=i.apply(this,arguments)+Du,u=(o>s&&(u=o,o=s,s=u),s-o),c=Mo>u?"0":"1",l=Math.cos(o),h=Math.sin(o),f=Math.cos(s),p=Math.sin(s);return u>=Bu?t?"M0,"+a+"A"+a+","+a+" 0 1,1 0,"+-a+"A"+a+","+a+" 0 1,1 0,"+a+"M0,"+t+"A"+t+","+t+" 0 1,0 0,"+-t+"A"+t+","+t+" 0 1,0 0,"+t+"Z":"M0,"+a+"A"+a+","+a+" 0 1,1 0,"+-a+"A"+a+","+a+" 0 1,1 0,"+a+"Z":t?"M"+a*l+","+a*h+"A"+a+","+a+" 0 "+c+",1 "+a*f+","+a*p+"L"+t*f+","+t*p+"A"+t+","+t+" 0 "+c+",0 "+t*l+","+t*h+"Z":"M"+a*l+","+a*h+"A"+a+","+a+" 0 "+c+",1 "+a*f+","+a*p+"L0,0Z"}var e=ca,n=la,r=ha,i=fa;return t.innerRadius=function(n){return arguments.length?(e=Mt(n),t):e},t.outerRadius=function(e){return arguments.length?(n=Mt(e),t):n},t.startAngle=function(e){return arguments.length?(r=Mt(e),t):r},t.endAngle=function(e){return arguments.length?(i=Mt(e),t):i},t.centroid=function(){var t=(e.apply(this,arguments)+n.apply(this,arguments))/2,a=(r.apply(this,arguments)+i.apply(this,arguments))/2+Du;return[Math.cos(a)*t,Math.sin(a)*t]},t};var Du=-Lo,Bu=Fo-Oo;Qa.svg.line=function(){return pa(Ft)};var Cu=Qa.map({linear:da,"linear-closed":ga,step:ya,"step-before":ma,"step-after":va,basis:ka,"basis-open":Ea,"basis-closed":Da,bundle:Ba,cardinal:_a,"cardinal-open":xa,"cardinal-closed":ba,monotone:La});Cu.forEach(function(t,e){e.key=t,e.closed=/-closed$/.test(t)});var Tu=[0,2/3,1/3,0],Su=[0,1/3,2/3,0],Mu=[0,1/6,2/3,1/6];Qa.svg.line.radial=function(){var t=pa(Oa);return t.radius=t.x,delete t.x,t.angle=t.y,delete t.y,t},ma.reverse=va,va.reverse=ma,Qa.svg.area=function(){return Na(Ft)},Qa.svg.area.radial=function(){var t=Na(Oa);return t.radius=t.x,delete t.x,t.innerRadius=t.x0,delete t.x0,t.outerRadius=t.x1,delete t.x1,t.angle=t.y,delete t.y,t.startAngle=t.y0,delete t.y0,t.endAngle=t.y1,delete t.y1,t},Qa.svg.chord=function(){function t(t,s){var u=e(this,a,t,s),c=e(this,o,t,s);return"M"+u.p0+r(u.r,u.p1,u.a1-u.a0)+(n(u,c)?i(u.r,u.p1,u.r,u.p0):i(u.r,u.p1,c.r,c.p0)+r(c.r,c.p1,c.a1-c.a0)+i(c.r,c.p1,u.r,u.p0))+"Z"}function e(t,e,n,r){var i=e.call(t,n,r),a=s.call(t,i,r),o=u.call(t,i,r)+Du,l=c.call(t,i,r)+Du;return{r:a,a0:o,a1:l,p0:[a*Math.cos(o),a*Math.sin(o)],p1:[a*Math.cos(l),a*Math.sin(l)]}}function n(t,e){return t.a0==e.a0&&t.a1==e.a1}function r(t,e,n){return"A"+t+","+t+" 0 "+ +(n>Mo)+",1 "+e}function i(t,e,n,r){return"Q 0,0 "+r}var a=An,o=kn,s=Ia,u=ha,c=fa;return t.radius=function(e){return arguments.length?(s=Mt(e),t):s},t.source=function(e){return arguments.length?(a=Mt(e),t):a},t.target=function(e){return arguments.length?(o=Mt(e),t):o},t.startAngle=function(e){return arguments.length?(u=Mt(e),t):u},t.endAngle=function(e){return arguments.length?(c=Mt(e),t):c},t},Qa.svg.diagonal=function(){function t(t,i){var a=e.call(this,t,i),o=n.call(this,t,i),s=(a.y+o.y)/2,u=[a,{x:a.x,y:s},{x:o.x,y:s},o];return u=u.map(r),"M"+u[0]+"C"+u[1]+" "+u[2]+" "+u[3]}var e=An,n=kn,r=Ra;return t.source=function(n){return arguments.length?(e=Mt(n),t):e},t.target=function(e){return arguments.length?(n=Mt(e),t):n},t.projection=function(e){return arguments.length?(r=e,t):r},t},Qa.svg.diagonal.radial=function(){var t=Qa.svg.diagonal(),e=Ra,n=t.projection;return t.projection=function(t){return arguments.length?n(qa(e=t)):e},t},Qa.svg.symbol=function(){function t(t,r){return(Fu.get(e.call(this,t,r))||Ya)(n.call(this,t,r))}var e=ja,n=Pa;return t.type=function(n){return arguments.length?(e=Mt(n),t):e},t.size=function(e){return arguments.length?(n=Mt(e),t):n},t};var Fu=Qa.map({circle:Ya,cross:function(t){var e=Math.sqrt(t/5)/2;return"M"+-3*e+","+-e+"H"+-e+"V"+-3*e+"H"+e+"V"+-e+"H"+3*e+"V"+e+"H"+e+"V"+3*e+"H"+-e+"V"+e+"H"+-3*e+"Z"},diamond:function(t){var e=Math.sqrt(t/(2*Iu)),n=e*Iu;return"M0,"+-e+"L"+n+",0 0,"+e+" "+-n+",0Z"},square:function(t){var e=Math.sqrt(t)/2;return"M"+-e+","+-e+"L"+e+","+-e+" "+e+","+e+" "+-e+","+e+"Z"},"triangle-down":function(t){var e=Math.sqrt(t/Nu),n=e*Nu/2;return"M0,"+n+"L"+e+","+-n+" "+-e+","+-n+"Z"},"triangle-up":function(t){var e=Math.sqrt(t/Nu),n=e*Nu/2;return"M0,"+-n+"L"+e+","+n+" "+-e+","+n+"Z"}});Qa.svg.symbolTypes=Fu.keys();var Lu,Ou,Nu=Math.sqrt(3),Iu=Math.tan(30*Io),Ru=[],qu=0;Ru.call=ko.call,Ru.empty=ko.empty,Ru.node=ko.node,Ru.size=ko.size,Qa.transition=function(t){return arguments.length?Lu?t.transition():t:Bo.transition()},Qa.transition.prototype=Ru,Ru.select=function(t){var e,n,r,i=this.id,a=[];t=B(t);for(var o=-1,s=this.length;++o<s;){a.push(e=[]);for(var u=this[o],c=-1,l=u.length;++c<l;)(r=u[c])&&(n=t.call(r,r.__data__,c,o))?("__data__"in r&&(n.__data__=r.__data__),za(n,c,i,r.__transition__[i]),e.push(n)):e.push(null)}return Ua(a,i)},Ru.selectAll=function(t){var e,n,r,i,a,o=this.id,s=[];t=C(t);for(var u=-1,c=this.length;++u<c;)for(var l=this[u],h=-1,f=l.length;++h<f;)if(r=l[h]){a=r.__transition__[o],n=t.call(r,r.__data__,h,u),s.push(e=[]);for(var p=-1,d=n.length;++p<d;)(i=n[p])&&za(i,p,o,a),e.push(i)}return Ua(s,o)},Ru.filter=function(t){var e,n,r,i=[];"function"!=typeof t&&(t=P(t));for(var a=0,o=this.length;o>a;a++){i.push(e=[]);for(var n=this[a],s=0,u=n.length;u>s;s++)(r=n[s])&&t.call(r,r.__data__,s,a)&&e.push(r)}return Ua(i,this.id)},Ru.tween=function(t,e){var n=this.id;return arguments.length<2?this.node().__transition__[n].tween.get(t):Y(this,null==e?function(e){e.__transition__[n].tween.remove(t)}:function(r){r.__transition__[n].tween.set(t,e)})},Ru.attr=function(t,e){function n(){this.removeAttribute(s)}function r(){this.removeAttributeNS(s.space,s.local)}function i(t){return null==t?n:(t+="",function(){var e,n=this.getAttribute(s);return n!==t&&(e=o(n,t),function(t){this.setAttribute(s,e(t))})})}function a(t){return null==t?r:(t+="",function(){var e,n=this.getAttributeNS(s.space,s.local);return n!==t&&(e=o(n,t),function(t){this.setAttributeNS(s.space,s.local,e(t))})})}if(arguments.length<2){for(e in t)this.attr(e,t[e]);return this}var o="transform"==t?zr:wr,s=Qa.ns.qualify(t);return Va(this,"attr."+t,e,s.local?a:i)},Ru.attrTween=function(t,e){function n(t,n){var r=e.call(this,t,n,this.getAttribute(i));return r&&function(t){this.setAttribute(i,r(t))}}function r(t,n){var r=e.call(this,t,n,this.getAttributeNS(i.space,i.local));return r&&function(t){this.setAttributeNS(i.space,i.local,r(t))}}var i=Qa.ns.qualify(t);return this.tween("attr."+t,i.local?r:n)},Ru.style=function(t,e,n){function r(){this.style.removeProperty(t)}function i(e){return null==e?r:(e+="",function(){var r,i=io.getComputedStyle(this,null).getPropertyValue(t);return i!==e&&(r=wr(i,e),function(e){this.style.setProperty(t,r(e),n)})})}var a=arguments.length;if(3>a){if("string"!=typeof t){2>a&&(e="");for(n in t)this.style(n,t[n],e);return this}n=""}return Va(this,"style."+t,e,i)},Ru.styleTween=function(t,e,n){function r(r,i){var a=e.call(this,r,i,io.getComputedStyle(this,null).getPropertyValue(t));return a&&function(e){this.style.setProperty(t,a(e),n)}}return arguments.length<3&&(n=""),this.tween("style."+t,r)},Ru.text=function(t){return Va(this,"text",t,$a)},Ru.remove=function(){return this.each("end.transition",function(){var t;this.__transition__.count<2&&(t=this.parentNode)&&t.removeChild(this)})},Ru.ease=function(t){var e=this.id;return arguments.length<1?this.node().__transition__[e].ease:("function"!=typeof t&&(t=Qa.ease.apply(Qa,arguments)),Y(this,function(n){n.__transition__[e].ease=t}))},Ru.delay=function(t){var e=this.id;return arguments.length<1?this.node().__transition__[e].delay:Y(this,"function"==typeof t?function(n,r,i){n.__transition__[e].delay=+t.call(n,n.__data__,r,i)}:(t=+t,function(n){n.__transition__[e].delay=t}))},Ru.duration=function(t){var e=this.id;return arguments.length<1?this.node().__transition__[e].duration:Y(this,"function"==typeof t?function(n,r,i){n.__transition__[e].duration=Math.max(1,t.call(n,n.__data__,r,i))}:(t=Math.max(1,t),function(n){n.__transition__[e].duration=t}))},Ru.each=function(t,e){var n=this.id;if(arguments.length<2){var r=Ou,i=Lu;Lu=n,Y(this,function(e,r,i){Ou=e.__transition__[n],t.call(e,e.__data__,r,i)}),Ou=r,Lu=i}else Y(this,function(r){var i=r.__transition__[n];(i.event||(i.event=Qa.dispatch("start","end"))).on(t,e)});return this},Ru.transition=function(){for(var t,e,n,r,i=this.id,a=++qu,o=[],s=0,u=this.length;u>s;s++){o.push(t=[]);for(var e=this[s],c=0,l=e.length;l>c;c++)(n=e[c])&&(r=Object.create(n.__transition__[i]),r.delay+=r.duration,za(n,c,a,r)),t.push(n)}return Ua(o,a)},Qa.svg.axis=function(){function t(t){t.each(function(){var t,c=Qa.select(this),l=this.__chart__||n,h=this.__chart__=n.copy(),f=null==u?h.ticks?h.ticks.apply(h,s):h.domain():u,p=null==e?h.tickFormat?h.tickFormat.apply(h,s):Ft:e,d=c.selectAll(".tick").data(f,h),g=d.enter().insert("g",".domain").attr("class","tick").style("opacity",Oo),y=Qa.transition(d.exit()).style("opacity",Oo).remove(),m=Qa.transition(d.order()).style("opacity",1),v=Ui(h),x=c.selectAll(".domain").data([0]),b=(x.enter().append("path").attr("class","domain"),Qa.transition(x));g.append("line"),g.append("text");var _=g.select("line"),w=m.select("line"),A=d.select("text").text(p),k=g.select("text"),E=m.select("text");switch(r){case"bottom":t=Ha,_.attr("y2",i),k.attr("y",Math.max(i,0)+o),w.attr("x2",0).attr("y2",i),E.attr("x",0).attr("y",Math.max(i,0)+o),A.attr("dy",".71em").style("text-anchor","middle"),b.attr("d","M"+v[0]+","+a+"V0H"+v[1]+"V"+a);break;case"top":t=Ha,_.attr("y2",-i),k.attr("y",-(Math.max(i,0)+o)),w.attr("x2",0).attr("y2",-i),E.attr("x",0).attr("y",-(Math.max(i,0)+o)),A.attr("dy","0em").style("text-anchor","middle"),b.attr("d","M"+v[0]+","+-a+"V0H"+v[1]+"V"+-a);break;case"left":t=Ga,_.attr("x2",-i),k.attr("x",-(Math.max(i,0)+o)),w.attr("x2",-i).attr("y2",0),E.attr("x",-(Math.max(i,0)+o)).attr("y",0),A.attr("dy",".32em").style("text-anchor","end"),b.attr("d","M"+-a+","+v[0]+"H0V"+v[1]+"H"+-a);break;case"right":t=Ga,_.attr("x2",i),k.attr("x",Math.max(i,0)+o),w.attr("x2",i).attr("y2",0),E.attr("x",Math.max(i,0)+o).attr("y",0),A.attr("dy",".32em").style("text-anchor","start"),b.attr("d","M"+a+","+v[0]+"H0V"+v[1]+"H"+a)}if(h.rangeBand){var D=h,B=D.rangeBand()/2;l=h=function(t){return D(t)+B}}else l.rangeBand?l=h:y.call(t,h);g.call(t,l),m.call(t,h)})}var e,n=Qa.scale.linear(),r=Pu,i=6,a=6,o=3,s=[10],u=null;return t.scale=function(e){return arguments.length?(n=e,t):n},t.orient=function(e){return arguments.length?(r=e in ju?e+"":Pu,t):r},t.ticks=function(){return arguments.length?(s=arguments,t):s},t.tickValues=function(e){return arguments.length?(u=e,t):u},t.tickFormat=function(n){return arguments.length?(e=n,t):e},t.tickSize=function(e){var n=arguments.length;return n?(i=+e,a=+arguments[n-1],t):i},t.innerTickSize=function(e){return arguments.length?(i=+e,t):i},t.outerTickSize=function(e){return arguments.length?(a=+e,t):a},t.tickPadding=function(e){return arguments.length?(o=+e,t):o},t.tickSubdivide=function(){return arguments.length&&t},t};var Pu="bottom",ju={top:1,right:1,bottom:1,left:1};Qa.svg.brush=function(){function t(a){a.each(function(){var a=Qa.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",i).on("touchstart.brush",i),o=a.selectAll(".background").data([0]);o.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),a.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var s=a.selectAll(".resize").data(d,Ft);s.exit().remove(),s.enter().append("g").attr("class",function(t){return"resize "+t}).style("cursor",function(t){return Yu[t]}).append("rect").attr("x",function(t){return/[ew]$/.test(t)?-3:null}).attr("y",function(t){return/^[ns]/.test(t)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),s.style("display",t.empty()?"none":null);var l,h=Qa.transition(a),f=Qa.transition(o);u&&(l=Ui(u),f.attr("x",l[0]).attr("width",l[1]-l[0]),n(h)),c&&(l=Ui(c),f.attr("y",l[0]).attr("height",l[1]-l[0]),r(h)),e(h)})}function e(t){t.selectAll(".resize").attr("transform",function(t){return"translate("+l[+/e$/.test(t)]+","+h[+/^s/.test(t)]+")"})}function n(t){t.select(".extent").attr("x",l[0]),t.selectAll(".extent,.n>rect,.s>rect").attr("width",l[1]-l[0])}function r(t){t.select(".extent").attr("y",h[0]),t.selectAll(".extent,.e>rect,.w>rect").attr("height",h[1]-h[0])}function i(){function i(){32==Qa.event.keyCode&&(C||(v=null,S[0]-=l[1],S[1]-=h[1],C=2),A())}function d(){32==Qa.event.keyCode&&2==C&&(S[0]+=l[1],S[1]+=h[1],C=0,A())}function g(){var t=Qa.mouse(b),i=!1;x&&(t[0]+=x[0],t[1]+=x[1]),C||(Qa.event.altKey?(v||(v=[(l[0]+l[1])/2,(h[0]+h[1])/2]),S[0]=l[+(t[0]<v[0])],S[1]=h[+(t[1]<v[1])]):v=null),D&&y(t,u,0)&&(n(k),i=!0),B&&y(t,c,1)&&(r(k),i=!0),i&&(e(k),w({type:"brush",mode:C?"move":"resize"}))}function y(t,e,n){var r,i,s=Ui(e),u=s[0],c=s[1],d=S[n],g=n?h:l,y=g[1]-g[0];return C&&(u-=d,c-=y+d),r=(n?p:f)?Math.max(u,Math.min(c,t[n])):t[n],C?i=(r+=d)+y:(v&&(d=Math.max(u,Math.min(c,2*v[n]-r))),r>d?(i=r,r=d):i=d),g[0]!=r||g[1]!=i?(n?o=null:a=null,g[0]=r,g[1]=i,!0):void 0}function m(){g(),k.style("pointer-events","all").selectAll(".resize").style("display",t.empty()?"none":null),Qa.select("body").style("cursor",null),M.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),T(),w({type:"brushend"})}var v,x,b=this,_=Qa.select(Qa.event.target),w=s.of(b,arguments),k=Qa.select(b),E=_.datum(),D=!/^(n|s)$/.test(E)&&u,B=!/^(e|w)$/.test(E)&&c,C=_.classed("extent"),T=W(),S=Qa.mouse(b),M=Qa.select(io).on("keydown.brush",i).on("keyup.brush",d);if(Qa.event.changedTouches?M.on("touchmove.brush",g).on("touchend.brush",m):M.on("mousemove.brush",g).on("mouseup.brush",m),k.interrupt().selectAll("*").interrupt(),C)S[0]=l[0]-S[0],S[1]=h[0]-S[1];else if(E){var F=+/w$/.test(E),L=+/^n/.test(E);x=[l[1-F]-S[0],h[1-L]-S[1]],S[0]=l[F],S[1]=h[L]}else Qa.event.altKey&&(v=S.slice());k.style("pointer-events","none").selectAll(".resize").style("display",null),Qa.select("body").style("cursor",_.style("cursor")),w({type:"brushstart"}),g()}var a,o,s=E(t,"brushstart","brush","brushend"),u=null,c=null,l=[0,0],h=[0,0],f=!0,p=!0,d=Uu[0];return t.event=function(t){t.each(function(){var t=s.of(this,arguments),e={x:l,y:h,i:a,j:o},n=this.__chart__||e;this.__chart__=e,Lu?Qa.select(this).transition().each("start.brush",function(){a=n.i,o=n.j,l=n.x,h=n.y,t({type:"brushstart"})}).tween("brush:brush",function(){var n=Ar(l,e.x),r=Ar(h,e.y);return a=o=null,function(i){l=e.x=n(i),h=e.y=r(i),t({type:"brush",mode:"resize"})}}).each("end.brush",function(){a=e.i,o=e.j,t({type:"brush",mode:"resize"}),t({type:"brushend"})}):(t({type:"brushstart"}),t({type:"brush",mode:"resize"}),t({type:"brushend"}))})},t.x=function(e){return arguments.length?(u=e,d=Uu[!u<<1|!c],t):u},t.y=function(e){return arguments.length?(c=e,d=Uu[!u<<1|!c],t):c},t.clamp=function(e){return arguments.length?(u&&c?(f=!!e[0],p=!!e[1]):u?f=!!e:c&&(p=!!e),t):u&&c?[f,p]:u?f:c?p:null},t.extent=function(e){var n,r,i,s,f;return arguments.length?(u&&(n=e[0],r=e[1],c&&(n=n[0],r=r[0]),a=[n,r],u.invert&&(n=u(n),r=u(r)),n>r&&(f=n,n=r,r=f),(n!=l[0]||r!=l[1])&&(l=[n,r])),c&&(i=e[0],s=e[1],u&&(i=i[1],s=s[1]),o=[i,s],c.invert&&(i=c(i),s=c(s)),i>s&&(f=i,i=s,s=f),(i!=h[0]||s!=h[1])&&(h=[i,s])),t):(u&&(a?(n=a[0],r=a[1]):(n=l[0],r=l[1],u.invert&&(n=u.invert(n),r=u.invert(r)),n>r&&(f=n,n=r,r=f))),c&&(o?(i=o[0],s=o[1]):(i=h[0],s=h[1],c.invert&&(i=c.invert(i),s=c.invert(s)),i>s&&(f=i,i=s,s=f))),u&&c?[[n,i],[r,s]]:u?[n,r]:c&&[i,s])},t.clear=function(){return t.empty()||(l=[0,0],h=[0,0],a=o=null),t},t.empty=function(){return!!u&&l[0]==l[1]||!!c&&h[0]==h[1]},Qa.rebind(t,s,"on")};var Yu={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Uu=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]],Vu=us.format=ds.timeFormat,$u=Vu.utc,zu=$u("%Y-%m-%dT%H:%M:%S.%LZ");Vu.iso=Date.prototype.toISOString&&+new Date("2000-01-01T00:00:00.000Z")?Wa:zu,Wa.parse=function(t){var e=new Date(t);return isNaN(e)?null:e},Wa.toString=zu.toString,us.second=$t(function(t){return new cs(1e3*Math.floor(t/1e3))},function(t,e){t.setTime(t.getTime()+1e3*Math.floor(e))},function(t){return t.getSeconds()}),us.seconds=us.second.range,us.seconds.utc=us.second.utc.range,us.minute=$t(function(t){return new cs(6e4*Math.floor(t/6e4))},function(t,e){t.setTime(t.getTime()+6e4*Math.floor(e))},function(t){return t.getMinutes()}),us.minutes=us.minute.range,us.minutes.utc=us.minute.utc.range,us.hour=$t(function(t){var e=t.getTimezoneOffset()/60;return new cs(36e5*(Math.floor(t/36e5-e)+e))},function(t,e){t.setTime(t.getTime()+36e5*Math.floor(e))},function(t){return t.getHours()}),us.hours=us.hour.range,us.hours.utc=us.hour.utc.range,us.month=$t(function(t){return t=us.day(t),t.setDate(1),t},function(t,e){t.setMonth(t.getMonth()+e)},function(t){return t.getMonth()}),us.months=us.month.range,us.months.utc=us.month.utc.range;var Hu=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],Gu=[[us.second,1],[us.second,5],[us.second,15],[us.second,30],[us.minute,1],[us.minute,5],[us.minute,15],[us.minute,30],[us.hour,1],[us.hour,3],[us.hour,6],[us.hour,12],[us.day,1],[us.day,2],[us.week,1],[us.month,1],[us.month,3],[us.year,1]],Wu=Vu.multi([[".%L",function(t){return t.getMilliseconds()}],[":%S",function(t){return t.getSeconds()}],["%I:%M",function(t){return t.getMinutes()}],["%I %p",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()}],["%Y",Fe]]),Zu={range:function(t,e,n){return Qa.range(Math.ceil(t/n)*n,+e,n).map(Xa)},floor:Ft,ceil:Ft};Gu.year=us.year,us.scale=function(){return Za(Qa.scale.linear(),Gu,Wu)};var Xu=Gu.map(function(t){return[t[0].utc,t[1]]}),Ku=$u.multi([[".%L",function(t){return t.getUTCMilliseconds()}],[":%S",function(t){return t.getUTCSeconds()}],["%I:%M",function(t){return t.getUTCMinutes()}],["%I %p",function(t){return t.getUTCHours()}],["%a %d",function(t){return t.getUTCDay()&&1!=t.getUTCDate()}],["%b %d",function(t){return 1!=t.getUTCDate()}],["%B",function(t){return t.getUTCMonth()}],["%Y",Fe]]);Xu.year=us.year.utc,us.scale.utc=function(){return Za(Qa.scale.linear(),Xu,Ku)},Qa.text=Lt(function(t){return t.responseText}),Qa.json=function(t,e){return Ot(t,"application/json",Ka,e)},Qa.html=function(t,e){return Ot(t,"text/html",Ja,e)},Qa.xml=Lt(function(t){return t.responseXML}),r=Qa,i="function"==typeof r?r.call(e,n,e,t):r,!(void 0!==i&&(t.exports=i))}()},function(t,e,n){"use strict";function r(t){var e=new u({directed:!1}),n=t.nodes()[0],r=t.nodeCount();e.setNode(n,{});for(var s,l;i(e,t)<r;)s=a(e,t),l=e.hasNode(s.v)?c(t,s):-c(t,s),o(e,t,l);return e}function i(t,e){function n(r){s.each(e.nodeEdges(r),function(i){var a=i.v,o=r===a?i.w:a;t.hasNode(o)||c(e,i)||(t.setNode(o,{}),t.setEdge(r,o,{}),n(o))})}return s.each(t.nodes(),n),t.nodeCount()}function a(t,e){return s.min(e.edges(),function(n){return t.hasNode(n.v)!==t.hasNode(n.w)?c(e,n):void 0})}function o(t,e,n){s.each(t.nodes(),function(t){e.node(t).rank+=n})}var s=n(1),u=n(9).Graph,c=n(42).slack;t.exports=r},function(t,e,n){var r=n(78);t.exports={Graph:r.Graph,json:n(79),alg:n(73),version:r.version}},function(t,e,n){var r;(function(t,i){!function(a){var o="object"==typeof e&&e,s=("object"==typeof t&&t&&t.exports==o&&t,"object"==typeof i&&i);(s.global===s||s.window===s)&&(a=s);var u=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,c=/[\0-\x7F]/g,l=/[^\0-\x7F]/g,h=/<\u20D2|=\u20E5|>\u20D2|\u205F\u200A|\u219D\u0338|\u2202\u0338|\u2220\u20D2|\u2229\uFE00|\u222A\uFE00|\u223C\u20D2|\u223D\u0331|\u223E\u0333|\u2242\u0338|\u224B\u0338|\u224D\u20D2|\u224E\u0338|\u224F\u0338|\u2250\u0338|\u2261\u20E5|\u2264\u20D2|\u2265\u20D2|\u2266\u0338|\u2267\u0338|\u2268\uFE00|\u2269\uFE00|\u226A\u0338|\u226A\u20D2|\u226B\u0338|\u226B\u20D2|\u227F\u0338|\u2282\u20D2|\u2283\u20D2|\u228A\uFE00|\u228B\uFE00|\u228F\u0338|\u2290\u0338|\u2293\uFE00|\u2294\uFE00|\u22B4\u20D2|\u22B5\u20D2|\u22D8\u0338|\u22D9\u0338|\u22DA\uFE00|\u22DB\uFE00|\u22F5\u0338|\u22F9\u0338|\u2933\u0338|\u29CF\u0338|\u29D0\u0338|\u2A6D\u0338|\u2A70\u0338|\u2A7D\u0338|\u2A7E\u0338|\u2AA1\u0338|\u2AA2\u0338|\u2AAC\uFE00|\u2AAD\uFE00|\u2AAF\u0338|\u2AB0\u0338|\u2AC5\u0338|\u2AC6\u0338|\u2ACB\uFE00|\u2ACC\uFE00|\u2AFD\u20E5|[\xA0-\u0113\u0116-\u0122\u0124-\u012B\u012E-\u014D\u0150-\u017E\u0192\u01B5\u01F5\u0237\u02C6\u02C7\u02D8-\u02DD\u0311\u0391-\u03A1\u03A3-\u03A9\u03B1-\u03C9\u03D1\u03D2\u03D5\u03D6\u03DC\u03DD\u03F0\u03F1\u03F5\u03F6\u0401-\u040C\u040E-\u044F\u0451-\u045C\u045E\u045F\u2002-\u2005\u2007-\u2010\u2013-\u2016\u2018-\u201A\u201C-\u201E\u2020-\u2022\u2025\u2026\u2030-\u2035\u2039\u203A\u203E\u2041\u2043\u2044\u204F\u2057\u205F-\u2063\u20AC\u20DB\u20DC\u2102\u2105\u210A-\u2113\u2115-\u211E\u2122\u2124\u2127-\u2129\u212C\u212D\u212F-\u2131\u2133-\u2138\u2145-\u2148\u2153-\u215E\u2190-\u219B\u219D-\u21A7\u21A9-\u21AE\u21B0-\u21B3\u21B5-\u21B7\u21BA-\u21DB\u21DD\u21E4\u21E5\u21F5\u21FD-\u2205\u2207-\u2209\u220B\u220C\u220F-\u2214\u2216-\u2218\u221A\u221D-\u2238\u223A-\u2257\u2259\u225A\u225C\u225F-\u2262\u2264-\u228B\u228D-\u229B\u229D-\u22A5\u22A7-\u22B0\u22B2-\u22BB\u22BD-\u22DB\u22DE-\u22E3\u22E6-\u22F7\u22F9-\u22FE\u2305\u2306\u2308-\u2310\u2312\u2313\u2315\u2316\u231C-\u231F\u2322\u2323\u232D\u232E\u2336\u233D\u233F\u237C\u23B0\u23B1\u23B4-\u23B6\u23DC-\u23DF\u23E2\u23E7\u2423\u24C8\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2550-\u256C\u2580\u2584\u2588\u2591-\u2593\u25A1\u25AA\u25AB\u25AD\u25AE\u25B1\u25B3-\u25B5\u25B8\u25B9\u25BD-\u25BF\u25C2\u25C3\u25CA\u25CB\u25EC\u25EF\u25F8-\u25FC\u2605\u2606\u260E\u2640\u2642\u2660\u2663\u2665\u2666\u266A\u266D-\u266F\u2713\u2717\u2720\u2736\u2758\u2772\u2773\u27C8\u27C9\u27E6-\u27ED\u27F5-\u27FA\u27FC\u27FF\u2902-\u2905\u290C-\u2913\u2916\u2919-\u2920\u2923-\u292A\u2933\u2935-\u2939\u293C\u293D\u2945\u2948-\u294B\u294E-\u2976\u2978\u2979\u297B-\u297F\u2985\u2986\u298B-\u2996\u299A\u299C\u299D\u29A4-\u29B7\u29B9\u29BB\u29BC\u29BE-\u29C5\u29C9\u29CD-\u29D0\u29DC-\u29DE\u29E3-\u29E5\u29EB\u29F4\u29F6\u2A00-\u2A02\u2A04\u2A06\u2A0C\u2A0D\u2A10-\u2A17\u2A22-\u2A27\u2A29\u2A2A\u2A2D-\u2A31\u2A33-\u2A3C\u2A3F\u2A40\u2A42-\u2A4D\u2A50\u2A53-\u2A58\u2A5A-\u2A5D\u2A5F\u2A66\u2A6A\u2A6D-\u2A75\u2A77-\u2A9A\u2A9D-\u2AA2\u2AA4-\u2AB0\u2AB3-\u2AC8\u2ACB\u2ACC\u2ACF-\u2ADB\u2AE4\u2AE6-\u2AE9\u2AEB-\u2AF3\u2AFD\uFB00-\uFB04]|\uD835[\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDCCF\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDD6B]/g,f={"\xc1":"Aacute","\xe1":"aacute","\u0102":"Abreve","\u0103":"abreve","\u223e":"ac","\u223f":"acd","\u223e\u0333":"acE","\xc2":"Acirc","\xe2":"acirc","\xb4":"acute","\u0410":"Acy","\u0430":"acy","\xc6":"AElig","\xe6":"aelig","\u2061":"af","\ud835\udd04":"Afr","\ud835\udd1e":"afr","\xc0":"Agrave","\xe0":"agrave","\u2135":"aleph","\u0391":"Alpha","\u03b1":"alpha","\u0100":"Amacr","\u0101":"amacr","\u2a3f":"amalg","&":"amp","\u2a55":"andand","\u2a53":"And","\u2227":"and","\u2a5c":"andd","\u2a58":"andslope","\u2a5a":"andv","\u2220":"ang","\u29a4":"ange","\u29a8":"angmsdaa","\u29a9":"angmsdab","\u29aa":"angmsdac","\u29ab":"angmsdad","\u29ac":"angmsdae","\u29ad":"angmsdaf","\u29ae":"angmsdag","\u29af":"angmsdah","\u2221":"angmsd","\u221f":"angrt","\u22be":"angrtvb","\u299d":"angrtvbd","\u2222":"angsph","\xc5":"angst","\u237c":"angzarr","\u0104":"Aogon","\u0105":"aogon","\ud835\udd38":"Aopf","\ud835\udd52":"aopf","\u2a6f":"apacir","\u2248":"ap","\u2a70":"apE","\u224a":"ape","\u224b":"apid","'":"apos","\xe5":"aring","\ud835\udc9c":"Ascr","\ud835\udcb6":"ascr","\u2254":"colone","*":"ast","\u224d":"CupCap","\xc3":"Atilde","\xe3":"atilde",
  "\xc4":"Auml","\xe4":"auml","\u2233":"awconint","\u2a11":"awint","\u224c":"bcong","\u03f6":"bepsi","\u2035":"bprime","\u223d":"bsim","\u22cd":"bsime","\u2216":"setmn","\u2ae7":"Barv","\u22bd":"barvee","\u2305":"barwed","\u2306":"Barwed","\u23b5":"bbrk","\u23b6":"bbrktbrk","\u0411":"Bcy","\u0431":"bcy","\u201e":"bdquo","\u2235":"becaus","\u29b0":"bemptyv","\u212c":"Bscr","\u0392":"Beta","\u03b2":"beta","\u2136":"beth","\u226c":"twixt","\ud835\udd05":"Bfr","\ud835\udd1f":"bfr","\u22c2":"xcap","\u25ef":"xcirc","\u22c3":"xcup","\u2a00":"xodot","\u2a01":"xoplus","\u2a02":"xotime","\u2a06":"xsqcup","\u2605":"starf","\u25bd":"xdtri","\u25b3":"xutri","\u2a04":"xuplus","\u22c1":"Vee","\u22c0":"Wedge","\u290d":"rbarr","\u29eb":"lozf","\u25aa":"squf","\u25b4":"utrif","\u25be":"dtrif","\u25c2":"ltrif","\u25b8":"rtrif","\u2423":"blank","\u2592":"blk12","\u2591":"blk14","\u2593":"blk34","\u2588":"block","=\u20e5":"bne","\u2261\u20e5":"bnequiv","\u2aed":"bNot","\u2310":"bnot","\ud835\udd39":"Bopf","\ud835\udd53":"bopf","\u22a5":"bot","\u22c8":"bowtie","\u29c9":"boxbox","\u2510":"boxdl","\u2555":"boxdL","\u2556":"boxDl","\u2557":"boxDL","\u250c":"boxdr","\u2552":"boxdR","\u2553":"boxDr","\u2554":"boxDR","\u2500":"boxh","\u2550":"boxH","\u252c":"boxhd","\u2564":"boxHd","\u2565":"boxhD","\u2566":"boxHD","\u2534":"boxhu","\u2567":"boxHu","\u2568":"boxhU","\u2569":"boxHU","\u229f":"minusb","\u229e":"plusb","\u22a0":"timesb","\u2518":"boxul","\u255b":"boxuL","\u255c":"boxUl","\u255d":"boxUL","\u2514":"boxur","\u2558":"boxuR","\u2559":"boxUr","\u255a":"boxUR","\u2502":"boxv","\u2551":"boxV","\u253c":"boxvh","\u256a":"boxvH","\u256b":"boxVh","\u256c":"boxVH","\u2524":"boxvl","\u2561":"boxvL","\u2562":"boxVl","\u2563":"boxVL","\u251c":"boxvr","\u255e":"boxvR","\u255f":"boxVr","\u2560":"boxVR","\u02d8":"breve","\xa6":"brvbar","\ud835\udcb7":"bscr","\u204f":"bsemi","\u29c5":"bsolb","\\":"bsol","\u27c8":"bsolhsub","\u2022":"bull","\u224e":"bump","\u2aae":"bumpE","\u224f":"bumpe","\u0106":"Cacute","\u0107":"cacute","\u2a44":"capand","\u2a49":"capbrcup","\u2a4b":"capcap","\u2229":"cap","\u22d2":"Cap","\u2a47":"capcup","\u2a40":"capdot","\u2145":"DD","\u2229\ufe00":"caps","\u2041":"caret","\u02c7":"caron","\u212d":"Cfr","\u2a4d":"ccaps","\u010c":"Ccaron","\u010d":"ccaron","\xc7":"Ccedil","\xe7":"ccedil","\u0108":"Ccirc","\u0109":"ccirc","\u2230":"Cconint","\u2a4c":"ccups","\u2a50":"ccupssm","\u010a":"Cdot","\u010b":"cdot","\xb8":"cedil","\u29b2":"cemptyv","\xa2":"cent","\xb7":"middot","\ud835\udd20":"cfr","\u0427":"CHcy","\u0447":"chcy","\u2713":"check","\u03a7":"Chi","\u03c7":"chi","\u02c6":"circ","\u2257":"cire","\u21ba":"olarr","\u21bb":"orarr","\u229b":"oast","\u229a":"ocir","\u229d":"odash","\u2299":"odot","\xae":"reg","\u24c8":"oS","\u2296":"ominus","\u2295":"oplus","\u2297":"otimes","\u25cb":"cir","\u29c3":"cirE","\u2a10":"cirfnint","\u2aef":"cirmid","\u29c2":"cirscir","\u2232":"cwconint","\u201d":"rdquo","\u2019":"rsquo","\u2663":"clubs",":":"colon","\u2237":"Colon","\u2a74":"Colone",",":"comma","@":"commat","\u2201":"comp","\u2218":"compfn","\u2102":"Copf","\u2245":"cong","\u2a6d":"congdot","\u2261":"equiv","\u222e":"oint","\u222f":"Conint","\ud835\udd54":"copf","\u2210":"coprod","\xa9":"copy","\u2117":"copysr","\u21b5":"crarr","\u2717":"cross","\u2a2f":"Cross","\ud835\udc9e":"Cscr","\ud835\udcb8":"cscr","\u2acf":"csub","\u2ad1":"csube","\u2ad0":"csup","\u2ad2":"csupe","\u22ef":"ctdot","\u2938":"cudarrl","\u2935":"cudarrr","\u22de":"cuepr","\u22df":"cuesc","\u21b6":"cularr","\u293d":"cularrp","\u2a48":"cupbrcap","\u2a46":"cupcap","\u222a":"cup","\u22d3":"Cup","\u2a4a":"cupcup","\u228d":"cupdot","\u2a45":"cupor","\u222a\ufe00":"cups","\u21b7":"curarr","\u293c":"curarrm","\u22ce":"cuvee","\u22cf":"cuwed","\xa4":"curren","\u2231":"cwint","\u232d":"cylcty","\u2020":"dagger","\u2021":"Dagger","\u2138":"daleth","\u2193":"darr","\u21a1":"Darr","\u21d3":"dArr","\u2010":"dash","\u2ae4":"Dashv","\u22a3":"dashv","\u290f":"rBarr","\u02dd":"dblac","\u010e":"Dcaron","\u010f":"dcaron","\u0414":"Dcy","\u0434":"dcy","\u21ca":"ddarr","\u2146":"dd","\u2911":"DDotrahd","\u2a77":"eDDot","\xb0":"deg","\u2207":"Del","\u0394":"Delta","\u03b4":"delta","\u29b1":"demptyv","\u297f":"dfisht","\ud835\udd07":"Dfr","\ud835\udd21":"dfr","\u2965":"dHar","\u21c3":"dharl","\u21c2":"dharr","\u02d9":"dot","`":"grave","\u02dc":"tilde","\u22c4":"diam","\u2666":"diams","\xa8":"die","\u03dd":"gammad","\u22f2":"disin","\xf7":"div","\u22c7":"divonx","\u0402":"DJcy","\u0452":"djcy","\u231e":"dlcorn","\u230d":"dlcrop",$:"dollar","\ud835\udd3b":"Dopf","\ud835\udd55":"dopf","\u20dc":"DotDot","\u2250":"doteq","\u2251":"eDot","\u2238":"minusd","\u2214":"plusdo","\u22a1":"sdotb","\u21d0":"lArr","\u21d4":"iff","\u27f8":"xlArr","\u27fa":"xhArr","\u27f9":"xrArr","\u21d2":"rArr","\u22a8":"vDash","\u21d1":"uArr","\u21d5":"vArr","\u2225":"par","\u2913":"DownArrowBar","\u21f5":"duarr","\u0311":"DownBreve","\u2950":"DownLeftRightVector","\u295e":"DownLeftTeeVector","\u2956":"DownLeftVectorBar","\u21bd":"lhard","\u295f":"DownRightTeeVector","\u2957":"DownRightVectorBar","\u21c1":"rhard","\u21a7":"mapstodown","\u22a4":"top","\u2910":"RBarr","\u231f":"drcorn","\u230c":"drcrop","\ud835\udc9f":"Dscr","\ud835\udcb9":"dscr","\u0405":"DScy","\u0455":"dscy","\u29f6":"dsol","\u0110":"Dstrok","\u0111":"dstrok","\u22f1":"dtdot","\u25bf":"dtri","\u296f":"duhar","\u29a6":"dwangle","\u040f":"DZcy","\u045f":"dzcy","\u27ff":"dzigrarr","\xc9":"Eacute","\xe9":"eacute","\u2a6e":"easter","\u011a":"Ecaron","\u011b":"ecaron","\xca":"Ecirc","\xea":"ecirc","\u2256":"ecir","\u2255":"ecolon","\u042d":"Ecy","\u044d":"ecy","\u0116":"Edot","\u0117":"edot","\u2147":"ee","\u2252":"efDot","\ud835\udd08":"Efr","\ud835\udd22":"efr","\u2a9a":"eg","\xc8":"Egrave","\xe8":"egrave","\u2a96":"egs","\u2a98":"egsdot","\u2a99":"el","\u2208":"in","\u23e7":"elinters","\u2113":"ell","\u2a95":"els","\u2a97":"elsdot","\u0112":"Emacr","\u0113":"emacr","\u2205":"empty","\u25fb":"EmptySmallSquare","\u25ab":"EmptyVerySmallSquare","\u2004":"emsp13","\u2005":"emsp14","\u2003":"emsp","\u014a":"ENG","\u014b":"eng","\u2002":"ensp","\u0118":"Eogon","\u0119":"eogon","\ud835\udd3c":"Eopf","\ud835\udd56":"eopf","\u22d5":"epar","\u29e3":"eparsl","\u2a71":"eplus","\u03b5":"epsi","\u0395":"Epsilon","\u03f5":"epsiv","\u2242":"esim","\u2a75":"Equal","=":"equals","\u225f":"equest","\u21cc":"rlhar","\u2a78":"equivDD","\u29e5":"eqvparsl","\u2971":"erarr","\u2253":"erDot","\u212f":"escr","\u2130":"Escr","\u2a73":"Esim","\u0397":"Eta","\u03b7":"eta","\xd0":"ETH","\xf0":"eth","\xcb":"Euml","\xeb":"euml","\u20ac":"euro","!":"excl","\u2203":"exist","\u0424":"Fcy","\u0444":"fcy","\u2640":"female","\ufb03":"ffilig","\ufb00":"fflig","\ufb04":"ffllig","\ud835\udd09":"Ffr","\ud835\udd23":"ffr","\ufb01":"filig","\u25fc":"FilledSmallSquare",fj:"fjlig","\u266d":"flat","\ufb02":"fllig","\u25b1":"fltns","\u0192":"fnof","\ud835\udd3d":"Fopf","\ud835\udd57":"fopf","\u2200":"forall","\u22d4":"fork","\u2ad9":"forkv","\u2131":"Fscr","\u2a0d":"fpartint","\xbd":"half","\u2153":"frac13","\xbc":"frac14","\u2155":"frac15","\u2159":"frac16","\u215b":"frac18","\u2154":"frac23","\u2156":"frac25","\xbe":"frac34","\u2157":"frac35","\u215c":"frac38","\u2158":"frac45","\u215a":"frac56","\u215d":"frac58","\u215e":"frac78","\u2044":"frasl","\u2322":"frown","\ud835\udcbb":"fscr","\u01f5":"gacute","\u0393":"Gamma","\u03b3":"gamma","\u03dc":"Gammad","\u2a86":"gap","\u011e":"Gbreve","\u011f":"gbreve","\u0122":"Gcedil","\u011c":"Gcirc","\u011d":"gcirc","\u0413":"Gcy","\u0433":"gcy","\u0120":"Gdot","\u0121":"gdot","\u2265":"ge","\u2267":"gE","\u2a8c":"gEl","\u22db":"gel","\u2a7e":"ges","\u2aa9":"gescc","\u2a80":"gesdot","\u2a82":"gesdoto","\u2a84":"gesdotol","\u22db\ufe00":"gesl","\u2a94":"gesles","\ud835\udd0a":"Gfr","\ud835\udd24":"gfr","\u226b":"gg","\u22d9":"Gg","\u2137":"gimel","\u0403":"GJcy","\u0453":"gjcy","\u2aa5":"gla","\u2277":"gl","\u2a92":"glE","\u2aa4":"glj","\u2a8a":"gnap","\u2a88":"gne","\u2269":"gnE","\u22e7":"gnsim","\ud835\udd3e":"Gopf","\ud835\udd58":"gopf","\u2aa2":"GreaterGreater","\u2273":"gsim","\ud835\udca2":"Gscr","\u210a":"gscr","\u2a8e":"gsime","\u2a90":"gsiml","\u2aa7":"gtcc","\u2a7a":"gtcir",">":"gt","\u22d7":"gtdot","\u2995":"gtlPar","\u2a7c":"gtquest","\u2978":"gtrarr","\u2269\ufe00":"gvnE","\u200a":"hairsp","\u210b":"Hscr","\u042a":"HARDcy","\u044a":"hardcy","\u2948":"harrcir","\u2194":"harr","\u21ad":"harrw","^":"Hat","\u210f":"hbar","\u0124":"Hcirc","\u0125":"hcirc","\u2665":"hearts","\u2026":"mldr","\u22b9":"hercon","\ud835\udd25":"hfr","\u210c":"Hfr","\u2925":"searhk","\u2926":"swarhk","\u21ff":"hoarr","\u223b":"homtht","\u21a9":"larrhk","\u21aa":"rarrhk","\ud835\udd59":"hopf","\u210d":"Hopf","\u2015":"horbar","\ud835\udcbd":"hscr","\u0126":"Hstrok","\u0127":"hstrok","\u2043":"hybull","\xcd":"Iacute","\xed":"iacute","\u2063":"ic","\xce":"Icirc","\xee":"icirc","\u0418":"Icy","\u0438":"icy","\u0130":"Idot","\u0415":"IEcy","\u0435":"iecy","\xa1":"iexcl","\ud835\udd26":"ifr","\u2111":"Im","\xcc":"Igrave","\xec":"igrave","\u2148":"ii","\u2a0c":"qint","\u222d":"tint","\u29dc":"iinfin","\u2129":"iiota","\u0132":"IJlig","\u0133":"ijlig","\u012a":"Imacr","\u012b":"imacr","\u2110":"Iscr","\u0131":"imath","\u22b7":"imof","\u01b5":"imped","\u2105":"incare","\u221e":"infin","\u29dd":"infintie","\u22ba":"intcal","\u222b":"int","\u222c":"Int","\u2124":"Zopf","\u2a17":"intlarhk","\u2a3c":"iprod","\u2062":"it","\u0401":"IOcy","\u0451":"iocy","\u012e":"Iogon","\u012f":"iogon","\ud835\udd40":"Iopf","\ud835\udd5a":"iopf","\u0399":"Iota","\u03b9":"iota","\xbf":"iquest","\ud835\udcbe":"iscr","\u22f5":"isindot","\u22f9":"isinE","\u22f4":"isins","\u22f3":"isinsv","\u0128":"Itilde","\u0129":"itilde","\u0406":"Iukcy","\u0456":"iukcy","\xcf":"Iuml","\xef":"iuml","\u0134":"Jcirc","\u0135":"jcirc","\u0419":"Jcy","\u0439":"jcy","\ud835\udd0d":"Jfr","\ud835\udd27":"jfr","\u0237":"jmath","\ud835\udd41":"Jopf","\ud835\udd5b":"jopf","\ud835\udca5":"Jscr","\ud835\udcbf":"jscr","\u0408":"Jsercy","\u0458":"jsercy","\u0404":"Jukcy","\u0454":"jukcy","\u039a":"Kappa","\u03ba":"kappa","\u03f0":"kappav","\u0136":"Kcedil","\u0137":"kcedil","\u041a":"Kcy","\u043a":"kcy","\ud835\udd0e":"Kfr","\ud835\udd28":"kfr","\u0138":"kgreen","\u0425":"KHcy","\u0445":"khcy","\u040c":"KJcy","\u045c":"kjcy","\ud835\udd42":"Kopf","\ud835\udd5c":"kopf","\ud835\udca6":"Kscr","\ud835\udcc0":"kscr","\u21da":"lAarr","\u0139":"Lacute","\u013a":"lacute","\u29b4":"laemptyv","\u2112":"Lscr","\u039b":"Lambda","\u03bb":"lambda","\u27e8":"lang","\u27ea":"Lang","\u2991":"langd","\u2a85":"lap","\xab":"laquo","\u21e4":"larrb","\u291f":"larrbfs","\u2190":"larr","\u219e":"Larr","\u291d":"larrfs","\u21ab":"larrlp","\u2939":"larrpl","\u2973":"larrsim","\u21a2":"larrtl","\u2919":"latail","\u291b":"lAtail","\u2aab":"lat","\u2aad":"late","\u2aad\ufe00":"lates","\u290c":"lbarr","\u290e":"lBarr","\u2772":"lbbrk","{":"lcub","[":"lsqb","\u298b":"lbrke","\u298f":"lbrksld","\u298d":"lbrkslu","\u013d":"Lcaron","\u013e":"lcaron","\u013b":"Lcedil","\u013c":"lcedil","\u2308":"lceil","\u041b":"Lcy","\u043b":"lcy","\u2936":"ldca","\u201c":"ldquo","\u2967":"ldrdhar","\u294b":"ldrushar","\u21b2":"ldsh","\u2264":"le","\u2266":"lE","\u21c6":"lrarr","\u27e6":"lobrk","\u2961":"LeftDownTeeVector","\u2959":"LeftDownVectorBar","\u230a":"lfloor","\u21bc":"lharu","\u21c7":"llarr","\u21cb":"lrhar","\u294e":"LeftRightVector","\u21a4":"mapstoleft","\u295a":"LeftTeeVector","\u22cb":"lthree","\u29cf":"LeftTriangleBar","\u22b2":"vltri","\u22b4":"ltrie","\u2951":"LeftUpDownVector","\u2960":"LeftUpTeeVector","\u2958":"LeftUpVectorBar","\u21bf":"uharl","\u2952":"LeftVectorBar","\u2a8b":"lEg","\u22da":"leg","\u2a7d":"les","\u2aa8":"lescc","\u2a7f":"lesdot","\u2a81":"lesdoto","\u2a83":"lesdotor","\u22da\ufe00":"lesg","\u2a93":"lesges","\u22d6":"ltdot","\u2276":"lg","\u2aa1":"LessLess","\u2272":"lsim","\u297c":"lfisht","\ud835\udd0f":"Lfr","\ud835\udd29":"lfr","\u2a91":"lgE","\u2962":"lHar","\u296a":"lharul","\u2584":"lhblk","\u0409":"LJcy","\u0459":"ljcy","\u226a":"ll","\u22d8":"Ll","\u296b":"llhard","\u25fa":"lltri","\u013f":"Lmidot","\u0140":"lmidot","\u23b0":"lmoust","\u2a89":"lnap","\u2a87":"lne","\u2268":"lnE","\u22e6":"lnsim","\u27ec":"loang","\u21fd":"loarr","\u27f5":"xlarr","\u27f7":"xharr","\u27fc":"xmap","\u27f6":"xrarr","\u21ac":"rarrlp","\u2985":"lopar","\ud835\udd43":"Lopf","\ud835\udd5d":"lopf","\u2a2d":"loplus","\u2a34":"lotimes","\u2217":"lowast",_:"lowbar","\u2199":"swarr","\u2198":"searr","\u25ca":"loz","(":"lpar","\u2993":"lparlt","\u296d":"lrhard","\u200e":"lrm","\u22bf":"lrtri","\u2039":"lsaquo","\ud835\udcc1":"lscr","\u21b0":"lsh","\u2a8d":"lsime","\u2a8f":"lsimg","\u2018":"lsquo","\u201a":"sbquo","\u0141":"Lstrok","\u0142":"lstrok","\u2aa6":"ltcc","\u2a79":"ltcir","<":"lt","\u22c9":"ltimes","\u2976":"ltlarr","\u2a7b":"ltquest","\u25c3":"ltri","\u2996":"ltrPar","\u294a":"lurdshar","\u2966":"luruhar","\u2268\ufe00":"lvnE","\xaf":"macr","\u2642":"male","\u2720":"malt","\u2905":"Map","\u21a6":"map","\u21a5":"mapstoup","\u25ae":"marker","\u2a29":"mcomma","\u041c":"Mcy","\u043c":"mcy","\u2014":"mdash","\u223a":"mDDot","\u205f":"MediumSpace","\u2133":"Mscr","\ud835\udd10":"Mfr","\ud835\udd2a":"mfr","\u2127":"mho","\xb5":"micro","\u2af0":"midcir","\u2223":"mid","\u2212":"minus","\u2a2a":"minusdu","\u2213":"mp","\u2adb":"mlcp","\u22a7":"models","\ud835\udd44":"Mopf","\ud835\udd5e":"mopf","\ud835\udcc2":"mscr","\u039c":"Mu","\u03bc":"mu","\u22b8":"mumap","\u0143":"Nacute","\u0144":"nacute","\u2220\u20d2":"nang","\u2249":"nap","\u2a70\u0338":"napE","\u224b\u0338":"napid","\u0149":"napos","\u266e":"natur","\u2115":"Nopf","\xa0":"nbsp","\u224e\u0338":"nbump","\u224f\u0338":"nbumpe","\u2a43":"ncap","\u0147":"Ncaron","\u0148":"ncaron","\u0145":"Ncedil","\u0146":"ncedil","\u2247":"ncong","\u2a6d\u0338":"ncongdot","\u2a42":"ncup","\u041d":"Ncy","\u043d":"ncy","\u2013":"ndash","\u2924":"nearhk","\u2197":"nearr","\u21d7":"neArr","\u2260":"ne","\u2250\u0338":"nedot","\u200b":"ZeroWidthSpace","\u2262":"nequiv","\u2928":"toea","\u2242\u0338":"nesim","\n":"NewLine","\u2204":"nexist","\ud835\udd11":"Nfr","\ud835\udd2b":"nfr","\u2267\u0338":"ngE","\u2271":"nge","\u2a7e\u0338":"nges","\u22d9\u0338":"nGg","\u2275":"ngsim","\u226b\u20d2":"nGt","\u226f":"ngt","\u226b\u0338":"nGtv","\u21ae":"nharr","\u21ce":"nhArr","\u2af2":"nhpar","\u220b":"ni","\u22fc":"nis","\u22fa":"nisd","\u040a":"NJcy","\u045a":"njcy","\u219a":"nlarr","\u21cd":"nlArr","\u2025":"nldr","\u2266\u0338":"nlE","\u2270":"nle","\u2a7d\u0338":"nles","\u226e":"nlt","\u22d8\u0338":"nLl","\u2274":"nlsim","\u226a\u20d2":"nLt","\u22ea":"nltri","\u22ec":"nltrie","\u226a\u0338":"nLtv","\u2224":"nmid","\u2060":"NoBreak","\ud835\udd5f":"nopf","\u2aec":"Not","\xac":"not","\u226d":"NotCupCap","\u2226":"npar","\u2209":"notin","\u2279":"ntgl","\u22f5\u0338":"notindot","\u22f9\u0338":"notinE","\u22f7":"notinvb","\u22f6":"notinvc","\u29cf\u0338":"NotLeftTriangleBar","\u2278":"ntlg","\u2aa2\u0338":"NotNestedGreaterGreater","\u2aa1\u0338":"NotNestedLessLess","\u220c":"notni","\u22fe":"notnivb","\u22fd":"notnivc","\u2280":"npr","\u2aaf\u0338":"npre","\u22e0":"nprcue","\u29d0\u0338":"NotRightTriangleBar","\u22eb":"nrtri","\u22ed":"nrtrie","\u228f\u0338":"NotSquareSubset","\u22e2":"nsqsube","\u2290\u0338":"NotSquareSuperset","\u22e3":"nsqsupe","\u2282\u20d2":"vnsub","\u2288":"nsube","\u2281":"nsc","\u2ab0\u0338":"nsce","\u22e1":"nsccue","\u227f\u0338":"NotSucceedsTilde","\u2283\u20d2":"vnsup","\u2289":"nsupe","\u2241":"nsim","\u2244":"nsime","\u2afd\u20e5":"nparsl","\u2202\u0338":"npart","\u2a14":"npolint","\u2933\u0338":"nrarrc","\u219b":"nrarr","\u21cf":"nrArr","\u219d\u0338":"nrarrw","\ud835\udca9":"Nscr","\ud835\udcc3":"nscr","\u2284":"nsub","\u2ac5\u0338":"nsubE","\u2285":"nsup","\u2ac6\u0338":"nsupE","\xd1":"Ntilde","\xf1":"ntilde","\u039d":"Nu","\u03bd":"nu","#":"num","\u2116":"numero","\u2007":"numsp","\u224d\u20d2":"nvap","\u22ac":"nvdash","\u22ad":"nvDash","\u22ae":"nVdash","\u22af":"nVDash","\u2265\u20d2":"nvge",">\u20d2":"nvgt","\u2904":"nvHarr","\u29de":"nvinfin","\u2902":"nvlArr","\u2264\u20d2":"nvle","<\u20d2":"nvlt","\u22b4\u20d2":"nvltrie","\u2903":"nvrArr","\u22b5\u20d2":"nvrtrie","\u223c\u20d2":"nvsim","\u2923":"nwarhk","\u2196":"nwarr","\u21d6":"nwArr","\u2927":"nwnear","\xd3":"Oacute","\xf3":"oacute","\xd4":"Ocirc","\xf4":"ocirc","\u041e":"Ocy","\u043e":"ocy","\u0150":"Odblac","\u0151":"odblac","\u2a38":"odiv","\u29bc":"odsold","\u0152":"OElig","\u0153":"oelig","\u29bf":"ofcir","\ud835\udd12":"Ofr","\ud835\udd2c":"ofr","\u02db":"ogon","\xd2":"Ograve","\xf2":"ograve","\u29c1":"ogt","\u29b5":"ohbar","\u03a9":"ohm","\u29be":"olcir","\u29bb":"olcross","\u203e":"oline","\u29c0":"olt","\u014c":"Omacr","\u014d":"omacr","\u03c9":"omega","\u039f":"Omicron","\u03bf":"omicron","\u29b6":"omid","\ud835\udd46":"Oopf","\ud835\udd60":"oopf","\u29b7":"opar","\u29b9":"operp","\u2a54":"Or","\u2228":"or","\u2a5d":"ord","\u2134":"oscr","\xaa":"ordf","\xba":"ordm","\u22b6":"origof","\u2a56":"oror","\u2a57":"orslope","\u2a5b":"orv","\ud835\udcaa":"Oscr","\xd8":"Oslash","\xf8":"oslash","\u2298":"osol","\xd5":"Otilde","\xf5":"otilde","\u2a36":"otimesas","\u2a37":"Otimes","\xd6":"Ouml","\xf6":"ouml","\u233d":"ovbar","\u23de":"OverBrace","\u23b4":"tbrk","\u23dc":"OverParenthesis","\xb6":"para","\u2af3":"parsim","\u2afd":"parsl","\u2202":"part","\u041f":"Pcy","\u043f":"pcy","%":"percnt",".":"period","\u2030":"permil","\u2031":"pertenk","\ud835\udd13":"Pfr","\ud835\udd2d":"pfr","\u03a6":"Phi","\u03c6":"phi","\u03d5":"phiv","\u260e":"phone","\u03a0":"Pi","\u03c0":"pi","\u03d6":"piv","\u210e":"planckh","\u2a23":"plusacir","\u2a22":"pluscir","+":"plus","\u2a25":"plusdu","\u2a72":"pluse","\xb1":"pm","\u2a26":"plussim","\u2a27":"plustwo","\u2a15":"pointint","\ud835\udd61":"popf","\u2119":"Popf","\xa3":"pound","\u2ab7":"prap","\u2abb":"Pr","\u227a":"pr","\u227c":"prcue","\u2aaf":"pre","\u227e":"prsim","\u2ab9":"prnap","\u2ab5":"prnE","\u22e8":"prnsim","\u2ab3":"prE","\u2032":"prime","\u2033":"Prime","\u220f":"prod","\u232e":"profalar","\u2312":"profline","\u2313":"profsurf","\u221d":"prop","\u22b0":"prurel","\ud835\udcab":"Pscr","\ud835\udcc5":"pscr","\u03a8":"Psi","\u03c8":"psi","\u2008":"puncsp","\ud835\udd14":"Qfr","\ud835\udd2e":"qfr","\ud835\udd62":"qopf","\u211a":"Qopf","\u2057":"qprime","\ud835\udcac":"Qscr","\ud835\udcc6":"qscr","\u2a16":"quatint","?":"quest",'"':"quot","\u21db":"rAarr","\u223d\u0331":"race","\u0154":"Racute","\u0155":"racute","\u221a":"Sqrt","\u29b3":"raemptyv","\u27e9":"rang","\u27eb":"Rang","\u2992":"rangd","\u29a5":"range","\xbb":"raquo","\u2975":"rarrap","\u21e5":"rarrb","\u2920":"rarrbfs","\u2933":"rarrc","\u2192":"rarr","\u21a0":"Rarr","\u291e":"rarrfs","\u2945":"rarrpl","\u2974":"rarrsim","\u2916":"Rarrtl","\u21a3":"rarrtl","\u219d":"rarrw","\u291a":"ratail","\u291c":"rAtail","\u2236":"ratio","\u2773":"rbbrk","}":"rcub","]":"rsqb","\u298c":"rbrke","\u298e":"rbrksld","\u2990":"rbrkslu","\u0158":"Rcaron","\u0159":"rcaron","\u0156":"Rcedil","\u0157":"rcedil","\u2309":"rceil","\u0420":"Rcy","\u0440":"rcy","\u2937":"rdca","\u2969":"rdldhar","\u21b3":"rdsh","\u211c":"Re","\u211b":"Rscr","\u211d":"Ropf","\u25ad":"rect","\u297d":"rfisht","\u230b":"rfloor","\ud835\udd2f":"rfr","\u2964":"rHar","\u21c0":"rharu","\u296c":"rharul","\u03a1":"Rho","\u03c1":"rho","\u03f1":"rhov","\u21c4":"rlarr","\u27e7":"robrk","\u295d":"RightDownTeeVector","\u2955":"RightDownVectorBar","\u21c9":"rrarr","\u22a2":"vdash","\u295b":"RightTeeVector","\u22cc":"rthree","\u29d0":"RightTriangleBar","\u22b3":"vrtri","\u22b5":"rtrie","\u294f":"RightUpDownVector","\u295c":"RightUpTeeVector","\u2954":"RightUpVectorBar","\u21be":"uharr","\u2953":"RightVectorBar","\u02da":"ring","\u200f":"rlm","\u23b1":"rmoust","\u2aee":"rnmid","\u27ed":"roang","\u21fe":"roarr","\u2986":"ropar","\ud835\udd63":"ropf","\u2a2e":"roplus","\u2a35":"rotimes","\u2970":"RoundImplies",")":"rpar","\u2994":"rpargt","\u2a12":"rppolint","\u203a":"rsaquo","\ud835\udcc7":"rscr","\u21b1":"rsh","\u22ca":"rtimes","\u25b9":"rtri","\u29ce":"rtriltri","\u29f4":"RuleDelayed","\u2968":"ruluhar","\u211e":"rx","\u015a":"Sacute","\u015b":"sacute","\u2ab8":"scap","\u0160":"Scaron","\u0161":"scaron","\u2abc":"Sc","\u227b":"sc","\u227d":"sccue","\u2ab0":"sce","\u2ab4":"scE","\u015e":"Scedil","\u015f":"scedil","\u015c":"Scirc","\u015d":"scirc","\u2aba":"scnap","\u2ab6":"scnE","\u22e9":"scnsim","\u2a13":"scpolint","\u227f":"scsim","\u0421":"Scy","\u0441":"scy","\u22c5":"sdot","\u2a66":"sdote","\u21d8":"seArr","\xa7":"sect",";":"semi","\u2929":"tosa","\u2736":"sext","\ud835\udd16":"Sfr","\ud835\udd30":"sfr","\u266f":"sharp","\u0429":"SHCHcy","\u0449":"shchcy","\u0428":"SHcy","\u0448":"shcy","\u2191":"uarr","\xad":"shy","\u03a3":"Sigma","\u03c3":"sigma","\u03c2":"sigmaf","\u223c":"sim","\u2a6a":"simdot","\u2243":"sime","\u2a9e":"simg","\u2aa0":"simgE","\u2a9d":"siml","\u2a9f":"simlE","\u2246":"simne","\u2a24":"simplus","\u2972":"simrarr","\u2a33":"smashp","\u29e4":"smeparsl","\u2323":"smile","\u2aaa":"smt","\u2aac":"smte","\u2aac\ufe00":"smtes","\u042c":"SOFTcy","\u044c":"softcy","\u233f":"solbar","\u29c4":"solb","/":"sol","\ud835\udd4a":"Sopf","\ud835\udd64":"sopf","\u2660":"spades","\u2293":"sqcap","\u2293\ufe00":"sqcaps","\u2294":"sqcup","\u2294\ufe00":"sqcups","\u228f":"sqsub","\u2291":"sqsube","\u2290":"sqsup","\u2292":"sqsupe","\u25a1":"squ","\ud835\udcae":"Sscr","\ud835\udcc8":"sscr","\u22c6":"Star","\u2606":"star","\u2282":"sub","\u22d0":"Sub","\u2abd":"subdot","\u2ac5":"subE","\u2286":"sube","\u2ac3":"subedot","\u2ac1":"submult","\u2acb":"subnE","\u228a":"subne","\u2abf":"subplus","\u2979":"subrarr","\u2ac7":"subsim","\u2ad5":"subsub","\u2ad3":"subsup","\u2211":"sum","\u266a":"sung","\xb9":"sup1","\xb2":"sup2","\xb3":"sup3","\u2283":"sup","\u22d1":"Sup","\u2abe":"supdot","\u2ad8":"supdsub","\u2ac6":"supE","\u2287":"supe","\u2ac4":"supedot","\u27c9":"suphsol","\u2ad7":"suphsub","\u297b":"suplarr","\u2ac2":"supmult","\u2acc":"supnE","\u228b":"supne","\u2ac0":"supplus","\u2ac8":"supsim","\u2ad4":"supsub","\u2ad6":"supsup","\u21d9":"swArr","\u292a":"swnwar","\xdf":"szlig","	":"Tab","\u2316":"target","\u03a4":"Tau","\u03c4":"tau","\u0164":"Tcaron","\u0165":"tcaron","\u0162":"Tcedil","\u0163":"tcedil","\u0422":"Tcy","\u0442":"tcy","\u20db":"tdot","\u2315":"telrec","\ud835\udd17":"Tfr","\ud835\udd31":"tfr","\u2234":"there4","\u0398":"Theta","\u03b8":"theta","\u03d1":"thetav","\u205f\u200a":"ThickSpace","\u2009":"thinsp","\xde":"THORN","\xfe":"thorn","\u2a31":"timesbar","\xd7":"times","\u2a30":"timesd","\u2336":"topbot","\u2af1":"topcir","\ud835\udd4b":"Topf","\ud835\udd65":"topf","\u2ada":"topfork","\u2034":"tprime","\u2122":"trade","\u25b5":"utri","\u225c":"trie","\u25ec":"tridot","\u2a3a":"triminus","\u2a39":"triplus","\u29cd":"trisb","\u2a3b":"tritime","\u23e2":"trpezium","\ud835\udcaf":"Tscr","\ud835\udcc9":"tscr","\u0426":"TScy","\u0446":"tscy","\u040b":"TSHcy","\u045b":"tshcy","\u0166":"Tstrok","\u0167":"tstrok","\xda":"Uacute","\xfa":"uacute","\u219f":"Uarr","\u2949":"Uarrocir","\u040e":"Ubrcy","\u045e":"ubrcy","\u016c":"Ubreve","\u016d":"ubreve","\xdb":"Ucirc","\xfb":"ucirc","\u0423":"Ucy","\u0443":"ucy","\u21c5":"udarr","\u0170":"Udblac","\u0171":"udblac","\u296e":"udhar","\u297e":"ufisht","\ud835\udd18":"Ufr","\ud835\udd32":"ufr","\xd9":"Ugrave","\xf9":"ugrave","\u2963":"uHar","\u2580":"uhblk","\u231c":"ulcorn","\u230f":"ulcrop","\u25f8":"ultri","\u016a":"Umacr","\u016b":"umacr","\u23df":"UnderBrace","\u23dd":"UnderParenthesis","\u228e":"uplus","\u0172":"Uogon","\u0173":"uogon","\ud835\udd4c":"Uopf","\ud835\udd66":"uopf","\u2912":"UpArrowBar","\u2195":"varr","\u03c5":"upsi","\u03d2":"Upsi","\u03a5":"Upsilon","\u21c8":"uuarr","\u231d":"urcorn","\u230e":"urcrop","\u016e":"Uring","\u016f":"uring","\u25f9":"urtri","\ud835\udcb0":"Uscr","\ud835\udcca":"uscr","\u22f0":"utdot","\u0168":"Utilde","\u0169":"utilde","\xdc":"Uuml","\xfc":"uuml","\u29a7":"uwangle","\u299c":"vangrt","\u228a\ufe00":"vsubne","\u2acb\ufe00":"vsubnE","\u228b\ufe00":"vsupne","\u2acc\ufe00":"vsupnE","\u2ae8":"vBar","\u2aeb":"Vbar","\u2ae9":"vBarv","\u0412":"Vcy","\u0432":"vcy","\u22a9":"Vdash","\u22ab":"VDash","\u2ae6":"Vdashl","\u22bb":"veebar","\u225a":"veeeq","\u22ee":"vellip","|":"vert","\u2016":"Vert","\u2758":"VerticalSeparator","\u2240":"wr","\ud835\udd19":"Vfr","\ud835\udd33":"vfr","\ud835\udd4d":"Vopf","\ud835\udd67":"vopf","\ud835\udcb1":"Vscr","\ud835\udccb":"vscr","\u22aa":"Vvdash","\u299a":"vzigzag","\u0174":"Wcirc","\u0175":"wcirc","\u2a5f":"wedbar","\u2259":"wedgeq","\u2118":"wp","\ud835\udd1a":"Wfr","\ud835\udd34":"wfr","\ud835\udd4e":"Wopf","\ud835\udd68":"wopf","\ud835\udcb2":"Wscr","\ud835\udccc":"wscr","\ud835\udd1b":"Xfr","\ud835\udd35":"xfr","\u039e":"Xi","\u03be":"xi","\u22fb":"xnis","\ud835\udd4f":"Xopf","\ud835\udd69":"xopf","\ud835\udcb3":"Xscr","\ud835\udccd":"xscr","\xdd":"Yacute","\xfd":"yacute","\u042f":"YAcy","\u044f":"yacy","\u0176":"Ycirc","\u0177":"ycirc","\u042b":"Ycy","\u044b":"ycy","\xa5":"yen","\ud835\udd1c":"Yfr","\ud835\udd36":"yfr","\u0407":"YIcy","\u0457":"yicy","\ud835\udd50":"Yopf","\ud835\udd6a":"yopf","\ud835\udcb4":"Yscr","\ud835\udcce":"yscr","\u042e":"YUcy","\u044e":"yucy","\xff":"yuml","\u0178":"Yuml","\u0179":"Zacute","\u017a":"zacute","\u017d":"Zcaron","\u017e":"zcaron","\u0417":"Zcy","\u0437":"zcy","\u017b":"Zdot","\u017c":"zdot","\u2128":"Zfr","\u0396":"Zeta","\u03b6":"zeta","\ud835\udd37":"zfr","\u0416":"ZHcy","\u0436":"zhcy","\u21dd":"zigrarr","\ud835\udd6b":"zopf","\ud835\udcb5":"Zscr","\ud835\udccf":"zscr","\u200d":"zwj","\u200c":"zwnj"},p=/[&<>"']/g,d={"&":"&amp;","<":"&lt;",'"':"&quot;","'":"&#x27;",">":"&gt;"},g=/&#(?:[xX][^a-fA-F0-9]|[^0-9xX])/,y=/&#([0-9]+)(;?)|&#[xX]([a-fA-F0-9]+)(;?)|&([0-9a-zA-Z]+);|&(Aacute|iacute|Uacute|plusmn|otilde|Otilde|Agrave|agrave|yacute|Yacute|oslash|Oslash|Atilde|atilde|brvbar|Ccedil|ccedil|ograve|curren|divide|Eacute|eacute|Ograve|oacute|Egrave|egrave|ugrave|frac12|frac14|frac34|Ugrave|Oacute|Iacute|ntilde|Ntilde|uacute|middot|Igrave|igrave|iquest|aacute|laquo|THORN|micro|iexcl|icirc|Icirc|Acirc|ucirc|ecirc|Ocirc|ocirc|Ecirc|Ucirc|aring|Aring|aelig|AElig|acute|pound|raquo|acirc|times|thorn|szlig|cedil|COPY|Auml|ordf|ordm|uuml|macr|Uuml|auml|Ouml|ouml|para|nbsp|Euml|quot|QUOT|euml|yuml|cent|sect|copy|sup1|sup2|sup3|Iuml|iuml|shy|eth|reg|not|yen|amp|AMP|REG|uml|ETH|deg|gt|GT|LT|lt)([=a-zA-Z0-9])?/g,m={Aacute:"\xc1",aacute:"\xe1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223e",acd:"\u223f",acE:"\u223e\u0333",Acirc:"\xc2",acirc:"\xe2",acute:"\xb4",Acy:"\u0410",acy:"\u0430",AElig:"\xc6",aelig:"\xe6",af:"\u2061",Afr:"\ud835\udd04",afr:"\ud835\udd1e",Agrave:"\xc0",agrave:"\xe0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03b1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2a3f",amp:"&",AMP:"&",andand:"\u2a55",And:"\u2a53",and:"\u2227",andd:"\u2a5c",andslope:"\u2a58",andv:"\u2a5a",ang:"\u2220",ange:"\u29a4",angle:"\u2220",angmsdaa:"\u29a8",angmsdab:"\u29a9",angmsdac:"\u29aa",angmsdad:"\u29ab",angmsdae:"\u29ac",angmsdaf:"\u29ad",angmsdag:"\u29ae",angmsdah:"\u29af",angmsd:"\u2221",angrt:"\u221f",angrtvb:"\u22be",angrtvbd:"\u299d",angsph:"\u2222",angst:"\xc5",angzarr:"\u237c",Aogon:"\u0104",aogon:"\u0105",Aopf:"\ud835\udd38",aopf:"\ud835\udd52",apacir:"\u2a6f",ap:"\u2248",apE:"\u2a70",ape:"\u224a",apid:"\u224b",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224a",Aring:"\xc5",aring:"\xe5",Ascr:"\ud835\udc9c",ascr:"\ud835\udcb6",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224d",Atilde:"\xc3",atilde:"\xe3",Auml:"\xc4",auml:"\xe4",awconint:"\u2233",awint:"\u2a11",backcong:"\u224c",backepsilon:"\u03f6",backprime:"\u2035",backsim:"\u223d",backsimeq:"\u22cd",Backslash:"\u2216",Barv:"\u2ae7",barvee:"\u22bd",barwed:"\u2305",Barwed:"\u2306",barwedge:"\u2305",bbrk:"\u23b5",bbrktbrk:"\u23b6",bcong:"\u224c",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201e",becaus:"\u2235",because:"\u2235",Because:"\u2235",bemptyv:"\u29b0",bepsi:"\u03f6",bernou:"\u212c",Bernoullis:"\u212c",Beta:"\u0392",beta:"\u03b2",beth:"\u2136",between:"\u226c",Bfr:"\ud835\udd05",bfr:"\ud835\udd1f",bigcap:"\u22c2",bigcirc:"\u25ef",bigcup:"\u22c3",bigodot:"\u2a00",bigoplus:"\u2a01",bigotimes:"\u2a02",bigsqcup:"\u2a06",bigstar:"\u2605",bigtriangledown:"\u25bd",bigtriangleup:"\u25b3",biguplus:"\u2a04",bigvee:"\u22c1",bigwedge:"\u22c0",bkarow:"\u290d",blacklozenge:"\u29eb",blacksquare:"\u25aa",blacktriangle:"\u25b4",blacktriangledown:"\u25be",blacktriangleleft:"\u25c2",blacktriangleright:"\u25b8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20e5",bnequiv:"\u2261\u20e5",bNot:"\u2aed",bnot:"\u2310",Bopf:"\ud835\udd39",bopf:"\ud835\udd53",bot:"\u22a5",bottom:"\u22a5",bowtie:"\u22c8",boxbox:"\u29c9",boxdl:"\u2510",boxdL:"\u2555",boxDl:"\u2556",boxDL:"\u2557",boxdr:"\u250c",boxdR:"\u2552",boxDr:"\u2553",boxDR:"\u2554",boxh:"\u2500",boxH:"\u2550",boxhd:"\u252c",boxHd:"\u2564",boxhD:"\u2565",boxHD:"\u2566",boxhu:"\u2534",boxHu:"\u2567",boxhU:"\u2568",boxHU:"\u2569",boxminus:"\u229f",boxplus:"\u229e",boxtimes:"\u22a0",boxul:"\u2518",boxuL:"\u255b",boxUl:"\u255c",boxUL:"\u255d",boxur:"\u2514",boxuR:"\u2558",boxUr:"\u2559",boxUR:"\u255a",boxv:"\u2502",boxV:"\u2551",boxvh:"\u253c",boxvH:"\u256a",boxVh:"\u256b",boxVH:"\u256c",boxvl:"\u2524",boxvL:"\u2561",boxVl:"\u2562",boxVL:"\u2563",boxvr:"\u251c",boxvR:"\u255e",boxVr:"\u255f",boxVR:"\u2560",bprime:"\u2035",breve:"\u02d8",Breve:"\u02d8",brvbar:"\xa6",bscr:"\ud835\udcb7",Bscr:"\u212c",bsemi:"\u204f",bsim:"\u223d",bsime:"\u22cd",bsolb:"\u29c5",bsol:"\\",bsolhsub:"\u27c8",bull:"\u2022",bullet:"\u2022",bump:"\u224e",bumpE:"\u2aae",bumpe:"\u224f",Bumpeq:"\u224e",bumpeq:"\u224f",Cacute:"\u0106",cacute:"\u0107",capand:"\u2a44",capbrcup:"\u2a49",capcap:"\u2a4b",cap:"\u2229",Cap:"\u22d2",capcup:"\u2a47",capdot:"\u2a40",CapitalDifferentialD:"\u2145",caps:"\u2229\ufe00",caret:"\u2041",caron:"\u02c7",Cayleys:"\u212d",ccaps:"\u2a4d",Ccaron:"\u010c",ccaron:"\u010d",Ccedil:"\xc7",ccedil:"\xe7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2a4c",ccupssm:"\u2a50",Cdot:"\u010a",cdot:"\u010b",cedil:"\xb8",Cedilla:"\xb8",cemptyv:"\u29b2",cent:"\xa2",centerdot:"\xb7",CenterDot:"\xb7",cfr:"\ud835\udd20",Cfr:"\u212d",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03a7",chi:"\u03c7",circ:"\u02c6",circeq:"\u2257",circlearrowleft:"\u21ba",circlearrowright:"\u21bb",circledast:"\u229b",circledcirc:"\u229a",circleddash:"\u229d",CircleDot:"\u2299",circledR:"\xae",circledS:"\u24c8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cir:"\u25cb",cirE:"\u29c3",cire:"\u2257",cirfnint:"\u2a10",cirmid:"\u2aef",cirscir:"\u29c2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201d",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",colon:":",Colon:"\u2237",Colone:"\u2a74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2a6d",Congruent:"\u2261",conint:"\u222e",Conint:"\u222f",ContourIntegral:"\u222e",copf:"\ud835\udd54",Copf:"\u2102",coprod:"\u2210",Coproduct:"\u2210",copy:"\xa9",COPY:"\xa9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21b5",cross:"\u2717",Cross:"\u2a2f",Cscr:"\ud835\udc9e",cscr:"\ud835\udcb8",csub:"\u2acf",csube:"\u2ad1",csup:"\u2ad0",csupe:"\u2ad2",ctdot:"\u22ef",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22de",cuesc:"\u22df",cularr:"\u21b6",cularrp:"\u293d",cupbrcap:"\u2a48",cupcap:"\u2a46",CupCap:"\u224d",cup:"\u222a",Cup:"\u22d3",cupcup:"\u2a4a",cupdot:"\u228d",cupor:"\u2a45",cups:"\u222a\ufe00",curarr:"\u21b7",curarrm:"\u293c",curlyeqprec:"\u22de",curlyeqsucc:"\u22df",curlyvee:"\u22ce",curlywedge:"\u22cf",curren:"\xa4",curvearrowleft:"\u21b6",curvearrowright:"\u21b7",cuvee:"\u22ce",cuwed:"\u22cf",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232d",dagger:"\u2020",Dagger:"\u2021",daleth:"\u2138",darr:"\u2193",Darr:"\u21a1",dArr:"\u21d3",dash:"\u2010",Dashv:"\u2ae4",dashv:"\u22a3",dbkarow:"\u290f",dblac:"\u02dd",Dcaron:"\u010e",
  dcaron:"\u010f",Dcy:"\u0414",dcy:"\u0434",ddagger:"\u2021",ddarr:"\u21ca",DD:"\u2145",dd:"\u2146",DDotrahd:"\u2911",ddotseq:"\u2a77",deg:"\xb0",Del:"\u2207",Delta:"\u0394",delta:"\u03b4",demptyv:"\u29b1",dfisht:"\u297f",Dfr:"\ud835\udd07",dfr:"\ud835\udd21",dHar:"\u2965",dharl:"\u21c3",dharr:"\u21c2",DiacriticalAcute:"\xb4",DiacriticalDot:"\u02d9",DiacriticalDoubleAcute:"\u02dd",DiacriticalGrave:"`",DiacriticalTilde:"\u02dc",diam:"\u22c4",diamond:"\u22c4",Diamond:"\u22c4",diamondsuit:"\u2666",diams:"\u2666",die:"\xa8",DifferentialD:"\u2146",digamma:"\u03dd",disin:"\u22f2",div:"\xf7",divide:"\xf7",divideontimes:"\u22c7",divonx:"\u22c7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231e",dlcrop:"\u230d",dollar:"$",Dopf:"\ud835\udd3b",dopf:"\ud835\udd55",Dot:"\xa8",dot:"\u02d9",DotDot:"\u20dc",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22a1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222f",DoubleDot:"\xa8",DoubleDownArrow:"\u21d3",DoubleLeftArrow:"\u21d0",DoubleLeftRightArrow:"\u21d4",DoubleLeftTee:"\u2ae4",DoubleLongLeftArrow:"\u27f8",DoubleLongLeftRightArrow:"\u27fa",DoubleLongRightArrow:"\u27f9",DoubleRightArrow:"\u21d2",DoubleRightTee:"\u22a8",DoubleUpArrow:"\u21d1",DoubleUpDownArrow:"\u21d5",DoubleVerticalBar:"\u2225",DownArrowBar:"\u2913",downarrow:"\u2193",DownArrow:"\u2193",Downarrow:"\u21d3",DownArrowUpArrow:"\u21f5",DownBreve:"\u0311",downdownarrows:"\u21ca",downharpoonleft:"\u21c3",downharpoonright:"\u21c2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295e",DownLeftVectorBar:"\u2956",DownLeftVector:"\u21bd",DownRightTeeVector:"\u295f",DownRightVectorBar:"\u2957",DownRightVector:"\u21c1",DownTeeArrow:"\u21a7",DownTee:"\u22a4",drbkarow:"\u2910",drcorn:"\u231f",drcrop:"\u230c",Dscr:"\ud835\udc9f",dscr:"\ud835\udcb9",DScy:"\u0405",dscy:"\u0455",dsol:"\u29f6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22f1",dtri:"\u25bf",dtrif:"\u25be",duarr:"\u21f5",duhar:"\u296f",dwangle:"\u29a6",DZcy:"\u040f",dzcy:"\u045f",dzigrarr:"\u27ff",Eacute:"\xc9",eacute:"\xe9",easter:"\u2a6e",Ecaron:"\u011a",ecaron:"\u011b",Ecirc:"\xca",ecirc:"\xea",ecir:"\u2256",ecolon:"\u2255",Ecy:"\u042d",ecy:"\u044d",eDDot:"\u2a77",Edot:"\u0116",edot:"\u0117",eDot:"\u2251",ee:"\u2147",efDot:"\u2252",Efr:"\ud835\udd08",efr:"\ud835\udd22",eg:"\u2a9a",Egrave:"\xc8",egrave:"\xe8",egs:"\u2a96",egsdot:"\u2a98",el:"\u2a99",Element:"\u2208",elinters:"\u23e7",ell:"\u2113",els:"\u2a95",elsdot:"\u2a97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25fb",emptyv:"\u2205",EmptyVerySmallSquare:"\u25ab",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",ENG:"\u014a",eng:"\u014b",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\ud835\udd3c",eopf:"\ud835\udd56",epar:"\u22d5",eparsl:"\u29e3",eplus:"\u2a71",epsi:"\u03b5",Epsilon:"\u0395",epsilon:"\u03b5",epsiv:"\u03f5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2a96",eqslantless:"\u2a95",Equal:"\u2a75",equals:"=",EqualTilde:"\u2242",equest:"\u225f",Equilibrium:"\u21cc",equiv:"\u2261",equivDD:"\u2a78",eqvparsl:"\u29e5",erarr:"\u2971",erDot:"\u2253",escr:"\u212f",Escr:"\u2130",esdot:"\u2250",Esim:"\u2a73",esim:"\u2242",Eta:"\u0397",eta:"\u03b7",ETH:"\xd0",eth:"\xf0",Euml:"\xcb",euml:"\xeb",euro:"\u20ac",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",exponentiale:"\u2147",ExponentialE:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\ufb03",fflig:"\ufb00",ffllig:"\ufb04",Ffr:"\ud835\udd09",ffr:"\ud835\udd23",filig:"\ufb01",FilledSmallSquare:"\u25fc",FilledVerySmallSquare:"\u25aa",fjlig:"fj",flat:"\u266d",fllig:"\ufb02",fltns:"\u25b1",fnof:"\u0192",Fopf:"\ud835\udd3d",fopf:"\ud835\udd57",forall:"\u2200",ForAll:"\u2200",fork:"\u22d4",forkv:"\u2ad9",Fouriertrf:"\u2131",fpartint:"\u2a0d",frac12:"\xbd",frac13:"\u2153",frac14:"\xbc",frac15:"\u2155",frac16:"\u2159",frac18:"\u215b",frac23:"\u2154",frac25:"\u2156",frac34:"\xbe",frac35:"\u2157",frac38:"\u215c",frac45:"\u2158",frac56:"\u215a",frac58:"\u215d",frac78:"\u215e",frasl:"\u2044",frown:"\u2322",fscr:"\ud835\udcbb",Fscr:"\u2131",gacute:"\u01f5",Gamma:"\u0393",gamma:"\u03b3",Gammad:"\u03dc",gammad:"\u03dd",gap:"\u2a86",Gbreve:"\u011e",gbreve:"\u011f",Gcedil:"\u0122",Gcirc:"\u011c",gcirc:"\u011d",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",ge:"\u2265",gE:"\u2267",gEl:"\u2a8c",gel:"\u22db",geq:"\u2265",geqq:"\u2267",geqslant:"\u2a7e",gescc:"\u2aa9",ges:"\u2a7e",gesdot:"\u2a80",gesdoto:"\u2a82",gesdotol:"\u2a84",gesl:"\u22db\ufe00",gesles:"\u2a94",Gfr:"\ud835\udd0a",gfr:"\ud835\udd24",gg:"\u226b",Gg:"\u22d9",ggg:"\u22d9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gla:"\u2aa5",gl:"\u2277",glE:"\u2a92",glj:"\u2aa4",gnap:"\u2a8a",gnapprox:"\u2a8a",gne:"\u2a88",gnE:"\u2269",gneq:"\u2a88",gneqq:"\u2269",gnsim:"\u22e7",Gopf:"\ud835\udd3e",gopf:"\ud835\udd58",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22db",GreaterFullEqual:"\u2267",GreaterGreater:"\u2aa2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2a7e",GreaterTilde:"\u2273",Gscr:"\ud835\udca2",gscr:"\u210a",gsim:"\u2273",gsime:"\u2a8e",gsiml:"\u2a90",gtcc:"\u2aa7",gtcir:"\u2a7a",gt:">",GT:">",Gt:"\u226b",gtdot:"\u22d7",gtlPar:"\u2995",gtquest:"\u2a7c",gtrapprox:"\u2a86",gtrarr:"\u2978",gtrdot:"\u22d7",gtreqless:"\u22db",gtreqqless:"\u2a8c",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\ufe00",gvnE:"\u2269\ufe00",Hacek:"\u02c7",hairsp:"\u200a",half:"\xbd",hamilt:"\u210b",HARDcy:"\u042a",hardcy:"\u044a",harrcir:"\u2948",harr:"\u2194",hArr:"\u21d4",harrw:"\u21ad",Hat:"^",hbar:"\u210f",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22b9",hfr:"\ud835\udd25",Hfr:"\u210c",HilbertSpace:"\u210b",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21ff",homtht:"\u223b",hookleftarrow:"\u21a9",hookrightarrow:"\u21aa",hopf:"\ud835\udd59",Hopf:"\u210d",horbar:"\u2015",HorizontalLine:"\u2500",hscr:"\ud835\udcbd",Hscr:"\u210b",hslash:"\u210f",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224e",HumpEqual:"\u224f",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xcd",iacute:"\xed",ic:"\u2063",Icirc:"\xce",icirc:"\xee",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xa1",iff:"\u21d4",ifr:"\ud835\udd26",Ifr:"\u2111",Igrave:"\xcc",igrave:"\xec",ii:"\u2148",iiiint:"\u2a0c",iiint:"\u222d",iinfin:"\u29dc",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Imacr:"\u012a",imacr:"\u012b",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",Im:"\u2111",imof:"\u22b7",imped:"\u01b5",Implies:"\u21d2",incare:"\u2105","in":"\u2208",infin:"\u221e",infintie:"\u29dd",inodot:"\u0131",intcal:"\u22ba","int":"\u222b",Int:"\u222c",integers:"\u2124",Integral:"\u222b",intercal:"\u22ba",Intersection:"\u22c2",intlarhk:"\u2a17",intprod:"\u2a3c",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012e",iogon:"\u012f",Iopf:"\ud835\udd40",iopf:"\ud835\udd5a",Iota:"\u0399",iota:"\u03b9",iprod:"\u2a3c",iquest:"\xbf",iscr:"\ud835\udcbe",Iscr:"\u2110",isin:"\u2208",isindot:"\u22f5",isinE:"\u22f9",isins:"\u22f4",isinsv:"\u22f3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xcf",iuml:"\xef",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\ud835\udd0d",jfr:"\ud835\udd27",jmath:"\u0237",Jopf:"\ud835\udd41",jopf:"\ud835\udd5b",Jscr:"\ud835\udca5",jscr:"\ud835\udcbf",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039a",kappa:"\u03ba",kappav:"\u03f0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041a",kcy:"\u043a",Kfr:"\ud835\udd0e",kfr:"\ud835\udd28",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040c",kjcy:"\u045c",Kopf:"\ud835\udd42",kopf:"\ud835\udd5c",Kscr:"\ud835\udca6",kscr:"\ud835\udcc0",lAarr:"\u21da",Lacute:"\u0139",lacute:"\u013a",laemptyv:"\u29b4",lagran:"\u2112",Lambda:"\u039b",lambda:"\u03bb",lang:"\u27e8",Lang:"\u27ea",langd:"\u2991",langle:"\u27e8",lap:"\u2a85",Laplacetrf:"\u2112",laquo:"\xab",larrb:"\u21e4",larrbfs:"\u291f",larr:"\u2190",Larr:"\u219e",lArr:"\u21d0",larrfs:"\u291d",larrhk:"\u21a9",larrlp:"\u21ab",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21a2",latail:"\u2919",lAtail:"\u291b",lat:"\u2aab",late:"\u2aad",lates:"\u2aad\ufe00",lbarr:"\u290c",lBarr:"\u290e",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298b",lbrksld:"\u298f",lbrkslu:"\u298d",Lcaron:"\u013d",lcaron:"\u013e",Lcedil:"\u013b",lcedil:"\u013c",lceil:"\u2308",lcub:"{",Lcy:"\u041b",lcy:"\u043b",ldca:"\u2936",ldquo:"\u201c",ldquor:"\u201e",ldrdhar:"\u2967",ldrushar:"\u294b",ldsh:"\u21b2",le:"\u2264",lE:"\u2266",LeftAngleBracket:"\u27e8",LeftArrowBar:"\u21e4",leftarrow:"\u2190",LeftArrow:"\u2190",Leftarrow:"\u21d0",LeftArrowRightArrow:"\u21c6",leftarrowtail:"\u21a2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27e6",LeftDownTeeVector:"\u2961",LeftDownVectorBar:"\u2959",LeftDownVector:"\u21c3",LeftFloor:"\u230a",leftharpoondown:"\u21bd",leftharpoonup:"\u21bc",leftleftarrows:"\u21c7",leftrightarrow:"\u2194",LeftRightArrow:"\u2194",Leftrightarrow:"\u21d4",leftrightarrows:"\u21c6",leftrightharpoons:"\u21cb",leftrightsquigarrow:"\u21ad",LeftRightVector:"\u294e",LeftTeeArrow:"\u21a4",LeftTee:"\u22a3",LeftTeeVector:"\u295a",leftthreetimes:"\u22cb",LeftTriangleBar:"\u29cf",LeftTriangle:"\u22b2",LeftTriangleEqual:"\u22b4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVectorBar:"\u2958",LeftUpVector:"\u21bf",LeftVectorBar:"\u2952",LeftVector:"\u21bc",lEg:"\u2a8b",leg:"\u22da",leq:"\u2264",leqq:"\u2266",leqslant:"\u2a7d",lescc:"\u2aa8",les:"\u2a7d",lesdot:"\u2a7f",lesdoto:"\u2a81",lesdotor:"\u2a83",lesg:"\u22da\ufe00",lesges:"\u2a93",lessapprox:"\u2a85",lessdot:"\u22d6",lesseqgtr:"\u22da",lesseqqgtr:"\u2a8b",LessEqualGreater:"\u22da",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2aa1",lesssim:"\u2272",LessSlantEqual:"\u2a7d",LessTilde:"\u2272",lfisht:"\u297c",lfloor:"\u230a",Lfr:"\ud835\udd0f",lfr:"\ud835\udd29",lg:"\u2276",lgE:"\u2a91",lHar:"\u2962",lhard:"\u21bd",lharu:"\u21bc",lharul:"\u296a",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",llarr:"\u21c7",ll:"\u226a",Ll:"\u22d8",llcorner:"\u231e",Lleftarrow:"\u21da",llhard:"\u296b",lltri:"\u25fa",Lmidot:"\u013f",lmidot:"\u0140",lmoustache:"\u23b0",lmoust:"\u23b0",lnap:"\u2a89",lnapprox:"\u2a89",lne:"\u2a87",lnE:"\u2268",lneq:"\u2a87",lneqq:"\u2268",lnsim:"\u22e6",loang:"\u27ec",loarr:"\u21fd",lobrk:"\u27e6",longleftarrow:"\u27f5",LongLeftArrow:"\u27f5",Longleftarrow:"\u27f8",longleftrightarrow:"\u27f7",LongLeftRightArrow:"\u27f7",Longleftrightarrow:"\u27fa",longmapsto:"\u27fc",longrightarrow:"\u27f6",LongRightArrow:"\u27f6",Longrightarrow:"\u27f9",looparrowleft:"\u21ab",looparrowright:"\u21ac",lopar:"\u2985",Lopf:"\ud835\udd43",lopf:"\ud835\udd5d",loplus:"\u2a2d",lotimes:"\u2a34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25ca",lozenge:"\u25ca",lozf:"\u29eb",lpar:"(",lparlt:"\u2993",lrarr:"\u21c6",lrcorner:"\u231f",lrhar:"\u21cb",lrhard:"\u296d",lrm:"\u200e",lrtri:"\u22bf",lsaquo:"\u2039",lscr:"\ud835\udcc1",Lscr:"\u2112",lsh:"\u21b0",Lsh:"\u21b0",lsim:"\u2272",lsime:"\u2a8d",lsimg:"\u2a8f",lsqb:"[",lsquo:"\u2018",lsquor:"\u201a",Lstrok:"\u0141",lstrok:"\u0142",ltcc:"\u2aa6",ltcir:"\u2a79",lt:"<",LT:"<",Lt:"\u226a",ltdot:"\u22d6",lthree:"\u22cb",ltimes:"\u22c9",ltlarr:"\u2976",ltquest:"\u2a7b",ltri:"\u25c3",ltrie:"\u22b4",ltrif:"\u25c2",ltrPar:"\u2996",lurdshar:"\u294a",luruhar:"\u2966",lvertneqq:"\u2268\ufe00",lvnE:"\u2268\ufe00",macr:"\xaf",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21a6",mapsto:"\u21a6",mapstodown:"\u21a7",mapstoleft:"\u21a4",mapstoup:"\u21a5",marker:"\u25ae",mcomma:"\u2a29",Mcy:"\u041c",mcy:"\u043c",mdash:"\u2014",mDDot:"\u223a",measuredangle:"\u2221",MediumSpace:"\u205f",Mellintrf:"\u2133",Mfr:"\ud835\udd10",mfr:"\ud835\udd2a",mho:"\u2127",micro:"\xb5",midast:"*",midcir:"\u2af0",mid:"\u2223",middot:"\xb7",minusb:"\u229f",minus:"\u2212",minusd:"\u2238",minusdu:"\u2a2a",MinusPlus:"\u2213",mlcp:"\u2adb",mldr:"\u2026",mnplus:"\u2213",models:"\u22a7",Mopf:"\ud835\udd44",mopf:"\ud835\udd5e",mp:"\u2213",mscr:"\ud835\udcc2",Mscr:"\u2133",mstpos:"\u223e",Mu:"\u039c",mu:"\u03bc",multimap:"\u22b8",mumap:"\u22b8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20d2",nap:"\u2249",napE:"\u2a70\u0338",napid:"\u224b\u0338",napos:"\u0149",napprox:"\u2249",natural:"\u266e",naturals:"\u2115",natur:"\u266e",nbsp:"\xa0",nbump:"\u224e\u0338",nbumpe:"\u224f\u0338",ncap:"\u2a43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2a6d\u0338",ncup:"\u2a42",Ncy:"\u041d",ncy:"\u043d",ndash:"\u2013",nearhk:"\u2924",nearr:"\u2197",neArr:"\u21d7",nearrow:"\u2197",ne:"\u2260",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200b",NegativeThickSpace:"\u200b",NegativeThinSpace:"\u200b",NegativeVeryThinSpace:"\u200b",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226b",NestedLessLess:"\u226a",NewLine:"\n",nexist:"\u2204",nexists:"\u2204",Nfr:"\ud835\udd11",nfr:"\ud835\udd2b",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2a7e\u0338",nges:"\u2a7e\u0338",nGg:"\u22d9\u0338",ngsim:"\u2275",nGt:"\u226b\u20d2",ngt:"\u226f",ngtr:"\u226f",nGtv:"\u226b\u0338",nharr:"\u21ae",nhArr:"\u21ce",nhpar:"\u2af2",ni:"\u220b",nis:"\u22fc",nisd:"\u22fa",niv:"\u220b",NJcy:"\u040a",njcy:"\u045a",nlarr:"\u219a",nlArr:"\u21cd",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nleftarrow:"\u219a",nLeftarrow:"\u21cd",nleftrightarrow:"\u21ae",nLeftrightarrow:"\u21ce",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2a7d\u0338",nles:"\u2a7d\u0338",nless:"\u226e",nLl:"\u22d8\u0338",nlsim:"\u2274",nLt:"\u226a\u20d2",nlt:"\u226e",nltri:"\u22ea",nltrie:"\u22ec",nLtv:"\u226a\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xa0",nopf:"\ud835\udd5f",Nopf:"\u2115",Not:"\u2aec",not:"\xac",NotCongruent:"\u2262",NotCupCap:"\u226d",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226f",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226b\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2a7e\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224e\u0338",NotHumpEqual:"\u224f\u0338",notin:"\u2209",notindot:"\u22f5\u0338",notinE:"\u22f9\u0338",notinva:"\u2209",notinvb:"\u22f7",notinvc:"\u22f6",NotLeftTriangleBar:"\u29cf\u0338",NotLeftTriangle:"\u22ea",NotLeftTriangleEqual:"\u22ec",NotLess:"\u226e",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226a\u0338",NotLessSlantEqual:"\u2a7d\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2aa2\u0338",NotNestedLessLess:"\u2aa1\u0338",notni:"\u220c",notniva:"\u220c",notnivb:"\u22fe",notnivc:"\u22fd",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2aaf\u0338",NotPrecedesSlantEqual:"\u22e0",NotReverseElement:"\u220c",NotRightTriangleBar:"\u29d0\u0338",NotRightTriangle:"\u22eb",NotRightTriangleEqual:"\u22ed",NotSquareSubset:"\u228f\u0338",NotSquareSubsetEqual:"\u22e2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22e3",NotSubset:"\u2282\u20d2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2ab0\u0338",NotSucceedsSlantEqual:"\u22e1",NotSucceedsTilde:"\u227f\u0338",NotSuperset:"\u2283\u20d2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",nparallel:"\u2226",npar:"\u2226",nparsl:"\u2afd\u20e5",npart:"\u2202\u0338",npolint:"\u2a14",npr:"\u2280",nprcue:"\u22e0",nprec:"\u2280",npreceq:"\u2aaf\u0338",npre:"\u2aaf\u0338",nrarrc:"\u2933\u0338",nrarr:"\u219b",nrArr:"\u21cf",nrarrw:"\u219d\u0338",nrightarrow:"\u219b",nRightarrow:"\u21cf",nrtri:"\u22eb",nrtrie:"\u22ed",nsc:"\u2281",nsccue:"\u22e1",nsce:"\u2ab0\u0338",Nscr:"\ud835\udca9",nscr:"\ud835\udcc3",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22e2",nsqsupe:"\u22e3",nsub:"\u2284",nsubE:"\u2ac5\u0338",nsube:"\u2288",nsubset:"\u2282\u20d2",nsubseteq:"\u2288",nsubseteqq:"\u2ac5\u0338",nsucc:"\u2281",nsucceq:"\u2ab0\u0338",nsup:"\u2285",nsupE:"\u2ac6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20d2",nsupseteq:"\u2289",nsupseteqq:"\u2ac6\u0338",ntgl:"\u2279",Ntilde:"\xd1",ntilde:"\xf1",ntlg:"\u2278",ntriangleleft:"\u22ea",ntrianglelefteq:"\u22ec",ntriangleright:"\u22eb",ntrianglerighteq:"\u22ed",Nu:"\u039d",nu:"\u03bd",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224d\u20d2",nvdash:"\u22ac",nvDash:"\u22ad",nVdash:"\u22ae",nVDash:"\u22af",nvge:"\u2265\u20d2",nvgt:">\u20d2",nvHarr:"\u2904",nvinfin:"\u29de",nvlArr:"\u2902",nvle:"\u2264\u20d2",nvlt:"<\u20d2",nvltrie:"\u22b4\u20d2",nvrArr:"\u2903",nvrtrie:"\u22b5\u20d2",nvsim:"\u223c\u20d2",nwarhk:"\u2923",nwarr:"\u2196",nwArr:"\u21d6",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xd3",oacute:"\xf3",oast:"\u229b",Ocirc:"\xd4",ocirc:"\xf4",ocir:"\u229a",Ocy:"\u041e",ocy:"\u043e",odash:"\u229d",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2a38",odot:"\u2299",odsold:"\u29bc",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29bf",Ofr:"\ud835\udd12",ofr:"\ud835\udd2c",ogon:"\u02db",Ograve:"\xd2",ograve:"\xf2",ogt:"\u29c1",ohbar:"\u29b5",ohm:"\u03a9",oint:"\u222e",olarr:"\u21ba",olcir:"\u29be",olcross:"\u29bb",oline:"\u203e",olt:"\u29c0",Omacr:"\u014c",omacr:"\u014d",Omega:"\u03a9",omega:"\u03c9",Omicron:"\u039f",omicron:"\u03bf",omid:"\u29b6",ominus:"\u2296",Oopf:"\ud835\udd46",oopf:"\ud835\udd60",opar:"\u29b7",OpenCurlyDoubleQuote:"\u201c",OpenCurlyQuote:"\u2018",operp:"\u29b9",oplus:"\u2295",orarr:"\u21bb",Or:"\u2a54",or:"\u2228",ord:"\u2a5d",order:"\u2134",orderof:"\u2134",ordf:"\xaa",ordm:"\xba",origof:"\u22b6",oror:"\u2a56",orslope:"\u2a57",orv:"\u2a5b",oS:"\u24c8",Oscr:"\ud835\udcaa",oscr:"\u2134",Oslash:"\xd8",oslash:"\xf8",osol:"\u2298",Otilde:"\xd5",otilde:"\xf5",otimesas:"\u2a36",Otimes:"\u2a37",otimes:"\u2297",Ouml:"\xd6",ouml:"\xf6",ovbar:"\u233d",OverBar:"\u203e",OverBrace:"\u23de",OverBracket:"\u23b4",OverParenthesis:"\u23dc",para:"\xb6",parallel:"\u2225",par:"\u2225",parsim:"\u2af3",parsl:"\u2afd",part:"\u2202",PartialD:"\u2202",Pcy:"\u041f",pcy:"\u043f",percnt:"%",period:".",permil:"\u2030",perp:"\u22a5",pertenk:"\u2031",Pfr:"\ud835\udd13",pfr:"\ud835\udd2d",Phi:"\u03a6",phi:"\u03c6",phiv:"\u03d5",phmmat:"\u2133",phone:"\u260e",Pi:"\u03a0",pi:"\u03c0",pitchfork:"\u22d4",piv:"\u03d6",planck:"\u210f",planckh:"\u210e",plankv:"\u210f",plusacir:"\u2a23",plusb:"\u229e",pluscir:"\u2a22",plus:"+",plusdo:"\u2214",plusdu:"\u2a25",pluse:"\u2a72",PlusMinus:"\xb1",plusmn:"\xb1",plussim:"\u2a26",plustwo:"\u2a27",pm:"\xb1",Poincareplane:"\u210c",pointint:"\u2a15",popf:"\ud835\udd61",Popf:"\u2119",pound:"\xa3",prap:"\u2ab7",Pr:"\u2abb",pr:"\u227a",prcue:"\u227c",precapprox:"\u2ab7",prec:"\u227a",preccurlyeq:"\u227c",Precedes:"\u227a",PrecedesEqual:"\u2aaf",PrecedesSlantEqual:"\u227c",PrecedesTilde:"\u227e",preceq:"\u2aaf",precnapprox:"\u2ab9",precneqq:"\u2ab5",precnsim:"\u22e8",pre:"\u2aaf",prE:"\u2ab3",precsim:"\u227e",prime:"\u2032",Prime:"\u2033",primes:"\u2119",prnap:"\u2ab9",prnE:"\u2ab5",prnsim:"\u22e8",prod:"\u220f",Product:"\u220f",profalar:"\u232e",profline:"\u2312",profsurf:"\u2313",prop:"\u221d",Proportional:"\u221d",Proportion:"\u2237",propto:"\u221d",prsim:"\u227e",prurel:"\u22b0",Pscr:"\ud835\udcab",pscr:"\ud835\udcc5",Psi:"\u03a8",psi:"\u03c8",puncsp:"\u2008",Qfr:"\ud835\udd14",qfr:"\ud835\udd2e",qint:"\u2a0c",qopf:"\ud835\udd62",Qopf:"\u211a",qprime:"\u2057",Qscr:"\ud835\udcac",qscr:"\ud835\udcc6",quaternions:"\u210d",quatint:"\u2a16",quest:"?",questeq:"\u225f",quot:'"',QUOT:'"',rAarr:"\u21db",race:"\u223d\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221a",raemptyv:"\u29b3",rang:"\u27e9",Rang:"\u27eb",rangd:"\u2992",range:"\u29a5",rangle:"\u27e9",raquo:"\xbb",rarrap:"\u2975",rarrb:"\u21e5",rarrbfs:"\u2920",rarrc:"\u2933",rarr:"\u2192",Rarr:"\u21a0",rArr:"\u21d2",rarrfs:"\u291e",rarrhk:"\u21aa",rarrlp:"\u21ac",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21a3",rarrw:"\u219d",ratail:"\u291a",rAtail:"\u291c",ratio:"\u2236",rationals:"\u211a",rbarr:"\u290d",rBarr:"\u290f",RBarr:"\u2910",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298c",rbrksld:"\u298e",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201d",rdquor:"\u201d",rdsh:"\u21b3",real:"\u211c",realine:"\u211b",realpart:"\u211c",reals:"\u211d",Re:"\u211c",rect:"\u25ad",reg:"\xae",REG:"\xae",ReverseElement:"\u220b",ReverseEquilibrium:"\u21cb",ReverseUpEquilibrium:"\u296f",rfisht:"\u297d",rfloor:"\u230b",rfr:"\ud835\udd2f",Rfr:"\u211c",rHar:"\u2964",rhard:"\u21c1",rharu:"\u21c0",rharul:"\u296c",Rho:"\u03a1",rho:"\u03c1",rhov:"\u03f1",RightAngleBracket:"\u27e9",RightArrowBar:"\u21e5",rightarrow:"\u2192",RightArrow:"\u2192",Rightarrow:"\u21d2",RightArrowLeftArrow:"\u21c4",rightarrowtail:"\u21a3",RightCeiling:"\u2309",RightDoubleBracket:"\u27e7",RightDownTeeVector:"\u295d",RightDownVectorBar:"\u2955",RightDownVector:"\u21c2",RightFloor:"\u230b",rightharpoondown:"\u21c1",rightharpoonup:"\u21c0",rightleftarrows:"\u21c4",rightleftharpoons:"\u21cc",rightrightarrows:"\u21c9",rightsquigarrow:"\u219d",RightTeeArrow:"\u21a6",RightTee:"\u22a2",RightTeeVector:"\u295b",rightthreetimes:"\u22cc",RightTriangleBar:"\u29d0",RightTriangle:"\u22b3",RightTriangleEqual:"\u22b5",RightUpDownVector:"\u294f",RightUpTeeVector:"\u295c",RightUpVectorBar:"\u2954",RightUpVector:"\u21be",RightVectorBar:"\u2953",RightVector:"\u21c0",ring:"\u02da",risingdotseq:"\u2253",rlarr:"\u21c4",rlhar:"\u21cc",rlm:"\u200f",rmoustache:"\u23b1",rmoust:"\u23b1",rnmid:"\u2aee",roang:"\u27ed",roarr:"\u21fe",robrk:"\u27e7",ropar:"\u2986",ropf:"\ud835\udd63",Ropf:"\u211d",roplus:"\u2a2e",rotimes:"\u2a35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2a12",rrarr:"\u21c9",Rrightarrow:"\u21db",rsaquo:"\u203a",rscr:"\ud835\udcc7",Rscr:"\u211b",rsh:"\u21b1",Rsh:"\u21b1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22cc",rtimes:"\u22ca",rtri:"\u25b9",rtrie:"\u22b5",rtrif:"\u25b8",rtriltri:"\u29ce",RuleDelayed:"\u29f4",ruluhar:"\u2968",rx:"\u211e",Sacute:"\u015a",sacute:"\u015b",sbquo:"\u201a",scap:"\u2ab8",Scaron:"\u0160",scaron:"\u0161",Sc:"\u2abc",sc:"\u227b",sccue:"\u227d",sce:"\u2ab0",scE:"\u2ab4",Scedil:"\u015e",scedil:"\u015f",Scirc:"\u015c",scirc:"\u015d",scnap:"\u2aba",scnE:"\u2ab6",scnsim:"\u22e9",scpolint:"\u2a13",scsim:"\u227f",Scy:"\u0421",scy:"\u0441",sdotb:"\u22a1",sdot:"\u22c5",sdote:"\u2a66",searhk:"\u2925",searr:"\u2198",seArr:"\u21d8",searrow:"\u2198",sect:"\xa7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\ud835\udd16",sfr:"\ud835\udd30",sfrown:"\u2322",sharp:"\u266f",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xad",Sigma:"\u03a3",sigma:"\u03c3",sigmaf:"\u03c2",sigmav:"\u03c2",sim:"\u223c",simdot:"\u2a6a",sime:"\u2243",simeq:"\u2243",simg:"\u2a9e",simgE:"\u2aa0",siml:"\u2a9d",simlE:"\u2a9f",simne:"\u2246",simplus:"\u2a24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2a33",smeparsl:"\u29e4",smid:"\u2223",smile:"\u2323",smt:"\u2aaa",smte:"\u2aac",smtes:"\u2aac\ufe00",SOFTcy:"\u042c",softcy:"\u044c",solbar:"\u233f",solb:"\u29c4",sol:"/",Sopf:"\ud835\udd4a",sopf:"\ud835\udd64",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\ufe00",sqcup:"\u2294",sqcups:"\u2294\ufe00",Sqrt:"\u221a",sqsub:"\u228f",sqsube:"\u2291",sqsubset:"\u228f",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",square:"\u25a1",Square:"\u25a1",SquareIntersection:"\u2293",SquareSubset:"\u228f",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25aa",squ:"\u25a1",squf:"\u25aa",srarr:"\u2192",Sscr:"\ud835\udcae",sscr:"\ud835\udcc8",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22c6",Star:"\u22c6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03f5",straightphi:"\u03d5",strns:"\xaf",sub:"\u2282",Sub:"\u22d0",subdot:"\u2abd",subE:"\u2ac5",sube:"\u2286",subedot:"\u2ac3",submult:"\u2ac1",subnE:"\u2acb",subne:"\u228a",subplus:"\u2abf",subrarr:"\u2979",subset:"\u2282",Subset:"\u22d0",subseteq:"\u2286",subseteqq:"\u2ac5",SubsetEqual:"\u2286",subsetneq:"\u228a",subsetneqq:"\u2acb",subsim:"\u2ac7",subsub:"\u2ad5",subsup:"\u2ad3",succapprox:"\u2ab8",succ:"\u227b",succcurlyeq:"\u227d",Succeeds:"\u227b",SucceedsEqual:"\u2ab0",SucceedsSlantEqual:"\u227d",SucceedsTilde:"\u227f",succeq:"\u2ab0",succnapprox:"\u2aba",succneqq:"\u2ab6",succnsim:"\u22e9",succsim:"\u227f",SuchThat:"\u220b",sum:"\u2211",Sum:"\u2211",sung:"\u266a",sup1:"\xb9",sup2:"\xb2",sup3:"\xb3",sup:"\u2283",Sup:"\u22d1",supdot:"\u2abe",supdsub:"\u2ad8",supE:"\u2ac6",supe:"\u2287",supedot:"\u2ac4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27c9",suphsub:"\u2ad7",suplarr:"\u297b",supmult:"\u2ac2",supnE:"\u2acc",supne:"\u228b",supplus:"\u2ac0",supset:"\u2283",Supset:"\u22d1",supseteq:"\u2287",supseteqq:"\u2ac6",supsetneq:"\u228b",supsetneqq:"\u2acc",supsim:"\u2ac8",supsub:"\u2ad4",supsup:"\u2ad6",swarhk:"\u2926",swarr:"\u2199",swArr:"\u21d9",swarrow:"\u2199",swnwar:"\u292a",szlig:"\xdf",Tab:"	",target:"\u2316",Tau:"\u03a4",tau:"\u03c4",tbrk:"\u23b4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20db",telrec:"\u2315",Tfr:"\ud835\udd17",tfr:"\ud835\udd31",there4:"\u2234",therefore:"\u2234",Therefore:"\u2234",Theta:"\u0398",theta:"\u03b8",thetasym:"\u03d1",thetav:"\u03d1",thickapprox:"\u2248",thicksim:"\u223c",ThickSpace:"\u205f\u200a",ThinSpace:"\u2009",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223c",THORN:"\xde",thorn:"\xfe",tilde:"\u02dc",Tilde:"\u223c",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",timesbar:"\u2a31",timesb:"\u22a0",times:"\xd7",timesd:"\u2a30",tint:"\u222d",toea:"\u2928",topbot:"\u2336",topcir:"\u2af1",top:"\u22a4",Topf:"\ud835\udd4b",topf:"\ud835\udd65",topfork:"\u2ada",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",TRADE:"\u2122",triangle:"\u25b5",triangledown:"\u25bf",triangleleft:"\u25c3",trianglelefteq:"\u22b4",triangleq:"\u225c",triangleright:"\u25b9",trianglerighteq:"\u22b5",tridot:"\u25ec",trie:"\u225c",triminus:"\u2a3a",TripleDot:"\u20db",triplus:"\u2a39",trisb:"\u29cd",tritime:"\u2a3b",trpezium:"\u23e2",Tscr:"\ud835\udcaf",tscr:"\ud835\udcc9",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040b",tshcy:"\u045b",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226c",twoheadleftarrow:"\u219e",twoheadrightarrow:"\u21a0",Uacute:"\xda",uacute:"\xfa",uarr:"\u2191",Uarr:"\u219f",uArr:"\u21d1",Uarrocir:"\u2949",Ubrcy:"\u040e",ubrcy:"\u045e",Ubreve:"\u016c",ubreve:"\u016d",Ucirc:"\xdb",ucirc:"\xfb",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21c5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296e",ufisht:"\u297e",Ufr:"\ud835\udd18",ufr:"\ud835\udd32",Ugrave:"\xd9",ugrave:"\xf9",uHar:"\u2963",uharl:"\u21bf",uharr:"\u21be",uhblk:"\u2580",ulcorn:"\u231c",ulcorner:"\u231c",ulcrop:"\u230f",ultri:"\u25f8",Umacr:"\u016a",umacr:"\u016b",uml:"\xa8",UnderBar:"_",UnderBrace:"\u23df",UnderBracket:"\u23b5",UnderParenthesis:"\u23dd",Union:"\u22c3",UnionPlus:"\u228e",Uogon:"\u0172",uogon:"\u0173",Uopf:"\ud835\udd4c",uopf:"\ud835\udd66",UpArrowBar:"\u2912",uparrow:"\u2191",UpArrow:"\u2191",Uparrow:"\u21d1",UpArrowDownArrow:"\u21c5",updownarrow:"\u2195",UpDownArrow:"\u2195",Updownarrow:"\u21d5",UpEquilibrium:"\u296e",upharpoonleft:"\u21bf",upharpoonright:"\u21be",uplus:"\u228e",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",upsi:"\u03c5",Upsi:"\u03d2",upsih:"\u03d2",Upsilon:"\u03a5",upsilon:"\u03c5",UpTeeArrow:"\u21a5",UpTee:"\u22a5",upuparrows:"\u21c8",urcorn:"\u231d",urcorner:"\u231d",urcrop:"\u230e",Uring:"\u016e",uring:"\u016f",urtri:"\u25f9",Uscr:"\ud835\udcb0",uscr:"\ud835\udcca",utdot:"\u22f0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25b5",utrif:"\u25b4",uuarr:"\u21c8",Uuml:"\xdc",uuml:"\xfc",uwangle:"\u29a7",vangrt:"\u299c",varepsilon:"\u03f5",varkappa:"\u03f0",varnothing:"\u2205",varphi:"\u03d5",varpi:"\u03d6",varpropto:"\u221d",varr:"\u2195",vArr:"\u21d5",varrho:"\u03f1",varsigma:"\u03c2",varsubsetneq:"\u228a\ufe00",varsubsetneqq:"\u2acb\ufe00",varsupsetneq:"\u228b\ufe00",varsupsetneqq:"\u2acc\ufe00",vartheta:"\u03d1",vartriangleleft:"\u22b2",vartriangleright:"\u22b3",vBar:"\u2ae8",Vbar:"\u2aeb",vBarv:"\u2ae9",Vcy:"\u0412",vcy:"\u0432",vdash:"\u22a2",vDash:"\u22a8",Vdash:"\u22a9",VDash:"\u22ab",Vdashl:"\u2ae6",veebar:"\u22bb",vee:"\u2228",Vee:"\u22c1",veeeq:"\u225a",vellip:"\u22ee",verbar:"|",Verbar:"\u2016",vert:"|",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200a",Vfr:"\ud835\udd19",vfr:"\ud835\udd33",vltri:"\u22b2",vnsub:"\u2282\u20d2",vnsup:"\u2283\u20d2",Vopf:"\ud835\udd4d",vopf:"\ud835\udd67",vprop:"\u221d",vrtri:"\u22b3",Vscr:"\ud835\udcb1",vscr:"\ud835\udccb",vsubnE:"\u2acb\ufe00",vsubne:"\u228a\ufe00",vsupnE:"\u2acc\ufe00",vsupne:"\u228b\ufe00",Vvdash:"\u22aa",vzigzag:"\u299a",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2a5f",wedge:"\u2227",Wedge:"\u22c0",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\ud835\udd1a",wfr:"\ud835\udd34",Wopf:"\ud835\udd4e",wopf:"\ud835\udd68",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\ud835\udcb2",wscr:"\ud835\udccc",xcap:"\u22c2",xcirc:"\u25ef",xcup:"\u22c3",xdtri:"\u25bd",Xfr:"\ud835\udd1b",xfr:"\ud835\udd35",xharr:"\u27f7",xhArr:"\u27fa",Xi:"\u039e",xi:"\u03be",xlarr:"\u27f5",xlArr:"\u27f8",xmap:"\u27fc",xnis:"\u22fb",xodot:"\u2a00",Xopf:"\ud835\udd4f",xopf:"\ud835\udd69",xoplus:"\u2a01",xotime:"\u2a02",xrarr:"\u27f6",xrArr:"\u27f9",Xscr:"\ud835\udcb3",xscr:"\ud835\udccd",xsqcup:"\u2a06",xuplus:"\u2a04",xutri:"\u25b3",xvee:"\u22c1",xwedge:"\u22c0",Yacute:"\xdd",yacute:"\xfd",YAcy:"\u042f",yacy:"\u044f",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042b",ycy:"\u044b",yen:"\xa5",Yfr:"\ud835\udd1c",yfr:"\ud835\udd36",YIcy:"\u0407",yicy:"\u0457",Yopf:"\ud835\udd50",yopf:"\ud835\udd6a",Yscr:"\ud835\udcb4",yscr:"\ud835\udcce",YUcy:"\u042e",yucy:"\u044e",yuml:"\xff",Yuml:"\u0178",Zacute:"\u0179",zacute:"\u017a",Zcaron:"\u017d",zcaron:"\u017e",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017b",zdot:"\u017c",zeetrf:"\u2128",ZeroWidthSpace:"\u200b",Zeta:"\u0396",zeta:"\u03b6",zfr:"\ud835\udd37",Zfr:"\u2128",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21dd",zopf:"\ud835\udd6b",Zopf:"\u2124",Zscr:"\ud835\udcb5",zscr:"\ud835\udccf",zwj:"\u200d",zwnj:"\u200c"},v={Aacute:"\xc1",aacute:"\xe1",Acirc:"\xc2",acirc:"\xe2",acute:"\xb4",AElig:"\xc6",aelig:"\xe6",Agrave:"\xc0",agrave:"\xe0",amp:"&",AMP:"&",Aring:"\xc5",aring:"\xe5",Atilde:"\xc3",atilde:"\xe3",Auml:"\xc4",auml:"\xe4",brvbar:"\xa6",Ccedil:"\xc7",ccedil:"\xe7",cedil:"\xb8",cent:"\xa2",copy:"\xa9",COPY:"\xa9",curren:"\xa4",deg:"\xb0",divide:"\xf7",Eacute:"\xc9",eacute:"\xe9",Ecirc:"\xca",ecirc:"\xea",Egrave:"\xc8",egrave:"\xe8",ETH:"\xd0",eth:"\xf0",Euml:"\xcb",euml:"\xeb",frac12:"\xbd",frac14:"\xbc",frac34:"\xbe",gt:">",GT:">",Iacute:"\xcd",iacute:"\xed",Icirc:"\xce",icirc:"\xee",iexcl:"\xa1",Igrave:"\xcc",igrave:"\xec",iquest:"\xbf",Iuml:"\xcf",iuml:"\xef",laquo:"\xab",lt:"<",LT:"<",macr:"\xaf",micro:"\xb5",middot:"\xb7",nbsp:"\xa0",not:"\xac",Ntilde:"\xd1",ntilde:"\xf1",Oacute:"\xd3",oacute:"\xf3",Ocirc:"\xd4",ocirc:"\xf4",Ograve:"\xd2",ograve:"\xf2",ordf:"\xaa",ordm:"\xba",Oslash:"\xd8",oslash:"\xf8",Otilde:"\xd5",otilde:"\xf5",Ouml:"\xd6",ouml:"\xf6",para:"\xb6",plusmn:"\xb1",pound:"\xa3",quot:'"',QUOT:'"',raquo:"\xbb",reg:"\xae",REG:"\xae",sect:"\xa7",shy:"\xad",sup1:"\xb9",sup2:"\xb2",sup3:"\xb3",szlig:"\xdf",THORN:"\xde",thorn:"\xfe",times:"\xd7",Uacute:"\xda",uacute:"\xfa",Ucirc:"\xdb",ucirc:"\xfb",Ugrave:"\xd9",ugrave:"\xf9",uml:"\xa8",Uuml:"\xdc",uuml:"\xfc",Yacute:"\xdd",yacute:"\xfd",yen:"\xa5",yuml:"\xff"},x={0:"\ufffd",128:"\u20ac",130:"\u201a",131:"\u0192",132:"\u201e",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02c6",137:"\u2030",138:"\u0160",139:"\u2039",
  140:"\u0152",142:"\u017d",145:"\u2018",146:"\u2019",147:"\u201c",148:"\u201d",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02dc",153:"\u2122",154:"\u0161",155:"\u203a",156:"\u0153",158:"\u017e",159:"\u0178"},b=[1,2,3,4,5,6,7,8,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,64976,64977,64978,64979,64980,64981,64982,64983,64984,64985,64986,64987,64988,64989,64990,64991,64992,64993,64994,64995,64996,64997,64998,64999,65e3,65001,65002,65003,65004,65005,65006,65007,65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111],_=String.fromCharCode,w={},A=w.hasOwnProperty,k=function(t,e){return A.call(t,e)},E=function(t,e){for(var n=-1,r=t.length;++n<r;)if(t[n]==e)return!0;return!1},D=function(t,e){if(!t)return e;var n,r={};for(n in e)r[n]=k(t,n)?t[n]:e[n];return r},B=function(t,e){var n="";return t>=55296&&57343>=t||t>1114111?(e&&T("character reference outside the permissible Unicode range"),"\ufffd"):k(x,t)?(e&&T("disallowed character reference"),x[t]):(e&&E(b,t)&&T("disallowed character reference"),t>65535&&(t-=65536,n+=_(t>>>10&1023|55296),t=56320|1023&t),n+=_(t))},C=function(t){return"&#x"+t.charCodeAt(0).toString(16).toUpperCase()+";"},T=function(t){throw Error("Parse error: "+t)},S=function(t,e){e=D(e,S.options);var n=e.encodeEverything,r=e.useNamedReferences;return n?(t=t.replace(c,function(t){return r&&k(f,t)?"&"+f[t]+";":C(t)}),r&&(t=t.replace(/&gt;\u20D2/g,"&nvgt;").replace(/&lt;\u20D2/g,"&nvlt;").replace(/&#x66;&#x6A;/g,"&fjlig;")),r&&(t=t.replace(h,function(t){return"&"+f[t]+";"}))):r?(t=t.replace(p,function(t){return"&"+f[t]+";"}),t=t.replace(/&gt;\u20D2/g,"&nvgt;").replace(/&lt;\u20D2/g,"&nvlt;"),t=t.replace(h,function(t){return"&"+f[t]+";"})):t=t.replace(p,C),t.replace(u,function(t){var e=t.charCodeAt(0),n=t.charCodeAt(1),r=1024*(e-55296)+n-56320+65536;return"&#x"+r.toString(16).toUpperCase()+";"}).replace(l,C)};S.options={useNamedReferences:!1,encodeEverything:!1};var M=function(t,e){e=D(e,M.options);var n=e.strict;return n&&g.test(t)&&T("malformed character reference"),t.replace(y,function(t,r,i,a,o,s,u,c){var l,h,f,p,d;return r?(l=r,h=i,n&&!h&&T("character reference was not terminated by a semicolon"),B(l,n)):a?(f=a,h=o,n&&!h&&T("character reference was not terminated by a semicolon"),l=parseInt(f,16),B(l,n)):s?(p=s,k(m,p)?m[p]:(n&&T("named character reference was not terminated by a semicolon"),t)):(p=u,d=c,d&&e.isAttributeValue?(n&&"="==d&&T("`&` did not start a character reference"),t):(n&&T("named character reference was not terminated by a semicolon"),v[p]+(d||"")))})};M.options={isAttributeValue:!1,strict:!1};var F=function(t){return t.replace(p,function(t){return d[t]})},L={version:"0.3.6",encode:S,decode:M,escape:F,unescape:M};r=function(){return L}.call(e,n,e,t),!(void 0!==r&&(t.exports=r)),t.exports=L}(this)}).call(e,n(5)(t),function(){return this}())},function(t,e,n){var r;(function(t,i){(function(){function a(t,e){if(t!==e){var n=t===t,r=e===e;if(t>e||!n||t===B&&r)return 1;if(e>t||!r||e===B&&n)return-1}return 0}function o(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 s(t,e,n){if(e!==e)return v(t,n);for(var r=n-1,i=t.length;++r<i;)if(t[r]===e)return r;return-1}function u(t){return"function"==typeof t||!1}function c(t){return"string"==typeof t?t:null==t?"":t+""}function l(t){return t.charCodeAt(0)}function h(t,e){for(var n=-1,r=t.length;++n<r&&e.indexOf(t.charAt(n))>-1;);return n}function f(t,e){for(var n=t.length;n--&&e.indexOf(t.charAt(n))>-1;);return n}function p(t,e){return a(t.criteria,e.criteria)||t.index-e.index}function d(t,e,n){for(var r=-1,i=t.criteria,o=e.criteria,s=i.length,u=n.length;++r<s;){var c=a(i[r],o[r]);if(c)return r>=u?c:c*(n[r]?1:-1)}return t.index-e.index}function g(t){return Gt[t]}function y(t){return Wt[t]}function m(t){return"\\"+Kt[t]}function v(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 x(t){return!!t&&"object"==typeof t}function b(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]=H,a[++i]=n);return a}function w(t,e){for(var n,r=-1,i=t.length,a=-1,o=[];++r<i;){var s=t[r],u=e?e(s,r,t):s;r&&n===u||(n=u,o[++a]=s)}return o}function A(t){for(var e=-1,n=t.length;++e<n&&b(t.charCodeAt(e)););return e}function k(t){for(var e=t.length;e--&&b(t.charCodeAt(e)););return e}function E(t){return Zt[t]}function D(t){function e(t){if(x(t)&&!As(t)&&!(t instanceof i)){if(t instanceof r)return t;if(ja.call(t,"__chain__")&&ja.call(t,"__wrapped__"))return ir(t)}return new r(t)}function n(){}function r(t,e,n){this.__wrapped__=t,this.__actions__=n||[],this.__chain__=!!e}function i(t){this.__wrapped__=t,this.__actions__=null,this.__dir__=1,this.__dropCount__=0,this.__filtered__=!1,this.__iteratees__=null,this.__takeCount__=bo,this.__views__=null}function b(){var t=this.__actions__,e=this.__iteratees__,n=this.__views__,r=new i(this.__wrapped__);return r.__actions__=t?te(t):null,r.__dir__=this.__dir__,r.__filtered__=this.__filtered__,r.__iteratees__=e?te(e):null,r.__takeCount__=this.__takeCount__,r.__views__=n?te(n):null,r}function Q(){if(this.__filtered__){var t=new i(this);t.__dir__=-1,t.__filtered__=!0}else t=this.clone(),t.__dir__*=-1;return t}function rt(){var t=this.__wrapped__.value();if(!As(t))return tn(t,this.__actions__);var e=this.__dir__,n=0>e,r=qn(0,t.length,this.__views__),i=r.start,a=r.end,o=a-i,s=n?a:i-1,u=po(o,this.__takeCount__),c=this.__iteratees__,l=c?c.length:0,h=0,f=[];t:for(;o--&&u>h;){s+=e;for(var p=-1,d=t[s];++p<l;){var g=c[p],y=g.iteratee,m=g.type;if(m==U){if(g.done&&(n?s>g.index:s<g.index)&&(g.count=0,g.done=!1),g.index=s,!g.done){var v=g.limit;if(!(g.done=v>-1?g.count++>=v:!y(d)))continue t}}else{var x=y(d);if(m==$)d=x;else if(!x){if(m==V)continue t;break t}}}f[h++]=d}return f}function at(){this.__data__={}}function Gt(t){return this.has(t)&&delete this.__data__[t]}function Wt(t){return"__proto__"==t?B:this.__data__[t]}function Zt(t){return"__proto__"!=t&&ja.call(this.__data__,t)}function Xt(t,e){return"__proto__"!=t&&(this.__data__[t]=e),this}function Kt(t){var e=t?t.length:0;for(this.data={hash:co(null),set:new eo};e--;)this.push(t[e])}function Jt(t,e){var n=t.data,r="string"==typeof e||_i(e)?n.set.has(e):n.hash[e];return r?0:-1}function Qt(t){var e=this.data;"string"==typeof t||_i(t)?e.set.add(t):e.hash[t]=!0}function te(t,e){var n=-1,r=t.length;for(e||(e=Ea(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 ne(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 oe(t,e){for(var n=-1,r=t.length,i=-1,a=[];++n<r;){var o=t[n];e(o,n,t)&&(a[++i]=o)}return a}function se(t,e){for(var n=-1,r=t.length,i=Ea(r);++n<r;)i[n]=e(t[n],n,t);return i}function ue(t){for(var e=-1,n=t.length,r=xo;++e<n;){var i=t[e];i>r&&(r=i)}return r}function ce(t){for(var e=-1,n=t.length,r=bo;++e<n;){var i=t[e];r>i&&(r=i)}return r}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 fe(t,e){for(var n=-1,r=t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}function pe(t){for(var e=t.length,n=0;e--;)n+=+t[e]||0;return n}function de(t,e){return t===B?e:t}function ge(t,e,n,r){return t!==B&&ja.call(r,n)?t:e}function ye(t,e,n){var r=Ns(e);Ja.apply(r,jo(e));for(var i=-1,a=r.length;++i<a;){var o=r[i],s=t[o],u=n(s,e[o],o,t,e);(u===u?u===s:s!==s)&&(s!==B||o in t)||(t[o]=u)}return t}function me(t,e){for(var n=-1,r=t.length,i=Gn(r),a=e.length,o=Ea(a);++n<a;){var s=e[n];i?o[n]=Vn(s,r)?t[s]:B:o[n]=t[s]}return o}function ve(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 xe(t,e,n){var r=typeof t;return"function"==r?e===B?t:rn(t,e,n):null==t?fa:"object"==r?Re(t):e===B?va(t):qe(t,e)}function be(t,e,n,r,i,a,o){var s;if(n&&(s=i?n(t,r,i):n(t)),s!==B)return s;if(!_i(t))return t;var u=As(t);if(u){if(s=Pn(t),!e)return te(t,s)}else{var c=Ua.call(t),l=c==J;if(c!=et&&c!=G&&(!l||i))return zt[c]?Yn(t,c,e):i?t:{};if(s=jn(l?{}:t),!e)return To(s,t)}a||(a=[]),o||(o=[]);for(var h=a.length;h--;)if(a[h]==t)return o[h];return a.push(t),o.push(s),(u?ee:Te)(t,function(r,i){s[i]=be(r,e,n,i,t,a,o)}),s}function _e(t,e,n){if("function"!=typeof t)throw new Oa(z);return no(function(){t.apply(B,n)},e)}function we(t,e){var n=t?t.length:0,r=[];if(!n)return r;var i=-1,a=Rn(),o=a==s,u=o&&e.length>=200?Io(e):null,c=e.length;u&&(a=Jt,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 a(e,l,0)<0&&r.push(l)}return r}function Ae(t,e){var n=!0;return Mo(t,function(t,r,i){return n=!!e(t,r,i)}),n}function ke(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===B||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 Ee(t,e){var n=[];return Mo(t,function(t,r,i){e(t,r,i)&&n.push(t)}),n}function De(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 Be(t,e,n){for(var r=-1,i=t.length,a=-1,o=[];++r<i;){var s=t[r];if(x(s)&&Gn(s.length)&&(As(s)||di(s))){e&&(s=Be(s,e,n));var u=-1,c=s.length;for(o.length+=c;++u<c;)o[++a]=s[u]}else n||(o[++a]=s)}return o}function Ce(t,e){return Lo(t,e,qi)}function Te(t,e){return Lo(t,e,Ns)}function Se(t,e){return Oo(t,e,Ns)}function Me(t,e){for(var n=-1,r=e.length,i=-1,a=[];++n<r;){var o=e[n];Es(t[o])&&(a[++i]=o)}return a}function Fe(t,e,n){if(null!=t){n!==B&&n in nr(t)&&(e=[n]);for(var r=-1,i=e.length;null!=t&&++r<i;)var a=t=t[e[r]];return a}}function Le(t,e,n,r,i,a){if(t===e)return 0!==t||1/t==1/e;var o=typeof t,s=typeof e;return"function"!=o&&"object"!=o&&"function"!=s&&"object"!=s||null==t||null==e?t!==t&&e!==e:Oe(t,e,Le,n,r,i,a)}function Oe(t,e,n,r,i,a,o){var s=As(t),u=As(e),c=W,l=W;s||(c=Ua.call(t),c==G?c=et:c!=et&&(s=Ti(t))),u||(l=Ua.call(e),l==G?l=et:l!=et&&(u=Ti(e)));var h=c==et,f=l==et,p=c==l;if(p&&!s&&!h)return Ln(t,e,c);if(!i){var d=h&&ja.call(t,"__wrapped__"),g=f&&ja.call(e,"__wrapped__");if(d||g)return n(d?t.value():t,g?e.value():e,r,i,a,o)}if(!p)return!1;a||(a=[]),o||(o=[]);for(var y=a.length;y--;)if(a[y]==t)return o[y]==e;a.push(t),o.push(e);var m=(s?Fn:On)(t,e,n,r,i,a,o);return a.pop(),o.pop(),m}function Ne(t,e,n,r,i){for(var a=-1,o=e.length,s=!i;++a<o;)if(s&&r[a]?n[a]!==t[e[a]]:!(e[a]in t))return!1;for(a=-1;++a<o;){var u=e[a],c=t[u],l=n[a];if(s&&r[a])var h=c!==B||u in t;else h=i?i(c,l,u):B,h===B&&(h=Le(l,c,i,!0));if(!h)return!1}return!0}function Ie(t,e){var n=-1,r=Po(t),i=Gn(r)?Ea(r):[];return Mo(t,function(t,r,a){i[++n]=e(t,r,a)}),i}function Re(t){var e=Ns(t),n=e.length;if(!n)return ha(!0);if(1==n){var r=e[0],i=t[r];if(Wn(i))return function(t){return null==t?!1:t[r]===i&&(i!==B||r in nr(t))}}for(var a=Ea(n),o=Ea(n);n--;)i=t[e[n]],a[n]=i,o[n]=Wn(i);return function(t){return null!=t&&Ne(nr(t),e,a,o)}}function qe(t,e){var n=As(t),r=zn(t)&&Wn(e),i=t+"";return t=rr(t),function(a){if(null==a)return!1;var o=i;if(a=nr(a),(n||!r)&&!(o in a)){if(a=1==t.length?a:Fe(a,He(t,0,-1)),null==a)return!1;o=vr(t),a=nr(a)}return a[o]===e?e!==B||o in a:Le(e,a[o],null,!0)}}function Pe(t,e,n,r,i){if(!_i(t))return t;var a=Gn(e.length)&&(As(e)||Ti(e));if(!a){var o=Ns(e);Ja.apply(o,jo(e))}return ee(o||e,function(s,u){if(o&&(u=s,s=e[u]),x(s))r||(r=[]),i||(i=[]),je(t,e,u,Pe,n,r,i);else{var c=t[u],l=n?n(c,s,u,t,e):B,h=l===B;h&&(l=s),!a&&l===B||!h&&(l===l?l===c:c!==c)||(t[u]=l)}}),t}function je(t,e,n,r,i,a,o){for(var s=a.length,u=e[n];s--;)if(a[s]==u)return void(t[n]=o[s]);var c=t[n],l=i?i(c,u,n,t,e):B,h=l===B;h&&(l=u,Gn(u.length)&&(As(u)||Ti(u))?l=As(c)?c:Po(c)?te(c):[]:Ds(u)||di(u)?l=di(c)?Fi(c):Ds(c)?c:{}:h=!1),a.push(u),o.push(l),h?t[n]=r(l,u,i,a,o):(l===l?l!==c:c===c)&&(t[n]=l)}function Ye(t){return function(e){return null==e?B:e[t]}}function Ue(t){var e=t+"";return t=rr(t),function(n){return Fe(n,t,e)}}function Ve(t,e){for(var n=e.length;n--;){var r=parseFloat(e[n]);if(r!=i&&Vn(r)){var i=r;ro.call(t,r,1)}}return t}function $e(t,e){return t+Za(vo()*(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 He(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===B||n>i?i:+n||0,0>n&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var a=Ea(i);++r<i;)a[r]=t[r+e];return a}function Ge(t,e){var n;return Mo(t,function(t,r,i){return n=e(t,r,i),!n}),!!n}function We(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=In(),i=-1;e=se(e,function(t){return r(t)});var a=Ie(t,function(t){var n=se(e,function(e){return e(t)});return{criteria:n,index:++i,value:t}});return We(a,function(t,e){return d(t,e,n)})}function Xe(t,e){var n=0;return Mo(t,function(t,r,i){n+=+e(t,r,i)||0}),n}function Ke(t,e){var n=-1,r=Rn(),i=t.length,a=r==s,o=a&&i>=200,u=o?Io():null,c=[];u?(r=Jt,a=!1):(o=!1,u=e?[]:c);t:for(;++n<i;){var l=t[n],h=e?e(l,n,t):l;if(a&&l===l){for(var f=u.length;f--;)if(u[f]===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 Je(t,e){for(var n=-1,r=e.length,i=Ea(r);++n<r;)i[n]=t[e[n]];return i}function Qe(t,e,n,r){for(var i=t.length,a=r?i:-1;(r?a--:++a<i)&&e(t[a],a,t););return n?He(t,r?0:a,r?a+1:i):He(t,r?a+1:0,r?i:a)}function tn(t,e){var n=t;n instanceof i&&(n=n.value());for(var r=-1,a=e.length;++r<a;){var o=[n],s=e[r];Ja.apply(o,s.args),n=s.func.apply(s.thisArg,o)}return n}function en(t,e,n){var r=0,i=t?t.length:r;if("number"==typeof e&&e===e&&Ao>=i){for(;i>r;){var a=r+i>>>1,o=t[a];(n?e>=o:e>o)?r=a+1:i=a}return i}return nn(t,e,fa,n)}function nn(t,e,n,r){e=n(e);for(var i=0,a=t?t.length:0,o=e!==e,s=e===B;a>i;){var u=Za((i+a)/2),c=n(t[u]),l=c===c;if(o)var h=l||r;else h=s?l&&(r||c!==B):r?e>=c:e>c;h?i=u+1:a=u}return po(a,wo)}function rn(t,e,n){if("function"!=typeof t)return fa;if(e===B)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,o){return t.call(e,n,r,i,a,o)}}return function(){return t.apply(e,arguments)}}function an(t){return Ha.call(t,0)}function on(t,e,n){for(var r=n.length,i=-1,a=fo(t.length-r,0),o=-1,s=e.length,u=Ea(a+s);++o<s;)u[o]=e[o];for(;++i<r;)u[n[i]]=t[i];for(;a--;)u[o++]=t[i++];return u}function sn(t,e,n){for(var r=-1,i=n.length,a=-1,o=fo(t.length-i,0),s=-1,u=e.length,c=Ea(o+u);++a<o;)c[a]=t[a];for(var l=a;++s<u;)c[l+s]=e[s];for(;++r<i;)c[l+n[r]]=t[a++];return c}function un(t,e){return function(n,r,i){var a=e?e():{};if(r=In(r,i,3),As(n))for(var o=-1,s=n.length;++o<s;){var u=n[o];t(a,u,r(u,o,n),n)}else Mo(n,function(e,n,i){t(a,e,r(e,n,i),i)});return a}}function cn(t){return ui(function(e,n){var r=-1,i=null==e?0:n.length,a=i>2&&n[i-2],o=i>2&&n[2],s=i>1&&n[i-1];for("function"==typeof a?(a=rn(a,s,5),i-=2):(a="function"==typeof s?s:null,i-=a?1:0),o&&$n(n[0],n[1],o)&&(a=3>i?null:a,i=1);++r<i;){var u=n[r];u&&t(e,u,a)}return e})}function ln(t,e){return function(n,r){var i=n?Po(n):0;if(!Gn(i))return t(n,r);for(var a=e?i:-1,o=nr(n);(e?a--:++a<i)&&r(o[a],a,o)!==!1;);return n}}function hn(t){return function(e,n,r){for(var i=nr(e),a=r(e),o=a.length,s=t?o:-1;t?s--:++s<o;){var u=a[s];if(n(i[u],u,i)===!1)break}return e}}function fn(t,e){function n(){var i=this&&this!==re&&this instanceof n?r:t;return i.apply(e,arguments)}var r=dn(t);return n}function pn(t){return function(e){for(var n=-1,r=ca(Zi(e)),i=r.length,a="";++n<i;)a=t(a,r[n],n);return a}}function dn(t){return function(){var e=So(t.prototype),n=t.apply(e,arguments);return _i(n)?n:e}}function gn(t){function e(n,r,i){i&&$n(n,r,i)&&(r=null);var a=Mn(n,t,null,null,null,null,null,r);return a.placeholder=e.placeholder,a}return e}function yn(t,e){return function(n,r,i){i&&$n(n,r,i)&&(r=null);var a=In(),o=null==r;if(a===xe&&o||(o=!1,r=a(r,i,3)),o){var s=As(n);if(s||!Ci(n))return t(s?n:er(n));r=l}return Nn(n,r,e)}}function mn(t,e){return function(n,r,i){if(r=In(r,i,3),As(n)){var a=o(n,r,e);return a>-1?n[a]:B}return De(n,r,t)}}function vn(t){return function(e,n,r){return e&&e.length?(n=In(n,r,3),o(e,n,t)):-1}}function xn(t){return function(e,n,r){return n=In(n,r,3),De(e,n,t,!0)}}function bn(t){return function(){var e=arguments.length;if(!e)return function(){return arguments[0]};for(var n,i=t?e:-1,a=0,o=Ea(e);t?i--:++i<e;){var s=o[a++]=arguments[i];if("function"!=typeof s)throw new Oa(z);var u=n?"":qo(s);n="wrapper"==u?new r([]):n}for(i=n?-1:e;++i<e;){s=o[i],u=qo(s);var c="wrapper"==u?Ro(s):null;n=c&&Hn(c[0])?n[qo(c[0])].apply(n,c[3]):1==s.length&&Hn(s)?n[u]():n.thru(s)}return function(){var t=arguments;if(n&&1==t.length&&As(t[0]))return n.plant(t[0]).value();for(var r=0,i=o[r].apply(this,t);++r<e;)i=o[r].call(this,i);return i}}}function _n(t,e){return function(n,r,i){return"function"==typeof r&&i===B&&As(n)?t(n,r):e(n,rn(r,i,3))}}function wn(t){return function(e,n,r){return("function"!=typeof n||r!==B)&&(n=rn(n,r,3)),t(e,n,qi)}}function An(t){return function(e,n,r){return("function"!=typeof n||r!==B)&&(n=rn(n,r,3)),t(e,n)}}function kn(t){return function(e,n,r){return e=c(e),e&&(t?e:"")+Cn(e,n,r)+(t?"":e)}}function En(t){var e=ui(function(n,r){var i=_(r,e.placeholder);return Mn(n,t,null,r,i)});return e}function Dn(t,e){return function(n,r,i,a){var o=arguments.length<3;return"function"==typeof r&&a===B&&As(n)?t(n,r,i,o):ze(n,In(r,a,4),i,o,e)}}function Bn(t,e,n,r,i,a,o,s,u,c){function l(){for(var x=arguments.length,b=x,w=Ea(x);b--;)w[b]=arguments[b];if(r&&(w=on(w,r,i)),a&&(w=sn(w,a,o)),d||y){var A=l.placeholder,k=_(w,A);if(x-=k.length,c>x){var E=s?te(s):null,D=fo(c-x,0),C=d?k:null,M=d?null:k,F=d?w:null,L=d?null:w;e|=d?O:N,e&=~(d?N:O),g||(e&=~(T|S));var I=[t,e,n,F,C,L,M,E,u,D],R=Bn.apply(B,I);return Hn(t)&&Yo(R,I),R.placeholder=A,R}}var q=f?n:this;p&&(t=q[v]),s&&(w=Jn(w,s)),h&&u<w.length&&(w.length=u);var P=this&&this!==re&&this instanceof l?m||dn(t):t;return P.apply(q,w)}var h=e&I,f=e&T,p=e&S,d=e&F,g=e&M,y=e&L,m=!p&&dn(t),v=t;return l}function Cn(t,e,n){var r=t.length;if(e=+e,r>=e||!lo(e))return"";var i=e-r;return n=null==n?" ":n+"",ea(n,Ga(i/n.length)).slice(0,i)}function Tn(t,e,n,r){function i(){for(var e=-1,s=arguments.length,u=-1,c=r.length,l=Ea(s+c);++u<c;)l[u]=r[u];for(;s--;)l[u++]=arguments[++e];var h=this&&this!==re&&this instanceof i?o:t;return h.apply(a?n:this,l)}var a=e&T,o=dn(t);return i}function Sn(t){return function(e,n,r,i){var a=In(r);return a===xe&&null==r?en(e,n,t):nn(e,n,a(r,i,1),t)}}function Mn(t,e,n,r,i,a,o,s){var u=e&S;if(!u&&"function"!=typeof t)throw new Oa(z);var c=r?r.length:0;if(c||(e&=~(O|N),r=i=null),c-=i?i.length:0,e&N){var l=r,h=i;r=i=null}var f=u?null:Ro(t),p=[t,e,n,r,i,l,h,a,o,s];if(f&&(Zn(p,f),e=p[1],s=p[9]),p[9]=null==s?u?0:t.length:fo(s-c,0)||0,e==T)var d=fn(p[0],p[2]);else d=e!=O&&e!=(T|O)||p[4].length?Bn.apply(B,p):Tn.apply(B,p);var g=f?No:Yo;return g(d,p)}function Fn(t,e,n,r,i,a,o){var s=-1,u=t.length,c=e.length,l=!0;if(u!=c&&!(i&&c>u))return!1;for(;l&&++s<u;){var h=t[s],f=e[s];if(l=B,r&&(l=i?r(f,h,s):r(h,f,s)),l===B)if(i)for(var p=c;p--&&(f=e[p],!(l=h&&h===f||n(h,f,r,i,a,o))););else l=h&&h===f||n(h,f,r,i,a,o)}return!!l}function Ln(t,e,n){switch(n){case Z:case X:return+t==+e;case K:return t.name==e.name&&t.message==e.message;case tt:return t!=+t?e!=+e:0==t?1/t==1/e:t==+e;case nt:case it:return t==e+""}return!1}function On(t,e,n,r,i,a,o){var s=Ns(t),u=s.length,c=Ns(e),l=c.length;if(u!=l&&!i)return!1;for(var h=i,f=-1;++f<u;){var p=s[f],d=i?p in e:ja.call(e,p);if(d){var g=t[p],y=e[p];d=B,r&&(d=i?r(y,g,p):r(g,y,p)),d===B&&(d=g&&g===y||n(g,y,r,i,a,o))}if(!d)return!1;h||(h="constructor"==p)}if(!h){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 Nn(t,e,n){var r=n?bo:xo,i=r,a=i;return Mo(t,function(t,o,s){var u=e(t,o,s);((n?i>u:u>i)||u===r&&u===a)&&(i=u,a=t)}),a}function In(t,n,r){var i=e.callback||la;return i=i===la?xe:i,r?i(t,n,r):i}function Rn(t,n,r){var i=e.indexOf||gr;return i=i===gr?s:i,t?i(t,n,r):i}function qn(t,e,n){for(var r=-1,i=n?n.length:0;++r<i;){var a=n[r],o=a.size;switch(a.type){case"drop":t+=o;break;case"dropRight":e-=o;break;case"take":e=po(e,t+o);break;case"takeRight":t=fo(t,e-o)}}return{start:t,end:e}}function Pn(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&ja.call(t,"index")&&(n.index=t.index,n.input=t.input),n}function jn(t){var e=t.constructor;return"function"==typeof e&&e instanceof e||(e=Ma),new e}function Yn(t,e,n){var r=t.constructor;switch(e){case ot:return an(t);case Z:case X:return new r(+t);case st:case ut:case ct:case lt:case ht:case ft:case pt:case dt:case gt:var i=t.buffer;return new r(n?an(i):i,t.byteOffset,t.length);case tt:case it:return new r(t);case nt:var a=new r(t.source,Ot.exec(t));a.lastIndex=t.lastIndex}return a}function Un(t,e,n){null==t||zn(e,t)||(e=rr(e),t=1==e.length?t:Fe(t,He(e,0,-1)),e=vr(e));var r=null==t?t:t[e];return null==r?B:r.apply(t,n)}function Vn(t,e){return t=+t,e=null==e?Eo:e,t>-1&&t%1==0&&e>t}function $n(t,e,n){if(!_i(n))return!1;var r=typeof e;if("number"==r)var i=Po(n),a=Gn(i)&&Vn(e,i);else a="string"==r&&e in n;if(a){var o=n[e];return t===t?t===o:o!==o}return!1}function zn(t,e){var n=typeof t;if("string"==n&&Bt.test(t)||"number"==n)return!0;if(As(t))return!1;var r=!Dt.test(t);return r||null!=e&&t in nr(e)}function Hn(t){var n=qo(t);return!!n&&t===e[n]&&n in i.prototype}function Gn(t){return"number"==typeof t&&t>-1&&t%1==0&&Eo>=t}function Wn(t){return t===t&&(0===t?1/t>0:!_i(t))}function Zn(t,e){var n=t[1],r=e[1],i=n|r,a=I>i,o=r==I&&n==F||r==I&&n==R&&t[7].length<=e[8]||r==(I|R)&&n==F;if(!a&&!o)return t;r&T&&(t[2]=e[2],i|=n&T?0:M);var s=e[3];if(s){var u=t[3];t[3]=u?on(u,s,e[4]):te(s),t[4]=u?_(t[3],H):te(e[4])}return s=e[5],s&&(u=t[5],t[5]=u?sn(u,s,e[6]):te(s),t[6]=u?_(t[5],H):te(e[6])),s=e[7],s&&(t[7]=te(s)),r&I&&(t[8]=null==t[8]?e[8]:po(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=i,t}function Xn(t,e){t=nr(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 Kn(t,e){var n={};return Ce(t,function(t,r,i){e(t,r,i)&&(n[r]=t)}),n}function Jn(t,e){for(var n=t.length,r=po(e.length,n),i=te(t);r--;){var a=e[r];t[r]=Vn(a,n)?i[a]:B}return t}function Qn(t){var n;e.support;if(!x(t)||Ua.call(t)!=et||!ja.call(t,"constructor")&&(n=t.constructor,"function"==typeof n&&!(n instanceof n)))return!1;var r;return Ce(t,function(t,e){r=e}),r===B||ja.call(t,r)}function tr(t){for(var n=qi(t),r=n.length,i=r&&t.length,a=e.support,o=i&&Gn(i)&&(As(t)||a.nonEnumArgs&&di(t)),s=-1,u=[];++s<r;){var c=n[s];(o&&Vn(c,i)||ja.call(t,c))&&u.push(c)}return u}function er(t){return null==t?[]:Gn(Po(t))?_i(t)?t:Ma(t):$i(t)}function nr(t){return _i(t)?t:Ma(t)}function rr(t){if(As(t))return t;var e=[];return c(t).replace(Ct,function(t,n,r,i){e.push(r?i.replace(Ft,"$1"):n||t)}),e}function ir(t){return t instanceof i?t.clone():new r(t.__wrapped__,t.__chain__,te(t.__actions__))}function ar(t,e,n){e=(n?$n(t,e,n):null==e)?1:fo(+e||1,1);for(var r=0,i=t?t.length:0,a=-1,o=Ea(Ga(i/e));i>r;)o[++a]=He(t,r,r+=e);return o}function or(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 sr(t,e,n){var r=t?t.length:0;return r?((n?$n(t,e,n):null==e)&&(e=1),He(t,0>e?0:e)):[]}function ur(t,e,n){var r=t?t.length:0;return r?((n?$n(t,e,n):null==e)&&(e=1),e=r-(+e||0),He(t,0,0>e?0:e)):[]}function cr(t,e,n){return t&&t.length?Qe(t,In(e,n,3),!0,!0):[]}function lr(t,e,n){return t&&t.length?Qe(t,In(e,n,3),!0):[]}function hr(t,e,n,r){var i=t?t.length:0;return i?(n&&"number"!=typeof n&&$n(t,e,n)&&(n=0,r=i),ke(t,e,n,r)):[]}function fr(t){return t?t[0]:B}function pr(t,e,n){var r=t?t.length:0;return n&&$n(t,e,n)&&(e=!1),r?Be(t,e):[]}function dr(t){var e=t?t.length:0;return e?Be(t,!0):[]}function gr(t,e,n){var r=t?t.length:0;if(!r)return-1;if("number"==typeof n)n=0>n?fo(r+n,0):n;else if(n){var i=en(t,e),a=t[i];return(e===e?e===a:a!==a)?i:-1}return s(t,e,n||0)}function yr(t){return ur(t,1)}function mr(){for(var t=[],e=-1,n=arguments.length,r=[],i=Rn(),a=i==s,o=[];++e<n;){var u=arguments[e];(As(u)||di(u))&&(t.push(u),r.push(a&&u.length>=120?Io(e&&u):null))}if(n=t.length,2>n)return o;var c=t[0],l=-1,h=c?c.length:0,f=r[0];t:for(;++l<h;)if(u=c[l],(f?Jt(f,u):i(o,u,0))<0){for(e=n;--e;){var p=r[e];if((p?Jt(p,u):i(t[e],u,0))<0)continue t}f&&f.push(u),o.push(u)}return o}function vr(t){var e=t?t.length:0;return e?t[e-1]:B}function xr(t,e,n){var r=t?t.length:0;if(!r)return-1;var i=r;if("number"==typeof n)i=(0>n?fo(r+n,0):po(n||0,r-1))+1;else if(n){i=en(t,e,!0)-1;var a=t[i];return(e===e?e===a:a!==a)?i:-1}if(e!==e)return v(t,i,!0);for(;i--;)if(t[i]===e)return i;return-1}function br(){var t=arguments,e=t[0];if(!e||!e.length)return e;for(var n=0,r=Rn(),i=t.length;++n<i;)for(var a=0,o=t[n];(a=r(e,o,a))>-1;)ro.call(e,a,1);return e}function _r(t,e,n){var r=[];if(!t||!t.length)return r;var i=-1,a=[],o=t.length;for(e=In(e,n,3);++i<o;){var s=t[i];e(s,i,t)&&(r.push(s),a.push(i))}return Ve(t,a),r}function wr(t){return sr(t,1)}function Ar(t,e,n){var r=t?t.length:0;return r?(n&&"number"!=typeof n&&$n(t,e,n)&&(e=0,n=r),He(t,e,n)):[]}function kr(t,e,n){var r=t?t.length:0;return r?((n?$n(t,e,n):null==e)&&(e=1),He(t,0,0>e?0:e)):[]}function Er(t,e,n){var r=t?t.length:0;return r?((n?$n(t,e,n):null==e)&&(e=1),e=r-(+e||0),He(t,0>e?0:e)):[]}function Dr(t,e,n){return t&&t.length?Qe(t,In(e,n,3),!1,!0):[]}function Br(t,e,n){return t&&t.length?Qe(t,In(e,n,3)):[]}function Cr(t,e,n,r){var i=t?t.length:0;if(!i)return[];null!=e&&"boolean"!=typeof e&&(r=n,n=$n(t,e,r)?null:e,e=!1);var a=In();return(a!==xe||null!=n)&&(n=a(n,r,3)),e&&Rn()==s?w(t,n):Ke(t,n)}function Tr(t){for(var e=-1,n=(t&&t.length&&ue(se(t,Po)))>>>0,r=Ea(n);++e<n;)r[e]=se(t,Ye(e));return r}function Sr(){for(var t=-1,e=arguments.length;++t<e;){var n=arguments[t];if(As(n)||di(n))var r=r?we(r,n).concat(we(n,r)):n}return r?Ke(r):[]}function Mr(t,e){var n=-1,r=t?t.length:0,i={};for(!r||e||As(t[0])||(e=[]);++n<r;){var a=t[n];e?i[a]=e[n]:a&&(i[a[0]]=a[1])}return i}function Fr(t){var n=e(t);return n.__chain__=!0,n}function Lr(t,e,n){return e.call(n,t),t}function Or(t,e,n){return e.call(n,t)}function Nr(){return Fr(this)}function Ir(){return new r(this.value(),this.__chain__)}function Rr(t){for(var e,r=this;r instanceof n;){var i=ir(r);e?a.__wrapped__=i:e=i;var a=i;r=r.__wrapped__}return a.__wrapped__=t,e}function qr(){var t=this.__wrapped__;return t instanceof i?(this.__actions__.length&&(t=new i(this)),new r(t.reverse(),this.__chain__)):this.thru(function(t){return t.reverse()})}function Pr(){return this.value()+""}function jr(){return tn(this.__wrapped__,this.__actions__)}function Yr(t,e,n){var r=As(t)?ae:Ae;return n&&$n(t,e,n)&&(e=null),("function"!=typeof e||n!==B)&&(e=In(e,n,3)),r(t,e)}function Ur(t,e,n){var r=As(t)?oe:Ee;return e=In(e,n,3),r(t,e)}function Vr(t,e){return Qo(t,Re(e))}function $r(t,e,n,r){var i=t?Po(t):0;return Gn(i)||(t=$i(t),i=t.length),i?(n="number"!=typeof n||r&&$n(e,n,r)?0:0>n?fo(i+n,0):n||0,"string"==typeof t||!As(t)&&Ci(t)?i>n&&t.indexOf(e,n)>-1:Rn(t,e,n)>-1):!1}function zr(t,e,n){var r=As(t)?se:Ie;return e=In(e,n,3),r(t,e)}function Hr(t,e){return zr(t,va(e))}function Gr(t,e,n){var r=As(t)?oe:Ee;return e=In(e,n,3),r(t,function(t,n,r){return!e(t,n,r)})}function Wr(t,e,n){if(n?$n(t,e,n):null==e){t=er(t);var r=t.length;return r>0?t[$e(0,r-1)]:B}var i=Zr(t);return i.length=po(0>e?0:+e||0,i.length),i}function Zr(t){t=er(t);for(var e=-1,n=t.length,r=Ea(n);++e<n;){var i=$e(0,e);e!=i&&(r[e]=r[i]),r[i]=t[e]}return r}function Xr(t){var e=t?Po(t):0;return Gn(e)?e:Ns(t).length}function Kr(t,e,n){var r=As(t)?fe:Ge;return n&&$n(t,e,n)&&(e=null),("function"!=typeof e||n!==B)&&(e=In(e,n,3)),r(t,e)}function Jr(t,e,n){if(null==t)return[];n&&$n(t,e,n)&&(e=null);var r=-1;e=In(e,n,3);var i=Ie(t,function(t,n,i){return{criteria:e(t,n,i),index:++r,value:t}});return We(i,p)}function Qr(t,e,n,r){return null==t?[]:(r&&$n(e,n,r)&&(n=null),As(e)||(e=null==e?[]:[e]),As(n)||(n=null==n?[]:[n]),Ze(t,e,n))}function ti(t,e){return Ur(t,Re(e))}function ei(t,e){if("function"!=typeof e){if("function"!=typeof t)throw new Oa(z);var n=t;t=e,e=n}return t=lo(t=+t)?t:0,function(){return--t<1?e.apply(this,arguments):void 0}}function ni(t,e,n){return n&&$n(t,e,n)&&(e=null),e=t&&null==e?t.length:fo(+e||0,0),Mn(t,I,null,null,null,null,e)}function ri(t,e){var n;if("function"!=typeof e){if("function"!=typeof t)throw new Oa(z);var r=t;t=e,e=r}return function(){return--t>0&&(n=e.apply(this,arguments)),1>=t&&(e=null),n}}function ii(t,e,n){function r(){f&&Wa(f),u&&Wa(u),u=f=p=B}function i(){var n=e-(ls()-l);if(0>=n||n>e){u&&Wa(u);var r=p;u=f=p=B,r&&(d=ls(),c=t.apply(h,s),f||u||(s=h=null))}else f=no(i,n)}function a(){f&&Wa(f),u=f=p=B,(y||g!==e)&&(d=ls(),c=t.apply(h,s),f||u||(s=h=null))}function o(){if(s=arguments,l=ls(),h=this,p=y&&(f||!m),g===!1)var n=m&&!f;else{u||m||(d=l);var r=g-(l-d),o=0>=r||r>g;o?(u&&(u=Wa(u)),d=l,c=t.apply(h,s)):u||(u=no(a,r))}return o&&f?f=Wa(f):f||e===g||(f=no(i,e)),n&&(o=!0,c=t.apply(h,s)),!o||f||u||(s=h=null),c}var s,u,c,l,h,f,p,d=0,g=!1,y=!0;if("function"!=typeof t)throw new Oa(z);if(e=0>e?0:+e||0,n===!0){var m=!0;y=!1}else _i(n)&&(m=n.leading,g="maxWait"in n&&fo(+n.maxWait||0,e),y="trailing"in n?n.trailing:y);return o.cancel=r,o}function ai(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw new Oa(z);var n=function(){var r=arguments,i=n.cache,a=e?e.apply(this,r):r[0];if(i.has(a))return i.get(a);var o=t.apply(this,r);return i.set(a,o),o};return n.cache=new ai.Cache,n}function oi(t){if("function"!=typeof t)throw new Oa(z);return function(){return!t.apply(this,arguments)}}function si(t){return ri(2,t)}function ui(t,e){if("function"!=typeof t)throw new Oa(z);return e=fo(e===B?t.length-1:+e||0,0),function(){for(var n=arguments,r=-1,i=fo(n.length-e,0),a=Ea(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 o=Ea(e+1);for(r=-1;++r<e;)o[r]=n[r];return o[e]=a,t.apply(this,o)}}function ci(t){if("function"!=typeof t)throw new Oa(z);return function(e){return t.apply(this,e)}}function li(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new Oa(z);return n===!1?r=!1:_i(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Ht.leading=r,Ht.maxWait=+e,Ht.trailing=i,ii(t,e,Ht)}function hi(t,e){return e=null==e?fa:e,Mn(e,O,null,[t],[])}function fi(t,e,n,r){return e&&"boolean"!=typeof e&&$n(t,e,n)?e=!1:"function"==typeof e&&(r=n,n=e,e=!1),n="function"==typeof n&&rn(n,r,1),be(t,e,n)}function pi(t,e,n){return e="function"==typeof e&&rn(e,n,1),be(t,!0,e)}function di(t){var e=x(t)?t.length:B;return Gn(e)&&Ua.call(t)==G}function gi(t){return t===!0||t===!1||x(t)&&Ua.call(t)==Z}function yi(t){return x(t)&&Ua.call(t)==X}function mi(t){return!!t&&1===t.nodeType&&x(t)&&Ua.call(t).indexOf("Element")>-1}function vi(t){if(null==t)return!0;var e=Po(t);return Gn(e)&&(As(t)||Ci(t)||di(t)||x(t)&&Es(t.splice))?!e:!Ns(t).length}function xi(t,e,n,r){if(n="function"==typeof n&&rn(n,r,3),!n&&Wn(t)&&Wn(e))return t===e;var i=n?n(t,e):B;return i===B?Le(t,e,n):!!i}function bi(t){return x(t)&&"string"==typeof t.message&&Ua.call(t)==K}function _i(t){var e=typeof t;return"function"==e||!!t&&"object"==e}function wi(t,e,n,r){var i=Ns(e),a=i.length;if(!a)return!0;if(null==t)return!1;if(n="function"==typeof n&&rn(n,r,3),t=nr(t),!n&&1==a){var o=i[0],s=e[o];if(Wn(s))return s===t[o]&&(s!==B||o in t)}for(var u=Ea(a),c=Ea(a);a--;)s=u[a]=e[i[a]],c[a]=Wn(s);return Ne(t,i,u,c,n)}function Ai(t){return Di(t)&&t!=+t}function ki(t){return null==t?!1:Ua.call(t)==J?$a.test(Pa.call(t)):x(t)&&It.test(t);
  }function Ei(t){return null===t}function Di(t){return"number"==typeof t||x(t)&&Ua.call(t)==tt}function Bi(t){return x(t)&&Ua.call(t)==nt||!1}function Ci(t){return"string"==typeof t||x(t)&&Ua.call(t)==it}function Ti(t){return x(t)&&Gn(t.length)&&!!$t[Ua.call(t)]}function Si(t){return t===B}function Mi(t){var e=t?Po(t):0;return Gn(e)?e?te(t):[]:$i(t)}function Fi(t){return ve(t,qi(t))}function Li(t,e,n){var r=So(t);return n&&$n(t,e,n)&&(e=null),e?To(r,e):r}function Oi(t){return Me(t,qi(t))}function Ni(t,e,n){var r=null==t?B:Fe(t,rr(e),e+"");return r===B?n:r}function Ii(t,e){if(null==t)return!1;var n=ja.call(t,e);return n||zn(e)||(e=rr(e),t=1==e.length?t:Fe(t,He(e,0,-1)),e=vr(e),n=null!=t&&ja.call(t,e)),n}function Ri(t,e,n){n&&$n(t,e,n)&&(e=null);for(var r=-1,i=Ns(t),a=i.length,o={};++r<a;){var s=i[r],u=t[s];e?ja.call(o,u)?o[u].push(s):o[u]=[s]:o[u]=s}return o}function qi(t){if(null==t)return[];_i(t)||(t=Ma(t));var e=t.length;e=e&&Gn(e)&&(As(t)||Co.nonEnumArgs&&di(t))&&e||0;for(var n=t.constructor,r=-1,i="function"==typeof n&&n.prototype===t,a=Ea(e),o=e>0;++r<e;)a[r]=r+"";for(var s in t)o&&Vn(s,e)||"constructor"==s&&(i||!ja.call(t,s))||a.push(s);return a}function Pi(t,e,n){var r={};return e=In(e,n,3),Te(t,function(t,n,i){r[n]=e(t,n,i)}),r}function ji(t){for(var e=-1,n=Ns(t),r=n.length,i=Ea(r);++e<r;){var a=n[e];i[e]=[a,t[a]]}return i}function Yi(t,e,n){var r=null==t?B:t[e];return r===B&&(null==t||zn(e,t)||(e=rr(e),t=1==e.length?t:Fe(t,He(e,0,-1)),r=null==t?B:t[vr(e)]),r=r===B?n:r),Es(r)?r.call(t):r}function Ui(t,e,n){if(null==t)return t;var r=e+"";e=null!=t[r]||zn(e,t)?[r]:rr(e);for(var i=-1,a=e.length,o=a-1,s=t;null!=s&&++i<a;){var u=e[i];_i(s)&&(i==o?s[u]=n:null==s[u]&&(s[u]=Vn(e[i+1])?[]:{})),s=s[u]}return t}function Vi(t,e,n,r){var i=As(t)||Ti(t);if(e=In(e,r,4),null==n)if(i||_i(t)){var a=t.constructor;n=i?As(t)?new a:[]:So(Es(a)&&a.prototype)}else n={};return(i?ee:Te)(t,function(t,r,i){return e(n,t,r,i)}),n}function $i(t){return Je(t,Ns(t))}function zi(t){return Je(t,qi(t))}function Hi(t,e,n){return e=+e||0,"undefined"==typeof n?(n=e,e=0):n=+n||0,t>=po(e,n)&&t<fo(e,n)}function Gi(t,e,n){n&&$n(t,e,n)&&(e=n=null);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=vo();return po(t+a*(e-t+parseFloat("1e-"+((a+"").length-1))),e)}return $e(t,e)}function Wi(t){return t=c(t),t&&t.charAt(0).toUpperCase()+t.slice(1)}function Zi(t){return t=c(t),t&&t.replace(Rt,g).replace(Mt,"")}function Xi(t,e,n){t=c(t),e+="";var r=t.length;return n=n===B?r:po(0>n?0:+n||0,r),n-=e.length,n>=0&&t.indexOf(e,n)==n}function Ki(t){return t=c(t),t&&wt.test(t)?t.replace(bt,y):t}function Ji(t){return t=c(t),t&&St.test(t)?t.replace(Tt,"\\$&"):t}function Qi(t,e,n){t=c(t),e=+e;var r=t.length;if(r>=e||!lo(e))return t;var i=(e-r)/2,a=Za(i),o=Ga(i);return n=Cn("",o,n),n.slice(0,a)+t+n}function ta(t,e,n){return n&&$n(t,e,n)&&(e=0),mo(t,e)}function ea(t,e){var n="";if(t=c(t),e=+e,1>e||!t||!lo(e))return n;do e%2&&(n+=t),e=Za(e/2),t+=t;while(e);return n}function na(t,e,n){return t=c(t),n=null==n?0:po(0>n?0:+n||0,t.length),t.lastIndexOf(e,n)==n}function ra(t,n,r){var i=e.templateSettings;r&&$n(t,n,r)&&(n=r=null),t=c(t),n=ye(To({},r||n),i,ge);var a,o,s=ye(To({},n.imports),i.imports,ge),u=Ns(s),l=Je(s,u),h=0,f=n.interpolate||qt,p="__p += '",d=Fa((n.escape||qt).source+"|"+f.source+"|"+(f===Et?Lt:qt).source+"|"+(n.evaluate||qt).source+"|$","g"),g="//# sourceURL="+("sourceURL"in n?n.sourceURL:"lodash.templateSources["+ ++Vt+"]")+"\n";t.replace(d,function(e,n,r,i,s,u){return r||(r=i),p+=t.slice(h,u).replace(Pt,m),n&&(a=!0,p+="' +\n__e("+n+") +\n'"),s&&(o=!0,p+="';\n"+s+";\n__p += '"),r&&(p+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),h=u+e.length,e}),p+="';\n";var y=n.variable;y||(p="with (obj) {\n"+p+"\n}\n"),p=(o?p.replace(yt,""):p).replace(mt,"$1").replace(vt,"$1;"),p="function("+(y||"obj")+") {\n"+(y?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var v=zs(function(){return Ca(u,g+"return "+p).apply(B,l)});if(v.source=p,bi(v))throw v;return v}function ia(t,e,n){var r=t;return(t=c(t))?(n?$n(r,e,n):null==e)?t.slice(A(t),k(t)+1):(e+="",t.slice(h(t,e),f(t,e)+1)):t}function aa(t,e,n){var r=t;return t=c(t),t?(n?$n(r,e,n):null==e)?t.slice(A(t)):t.slice(h(t,e+"")):t}function oa(t,e,n){var r=t;return t=c(t),t?(n?$n(r,e,n):null==e)?t.slice(0,k(t)+1):t.slice(0,f(t,e+"")+1):t}function sa(t,e,n){n&&$n(t,e,n)&&(e=null);var r=q,i=P;if(null!=e)if(_i(e)){var a="separator"in e?e.separator:a;r="length"in e?+e.length||0:r,i="omission"in e?c(e.omission):i}else r=+e||0;if(t=c(t),r>=t.length)return t;var o=r-i.length;if(1>o)return i;var s=t.slice(0,o);if(null==a)return s+i;if(Bi(a)){if(t.slice(o).search(a)){var u,l,h=t.slice(0,o);for(a.global||(a=Fa(a.source,(Ot.exec(a)||"")+"g")),a.lastIndex=0;u=a.exec(h);)l=u.index;s=s.slice(0,null==l?o:l)}}else if(t.indexOf(a,o)!=o){var f=s.lastIndexOf(a);f>-1&&(s=s.slice(0,f))}return s+i}function ua(t){return t=c(t),t&&_t.test(t)?t.replace(xt,E):t}function ca(t,e,n){return n&&$n(t,e,n)&&(e=null),t=c(t),t.match(e||jt)||[]}function la(t,e,n){return n&&$n(t,e,n)&&(e=null),xe(t,e)}function ha(t){return function(){return t}}function fa(t){return t}function pa(t){return Re(be(t,!0))}function da(t,e){return qe(t,be(e,!0))}function ga(t,e,n){if(null==n){var r=_i(e),i=r&&Ns(e),a=i&&i.length&&Me(e,i);(a?a.length:r)||(a=!1,n=e,e=t,t=this)}a||(a=Me(e,Ns(e)));var o=!0,s=-1,u=Es(t),c=a.length;n===!1?o=!1:_i(n)&&"chain"in n&&(o=n.chain);for(;++s<c;){var l=a[s],h=e[l];t[l]=h,u&&(t.prototype[l]=function(e){return function(){var n=this.__chain__;if(o||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}var a=[this.value()];return Ja.apply(a,arguments),e.apply(t,a)}}(h))}return t}function ya(){return t._=Va,this}function ma(){}function va(t){return zn(t)?Ye(t):Ue(t)}function xa(t){return function(e){return Fe(t,rr(e),e+"")}}function ba(t,e,n){n&&$n(t,e,n)&&(e=n=null),t=+t||0,n=null==n?1:+n||0,null==e?(e=t,t=0):e=+e||0;for(var r=-1,i=fo(Ga((e-t)/(n||1)),0),a=Ea(i);++r<i;)a[r]=t,t+=n;return a}function _a(t,e,n){if(t=Za(t),1>t||!lo(t))return[];var r=-1,i=Ea(po(t,_o));for(e=rn(e,n,1);++r<t;)_o>r?i[r]=e(r):e(r);return i}function wa(t){var e=++Ya;return c(t)+e}function Aa(t,e){return(+t||0)+(+e||0)}function ka(t,e,n){n&&$n(t,e,n)&&(e=null);var r=In(),i=null==e;return r===xe&&i||(i=!1,e=r(e,n,3)),i?pe(As(t)?t:er(t)):Xe(t,e)}t=t?ie.defaults(re.Object(),t,ie.pick(re,Ut)):re;var Ea=t.Array,Da=t.Date,Ba=t.Error,Ca=t.Function,Ta=t.Math,Sa=t.Number,Ma=t.Object,Fa=t.RegExp,La=t.String,Oa=t.TypeError,Na=Ea.prototype,Ia=Ma.prototype,Ra=La.prototype,qa=(qa=t.window)&&qa.document,Pa=Ca.prototype.toString,ja=Ia.hasOwnProperty,Ya=0,Ua=Ia.toString,Va=t._,$a=Fa("^"+Ji(Ua).replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),za=ki(za=t.ArrayBuffer)&&za,Ha=ki(Ha=za&&new za(0).slice)&&Ha,Ga=Ta.ceil,Wa=t.clearTimeout,Za=Ta.floor,Xa=ki(Xa=Ma.getOwnPropertySymbols)&&Xa,Ka=ki(Ka=Ma.getPrototypeOf)&&Ka,Ja=Na.push,Qa=ki(Ma.preventExtensions=Ma.preventExtensions)&&Qa,to=Ia.propertyIsEnumerable,eo=ki(eo=t.Set)&&eo,no=t.setTimeout,ro=Na.splice,io=ki(io=t.Uint8Array)&&io,ao=ki(ao=t.WeakMap)&&ao,oo=function(){try{var e=ki(e=t.Float64Array)&&e,n=new e(new za(10),0,1)&&e}catch(r){}return n}(),so=function(){var t={1:0},e=Qa&&ki(e=Ma.assign)&&e;try{e(Qa(t),"xo")}catch(n){}return!t[1]&&e}(),uo=ki(uo=Ea.isArray)&&uo,co=ki(co=Ma.create)&&co,lo=t.isFinite,ho=ki(ho=Ma.keys)&&ho,fo=Ta.max,po=Ta.min,go=ki(go=Da.now)&&go,yo=ki(yo=Sa.isFinite)&&yo,mo=t.parseInt,vo=Ta.random,xo=Sa.NEGATIVE_INFINITY,bo=Sa.POSITIVE_INFINITY,_o=Ta.pow(2,32)-1,wo=_o-1,Ao=_o>>>1,ko=oo?oo.BYTES_PER_ELEMENT:0,Eo=Ta.pow(2,53)-1,Do=ao&&new ao,Bo={},Co=e.support={};!function(t){var e=function(){this.x=t},n=[];e.prototype={valueOf:t,y:t};for(var r in new e)n.push(r);Co.funcDecomp=/\bthis\b/.test(function(){return this}),Co.funcNames="string"==typeof Ca.name;try{Co.dom=11===qa.createDocumentFragment().nodeType}catch(i){Co.dom=!1}try{Co.nonEnumArgs=!to.call(arguments,1)}catch(i){Co.nonEnumArgs=!0}}(1,0),e.templateSettings={escape:At,evaluate:kt,interpolate:Et,variable:"",imports:{_:e}};var To=so||function(t,e){return null==e?t:ve(e,jo(e),ve(e,Ns(e),t))},So=function(){function e(){}return function(n){if(_i(n)){e.prototype=n;var r=new e;e.prototype=null}return r||t.Object()}}(),Mo=ln(Te),Fo=ln(Se,!0),Lo=hn(),Oo=hn(!0),No=Do?function(t,e){return Do.set(t,e),t}:fa;Ha||(an=za&&io?function(t){var e=t.byteLength,n=oo?Za(e/ko):0,r=n*ko,i=new za(e);if(n){var a=new oo(i,0,n);a.set(new oo(t,0,n))}return e!=r&&(a=new io(i,r),a.set(new io(t,r))),i}:ha(null));var Io=co&&eo?function(t){return new Kt(t)}:ha(null),Ro=Do?function(t){return Do.get(t)}:ma,qo=function(){return Co.funcNames?"constant"==ha.name?Ye("name"):function(t){for(var e=t.name,n=Bo[e],r=n?n.length:0;r--;){var i=n[r],a=i.func;if(null==a||a==t)return i.name}return e}:ha("")}(),Po=Ye("length"),jo=Xa?function(t){return Xa(nr(t))}:ha([]),Yo=function(){var t=0,e=0;return function(n,r){var i=ls(),a=Y-(i-e);if(e=i,a>0){if(++t>=j)return n}else t=0;return No(n,r)}}(),Uo=ui(function(t,e){return As(t)||di(t)?we(t,Be(e,!1,!0)):[]}),Vo=vn(),$o=vn(!0),zo=ui(function(t,e){t||(t=[]),e=Be(e);var n=me(t,e);return Ve(t,e.sort(a)),n}),Ho=Sn(),Go=Sn(!0),Wo=ui(function(t){return Ke(Be(t,!1,!0))}),Zo=ui(function(t,e){return As(t)||di(t)?we(t,e):[]}),Xo=ui(Tr),Ko=ui(function(t,e){var n=t?Po(t):0;return Gn(n)&&(t=er(t)),me(t,Be(e))}),Jo=un(function(t,e,n){ja.call(t,n)?++t[n]:t[n]=1}),Qo=mn(Mo),ts=mn(Fo,!0),es=_n(ee,Mo),ns=_n(ne,Fo),rs=un(function(t,e,n){ja.call(t,n)?t[n].push(e):t[n]=[e]}),is=un(function(t,e,n){t[n]=e}),as=ui(function(t,e,n){var r=-1,i="function"==typeof e,a=zn(e),o=Po(t),s=Gn(o)?Ea(o):[];return Mo(t,function(t){var o=i?e:a&&null!=t&&t[e];s[++r]=o?o.apply(t,n):Un(t,e,n)}),s}),os=un(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),ss=Dn(le,Mo),us=Dn(he,Fo),cs=ui(function(t,e){if(null==t)return[];var n=e[2];return n&&$n(e[0],e[1],n)&&(e.length=1),Ze(t,Be(e),[])}),ls=go||function(){return(new Da).getTime()},hs=ui(function(t,e,n){var r=T;if(n.length){var i=_(n,hs.placeholder);r|=O}return Mn(t,r,e,n,i)}),fs=ui(function(t,e){e=e.length?Be(e):Oi(t);for(var n=-1,r=e.length;++n<r;){var i=e[n];t[i]=Mn(t[i],T,t)}return t}),ps=ui(function(t,e,n){var r=T|S;if(n.length){var i=_(n,ps.placeholder);r|=O}return Mn(e,r,t,n,i)}),ds=gn(F),gs=gn(L),ys=ui(function(t,e){return _e(t,1,e)}),ms=ui(function(t,e,n){return _e(t,e,n)}),vs=bn(),xs=bn(!0),bs=En(O),_s=En(N),ws=ui(function(t,e){return Mn(t,R,null,null,null,Be(e))}),As=uo||function(t){return x(t)&&Gn(t.length)&&Ua.call(t)==W};Co.dom||(mi=function(t){return!!t&&1===t.nodeType&&x(t)&&!Ds(t)});var ks=yo||function(t){return"number"==typeof t&&lo(t)},Es=u(/x/)||io&&!u(io)?function(t){return Ua.call(t)==J}:u,Ds=Ka?function(t){if(!t||Ua.call(t)!=et)return!1;var e=t.valueOf,n=ki(e)&&(n=Ka(e))&&Ka(n);return n?t==n||Ka(t)==n:Qn(t)}:Qn,Bs=cn(function(t,e,n){return n?ye(t,e,n):To(t,e)}),Cs=ui(function(t){var e=t[0];return null==e?e:(t.push(de),Bs.apply(B,t))}),Ts=xn(Te),Ss=xn(Se),Ms=wn(Lo),Fs=wn(Oo),Ls=An(Te),Os=An(Se),Ns=ho?function(t){if(t)var e=t.constructor,n=t.length;return"function"==typeof e&&e.prototype===t||"function"!=typeof t&&Gn(n)?tr(t):_i(t)?ho(t):[]}:tr,Is=cn(Pe),Rs=ui(function(t,e){if(null==t)return{};if("function"!=typeof e[0]){var e=se(Be(e),La);return Xn(t,we(qi(t),e))}var n=rn(e[0],e[1],3);return Kn(t,function(t,e,r){return!n(t,e,r)})}),qs=ui(function(t,e){return null==t?{}:"function"==typeof e[0]?Kn(t,rn(e[0],e[1],3)):Xn(t,Be(e))}),Ps=pn(function(t,e,n){return e=e.toLowerCase(),t+(n?e.charAt(0).toUpperCase()+e.slice(1):e)}),js=pn(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Ys=kn(),Us=kn(!0);8!=mo(Yt+"08")&&(ta=function(t,e,n){return(n?$n(t,e,n):null==e)?e=0:e&&(e=+e),t=ia(t),mo(t,e||(Nt.test(t)?16:10))});var Vs=pn(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),$s=pn(function(t,e,n){return t+(n?" ":"")+(e.charAt(0).toUpperCase()+e.slice(1))}),zs=ui(function(t,e){try{return t.apply(B,e)}catch(n){return bi(n)?n:new Ba(n)}}),Hs=ui(function(t,e){return function(n){return Un(n,t,e)}}),Gs=ui(function(t,e){return function(n){return Un(t,n,e)}}),Ws=yn(ue),Zs=yn(ce,!0);return e.prototype=n.prototype,r.prototype=So(n.prototype),r.prototype.constructor=r,i.prototype=So(n.prototype),i.prototype.constructor=i,at.prototype["delete"]=Gt,at.prototype.get=Wt,at.prototype.has=Zt,at.prototype.set=Xt,Kt.prototype.push=Qt,ai.Cache=at,e.after=ei,e.ary=ni,e.assign=Bs,e.at=Ko,e.before=ri,e.bind=hs,e.bindAll=fs,e.bindKey=ps,e.callback=la,e.chain=Fr,e.chunk=ar,e.compact=or,e.constant=ha,e.countBy=Jo,e.create=Li,e.curry=ds,e.curryRight=gs,e.debounce=ii,e.defaults=Cs,e.defer=ys,e.delay=ms,e.difference=Uo,e.drop=sr,e.dropRight=ur,e.dropRightWhile=cr,e.dropWhile=lr,e.fill=hr,e.filter=Ur,e.flatten=pr,e.flattenDeep=dr,e.flow=vs,e.flowRight=xs,e.forEach=es,e.forEachRight=ns,e.forIn=Ms,e.forInRight=Fs,e.forOwn=Ls,e.forOwnRight=Os,e.functions=Oi,e.groupBy=rs,e.indexBy=is,e.initial=yr,e.intersection=mr,e.invert=Ri,e.invoke=as,e.keys=Ns,e.keysIn=qi,e.map=zr,e.mapValues=Pi,e.matches=pa,e.matchesProperty=da,e.memoize=ai,e.merge=Is,e.method=Hs,e.methodOf=Gs,e.mixin=ga,e.negate=oi,e.omit=Rs,e.once=si,e.pairs=ji,e.partial=bs,e.partialRight=_s,e.partition=os,e.pick=qs,e.pluck=Hr,e.property=va,e.propertyOf=xa,e.pull=br,e.pullAt=zo,e.range=ba,e.rearg=ws,e.reject=Gr,e.remove=_r,e.rest=wr,e.restParam=ui,e.set=Ui,e.shuffle=Zr,e.slice=Ar,e.sortBy=Jr,e.sortByAll=cs,e.sortByOrder=Qr,e.spread=ci,e.take=kr,e.takeRight=Er,e.takeRightWhile=Dr,e.takeWhile=Br,e.tap=Lr,e.throttle=li,e.thru=Or,e.times=_a,e.toArray=Mi,e.toPlainObject=Fi,e.transform=Vi,e.union=Wo,e.uniq=Cr,e.unzip=Tr,e.values=$i,e.valuesIn=zi,e.where=ti,e.without=Zo,e.wrap=hi,e.xor=Sr,e.zip=Xo,e.zipObject=Mr,e.backflow=xs,e.collect=zr,e.compose=xs,e.each=es,e.eachRight=ns,e.extend=Bs,e.iteratee=la,e.methods=Oi,e.object=Mr,e.select=Ur,e.tail=wr,e.unique=Cr,ga(e,e),e.add=Aa,e.attempt=zs,e.camelCase=Ps,e.capitalize=Wi,e.clone=fi,e.cloneDeep=pi,e.deburr=Zi,e.endsWith=Xi,e.escape=Ki,e.escapeRegExp=Ji,e.every=Yr,e.find=Qo,e.findIndex=Vo,e.findKey=Ts,e.findLast=ts,e.findLastIndex=$o,e.findLastKey=Ss,e.findWhere=Vr,e.first=fr,e.get=Ni,e.has=Ii,e.identity=fa,e.includes=$r,e.indexOf=gr,e.inRange=Hi,e.isArguments=di,e.isArray=As,e.isBoolean=gi,e.isDate=yi,e.isElement=mi,e.isEmpty=vi,e.isEqual=xi,e.isError=bi,e.isFinite=ks,e.isFunction=Es,e.isMatch=wi,e.isNaN=Ai,e.isNative=ki,e.isNull=Ei,e.isNumber=Di,e.isObject=_i,e.isPlainObject=Ds,e.isRegExp=Bi,e.isString=Ci,e.isTypedArray=Ti,e.isUndefined=Si,e.kebabCase=js,e.last=vr,e.lastIndexOf=xr,e.max=Ws,e.min=Zs,e.noConflict=ya,e.noop=ma,e.now=ls,e.pad=Qi,e.padLeft=Ys,e.padRight=Us,e.parseInt=ta,e.random=Gi,e.reduce=ss,e.reduceRight=us,e.repeat=ea,e.result=Yi,e.runInContext=D,e.size=Xr,e.snakeCase=Vs,e.some=Kr,e.sortedIndex=Ho,e.sortedLastIndex=Go,e.startCase=$s,e.startsWith=na,e.sum=ka,e.template=ra,e.trim=ia,e.trimLeft=aa,e.trimRight=oa,e.trunc=sa,e.unescape=ua,e.uniqueId=wa,e.words=ca,e.all=Yr,e.any=Kr,e.contains=$r,e.detect=Qo,e.foldl=ss,e.foldr=us,e.head=fr,e.include=$r,e.inject=ss,ga(e,function(){var t={};return Te(e,function(n,r){e.prototype[r]||(t[r]=n)}),t}(),!1),e.sample=Wr,e.prototype.sample=function(t){return this.__chain__||null!=t?this.thru(function(e){return Wr(e,t)}):Wr(this.value())},e.VERSION=C,ee(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){e[t].placeholder=e}),ee(["dropWhile","filter","map","takeWhile"],function(t,e){var n=e!=$,r=e==U;i.prototype[t]=function(t,a){var o=this.__filtered__,s=o&&r?new i(this):this.clone(),u=s.__iteratees__||(s.__iteratees__=[]);return u.push({done:!1,count:0,index:0,iteratee:In(t,a,1),limit:-1,type:e}),s.__filtered__=o||n,s}}),ee(["drop","take"],function(t,e){var n=t+"While";i.prototype[t]=function(n){var r=this.__filtered__,i=r&&!e?this.dropWhile():this.clone();if(n=null==n?1:fo(Za(n)||0,0),r)e?i.__takeCount__=po(i.__takeCount__,n):vr(i.__iteratees__).limit=n;else{var a=i.__views__||(i.__views__=[]);a.push({size:n,type:t+(i.__dir__<0?"Right":"")})}return i},i.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()},i.prototype[t+"RightWhile"]=function(t,e){return this.reverse()[n](t,e).reverse()}}),ee(["first","last"],function(t,e){var n="take"+(e?"Right":"");i.prototype[t]=function(){return this[n](1).value()[0]}}),ee(["initial","rest"],function(t,e){var n="drop"+(e?"":"Right");i.prototype[t]=function(){return this[n](1)}}),ee(["pluck","where"],function(t,e){var n=e?"filter":"map",r=e?Re:va;i.prototype[t]=function(t){return this[n](r(t))}}),i.prototype.compact=function(){return this.filter(fa)},i.prototype.reject=function(t,e){return t=In(t,e,1),this.filter(function(e){return!t(e)})},i.prototype.slice=function(t,e){t=null==t?0:+t||0;var n=0>t?this.takeRight(-t):this.drop(t);return e!==B&&(e=+e||0,n=0>e?n.dropRight(-e):n.take(e-t)),n},i.prototype.toArray=function(){return this.drop(0)},Te(i.prototype,function(t,n){var a=e[n];if(a){var o=/^(?:filter|map|reject)|While$/.test(n),s=/^(?:first|last)$/.test(n);e.prototype[n]=function(){var n=arguments,u=(n.length,this.__chain__),c=this.__wrapped__,l=!!this.__actions__.length,h=c instanceof i,f=n[0],p=h||As(c);p&&o&&"function"==typeof f&&1!=f.length&&(h=p=!1);var d=h&&!l;if(s&&!u)return d?t.call(c):a.call(e,this.value());var g=function(t){var r=[t];return Ja.apply(r,n),a.apply(e,r)};if(p){var y=d?c:new i(this),m=t.apply(y,n);if(!s&&(l||m.__actions__)){var v=m.__actions__||(m.__actions__=[]);v.push({func:Or,args:[g],thisArg:e})}return new r(m,u)}return this.thru(g)}}}),ee(["concat","join","pop","push","replace","shift","sort","splice","split","unshift"],function(t){var n=(/^(?:replace|split)$/.test(t)?Ra:Na)[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)})}}),Te(i.prototype,function(t,n){var r=e[n];if(r){var i=r.name,a=Bo[i]||(Bo[i]=[]);a.push({name:n,func:r})}}),Bo[Bn(null,S).name]=[{name:"wrapper",func:null}],i.prototype.clone=b,i.prototype.reverse=Q,i.prototype.value=rt,e.prototype.chain=Nr,e.prototype.commit=Ir,e.prototype.plant=Rr,e.prototype.reverse=qr,e.prototype.toString=Pr,e.prototype.run=e.prototype.toJSON=e.prototype.valueOf=e.prototype.value=jr,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 B,C="3.7.0",T=1,S=2,M=4,F=8,L=16,O=32,N=64,I=128,R=256,q=30,P="...",j=150,Y=16,U=0,V=1,$=2,z="Expected a function",H="__lodash_placeholder__",G="[object Arguments]",W="[object Array]",Z="[object Boolean]",X="[object Date]",K="[object Error]",J="[object Function]",Q="[object Map]",tt="[object Number]",et="[object Object]",nt="[object RegExp]",rt="[object Set]",it="[object String]",at="[object WeakMap]",ot="[object ArrayBuffer]",st="[object Float32Array]",ut="[object Float64Array]",ct="[object Int8Array]",lt="[object Int16Array]",ht="[object Int32Array]",ft="[object Uint8Array]",pt="[object Uint8ClampedArray]",dt="[object Uint16Array]",gt="[object Uint32Array]",yt=/\b__p \+= '';/g,mt=/\b(__p \+=) '' \+/g,vt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,xt=/&(?:amp|lt|gt|quot|#39|#96);/g,bt=/[&<>"'`]/g,_t=RegExp(xt.source),wt=RegExp(bt.source),At=/<%-([\s\S]+?)%>/g,kt=/<%([\s\S]+?)%>/g,Et=/<%=([\s\S]+?)%>/g,Dt=/\.|\[(?:[^[\]]+|(["'])(?:(?!\1)[^\n\\]|\\.)*?)\1\]/,Bt=/^\w*$/,Ct=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g,Tt=/[.*+?^${}()|[\]\/\\]/g,St=RegExp(Tt.source),Mt=/[\u0300-\u036f\ufe20-\ufe23]/g,Ft=/\\(\\)?/g,Lt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Ot=/\w*$/,Nt=/^0[xX]/,It=/^\[object .+?Constructor\]$/,Rt=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,qt=/($^)/,Pt=/['\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=" 	\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000",Ut=["Array","ArrayBuffer","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Math","Number","Object","RegExp","Set","String","_","clearTimeout","document","isFinite","parseInt","setTimeout","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","window"],Vt=-1,$t={};$t[st]=$t[ut]=$t[ct]=$t[lt]=$t[ht]=$t[ft]=$t[pt]=$t[dt]=$t[gt]=!0,$t[G]=$t[W]=$t[ot]=$t[Z]=$t[X]=$t[K]=$t[J]=$t[Q]=$t[tt]=$t[et]=$t[nt]=$t[rt]=$t[it]=$t[at]=!1;var zt={};zt[G]=zt[W]=zt[ot]=zt[Z]=zt[X]=zt[st]=zt[ut]=zt[ct]=zt[lt]=zt[ht]=zt[tt]=zt[et]=zt[nt]=zt[it]=zt[ft]=zt[pt]=zt[dt]=zt[gt]=!0,zt[K]=zt[J]=zt[Q]=zt[rt]=zt[at]=!1;var Ht={leading:!1,maxWait:0,trailing:!1},Gt={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss"},Wt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"},Zt={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'","&#96;":"`"},Xt={"function":!0,object:!0},Kt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Jt=Xt[typeof e]&&e&&!e.nodeType&&e,Qt=Xt[typeof t]&&t&&!t.nodeType&&t,te=Jt&&Qt&&"object"==typeof i&&i&&i.Object&&i,ee=Xt[typeof self]&&self&&self.Object&&self,ne=Xt[typeof window]&&window&&window.Object&&window,re=(Qt&&Qt.exports===Jt&&Jt,te||ne!==(this&&this.window)&&ne||ee||this),ie=D();re._=ie,r=function(){return ie}.call(e,n,e,t),!(r!==B&&(t.exports=r))}).call(this)}).call(e,n(5)(t),function(){return this}())},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"",""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"",""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,'.loopLine,.messageLine0{marker-end:"url(#arrowhead)"}.noteText,text{font-family:\'trebuchet ms\',verdana,arial}.actor{stroke:#ccf;fill:#ececff}text.actor{fill:#000;stroke:none}.actor-line{stroke:grey}.messageLine0,.messageLine1{stroke-width:1.5;stroke-dasharray:"2 2";stroke:#333}#arrowhead{fill:#333}#crosshead path{fill:#333!important;stroke:#333!important}.messageText{fill:#333;stroke:none}.labelBox{stroke:#ccf;fill:#ececff}.labelText,.loopText{fill:#000;stroke:none}.loopLine{stroke-width:2;stroke-dasharray:"2 2";stroke:#ccf}.note{stroke:#aa3;fill:#fff5ad}.noteText{fill:#000;stroke:none;font-size:14px}.section{stroke:none;opacity:.2}.section0{fill:rgba(102,102,255,.49)}.section2{fill:#fff400}.section1,.section3{fill:#fff;opacity:.2}.sectionTitle0,.sectionTitle1,.sectionTitle2,.sectionTitle3{fill:#333}.sectionTitle{text-anchor:start;font-size:11px;text-height:14px}.grid .tick{stroke:#d3d3d3;opacity:.3;shape-rendering:crispEdges}.grid path{stroke-width:0}.today{fill:none;stroke:red;stroke-width:2px}.task{stroke-width:2}.taskText{text-anchor:middle;font-size:11px}.taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px}.taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}.taskText0,.taskText1,.taskText2,.taskText3{fill:#fff}.task0,.task1,.task2,.task3{fill:#8a90dd;stroke:#534fbc}.taskTextOutside0,.taskTextOutside1,.taskTextOutside2,.taskTextOutside3{fill:#000}.active0,.active1,.active2,.active3{fill:#bfc7ff;stroke:#534fbc}.activeText0,.activeText1,.activeText2,.activeText3{fill:#000!important}.done0,.done1,.done2,.done3{stroke:grey;fill:#d3d3d3;stroke-width:2}.doneText0,.doneText1,.doneText2,.doneText3{fill:#000!important}.crit0,.crit1,.crit2,.crit3{stroke:#f88;fill:red;stroke-width:2}.activeCrit0,.activeCrit1,.activeCrit2,.activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}.doneCrit0,.doneCrit1,.doneCrit2,.doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}.activeCritText0,.activeCritText1,.activeCritText2,.activeCritText3,.doneCritText0,.doneCritText1,.doneCritText2,.doneCritText3{fill:#000!important}.titleText{text-anchor:middle;font-size:18px;fill:#000}.mermaid .label{color:#333}.node circle,.node polygon,.node rect{fill:#ececff;stroke:#ccf;stroke-width:1px}.edgePath .path{stroke:#333}.cluster rect{fill:#ffffde!important;rx:4!important;stroke:#aa3!important;stroke-width:1px!important}.cluster text{fill:#333}text{font-size:14px}',""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"",""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"",""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"",""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"",""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,'.loopLine,.messageLine0{marker-end:"url(#arrowhead)"}.mermaid .label,.noteText,text{font-family:\'trebuchet ms\',verdana,arial}.actor{stroke:#13540c;fill:#cde498}text.actor{fill:#000;stroke:none}.actor-line{stroke:grey}.messageLine0,.messageLine1{stroke-width:1.5;stroke-dasharray:"2 2";stroke:#333}#arrowhead{fill:#333}#crosshead path{fill:#333!important;stroke:#333!important}.messageText{fill:#333;stroke:none}.labelBox{stroke:#326932;fill:#cde498}.labelText,.loopText{fill:#000;stroke:none}.loopLine{stroke-width:2;stroke-dasharray:"2 2";stroke:#326932}.note{stroke:#6eaa49;fill:#fff5ad}.noteText{fill:#000;stroke:none;font-size:14px}.section{stroke:none;opacity:.2}.section0,.section2{fill:#6eaa49}.section1,.section3{fill:#fff;opacity:.2}.sectionTitle0,.sectionTitle1,.sectionTitle2,.sectionTitle3{fill:#333}.sectionTitle{text-anchor:start;font-size:11px;text-height:14px}.grid .tick{stroke:#d3d3d3;opacity:.3;shape-rendering:crispEdges}.grid path{stroke-width:0}.today{fill:none;stroke:red;stroke-width:2px}.task{stroke-width:2}.taskText{text-anchor:middle;font-size:11px}.taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px}.taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}.taskText0,.taskText1,.taskText2,.taskText3{fill:#fff}.task0,.task1,.task2,.task3{fill:#487e3a;stroke:#13540c}.taskTextOutside0,.taskTextOutside1,.taskTextOutside2,.taskTextOutside3{fill:#000}.active0,.active1,.active2,.active3{fill:#cde498;stroke:#13540c}.activeText0,.activeText1,.activeText2,.activeText3{fill:#000!important}.done0,.done1,.done2,.done3{stroke:grey;fill:#d3d3d3;stroke-width:2}.doneText0,.doneText1,.doneText2,.doneText3{fill:#000!important}.crit0,.crit1,.crit2,.crit3{stroke:#f88;fill:red;stroke-width:2}.activeCrit0,.activeCrit1,.activeCrit2,.activeCrit3{stroke:#f88;fill:#cde498;stroke-width:2}.doneCrit0,.doneCrit1,.doneCrit2,.doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}.activeCritText0,.activeCritText1,.activeCritText2,.activeCritText3,.doneCritText0,.doneCritText1,.doneCritText2,.doneCritText3{fill:#000!important}.titleText{text-anchor:middle;font-size:18px;fill:#000}.mermaid .label{color:#333}.node circle,.node polygon,.node rect{fill:#cde498;stroke:#13540c;stroke-width:1px}.edgePath .path{stroke:green;stroke-width:1.5px}.cluster rect{fill:#cdffb2!important;rx:4!important;stroke:#6eaa49!important;stroke-width:1px!important}.cluster text{fill:#333}text{font-size:14px}',""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"",""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"",""])},function(t,e,n){e=t.exports=n(6)(),e.push([t.id,"#container,.svg{width:800px;overflow:visible}*{margin:0;padding:0}body{background:#fff;font-family:Open-Sans,sans-serif}#container{margin:0 auto;position:relative}#tag,#tag:before,.svg{position:absolute}.svg{height:400px}.grid .tick{stroke:#d3d3d3;opacity:.3;shape-rendering:crispEdges}.grid path{stroke-width:0}#tag{color:#fff;background:#FA283D;width:150px;display:none;padding:3px 6px;margin-left:-80px;font-size:11px}#tag:before{border:solid transparent;content:' ';height:0;left:50%;margin-left:-5px;width:0;border-width:10px;border-bottom-color:#FA283D;top:-20px}",""])},function(t,e,n){var r=n(101);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(102);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(103);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(104);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(105);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(106);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(107);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(108);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(109);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(110);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){var r=n(111);"string"==typeof r&&(r=[[t.id,r,""]]);n(8)(r,{})},function(t,e,n){t.exports={graphlib:n(57),dagre:n(37),intersect:n(58),render:n(66),util:n(2),version:n(68)}},function(t,e,n){t.exports={graphlib:n(9),layout:n(131),debug:n(129),util:{time:n(3).time,notime:n(3).notime},version:n(148)}},function(t,e,n){"use strict";function r(t){function e(t){return function(e){return t.edge(e).weight}}var n="greedy"===t.graph().acyclicer?s(t,e(t)):i(t);o.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,o.uniqueId("rev"))})}function i(t){function e(a){o.has(i,a)||(i[a]=!0,r[a]=!0,o.each(t.outEdges(a),function(t){o.has(r,t.w)?n.push(t):e(t.w)}),delete r[a])}var n=[],r={},i={};return o.each(t.nodes(),e),n}function a(t){o.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 o=n(1),s=n(130);t.exports={run:r,undo:a}},function(t,e,n){function r(t){function e(n){var r=t.children(n),o=t.node(n);if(r.length&&a.each(r,e),a.has(o,"minRank")){o.borderLeft=[],o.borderRight=[];for(var s=o.minRank,u=o.maxRank+1;u>s;++s)i(t,"borderLeft","_bl",n,o,s),i(t,"borderRight","_br",n,o,s)}}a.each(t.children(),e)}function i(t,e,n,r,i,a){var s={width:0,height:0,rank:a,borderType:e},u=i[e][a-1],c=o.addDummyNode(t,"border",s,n);i[e][a]=c,t.setParent(c,r),u&&t.setEdge(u,c,{weight:1})}var a=n(1),o=n(3);t.exports=r},function(t,e,n){"use strict";function r(t){var e=t.graph().rankdir.toLowerCase();("lr"===e||"rl"===e)&&a(t)}function i(t){var e=t.graph().rankdir.toLowerCase();("bt"===e||"rl"===e)&&s(t),("lr"===e||"rl"===e)&&(c(t),a(t))}function a(t){h.each(t.nodes(),function(e){o(t.node(e))}),h.each(t.edges(),function(e){o(t.edge(e))})}function o(t){var e=t.width;t.width=t.height,t.height=e}function s(t){h.each(t.nodes(),function(e){u(t.node(e))}),h.each(t.edges(),function(e){var n=t.edge(e);h.each(n.points,u),h.has(n,"y")&&u(n)})}function u(t){t.y=-t.y}function c(t){h.each(t.nodes(),function(e){l(t.node(e))}),h.each(t.edges(),function(e){var n=t.edge(e);h.each(n.points,l),h.has(n,"x")&&l(n)})}function l(t){var e=t.x;t.x=t.y,t.y=e}var h=n(1);t.exports={adjust:r,undo:i}},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}t.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(", ")+"]"}},function(t,e,n){function r(t){var e=a.buildLayerMatrix(t),n=new o({compound:!0,multigraph:!0}).setGraph({});return i.each(t.nodes(),function(e){n.setNode(e,{label:e}),n.setParent(e,"layer"+t.node(e).rank)}),i.each(t.edges(),function(t){n.setEdge(t.v,t.w,{},t.name)}),i.each(e,function(t,e){var r="layer"+e;n.setNode(r,{rank:"same"}),i.reduce(t,function(t,e){return n.setEdge(t,e,{style:"invis"}),e})}),n}var i=n(1),a=n(3),o=n(9).Graph;t.exports={debugOrdering:r}},function(t,e,n){function r(t,e){if(t.nodeCount()<=1)return[];var n=o(t,e||h),r=i(n.graph,n.buckets,n.zeroIdx);return u.flatten(u.map(r,function(e){return t.outEdges(e.v,e.w)}),!0)}function i(t,e,n){for(var r,i=[],o=e[e.length-1],s=e[0];t.nodeCount();){for(;r=s.dequeue();)a(t,e,n,r);for(;r=o.dequeue();)a(t,e,n,r);if(t.nodeCount())for(var u=e.length-2;u>0;--u)if(r=e[u].dequeue()){i=i.concat(a(t,e,n,r,!0));break}}return i}function a(t,e,n,r,i){var a=i?[]:void 0;return u.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)}),u.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 o(t,e){var n=new c,r=0,i=0;u.each(t.nodes(),function(t){n.setNode(t,{v:t,"in":0,out:0})}),u.each(t.edges(),function(t){var a=n.edge(t.v,t.w)||0,o=e(t),s=a+o;n.setEdge(t.v,t.w,s),i=Math.max(i,n.node(t.v).out+=o),r=Math.max(r,n.node(t.w)["in"]+=o)});var a=u.range(i+r+3).map(function(){return new l}),o=r+1;return u.each(n.nodes(),function(t){s(a,o,n.node(t))}),{graph:n,buckets:a,zeroIdx:o}}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 u=n(1),c=n(9).Graph,l=n(128);t.exports=r;var h=u.constant(1)},function(t,e,n){"use strict";function r(t,e){var n=e&&e.debugTiming?L.time:L.notime;n("layout",function(){var e=n("  buildLayoutGraph",function(){return o(t)});n("  runLayout",function(){i(e,n)}),n("  updateInputGraph",function(){a(t,e)})})}function i(t,e){e("    makeSpaceForEdgeLabels",function(){s(t)}),e("    removeSelfEdges",function(){y(t)}),e("    acyclic",function(){w.run(t)}),e("    nestingGraph.run",function(){C.run(t)}),e("    rank",function(){k(L.asNonCompoundGraph(t))}),e("    injectEdgeLabelProxies",function(){u(t)}),e("    removeEmptyRanks",function(){B(t)}),e("    nestingGraph.cleanup",function(){C.cleanup(t)}),e("    normalizeRanks",function(){E(t)}),e("    assignRankMinMax",function(){c(t)}),e("    removeEdgeLabelProxies",function(){l(t)}),e("    normalize.run",function(){A.run(t)}),e("    parentDummyChains",function(){D(t)}),e("    addBorderSegments",function(){T(t)}),e("    order",function(){M(t)}),e("    insertSelfEdges",function(){m(t)}),e("    adjustCoordinateSystem",function(){S.adjust(t)}),e("    position",function(){F(t)}),e("    positionSelfEdges",function(){v(t)}),e("    removeBorderNodes",function(){g(t)}),e("    normalize.undo",function(){A.undo(t)}),e("    fixupEdgeLabelCoords",function(){p(t)}),e("    undoCoordinateSystem",function(){S.undo(t)}),e("    translateGraph",function(){h(t)}),e("    assignNodeIntersects",function(){f(t)}),e("    reversePoints",function(){d(t)}),e("    acyclic.undo",function(){w.undo(t)})}function a(t,e){_.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))}),_.each(t.edges(),function(n){var r=t.edge(n),i=e.edge(n);r.points=i.points,_.has(i,"x")&&(r.x=i.x,r.y=i.y)}),t.graph().width=e.graph().width,t.graph().height=e.graph().height}function o(t){var e=new O({multigraph:!0,compound:!0}),n=b(t.graph());return e.setGraph(_.merge({},I,x(n,N),_.pick(n,R))),_.each(t.nodes(),function(n){var r=b(t.node(n));e.setNode(n,_.defaults(x(r,q),P)),e.setParent(n,t.parent(n))}),_.each(t.edges(),function(n){var r=b(t.edge(n));e.setEdge(n,_.merge({},Y,x(r,j),_.pick(r,U)))}),e}function s(t){var e=t.graph();e.ranksep/=2,_.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 u(t){_.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};L.addDummyNode(t,"edge-proxy",a,"_ep")}})}function c(t){var e=0;_.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=_.max(e,r.maxRank))}),t.graph().maxRank=e}function l(t){_.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 h(t){function e(t){var e=t.x,o=t.y,s=t.width,u=t.height;n=Math.min(n,e-s/2),r=Math.max(r,e+s/2),i=Math.min(i,o-u/2),a=Math.max(a,o+u/2)}var n=Number.POSITIVE_INFINITY,r=0,i=Number.POSITIVE_INFINITY,a=0,o=t.graph(),s=o.marginx||0,u=o.marginy||0;_.each(t.nodes(),function(n){e(t.node(n))}),_.each(t.edges(),function(n){var r=t.edge(n);_.has(r,"x")&&e(r)}),n-=s,i-=u,_.each(t.nodes(),function(e){var r=t.node(e);r.x-=n,r.y-=i}),_.each(t.edges(),function(e){var r=t.edge(e);_.each(r.points,function(t){t.x-=n,t.y-=i}),_.has(r,"x")&&(r.x-=n),_.has(r,"y")&&(r.y-=i)}),o.width=r-n+s,o.height=a-i+u}function f(t){_.each(t.edges(),function(e){var n,r,i=t.edge(e),a=t.node(e.v),o=t.node(e.w);i.points?(n=i.points[0],r=i.points[i.points.length-1]):(i.points=[],n=o,r=a),i.points.unshift(L.intersectRect(a,n)),i.points.push(L.intersectRect(o,r))})}function p(t){_.each(t.edges(),function(e){var n=t.edge(e);if(_.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 d(t){_.each(t.edges(),function(e){var n=t.edge(e);n.reversed&&n.points.reverse()})}function g(t){_.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(_.last(n.borderLeft)),o=t.node(_.last(n.borderRight));n.width=Math.abs(o.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}}),_.each(t.nodes(),function(e){"border"===t.node(e).dummy&&t.removeNode(e)})}function y(t){_.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 m(t){var e=L.buildLayerMatrix(t);_.each(e,function(e){var n=0;_.each(e,function(e,r){var i=t.node(e);i.order=r+n,_.each(i.selfEdges,function(e){L.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 v(t){_.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,o=n.x-i,s=r.height/2;t.setEdge(n.e,n.label),t.removeNode(e),n.label.points=[{x:i+2*o/3,y:a-s},{x:i+5*o/6,y:a-s},{x:i+o,y:a},{x:i+5*o/6,y:a+s},{x:i+2*o/3,y:a+s}],n.label.x=n.x,n.label.y=n.y}})}function x(t,e){return _.mapValues(_.pick(t,e),Number)}function b(t){var e={};return _.each(t,function(t,n){e[n.toLowerCase()]=t}),e}var _=n(1),w=n(125),A=n(133),k=n(146),E=n(3).normalizeRanks,D=n(143),B=n(3).removeEmptyRanks,C=n(132),T=n(126),S=n(127),M=n(138),F=n(145),L=n(3),O=n(9).Graph;t.exports=r;var N=["nodesep","edgesep","ranksep","marginx","marginy"],I={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},R=["acyclicer","ranker","rankdir","align"],q=["width","height"],P={width:0,height:0},j=["minlen","weight","width","height","labeloffset"],Y={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},U=["labelpos"]},function(t,e,n){function r(t){var e=c.addDummyNode(t,"root",{},"_root"),n=a(t),r=u.max(n)-1,s=2*r+1;t.graph().nestingRoot=e,u.each(t.edges(),function(e){t.edge(e).minlen*=s});var l=o(t)+1;u.each(t.children(),function(a){i(t,e,s,l,r,n,a)}),t.graph().nodeRankFactor=s}function i(t,e,n,r,a,o,s){var l=t.children(s);if(!l.length)return void(s!==e&&t.setEdge(e,s,{weight:0,minlen:n}));var h=c.addBorderNode(t,"_bt"),f=c.addBorderNode(t,"_bb"),p=t.node(s);t.setParent(h,s),p.borderTop=h,t.setParent(f,s),p.borderBottom=f,u.each(l,function(u){i(t,e,n,r,a,o,u);var c=t.node(u),l=c.borderTop?c.borderTop:u,p=c.borderBottom?c.borderBottom:u,d=c.borderTop?r:2*r,g=l!==p?1:a-o[s]+1;t.setEdge(h,l,{weight:d,minlen:g,nestingEdge:!0}),t.setEdge(p,f,{weight:d,minlen:g,nestingEdge:!0})}),t.parent(s)||t.setEdge(e,h,{weight:0,minlen:a+o[s]})}function a(t){function e(r,i){var a=t.children(r);a&&a.length&&u.each(a,function(t){e(t,i+1)}),n[r]=i}var n={};return u.each(t.children(),function(t){e(t,1)}),n}function o(t){return u.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,u.each(t.edges(),function(e){var n=t.edge(e);n.nestingEdge&&t.removeEdge(e)})}var u=n(1),c=n(3);t.exports={run:r,cleanup:s}},function(t,e,n){"use strict";function r(t){t.graph().dummyChains=[],o.each(t.edges(),function(e){i(t,e)})}function i(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,f;for(f=0,++r;a>r;++f,++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===f&&t.graph().dummyChains.push(l),n=l;t.setEdge(n,i,{weight:u.weight},o)}}function a(t){o.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 o=n(1),s=n(3);t.exports={run:r,undo:a}},function(t,e,n){function r(t,e,n){var r,a={};i.each(n,function(n){for(var i,o,s=t.parent(n);s;){if(i=t.parent(s),i?(o=a[i],a[i]=s):(o=r,r=s),o&&o!==s)return void e.setEdge(o,s);s=i}})}var i=n(1);t.exports=r},function(t,e,n){function r(t,e){return i.map(e,function(e){var n=t.inEdges(e);if(n.length){var r=i.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:r.sum/r.weight,weight:r.weight}}return{v:e}})}var i=n(1);t.exports=r},function(t,e,n){function r(t,e,n){var r=i(t),s=new o({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(function(e){return t.node(e)});return a.each(t.nodes(),function(i){var o=t.node(i),u=t.parent(i);(o.rank===e||o.minRank<=e&&e<=o.maxRank)&&(s.setNode(i),s.setParent(i,u||r),a.each(t[n](i),function(e){var n=e.v===i?e.w:e.v,r=s.edge(n,i),o=a.isUndefined(r)?0:r.weight;s.setEdge(n,i,{weight:t.edge(e).weight+o})}),a.has(o,"minRank")&&s.setNode(i,{borderLeft:o.borderLeft[e],borderRight:o.borderRight[e]}))}),s}function i(t){for(var e;t.hasNode(e=a.uniqueId("_root")););return e}var a=n(1),o=n(9).Graph;t.exports=r},function(t,e,n){"use strict";function r(t,e){for(var n=0,r=1;r<e.length;++r)n+=i(t,e[r-1],e[r]);return n}function i(t,e,n){for(var r=a.zipObject(n,a.map(n,function(t,e){return e})),i=a.flatten(a.map(e,function(e){return a.chain(t.outEdges(e)).map(function(e){return{pos:r[e.w],weight:t.edge(e).weight}}).sortBy("pos").value()}),!0),o=1;o<n.length;)o<<=1;var s=2*o-1;o-=1;var u=a.map(new Array(s),function(){return 0}),c=0;return a.each(i.forEach(function(t){var e=t.pos+o;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 a=n(1);t.exports=r},function(t,e,n){"use strict";function r(t){var e=d.maxRank(t),n=i(t,s.range(1,e+1),"inEdges"),r=i(t,s.range(e-1,-1,-1),"outEdges"),l=u(t);o(t,l);for(var h,f=Number.POSITIVE_INFINITY,p=0,g=0;4>g;++p,++g){a(p%2?n:r,p%4>=2),l=d.buildLayerMatrix(t);var y=c(t,l);f>y&&(g=0,h=s.cloneDeep(l),f=y)}o(t,h)}function i(t,e,n){return s.map(e,function(e){return h(t,e,n)})}function a(t,e){var n=new p;s.each(t,function(t){var r=t.graph().root,i=l(t,r,n,e);s.each(i.vs,function(e,n){t.node(e).order=n}),f(t,n,i.vs)})}function o(t,e){s.each(e,function(e){s.each(e,function(e,n){t.node(e).order=n})})}var s=n(1),u=n(139),c=n(137),l=n(141),h=n(136),f=n(134),p=n(9).Graph,d=n(3);t.exports=r},function(t,e,n){"use strict";function r(t){function e(r){if(!i.has(n,r)){n[r]=!0;var a=t.node(r);o[a.rank].push(r),i.each(t.successors(r),e)}}var n={},r=i.filter(t.nodes(),function(e){return!t.children(e).length}),a=i.max(i.map(r,function(e){return t.node(e).rank})),o=i.map(i.range(a+1),function(){return[]}),s=i.sortBy(r,function(e){return t.node(e).rank});return i.each(s,e),o}var i=n(1);t.exports=r},function(t,e,n){"use strict";function r(t,e){var n={};o.each(t,function(t,e){var r=n[t.v]={indegree:0,"in":[],out:[],vs:[t.v],i:e};o.isUndefined(t.barycenter)||(r.barycenter=t.barycenter,r.weight=t.weight)}),o.each(e.edges(),function(t){var e=n[t.v],r=n[t.w];o.isUndefined(e)||o.isUndefined(r)||(r.indegree++,e.out.push(n[t.w]))});var r=o.filter(n,function(t){return!t.indegree});return i(r)}function i(t){function e(t){return function(e){e.merged||(o.isUndefined(e.barycenter)||o.isUndefined(t.barycenter)||e.barycenter>=t.barycenter)&&a(t,e)}}function n(e){return function(n){n["in"].push(e),0===--n.indegree&&t.push(n)}}for(var r=[];t.length;){var i=t.pop();r.push(i),o.each(i["in"].reverse(),e(i)),o.each(i.out,n(i))}return o.chain(r).filter(function(t){return!t.merged}).map(function(t){return o.pick(t,["vs","i","barycenter","weight"])}).value()}function a(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 o=n(1);t.exports=r},function(t,e,n){function r(t,e,n,l){var h=t.children(e),f=t.node(e),p=f?f.borderLeft:void 0,d=f?f.borderRight:void 0,g={};p&&(h=o.filter(h,function(t){return t!==p&&t!==d}));var y=s(t,h);o.each(y,function(e){if(t.children(e.v).length){var i=r(t,e.v,n,l);g[e.v]=i,o.has(i,"barycenter")&&a(e,i)}});var m=u(y,n);i(m,g);var v=c(m,l);if(p&&(v.vs=o.flatten([p,v.vs,d],!0),t.predecessors(p).length)){var x=t.node(t.predecessors(p)[0]),b=t.node(t.predecessors(d)[0]);o.has(v,"barycenter")||(v.barycenter=0,v.weight=0),v.barycenter=(v.barycenter*v.weight+x.order+b.order)/(v.weight+2),v.weight+=2}return v}function i(t,e){o.each(t,function(t){t.vs=o.flatten(t.vs.map(function(t){return e[t]?e[t].vs:t}),!0)})}function a(t,e){o.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 o=n(1),s=n(135),u=n(140),c=n(142);t.exports=r},function(t,e,n){function r(t,e){var n=s.partition(t,function(t){return o.has(t,"barycenter")}),r=n.lhs,u=o.sortBy(n.rhs,function(t){return-t.i}),c=[],l=0,h=0,f=0;r.sort(a(!!e)),f=i(c,u,f),o.each(r,function(t){f+=t.vs.length,c.push(t.vs),l+=t.barycenter*t.weight,h+=t.weight,f=i(c,u,f)});var p={vs:o.flatten(c,!0)};return h&&(p.barycenter=l/h,p.weight=h),p}function i(t,e,n){for(var r;e.length&&(r=o.last(e)).i<=n;)e.pop(),t.push(r.vs),n++;return n}function a(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 o=n(1),s=n(3);t.exports=r},function(t,e,n){function r(t){var e=a(t);o.each(t.graph().dummyChains,function(n){for(var r=t.node(n),a=r.edgeObj,o=i(t,e,a.v,a.w),s=o.path,u=o.lca,c=0,l=s[c],h=!0;n!==a.w;){if(r=t.node(n),h){for(;(l=s[c])!==u&&t.node(l).maxRank<r.rank;)c++;l===u&&(h=!1)}if(!h){for(;c<s.length-1&&t.node(l=s[c+1]).minRank<=r.rank;)c++;l=s[c]}t.setParent(n,l),n=t.successors(n)[0]}})}function i(t,e,n,r){var i,a,o=[],s=[],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),o.push(i);while(i&&(e[i].low>u||c>e[i].lim));for(a=i,i=r;(i=t.parent(i))!==a;)s.push(i);return{path:o.concat(s.reverse()),lca:a}}function a(t){function e(i){var a=r;o.each(t.children(i),e),n[i]={low:a,lim:r++}}var n={},r=0;return o.each(t.children(),e),n}var o=n(1);t.exports=r},function(t,e,n){"use strict";function r(t,e){function n(e,n){var i=0,s=0,u=e.length,c=m.last(n);return m.each(n,function(e,l){var h=a(t,e),f=h?t.node(h).order:u;(h||e===c)&&(m.each(n.slice(s,l+1),function(e){m.each(t.predecessors(e),function(n){var a=t.node(n),s=a.order;!(i>s||s>f)||a.dummy&&t.node(e).dummy||o(r,n,e)})}),s=l+1,i=f)}),n}var r={};return m.reduce(e,n),r}function i(t,e){function n(e,n,r,a,s){var u;m.each(m.range(n,r),function(n){u=e[n],t.node(u).dummy&&m.each(t.predecessors(u),function(e){var n=t.node(e);n.dummy&&(n.order<a||n.order>s)&&o(i,e,u)})})}function r(e,r){var i,a=-1,o=0;return m.each(r,function(s,u){if("border"===t.node(s).dummy){var c=t.predecessors(s);c.length&&(i=t.node(c[0]).order,n(r,o,u,a,i),o=u,a=i)}n(r,o,r.length,i,e.length)}),r}var i={};return m.reduce(e,r),i}function a(t,e){return t.node(e).dummy?m.find(t.predecessors(e),function(e){return t.node(e).dummy}):void 0}function o(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 m.has(t[e],n)}function u(t,e,n,r){var i={},a={},o={};return m.each(e,function(t){m.each(t,function(t,e){i[t]=t,a[t]=t,o[t]=e})}),m.each(e,function(t){var e=-1;m.each(t,function(t){var u=r(t);if(u.length){u=m.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 f=u[l];a[t]===t&&e<o[f]&&!s(n,t,f)&&(a[f]=t,a[t]=i[t]=i[f],e=o[f])}}})}),{root:i,align:a}}function c(t,e,n,r,i){function a(t){m.has(c,t)||(c[t]=!0,s[t]=m.reduce(u.inEdges(t),function(t,e){return a(e.v),Math.max(t,s[e.v]+u.edge(e))},0))}function o(e){if(2!==c[e]){c[e]++;var n=t.node(e),r=m.reduce(u.outEdges(e),function(t,e){return o(e.w),Math.min(t,s[e.w]-u.edge(e))},Number.POSITIVE_INFINITY);r!==Number.POSITIVE_INFINITY&&n.borderType!==h&&(s[e]=Math.max(s[e],r))}}var s={},u=l(t,e,n,i),c={};m.each(u.nodes(),a);var h=i?"borderLeft":"borderRight";return m.each(u.nodes(),o),m.each(r,function(t){s[t]=s[n[t]]}),s}function l(t,e,n,r){var i=new v,a=t.graph(),o=g(a.nodesep,a.edgesep,r);return m.each(e,function(e){var r;m.each(e,function(e){var a=n[e];if(i.setNode(a),r){var s=n[r],u=i.edge(s,a);i.setEdge(s,a,Math.max(o(t,e,r),u||0))}r=e})}),i}function h(t,e){return m.min(e,function(e){var n=m.min(e,function(e,n){return e-y(t,n)/2}),r=m.max(e,function(e,n){return e+y(t,n)/2});return r-n})}function f(t,e){var n=m.min(e),r=m.max(e);m.each(["u","d"],function(i){m.each(["l","r"],function(a){var o,s=i+a,u=t[s];u!==e&&(o="l"===a?n-m.min(u):r-m.max(u),o&&(t[s]=m.mapValues(u,function(t){return t+o})))})})}function p(t,e){return m.mapValues(t.ul,function(n,r){if(e)return t[e.toLowerCase()][r];var i=m.sortBy(m.pluck(t,r));return(i[1]+i[2])/2})}function d(t){var e,n=x.buildLayerMatrix(t),a=m.merge(r(t,n),i(t,n)),o={};m.each(["u","d"],function(r){e="u"===r?n:m.values(n).reverse(),m.each(["l","r"],function(n){"r"===n&&(e=m.map(e,function(t){return m.values(t).reverse()}));var i=m.bind("u"===r?t.predecessors:t.successors,t),s=u(t,e,a,i),l=c(t,e,s.root,s.align,"r"===n);"r"===n&&(l=m.mapValues(l,function(t){return-t})),o[r+n]=l})});var s=h(t,o);return f(o,s),p(o,t.graph().align)}function g(t,e,n){return function(r,i,a){var o,s=r.node(i),u=r.node(a),c=0;if(c+=s.width/2,m.has(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":o=-s.width/2;break;case"r":o=s.width/2}if(o&&(c+=n?o:-o),o=0,c+=(s.dummy?e:t)/2,c+=(u.dummy?e:t)/2,c+=u.width/2,m.has(u,"labelpos"))switch(u.labelpos.toLowerCase()){case"l":o=u.width/2;break;case"r":o=-u.width/2}return o&&(c+=n?o:-o),o=0,c}}function y(t,e){return t.node(e).width}var m=n(1),v=n(9).Graph,x=n(3);t.exports={positionX:d,findType1Conflicts:r,findType2Conflicts:i,addConflict:o,hasConflict:s,verticalAlignment:u,horizontalCompaction:c,alignCoordinates:f,findSmallestWidthAlignment:h,balance:p}},function(t,e,n){"use strict";function r(t){t=o.asNonCompoundGraph(t),i(t),a.each(s(t),function(e,n){t.node(n).x=e})}function i(t){var e=o.buildLayerMatrix(t),n=t.graph().ranksep,r=0;a.each(e,function(e){var i=a.max(a.map(e,function(e){return t.node(e).height}));a.each(e,function(e){t.node(e).y=r+i/2}),r+=i+n})}var a=n(1),o=n(3),s=n(144).positionX;t.exports=r},function(t,e,n){"use strict";function r(t){switch(t.graph().ranker){case"network-simplex":a(t);break;case"tight-tree":i(t);break;case"longest-path":l(t);break;default:a(t)}}function i(t){s(t),u(t)}function a(t){c(t)}var o=n(42),s=o.longestPath,u=n(97),c=n(147);t.exports=r;var l=s},function(t,e,n){"use strict";function r(t){t=_(t),v(t);var e=y(t);s(e),i(e,t);for(var n,r;n=c(e);)r=l(e,t,n),h(e,t,n,r)}function i(t,e){var n=b(t,t.nodes());n=n.slice(0,n.length-1),g.each(n,function(n){a(t,e,n)})}function a(t,e,n){var r=t.node(n),i=r.parent;t.edge(n,i).cutvalue=o(t,e,n)}function o(t,e,n){var r=t.node(n),i=r.parent,a=!0,o=e.edge(n,i),s=0;return o||(a=!1,o=e.edge(i,n)),s=o.weight,g.each(e.nodeEdges(n),function(r){var o=r.v===n,u=o?r.w:r.v;if(u!==i){var c=o===a,l=e.edge(r).weight;if(s+=c?l:-l,p(t,n,u)){var h=t.edge(n,u).cutvalue;s+=c?-h:h}}}),s}function s(t,e){arguments.length<2&&(e=t.nodes()[0]),u(t,{},1,e)}function u(t,e,n,r,i){var a=n,o=t.node(r);return e[r]=!0,g.each(t.neighbors(r),function(i){g.has(e,i)||(n=u(t,e,n,i,r))}),o.low=a,o.lim=n++,i?o.parent=i:delete o.parent,n}function c(t){return g.find(t.edges(),function(e){return t.edge(e).cutvalue<0})}function l(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),o=t.node(i),s=a,u=!1;a.lim>o.lim&&(s=o,u=!0);var c=g.filter(e.edges(),function(e){return u===d(t,t.node(e.v),s)&&u!==d(t,t.node(e.w),s)});return g.min(c,function(t){return m(e,t)})}function h(t,e,n,r){var a=n.v,o=n.w;t.removeEdge(a,o),t.setEdge(r.v,r.w,{}),s(t),i(t,e),f(t,e)}function f(t,e){var n=g.find(t.nodes(),function(t){return!e.node(t).parent}),r=x(t,n);r=r.slice(1),g.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 p(t,e,n){return t.hasEdge(e,n)}function d(t,e,n){return n.low<=e.lim&&e.lim<=n.lim}var g=n(1),y=n(97),m=n(42).slack,v=n(42).longestPath,x=n(9).alg.preorder,b=n(9).alg.postorder,_=n(3).simplify;t.exports=r,r.initLowLimValues=s,r.initCutValues=i,r.calcCutValue=o,r.leaveEdge=c,r.enterEdge=l,r.exchangeEdges=h},function(t,e){t.exports="0.7.4"},function(t,e,n){function r(t){return n(i(t))}function i(t){return a[t]||function(){throw new Error("Cannot find module '"+t+"'.")}()}var a={"./alg/components":69,"./alg/components.js":69,"./alg/dfs":43,"./alg/dfs.js":43,"./alg/dijkstra":44,"./alg/dijkstra-all":70,"./alg/dijkstra-all.js":70,"./alg/dijkstra.js":44,"./alg/find-cycles":71,"./alg/find-cycles.js":71,"./alg/floyd-warshall":72,"./alg/floyd-warshall.js":72,"./alg/index":73,"./alg/index.js":73,"./alg/is-acyclic":74,"./alg/is-acyclic.js":74,"./alg/postorder":75,"./alg/postorder.js":75,"./alg/preorder":76,"./alg/preorder.js":76,"./alg/prim":77,"./alg/prim.js":77,"./alg/tarjan":45,"./alg/tarjan.js":45,"./alg/topsort":46,"./alg/topsort.js":46,"./data/priority-queue":47,"./data/priority-queue.js":47,"./graph":30,"./graph.js":30,"./index":78,"./index.js":78,"./json":79,"./json.js":79,"./lodash":4,"./lodash.js":4,"./version":80,"./version.js":80};r.keys=function(){return Object.keys(a)},r.resolve=i,t.exports=r,r.id=149},function(t,e,n){var r;(function(t,i){(function(){function a(t,e){return"undefined"==typeof t?e:t}function o(t,e){for(var n=-1,r=e.length,i=Array(r);++n<r;)i[n]=t[e[n]];return i}function s(t,e){if(t!==e){if(t>e||"undefined"==typeof t)return 1;if(e>t||"undefined"==typeof e)return-1}return 0}function u(t,e,n){for(var r=(n||0)-1,i=t?t.length:0;++r<i;)if(t[r]===e)return r;return-1}function c(t,e){return t.has(e)?0:-1}function l(t){return t.charCodeAt(0)}function h(t,e){for(var n=-1,r=t.length;++n<r&&!(e.indexOf(t.charAt(n))<0););return n}function f(t,e){for(var n=t.length;n--&&!(e.indexOf(t.charAt(n))<0););return n}function p(t,e){return s(t.criteria,e.criteria)||t.index-e.index}function d(t,e){for(var n=-1,r=t.criteria,i=e.criteria,a=r.length;++n<a;){var o=s(r[n],i[n]);if(o)return o}return t.index-e.index}function g(t){return function(e){for(var n=-1,r=null!=e&&String(e).replace(W,y).match(Q),i=r?r.length:0,a="";++n<i;)a=t(a,r[n],n,r);return a}}function y(t){return xt[t]}function m(t){return mt[t]}function v(t){return"\\"+_t[t]}function x(t){return"function"!=typeof t.toString&&"string"==typeof(t+"")}function b(t){for(var e=-1,n=t.length;++e<n;){var r=t.charCodeAt(e);if(!(160>=r&&r>=9&&13>=r||32==r||160==r||5760==r||6158==r||r>=8192&&(8202>=r||8232==r||8233==r||8239==r||8287==r||12288==r||65279==r)))break}return e}function _(t){for(var e=t.length;e--;){var n=t.charCodeAt(e);if(!(160>=n&&n>=9&&13>=n||32==n||160==n||5760==n||6158==n||n>=8192&&(8202>=n||8232==n||8233==n||8239==n||8287==n||12288==n||65279==n)))break}return e}function w(t){return vt[t]}function A(t){function e(t){return t&&"object"==typeof t&&!Ci(t)&&Hr.call(t,"__wrapped__")?t:new n(t)}function n(t,e){this.__chain__=!!e,this.__wrapped__=t}function r(t,e){for(var n=-1,r=t?t.length:0;++n<r&&e(t[n],n,t)!==!1;);return t}function i(t,e){for(var n=t?t.length:0;n--&&e(t[n],n,t)!==!1;);return t}function y(t,e){for(var n=-1,r=t?t.length>>>0:0,i=_r(r);++n<r;)i[n]=e(t[n],n,t);return i}function W(t){function e(){if(i){for(var t=-1,o=arguments.length,s=_r(o);++t<o;)s[t]=arguments[t];s=Rt(i,a,s)}if(this instanceof e){var u=mt(n.prototype),c=n.apply(u,s||arguments);return Mn(c)?c:u}return n.apply(r,s||arguments)}var n=t[0],r=t[3],i=t[4],a=t[6];return gi(e,t),e}function Q(t,e,n,i,a){if(n){var o=n(t);if("undefined"!=typeof o)return o}var s=Mn(t);if(!s)return t;var u=Pr.call(t);if(!dt[u]||!pi.nodeClass&&x(t))return t;var c=hi[u];switch(u){case ot:case st:return new c(+t);case lt:case pt:return new c(t);case ft:return o=c(t.source,z.exec(t)),o.lastIndex=t.lastIndex,o}var l=Ci(t);if(e){i||(i=[]),a||(a=[]);for(var h=i.length;h--;)if(i[h]==t)return a[h];o=l?c(t.length):{}}else o=l?ue(t):un({},t);return l&&(Hr.call(t,"index")&&(o.index=t.index),Hr.call(t,"input")&&(o.input=t.input)),e?(i.push(t),a.push(o),(l?r:St)(t,function(t,r){o[r]=Q(t,e,n,i,a)}),o):o}function mt(t){return Mn(t)?ei(t):{}}function vt(t,e,n){if("function"!=typeof t)return lr;if("undefined"==typeof e||!("prototype"in t))return t;var r=t[F];if("undefined"==typeof r&&(pi.funcNames&&(r=!t.name),r=r||!pi.funcDecomp,!r)){var i=$r.call(t);pi.funcNames||(r=!H.test(i)),r||(r=K.test(i),gi(t,r))}if(r===!1||r!==!0&&r[1]&E)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};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)}}return He(t,e)}function xt(t){function e(){for(var t=-1,g=arguments.length,y=_r(g);++t<g;)y[t]=arguments[t];if(o&&(y=Rt(o,u,y)),s&&(y=qt(s,c,y)),f){var m=Ut(y);if(g-=m.length,i>g){r|=T,r&=~S,p||(r&=~(E|D));var v=oi(i-g,0);return xt([n,r,v,a,y,null,m])}}var x=l?a:this;if(h&&(n=x[d]),this instanceof e){x=mt(n.prototype);var b=n.apply(x,y);return Mn(b)?b:x}return n.apply(x,y)}var n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],u=t[6],c=t[7],l=r&E,h=r&D,f=r&B,p=r&C,d=n;return gi(e,t),e}function bt(t,e){var n=t?t.length:0;if(!n)return[];var r=-1,i=Vt(),a=i===u,o=a&&di&&e&&e.length>=200,s=a&&!o,l=[],h=e?e.length:0;o&&(i=c,e=di(e));t:for(;++r<n;){var f=t[r];if(s){for(var p=h;p--;)if(e[p]===f)continue t;l.push(f)}else i(e,f)<0&&l.push(f)}return l}function _t(t,e){var n=-1,r=t,i=t?t.length:0;if("number"==typeof i&&i>-1&&qr>=i)for(pi.unindexedChars&&In(r)&&(r=r.split(""));++n<i&&e(r[n],n,t)!==!1;);else St(t,e);return t}function At(t,e){var n=t,r=t?t.length:0;if("number"==typeof r&&r>-1&&qr>=r)for(pi.unindexedChars&&In(n)&&(n=n.split(""));r--&&e(n[r],r,t)!==!1;);else Mt(t,e);return t}function kt(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 Et(t,e,n,r){for(var i=(r||0)-1,a=t?t.length:0,o=[];++i<a;){var s=t[i];if(s&&"object"==typeof s&&"number"==typeof s.length&&(Ci(s)||wn(s))){e||(s=Et(s,e,n));var u=-1,c=s.length,l=o.length;for(o.length+=c;++u<c;)o[l++]=s[u]}else n||o.push(s)}return o}function Bt(t,e,n){for(var r=-1,i=n(t),a=i.length;++r<a;){var o=i[r];if(e(t[o],o,t)===!1)break}return t}function Ct(t,e,n){for(var r=n(t),i=r.length;i--;){var a=r[i];if(e(t[a],a,t)===!1)break}return t}function Tt(t,e){return Bt(t,e,qn)}function St(t,e){return Bt(t,e,Si)}function Mt(t,e){return Ct(t,e,Si)}function Ft(t,e,n,r,i,a){if(n){var o=n(t,e);if("undefined"!=typeof o)return!!o}if(t===e)return 0!==t||1/t==1/e;var s=typeof t,u=typeof e;if(t===t&&(null==t||null==e||"function"!=s&&"object"!=s&&"function"!=u&&"object"!=u))return!1;var c=Pr.call(t),l=Pr.call(e),h=c==it,f=l==it;if(h&&(c=ht),f&&(l=ht),c!=l)return!1;switch(c){case ot:case st:return+t==+e;case lt:return t!=+t?e!=+e:0==t?1/t==1/e:t==+e;case ft:case pt:return t==Sr(e)}var p=c==at;if(!p){if(c!=ht||!pi.nodeClass&&(x(t)||x(e)))return!1;var d=Hr.call(t,"__wrapped__"),g=Hr.call(e,"__wrapped__");if(d||g)return Ft(d?t.__wrapped__:t,g?e.__wrapped__:e,n,r,i,a);pi.argsObject||(h=wn(t),f=wn(e));var y=!h&&Hr.call(t,"constructor"),m=!f&&Hr.call(e,"constructor");if(y!=m)return!1;if(!y){var v=h?Cr:t.constructor,b=f?Cr:e.constructor;if(v!=b&&!(Sn(v)&&v instanceof v&&Sn(b)&&b instanceof b)&&"constructor"in t&&"constructor"in e)return!1}}i||(i=[]),a||(a=[]);for(var _=i.length;_--;)if(i[_]==t)return a[_]==e;var w=0;if(o=!0,i.push(t),a.push(e),p){if(_=t.length,w=e.length,o=w==_,o||r)for(;w--;){var A=_,k=e[w];if(r){for(;A--&&!(o=Ft(t[A],k,n,r,i,a)););if(!o)break}else if(!(o=Ft(t[w],k,n,r,i,a)))break}}else Tt(e,function(e,s,u){return Hr.call(u,s)?(w++,o=Hr.call(t,s)&&Ft(t[s],e,n,r,i,a)):void 0}),o&&!r&&Tt(t,function(t,e,n){return Hr.call(n,e)?o=--w>-1:void 0});return i.pop(),a.pop(),o}function Lt(t,e,n,i,a){(Ci(e)?r:St)(e,function(e,r){var o,s,u=e,c=t[r];if(e&&((s=Ci(e))||Ti(e))){for(var l=i.length;l--;)if(o=i[l]==e){c=a[l];break}if(!o){var h;n&&(u=n(c,e),(h="undefined"!=typeof u)&&(c=u)),h||(c=s?Ci(c)?c:[]:Ti(c)?c:{}),i.push(e),a.push(c),h||Lt(c,e,n,i,a)}}else n&&(u=n(c,e),"undefined"==typeof u&&(u=e)),"undefined"!=typeof u&&(c=u);t[r]=c})}function Ot(t,e){return t+Vr(li()*(e-t+1))}function Nt(t,e,n){var r=t?t.length:0;if(!r)return[];var i=-1,a=Vt(),o=!e&&a===u,s=o&&di&&r>=200,l=o&&!s,h=[];if(s){var f=di();a=c}else f=n&&!e?[]:h;t:for(;++i<r;){var p=t[i],d=n?n(p,i,t):p;if(l){for(var g=f.length;g--;)if(f[g]===d)continue t;n&&f.push(d),h.push(p)}else e?i&&f===d||(f=d,h.push(p)):a(f,d)<0&&((n||s)&&f.push(d),h.push(p))}return h}function It(t,e){for(var n=-1,r=e(t),i=r.length,a=_r(i);++n<i;)a[n]=t[r[n]];return a}function Rt(t,e,n){for(var r=e.length,i=-1,a=oi(n.length-r,0),o=-1,s=t.length,u=_r(a+s);++o<s;)u[o]=t[o];for(;++i<r;)u[e[i]]=n[i];for(;a--;)u[o++]=n[i++];return u}function qt(t,e,n){for(var r=-1,i=e.length,a=-1,o=oi(n.length-i,0),s=-1,u=t.length,c=_r(o+u);++a<o;)c[a]=n[a];for(var l=a;++s<u;)c[l+s]=t[s];for(;++r<i;)c[l+e[r]]=n[a++];return c}function Pt(t,n){return function(r,i,a){var o=n?n():{};if(i=e.createCallback(i,a,3),Ci(r))for(var s=-1,u=r.length;++s<u;){var c=r[s];t(o,c,i(c,s,r),r)}else _t(r,function(e,n,r){t(o,e,i(e,n,r),r)});return o}}function jt(t,e,n){var r=t.length;if(e=+e,r>=e||!ri(e))return"";var i=e-r;return n=null==n?" ":Sr(n),tr(n,Yr(i/n.length)).slice(0,i)}function Yt(t,e,n,r,i,a){var o=e&E,s=e&D,u=e&T,c=e&S;if(!s&&!Sn(t))throw new Mr(L);u&&!i.length&&(e&=~T,u=i=!1),c&&!a.length&&(e&=~S,c=a=!1);var l=!s&&t[F];if(l&&l!==!0){l=ue(l),l[4]&&(l[4]=ue(l[4])),l[5]&&(l[5]=ue(l[5])),"number"==typeof n&&(l[2]=n);var h=l[1]&E;return o&&!h&&(l[3]=r),!o&&h&&(e|=C),u&&(l[4]?Gr.apply(l[4],i):l[4]=i),c&&(l[5]?Jr.apply(l[5],a):l[5]=a),l[1]|=e,Yt.apply(null,l)}if(u)var f=Ut(i);if(c)var p=Ut(a);return null==n&&(n=s?0:t.length),n=oi(n,0),l=[t,e,n,r,i,a,f,p],e==E||e==(E|T)?W(l):xt(l)}function Ut(t){for(var n=-1,r=t.length,i=[];++n<r;)t[n]===e&&i.push(n);return i}function Vt(){var t=e.indexOf||Qt;return t===Qt?u:t}function $t(t){return"function"==typeof t&&jr.test($r.call(t))}function zt(t){
  var e,n;return!t||Pr.call(t)!=ht||!Hr.call(t,"constructor")&&(e=t.constructor,Sn(e)&&!(e instanceof e))||!pi.argsClass&&wn(t)||!pi.nodeClass&&x(t)?!1:pi.ownLast?(Tt(t,function(t,e,r){return n=Hr.call(r,e),!1}),n!==!1):(Tt(t,function(t,e){n=e}),"undefined"==typeof n||Hr.call(t,n))}function Ht(t){for(var e,n=-1,r=qn(t),i=r.length,a=i&&t.length,o=a-1,s=[],u="number"==typeof a&&a>0&&(Ci(t)||pi.nonEnumArgs&&wn(t)||pi.nonEnumStrings&&In(t));++n<i;){var c=r[n];(u&&(e=+c,e>-1&&o>=e&&e%1==0)||Hr.call(t,c))&&s.push(c)}return s}function Gt(t){for(var e=-1,n=t?t.length:0,r=0,i=[];++e<n;){var a=t[e];a&&(i[r++]=a)}return i}function Wt(){for(var t=-1,e=arguments.length;++t<e;){var n=arguments[t];if(Ci(n)||wn(n))break}return bt(arguments[t],Et(arguments,!0,!0,++t))}function Zt(t,n,r){var i=-1,a=t?t.length:0;for(n=e.createCallback(n,r,3);++i<a;)if(n(t[i],i,t))return i;return-1}function Xt(t,n,r){var i=t?t.length:0;for(n=e.createCallback(n,r,3);i--;)if(n(t[i],i,t))return i;return-1}function Kt(t,n,r){if("number"!=typeof n&&null!=n){var i=-1,a=t?t.length:0,o=0;for(n=e.createCallback(n,r,3);++i<a&&n(t[i],i,t);)o++}else if(o=n,null==o||r)return t?t[0]:k;return ue(t,0,0>o?0:o)}function Jt(t,e,n,r){var i=t?t.length:0;if(!i)return[];var a=typeof e;return"boolean"!=a&&null!=e&&(r=n,n=e,e=!1,"number"!=a&&"string"!=a||!r||r[n]!==t||(n=null)),null!=n&&(t=Me(t,n,r)),Et(t,e)}function Qt(t,e,n){var r=t?t.length:0;if("number"==typeof n)n=0>n?oi(r+n,0):n||0;else if(n){var i=ce(t,e);return r&&t[i]===e?i:-1}return u(t,e,n)}function te(t,n,r){var i=t?t.length:0;if("number"!=typeof n&&null!=n){var a=i,o=0;for(n=e.createCallback(n,r,3);a--&&n(t[a],a,t);)o++}else o=null==n||r?1:n;return o=i-(o||0),ue(t,0,0>o?0:o)}function ee(){for(var t=[],e=-1,n=arguments.length,r=[],i=Vt(),a=di&&i===u;++e<n;){var o=arguments[e];(Ci(o)||wn(o))&&(t.push(o),r.push(a&&o.length>=120&&di(e&&o)))}n=t.length;var s=t[0],l=-1,h=s?s.length:0,f=[],p=r[0];t:for(;++l<h;)if(o=s[l],(p?c(p,o):i(f,o))<0){for(e=n;--e;){var d=r[e];if((d?c(d,o):i(t[e],o))<0)continue t}p&&p.push(o),f.push(o)}return f}function ne(t,n,r){var i=t?t.length:0;if("number"!=typeof n&&null!=n){var a=i,o=0;for(n=e.createCallback(n,r,3);a--&&n(t[a],a,t);)o++}else if(o=n,null==o||r)return t?t[i-1]:k;return o=i-(o||0),ue(t,0>o?0:o)}function re(t,e,n){var r=t?t.length:0;for("number"==typeof n&&(r=(0>n?oi(r+n,0):si(n||0,r-1))+1);r--;)if(t[r]===e)return r;return-1}function ie(t){for(var e=0,n=arguments.length,r=t?t.length:0;++e<n;)for(var i=-1,a=arguments[e];++i<r;)t[i]===a&&(Kr.call(t,i--,1),r--);return t}function ae(t){var e=Et(arguments,!0,!1,1),n=e.length,r=o(t,e);for(e.sort(s);n--;){var i=e[n];if(i!=a){var a=i;Kr.call(t,i,1)}}return r}function oe(t,n,r){var i=-1,a=t?t.length:0,o=[];for(n=e.createCallback(n,r,3);++i<a;){var s=t[i];n(s,i,t)&&(o.push(s),Kr.call(t,i--,1),a--)}return o}function se(t,n,r){if("number"!=typeof n&&null!=n){var i=-1,a=t?t.length:0,o=0;for(n=e.createCallback(n,r,3);++i<a&&n(t[i],i,t);)o++}else o=null==n||r?1:0>n?0:n;return ue(t,o)}function ue(t,e,n){var r=-1,i=t?t.length:0;e="undefined"==typeof e?0:+e||0,0>e?e=oi(i+e,0):e>i&&(e=i),n="undefined"==typeof n?i:+n||0,0>n?n=oi(i+n,0):n>i&&(n=i),i=e>n?0:n-e;for(var a=_r(i);++r<i;)a[r]=t[e+r];return a}function ce(t,n,r,i){var a=0,o=t?t.length:a;for(r=r?e.createCallback(r,i,1):lr,n=r(n);o>a;){var s=a+o>>>1;r(t[s])<n?a=s+1:o=s}return a}function le(){return Nt(Et(arguments,!0,!0))}function he(t,n,r,i){var a=t?t.length:0;if(!a)return[];var o=typeof n;return"boolean"!=o&&null!=n&&(i=r,r=n,n=!1,"number"!=o&&"string"!=o||!i||i[r]!==t||(r=null)),null!=r&&(r=e.createCallback(r,i,3)),Nt(t,n,r)}function fe(){return bt(arguments[0],ue(arguments,1))}function pe(){for(var t=-1,e=arguments.length;++t<e;){var n=arguments[t];if(Ci(n)||wn(n))var r=r?bt(r,n).concat(bt(n,r)):n}return r?Nt(r):[]}function de(){for(var t=arguments.length>1?arguments:arguments[0],e=-1,n=t?Fe(Oe(t,"length")):0,r=_r(0>n?0:n);++e<n;)r[e]=Oe(t,e);return r}function ge(t,e){var n=-1,r=t?t.length:0,i={};for(e||!r||Ci(t[0])||(e=[]);++n<r;){var a=t[n];e?i[a]=e[n]:a&&(i[a[0]]=a[1])}return i}function ye(t){return new n(t,!0)}function me(t,e,n){return e.call(n,t),t}function ve(){return this.__chain__=!0,this}function xe(){return Sr(this.__wrapped__)}function be(){return this.__wrapped__}function _e(t){return pi.unindexedChars&&In(t)&&(t=t.split("")),o(t,Et(arguments,!0,!1,1))}function we(t,e,n){var r=t?t.length:0;if("number"==typeof r&&r>-1&&qr>=r||(t=zn(t),r=t.length),n="number"==typeof n?0>n?oi(r+n,0):n||0:0,"string"==typeof t||!Ci(t)&&In(t))return n>=r?!1:ti?ti.call(t,e,n):t.indexOf(e,n)>-1;var i=Vt();return i(t,e,n)>-1}function Ae(t,n,r){var i=!0;if(n=e.createCallback(n,r,3),Ci(t)){for(var a=-1,o=t.length;++a<o;)if(!n(t[a],a,t))return!1}else _t(t,function(t,e,r){return i=!!n(t,e,r)});return i}function ke(t,n,r){var i=[];if(n=e.createCallback(n,r,3),Ci(t))for(var a=-1,o=t.length;++a<o;){var s=t[a];n(s,a,t)&&i.push(s)}else _t(t,function(t,e,r){n(t,e,r)&&i.push(t)});return i}function Ee(t,n,r){if(Ci(t)){var i=Zt(t,n,r);return i>-1?t[i]:k}return n=e.createCallback(n,r,3),kt(t,n,_t)}function De(t,n,r){return n=e.createCallback(n,r,3),kt(t,n,At)}function Be(t,e){return Ee(t,hr(e))}function Ce(t,e,n){return e&&"undefined"==typeof n&&Ci(t)?r(t,e):_t(t,vt(e,n,3))}function Te(t,e,n){return e&&"undefined"==typeof n&&Ci(t)?i(t,e):At(t,vt(e,n,3))}function Se(t,e){var n=ue(arguments,2),r=-1,i="function"==typeof e,a=t&&t.length,o=_r(0>a?0:a>>>0);return _t(t,function(t){var a=i?e:null!=t&&t[e];o[++r]=a?a.apply(t,n):k}),o}function Me(t,n,r){if(n=e.createCallback(n,r,3),Ci(t))return y(t,n,r);var i=-1,a=[];return _t(t,function(t,e,r){a[++i]=n(t,e,r)}),a}function Fe(t,n,r){var i=-(1/0),a=i,o=typeof n;if("number"!=o&&"string"!=o||!r||r[n]!==t||(n=null),null==n&&Ci(t))for(var s=-1,u=t.length;++s<u;){var c=t[s];c>a&&(a=c)}else n=null==n&&In(t)?l:e.createCallback(n,r,3),_t(t,function(t,e,r){var o=n(t,e,r);(o>i||o===-(1/0)&&o===a)&&(i=o,a=t)});return a}function Le(t,n,r){var i=1/0,a=i,o=typeof n;if("number"!=o&&"string"!=o||!r||r[n]!==t||(n=null),null==n&&Ci(t))for(var s=-1,u=t.length;++s<u;){var c=t[s];a>c&&(a=c)}else n=null==n&&In(t)?l:e.createCallback(n,r,3),_t(t,function(t,e,r){var o=n(t,e,r);(i>o||o===1/0&&o===a)&&(i=o,a=t)});return a}function Oe(t,e){return Me(t,gr(e))}function Ne(t,n,r,i){var a=arguments.length<3;if(n=e.createCallback(n,i,4),Ci(t)){var o=-1,s=t.length;for(a&&s&&(r=t[++o]);++o<s;)r=n(r,t[o],o,t)}else _t(t,function(t,e,i){r=a?(a=!1,t):n(r,t,e,i)});return r}function Ie(t,n,r,i){var a=arguments.length<3;return n=e.createCallback(n,i,4),At(t,function(t,e,i){r=a?(a=!1,t):n(r,t,e,i)}),r}function Re(t,n,r){return n=e.createCallback(n,r,3),ke(t,en(n))}function qe(t,e,n){if(t&&"number"!=typeof t.length?t=zn(t):pi.unindexedChars&&In(t)&&(t=t.split("")),null==e||n){var r=t?t.length:0;return r>0?t[Ot(0,r-1)]:k}var i=Pe(t);return i.length=si(0>e?0:+e||0,i.length),i}function Pe(t){var e=-1,n=t&&t.length,r=_r(0>n?0:n>>>0);return _t(t,function(t){var n=Ot(0,++e);r[e]=r[n],r[n]=t}),r}function je(t){var e=t?t.length:0;return"number"==typeof e&&e>-1&&qr>=e?e:Si(t).length}function Ye(t,n,r){var i;if(n=e.createCallback(n,r,3),Ci(t)){for(var a=-1,o=t.length;++a<o;)if(n(t[a],a,t))return!0}else _t(t,function(t,e,r){return!(i=n(t,e,r))});return!!i}function Ue(t,n,r){var i=-1,a=t&&t.length,o=n&&Ci(n),s=_r(0>a?0:a>>>0);for(o||(n=e.createCallback(n,r,3)),_t(t,function(t,e,r){if(o)for(var a=n.length,u=_r(a);a--;)u[a]=t[n[a]];else u=n(t,e,r);s[++i]={criteria:u,index:i,value:t}}),a=s.length,s.sort(o?d:p);a--;)s[a]=s[a].value;return s}function Ve(t){var e=t&&t.length;return"number"==typeof e&&e>-1&&qr>=e?pi.unindexedChars&&In(t)?t.split(""):ue(t):zn(t)}function $e(t,e){return ke(t,hr(e))}function ze(t,e){if(!Sn(e))throw new Mr(L);return t=ri(t=+t)?t:0,function(){return--t<1?e.apply(this,arguments):void 0}}function He(t,e){if(arguments.length<3)return Yt(t,E,null,e);if(t){var n=t[F]?t[F][2]:t.length,r=ue(arguments,2);n-=r.length}return Yt(t,E|T,n,e,r)}function Ge(t){for(var e=arguments.length>1?Et(arguments,!0,!1,1):xn(t),n=-1,r=e.length;++n<r;){var i=e[n];t[i]=Yt(t[i],E,null,t)}return t}function We(t,e){return arguments.length<3?Yt(e,E|D,null,t):Yt(e,E|D|T,null,t,ue(arguments,2))}function Ze(){for(var t=arguments,e=t.length,n=e;n--;)if(!Sn(t[n]))throw new Mr(L);return function(){for(var n=e-1,r=t[n].apply(this,arguments);n--;)r=t[n].call(this,r);return r}}function Xe(t,e){return"number"!=typeof e&&(e=+e||(t?t.length:0)),Yt(t,B,e)}function Ke(t,e,n){var r,i,a,o,s,u,c,l=0,h=!1,f=!0;if(!Sn(t))throw new Mr(L);if(e=0>e?0:e,n===!0){var p=!0;f=!1}else Mn(n)&&(p=n.leading,h="maxWait"in n&&oi(e,+n.maxWait||0),f="trailing"in n?n.trailing:f);var d=function(){var n=e-(Oi()-o);if(0>=n||n>e){i&&Ur(i);var h=c;i=u=c=k,h&&(l=Oi(),a=t.apply(s,r),u||i||(r=s=null))}else u=Xr(d,n)},g=function(){u&&Ur(u),i=u=c=k,(f||h!==e)&&(l=Oi(),a=t.apply(s,r),u||i||(r=s=null))};return function(){if(r=arguments,o=Oi(),s=this,c=f&&(u||!p),h===!1)var n=p&&!u;else{i||p||(l=o);var y=h-(o-l),m=0>=y||y>h;m?(i&&(i=Ur(i)),l=o,a=t.apply(s,r)):i||(i=Xr(g,y))}return m&&u?u=Ur(u):u||e===h||(u=Xr(d,e)),n&&(m=!0,a=t.apply(s,r)),!m||u||i||(r=s=null),a}}function Je(t){if(!Sn(t))throw new Mr(L);var e=ue(arguments,1);return Xr(function(){t.apply(k,e)},1)}function Qe(t,e){if(!Sn(t))throw new Mr(L);var n=ue(arguments,2);return Xr(function(){t.apply(k,n)},e)}function tn(t,e){if(!Sn(t)||e&&!Sn(e))throw new Mr(L);var n=function(){var r=n.cache,i=e?e.apply(this,arguments):"_"+arguments[0];return Hr.call(r,i)?r[i]:r[i]=t.apply(this,arguments)};return n.cache={},n}function en(t){if(!Sn(t))throw new Mr(L);return function(){return!t.apply(this,arguments)}}function nn(t){var e,n;if(!Sn(t))throw new Mr(L);return function(){return e?n:(e=!0,n=t.apply(this,arguments),t=null,n)}}function rn(t){if(t){var e=t[F]?t[F][2]:t.length,n=ue(arguments,1);e-=n.length}return Yt(t,T,e,null,n)}function an(t){if(t){var e=t[F]?t[F][2]:t.length,n=ue(arguments,1);e-=n.length}return Yt(t,S,e,null,null,n)}function on(t,e,n){var r=!0,i=!0;if(!Sn(t))throw new Mr(L);return n===!1?r=!1:Mn(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),gt.leading=r,gt.maxWait=+e,gt.trailing=i,Ke(t,e,gt)}function sn(t,e){return Yt(e,T,null,null,[t])}function un(t,e,n){var r=arguments;if(!t||r.length<2)return t;var i=0,a=r.length,o=typeof n;if("number"!=o&&"string"!=o||!r[3]||r[3][n]!==e||(a=2),a>3&&"function"==typeof r[a-2])var s=vt(r[--a-1],r[a--],2);else a>2&&"function"==typeof r[a-1]&&(s=r[--a]);for(;++i<a;){e=r[i];for(var u=-1,c=Si(e),l=c.length;++u<l;){var h=c[u];t[h]=s?s(t[h],e[h]):e[h]}}return t}function cn(t,e,n,r){var i=typeof e;return"boolean"!=i&&null!=e&&(r=n,n=e,e=!1,"number"!=i&&"string"!=i||!r||r[n]!==t||(n=null)),n="function"==typeof n&&vt(n,r,1),Q(t,e,n)}function ln(t,e,n){return e="function"==typeof e&&vt(e,n,1),Q(t,!0,e)}function hn(t,e){var n=mt(t);return e?un(n,e):n}function fn(t){if(!t)return t;var e=ue(arguments);return e.push(a),un.apply(null,e)}function pn(t,n,r){return n=e.createCallback(n,r,3),kt(t,n,St,!0)}function dn(t,n,r){return n=e.createCallback(n,r,3),kt(t,n,Mt,!0)}function gn(t,e,n){return e=e&&"undefined"==typeof n?e:vt(e,n,3),Bt(t,e,qn)}function yn(t,e,n){return e=vt(e,n,3),Ct(t,e,qn)}function mn(t,e,n){return e=e&&"undefined"==typeof n?e:vt(e,n,3),St(t,e)}function vn(t,e,n){return e=vt(e,n,3),Ct(t,e,Si)}function xn(t){var e=[];return Tt(t,function(t,n){Sn(t)&&e.push(n)}),e.sort()}function bn(t,e){return t?Hr.call(t,e):!1}function _n(t,e){for(var n=-1,r=Si(t),i=r.length,a={};++n<i;){var o=r[n],s=t[o];e?Hr.call(a,s)?a[s].push(o):a[s]=[o]:a[s]=o}return a}function wn(t){return t&&"object"==typeof t&&"number"==typeof t.length&&Pr.call(t)==it||!1}function An(t){return t===!0||t===!1||t&&"object"==typeof t&&Pr.call(t)==ot||!1}function kn(t){return t&&"object"==typeof t&&Pr.call(t)==st||!1}function En(t){return t&&"object"==typeof t&&1===t.nodeType&&(pi.nodeClass?Pr.call(t).indexOf("Element")>-1:x(t))||!1}function Dn(t){var e=!0;if(!t)return e;var n=t.length;return n>-1&&qr>=n&&(Ci(t)||In(t)||wn(t)||"object"==typeof t&&Sn(t.splice))?!n:(St(t,function(){return e=!1}),e)}function Bn(t,e,n,r){if(n="function"==typeof n&&vt(n,r,2),!n){if(t===e)return 0!==t||1/t==1/e;var i=typeof t,a=typeof e;if(t===t&&(null==t||null==e||"function"!=i&&"object"!=i&&"function"!=a&&"object"!=a))return!1}return Ft(t,e,n)}function Cn(t){return t&&"object"==typeof t&&Pr.call(t)==ut||!1}function Tn(t){return ri(t)&&!ii(parseFloat(t))}function Sn(t){return"function"==typeof t}function Mn(t){var e=typeof t;return"function"==e||t&&"object"==e||!1}function Fn(t){return On(t)&&t!=+t}function Ln(t){return null===t}function On(t){var e=typeof t;return"number"==e||t&&"object"==e&&Pr.call(t)==lt||!1}function Nn(t){return Mn(t)&&Pr.call(t)==ft||!1}function In(t){return"string"==typeof t||t&&"object"==typeof t&&Pr.call(t)==pt||!1}function Rn(t){return"undefined"==typeof t}function qn(t){if(!Mn(t))return[];var e=t.length;e=("number"==typeof e&&e>0&&(Ci(t)||pi.nonEnumStrings&&In(t)||pi.nonEnumArgs&&wn(t))&&e)>>>0;for(var n,r=t.constructor,i=-1,a=r&&t===r.prototype,o=e-1,s=_r(e),u=e>0,c=pi.enumErrorProps&&(t===Lr||t instanceof kr),l=pi.enumPrototypes&&"function"==typeof t;++i<e;)s[i]=Sr(i);for(var h in t)a&&"constructor"==h||l&&"prototype"==h||c&&("message"==h||"name"==h)||u&&(n=+h,n>-1&&o>=n&&n%1==0)||s.push(h);if(pi.nonEnumShadows&&t!==Or){if(i=-1,e=nt.length,a)var f=t===Nr?pt:t===Lr?ut:Pr.call(t),p=fi[f];for(;++i<e;)h=nt[i],p&&p[h]||!Hr.call(t,h)||s.push(h)}return s}function Pn(t,n,r){var i={};return n=e.createCallback(n,r,3),St(t,function(t,e,r){i[e]=n(t,e,r)}),i}function jn(t,e,n){var r=arguments,i=r.length,a=typeof n;if(!t||2>i)return t;if("number"!=a&&"string"!=a||!r[3]||r[3][n]!==e||(i=2),i>3&&"function"==typeof r[i-2])var o=vt(r[--i-1],r[i--],2);else i>2&&"function"==typeof r[i-1]&&(o=r[--i]);for(var s=ue(r,1,i),u=-1,c=[],l=[];++u<i;)Lt(t,s[u],o,c,l);return t}function Yn(t,n,r){if("function"==typeof n)return n=e.createCallback(n,r,3),Vn(t,en(n));for(var i=Et(arguments,!0,!1,1),a=i.length;a--;)i[a]=Sr(i[a]);return Vn(t,bt(qn(t),i))}function Un(t){for(var e=-1,n=Si(t),r=n.length,i=_r(r);++e<r;){var a=n[e];i[e]=[a,t[a]]}return i}function Vn(t,n,r){var i={};if("function"!=typeof n)for(var a=-1,o=Et(arguments,!0,!1,1),s=Mn(t)?o.length:0;++a<s;){var u=o[a];u in t&&(i[u]=t[u])}else n=e.createCallback(n,r,3),Tt(t,function(t,e,r){n(t,e,r)&&(i[e]=t)});return i}function $n(t,n,i,a){var o=Ci(t);if(null==i)if(o)i=[];else{if(Mn(t))var s=t.constructor,u=s&&s.prototype;i=mt(u)}return n&&(n=e.createCallback(n,a,4),(o?r:St)(t,function(t,e,r){return n(i,t,e,r)})),i}function zn(t){return It(t,Si)}function Hn(t){return It(t,qn)}function Gn(t){return null==t?"":(t=Sr(t),t.charAt(0).toUpperCase()+t.slice(1))}function Wn(t,e,n){t=null==t?"":Sr(t),e=Sr(e);var r=t.length;return n=("undefined"==typeof n?r:si(0>n?0:+n||0,r))-e.length,n>=0&&t.indexOf(e,n)==n}function Zn(t){return null==t?"":Sr(t).replace(j,m)}function Xn(t){return null==t?"":Sr(t).replace(X,"\\$&")}function Kn(t,e,n){t=null==t?"":Sr(t),e=+e;var r=t.length;if(r>=e||!ri(e))return t;var i=(e-r)/2,a=Vr(i),o=Yr(i);return n=jt("",o,n),n.slice(0,a)+t+n}function Jn(t,e,n){return t=null==t?"":Sr(t),jt(t,e,n)+t}function Qn(t,e,n){return t=null==t?"":Sr(t),t+jt(t,e,n)}function tr(t,e){var n="";if(e=+e,1>e||null==t||!ri(e))return n;t=Sr(t);do e%2&&(n+=t),e=Vr(e/2),t+=t;while(e);return n}function er(t,e,n){return t=null==t?"":Sr(t),n="undefined"==typeof n?0:si(0>n?0:+n||0,t.length),t.lastIndexOf(e,n)==n}function nr(t,n,r){var i=e.templateSettings;r=fn({},r,i),t=Sr(null==t?"":t);var a,o,s=fn({},r.imports,i.imports),u=Si(s),c=zn(s),l=0,h=r.interpolate||Z,f="__p += '",p=Tr((r.escape||Z).source+"|"+h.source+"|"+(h===V?$:Z).source+"|"+(r.evaluate||Z).source+"|$","g");t.replace(p,function(e,n,r,i,s,u){return r||(r=i),f+=t.slice(l,u).replace(J,v),n&&(a=!0,f+="' +\n__e("+n+") +\n'"),s&&(o=!0,f+="';\n"+s+";\n__p += '"),r&&(f+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),l=u+e.length,e}),f+="';\n";var d=r.variable;d||(f="with (obj) {\n"+f+"\n}\n"),f=(o?f.replace(I,""):f).replace(R,"$1").replace(q,"$1;"),f="function("+(d||"obj")+") {\n"+(d?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var g="\n/*\n//# sourceURL="+(r.sourceURL||"/lodash/template/source["+rt++ +"]")+"\n*/";try{var y=Er(u,"return "+f+g).apply(k,c)}catch(m){throw m.source=f,m}return n?y(n):(y.source=f,y)}function rr(t,e){return(t=null==t?"":Sr(t))?null==e?t.slice(b(t),_(t)+1):(e=Sr(e),t.slice(h(t,e),f(t,e)+1)):t}function ir(t,e){return(t=null==t?"":Sr(t))?null==e?t.slice(b(t)):(e=Sr(e),t.slice(h(t,e))):t}function ar(t,e){return(t=null==t?"":Sr(t))?null==e?t.slice(0,_(t)+1):(e=Sr(e),t.slice(0,f(t,e)+1)):t}function or(t,e){var n=30,r="...";if(e&&Mn(e)){var i="separator"in e?e.separator:i;n="length"in e?+e.length||0:n,r="omission"in e?Sr(e.omission):r}else null!=e&&(n=+e||0);if(t=null==t?"":Sr(t),n>=t.length)return t;var a=n-r.length;if(1>a)return r;var o=t.slice(0,a);if(null==i)return o+r;if(Nn(i)){if(t.slice(a).search(i)){var s,u,c=t.slice(0,a);for(i.global||(i=Tr(i.source,(z.exec(i)||"")+"g")),i.lastIndex=0;s=i.exec(c);)u=s.index;o=o.slice(0,null==u?a:u)}}else if(t.indexOf(i,a)!=a){var l=o.lastIndexOf(i);l>-1&&(o=o.slice(0,l))}return o+r}function sr(t){return null==t?"":(t=Sr(t),t.indexOf(";")<0?t:t.replace(P,w))}function ur(t){return function(){return t}}function cr(t,e,n){var r=typeof t;return"function"==r||null==t?("undefined"==typeof e||!(t&&"prototype"in t))&&t||vt(t,e,n):"object"==r?hr(t):gr(t)}function lr(t){return t}function hr(t){var e=Si(t),n=e.length,r=e[0],i=n&&t[r];return 1!=n||i!==i||Mn(i)?function(r){var i=n;if(i&&!r)return!1;for(var a=!0;i--;){var o=e[i];if(!(a=Hr.call(r,o)&&Ft(r[o],t[o],null,!0)))break}return a}:function(t){if(!t||!Hr.call(t,r))return!1;var e=t[r];return i===e&&(0!==i||1/i==1/e)}}function fr(t,e,n){var r=!0,i=e&&xn(e);e&&(n||i.length)||(null==n&&(n=e),e=t,t=this,i=xn(e)),n===!1?r=!1:Mn(n)&&"chain"in n&&(r=n.chain);for(var a=-1,o=Sn(t),s=i?i.length:0;++a<s;){var u=i[a],c=t[u]=e[u];o&&(t.prototype[u]=function(e){return function(){var n=this.__chain__,i=this.__wrapped__,a=[i];Gr.apply(a,arguments);var o=e.apply(t,a);if(r||n){if(i===o&&Mn(o))return this;o=new t(o),o.__chain__=n}return o}}(c))}return t}function pr(){return t._=Rr,this}function dr(){}function gr(t){return function(e){return null==e?k:e[t]}}function yr(t,e,n){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=li();return si(t+a*(e-t+parseFloat("1e-"+(Sr(a).length-1))),e)}return Ot(t,e)}function mr(t,e,n){t=+t||0,n=null==n?1:+n||0,null==e?(e=t,t=0):e=+e||0;for(var r=-1,i=oi(Yr((e-t)/(n||1)),0),a=_r(i);++r<i;)a[r]=t,t+=n;return a}function vr(t,e,n){var r=null==t?k:t[e];return"undefined"==typeof r?n:Sn(r)?t[e]():r}function xr(t,e,n){t=0>t?0:t>>>0,e=vt(e,n,1);for(var r=-1,i=_r(t);++r<t;)i[r]=e(r);return i}function br(t){var e=++O;return Sr(null==t?"":t)+e}t=t?Dt.defaults(wt.Object(),t,Dt.pick(wt,et)):wt;var _r=t.Array,wr=t.Boolean,Ar=t.Date,kr=t.Error,Er=t.Function,Dr=t.Math,Br=t.Number,Cr=t.Object,Tr=t.RegExp,Sr=t.String,Mr=t.TypeError,Fr=_r.prototype,Lr=kr.prototype,Or=Cr.prototype,Nr=Sr.prototype,Ir=(Ir=t.window)&&Ir.document,Rr=t._,qr=Dr.pow(2,53)-1,Pr=Or.toString,jr=Tr("^"+Xn(Pr).replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Yr=Dr.ceil,Ur=t.clearTimeout,Vr=Dr.floor,$r=Er.prototype.toString,zr=$t(zr=Cr.getPrototypeOf)&&zr,Hr=Or.hasOwnProperty,Gr=Fr.push,Wr=Or.propertyIsEnumerable,Zr=$t(Zr=t.Set)&&Zr,Xr=t.setTimeout,Kr=Fr.splice,Jr=Fr.unshift,Qr=function(){try{var t={},e=$t(e=Cr.defineProperty)&&e,n=e(t,t,t)&&e}catch(r){}return n}(),ti=$t(ti=Nr.contains)&&ti,ei=$t(ei=Cr.create)&&ei,ni=$t(ni=_r.isArray)&&ni,ri=t.isFinite,ii=t.isNaN,ai=$t(ai=Cr.keys)&&ai,oi=Dr.max,si=Dr.min,ui=$t(ui=Ar.now)&&ui,ci=t.parseInt,li=Dr.random,hi={};hi[at]=_r,hi[ot]=wr,hi[st]=Ar,hi[ct]=Er,hi[ht]=Cr,hi[lt]=Br,hi[ft]=Tr,hi[pt]=Sr;var fi={};fi[at]=fi[st]=fi[lt]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},fi[ot]=fi[pt]={constructor:!0,toString:!0,valueOf:!0},fi[ut]=fi[ct]=fi[ft]={constructor:!0,toString:!0},fi[ht]={constructor:!0},function(){for(var t=nt.length;t--;){var e=nt[t];for(var n in fi)Hr.call(fi,n)&&!Hr.call(fi[n],e)&&(fi[n][e]=!1)}}(),n.prototype=e.prototype;var pi=e.support={};!function(e){var n=function(){this.x=1},r={0:1,length:1},i=[];n.prototype={valueOf:1,y:1};for(var a in new n)i.push(a);for(var o in arguments);for(var s in"x");pi.argsClass=Pr.call(arguments)==it,pi.argsObject=arguments.constructor==Cr&&!(arguments instanceof _r),pi.enumErrorProps=Wr.call(Lr,"message")||Wr.call(Lr,"name"),pi.enumPrototypes=Wr.call(n,"prototype"),pi.funcDecomp=!$t(t.WinRTError)&&K.test(A),pi.funcNames="string"==typeof Er.name,pi.nonEnumStrings="0"!=s,pi.nonEnumShadows=!/valueOf/.test(i),pi.ownLast="x"!=i[0],pi.spliceObjects=(Kr.call(r,0,1),!r[0]),pi.unindexedChars="x"[0]+Cr("x")[0]!="xx";try{pi.dom=11===Ir.createDocumentFragment().nodeType}catch(u){pi.dom=!1}try{pi.nodeClass=!(Pr.call(Ir)==ht&&!({toString:0}+""))}catch(u){pi.nodeClass=!0}try{pi.nonEnumArgs=!("1"==o&&Hr.call(arguments,o)&&Wr.call(arguments,o))}catch(u){pi.nonEnumArgs=!0}}(0,0),e.templateSettings={escape:Y,evaluate:U,interpolate:V,variable:"",imports:{_:e}},ei||(mt=function(){function e(){}return function(n){if(Mn(n)){e.prototype=n;var r=new e;e.prototype=null}return r||t.Object()}}());var di=Zr&&function(t){var e=new Zr,n=t?t.length:0;for(e.push=e.add;n--;)e.push(t[n]);return e},gi=Qr?function(t,e){yt.value=e,Qr(t,F,yt)}:dr,yi=se,mi=te,vi=te,xi=se,bi=Kt,_i=ne,wi=ne,Ai=Kt,ki=Pt(function(t,e,n){Hr.call(t,n)?t[n]++:t[n]=1}),Ei=Pt(function(t,e,n){Hr.call(t,n)?t[n].push(e):t[n]=[e]}),Di=Pt(function(t,e,n){t[n]=e}),Bi=Pt(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]});pi.argsClass||(wn=function(t){return t&&"object"==typeof t&&"number"==typeof t.length&&Hr.call(t,"callee")&&!Wr.call(t,"callee")||!1});var Ci=ni||function(t){return t&&"object"==typeof t&&"number"==typeof t.length&&Pr.call(t)==at||!1};pi.dom||(En=function(t){return t&&"object"==typeof t&&1===t.nodeType&&!Ti(t)||!1}),Sn(/x/)&&(Sn=function(t){return"function"==typeof t&&Pr.call(t)==ct});var Ti=zr?function(t){if(!t||Pr.call(t)!=ht||!pi.argsClass&&wn(t))return!1;var e=t.valueOf,n=$t(e)&&(n=zr(e))&&zr(n);return n?t==n||zr(t)==n:zt(t)}:zt,Si=ai?function(t){var e=t&&t.constructor,n=t?t.length:0;return"number"==typeof n&&n>0||e&&t===e.prototype?Ht(t):Mn(t)?ai(t):[]}:Ht,Mi=g(function(t,e,n){return!n&&N.test(e)?t+e.toLowerCase():t+(e.charAt(0)[n?"toUpperCase":"toLowerCase"]()+e.slice(1))}),Fi=g(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Li=g(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Oi=ui||function(){return(new Ar).getTime()},Ni=8==ci(tt+"08")?ci:function(t,e){return t=rr(t),ci(t,+e||(G.test(t)?16:10))};return e.after=ze,e.assign=un,e.at=_e,e.bind=He,e.bindAll=Ge,e.bindKey=We,e.chain=ye,e.compact=Gt,e.compose=Ze,e.constant=ur,e.countBy=ki,e.create=hn,e.createCallback=cr,e.curry=Xe,e.debounce=Ke,e.defaults=fn,e.defer=Je,e.delay=Qe,e.difference=Wt,e.drop=yi,e.dropRight=mi,e.dropRightWhile=vi,e.dropWhile=xi,e.filter=ke,e.flatten=Jt,e.forEach=Ce,e.forEachRight=Te,e.forIn=gn,e.forInRight=yn,e.forOwn=mn,e.forOwnRight=vn,e.functions=xn,e.groupBy=Ei,e.indexBy=Di,e.initial=te,e.intersection=ee,e.invert=_n,e.invoke=Se,e.keys=Si,e.keysIn=qn,e.map=Me,e.mapValues=Pn,e.matches=hr,e.max=Fe,e.memoize=tn,e.merge=jn,e.min=Le,e.mixin=fr,e.negate=en,e.omit=Yn,e.once=nn,e.pairs=Un,e.partial=rn,e.partialRight=an,e.partition=Bi,e.pick=Vn,e.pluck=Oe,e.property=gr,e.pull=ie,e.pullAt=ae,e.range=mr,e.reject=Re,e.remove=oe,e.rest=se,e.shuffle=Pe,e.slice=ue,e.sortBy=Ue,e.tap=me,e.throttle=on,e.times=xr,e.toArray=Ve,e.transform=$n,e.union=le,e.uniq=he,e.values=zn,e.valuesIn=Hn,e.where=$e,e.without=fe,e.wrap=sn,e.xor=pe,e.zip=de,e.zipObject=ge,e.callback=cr,e.collect=Me,e.each=Ce,e.eachRight=Te,e.extend=un,e.methods=xn,e.object=ge,e.select=ke,e.tail=se,e.unique=he,e.unzip=de,fr(e,un({},e)),e.camelCase=Mi,e.capitalize=Gn,e.clone=cn,e.cloneDeep=ln,e.contains=we,e.endsWith=Wn,e.escape=Zn,e.escapeRegExp=Xn,e.every=Ae,e.find=Ee,e.findIndex=Zt,e.findKey=pn,e.findLast=De,e.findLastIndex=Xt,e.findLastKey=dn,e.findWhere=Be,e.has=bn,e.identity=lr,e.indexOf=Qt,e.isArguments=wn,e.isArray=Ci,e.isBoolean=An,e.isDate=kn,e.isElement=En,e.isEmpty=Dn,e.isEqual=Bn,e.isError=Cn,e.isFinite=Tn,e.isFunction=Sn,e.isNaN=Fn,e.isNull=Ln,e.isNumber=On,e.isObject=Mn,e.isPlainObject=Ti,e.isRegExp=Nn,e.isString=In,e.isUndefined=Rn,e.kebabCase=Fi,e.lastIndexOf=re,e.noConflict=pr,e.noop=dr,e.now=Oi,e.pad=Kn,e.padLeft=Jn,e.padRight=Qn,e.parseInt=Ni,e.random=yr,e.reduce=Ne,e.reduceRight=Ie,e.repeat=tr,e.result=vr,e.runInContext=A,e.size=je,e.some=Ye,e.sortedIndex=ce,e.snakeCase=Li,e.startsWith=er,e.template=nr,e.trim=rr,e.trimLeft=ir,e.trimRight=ar,e.truncate=or,e.unescape=sr,e.uniqueId=br,e.all=Ae,e.any=Ye,e.detect=Ee,e.foldl=Ne,e.foldr=Ie,e.include=we,e.inject=Ne,fr(e,function(){var t={};return St(e,function(n,r){e.prototype[r]||(t[r]=n)}),t}(),!1),e.first=Kt,e.last=ne,e.sample=qe,e.take=bi,e.takeRight=_i,e.takeRightWhile=wi,e.takeWhile=Ai,e.head=Kt,St(e,function(t,r){var i="sample"!==r;e.prototype[r]||(e.prototype[r]=function(e,r){var a=this.__chain__,o=t(this.__wrapped__,e,r);return a||null!=e&&(!r||i&&"function"==typeof e)?new n(o,a):o})}),e.VERSION=M,e.prototype.chain=ve,e.prototype.toJSON=be,e.prototype.toString=xe,e.prototype.value=be,e.prototype.valueOf=be,r(["join","pop","shift"],function(t){var r=Fr[t];e.prototype[t]=function(){var t=this.__chain__,e=r.apply(this.__wrapped__,arguments);return t?new n(e,t):e}}),r(["push","reverse","sort","unshift"],function(t){var n=Fr[t];e.prototype[t]=function(){return n.apply(this.__wrapped__,arguments),this}}),r(["concat","splice"],function(t){var r=Fr[t];e.prototype[t]=function(){return new n(r.apply(this.__wrapped__,arguments),this.__chain__)}}),pi.spliceObjects||r(["pop","shift","splice"],function(t){var r=Fr[t],i="splice"==t;e.prototype[t]=function(){var t=this.__chain__,e=this.__wrapped__,a=r.apply(e,arguments);return 0===e.length&&delete e[0],t||i?new n(a,t):a}}),e}var k,E=1,D=2,B=4,C=8,T=16,S=32,M="2.4.1",F="__lodash@"+M+"__",L="Expected a function",O=0,N=/^[A-Z]+$/,I=/\b__p \+= '';/g,R=/\b(__p \+=) '' \+/g,q=/(__e\(.*?\)|\b__t\)) \+\n'';/g,P=/&(?:amp|lt|gt|quot|#39);/g,j=/[&<>"']/g,Y=/<%-([\s\S]+?)%>/g,U=/<%([\s\S]+?)%>/g,V=/<%=([\s\S]+?)%>/g,$=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,z=/\w*$/,H=/^\s*function[ \n\r\t]+\w/,G=/^0[xX]/,W=/[\xC0-\xFF]/g,Z=/($^)/,X=/[.*+?^${}()|[\]\/\\]/g,K=/\bthis\b/,J=/['\n\r\u2028\u2029\\]/g,Q=/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[a-z]+|[0-9]+/g,tt=" 	\f\xa0\ufeff\n\r\u2028\u2029\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000",et=["Array","Boolean","Date","Error","Function","Math","Number","Object","RegExp","Set","String","_","clearTimeout","document","isFinite","isNaN","parseInt","setTimeout","TypeError","window","WinRTError"],nt=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],rt=0,it="[object Arguments]",at="[object Array]",ot="[object Boolean]",st="[object Date]",ut="[object Error]",ct="[object Function]",lt="[object Number]",ht="[object Object]",ft="[object RegExp]",pt="[object String]",dt={};dt[ct]=!1,dt[it]=dt[at]=dt[ot]=dt[st]=dt[lt]=dt[ht]=dt[ft]=dt[pt]=!0;var gt={leading:!1,maxWait:0,trailing:!1},yt={configurable:!1,enumerable:!1,value:null,writable:!1},mt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},vt={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},xt={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"AE","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\xd7":" ","\xf7":" "},bt={"function":!0,object:!0},_t={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},wt=bt[typeof window]&&window||this,At=bt[typeof e]&&e&&!e.nodeType&&e,kt=bt[typeof t]&&t&&!t.nodeType&&t,Et=At&&kt&&"object"==typeof i&&i;!Et||Et.global!==Et&&Et.window!==Et&&Et.self!==Et||(wt=Et);var Dt=(kt&&kt.exports===At&&At,A());wt._=Dt,r=function(){return Dt}.call(e,n,e,t),!(r!==k&&(t.exports=r))}).call(this)}).call(e,n(5)(t),function(){return this}())},function(t,e,n){function r(t){return n(i(t))}function i(t){return a[t]||function(){throw new Error("Cannot find module '"+t+"'.")}()}var a={"./d3":14,"./d3.js":14,"./diagrams/example/example.spec":82,"./diagrams/example/example.spec.js":82,"./diagrams/example/exampleDb":22,"./diagrams/example/exampleDb.js":22,"./diagrams/example/exampleRenderer":31,"./diagrams/example/exampleRenderer.js":31,"./diagrams/example/parser/example":23,"./diagrams/example/parser/example.js":23,"./diagrams/example/parser/flow3":83,"./diagrams/example/parser/flow3.js":83,"./diagrams/flowchart/d3":32,"./diagrams/flowchart/d3.js":32,"./diagrams/flowchart/dagre-d3":26,"./diagrams/flowchart/dagre-d3.js":26,"./diagrams/flowchart/flowRenderer":18,"./diagrams/flowchart/flowRenderer.js":18,"./diagrams/flowchart/graphDb":10,"./diagrams/flowchart/graphDb.js":10,"./diagrams/flowchart/parser/dot":19,"./diagrams/flowchart/parser/dot.js":19,"./diagrams/flowchart/parser/flow":7,"./diagrams/flowchart/parser/flow.js":7,"./diagrams/flowchart/parser/flow.spec":33,"./diagrams/flowchart/parser/flow.spec.js":33,"./diagrams/gantt/d3":84,"./diagrams/gantt/d3.js":84,"./diagrams/gantt/gant.css":122,"./diagrams/gantt/gantt.spec":85,"./diagrams/gantt/gantt.spec.js":85,"./diagrams/gantt/ganttDb":20,"./diagrams/gantt/ganttDb.js":20,"./diagrams/gantt/ganttDb.spec":86,"./diagrams/gantt/ganttDb.spec.js":86,"./diagrams/gantt/ganttRenderer":34,"./diagrams/gantt/ganttRenderer.js":34,"./diagrams/gantt/parser/gantt":24,"./diagrams/gantt/parser/gantt.js":24,"./diagrams/sequenceDiagram/d3":87,"./diagrams/sequenceDiagram/d3.js":87,"./diagrams/sequenceDiagram/parser/sequenceDiagram":25,"./diagrams/sequenceDiagram/parser/sequenceDiagram.js":25,"./diagrams/sequenceDiagram/sequenceDb":12,"./diagrams/sequenceDiagram/sequenceDb.js":12,"./diagrams/sequenceDiagram/sequenceDiagram.spec":88,"./diagrams/sequenceDiagram/sequenceDiagram.spec.js":88,"./diagrams/sequenceDiagram/sequenceRenderer":35,"./diagrams/sequenceDiagram/sequenceRenderer.js":35,"./diagrams/sequenceDiagram/svgDraw":49,"./diagrams/sequenceDiagram/svgDraw.js":49,"./editor":89,"./editor.js":89,"./index":90,"./index.js":90,"./less/default/flow.less":112,"./less/default/gantt.less":113,"./less/default/mermaid.less":114,"./less/default/sequenceDiagram.less":115,"./less/default/variables.less":116,"./less/forest/flow.less":117,"./less/forest/gantt.less":118,"./less/forest/mermaid.less":119,"./less/forest/sequenceDiagram.less":120,"./less/forest/variables.less":121,"./main":50,"./main.js":50,"./main.spec":91,"./main.spec.js":91,"./mermaid":36,"./mermaid.js":36,"./mermaidAPI":27,"./mermaidAPI.js":27,"./mermaidAPI.spec":92,"./mermaidAPI.spec.js":92,"./parser/diagrams/example/parser/example":93,"./parser/diagrams/example/parser/example.js":93,"./parser/diagrams/flow2/parser/flow2":94,"./parser/diagrams/flow2/parser/flow2.js":94,"./utils":21,"./utils.js":21,"./utils.spec":95,"./utils.spec.js":95};r.keys=function(){return Object.keys(a);
  },r.resolve=i,t.exports=r,r.id=151},function(t,e,n){function r(t){return n(i(t))}function i(t){return a[t]||function(){throw new Error("Cannot find module '"+t+"'.")}()}var a={"./d3":32,"./d3.js":32,"./dagre-d3":26,"./dagre-d3.js":26,"./flowRenderer":18,"./flowRenderer.js":18,"./graphDb":10,"./graphDb.js":10,"./parser/dot":19,"./parser/dot.js":19,"./parser/flow":7,"./parser/flow.js":7,"./parser/flow.spec":33,"./parser/flow.spec.js":33};r.keys=function(){return Object.keys(a)},r.resolve=i,t.exports=r,r.id=152}]);