diff --git a/dist/mermaid.full.js b/dist/mermaid.full.js index ca0728b49..fdb98ec04 100644 --- a/dist/mermaid.full.js +++ b/dist/mermaid.full.js @@ -13120,6 +13120,8 @@ exports.addVertices = function (vert, g) { */ var classStr = ''; + //console.log(vertice.classes); + if(vertice.classes.length >0){ classStr = vertice.classes.join(" "); } @@ -13277,7 +13279,10 @@ exports.draw = function (text, id,isDot) { } // Create the input mermaid.graph - var g = new dagreD3.graphlib.Graph({multigraph:true}) + var g = new dagreD3.graphlib.Graph({ + multigraph:true, + compound: true + }) .setGraph({ rankdir: dir, marginx: 20, @@ -13288,9 +13293,33 @@ exports.draw = function (text, id,isDot) { return {}; }); + var subGraphs = graph.getSubGraphs(); + var i = 0; + subGraphs.forEach(function(subG){ + i = i + 1; + var id = 'subG'+i; + graph.addVertex(id,undefined,undefined,undefined); + }); + // Fetch the verices/nodes and edges/links from the parsed graph definition var vert = graph.getVertices(); + + //console.log(vert); var edges = graph.getEdges(); + //g.setParent("A", "p"); + //g.setParent("B", "p"); + + //console.log(subGraphs); + i = 0; + subGraphs.forEach(function(subG){ + i = i + 1; + var id = 'subG'+i; + //console.log('Setting id '+id); + subG.forEach(function(node){ + //console.log('Setting node',node,' to subgraph '+id); + g.setParent(node,id); + }); + }); exports.addVertices(vert, g); exports.addEdges(edges, g); @@ -13381,6 +13410,7 @@ exports.draw = function (text, id,isDot) { var vertices = {}; var edges = []; var classes = []; +var subGraphs = []; var direction; // Functions to be run after graph rendering var funs = []; @@ -13573,6 +13603,7 @@ exports.clear = function () { classes = {}; edges = []; funs = []; + subGraphs = []; }; /** * @@ -13582,6 +13613,32 @@ exports.defaultStyle = function () { return "fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"; }; +/** + * Clears the internal graph db so that a new graph can be parsed. + */ +exports.addSubGraph = function (list) { + function uniq(a) { + var prims = {"boolean":{}, "number":{}, "string":{}}, objs = []; + + return a.filter(function(item) { + var type = typeof item; + if(type in prims) + return prims[type].hasOwnProperty(item) ? false : (prims[type][item] = true); + else + return objs.indexOf(item) >= 0 ? false : objs.push(item); + }); + } + + var subG = []; + + subG = uniq(subG.concat.apply(subG,list)); + + subGraphs.push(subG); +}; +exports.getSubGraphs = function (list) { + return subGraphs; +}; + },{}],105:[function(require,module,exports){ (function (process){ /* parser generated by jison 0.4.15 */ @@ -14396,147 +14453,160 @@ if (typeof module !== 'undefined' && require.main === module) { } */ var parser = (function(){ -var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,7],$V1=[1,8],$V2=[1,18],$V3=[1,19],$V4=[1,20],$V5=[1,21],$V6=[1,22],$V7=[1,27],$V8=[1,16],$V9=[1,29],$Va=[1,26],$Vb=[1,28],$Vc=[1,34],$Vd=[1,33],$Ve=[1,30],$Vf=[1,31],$Vg=[1,32],$Vh=[1,6],$Vi=[53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$Vj=[1,46],$Vk=[1,45],$Vl=[1,44],$Vm=[6,16,17],$Vn=[1,56],$Vo=[1,57],$Vp=[1,58],$Vq=[1,59],$Vr=[6,16,17,43,44,45,46,47],$Vs=[6,9,12,13,16,17,31,34,36,43,44,45,46,47],$Vt=[6,9,12,13,16,17,31,34,36,43,44,45,46,47,62,65,67,68,70,71,73,74,75],$Vu=[6,8,9,10,12,13,16,17,31,33,34,35,36,37,40,43,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],$Vv=[1,6,9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$Vw=[1,111],$Vx=[1,103],$Vy=[1,112],$Vz=[1,86],$VA=[1,85],$VB=[1,101],$VC=[1,90],$VD=[1,91],$VE=[1,88],$VF=[1,89],$VG=[1,92],$VH=[1,93],$VI=[1,104],$VJ=[1,97],$VK=[1,98],$VL=[1,96],$VM=[1,99],$VN=[1,87],$VO=[1,106],$VP=[1,107],$VQ=[1,108],$VR=[1,109],$VS=[1,110],$VT=[1,94],$VU=[1,95],$VV=[1,100],$VW=[62,65,67,68,70,71,73,74,75],$VX=[9,48,62,65,67,68,70,71,73,74,75],$VY=[1,136],$VZ=[1,133],$V_=[1,134],$V$=[8,9,10,12,13,16,17,31,33,34,35,36,37,40,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],$V01=[2,99],$V11=[2,101],$V21=[8,9,10,12,13,33,35,37,40,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75],$V31=[9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$V41=[1,170],$V51=[1,167],$V61=[1,171],$V71=[1,168],$V81=[1,165],$V91=[1,166],$Va1=[1,169],$Vb1=[1,172],$Vc1=[1,173],$Vd1=[8,9,10,12,13,40,53,54,55,56,57,62,65,67,68,70,71,73,74,75],$Ve1=[2,44],$Vf1=[1,185],$Vg1=[6,16,17,65],$Vh1=[6,9,16,17,40,61,62,65,67,68,69,70,71]; +var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,9,10,12,19,29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$V1=[2,2],$V2=[1,9],$V3=[1,10],$V4=[1,11],$V5=[1,12],$V6=[1,20],$V7=[1,23],$V8=[1,24],$V9=[1,25],$Va=[1,26],$Vb=[1,27],$Vc=[1,32],$Vd=[1,21],$Ve=[1,34],$Vf=[1,31],$Vg=[1,33],$Vh=[1,39],$Vi=[1,38],$Vj=[1,35],$Vk=[1,36],$Vl=[1,37],$Vm=[1,9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$Vn=[29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$Vo=[2,19],$Vp=[1,51],$Vq=[1,52],$Vr=[1,50],$Vs=[9,10,19],$Vt=[1,63],$Vu=[1,64],$Vv=[1,65],$Vw=[1,66],$Vx=[9,10,19,47,48,49,50,51],$Vy=[9,10,12,15,16,19,35,38,40,47,48,49,50,51],$Vz=[9,10,12,15,16,19,35,38,40,47,48,49,50,51,66,69,71,72,74,75,77,78,79],$VA=[9,10,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,47,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],$VB=[1,81],$VC=[1,84],$VD=[1,82],$VE=[1,91],$VF=[1,90],$VG=[1,113],$VH=[1,123],$VI=[1,115],$VJ=[1,124],$VK=[1,98],$VL=[1,97],$VM=[1,125],$VN=[1,126],$VO=[1,102],$VP=[1,103],$VQ=[1,100],$VR=[1,101],$VS=[1,104],$VT=[1,105],$VU=[1,116],$VV=[1,109],$VW=[1,110],$VX=[1,108],$VY=[1,111],$VZ=[1,99],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,121],$V21=[1,122],$V31=[1,106],$V41=[1,107],$V51=[1,112],$V61=[66,69,71,72,74,75,77,78,79],$V71=[12,52,66,69,71,72,74,75,77,78,79],$V81=[9,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],$V91=[2,104],$Va1=[2,106],$Vb1=[11,12,13,15,16,29,31,37,39,41,44,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79],$Vc1=[1,177],$Vd1=[1,174],$Ve1=[1,178],$Vf1=[1,175],$Vg1=[1,172],$Vh1=[1,173],$Vi1=[1,176],$Vj1=[1,179],$Vk1=[1,180],$Vl1=[11,12,13,15,16,29,31,44,57,58,59,60,61,66,69,71,72,74,75,77,78,79],$Vm1=[2,47],$Vn1=[1,192],$Vo1=[9,10,19,69],$Vp1=[9,10,12,19,44,65,66,69,71,72,73,74,75]; var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"expressions":3,"graphConfig":4,"statements":5,"EOF":6,"spaceListNewline":7,"GRAPH":8,"SPACE":9,"DIR":10,"FirstStmtSeperator":11,"TAGEND":12,"TAGSTART":13,"UP":14,"DOWN":15,"SEMI":16,"NEWLINE":17,"spaceList":18,"statement":19,"commentStatement":20,"verticeStatement":21,"separator":22,"styleStatement":23,"linkStyleStatement":24,"classDefStatement":25,"classStatement":26,"clickStatement":27,"vertex":28,"link":29,"alphaNum":30,"SQS":31,"text":32,"SQE":33,"PS":34,"PE":35,"DIAMOND_START":36,"DIAMOND_STOP":37,"alphaNumStatement":38,"alphaNumToken":39,"MINUS":40,"linkStatement":41,"arrowText":42,"--":43,"ARROW_POINT":44,"ARROW_CIRCLE":45,"ARROW_CROSS":46,"ARROW_OPEN":47,"PIPE":48,"textToken":49,"commentText":50,"commentToken":51,"keywords":52,"STYLE":53,"LINKSTYLE":54,"CLASSDEF":55,"CLASS":56,"CLICK":57,"textNoTags":58,"textNoTagsToken":59,"stylesOpt":60,"HEX":61,"NUM":62,"PCT":63,"style":64,"COMMA":65,"styleComponent":66,"ALPHA":67,"COLON":68,"UNIT":69,"BRKT":70,"DOT":71,"graphCodeTokens":72,"PLUS":73,"EQUALS":74,"MULT":75,"TAG_START":76,"TAG_END":77,"QUOTE":78,"$accept":0,"$end":1}, -terminals_: {2:"error",6:"EOF",8:"GRAPH",9:"SPACE",10:"DIR",12:"TAGEND",13:"TAGSTART",14:"UP",15:"DOWN",16:"SEMI",17:"NEWLINE",31:"SQS",33:"SQE",34:"PS",35:"PE",36:"DIAMOND_START",37:"DIAMOND_STOP",40:"MINUS",43:"--",44:"ARROW_POINT",45:"ARROW_CIRCLE",46:"ARROW_CROSS",47:"ARROW_OPEN",48:"PIPE",53:"STYLE",54:"LINKSTYLE",55:"CLASSDEF",56:"CLASS",57:"CLICK",61:"HEX",62:"NUM",63:"PCT",65:"COMMA",67:"ALPHA",68:"COLON",69:"UNIT",70:"BRKT",71:"DOT",73:"PLUS",74:"EQUALS",75:"MULT",76:"TAG_START",77:"TAG_END",78:"QUOTE"}, -productions_: [0,[3,3],[3,2],[3,4],[3,3],[4,4],[4,4],[4,4],[4,4],[4,4],[11,1],[11,1],[11,2],[5,3],[5,2],[5,1],[7,2],[7,2],[7,1],[7,1],[18,2],[18,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[22,1],[22,1],[22,1],[21,3],[21,1],[28,4],[28,5],[28,6],[28,7],[28,4],[28,5],[28,4],[28,5],[28,4],[28,5],[28,4],[28,1],[28,2],[30,1],[30,2],[38,1],[38,3],[29,2],[29,3],[29,1],[29,2],[29,5],[29,6],[41,1],[41,1],[41,1],[41,1],[42,3],[32,1],[32,2],[50,1],[50,2],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[58,1],[58,2],[25,5],[26,5],[27,5],[23,5],[23,5],[24,5],[20,3],[60,1],[60,3],[64,1],[64,2],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[51,1],[51,1],[49,1],[49,1],[49,1],[59,1],[59,1],[59,1],[59,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1]], +symbols_: {"error":2,"mermaidDoc":3,"graphConfig":4,"document":5,"line":6,"spaceListNewline":7,"statement":8,"SEMI":9,"EOF":10,"GRAPH":11,"SPACE":12,"DIR":13,"FirstStmtSeperator":14,"TAGEND":15,"TAGSTART":16,"UP":17,"DOWN":18,"NEWLINE":19,"spaceList":20,"commentStatement":21,"verticeStatement":22,"separator":23,"styleStatement":24,"linkStyleStatement":25,"classDefStatement":26,"classStatement":27,"clickStatement":28,"subgraph":29,"endStatement":30,"end":31,"vertex":32,"link":33,"alphaNum":34,"SQS":35,"text":36,"SQE":37,"PS":38,"PE":39,"DIAMOND_START":40,"DIAMOND_STOP":41,"alphaNumStatement":42,"alphaNumToken":43,"MINUS":44,"linkStatement":45,"arrowText":46,"--":47,"ARROW_POINT":48,"ARROW_CIRCLE":49,"ARROW_CROSS":50,"ARROW_OPEN":51,"PIPE":52,"textToken":53,"commentText":54,"commentToken":55,"keywords":56,"STYLE":57,"LINKSTYLE":58,"CLASSDEF":59,"CLASS":60,"CLICK":61,"textNoTags":62,"textNoTagsToken":63,"stylesOpt":64,"HEX":65,"NUM":66,"PCT":67,"style":68,"COMMA":69,"styleComponent":70,"ALPHA":71,"COLON":72,"UNIT":73,"BRKT":74,"DOT":75,"graphCodeTokens":76,"PLUS":77,"EQUALS":78,"MULT":79,"TAG_START":80,"TAG_END":81,"QUOTE":82,"$accept":0,"$end":1}, +terminals_: {2:"error",9:"SEMI",10:"EOF",11:"GRAPH",12:"SPACE",13:"DIR",15:"TAGEND",16:"TAGSTART",17:"UP",18:"DOWN",19:"NEWLINE",29:"subgraph",31:"end",35:"SQS",37:"SQE",38:"PS",39:"PE",40:"DIAMOND_START",41:"DIAMOND_STOP",44:"MINUS",47:"--",48:"ARROW_POINT",49:"ARROW_CIRCLE",50:"ARROW_CROSS",51:"ARROW_OPEN",52:"PIPE",57:"STYLE",58:"LINKSTYLE",59:"CLASSDEF",60:"CLASS",61:"CLICK",65:"HEX",66:"NUM",67:"PCT",69:"COMMA",71:"ALPHA",72:"COLON",73:"UNIT",74:"BRKT",75:"DOT",77:"PLUS",78:"EQUALS",79:"MULT",80:"TAG_START",81:"TAG_END",82:"QUOTE"}, +productions_: [0,[3,2],[5,0],[5,2],[6,2],[6,1],[6,1],[6,1],[4,4],[4,4],[4,4],[4,4],[4,4],[14,1],[14,1],[14,2],[7,2],[7,2],[7,1],[7,1],[20,2],[20,1],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,4],[30,1],[30,2],[23,1],[23,1],[23,1],[22,3],[22,1],[32,4],[32,5],[32,6],[32,7],[32,4],[32,5],[32,4],[32,5],[32,4],[32,5],[32,4],[32,1],[32,2],[34,1],[34,2],[42,1],[42,3],[33,2],[33,3],[33,1],[33,2],[33,5],[33,6],[45,1],[45,1],[45,1],[45,1],[46,3],[36,1],[36,2],[54,1],[54,2],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[62,1],[62,2],[26,5],[27,5],[28,5],[24,5],[24,5],[25,5],[21,3],[64,1],[64,3],[68,1],[68,2],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[55,1],[55,1],[53,1],[53,1],[53,1],[63,1],[63,1],[63,1],[63,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1]], performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) { /* this == yyval */ var $0 = $$.length - 1; switch (yystate) { +case 2: + this.$ = []; +break; case 3: -this.$=$$[$0-3]; + + if($$[$0] !== []){ + $$[$0-1].push($$[$0]); + } + this.$=$$[$0-1]; break; -case 4: -this.$=$$[$0-2]; -break; -case 5: - yy.setDirection($$[$0-1]);this.$ = $$[$0-1]; -break; -case 6: - yy.setDirection("LR");this.$ = $$[$0-1]; -break; -case 7: - yy.setDirection("RL");this.$ = $$[$0-1]; -break; -case 8: - yy.setDirection("BT");this.$ = $$[$0-1]; -break; -case 9: - yy.setDirection("TB");this.$ = $$[$0-1]; -break; -case 32: - yy.addLink($$[$0-2],$$[$0],$$[$0-1]);this.$ = 'oy' -break; -case 33: -this.$ = 'yo'; -break; -case 34: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'square'); -break; -case 35: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'square'); -break; -case 36: -this.$ = $$[$0-5];yy.addVertex($$[$0-5],$$[$0-2],'circle'); -break; -case 37: -this.$ = $$[$0-6];yy.addVertex($$[$0-6],$$[$0-3],'circle'); -break; -case 38: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'round'); -break; -case 39: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'round'); -break; -case 40: case 44: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'diamond'); -break; -case 41: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'diamond'); -break; -case 42: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'odd'); -break; -case 43: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'odd'); -break; -case 45: -this.$ = $$[$0];yy.addVertex($$[$0]); -break; -case 46: -this.$ = $$[$0-1];yy.addVertex($$[$0-1]); -break; -case 47: case 49: case 62: case 64: case 73: +case 4: case 5: case 50: case 52: case 65: case 67: case 78: this.$=$$[$0]; break; -case 48: case 63: case 65: case 74: +case 8: + yy.setDirection($$[$0-1]);this.$ = $$[$0-1]; +break; +case 9: + yy.setDirection("LR");this.$ = $$[$0-1]; +break; +case 10: + yy.setDirection("RL");this.$ = $$[$0-1]; +break; +case 11: + yy.setDirection("BT");this.$ = $$[$0-1]; +break; +case 12: + yy.setDirection("TB");this.$ = $$[$0-1]; +break; +case 22: case 24: case 25: case 26: case 27: case 28: +this.$=[]; +break; +case 23: +this.$=$$[$0-1] +break; +case 29: +yy.addSubGraph($$[$0-2]); +break; +case 35: + yy.addLink($$[$0-2],$$[$0],$$[$0-1]);this.$ = [$$[$0-2],$$[$0]]; +break; +case 36: +this.$ = 'yo'; +break; +case 37: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'square'); +break; +case 38: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'square'); +break; +case 39: +this.$ = $$[$0-5];yy.addVertex($$[$0-5],$$[$0-2],'circle'); +break; +case 40: +this.$ = $$[$0-6];yy.addVertex($$[$0-6],$$[$0-3],'circle'); +break; +case 41: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'round'); +break; +case 42: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'round'); +break; +case 43: case 47: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'diamond'); +break; +case 44: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'diamond'); +break; +case 45: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'odd'); +break; +case 46: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'odd'); +break; +case 48: +this.$ = $$[$0];yy.addVertex($$[$0]); +break; +case 49: +this.$ = $$[$0-1];yy.addVertex($$[$0-1]); +break; +case 51: case 66: case 68: case 79: this.$=$$[$0-1]+''+$$[$0]; break; -case 50: +case 53: this.$=$$[$0-2]+'-'+$$[$0]; break; -case 51: +case 54: $$[$0-1].text = $$[$0];this.$ = $$[$0-1]; break; -case 52: +case 55: $$[$0-2].text = $$[$0-1];this.$ = $$[$0-2]; break; -case 53: +case 56: this.$ = $$[$0]; break; -case 54: case 61: +case 57: case 64: this.$ = $$[$0-1]; break; -case 55: +case 58: $$[$0].text = $$[$0-2];this.$ = $$[$0]; break; -case 56: +case 59: $$[$0-1].text = $$[$0-3];this.$ = $$[$0-1]; break; -case 57: +case 60: this.$ = {"type":"arrow"}; break; -case 58: +case 61: this.$ = {"type":"arrow_circle"}; break; -case 59: +case 62: this.$ = {"type":"arrow_cross"}; break; -case 60: +case 63: this.$ = {"type":"arrow_open"}; break; -case 75: +case 80: this.$ = $$[$0-4];yy.addClass($$[$0-2],$$[$0]); break; -case 76: +case 81: this.$ = $$[$0-4];yy.setClass($$[$0-2], $$[$0]); break; -case 77: +case 82: this.$ = $$[$0-4];yy.setClickEvent($$[$0-2], $$[$0]); break; -case 78: +case 83: this.$ = $$[$0-4];yy.addVertex($$[$0-2],undefined,undefined,$$[$0]); break; -case 79: case 80: +case 84: case 85: this.$ = $$[$0-4];yy.updateLink($$[$0-2],$$[$0]); break; -case 82: +case 87: this.$ = [$$[$0]] break; -case 83: +case 88: $$[$0-2].push($$[$0]);this.$ = $$[$0-2]; break; -case 85: +case 90: this.$ = $$[$0-1] + $$[$0]; break; } }, -table: [{3:1,4:2,8:[1,3]},{1:[3]},{5:4,7:5,9:$V0,17:$V1,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:[1,35]},{1:[2,2],6:[1,36]},{5:37,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vh,[2,15],{19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,7:38,5:39,9:$V0,17:$V1,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg}),o($Vi,[2,19],{7:40,9:$V0,17:$V1}),o($Vi,[2,18],{7:41,9:$V0,17:$V1}),{17:[1,42]},{6:$Vj,16:$Vk,17:$Vl,22:43},{6:$Vj,16:$Vk,17:$Vl,22:47},{6:$Vj,16:$Vk,17:$Vl,22:48},{6:$Vj,16:$Vk,17:$Vl,22:49},{6:$Vj,16:$Vk,17:$Vl,22:50},{6:$Vj,16:$Vk,17:$Vl,22:51},{63:[1,52]},o($Vm,[2,33],{29:53,41:54,43:[1,55],44:$Vn,45:$Vo,46:$Vp,47:$Vq}),{9:[1,60]},{9:[1,61]},{9:[1,62]},{9:[1,63]},{9:[1,64]},o($Vr,[2,45],{9:[1,70],12:[1,68],13:[1,69],31:[1,65],34:[1,66],36:[1,67]}),o($Vs,[2,47],{38:24,39:25,30:71,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg}),o($Vt,[2,49],{40:[1,72]}),o($Vu,[2,104]),o($Vu,[2,105]),o($Vu,[2,106]),o($Vu,[2,107]),o($Vu,[2,108]),o($Vu,[2,109]),o($Vu,[2,110]),o($Vu,[2,111]),o($Vu,[2,112]),{10:[1,73],12:[1,74],13:[1,75],14:[1,76],15:[1,77]},{1:[2,1]},{1:[2,4],6:[1,78]},{5:79,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vh,[2,14]),o($Vi,[2,16]),o($Vi,[2,17]),o($Vv,[2,22]),o($Vv,[2,23]),o($Vv,[2,29]),o($Vv,[2,30]),o($Vv,[2,31]),o($Vv,[2,24]),o($Vv,[2,25]),o($Vv,[2,26]),o($Vv,[2,27]),o($Vv,[2,28]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,16:$VB,31:$VC,33:$VD,34:$VE,35:$VF,36:$VG,37:$VH,39:102,40:$VI,44:$VJ,45:$VK,46:$VL,47:$VM,48:$VN,49:82,50:80,51:81,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,72:83,73:$Ve,74:$Vf,75:$Vg,76:$VT,77:$VU,78:$VV},{28:113,30:23,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($VW,[2,53],{42:114,9:[1,115],48:[1,116]}),{9:[1,117]},o($VX,[2,57]),o($VX,[2,58]),o($VX,[2,59]),o($VX,[2,60]),{30:118,38:24,39:25,61:[1,119],62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{62:[1,120]},{30:121,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:122,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:123,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:124,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:127,34:[1,126],39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:128,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:129,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:130,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,46]),o($Vs,[2,48]),{39:131,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:$VY,11:132,16:$VZ,17:$V_,18:135},{9:$VY,11:137,16:$VZ,17:$V_,18:135},{9:$VY,11:138,16:$VZ,17:$V_,18:135},{9:$VY,11:139,16:$VZ,17:$V_,18:135},{9:$VY,11:140,16:$VZ,17:$V_,18:135},{1:[2,3]},o($Vh,[2,13]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,16:$VB,17:[2,81],31:$VC,33:$VD,34:$VE,35:$VF,36:$VG,37:$VH,39:102,40:$VI,44:$VJ,45:$VK,46:$VL,47:$VM,48:$VN,49:82,51:141,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,72:83,73:$Ve,74:$Vf,75:$Vg,76:$VT,77:$VU,78:$VV},o($V$,[2,64]),o($V$,[2,95]),o($V$,[2,96]),o($V$,[2,97]),o($V$,[2,98]),o($V$,$V01),o($V$,[2,113]),o($V$,[2,114]),o($V$,[2,115]),o($V$,[2,116]),o($V$,[2,117]),o($V$,[2,118]),o($V$,[2,119]),o($V$,[2,120]),o($V$,[2,121]),o($V$,[2,122]),o($V$,[2,123]),o($V$,[2,124]),o($V$,[2,125]),o($V$,[2,126]),o($V$,[2,127]),o($V$,[2,100]),o($V$,$V11),o($V$,[2,102]),o($V$,[2,103]),o($V$,[2,66]),o($V$,[2,67]),o($V$,[2,68]),o($V$,[2,69]),o($V$,[2,70]),o($V$,[2,71]),o($V$,[2,72]),o($Vm,[2,32]),o($VW,[2,51],{9:[1,142]}),o($VW,[2,54]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:143,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:144,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:[1,145]},{9:[1,146]},{9:[1,147]},{9:[1,148]},{9:[1,149]},{9:[1,150]},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,33:[1,151],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($V21,[2,62]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:153,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,35:[1,154],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,37:[1,155],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,33:[1,156],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:[1,157],13:$VA,39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vt,[2,50]),o($V31,[2,5]),o($V31,[2,10]),o($V31,[2,11]),{17:[1,158]},{9:$VY,17:[2,21],18:159},o($V31,[2,6]),o($V31,[2,7]),o($V31,[2,8]),o($V31,[2,9]),o($V$,[2,65]),o($VW,[2,52]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,39:102,40:$VI,48:[1,160],49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:[1,161],10:$Vy,12:$Vz,13:$VA,39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:$V41,40:$V51,60:162,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:174,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:175,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:176,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{30:177,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:178,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,34],{9:[1,179]}),o($V21,[2,63]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,35:[1,180],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,38],{9:[1,181]}),o($Vr,[2,40],{9:[1,182]}),o($Vr,[2,42],{9:[1,183]}),o($Vd1,$V01,{6:$Ve1,16:$Ve1,17:$Ve1,43:$Ve1,44:$Ve1,45:$Ve1,46:$Ve1,47:$Ve1}),o($V31,[2,12]),{17:[2,20]},o([9,62,65,67,68,70,71,73,74,75],[2,61]),o($Vd1,$V11,{41:184,44:$Vn,45:$Vo,46:$Vp,47:$Vq}),o($Vm,[2,78],{65:$Vf1}),o($Vg1,[2,82],{66:186,9:$V41,40:$V51,61:$V61,62:$V71,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1}),o($Vh1,[2,84]),o($Vh1,[2,86]),o($Vh1,[2,87]),o($Vh1,[2,88]),o($Vh1,[2,89]),o($Vh1,[2,90]),o($Vh1,[2,91]),o($Vh1,[2,92]),o($Vh1,[2,93]),o($Vh1,[2,94]),o($Vm,[2,79],{65:$Vf1}),o($Vm,[2,80],{65:$Vf1}),o($Vm,[2,75],{65:$Vf1}),o($Vm,[2,76]),o($Vm,[2,77]),o($Vr,[2,35]),{35:[1,187]},o($Vr,[2,39]),o($Vr,[2,41]),o($Vr,[2,43]),o($VW,[2,55],{9:[1,188]}),{9:$V41,40:$V51,61:$V61,62:$V71,64:189,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},o($Vh1,[2,85]),o($Vr,[2,36],{9:[1,190]}),o($VW,[2,56]),o($Vg1,[2,83],{66:186,9:$V41,40:$V51,61:$V61,62:$V71,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1}),o($Vr,[2,37])], -defaultActions: {36:[2,1],78:[2,3],159:[2,20]}, +table: [{3:1,4:2,11:[1,3]},{1:[3]},o($V0,$V1,{5:4}),{12:[1,5]},{1:[2,1],6:6,7:7,8:8,9:$V2,10:$V3,12:$V4,19:$V5,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{13:[1,40],15:[1,41],16:[1,42],17:[1,43],18:[1,44]},o($Vm,[2,3]),{8:45,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vm,[2,5]),o($Vm,[2,6]),o($Vm,[2,7]),o($Vn,$Vo,{7:46,12:$V4,19:$V5}),o($Vn,[2,18],{7:47,12:$V4,19:$V5}),{19:[1,48]},{9:$Vp,10:$Vq,19:$Vr,23:49},{9:$Vp,10:$Vq,19:$Vr,23:53},{9:$Vp,10:$Vq,19:$Vr,23:54},{9:$Vp,10:$Vq,19:$Vr,23:55},{9:$Vp,10:$Vq,19:$Vr,23:56},{9:$Vp,10:$Vq,19:$Vr,23:57},o([9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$V1,{5:58}),{67:[1,59]},o($Vs,[2,36],{33:60,45:61,47:[1,62],48:$Vt,49:$Vu,50:$Vv,51:$Vw}),{12:[1,67]},{12:[1,68]},{12:[1,69]},{12:[1,70]},{12:[1,71]},o($Vx,[2,48],{12:[1,77],15:[1,75],16:[1,76],35:[1,72],38:[1,73],40:[1,74]}),o($Vy,[2,50],{42:29,43:30,34:78,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl}),o($Vz,[2,52],{44:[1,79]}),o($VA,[2,109]),o($VA,[2,110]),o($VA,[2,111]),o($VA,[2,112]),o($VA,[2,113]),o($VA,[2,114]),o($VA,[2,115]),o($VA,[2,116]),o($VA,[2,117]),{9:$VB,12:$VC,14:80,19:$VD,20:83},{9:$VB,12:$VC,14:85,19:$VD,20:83},{9:$VB,12:$VC,14:86,19:$VD,20:83},{9:$VB,12:$VC,14:87,19:$VD,20:83},{9:$VB,12:$VC,14:88,19:$VD,20:83},o($Vm,[2,4]),o($Vn,[2,16]),o($Vn,[2,17]),o($Vm,[2,22]),o($Vm,[2,23]),o($Vm,[2,32]),o($Vm,[2,33]),o($Vm,[2,34]),o($Vm,[2,24]),o($Vm,[2,25]),o($Vm,[2,26]),o($Vm,[2,27]),o($Vm,[2,28]),{6:6,7:7,8:8,9:$V2,10:$V3,12:$VE,19:$V5,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,30:89,31:$VF,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{9:$VG,11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,35:$VO,37:$VP,38:$VQ,39:$VR,40:$VS,41:$VT,43:114,44:$VU,48:$VV,49:$VW,50:$VX,51:$VY,52:$VZ,53:94,54:92,55:93,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,76:95,77:$Vj,78:$Vk,79:$Vl,80:$V31,81:$V41,82:$V51},{32:127,34:28,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($V61,[2,56],{46:128,12:[1,129],52:[1,130]}),{12:[1,131]},o($V71,[2,60]),o($V71,[2,61]),o($V71,[2,62]),o($V71,[2,63]),{34:132,42:29,43:30,65:[1,133],66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{66:[1,134]},{34:135,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:136,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:137,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:138,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:141,38:[1,140],43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:142,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:143,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:144,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,49]),o($Vy,[2,51]),{43:145,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($V0,[2,8]),o($V0,[2,13]),o($V0,[2,14]),{19:[1,146]},{12:$VC,19:[2,21],20:147},o($V0,[2,9]),o($V0,[2,10]),o($V0,[2,11]),o($V0,[2,12]),{9:$Vp,10:$Vq,19:$Vr,23:148},o($Vs,[2,30]),o($Vn,$Vo,{7:46,30:149,12:$VE,19:$V5,31:$VF}),{9:$VG,11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,19:[2,86],29:$VM,31:$VN,35:$VO,37:$VP,38:$VQ,39:$VR,40:$VS,41:$VT,43:114,44:$VU,48:$VV,49:$VW,50:$VX,51:$VY,52:$VZ,53:94,55:150,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,76:95,77:$Vj,78:$Vk,79:$Vl,80:$V31,81:$V41,82:$V51},o($V81,[2,67]),o($V81,[2,100]),o($V81,[2,101]),o($V81,[2,102]),o($V81,[2,103]),o($V81,$V91),o($V81,[2,118]),o($V81,[2,119]),o($V81,[2,120]),o($V81,[2,121]),o($V81,[2,122]),o($V81,[2,123]),o($V81,[2,124]),o($V81,[2,125]),o($V81,[2,126]),o($V81,[2,127]),o($V81,[2,128]),o($V81,[2,129]),o($V81,[2,130]),o($V81,[2,131]),o($V81,[2,132]),o($V81,[2,105]),o($V81,$Va1),o($V81,[2,107]),o($V81,[2,108]),o($V81,[2,69]),o($V81,[2,70]),o($V81,[2,71]),o($V81,[2,72]),o($V81,[2,73]),o($V81,[2,74]),o($V81,[2,75]),o($V81,[2,76]),o($V81,[2,77]),o($Vs,[2,35]),o($V61,[2,54],{12:[1,151]}),o($V61,[2,57]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:152,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:153,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{12:[1,154]},{12:[1,155]},{12:[1,156]},{12:[1,157]},{12:[1,158]},{12:[1,159]},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,37:[1,160],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vb1,[2,65]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:162,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,39:[1,163],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,41:[1,164],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,37:[1,165],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:[1,166],16:$VL,29:$VM,31:$VN,43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vz,[2,53]),o($V0,[2,15]),{19:[2,20]},o($Vm,[2,29]),o($Vs,[2,31]),o($V81,[2,68]),o($V61,[2,55]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,43:114,44:$VU,52:[1,167],53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:[1,168],13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{12:$Vc1,44:$Vd1,64:169,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:181,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:182,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:183,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{34:184,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:185,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,37],{12:[1,186]}),o($Vb1,[2,66]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,39:[1,187],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,41],{12:[1,188]}),o($Vx,[2,43],{12:[1,189]}),o($Vx,[2,45],{12:[1,190]}),o($Vl1,$V91,{9:$Vm1,10:$Vm1,19:$Vm1,47:$Vm1,48:$Vm1,49:$Vm1,50:$Vm1,51:$Vm1}),o([12,66,69,71,72,74,75,77,78,79],[2,64]),o($Vl1,$Va1,{45:191,48:$Vt,49:$Vu,50:$Vv,51:$Vw}),o($Vs,[2,83],{69:$Vn1}),o($Vo1,[2,87],{70:193,12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1}),o($Vp1,[2,89]),o($Vp1,[2,91]),o($Vp1,[2,92]),o($Vp1,[2,93]),o($Vp1,[2,94]),o($Vp1,[2,95]),o($Vp1,[2,96]),o($Vp1,[2,97]),o($Vp1,[2,98]),o($Vp1,[2,99]),o($Vs,[2,84],{69:$Vn1}),o($Vs,[2,85],{69:$Vn1}),o($Vs,[2,80],{69:$Vn1}),o($Vs,[2,81]),o($Vs,[2,82]),o($Vx,[2,38]),{39:[1,194]},o($Vx,[2,42]),o($Vx,[2,44]),o($Vx,[2,46]),o($V61,[2,58],{12:[1,195]}),{12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,68:196,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},o($Vp1,[2,90]),o($Vx,[2,39],{12:[1,197]}),o($V61,[2,59]),o($Vo1,[2,88],{70:193,12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1}),o($Vx,[2,40])], +defaultActions: {147:[2,20]}, parseError: function parseError(str, hash) { if (hash.recoverable) { this.trace(str); @@ -15010,100 +15080,104 @@ options: {}, performAction: function anonymous(yy,yy_,$avoiding_name_collisions,YY_START) { var YYSTATE=YY_START; switch($avoiding_name_collisions) { -case 0:return 53; +case 0:return 57; break; -case 1:return 54; +case 1:return 58; break; -case 2:return 55; +case 2:return 59; break; -case 3:return 56; +case 3:return 60; break; -case 4:return 57; +case 4:return 61; break; -case 5:return 8; +case 5:return 11; break; -case 6:return 10; +case 6:return 29; break; -case 7:return 10; +case 7:return 31; break; -case 8:return 10; +case 8:return 13; break; -case 9:return 10; +case 9:return 13; break; -case 10:return 10; +case 10:return 13; break; -case 11:return 10; +case 11:return 13; break; -case 12:return 62; +case 12:return 13; break; -case 13:return 70; +case 13:return 13; break; -case 14:return 68; +case 14:return 66; break; -case 15:return 16; +case 15:return 74; break; -case 16:return 65; +case 16:return 72; break; -case 17:return 74; +case 17:return 9; break; -case 18:return 75; +case 18:return 69; break; -case 19:return 71; +case 19:return 78; break; -case 20:return 13; +case 20:return 79; break; -case 21:return 12; +case 21:return 75; break; -case 22:return 14; +case 22:return 16; break; case 23:return 15; break; -case 24:return 46; +case 24:return 17; break; -case 25:return 44; +case 25:return 18; break; -case 26:return 45; +case 26:return 50; break; -case 27:return 47; +case 27:return 48; break; -case 28:return 43; +case 28:return 49; break; -case 29:return 40; +case 29:return 51; break; -case 30:return 73; +case 30:return 47; break; -case 31:return 63; +case 31:return 44; break; -case 32:return 74; +case 32:return 77; break; case 33:return 67; break; -case 34:return 48; +case 34:return 78; break; -case 35:return 34; +case 35:return 71; break; -case 36:return 35; +case 36:return 52; break; -case 37:return 31; +case 37:return 38; break; -case 38:return 33; +case 38:return 39; break; -case 39:return 36 +case 39:return 35; break; -case 40:return 37 +case 40:return 37; break; -case 41:return 78; +case 41:return 40 break; -case 42:return 17; +case 42:return 41 break; -case 43:return 9; +case 43:return 82; break; -case 44:return 6; +case 44:return 19; +break; +case 45:return 12; +break; +case 46:return 10; break; } }, -rules: [/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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: {"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,43,44],"inclusive":true}} +rules: [/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:subgraph\b)/,/^(?:end\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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: {"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,43,44,45,46],"inclusive":true}} }); return lexer; })(); @@ -16779,7 +16853,8 @@ module.exports.cloneCssStyles = function(svg, classes){ if (className === 'default') { defaultStyles = '.node' + ' { ' + classes[className].styles.join("; ") + '; }\n'; } else { - embeddedStyles += '.' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; + embeddedStyles += '.' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; + //embeddedStyles += svg.id.trim() + ' .' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; } } } diff --git a/dist/mermaid.full.min.js b/dist/mermaid.full.min.js index 7d075fa10..e5b504634 100644 --- a/dist/mermaid.full.min.js +++ b/dist/mermaid.full.min.js @@ -34,6 +34,6 @@ func=null;return result}}function partial(func){return createWrapper(func,16,sli }return v}function n(e,t){a.each(e,function(e){e.vs=a.flatten(e.vs.map(function(e){return t[e]?t[e].vs:e}),!0)})}function i(e,t){a.isUndefined(e.barycenter)?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)}var a=e("../lodash"),u=e("./barycenter"),o=e("./resolve-conflicts"),s=e("./sort");t.exports=r},{"../lodash":36,"./barycenter":40,"./resolve-conflicts":45,"./sort":47}],47:[function(e,t){function r(e,t){var r=u.partition(e,function(e){return a.has(e,"barycenter")}),o=r.lhs,s=a.sortBy(r.rhs,function(e){return-e.i}),c=[],l=0,h=0,d=0;o.sort(i(!!t)),d=n(c,s,d),a.each(o,function(e){d+=e.vs.length,c.push(e.vs),l+=e.barycenter*e.weight,h+=e.weight,d=n(c,s,d)});var p={vs:a.flatten(c,!0)};return h&&(p.barycenter=l/h,p.weight=h),p}function n(e,t,r){for(var n;t.length&&(n=a.last(t)).i<=r;)t.pop(),e.push(n.vs),r++;return r}function i(e){return function(t,r){return t.barycenterr.barycenter?1:e?r.i-t.i:t.i-r.i}}var a=e("../lodash"),u=e("../util");t.exports=r},{"../lodash":36,"../util":55}],48:[function(e,t){function r(e){var t=i(e);a.each(e.graph().dummyChains,function(r){for(var i=e.node(r),a=i.edgeObj,u=n(e,t,a.v,a.w),o=u.path,s=u.lca,c=0,l=o[c],h=!0;r!==a.w;){if(i=e.node(r),h){for(;(l=o[c])!==s&&e.node(l).maxRanks||c>t[i].lim));for(a=i,i=n;(i=e.parent(i))!==a;)o.push(i);return{path:u.concat(o.reverse()),lca:a}}function i(e){function t(i){var u=n;a.each(e.children(i),t),r[i]={low:u,lim:n++}}var r={},n=0;return a.each(e.children(),t),r}var a=e("./lodash");t.exports=r},{"./lodash":36}],49:[function(e,t){"use strict";function r(e,t){function r(t,r){var u=0,o=0,s=t.length,c=y.last(r);return y.each(r,function(t,l){var h=i(e,t),d=h?e.node(h).order:s;(h||t===c)&&(y.each(r.slice(o,l+1),function(t){y.each(e.predecessors(t),function(r){var i=e.node(r),o=i.order;!(u>o||o>d)||i.dummy&&e.node(t).dummy||a(n,r,t)})}),o=l+1,u=d)}),r}var n={};return y.reduce(t,r),n}function n(e,t){function r(t,r,n,u,o){var s;y.each(y.range(r,n),function(r){s=t[r],e.node(s).dummy&&y.each(e.predecessors(s),function(t){var r=e.node(t);r.dummy&&(r.ordero)&&a(i,t,s)})})}function n(t,n){var i,a=-1,u=0;return y.each(n,function(o,s){if("border"===e.node(o).dummy){var c=e.predecessors(o);c.length&&(i=e.node(c[0]).order,r(n,u,s,a,i),u=s,a=i)}r(n,u,n.length,i,t.length)}),n}var i={};return y.reduce(t,n),i}function i(e,t){return e.node(t).dummy?y.find(e.predecessors(t),function(t){return e.node(t).dummy}):void 0}function a(e,t,r){if(t>r){var n=t;t=r,r=n}var i=e[t];i||(e[t]=i={}),i[r]=!0}function u(e,t,r){if(t>r){var n=t;t=r,r=n}return y.has(e[t],r)}function o(e,t,r,n){var i={},a={},o={};return y.each(t,function(e){y.each(e,function(e,t){i[e]=e,a[e]=e,o[e]=t})}),y.each(t,function(e){var t=-1;y.each(e,function(e){var s=n(e);if(s.length){s=y.sortBy(s,function(e){return o[e]});for(var c=(s.length-1)/2,l=Math.floor(c),h=Math.ceil(c);h>=l;++l){var d=s[l];a[e]===e&&tu.lim&&(o=u,s=!0);var c=f.filter(t.edges(),function(t){return s===p(e,e.node(t.v),o)&&s!==p(e,e.node(t.w),o)});return f.min(c,function(e){return y(t,e)})}function l(e,t,r,i){var a=r.v,o=r.w;e.removeEdge(a,o),e.setEdge(i.v,i.w,{}),u(e),n(e,t),h(e,t)}function h(e,t){var r=f.find(e.nodes(),function(e){return!t.node(e).parent}),n=v(e,r);n=n.slice(1),f.each(n,function(r){var n=e.node(r).parent,i=t.edge(r,n),a=!1;i||(i=t.edge(n,r),a=!0),t.node(r).rank=t.node(n).rank+(a?i.minlen:-i.minlen)})}function d(e,t,r){return e.hasEdge(t,r)}function p(e,t,r){return r.low<=t.lim&&t.lim<=r.lim}var f=e("../lodash"),g=e("./feasible-tree"),y=e("./util").slack,m=e("./util").longestPath,v=e("../graphlib").alg.preorder,b=e("../graphlib").alg.postorder,A=e("../util").simplify;t.exports=r,r.initLowLimValues=u,r.initCutValues=n,r.calcCutValue=a,r.leaveEdge=s,r.enterEdge=c,r.exchangeEdges=l},{"../graphlib":33,"../lodash":36,"../util":55,"./feasible-tree":51,"./util":54}],54:[function(e,t){"use strict";function r(e){function t(n){var a=e.node(n);if(i.has(r,n))return a.rank;r[n]=!0;var u=i.min(i.map(e.outEdges(n),function(r){return t(r.w)-e.edge(r).minlen}));return u===Number.POSITIVE_INFINITY&&(u=0),a.rank=u}var r={};i.each(e.sources(),t)}function n(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var i=e("../lodash");t.exports={longestPath:r,slack:n}},{"../lodash":36}],55:[function(e,t){"use strict";function r(e,t,r,n){var i;do i=y.uniqueId(n);while(e.hasNode(i));return r.dummy=t,e.setNode(i,r),i}function n(e){var t=(new m).setGraph(e.graph());return y.each(e.nodes(),function(r){t.setNode(r,e.node(r))}),y.each(e.edges(),function(r){var n=t.edge(r.v,r.w)||{weight:0,minlen:1},i=e.edge(r);t.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),t}function i(e){var t=new m({multigraph:e.isMultigraph()}).setGraph(e.graph());return y.each(e.nodes(),function(r){e.children(r).length||t.setNode(r,e.node(r))}),y.each(e.edges(),function(r){t.setEdge(r,e.edge(r))}),t}function a(e){var t=y.map(e.nodes(),function(t){var r={};return y.each(e.outEdges(t),function(t){r[t.w]=(r[t.w]||0)+e.edge(t).weight}),r});return y.zipObject(e.nodes(),t)}function u(e){var t=y.map(e.nodes(),function(t){var r={};return y.each(e.inEdges(t),function(t){r[t.v]=(r[t.v]||0)+e.edge(t).weight}),r});return y.zipObject(e.nodes(),t)}function o(e,t){var r=e.x,n=e.y,i=t.x-r,a=t.y-n,u=e.width/2,o=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var s,c;return Math.abs(a)*u>Math.abs(i)*o?(0>a&&(o=-o),s=o*i/a,c=o):(0>i&&(u=-u),s=u,c=u*a/i),{x:r+s,y:n+c}}function s(e){var t=y.map(y.range(d(e)+1),function(){return[]});return y.each(e.nodes(),function(r){var n=e.node(r),i=n.rank;y.isUndefined(i)||(t[i][n.order]=r)}),t}function c(e){var t=y.min(y.map(e.nodes(),function(t){return e.node(t).rank}));y.each(e.nodes(),function(r){var n=e.node(r);y.has(n,"rank")&&(n.rank-=t)})}function l(e){var t=y.min(y.map(e.nodes(),function(t){return e.node(t).rank})),r=[];y.each(e.nodes(),function(n){var i=e.node(n).rank-t;y.has(r,i)||(r[i]=[]),r[i].push(n)});var n=0,i=e.graph().nodeRankFactor;y.each(r,function(t,r){y.isUndefined(t)&&r%i!==0?--n:n&&y.each(t,function(t){e.node(t).rank+=n})})}function h(e,t,n,i){var a={width:0,height:0};return arguments.length>=4&&(a.rank=n,a.order=i),r(e,"border",a,t)}function d(e){return y.max(y.map(e.nodes(),function(t){var r=e.node(t).rank;return y.isUndefined(r)?void 0:r}))}function p(e,t){var r={lhs:[],rhs:[]};return y.each(e,function(e){t(e)?r.lhs.push(e):r.rhs.push(e)}),r}function f(e,t){var r=y.now();try{return t()}finally{console.log(e+" time: "+(y.now()-r)+"ms")}}function g(e,t){return t()}var y=e("./lodash"),m=e("./graphlib").Graph;t.exports={addDummyNode:r,simplify:n,asNonCompoundGraph:i,successorWeights:a,predecessorWeights:u,intersectRect:o,buildLayerMatrix:s,normalizeRanks:c,removeEmptyRanks:l,addBorderNode:h,maxRank:d,partition:p,time:f,notime:g}},{"./graphlib":33,"./lodash":36}],56:[function(e,t){t.exports="0.6.4"},{}],57:[function(e,t){var r=e("./lib");t.exports={Graph:r.Graph,json:e("./lib/json"),alg:e("./lib/alg"),version:r.version}},{"./lib":73,"./lib/alg":64,"./lib/json":74}],58:[function(e,t){function r(e){function t(a){n.has(i,a)||(i[a]=!0,r.push(a),n.each(e.successors(a),t),n.each(e.predecessors(a),t))}var r,i={},a=[];return n.each(e.nodes(),function(e){r=[],t(e),r.length&&a.push(r)}),a}var n=e("../lodash");t.exports=r},{"../lodash":75}],59:[function(e,t){function r(e,t,r){i.isArray(t)||(t=[t]);var a=[],u={};return i.each(t,function(t){if(!e.hasNode(t))throw new Error("Graph does not have node: "+t);n(e,t,"post"===r,u,a)}),a}function n(e,t,r,a,u){i.has(a,t)||(a[t]=!0,r||u.push(t),i.each(e.neighbors(t),function(t){n(e,t,r,a,u)}),r&&u.push(t))}var i=e("../lodash");t.exports=r},{"../lodash":75}],60:[function(e,t){function r(e,t,r){return i.transform(e.nodes(),function(i,a){i[a]=n(e,a,t,r)},{})}var n=e("./dijkstra"),i=e("../lodash");t.exports=r},{"../lodash":75,"./dijkstra":61}],61:[function(e,t){function r(e,t,r,i){return n(e,String(t),r||u,i||function(t){return e.outEdges(t)})}function n(e,t,r,n){var i,u,o={},s=new a,c=function(e){var t=e.v!==i?e.v:e.w,n=o[t],a=r(e),c=u.distance+a;if(0>a)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+a);c0&&(i=s.removeMin(),u=o[i],u.distance!==Number.POSITIVE_INFINITY);)n(i).forEach(c);return o}var i=e("../lodash"),a=e("../data/priority-queue");t.exports=r;var u=i.constant(1)},{"../data/priority-queue":71,"../lodash":75}],62:[function(e,t){function r(e){return n.filter(i(e),function(e){return e.length>1})}var n=e("../lodash"),i=e("./tarjan");t.exports=r},{"../lodash":75,"./tarjan":69}],63:[function(e,t){function r(e,t,r){return n(e,t||a,r||function(t){return e.outEdges(t)})}function n(e,t,r){var n={},i=e.nodes();return i.forEach(function(e){n[e]={},n[e][e]={distance:0},i.forEach(function(t){e!==t&&(n[e][t]={distance:Number.POSITIVE_INFINITY})}),r(e).forEach(function(r){var i=r.v===e?r.w:r.v,a=t(r);n[e][i]={distance:a,predecessor:e}})}),i.forEach(function(e){var t=n[e];i.forEach(function(r){var a=n[r];i.forEach(function(r){var n=a[e],i=t[r],u=a[r],o=n.distance+i.distance;oi&&(s[r]=u,c.decrease(r,i))}}var u,o=new i,s={},c=new a;if(0===e.nodeCount())return o;n.each(e.nodes(),function(e){c.add(e,Number.POSITIVE_INFINITY),o.setNode(e)}),c.decrease(e.nodes()[0],0);for(var l=!1;c.size()>0;){if(u=c.removeMin(),n.has(s,u))o.setEdge(u,s[u]);else{if(l)throw new Error("Input graph is not connected: "+e);l=!0}e.nodeEdges(u).forEach(r)}return o}var n=e("../lodash"),i=e("../graph"),a=e("../data/priority-queue");t.exports=r},{"../data/priority-queue":71,"../graph":72,"../lodash":75}],69:[function(e,t){function r(e){function t(o){var s=a[o]={onStack:!0,lowlink:r,index:r++};if(i.push(o),e.successors(o).forEach(function(e){n.has(a,e)?a[e].onStack&&(s.lowlink=Math.min(s.lowlink,a[e].index)):(t(e),s.lowlink=Math.min(s.lowlink,a[e].lowlink))}),s.lowlink===s.index){var c,l=[];do c=i.pop(),a[c].onStack=!1,l.push(c);while(o!==c);u.push(l)}}var r=0,i=[],a={},u=[];return e.nodes().forEach(function(e){n.has(a,e)||t(e)}),u}var n=e("../lodash");t.exports=r},{"../lodash":75}],70:[function(e,t){function r(e){function t(o){if(i.has(a,o))throw new n;i.has(r,o)||(a[o]=!0,r[o]=!0,i.each(e.predecessors(o),t),delete a[o],u.push(o))}var r={},a={},u=[];if(i.each(e.sinks(),t),i.size(r)!==e.nodeCount())throw new n;return u}function n(){}var i=e("../lodash");t.exports=r,r.CycleException=n},{"../lodash":75}],71:[function(e,t){function r(){this._arr=[],this._keyIndices={}}var n=e("../lodash");t.exports=r,r.prototype.size=function(){return this._arr.length},r.prototype.keys=function(){return this._arr.map(function(e){return e.key})},r.prototype.has=function(e){return n.has(this._keyIndices,e)},r.prototype.priority=function(e){var t=this._keyIndices[e];return void 0!==t?this._arr[t].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(e,t){var r=this._keyIndices;if(e=String(e),!n.has(r,e)){var i=this._arr,a=i.length;return r[e]=a,i.push({key:e,priority:t}),this._decrease(a),!0}return!1},r.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},r.prototype.decrease=function(e,t){var r=this._keyIndices[e];if(t>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[r].priority+" New: "+t);this._arr[r].priority=t,this._decrease(r)},r.prototype._heapify=function(e){var t=this._arr,r=2*e,n=r+1,i=e;r>1,!(r[t].priorityr){var i=t;t=r,r=i}return t+h+r+h+(s.isUndefined(n)?c:n)}function u(e,t,r,n){if(!e&&t>r){var i=t;t=r,r=i}var a={v:t,w:r};return n&&(a.name=n),a}function o(e,t){return a(e,t.v,t.w,t.name)}var s=e("./lodash");t.exports=r;var c="\x00",l="\x00",h="";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(e){return this._label=e,this},r.prototype.graph=function(){return this._label},r.prototype.setDefaultNodeLabel=function(e){return s.isFunction(e)||(e=s.constant(e)),this._defaultNodeLabelFn=e,this},r.prototype.nodeCount=function(){return this._nodeCount},r.prototype.nodes=function(){return s.keys(this._nodes)},r.prototype.sources=function(){return s.filter(this.nodes(),function(e){return s.isEmpty(this._in[e])},this)},r.prototype.sinks=function(){return s.filter(this.nodes(),function(e){return s.isEmpty(this._out[e])},this)},r.prototype.setNodes=function(e,t){var r=arguments;return s.each(e,function(e){r.length>1?this.setNode(e,t):this.setNode(e)},this),this},r.prototype.setNode=function(e,t){return s.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=l,this._children[e]={},this._children[l][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)},r.prototype.node=function(e){return this._nodes[e]},r.prototype.hasNode=function(e){return s.has(this._nodes,e)},r.prototype.removeNode=function(e){var t=this;if(s.has(this._nodes,e)){var r=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],s.each(this.children(e),function(e){this.setParent(e)},this),delete this._children[e]),s.each(s.keys(this._in[e]),r),delete this._in[e],delete this._preds[e],s.each(s.keys(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this},r.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(s.isUndefined(t))t=l;else{for(var r=t;!s.isUndefined(r);r=this.parent(r))if(r===e)throw new Error("Setting "+t+" as parent of "+e+" would create create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},r.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},r.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==l)return t}},r.prototype.children=function(e){if(s.isUndefined(e)&&(e=l),this._isCompound){var t=this._children[e];if(t)return s.keys(t)}else{if(e===l)return this.nodes();if(this.hasNode(e))return[]}},r.prototype.predecessors=function(e){var t=this._preds[e];return t?s.keys(t):void 0},r.prototype.successors=function(e){var t=this._sucs[e];return t?s.keys(t):void 0},r.prototype.neighbors=function(e){var t=this.predecessors(e);return t?s.union(t,this.successors(e)):void 0},r.prototype.setDefaultEdgeLabel=function(e){return s.isFunction(e)||(e=s.constant(e)),this._defaultEdgeLabelFn=e,this},r.prototype.edgeCount=function(){return this._edgeCount},r.prototype.edges=function(){return s.values(this._edgeObjs)},r.prototype.setPath=function(e,t){var r=this,n=arguments;return s.reduce(e,function(e,i){return n.length>1?r.setEdge(e,i,t):r.setEdge(e,i),i}),this},r.prototype.setEdge=function(){var e,t,r,i,o=!1;s.isPlainObject(arguments[0])?(e=arguments[0].v,t=arguments[0].w,r=arguments[0].name,2===arguments.length&&(i=arguments[1],o=!0)):(e=arguments[0],t=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),e=""+e,t=""+t,s.isUndefined(r)||(r=""+r);var c=a(this._isDirected,e,t,r);if(s.has(this._edgeLabels,c))return o&&(this._edgeLabels[c]=i),this;if(!s.isUndefined(r)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[c]=o?i:this._defaultEdgeLabelFn(e,t,r);var l=u(this._isDirected,e,t,r);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[c]=l,n(this._preds[t],e),n(this._sucs[e],t),this._in[t][c]=l,this._out[e][c]=l,this._edgeCount++,this},r.prototype.edge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return this._edgeLabels[n]},r.prototype.hasEdge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return s.has(this._edgeLabels,n)},r.prototype.removeEdge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r),u=this._edgeObjs[n];return u&&(e=u.v,t=u.w,delete this._edgeLabels[n],delete this._edgeObjs[n],i(this._preds[t],e),i(this._sucs[e],t),delete this._in[t][n],delete this._out[e][n],this._edgeCount--),this},r.prototype.inEdges=function(e,t){var r=this._in[e];if(r){var n=s.values(r);return t?s.filter(n,function(e){return e.v===t}):n}},r.prototype.outEdges=function(e,t){var r=this._out[e];if(r){var n=s.values(r);return t?s.filter(n,function(e){return e.w===t}):n}},r.prototype.nodeEdges=function(e,t){var r=this.inEdges(e,t);return r?r.concat(this.outEdges(e,t)):void 0}},{"./lodash":75}],73:[function(e,t){t.exports={Graph:e("./graph"),version:e("./version")}},{"./graph":72,"./version":76}],74:[function(e,t){function r(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:n(e),edges:i(e)};return u.isUndefined(e.graph())||(t.value=u.clone(e.graph())),t}function n(e){return u.map(e.nodes(),function(t){var r=e.node(t),n=e.parent(t),i={v:t};return u.isUndefined(r)||(i.value=r),u.isUndefined(n)||(i.parent=n),i})}function i(e){return u.map(e.edges(),function(t){var r=e.edge(t),n={v:t.v,w:t.w};return u.isUndefined(t.name)||(n.name=t.name),u.isUndefined(r)||(n.value=r),n})}function a(e){var t=new o(e.options).setGraph(e.value);return u.each(e.nodes,function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)}),u.each(e.edges,function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)}),t}var u=e("./lodash"),o=e("./graph");t.exports={write:r,read:a}},{"./graph":72,"./lodash":75}],75:[function(e,t){t.exports=e(20)},{lodash:101}],76:[function(e,t){t.exports="1.0.1"},{}],77:[function(e,t,r){arguments[4][57][0].apply(r,arguments)},{"./lib":93,"./lib/alg":84,"./lib/json":94}],78:[function(e,t){t.exports=e(58)},{"../lodash":95}],79:[function(e,t){t.exports=e(59)},{"../lodash":95}],80:[function(e,t){t.exports=e(60)},{"../lodash":95,"./dijkstra":81}],81:[function(e,t){t.exports=e(61)},{"../data/priority-queue":91,"../lodash":95}],82:[function(e,t){t.exports=e(62)},{"../lodash":95,"./tarjan":89}],83:[function(e,t){t.exports=e(63)},{"../lodash":95}],84:[function(e,t,r){arguments[4][64][0].apply(r,arguments)},{"./components":78,"./dijkstra":81,"./dijkstra-all":80,"./find-cycles":82,"./floyd-warshall":83,"./is-acyclic":85,"./postorder":86,"./preorder":87,"./prim":88,"./tarjan":89,"./topsort":90}],85:[function(e,t){t.exports=e(65)},{"./topsort":90}],86:[function(e,t){t.exports=e(66)},{"./dfs":79}],87:[function(e,t){t.exports=e(67)},{"./dfs":79}],88:[function(e,t,r){arguments[4][68][0].apply(r,arguments)},{"../data/priority-queue":91,"../graph":92,"../lodash":95}],89:[function(e,t){t.exports=e(69)},{"../lodash":95}],90:[function(e,t){t.exports=e(70)},{"../lodash":95}],91:[function(e,t){t.exports=e(71)},{"../lodash":95}],92:[function(e,t){"use strict";function r(e){this._isDirected=s.has(e,"directed")?e.directed:!0,this._isMultigraph=s.has(e,"multigraph")?e.multigraph:!1,this._isCompound=s.has(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=s.constant(void 0),this._defaultEdgeLabelFn=s.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[l]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function n(e,t){s.has(e,t)?e[t]++:e[t]=1}function i(e,t){--e[t]||delete e[t]}function a(e,t,r,n){if(!e&&t>r){var i=t;t=r,r=i}return t+h+r+h+(s.isUndefined(n)?c:n)}function u(e,t,r,n){if(!e&&t>r){var i=t;t=r,r=i}var a={v:t,w:r};return n&&(a.name=n),a}function o(e,t){return a(e,t.v,t.w,t.name)}var s=e("./lodash");t.exports=r;var c="\x00",l="\x00",h="";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(e){return this._label=e,this},r.prototype.graph=function(){return this._label},r.prototype.setDefaultNodeLabel=function(e){return s.isFunction(e)||(e=s.constant(e)),this._defaultNodeLabelFn=e,this},r.prototype.nodeCount=function(){return this._nodeCount},r.prototype.nodes=function(){return s.keys(this._nodes)},r.prototype.sources=function(){return s.filter(this.nodes(),function(e){return s.isEmpty(this._in[e])},this)},r.prototype.sinks=function(){return s.filter(this.nodes(),function(e){return s.isEmpty(this._out[e])},this)},r.prototype.setNodes=function(e,t){var r=arguments;return s.each(e,function(e){r.length>1?this.setNode(e,t):this.setNode(e)},this),this},r.prototype.setNode=function(e,t){return s.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=l,this._children[e]={},this._children[l][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)},r.prototype.node=function(e){return this._nodes[e]},r.prototype.hasNode=function(e){return s.has(this._nodes,e)},r.prototype.removeNode=function(e){var t=this;if(s.has(this._nodes,e)){var r=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],s.each(this.children(e),function(e){this.setParent(e)},this),delete this._children[e]),s.each(s.keys(this._in[e]),r),delete this._in[e],delete this._preds[e],s.each(s.keys(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this},r.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(s.isUndefined(t))t=l;else{for(var r=t;!s.isUndefined(r);r=this.parent(r))if(r===e)throw new Error("Setting "+t+" as parent of "+e+" would create create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},r.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},r.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==l)return t}},r.prototype.children=function(e){if(s.isUndefined(e)&&(e=l),this._isCompound){var t=this._children[e];if(t)return s.keys(t)}else{if(e===l)return this.nodes();if(this.hasNode(e))return[]}},r.prototype.predecessors=function(e){var t=this._preds[e];return t?s.keys(t):void 0},r.prototype.successors=function(e){var t=this._sucs[e];return t?s.keys(t):void 0},r.prototype.neighbors=function(e){var t=this.predecessors(e);return t?s.union(t,this.successors(e)):void 0},r.prototype.setDefaultEdgeLabel=function(e){return s.isFunction(e)||(e=s.constant(e)),this._defaultEdgeLabelFn=e,this},r.prototype.edgeCount=function(){return this._edgeCount},r.prototype.edges=function(){return s.values(this._edgeObjs)},r.prototype.setPath=function(e,t){var r=this,n=arguments;return s.reduce(e,function(e,i){return n.length>1?r.setEdge(e,i,t):r.setEdge(e,i),i}),this},r.prototype.setEdge=function(e,t,r,i){var o=arguments.length>2;e=String(e),t=String(t),s.isUndefined(i)||(i=String(i)),s.isPlainObject(arguments[0])&&(e=arguments[0].v,t=arguments[0].w,i=arguments[0].name,2===arguments.length&&(r=arguments[1],o=!0));var c=a(this._isDirected,e,t,i);if(s.has(this._edgeLabels,c))return o&&(this._edgeLabels[c]=r),this;if(!s.isUndefined(i)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[c]=o?r:this._defaultEdgeLabelFn(e,t,i);var l=u(this._isDirected,e,t,i);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[c]=l,n(this._preds[t],e),n(this._sucs[e],t),this._in[t][c]=l,this._out[e][c]=l,this._edgeCount++,this},r.prototype.edge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return this._edgeLabels[n]},r.prototype.hasEdge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return s.has(this._edgeLabels,n)},r.prototype.removeEdge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r),u=this._edgeObjs[n]; return u&&(e=u.v,t=u.w,delete this._edgeLabels[n],delete this._edgeObjs[n],i(this._preds[t],e),i(this._sucs[e],t),delete this._in[t][n],delete this._out[e][n],this._edgeCount--),this},r.prototype.inEdges=function(e,t){var r=this._in[e];if(r){var n=s.values(r);return t?s.filter(n,function(e){return e.v===t}):n}},r.prototype.outEdges=function(e,t){var r=this._out[e];if(r){var n=s.values(r);return t?s.filter(n,function(e){return e.w===t}):n}},r.prototype.nodeEdges=function(e,t){var r=this.inEdges(e,t);return r?r.concat(this.outEdges(e,t)):void 0}},{"./lodash":95}],93:[function(e,t,r){arguments[4][73][0].apply(r,arguments)},{"./graph":92,"./version":96}],94:[function(e,t,r){arguments[4][74][0].apply(r,arguments)},{"./graph":92,"./lodash":95}],95:[function(e,t){t.exports=e(20)},{lodash:101}],96:[function(e,t){t.exports="0.9.1"},{}],97:[function(){},{}],98:[function(e,t,r){(function(e){function t(e,t){for(var r=0,n=e.length-1;n>=0;n--){var i=e[n];"."===i?e.splice(n,1):".."===i?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}function n(e,t){if(e.filter)return e.filter(t);for(var r=[],n=0;n=-1&&!i;a--){var u=a>=0?arguments[a]:e.cwd();if("string"!=typeof u)throw new TypeError("Arguments to path.resolve must be strings");u&&(r=u+"/"+r,i="/"===u.charAt(0))}return r=t(n(r.split("/"),function(e){return!!e}),!i).join("/"),(i?"/":"")+r||"."},r.normalize=function(e){var i=r.isAbsolute(e),a="/"===u(e,-1);return e=t(n(e.split("/"),function(e){return!!e}),!i).join("/"),e||i||(e="."),e&&a&&(e+="/"),(i?"/":"")+e},r.isAbsolute=function(e){return"/"===e.charAt(0)},r.join=function(){var e=Array.prototype.slice.call(arguments,0);return r.normalize(n(e,function(e){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},r.relative=function(e,t){function n(e){for(var t=0;t=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=r.resolve(e).substr(1),t=r.resolve(t).substr(1);for(var i=n(e.split("/")),a=n(t.split("/")),u=Math.min(i.length,a.length),o=u,s=0;u>s;s++)if(i[s]!==a[s]){o=s;break}for(var c=[],s=o;st&&(t=e.length+t),e.substr(t,r)}}).call(this,e("1YiZ5S"))},{"1YiZ5S":99}],99:[function(e,t){function r(){}var n=t.exports={};n.nextTick=function(){var e="undefined"!=typeof window&&window.setImmediate,t="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(e)return function(e){return window.setImmediate(e)};if(t){var r=[];return window.addEventListener("message",function(e){var t=e.source;if((t===window||null===t)&&"process-tick"===e.data&&(e.stopPropagation(),r.length>0)){var n=r.shift();n()}},!0),function(e){r.push(e),window.postMessage("process-tick","*")}}return function(e){setTimeout(e,0)}}(),n.title="browser",n.browser=!0,n.env={},n.argv=[],n.on=r,n.addListener=r,n.once=r,n.off=r,n.removeListener=r,n.removeAllListeners=r,n.emit=r,n.binding=function(){throw new Error("process.binding is not supported")},n.cwd=function(){return"/"},n.chdir=function(){throw new Error("process.chdir is not supported")}},{}],100:[function(e,t,r){(function(e){!function(n){var i="object"==typeof r&&r,a="object"==typeof t&&t&&t.exports==i&&t,u="object"==typeof e&&e;(u.global===u||u.window===u)&&(n=u);var o=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,s=/[\x01-\x7F]/g,c=/[\x01-\t\x0B\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,l=/<\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,h={"Á":"Aacute","á":"aacute","Ă":"Abreve","ă":"abreve","∾":"ac","∿":"acd","∾̳":"acE","Â":"Acirc","â":"acirc","´":"acute","А":"Acy","а":"acy","Æ":"AElig","æ":"aelig","⁡":"af","𝔄":"Afr","𝔞":"afr","À":"Agrave","à":"agrave","ℵ":"aleph","Α":"Alpha","α":"alpha","Ā":"Amacr","ā":"amacr","⨿":"amalg","&":"amp","⩕":"andand","⩓":"And","∧":"and","⩜":"andd","⩘":"andslope","⩚":"andv","∠":"ang","⦤":"ange","⦨":"angmsdaa","⦩":"angmsdab","⦪":"angmsdac","⦫":"angmsdad","⦬":"angmsdae","⦭":"angmsdaf","⦮":"angmsdag","⦯":"angmsdah","∡":"angmsd","∟":"angrt","⊾":"angrtvb","⦝":"angrtvbd","∢":"angsph","Å":"angst","⍼":"angzarr","Ą":"Aogon","ą":"aogon","𝔸":"Aopf","𝕒":"aopf","⩯":"apacir","≈":"ap","⩰":"apE","≊":"ape","≋":"apid","'":"apos","å":"aring","𝒜":"Ascr","𝒶":"ascr","≔":"colone","*":"ast","≍":"CupCap","Ã":"Atilde","ã":"atilde","Ä":"Auml","ä":"auml","∳":"awconint","⨑":"awint","≌":"bcong","϶":"bepsi","‵":"bprime","∽":"bsim","⋍":"bsime","∖":"setmn","⫧":"Barv","⊽":"barvee","⌅":"barwed","⌆":"Barwed","⎵":"bbrk","⎶":"bbrktbrk","Б":"Bcy","б":"bcy","„":"bdquo","∵":"becaus","⦰":"bemptyv","ℬ":"Bscr","Β":"Beta","β":"beta","ℶ":"beth","≬":"twixt","𝔅":"Bfr","𝔟":"bfr","⋂":"xcap","◯":"xcirc","⋃":"xcup","⨀":"xodot","⨁":"xoplus","⨂":"xotime","⨆":"xsqcup","★":"starf","▽":"xdtri","△":"xutri","⨄":"xuplus","⋁":"Vee","⋀":"Wedge","⤍":"rbarr","⧫":"lozf","▪":"squf","▴":"utrif","▾":"dtrif","◂":"ltrif","▸":"rtrif","␣":"blank","▒":"blk12","░":"blk14","▓":"blk34","█":"block","=⃥":"bne","≡⃥":"bnequiv","⫭":"bNot","⌐":"bnot","𝔹":"Bopf","𝕓":"bopf","⊥":"bot","⋈":"bowtie","⧉":"boxbox","┐":"boxdl","╕":"boxdL","╖":"boxDl","╗":"boxDL","┌":"boxdr","╒":"boxdR","╓":"boxDr","╔":"boxDR","─":"boxh","═":"boxH","┬":"boxhd","╤":"boxHd","╥":"boxhD","╦":"boxHD","┴":"boxhu","╧":"boxHu","╨":"boxhU","╩":"boxHU","⊟":"minusb","⊞":"plusb","⊠":"timesb","┘":"boxul","╛":"boxuL","╜":"boxUl","╝":"boxUL","└":"boxur","╘":"boxuR","╙":"boxUr","╚":"boxUR","│":"boxv","║":"boxV","┼":"boxvh","╪":"boxvH","╫":"boxVh","╬":"boxVH","┤":"boxvl","╡":"boxvL","╢":"boxVl","╣":"boxVL","├":"boxvr","╞":"boxvR","╟":"boxVr","╠":"boxVR","˘":"breve","¦":"brvbar","𝒷":"bscr","⁏":"bsemi","⧅":"bsolb","\\":"bsol","⟈":"bsolhsub","•":"bull","≎":"bump","⪮":"bumpE","≏":"bumpe","Ć":"Cacute","ć":"cacute","⩄":"capand","⩉":"capbrcup","⩋":"capcap","∩":"cap","⋒":"Cap","⩇":"capcup","⩀":"capdot","ⅅ":"DD","∩︀":"caps","⁁":"caret","ˇ":"caron","ℭ":"Cfr","⩍":"ccaps","Č":"Ccaron","č":"ccaron","Ç":"Ccedil","ç":"ccedil","Ĉ":"Ccirc","ĉ":"ccirc","∰":"Cconint","⩌":"ccups","⩐":"ccupssm","Ċ":"Cdot","ċ":"cdot","¸":"cedil","⦲":"cemptyv","¢":"cent","·":"middot","𝔠":"cfr","Ч":"CHcy","ч":"chcy","✓":"check","Χ":"Chi","χ":"chi","ˆ":"circ","≗":"cire","↺":"olarr","↻":"orarr","⊛":"oast","⊚":"ocir","⊝":"odash","⊙":"odot","®":"reg","Ⓢ":"oS","⊖":"ominus","⊕":"oplus","⊗":"otimes","○":"cir","⧃":"cirE","⨐":"cirfnint","⫯":"cirmid","⧂":"cirscir","∲":"cwconint","”":"rdquo","’":"rsquo","♣":"clubs",":":"colon","∷":"Colon","⩴":"Colone",",":"comma","@":"commat","∁":"comp","∘":"compfn","ℂ":"Copf","≅":"cong","⩭":"congdot","≡":"equiv","∮":"oint","∯":"Conint","𝕔":"copf","∐":"coprod","©":"copy","℗":"copysr","↵":"crarr","✗":"cross","⨯":"Cross","𝒞":"Cscr","𝒸":"cscr","⫏":"csub","⫑":"csube","⫐":"csup","⫒":"csupe","⋯":"ctdot","⤸":"cudarrl","⤵":"cudarrr","⋞":"cuepr","⋟":"cuesc","↶":"cularr","⤽":"cularrp","⩈":"cupbrcap","⩆":"cupcap","∪":"cup","⋓":"Cup","⩊":"cupcup","⊍":"cupdot","⩅":"cupor","∪︀":"cups","↷":"curarr","⤼":"curarrm","⋎":"cuvee","⋏":"cuwed","¤":"curren","∱":"cwint","⌭":"cylcty","†":"dagger","‡":"Dagger","ℸ":"daleth","↓":"darr","↡":"Darr","⇓":"dArr","‐":"dash","⫤":"Dashv","⊣":"dashv","⤏":"rBarr","˝":"dblac","Ď":"Dcaron","ď":"dcaron","Д":"Dcy","д":"dcy","⇊":"ddarr","ⅆ":"dd","⤑":"DDotrahd","⩷":"eDDot","°":"deg","∇":"Del","Δ":"Delta","δ":"delta","⦱":"demptyv","⥿":"dfisht","𝔇":"Dfr","𝔡":"dfr","⥥":"dHar","⇃":"dharl","⇂":"dharr","˙":"dot","`":"grave","˜":"tilde","⋄":"diam","♦":"diams","¨":"die","ϝ":"gammad","⋲":"disin","÷":"div","⋇":"divonx","Ђ":"DJcy","ђ":"djcy","⌞":"dlcorn","⌍":"dlcrop",$:"dollar","𝔻":"Dopf","𝕕":"dopf","⃜":"DotDot","≐":"doteq","≑":"eDot","∸":"minusd","∔":"plusdo","⊡":"sdotb","⇐":"lArr","⇔":"iff","⟸":"xlArr","⟺":"xhArr","⟹":"xrArr","⇒":"rArr","⊨":"vDash","⇑":"uArr","⇕":"vArr","∥":"par","⤓":"DownArrowBar","⇵":"duarr","̑":"DownBreve","⥐":"DownLeftRightVector","⥞":"DownLeftTeeVector","⥖":"DownLeftVectorBar","↽":"lhard","⥟":"DownRightTeeVector","⥗":"DownRightVectorBar","⇁":"rhard","↧":"mapstodown","⊤":"top","⤐":"RBarr","⌟":"drcorn","⌌":"drcrop","𝒟":"Dscr","𝒹":"dscr","Ѕ":"DScy","ѕ":"dscy","⧶":"dsol","Đ":"Dstrok","đ":"dstrok","⋱":"dtdot","▿":"dtri","⥯":"duhar","⦦":"dwangle","Џ":"DZcy","џ":"dzcy","⟿":"dzigrarr","É":"Eacute","é":"eacute","⩮":"easter","Ě":"Ecaron","ě":"ecaron","Ê":"Ecirc","ê":"ecirc","≖":"ecir","≕":"ecolon","Э":"Ecy","э":"ecy","Ė":"Edot","ė":"edot","ⅇ":"ee","≒":"efDot","𝔈":"Efr","𝔢":"efr","⪚":"eg","È":"Egrave","è":"egrave","⪖":"egs","⪘":"egsdot","⪙":"el","∈":"in","⏧":"elinters","ℓ":"ell","⪕":"els","⪗":"elsdot","Ē":"Emacr","ē":"emacr","∅":"empty","◻":"EmptySmallSquare","▫":"EmptyVerySmallSquare"," ":"emsp13"," ":"emsp14"," ":"emsp","Ŋ":"ENG","ŋ":"eng"," ":"ensp","Ę":"Eogon","ę":"eogon","𝔼":"Eopf","𝕖":"eopf","⋕":"epar","⧣":"eparsl","⩱":"eplus","ε":"epsi","Ε":"Epsilon","ϵ":"epsiv","≂":"esim","⩵":"Equal","=":"equals","≟":"equest","⇌":"rlhar","⩸":"equivDD","⧥":"eqvparsl","⥱":"erarr","≓":"erDot","ℯ":"escr","ℰ":"Escr","⩳":"Esim","Η":"Eta","η":"eta","Ð":"ETH","ð":"eth","Ë":"Euml","ë":"euml","€":"euro","!":"excl","∃":"exist","Ф":"Fcy","ф":"fcy","♀":"female","ffi":"ffilig","ff":"fflig","ffl":"ffllig","𝔉":"Ffr","𝔣":"ffr","fi":"filig","◼":"FilledSmallSquare",fj:"fjlig","♭":"flat","fl":"fllig","▱":"fltns","ƒ":"fnof","𝔽":"Fopf","𝕗":"fopf","∀":"forall","⋔":"fork","⫙":"forkv","ℱ":"Fscr","⨍":"fpartint","½":"half","⅓":"frac13","¼":"frac14","⅕":"frac15","⅙":"frac16","⅛":"frac18","⅔":"frac23","⅖":"frac25","¾":"frac34","⅗":"frac35","⅜":"frac38","⅘":"frac45","⅚":"frac56","⅝":"frac58","⅞":"frac78","⁄":"frasl","⌢":"frown","𝒻":"fscr","ǵ":"gacute","Γ":"Gamma","γ":"gamma","Ϝ":"Gammad","⪆":"gap","Ğ":"Gbreve","ğ":"gbreve","Ģ":"Gcedil","Ĝ":"Gcirc","ĝ":"gcirc","Г":"Gcy","г":"gcy","Ġ":"Gdot","ġ":"gdot","≥":"ge","≧":"gE","⪌":"gEl","⋛":"gel","⩾":"ges","⪩":"gescc","⪀":"gesdot","⪂":"gesdoto","⪄":"gesdotol","⋛︀":"gesl","⪔":"gesles","𝔊":"Gfr","𝔤":"gfr","≫":"gg","⋙":"Gg","ℷ":"gimel","Ѓ":"GJcy","ѓ":"gjcy","⪥":"gla","≷":"gl","⪒":"glE","⪤":"glj","⪊":"gnap","⪈":"gne","≩":"gnE","⋧":"gnsim","𝔾":"Gopf","𝕘":"gopf","⪢":"GreaterGreater","≳":"gsim","𝒢":"Gscr","ℊ":"gscr","⪎":"gsime","⪐":"gsiml","⪧":"gtcc","⩺":"gtcir",">":"gt","⋗":"gtdot","⦕":"gtlPar","⩼":"gtquest","⥸":"gtrarr","≩︀":"gvnE"," ":"hairsp","ℋ":"Hscr","Ъ":"HARDcy","ъ":"hardcy","⥈":"harrcir","↔":"harr","↭":"harrw","^":"Hat","ℏ":"hbar","Ĥ":"Hcirc","ĥ":"hcirc","♥":"hearts","…":"mldr","⊹":"hercon","𝔥":"hfr","ℌ":"Hfr","⤥":"searhk","⤦":"swarhk","⇿":"hoarr","∻":"homtht","↩":"larrhk","↪":"rarrhk","𝕙":"hopf","ℍ":"Hopf","―":"horbar","𝒽":"hscr","Ħ":"Hstrok","ħ":"hstrok","⁃":"hybull","Í":"Iacute","í":"iacute","⁣":"ic","Î":"Icirc","î":"icirc","И":"Icy","и":"icy","İ":"Idot","Е":"IEcy","е":"iecy","¡":"iexcl","𝔦":"ifr","ℑ":"Im","Ì":"Igrave","ì":"igrave","ⅈ":"ii","⨌":"qint","∭":"tint","⧜":"iinfin","℩":"iiota","IJ":"IJlig","ij":"ijlig","Ī":"Imacr","ī":"imacr","ℐ":"Iscr","ı":"imath","⊷":"imof","Ƶ":"imped","℅":"incare","∞":"infin","⧝":"infintie","⊺":"intcal","∫":"int","∬":"Int","ℤ":"Zopf","⨗":"intlarhk","⨼":"iprod","⁢":"it","Ё":"IOcy","ё":"iocy","Į":"Iogon","į":"iogon","𝕀":"Iopf","𝕚":"iopf","Ι":"Iota","ι":"iota","¿":"iquest","𝒾":"iscr","⋵":"isindot","⋹":"isinE","⋴":"isins","⋳":"isinsv","Ĩ":"Itilde","ĩ":"itilde","І":"Iukcy","і":"iukcy","Ï":"Iuml","ï":"iuml","Ĵ":"Jcirc","ĵ":"jcirc","Й":"Jcy","й":"jcy","𝔍":"Jfr","𝔧":"jfr","ȷ":"jmath","𝕁":"Jopf","𝕛":"jopf","𝒥":"Jscr","𝒿":"jscr","Ј":"Jsercy","ј":"jsercy","Є":"Jukcy","є":"jukcy","Κ":"Kappa","κ":"kappa","ϰ":"kappav","Ķ":"Kcedil","ķ":"kcedil","К":"Kcy","к":"kcy","𝔎":"Kfr","𝔨":"kfr","ĸ":"kgreen","Х":"KHcy","х":"khcy","Ќ":"KJcy","ќ":"kjcy","𝕂":"Kopf","𝕜":"kopf","𝒦":"Kscr","𝓀":"kscr","⇚":"lAarr","Ĺ":"Lacute","ĺ":"lacute","⦴":"laemptyv","ℒ":"Lscr","Λ":"Lambda","λ":"lambda","⟨":"lang","⟪":"Lang","⦑":"langd","⪅":"lap","«":"laquo","⇤":"larrb","⤟":"larrbfs","←":"larr","↞":"Larr","⤝":"larrfs","↫":"larrlp","⤹":"larrpl","⥳":"larrsim","↢":"larrtl","⤙":"latail","⤛":"lAtail","⪫":"lat","⪭":"late","⪭︀":"lates","⤌":"lbarr","⤎":"lBarr","❲":"lbbrk","{":"lcub","[":"lsqb","⦋":"lbrke","⦏":"lbrksld","⦍":"lbrkslu","Ľ":"Lcaron","ľ":"lcaron","Ļ":"Lcedil","ļ":"lcedil","⌈":"lceil","Л":"Lcy","л":"lcy","⤶":"ldca","“":"ldquo","⥧":"ldrdhar","⥋":"ldrushar","↲":"ldsh","≤":"le","≦":"lE","⇆":"lrarr","⟦":"lobrk","⥡":"LeftDownTeeVector","⥙":"LeftDownVectorBar","⌊":"lfloor","↼":"lharu","⇇":"llarr","⇋":"lrhar","⥎":"LeftRightVector","↤":"mapstoleft","⥚":"LeftTeeVector","⋋":"lthree","⧏":"LeftTriangleBar","⊲":"vltri","⊴":"ltrie","⥑":"LeftUpDownVector","⥠":"LeftUpTeeVector","⥘":"LeftUpVectorBar","↿":"uharl","⥒":"LeftVectorBar","⪋":"lEg","⋚":"leg","⩽":"les","⪨":"lescc","⩿":"lesdot","⪁":"lesdoto","⪃":"lesdotor","⋚︀":"lesg","⪓":"lesges","⋖":"ltdot","≶":"lg","⪡":"LessLess","≲":"lsim","⥼":"lfisht","𝔏":"Lfr","𝔩":"lfr","⪑":"lgE","⥢":"lHar","⥪":"lharul","▄":"lhblk","Љ":"LJcy","љ":"ljcy","≪":"ll","⋘":"Ll","⥫":"llhard","◺":"lltri","Ŀ":"Lmidot","ŀ":"lmidot","⎰":"lmoust","⪉":"lnap","⪇":"lne","≨":"lnE","⋦":"lnsim","⟬":"loang","⇽":"loarr","⟵":"xlarr","⟷":"xharr","⟼":"xmap","⟶":"xrarr","↬":"rarrlp","⦅":"lopar","𝕃":"Lopf","𝕝":"lopf","⨭":"loplus","⨴":"lotimes","∗":"lowast",_:"lowbar","↙":"swarr","↘":"searr","◊":"loz","(":"lpar","⦓":"lparlt","⥭":"lrhard","‎":"lrm","⊿":"lrtri","‹":"lsaquo","𝓁":"lscr","↰":"lsh","⪍":"lsime","⪏":"lsimg","‘":"lsquo","‚":"sbquo","Ł":"Lstrok","ł":"lstrok","⪦":"ltcc","⩹":"ltcir","<":"lt","⋉":"ltimes","⥶":"ltlarr","⩻":"ltquest","◃":"ltri","⦖":"ltrPar","⥊":"lurdshar","⥦":"luruhar","≨︀":"lvnE","¯":"macr","♂":"male","✠":"malt","⤅":"Map","↦":"map","↥":"mapstoup","▮":"marker","⨩":"mcomma","М":"Mcy","м":"mcy","—":"mdash","∺":"mDDot"," ":"MediumSpace","ℳ":"Mscr","𝔐":"Mfr","𝔪":"mfr","℧":"mho","µ":"micro","⫰":"midcir","∣":"mid","−":"minus","⨪":"minusdu","∓":"mp","⫛":"mlcp","⊧":"models","𝕄":"Mopf","𝕞":"mopf","𝓂":"mscr","Μ":"Mu","μ":"mu","⊸":"mumap","Ń":"Nacute","ń":"nacute","∠⃒":"nang","≉":"nap","⩰̸":"napE","≋̸":"napid","ʼn":"napos","♮":"natur","ℕ":"Nopf"," ":"nbsp","≎̸":"nbump","≏̸":"nbumpe","⩃":"ncap","Ň":"Ncaron","ň":"ncaron","Ņ":"Ncedil","ņ":"ncedil","≇":"ncong","⩭̸":"ncongdot","⩂":"ncup","Н":"Ncy","н":"ncy","–":"ndash","⤤":"nearhk","↗":"nearr","⇗":"neArr","≠":"ne","≐̸":"nedot","​":"ZeroWidthSpace","≢":"nequiv","⤨":"toea","≂̸":"nesim","\n":"NewLine","∄":"nexist","𝔑":"Nfr","𝔫":"nfr","≧̸":"ngE","≱":"nge","⩾̸":"nges","⋙̸":"nGg","≵":"ngsim","≫⃒":"nGt","≯":"ngt","≫̸":"nGtv","↮":"nharr","⇎":"nhArr","⫲":"nhpar","∋":"ni","⋼":"nis","⋺":"nisd","Њ":"NJcy","њ":"njcy","↚":"nlarr","⇍":"nlArr","‥":"nldr","≦̸":"nlE","≰":"nle","⩽̸":"nles","≮":"nlt","⋘̸":"nLl","≴":"nlsim","≪⃒":"nLt","⋪":"nltri","⋬":"nltrie","≪̸":"nLtv","∤":"nmid","⁠":"NoBreak","𝕟":"nopf","⫬":"Not","¬":"not","≭":"NotCupCap","∦":"npar","∉":"notin","≹":"ntgl","⋵̸":"notindot","⋹̸":"notinE","⋷":"notinvb","⋶":"notinvc","⧏̸":"NotLeftTriangleBar","≸":"ntlg","⪢̸":"NotNestedGreaterGreater","⪡̸":"NotNestedLessLess","∌":"notni","⋾":"notnivb","⋽":"notnivc","⊀":"npr","⪯̸":"npre","⋠":"nprcue","⧐̸":"NotRightTriangleBar","⋫":"nrtri","⋭":"nrtrie","⊏̸":"NotSquareSubset","⋢":"nsqsube","⊐̸":"NotSquareSuperset","⋣":"nsqsupe","⊂⃒":"vnsub","⊈":"nsube","⊁":"nsc","⪰̸":"nsce","⋡":"nsccue","≿̸":"NotSucceedsTilde","⊃⃒":"vnsup","⊉":"nsupe","≁":"nsim","≄":"nsime","⫽⃥":"nparsl","∂̸":"npart","⨔":"npolint","⤳̸":"nrarrc","↛":"nrarr","⇏":"nrArr","↝̸":"nrarrw","𝒩":"Nscr","𝓃":"nscr","⊄":"nsub","⫅̸":"nsubE","⊅":"nsup","⫆̸":"nsupE","Ñ":"Ntilde","ñ":"ntilde","Ν":"Nu","ν":"nu","#":"num","№":"numero"," ":"numsp","≍⃒":"nvap","⊬":"nvdash","⊭":"nvDash","⊮":"nVdash","⊯":"nVDash","≥⃒":"nvge",">⃒":"nvgt","⤄":"nvHarr","⧞":"nvinfin","⤂":"nvlArr","≤⃒":"nvle","<⃒":"nvlt","⊴⃒":"nvltrie","⤃":"nvrArr","⊵⃒":"nvrtrie","∼⃒":"nvsim","⤣":"nwarhk","↖":"nwarr","⇖":"nwArr","⤧":"nwnear","Ó":"Oacute","ó":"oacute","Ô":"Ocirc","ô":"ocirc","О":"Ocy","о":"ocy","Ő":"Odblac","ő":"odblac","⨸":"odiv","⦼":"odsold","Œ":"OElig","œ":"oelig","⦿":"ofcir","𝔒":"Ofr","𝔬":"ofr","˛":"ogon","Ò":"Ograve","ò":"ograve","⧁":"ogt","⦵":"ohbar","Ω":"ohm","⦾":"olcir","⦻":"olcross","‾":"oline","⧀":"olt","Ō":"Omacr","ō":"omacr","ω":"omega","Ο":"Omicron","ο":"omicron","⦶":"omid","𝕆":"Oopf","𝕠":"oopf","⦷":"opar","⦹":"operp","⩔":"Or","∨":"or","⩝":"ord","ℴ":"oscr","ª":"ordf","º":"ordm","⊶":"origof","⩖":"oror","⩗":"orslope","⩛":"orv","𝒪":"Oscr","Ø":"Oslash","ø":"oslash","⊘":"osol","Õ":"Otilde","õ":"otilde","⨶":"otimesas","⨷":"Otimes","Ö":"Ouml","ö":"ouml","⌽":"ovbar","⏞":"OverBrace","⎴":"tbrk","⏜":"OverParenthesis","¶":"para","⫳":"parsim","⫽":"parsl","∂":"part","П":"Pcy","п":"pcy","%":"percnt",".":"period","‰":"permil","‱":"pertenk","𝔓":"Pfr","𝔭":"pfr","Φ":"Phi","φ":"phi","ϕ":"phiv","☎":"phone","Π":"Pi","π":"pi","ϖ":"piv","ℎ":"planckh","⨣":"plusacir","⨢":"pluscir","+":"plus","⨥":"plusdu","⩲":"pluse","±":"pm","⨦":"plussim","⨧":"plustwo","⨕":"pointint","𝕡":"popf","ℙ":"Popf","£":"pound","⪷":"prap","⪻":"Pr","≺":"pr","≼":"prcue","⪯":"pre","≾":"prsim","⪹":"prnap","⪵":"prnE","⋨":"prnsim","⪳":"prE","′":"prime","″":"Prime","∏":"prod","⌮":"profalar","⌒":"profline","⌓":"profsurf","∝":"prop","⊰":"prurel","𝒫":"Pscr","𝓅":"pscr","Ψ":"Psi","ψ":"psi"," ":"puncsp","𝔔":"Qfr","𝔮":"qfr","𝕢":"qopf","ℚ":"Qopf","⁗":"qprime","𝒬":"Qscr","𝓆":"qscr","⨖":"quatint","?":"quest",'"':"quot","⇛":"rAarr","∽̱":"race","Ŕ":"Racute","ŕ":"racute","√":"Sqrt","⦳":"raemptyv","⟩":"rang","⟫":"Rang","⦒":"rangd","⦥":"range","»":"raquo","⥵":"rarrap","⇥":"rarrb","⤠":"rarrbfs","⤳":"rarrc","→":"rarr","↠":"Rarr","⤞":"rarrfs","⥅":"rarrpl","⥴":"rarrsim","⤖":"Rarrtl","↣":"rarrtl","↝":"rarrw","⤚":"ratail","⤜":"rAtail","∶":"ratio","❳":"rbbrk","}":"rcub","]":"rsqb","⦌":"rbrke","⦎":"rbrksld","⦐":"rbrkslu","Ř":"Rcaron","ř":"rcaron","Ŗ":"Rcedil","ŗ":"rcedil","⌉":"rceil","Р":"Rcy","р":"rcy","⤷":"rdca","⥩":"rdldhar","↳":"rdsh","ℜ":"Re","ℛ":"Rscr","ℝ":"Ropf","▭":"rect","⥽":"rfisht","⌋":"rfloor","𝔯":"rfr","⥤":"rHar","⇀":"rharu","⥬":"rharul","Ρ":"Rho","ρ":"rho","ϱ":"rhov","⇄":"rlarr","⟧":"robrk","⥝":"RightDownTeeVector","⥕":"RightDownVectorBar","⇉":"rrarr","⊢":"vdash","⥛":"RightTeeVector","⋌":"rthree","⧐":"RightTriangleBar","⊳":"vrtri","⊵":"rtrie","⥏":"RightUpDownVector","⥜":"RightUpTeeVector","⥔":"RightUpVectorBar","↾":"uharr","⥓":"RightVectorBar","˚":"ring","‏":"rlm","⎱":"rmoust","⫮":"rnmid","⟭":"roang","⇾":"roarr","⦆":"ropar","𝕣":"ropf","⨮":"roplus","⨵":"rotimes","⥰":"RoundImplies",")":"rpar","⦔":"rpargt","⨒":"rppolint","›":"rsaquo","𝓇":"rscr","↱":"rsh","⋊":"rtimes","▹":"rtri","⧎":"rtriltri","⧴":"RuleDelayed","⥨":"ruluhar","℞":"rx","Ś":"Sacute","ś":"sacute","⪸":"scap","Š":"Scaron","š":"scaron","⪼":"Sc","≻":"sc","≽":"sccue","⪰":"sce","⪴":"scE","Ş":"Scedil","ş":"scedil","Ŝ":"Scirc","ŝ":"scirc","⪺":"scnap","⪶":"scnE","⋩":"scnsim","⨓":"scpolint","≿":"scsim","С":"Scy","с":"scy","⋅":"sdot","⩦":"sdote","⇘":"seArr","§":"sect",";":"semi","⤩":"tosa","✶":"sext","𝔖":"Sfr","𝔰":"sfr","♯":"sharp","Щ":"SHCHcy","щ":"shchcy","Ш":"SHcy","ш":"shcy","↑":"uarr","­":"shy","Σ":"Sigma","σ":"sigma","ς":"sigmaf","∼":"sim","⩪":"simdot","≃":"sime","⪞":"simg","⪠":"simgE","⪝":"siml","⪟":"simlE","≆":"simne","⨤":"simplus","⥲":"simrarr","⨳":"smashp","⧤":"smeparsl","⌣":"smile","⪪":"smt","⪬":"smte","⪬︀":"smtes","Ь":"SOFTcy","ь":"softcy","⌿":"solbar","⧄":"solb","/":"sol","𝕊":"Sopf","𝕤":"sopf","♠":"spades","⊓":"sqcap","⊓︀":"sqcaps","⊔":"sqcup","⊔︀":"sqcups","⊏":"sqsub","⊑":"sqsube","⊐":"sqsup","⊒":"sqsupe","□":"squ","𝒮":"Sscr","𝓈":"sscr","⋆":"Star","☆":"star","⊂":"sub","⋐":"Sub","⪽":"subdot","⫅":"subE","⊆":"sube","⫃":"subedot","⫁":"submult","⫋":"subnE","⊊":"subne","⪿":"subplus","⥹":"subrarr","⫇":"subsim","⫕":"subsub","⫓":"subsup","∑":"sum","♪":"sung","¹":"sup1","²":"sup2","³":"sup3","⊃":"sup","⋑":"Sup","⪾":"supdot","⫘":"supdsub","⫆":"supE","⊇":"supe","⫄":"supedot","⟉":"suphsol","⫗":"suphsub","⥻":"suplarr","⫂":"supmult","⫌":"supnE","⊋":"supne","⫀":"supplus","⫈":"supsim","⫔":"supsub","⫖":"supsup","⇙":"swArr","⤪":"swnwar","ß":"szlig"," ":"Tab","⌖":"target","Τ":"Tau","τ":"tau","Ť":"Tcaron","ť":"tcaron","Ţ":"Tcedil","ţ":"tcedil","Т":"Tcy","т":"tcy","⃛":"tdot","⌕":"telrec","𝔗":"Tfr","𝔱":"tfr","∴":"there4","Θ":"Theta","θ":"theta","ϑ":"thetav","  ":"ThickSpace"," ":"thinsp","Þ":"THORN","þ":"thorn","⨱":"timesbar","×":"times","⨰":"timesd","⌶":"topbot","⫱":"topcir","𝕋":"Topf","𝕥":"topf","⫚":"topfork","‴":"tprime","™":"trade","▵":"utri","≜":"trie","◬":"tridot","⨺":"triminus","⨹":"triplus","⧍":"trisb","⨻":"tritime","⏢":"trpezium","𝒯":"Tscr","𝓉":"tscr","Ц":"TScy","ц":"tscy","Ћ":"TSHcy","ћ":"tshcy","Ŧ":"Tstrok","ŧ":"tstrok","Ú":"Uacute","ú":"uacute","↟":"Uarr","⥉":"Uarrocir","Ў":"Ubrcy","ў":"ubrcy","Ŭ":"Ubreve","ŭ":"ubreve","Û":"Ucirc","û":"ucirc","У":"Ucy","у":"ucy","⇅":"udarr","Ű":"Udblac","ű":"udblac","⥮":"udhar","⥾":"ufisht","𝔘":"Ufr","𝔲":"ufr","Ù":"Ugrave","ù":"ugrave","⥣":"uHar","▀":"uhblk","⌜":"ulcorn","⌏":"ulcrop","◸":"ultri","Ū":"Umacr","ū":"umacr","⏟":"UnderBrace","⏝":"UnderParenthesis","⊎":"uplus","Ų":"Uogon","ų":"uogon","𝕌":"Uopf","𝕦":"uopf","⤒":"UpArrowBar","↕":"varr","υ":"upsi","ϒ":"Upsi","Υ":"Upsilon","⇈":"uuarr","⌝":"urcorn","⌎":"urcrop","Ů":"Uring","ů":"uring","◹":"urtri","𝒰":"Uscr","𝓊":"uscr","⋰":"utdot","Ũ":"Utilde","ũ":"utilde","Ü":"Uuml","ü":"uuml","⦧":"uwangle","⦜":"vangrt","⊊︀":"vsubne","⫋︀":"vsubnE","⊋︀":"vsupne","⫌︀":"vsupnE","⫨":"vBar","⫫":"Vbar","⫩":"vBarv","В":"Vcy","в":"vcy","⊩":"Vdash","⊫":"VDash","⫦":"Vdashl","⊻":"veebar","≚":"veeeq","⋮":"vellip","|":"vert","‖":"Vert","❘":"VerticalSeparator","≀":"wr","𝔙":"Vfr","𝔳":"vfr","𝕍":"Vopf","𝕧":"vopf","𝒱":"Vscr","𝓋":"vscr","⊪":"Vvdash","⦚":"vzigzag","Ŵ":"Wcirc","ŵ":"wcirc","⩟":"wedbar","≙":"wedgeq","℘":"wp","𝔚":"Wfr","𝔴":"wfr","𝕎":"Wopf","𝕨":"wopf","𝒲":"Wscr","𝓌":"wscr","𝔛":"Xfr","𝔵":"xfr","Ξ":"Xi","ξ":"xi","⋻":"xnis","𝕏":"Xopf","𝕩":"xopf","𝒳":"Xscr","𝓍":"xscr","Ý":"Yacute","ý":"yacute","Я":"YAcy","я":"yacy","Ŷ":"Ycirc","ŷ":"ycirc","Ы":"Ycy","ы":"ycy","¥":"yen","𝔜":"Yfr","𝔶":"yfr","Ї":"YIcy","ї":"yicy","𝕐":"Yopf","𝕪":"yopf","𝒴":"Yscr","𝓎":"yscr","Ю":"YUcy","ю":"yucy","ÿ":"yuml","Ÿ":"Yuml","Ź":"Zacute","ź":"zacute","Ž":"Zcaron","ž":"zcaron","З":"Zcy","з":"zcy","Ż":"Zdot","ż":"zdot","ℨ":"Zfr","Ζ":"Zeta","ζ":"zeta","𝔷":"zfr","Ж":"ZHcy","ж":"zhcy","⇝":"zigrarr","𝕫":"zopf","𝒵":"Zscr","𝓏":"zscr","‍":"zwj","‌":"zwnj"},d=/["&'<>`]/g,p={'"':""","&":"&","'":"'","<":"<",">":">","`":"`"},f=/&#(?:[xX][^a-fA-F0-9]|[^0-9xX])/,g=/[\0-\x08\x0B\x0E-\x1F\x7F-\x9F\uFDD0-\uFDEF\uFFFE\uFFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDFFE\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,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:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"⁡",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",amp:"&",AMP:"&",andand:"⩕",And:"⩓",and:"∧",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angmsd:"∡",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",apacir:"⩯",ap:"≈",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"⁡",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",barwed:"⌅",Barwed:"⌆",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",Because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxdl:"┐",boxdL:"╕",boxDl:"╖",boxDL:"╗",boxdr:"┌",boxdR:"╒",boxDr:"╓",boxDR:"╔",boxh:"─",boxH:"═",boxhd:"┬",boxHd:"╤",boxhD:"╥",boxHD:"╦",boxhu:"┴",boxHu:"╧",boxhU:"╨",boxHU:"╩",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxuL:"╛",boxUl:"╜",boxUL:"╝",boxur:"└",boxuR:"╘",boxUr:"╙",boxUR:"╚",boxv:"│",boxV:"║",boxvh:"┼",boxvH:"╪",boxVh:"╫",boxVH:"╬",boxvl:"┤",boxvL:"╡",boxVl:"╢",boxVL:"╣",boxvr:"├",boxvR:"╞",boxVr:"╟",boxVR:"╠",bprime:"‵",breve:"˘",Breve:"˘",brvbar:"¦",bscr:"𝒷",Bscr:"ℬ",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsolb:"⧅",bsol:"\\",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",capand:"⩄",capbrcup:"⩉",capcap:"⩋",cap:"∩",Cap:"⋒",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",CenterDot:"·",cfr:"𝔠",Cfr:"ℭ",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cir:"○",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",colon:":",Colon:"∷",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",conint:"∮",Conint:"∯",ContourIntegral:"∮",copf:"𝕔",Copf:"ℂ",coprod:"∐",Coproduct:"∐",copy:"©",COPY:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",cross:"✗",Cross:"⨯",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cupbrcap:"⩈",cupcap:"⩆",CupCap:"≍",cup:"∪",Cup:"⋓",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dagger:"†",Dagger:"‡",daleth:"ℸ",darr:"↓",Darr:"↡",dArr:"⇓",dash:"‐",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",ddagger:"‡",ddarr:"⇊",DD:"ⅅ",dd:"ⅆ",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",diamond:"⋄",Diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrowBar:"⤓",downarrow:"↓",DownArrow:"↓",Downarrow:"⇓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVectorBar:"⥖",DownLeftVector:"↽",DownRightTeeVector:"⥟",DownRightVectorBar:"⥗",DownRightVector:"⇁",DownTeeArrow:"↧",DownTee:"⊤",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",Ecirc:"Ê",ecirc:"ê",ecir:"≖",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",edot:"ė",eDot:"≑",ee:"ⅇ",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp13:" ",emsp14:" ",emsp:" ",ENG:"Ŋ",eng:"ŋ",ensp:" ",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",escr:"ℯ",Escr:"ℰ",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",exponentiale:"ⅇ",ExponentialE:"ⅇ",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",forall:"∀",ForAll:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",Fscr:"ℱ",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",ge:"≥",gE:"≧",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",gescc:"⪩",ges:"⩾",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",gg:"≫",Gg:"⋙",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gla:"⪥",gl:"≷",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gnE:"≩",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",gtcc:"⪧",gtcir:"⩺",gt:">",GT:">",Gt:"≫",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",HARDcy:"Ъ",hardcy:"ъ",harrcir:"⥈",harr:"↔",hArr:"⇔",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",Hfr:"ℌ",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",Hopf:"ℍ",horbar:"―",HorizontalLine:"─",hscr:"𝒽",Hscr:"ℋ",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",Iacute:"Í",iacute:"í",ic:"⁣",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",ifr:"𝔦",Ifr:"ℑ",Igrave:"Ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Imacr:"Ī",imacr:"ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",Im:"ℑ",imof:"⊷",imped:"Ƶ",Implies:"⇒",incare:"℅","in":"∈",infin:"∞",infintie:"⧝",inodot:"ı",intcal:"⊺","int":"∫",Int:"∬",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"⁣",InvisibleTimes:"⁢",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",Iscr:"ℐ",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",Lambda:"Λ",lambda:"λ",lang:"⟨",Lang:"⟪",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",larrb:"⇤",larrbfs:"⤟",larr:"←",Larr:"↞",lArr:"⇐",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",latail:"⤙",lAtail:"⤛",lat:"⪫",late:"⪭",lates:"⪭︀",lbarr:"⤌",lBarr:"⤎",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",lE:"≦",LeftAngleBracket:"⟨",LeftArrowBar:"⇤",leftarrow:"←",LeftArrow:"←",Leftarrow:"⇐",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVectorBar:"⥙",LeftDownVector:"⇃",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTeeArrow:"↤",LeftTee:"⊣",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangleBar:"⧏",LeftTriangle:"⊲",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVectorBar:"⥘",LeftUpVector:"↿",LeftVectorBar:"⥒",LeftVector:"↼",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",lescc:"⪨",les:"⩽",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",llarr:"⇇",ll:"≪",Ll:"⋘",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoustache:"⎰",lmoust:"⎰",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lnE:"≨",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftrightarrow:"⟷",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longmapsto:"⟼",longrightarrow:"⟶",LongRightArrow:"⟶",Longrightarrow:"⟹",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",Lscr:"ℒ",lsh:"↰",Lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",Lstrok:"Ł",lstrok:"ł",ltcc:"⪦",ltcir:"⩹",lt:"<",LT:"<",Lt:"≪",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",midast:"*",midcir:"⫰",mid:"∣",middot:"·",minusb:"⊟",minus:"−",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",mscr:"𝓂",Mscr:"ℳ",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natural:"♮",naturals:"ℕ",natur:"♮",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"–",nearhk:"⤤",nearr:"↗",neArr:"⇗",nearrow:"↗",ne:"≠",nedot:"≐̸",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:"\n",nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nharr:"↮",nhArr:"⇎",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlarr:"↚",nlArr:"⇍",nldr:"‥",nlE:"≦̸",nle:"≰",nleftarrow:"↚",nLeftarrow:"⇍",nleftrightarrow:"↮",nLeftrightarrow:"⇎",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"⁠",NonBreakingSpace:" ",nopf:"𝕟",Nopf:"ℕ",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangleBar:"⧏̸",NotLeftTriangle:"⋪",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangleBar:"⧐̸",NotRightTriangle:"⋫",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",nparallel:"∦",npar:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",nprec:"⊀",npreceq:"⪯̸",npre:"⪯̸",nrarrc:"⤳̸",nrarr:"↛",nrArr:"⇏",nrarrw:"↝̸",nrightarrow:"↛",nRightarrow:"⇏",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwarr:"↖",nwArr:"⇖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",Ocirc:"Ô",ocirc:"ô",ocir:"⊚",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",orarr:"↻",Or:"⩔",or:"∨",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",otimesas:"⨶",Otimes:"⨷",otimes:"⊗",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",para:"¶",parallel:"∥",par:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plus:"+",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",popf:"𝕡",Popf:"ℙ",pound:"£",prap:"⪷",Pr:"⪻",pr:"≺",prcue:"≼",precapprox:"⪷",prec:"≺",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",pre:"⪯",prE:"⪳",precsim:"≾",prime:"′",Prime:"″",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportional:"∝",Proportion:"∷",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:" ",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",qopf:"𝕢",Qopf:"ℚ",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',QUOT:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",Rang:"⟫",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarr:"→",Rarr:"↠",rArr:"⇒",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",ratail:"⤚",rAtail:"⤜",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rBarr:"⤏",RBarr:"⤐",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",Re:"ℜ",rect:"▭",reg:"®",REG:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",Rfr:"ℜ",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrowBar:"⇥",rightarrow:"→",RightArrow:"→",Rightarrow:"⇒",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVectorBar:"⥕",RightDownVector:"⇂",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTeeArrow:"↦",RightTee:"⊢",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangleBar:"⧐",RightTriangle:"⊳",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVectorBar:"⥔",RightUpVector:"↾",RightVectorBar:"⥓",RightVector:"⇀",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoustache:"⎱",rmoust:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",Ropf:"ℝ",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",rscr:"𝓇",Rscr:"ℛ",rsh:"↱",Rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"‚",scap:"⪸",Scaron:"Š",scaron:"š",Sc:"⪼",sc:"≻",sccue:"≽",sce:"⪰",scE:"⪴",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdotb:"⊡",sdot:"⋅",sdote:"⩦",searhk:"⤥",searr:"↘",seArr:"⇘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"­",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",solbar:"⌿",solb:"⧄",sol:"/",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",square:"□",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squ:"□",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",Sub:"⋐",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",Subset:"⋐",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succapprox:"⪸",succ:"≻",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",sum:"∑",Sum:"∑",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",sup:"⊃",Sup:"⋑",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",Supset:"⋑",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swarr:"↙",swArr:"⇙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:" ",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",therefore:"∴",Therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:"  ",ThinSpace:" ",thinsp:" ",thkap:"≈",thksim:"∼",THORN:"Þ",thorn:"þ",tilde:"˜",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",timesbar:"⨱",timesb:"⊠",times:"×",timesd:"⨰",tint:"∭",toea:"⤨",topbot:"⌶",topcir:"⫱",top:"⊤",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",TRADE:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",uarr:"↑",Uarr:"↟",uArr:"⇑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrowBar:"⤒",uparrow:"↑",UpArrow:"↑",Uparrow:"⇑",UpArrowDownArrow:"⇅",updownarrow:"↕",UpDownArrow:"↕",Updownarrow:"⇕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",upsi:"υ",Upsi:"ϒ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTeeArrow:"↥",UpTee:"⊥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",vArr:"⇕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vBar:"⫨",Vbar:"⫫",vBarv:"⫩",Vcy:"В",vcy:"в",vdash:"⊢",vDash:"⊨",Vdash:"⊩",VDash:"⊫",Vdashl:"⫦",veebar:"⊻",vee:"∨",Vee:"⋁",veeeq:"≚",vellip:"⋮",verbar:"|",Verbar:"‖",vert:"|",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",Wedge:"⋀",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xharr:"⟷",xhArr:"⟺",Xi:"Ξ",xi:"ξ",xlarr:"⟵",xlArr:"⟸",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrarr:"⟶",xrArr:"⟹",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",yuml:"ÿ",Yuml:"Ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"ℨ",ZeroWidthSpace:"​",Zeta:"Ζ",zeta:"ζ",zfr:"𝔷",Zfr:"ℨ",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",Zopf:"ℤ",Zscr:"𝒵",zscr:"𝓏",zwj:"‍",zwnj:"‌"},v={Aacute:"Á",aacute:"á",Acirc:"Â",acirc:"â",acute:"´",AElig:"Æ",aelig:"æ",Agrave:"À",agrave:"à",amp:"&",AMP:"&",Aring:"Å",aring:"å",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",brvbar:"¦",Ccedil:"Ç",ccedil:"ç",cedil:"¸",cent:"¢",copy:"©",COPY:"©",curren:"¤",deg:"°",divide:"÷",Eacute:"É",eacute:"é",Ecirc:"Ê",ecirc:"ê",Egrave:"È",egrave:"è",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",frac12:"½",frac14:"¼",frac34:"¾",gt:">",GT:">",Iacute:"Í",iacute:"í",Icirc:"Î",icirc:"î",iexcl:"¡",Igrave:"Ì",igrave:"ì",iquest:"¿",Iuml:"Ï",iuml:"ï",laquo:"«",lt:"<",LT:"<",macr:"¯",micro:"µ",middot:"·",nbsp:" ",not:"¬",Ntilde:"Ñ",ntilde:"ñ",Oacute:"Ó",oacute:"ó",Ocirc:"Ô",ocirc:"ô",Ograve:"Ò",ograve:"ò",ordf:"ª",ordm:"º",Oslash:"Ø",oslash:"ø",Otilde:"Õ",otilde:"õ",Ouml:"Ö",ouml:"ö",para:"¶",plusmn:"±",pound:"£",quot:'"',QUOT:'"',raquo:"»",reg:"®",REG:"®",sect:"§",shy:"­",sup1:"¹",sup2:"²",sup3:"³",szlig:"ß",THORN:"Þ",thorn:"þ",times:"×",Uacute:"Ú",uacute:"ú",Ucirc:"Û",ucirc:"û",Ugrave:"Ù",ugrave:"ù",uml:"¨",Uuml:"Ü",uuml:"ü",Yacute:"Ý",yacute:"ý",yen:"¥",yuml:"ÿ"},b={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"},A=[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],E=String.fromCharCode,x={},w=x.hasOwnProperty,_=function(e,t){return w.call(e,t) },D=function(e,t){for(var r=-1,n=e.length;++r=55296&&57343>=e||e>1114111?(t&&B("character reference outside the permissible Unicode range"),"�"):_(b,e)?(t&&B("disallowed character reference"),b[e]):(t&&D(A,e)&&B("disallowed character reference"),e>65535&&(e-=65536,r+=E(e>>>10&1023|55296),e=56320|1023&e),r+=E(e))},F=function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"},B=function(e){throw Error("Parse error: "+e)},T=function(e,t){t=k(t,T.options);var r=t.strict;r&&g.test(e)&&B("forbidden code point");var n=t.encodeEverything,i=t.useNamedReferences,a=t.allowUnsafeSymbols;return n?(e=e.replace(s,function(e){return i&&_(h,e)?"&"+h[e]+";":F(e)}),i&&(e=e.replace(/>\u20D2/g,">⃒").replace(/<\u20D2/g,"<⃒").replace(/fj/g,"fj")),i&&(e=e.replace(l,function(e){return"&"+h[e]+";"}))):i?(a||(e=e.replace(d,function(e){return"&"+h[e]+";"})),e=e.replace(/>\u20D2/g,">⃒").replace(/<\u20D2/g,"<⃒"),e=e.replace(l,function(e){return"&"+h[e]+";"})):a||(e=e.replace(d,F)),e.replace(o,function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1),n=1024*(t-55296)+r-56320+65536;return"&#x"+n.toString(16).toUpperCase()+";"}).replace(c,F)};T.options={allowUnsafeSymbols:!1,encodeEverything:!1,strict:!1,useNamedReferences:!1};var S=function(e,t){t=k(t,S.options);var r=t.strict;return r&&f.test(e)&&B("malformed character reference"),e.replace(y,function(e,n,i,a,u,o,s,c){var l,h,d,p,f;return n?(l=n,h=i,r&&!h&&B("character reference was not terminated by a semicolon"),C(l,r)):a?(d=a,h=u,r&&!h&&B("character reference was not terminated by a semicolon"),l=parseInt(d,16),C(l,r)):o?(p=o,_(m,p)?m[p]:(r&&B("named character reference was not terminated by a semicolon"),e)):(p=s,f=c,f&&t.isAttributeValue?(r&&"="==f&&B("`&` did not start a character reference"),e):(r&&B("named character reference was not terminated by a semicolon"),v[p]+(f||"")))})};S.options={isAttributeValue:!1,strict:!1};var L=function(e){return e.replace(d,function(e){return p[e]})},N={version:"0.5.0",encode:T,decode:S,escape:L,unescape:S};if("function"==typeof define&&"object"==typeof define.amd&&define.amd)define(function(){return N});else if(i&&!i.nodeType)if(a)a.exports=N;else for(var q in N)_(N,q)&&(i[q]=N[q]);else n.he=N}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],101:[function(e,t,r){(function(e){(function(){function n(e,t,r){for(var n=(r||0)-1,i=e?e.length:0;++n-1?0:-1:e?0:-1}function a(e){var t=this.cache,r=typeof e;if("boolean"==r||null==e)t[e]=!0;else{"number"!=r&&"string"!=r&&(r="object");var n="number"==r?e:A+e,i=t[r]||(t[r]={});"object"==r?(i[n]||(i[n]=[])).push(e):i[n]=!0}}function u(e){return e.charCodeAt(0)}function o(e,t){for(var r=e.criteria,n=t.criteria,i=-1,a=r.length;++io||"undefined"==typeof u)return 1;if(o>u||"undefined"==typeof o)return-1}}return e.index-t.index}function s(e){var t=-1,r=e.length,n=e[0],i=e[r/2|0],u=e[r-1];if(n&&"object"==typeof n&&i&&"object"==typeof i&&u&&"object"==typeof u)return!1;var o=h();o["false"]=o["null"]=o["true"]=o.undefined=!1;var s=h();for(s.array=e,s.cache=o,s.push=a;++ti?0:i);++n=E&&a===n,c=[];if(o){var l=s(t);l?(a=i,t=l):o=!1}for(;++r-1:void 0});return i.pop(),a.pop(),v&&(d(i),d(a)),u}function tt(e,t,r,n,i){(Jn(t)?Kt:si)(t,function(t,a){var u,o,s=t,c=e[a];if(t&&((o=Jn(t))||ci(t))){for(var l=n.length;l--;)if(u=n[l]==t){c=i[l];break}if(!u){var h;r&&(s=r(c,t),(h="undefined"!=typeof s)&&(c=s)),h||(c=o?Jn(c)?c:[]:ci(c)?c:{}),n.push(t),i.push(c),h||tt(c,t,r,n,i)}}else r&&(s=r(c,t),"undefined"==typeof s&&(s=t)),"undefined"!=typeof s&&(c=s);e[a]=c})}function nt(e,t){return e+Sn(Wn()*(t-e+1))}function it(e,t,r){var a=-1,u=st(),o=e?e.length:0,c=[],h=!t&&o>=E&&u===n,f=r||h?l():c;if(h){var g=s(f);u=i,f=g}for(;++a3&&"function"==typeof t[r-2])var n=x(t[--r-1],t[r--],2);else r>2&&"function"==typeof t[r-1]&&(n=t[--r]);for(var i=f(arguments,1,r),a=-1,u=l(),o=l();++ar?Hn(0,a+r):r)||0,Jn(e)?u=i(e,t,r)>-1:"number"==typeof a?u=(It(e)?e.indexOf(t,r):i(e,t,r))>-1:si(e,function(e){return++n>=r?!(u=e===t):void 0}),u}function Yt(e,r,n){var i=!0;r=t.createCallback(r,n,3);var a=-1,u=e?e.length:0;if("number"==typeof u)for(;++aa&&(a=c)}else r=null==r&&It(e)?u:t.createCallback(r,n,3),Kt(e,function(e,t,n){var u=r(e,t,n);u>i&&(i=u,a=e)});return a}function tr(e,r,n){var i=1/0,a=i;if("function"!=typeof r&&n&&n[r]===e&&(r=null),null==r&&Jn(e))for(var o=-1,s=e.length;++oc&&(a=c)}else r=null==r&&It(e)?u:t.createCallback(r,n,3),Kt(e,function(e,t,n){var u=r(e,t,n);i>u&&(i=u,a=e)});return a}function rr(e,r,n,i){if(!e)return n;var a=arguments.length<3;r=t.createCallback(r,i,4);var u=-1,o=e.length;if("number"==typeof o)for(a&&(n=e[++u]);++ur?Hn(0,i+r):r||0}else if(r){var a=kr(e,t);return e[a]===t?a:-1}return n(e,t,r)}function vr(e,r,n){var i=0,a=e?e.length:0;if("number"!=typeof r&&null!=r){var u=a;for(r=t.createCallback(r,n,3);u--&&r(e[u],u,e);)i++}else i=null==r||n?1:r||i;return f(e,0,Yn(Hn(0,a-i),a))}function br(){for(var e=[],t=-1,r=arguments.length,a=l(),u=st(),o=u===n,c=l();++t=E&&s(t?e[t]:c)))}var f=e[0],g=-1,y=f?f.length:0,m=[];e:for(;++gr?Hn(0,n+r):Yn(r,n-1))+1);n--;)if(e[n]===t)return n;return-1}function xr(e){for(var t=arguments,r=0,n=t.length,i=e?e.length:0;++ra;){var o=a+u>>>1;n(e[o])1?arguments:arguments[0],t=-1,r=e?er(pi(e,"length")):0,n=fn(0>r?0:r);++t2?ut(e,17,f(arguments,2),null,t):ut(e,1,null,null,t)}function Ir(e){for(var t=arguments.length>1?Q(arguments,!0,!1,1):At(e),r=-1,n=t.length;++r2?ut(t,19,f(arguments,2),null,e):ut(t,3,null,null,e)}function Rr(){for(var e=arguments,t=e.length;t--;)if(!Bt(e[t]))throw new wn;return function(){for(var t=arguments,r=e.length;r--;)t=[e[r].apply(this,t)];return t[0]}}function Pr(e,t){return t="number"==typeof t?t:+t||e.length,ut(e,4,null,null,null,t)}function Mr(e,t,r){var n,i,a,u,o,s,c,l=0,h=!1,d=!0;if(!Bt(e))throw new wn;if(t=Hn(0,t)||0,r===!0){var p=!0;d=!1}else Tt(r)&&(p=r.leading,h="maxWait"in r&&(Hn(t,r.maxWait)||0),d="trailing"in r?r.trailing:d);var f=function(){var r=t-(gi()-u);if(0>=r){i&&Tn(i);var h=c;i=s=c=y,h&&(l=gi(),a=e.apply(o,n),s||i||(n=o=null))}else s=On(f,r)},g=function(){s&&Tn(s),i=s=c=y,(d||h!==t)&&(l=gi(),a=e.apply(o,n),s||i||(n=o=null))};return function(){if(n=arguments,u=gi(),o=this,c=d&&(s||!p),h===!1)var r=p&&!s;else{i||p||(l=u);var y=h-(u-l),m=0>=y;m?(i&&(i=Tn(i)),l=u,a=e.apply(o,n)):i||(i=On(g,y))}return m&&s?s=Tn(s):s||t===h||(s=On(f,t)),r&&(m=!0,a=e.apply(o,n)),!m||s||i||(n=o=null),a}}function jr(e){if(!Bt(e))throw new wn;var t=f(arguments,1);return On(function(){e.apply(y,t)},1)}function Vr(e,t){if(!Bt(e))throw new wn;var r=f(arguments,2);return On(function(){e.apply(y,r)},t)}function Ur(e,t){if(!Bt(e))throw new wn;var r=function(){var n=r.cache,i=t?t.apply(this,arguments):A+arguments[0];return qn.call(n,i)?n[i]:n[i]=e.apply(this,arguments)};return r.cache={},r}function Gr(e){var t,r;if(!Bt(e))throw new wn;return function(){return t?r:(t=!0,r=e.apply(this,arguments),e=null,r)}}function $r(e){return ut(e,16,f(arguments,1))}function Hr(e){return ut(e,32,null,f(arguments,1))}function Yr(e,t,r){var n=!0,i=!0;if(!Bt(e))throw new wn;return r===!1?n=!1:Tt(r)&&(n="leading"in r?r.leading:n,i="trailing"in r?r.trailing:i),z.leading=n,z.maxWait=t,z.trailing=i,Mr(e,t,z)}function zr(e,t){return ut(t,16,[e])}function Wr(e){return function(){return e}}function Zr(e,t,r){var n=typeof e;if(null==e||"function"==n)return x(e,t,r);if("object"!=n)return tn(e);var i=ei(e),a=i[0],u=e[a];return 1!=i.length||u!==u||Tt(u)?function(t){for(var r=i.length,n=!1;r--&&(n=et(t[i[r]],e[i[r]],null,!0)););return n}:function(e){var t=e[a];return u===t&&(0!==u||1/u==1/t)}}function Kr(e){return null==e?"":xn(e).replace(ii,ot)}function Xr(e){return e}function Jr(e,n,i){var a=!0,u=n&&At(n);n&&(i||u.length)||(null==i&&(i=n),o=r,n=e,e=t,u=At(n)),i===!1?a=!1:Tt(i)&&"chain"in i&&(a=i.chain);var o=e,s=Bt(o);Kt(u,function(t){var r=e[t]=n[t];s&&(o.prototype[t]=function(){var t=this.__chain__,n=this.__wrapped__,i=[n];In.apply(i,arguments);var u=r.apply(e,i);if(a||t){if(n===u&&Tt(u))return this;u=new o(u),u.__chain__=t}return u})})}function Qr(){return e._=kn,this}function en(){}function tn(e){return function(t){return t[e]}}function rn(e,t,r){var n=null==e,i=null==t;if(null==r&&("boolean"==typeof e&&i?(r=e,e=1):i||"boolean"!=typeof t||(r=t,i=!0)),n&&i&&(t=1),e=+e||0,i?(t=e,e=0):t=+t||0,r||e%1||t%1){var a=Wn();return Yn(e+a*(t-e+parseFloat("1e-"+((a+"").length-1))),t)}return nt(e,t)}function nn(e,t){if(e){var r=e[t];return Bt(r)?e[t]():r}}function an(e,r,n){var i=t.templateSettings;e=xn(e||""),n=ui({},n,i);var a,u=ui({},n.imports,i.imports),o=ei(u),s=Gt(u),l=0,h=n.interpolate||L,d="__p += '",p=En((n.escape||L).source+"|"+h.source+"|"+(h===T?C:L).source+"|"+(n.evaluate||L).source+"|$","g");e.replace(p,function(t,r,n,i,u,o){return n||(n=i),d+=e.slice(l,o).replace(q,c),r&&(d+="' +\n__e("+r+") +\n'"),u&&(a=!0,d+="';\n"+u+";\n__p += '"),n&&(d+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),l=o+t.length,t}),d+="';\n";var f=n.variable,g=f;g||(f="obj",d="with ("+f+") {\n"+d+"\n}\n"),d=(a?d.replace(_,""):d).replace(D,"$1").replace(k,"$1;"),d="function("+f+") {\n"+(g?"":f+" || ("+f+" = {});\n")+"var __t, __p = '', __e = _.escape"+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var m="\n/*\n//# sourceURL="+(n.sourceURL||"/lodash/template/source["+O++ +"]")+"\n*/";try{var v=mn(o,"return "+d+m).apply(y,s)}catch(b){throw b.source=d,b}return r?v(r):(v.source=d,v)}function un(e,t,r){e=(e=+e)>-1?e:0;var n=-1,i=fn(e);for(t=x(t,r,1);++n/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:T,variable:"",imports:{_:t}},jn||(v=function(){function t(){}return function(r){if(Tt(r)){t.prototype=r;var n=new t;t.prototype=null}return n||e.Object()}}());var Xn=Mn?function(e,t){W.value=t,Mn(e,"__bindData__",W)}:en,Jn=Vn||function(e){return e&&"object"==typeof e&&"number"==typeof e.length&&Cn.call(e)==P||!1},Qn=function(e){var t,r=e,n=[];if(!r)return n;if(!Z[typeof e])return n;for(t in r)qn.call(r,t)&&n.push(t);return n},ei=$n?function(e){return Tt(e)?$n(e):[]}:Qn,ti={"&":"&","<":"<",">":">",'"':""","'":"'"},ri=xt(ti),ni=En("("+ei(ri).join("|")+")","g"),ii=En("["+ei(ti).join("")+"]","g"),ai=function(e,t,r){var n,i=e,a=i;if(!i)return a;var u=arguments,o=0,s="number"==typeof r?2:u.length;if(s>3&&"function"==typeof u[s-2])var c=x(u[--s-1],u[s--],2);else s>2&&"function"==typeof u[s-1]&&(c=u[--s]);for(;++o/g,S=RegExp("^["+w+"]*0+(?=.$)"),L=/($^)/,N=/\bthis\b/,q=/['\n\r\t\u2028\u2029\\]/g,I=["Array","Boolean","Date","Function","Math","Number","Object","RegExp","String","_","attachEvent","clearTimeout","isFinite","isNaN","parseInt","setTimeout"],O=0,R="[object Arguments]",P="[object Array]",M="[object Boolean]",j="[object Date]",V="[object Function]",U="[object Number]",G="[object Object]",$="[object RegExp]",H="[object String]",Y={};Y[V]=!1,Y[R]=Y[P]=Y[M]=Y[j]=Y[U]=Y[G]=Y[$]=Y[H]=!0;var z={leading:!1,maxWait:0,trailing:!1},W={configurable:!1,enumerable:!1,value:null,writable:!1},Z={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},K={"\\":"\\","'":"'","\n":"n","\r":"r"," ":"t","\u2028":"u2028","\u2029":"u2029"},X=Z[typeof window]&&window||this,J=Z[typeof r]&&r&&!r.nodeType&&r,Q=Z[typeof t]&&t&&!t.nodeType&&t,et=Q&&Q.exports===J&&J,tt=Z[typeof e]&&e;!tt||tt.global!==tt&&tt.window!==tt||(X=tt);var rt=g();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(X._=rt,define(function(){return rt})):J&&Q?et?(Q.exports=rt)._=rt:J._=rt:X._=rt}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],102:[function(e,t){t.exports={name:"mermaid",version:"0.3.1",description:"Markdownish syntax for generating flowcharts",main:"src/main.js",bin:{mermaid:"./bin/mermaid.js"},scripts:{test:"gulp test"},repository:{type:"git",url:"https://github.com/knsv/mermaid"},author:"",license:"MIT",dependencies:{chalk:"^0.5.1","dagre-d3":"~0.3.2",he:"^0.5.0",minimist:"^1.1.0",mkdirp:"^0.5.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",d3:"~3.4.13","dagre-d3":"~0.3.2","event-stream":"^3.2.0",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-hogan":"^1.1.0","gulp-istanbul":"^0.4.0","gulp-jasmine":"~1.0.1","gulp-jison":"~1.0.0","gulp-jshint":"^1.9.0","gulp-less":"^1.3.6","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.12",rewire:"^2.1.3",rimraf:"^2.2.8","semantic-ui":"^1.4.1",tape:"^3.0.3"}} -},{}],103:[function(e,t,r){var n=e("./graphDb"),i=e("./parser/flow"),a=e("./parser/dot"),u=e("dagre-d3");r.addVertices=function(e,t){var r=Object.keys(e),n=function(e,t){var r;for(r=0;r0&&(u=a.classes.join(" "));var o="";o=n(o,a.styles),i="undefined"==typeof a.text?a.id:a.text;var s=0,c="";switch(a.type){case"round":s=5,c="rect";break;case"square":c="rect";break;case"diamond":c="question";break;case"odd":c="rect_left_inv_arrow";break;case"circle":c="circle";break;default:c="rect"}t.setNode(a.id,{labelType:"html",shape:c,label:i,rx:s,ry:s,"class":u,style:o,id:a.id})})},r.addEdges=function(e,t){var r,n=0;e.forEach(function(e){n++,r="arrow_open"===e.type?"none":"normal";var i="";"undefined"!=typeof e.style&&e.style.forEach(function(e){i=i+e+";"}),"undefined"==typeof e.text?"undefined"==typeof e.style?t.setEdge(e.start,e.end,{style:"stroke: #333; stroke-width: 1.5px;fill:none",arrowheadStyle:"fill: #333",arrowhead:r},n):t.setEdge(e.start,e.end,{style:i,arrowheadStyle:"fill: #333",arrowhead:r},n):"undefined"==typeof e.style?t.setEdge(e.start,e.end,{labelType:"html",style:"stroke: #333; stroke-width: 1.5px;fill:none",labelpos:"c",label:''+e.text+"",arrowheadStyle:"fill: #333",arrowhead:r},n):t.setEdge(e.start,e.end,{labelType:"html",style:i,arrowheadStyle:"fill: #333",label:e.text,arrowhead:r},n)})},r.getClasses=function(e,t){var r;n.clear(),r=t?a.parser:i.parser,r.yy=n,r.parse(e);var u=n.getClasses();return"undefined"==typeof u.default&&(u.default={id:"default"},u.default.styles=["fill:#eaeaea","stroke:#666","stroke-width:1.5px"]),u},r.draw=function(e,t,o){var s;n.clear(),s=o?a.parser:i.parser,s.yy=n,s.parse(e);var c;c=n.getDirection(),"undefined"==typeof c&&(c="TD");var l=new u.graphlib.Graph({multigraph:!0}).setGraph({rankdir:c,marginx:20,marginy:20}).setDefaultEdgeLabel(function(){return{}}),h=n.getVertices(),d=n.getEdges();r.addVertices(h,l),r.addEdges(d,l);var p=new u.render;p.shapes().question=function(e,t,r){var n=t.width,i=t.height,a=.8*(n+i),o=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}],s=e.insert("polygon",":first-child").attr("points",o.map(function(e){return e.x+","+e.y}).join(" ")).attr("rx",5).attr("ry",5).attr("transform","translate("+-a/2+","+2*a/4+")");return r.intersect=function(e){return u.intersect.polygon(r,o,e)},s},p.shapes().rect_left_inv_arrow=function(e,t,r){var n=t.width,i=t.height,a=[{x:-i/2,y:0},{x:n,y:0},{x:n,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}],o=e.insert("polygon",":first-child").attr("points",a.map(function(e){return e.x+","+e.y}).join(" ")).attr("transform","translate("+-n/2+","+2*i/4+")");return r.intersect=function(e){return u.intersect.polygon(r,a,e)},o},p.arrows().none=function(e,t,r,n){var i=e.append("marker").attr("id",t).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");u.util.applyStyle(a,r[n+"Style"])};var f=d3.select("#"+t);svgGroup=d3.select("#"+t+" g"),p(d3.select("#"+t+" g"),l);var g=document.querySelector("#mermaidChart0");f.attr("height",l.graph().height),f.attr("width",l.graph().width),f.attr("viewBox",g.getBBox().x+" 0 "+l.graph().width+" "+l.graph().height)}},{"./graphDb":104,"./parser/dot":105,"./parser/flow":106,"dagre-d3":1}],104:[function(require,module,exports){var vertices={},edges=[],classes=[],direction,funs=[];exports.addVertex=function(e,t,r,n){"undefined"!=typeof e&&0!==e.trim().length&&("undefined"==typeof vertices[e]&&(vertices[e]={id:e,styles:[],classes:[]}),"undefined"!=typeof t&&(vertices[e].text=t),"undefined"!=typeof r&&(vertices[e].type=r),"undefined"!=typeof r&&(vertices[e].type=r),"undefined"!=typeof n&&null!==n&&n.forEach(function(t){vertices[e].styles.push(t)}))},exports.addLink=function(e,t,r,n){var i={start:e,end:t,type:void 0,text:""};n=r.text,"undefined"!=typeof n&&(i.text=n),"undefined"!=typeof r&&(i.type=r.type),edges.push(i)},exports.updateLink=function(e,t){e.substr(1);edges[e].style=t},exports.addClass=function(e,t){"undefined"==typeof classes[e]&&(classes[e]={id:e,styles:[]}),"undefined"!=typeof t&&null!==t&&t.forEach(function(t){classes[e].styles.push(t)})},exports.setDirection=function(e){direction=e},exports.setClass=function(e,t){e.indexOf(",")>0?e.split(",").forEach(function(e){"undefined"!=typeof vertices[e]&&vertices[e].classes.push(t)}):"undefined"!=typeof vertices[e]&&vertices[e].classes.push(t)},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(e){e()})},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=[],funs=[]},exports.defaultStyle=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}},{}],105:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[1,5],n=[1,6],i=[1,12],a=[1,13],u=[1,14],o=[1,15],s=[1,16],c=[1,17],l=[1,18],h=[1,19],d=[1,20],p=[1,21],f=[1,22],g=[8,16,17,18,19,20,21,22,23,24,25,26],y=[1,37],m=[1,33],v=[1,34],b=[1,35],A=[1,36],E=[8,10,16,17,18,19,20,21,22,23,24,25,26,28,32,37,39,40,45,57,58],x=[10,28],w=[10,28,37,57,58],_=[2,49],D=[1,45],k=[1,48],C=[1,49],F=[1,52],B=[2,65],T=[1,65],S=[1,66],L=[1,67],N=[1,68],q=[1,69],I=[1,70],O=[1,71],R=[1,72],P=[1,73],M=[8,16,17,18,19,20,21,22,23,24,25,26,47],j=[10,28,37],V={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(e,t,r,n,i,a){var u=a.length-1;switch(i){case 1:this.$=a[u-1];break;case 2:this.$=a[u-4];break;case 3:this.$=a[u-5];break;case 4:this.$=a[u-3];break;case 8:case 10:case 11:this.$=a[u];break;case 9:this.$=a[u-1]+""+a[u];break;case 12:case 13:case 14:case 15:case 16:case 18:case 19:case 20:this.$=a[u];break;case 17:this.$="
";break;case 39:this.$="oy";break;case 40:n.addLink(a[u-1],a[u].id,a[u].op),this.$="oy";break;case 42:n.addLink(a[u-1],a[u].id,a[u].op),this.$={op:a[u-2],id:a[u-1]};break;case 44:this.$={op:a[u-1],id:a[u]};break;case 48:n.addVertex(a[u-1]),this.$=a[u-1];break;case 49:n.addVertex(a[u]),this.$=a[u];break;case 66:this.$="arrow";break;case 67:this.$="arrow_open"}},table:[{3:1,4:2,6:3,11:[1,4],12:r,13:n},{1:[3]},{5:[1,7]},{7:8,8:[1,9],14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{6:23,12:r,13:n},t(g,[2,5]),t(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:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},t([8,10,28,32,37,39,40,45,57,58],[2,7],{15:38,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f}),t(E,[2,8]),t(E,[2,10]),t(E,[2,11]),t(E,[2,12]),t(E,[2,13]),t(E,[2,14]),t(E,[2,15]),t(E,[2,16]),t(E,[2,17]),t(E,[2,18]),t(E,[2,19]),t(E,[2,20]),{7:39,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{7:30,8:y,9:40,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,41]},{10:[2,21],28:[1,42]},t(x,[2,23]),t(x,[2,24]),t(x,[2,25]),t(w,_,{44:44,32:[1,43],45:D}),t(x,[2,27],{41:46,43:47,57:k,58:C}),t(x,[2,47],{43:47,34:50,41:51,37:F,57:k,58:C}),{34:53,37:F},{34:54,37:F},{34:55,37:F},{7:56,8:[1,57],14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{7:30,8:y,9:58,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},t(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:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{7:62,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},t(w,[2,48]),t(w,B,{14:10,15:11,7:63,46:64,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,48:T,49:S,50:L,51:N,52:q,53:I,54:O,55:R,56:P}),t(x,[2,41],{34:74,37:F}),{7:77,8:y,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,33:76,42:75,47:A},t(M,[2,66]),t(M,[2,67]),t(x,[2,46]),t(x,[2,40],{34:78,37:F}),{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,38:79,39:[1,80]},t(x,[2,28]),t(x,[2,29]),t(x,[2,30]),{8:[1,82]},{7:30,8:y,9:83,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,84]},{7:30,8:y,9:85,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{5:[2,2]},{10:[2,22]},t(x,[2,26]),t(w,[2,51],{45:[1,86]}),t(w,[2,52]),t(w,[2,56]),t(w,[2,57]),t(w,[2,58]),t(w,[2,59]),t(w,[2,60]),t(w,[2,61]),t(w,[2,62]),t(w,[2,63]),t(w,[2,64]),t(x,[2,38]),t(j,[2,44],{43:47,41:87,57:k,58:C}),t(j,[2,45],{43:47,41:88,57:k,58:C}),t(w,_,{44:44,45:D}),t(x,[2,39]),{39:[1,89]},t(x,[2,34],{34:90,37:F}),{32:[1,91]},{7:30,8:y,9:92,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,93]},t(w,[2,55]),{10:[1,94]},t(w,B,{46:95,48:T,49:S,50:L,51:N,52:q,53:I,54:O,55:R,56:P}),t(j,[2,42]),t(j,[2,43]),t(x,[2,33],{34:96,37:F}),t(x,[2,32]),{7:97,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{10:[1,98]},t(w,[2,54]),{5:[2,3]},t(w,[2,50]),t(x,[2,31]),{28:[1,99],39:[2,37],40:[1,100]},t(w,[2,53]),{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,38:101},{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,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(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},U=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,r,n){switch(r){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 e}();return V.lexer=U,e.prototype=V,V.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],106:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[1,7],n=[1,8],i=[1,18],a=[1,19],u=[1,20],o=[1,21],s=[1,22],c=[1,27],l=[1,16],h=[1,29],d=[1,26],p=[1,28],f=[1,34],g=[1,33],y=[1,30],m=[1,31],v=[1,32],b=[1,6],A=[53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],E=[1,46],x=[1,45],w=[1,44],_=[6,16,17],D=[1,56],k=[1,57],C=[1,58],F=[1,59],B=[6,16,17,43,44,45,46,47],T=[6,9,12,13,16,17,31,34,36,43,44,45,46,47],S=[6,9,12,13,16,17,31,34,36,43,44,45,46,47,62,65,67,68,70,71,73,74,75],L=[6,8,9,10,12,13,16,17,31,33,34,35,36,37,40,43,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],N=[1,6,9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],q=[1,111],I=[1,103],O=[1,112],R=[1,86],P=[1,85],M=[1,101],j=[1,90],V=[1,91],U=[1,88],G=[1,89],$=[1,92],H=[1,93],Y=[1,104],z=[1,97],W=[1,98],Z=[1,96],K=[1,99],X=[1,87],J=[1,106],Q=[1,107],et=[1,108],tt=[1,109],rt=[1,110],nt=[1,94],it=[1,95],at=[1,100],ut=[62,65,67,68,70,71,73,74,75],ot=[9,48,62,65,67,68,70,71,73,74,75],st=[1,136],ct=[1,133],lt=[1,134],ht=[8,9,10,12,13,16,17,31,33,34,35,36,37,40,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],dt=[2,99],pt=[2,101],ft=[8,9,10,12,13,33,35,37,40,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75],gt=[9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],yt=[1,170],mt=[1,167],vt=[1,171],bt=[1,168],At=[1,165],Et=[1,166],xt=[1,169],wt=[1,172],_t=[1,173],Dt=[8,9,10,12,13,40,53,54,55,56,57,62,65,67,68,70,71,73,74,75],kt=[2,44],Ct=[1,185],Ft=[6,16,17,65],Bt=[6,9,16,17,40,61,62,65,67,68,69,70,71],Tt={trace:function(){},yy:{},symbols_:{error:2,expressions:3,graphConfig:4,statements:5,EOF:6,spaceListNewline:7,GRAPH:8,SPACE:9,DIR:10,FirstStmtSeperator:11,TAGEND:12,TAGSTART:13,UP:14,DOWN:15,SEMI:16,NEWLINE:17,spaceList:18,statement:19,commentStatement:20,verticeStatement:21,separator:22,styleStatement:23,linkStyleStatement:24,classDefStatement:25,classStatement:26,clickStatement:27,vertex:28,link:29,alphaNum:30,SQS:31,text:32,SQE:33,PS:34,PE:35,DIAMOND_START:36,DIAMOND_STOP:37,alphaNumStatement:38,alphaNumToken:39,MINUS:40,linkStatement:41,arrowText:42,"--":43,ARROW_POINT:44,ARROW_CIRCLE:45,ARROW_CROSS:46,ARROW_OPEN:47,PIPE:48,textToken:49,commentText:50,commentToken:51,keywords:52,STYLE:53,LINKSTYLE:54,CLASSDEF:55,CLASS:56,CLICK:57,textNoTags:58,textNoTagsToken:59,stylesOpt:60,HEX:61,NUM:62,PCT:63,style:64,COMMA:65,styleComponent:66,ALPHA:67,COLON:68,UNIT:69,BRKT:70,DOT:71,graphCodeTokens:72,PLUS:73,EQUALS:74,MULT:75,TAG_START:76,TAG_END:77,QUOTE:78,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",8:"GRAPH",9:"SPACE",10:"DIR",12:"TAGEND",13:"TAGSTART",14:"UP",15:"DOWN",16:"SEMI",17:"NEWLINE",31:"SQS",33:"SQE",34:"PS",35:"PE",36:"DIAMOND_START",37:"DIAMOND_STOP",40:"MINUS",43:"--",44:"ARROW_POINT",45:"ARROW_CIRCLE",46:"ARROW_CROSS",47:"ARROW_OPEN",48:"PIPE",53:"STYLE",54:"LINKSTYLE",55:"CLASSDEF",56:"CLASS",57:"CLICK",61:"HEX",62:"NUM",63:"PCT",65:"COMMA",67:"ALPHA",68:"COLON",69:"UNIT",70:"BRKT",71:"DOT",73:"PLUS",74:"EQUALS",75:"MULT",76:"TAG_START",77:"TAG_END",78:"QUOTE"},productions_:[0,[3,3],[3,2],[3,4],[3,3],[4,4],[4,4],[4,4],[4,4],[4,4],[11,1],[11,1],[11,2],[5,3],[5,2],[5,1],[7,2],[7,2],[7,1],[7,1],[18,2],[18,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[22,1],[22,1],[22,1],[21,3],[21,1],[28,4],[28,5],[28,6],[28,7],[28,4],[28,5],[28,4],[28,5],[28,4],[28,5],[28,4],[28,1],[28,2],[30,1],[30,2],[38,1],[38,3],[29,2],[29,3],[29,1],[29,2],[29,5],[29,6],[41,1],[41,1],[41,1],[41,1],[42,3],[32,1],[32,2],[50,1],[50,2],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[58,1],[58,2],[25,5],[26,5],[27,5],[23,5],[23,5],[24,5],[20,3],[60,1],[60,3],[64,1],[64,2],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[51,1],[51,1],[49,1],[49,1],[49,1],[59,1],[59,1],[59,1],[59,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1]],performAction:function(e,t,r,n,i,a){var u=a.length-1;switch(i){case 3:this.$=a[u-3];break;case 4:this.$=a[u-2];break;case 5:n.setDirection(a[u-1]),this.$=a[u-1];break;case 6:n.setDirection("LR"),this.$=a[u-1];break;case 7:n.setDirection("RL"),this.$=a[u-1];break;case 8:n.setDirection("BT"),this.$=a[u-1];break;case 9:n.setDirection("TB"),this.$=a[u-1];break;case 32:n.addLink(a[u-2],a[u],a[u-1]),this.$="oy";break;case 33:this.$="yo";break;case 34:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"square");break;case 35:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"square");break;case 36:this.$=a[u-5],n.addVertex(a[u-5],a[u-2],"circle");break;case 37:this.$=a[u-6],n.addVertex(a[u-6],a[u-3],"circle");break;case 38:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"round");break;case 39:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"round");break;case 40:case 44:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"diamond");break;case 41:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"diamond");break;case 42:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"odd");break;case 43:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"odd");break;case 45:this.$=a[u],n.addVertex(a[u]);break;case 46:this.$=a[u-1],n.addVertex(a[u-1]);break;case 47:case 49:case 62:case 64:case 73:this.$=a[u];break;case 48:case 63:case 65:case 74:this.$=a[u-1]+""+a[u];break;case 50:this.$=a[u-2]+"-"+a[u];break;case 51:a[u-1].text=a[u],this.$=a[u-1];break;case 52:a[u-2].text=a[u-1],this.$=a[u-2];break;case 53:this.$=a[u];break;case 54:case 61:this.$=a[u-1];break;case 55:a[u].text=a[u-2],this.$=a[u];break;case 56:a[u-1].text=a[u-3],this.$=a[u-1];break;case 57:this.$={type:"arrow"};break;case 58:this.$={type:"arrow_circle"};break;case 59:this.$={type:"arrow_cross"};break;case 60:this.$={type:"arrow_open"};break;case 75:this.$=a[u-4],n.addClass(a[u-2],a[u]);break;case 76:this.$=a[u-4],n.setClass(a[u-2],a[u]);break;case 77:this.$=a[u-4],n.setClickEvent(a[u-2],a[u]);break;case 78:this.$=a[u-4],n.addVertex(a[u-2],void 0,void 0,a[u]);break;case 79:case 80:this.$=a[u-4],n.updateLink(a[u-2],a[u]);break;case 82:this.$=[a[u]];break;case 83:a[u-2].push(a[u]),this.$=a[u-2];break;case 85:this.$=a[u-1]+a[u]}},table:[{3:1,4:2,8:[1,3]},{1:[3]},{5:4,7:5,9:r,17:n,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:i,54:a,55:u,56:o,57:s,62:c,63:l,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{9:[1,35]},{1:[2,2],6:[1,36]},{5:37,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:i,54:a,55:u,56:o,57:s,62:c,63:l,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(b,[2,15],{19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,7:38,5:39,9:r,17:n,53:i,54:a,55:u,56:o,57:s,62:c,63:l,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v}),t(A,[2,19],{7:40,9:r,17:n}),t(A,[2,18],{7:41,9:r,17:n}),{17:[1,42]},{6:E,16:x,17:w,22:43},{6:E,16:x,17:w,22:47},{6:E,16:x,17:w,22:48},{6:E,16:x,17:w,22:49},{6:E,16:x,17:w,22:50},{6:E,16:x,17:w,22:51},{63:[1,52]},t(_,[2,33],{29:53,41:54,43:[1,55],44:D,45:k,46:C,47:F}),{9:[1,60]},{9:[1,61]},{9:[1,62]},{9:[1,63]},{9:[1,64]},t(B,[2,45],{9:[1,70],12:[1,68],13:[1,69],31:[1,65],34:[1,66],36:[1,67]}),t(T,[2,47],{38:24,39:25,30:71,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v}),t(S,[2,49],{40:[1,72]}),t(L,[2,104]),t(L,[2,105]),t(L,[2,106]),t(L,[2,107]),t(L,[2,108]),t(L,[2,109]),t(L,[2,110]),t(L,[2,111]),t(L,[2,112]),{10:[1,73],12:[1,74],13:[1,75],14:[1,76],15:[1,77]},{1:[2,1]},{1:[2,4],6:[1,78]},{5:79,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:i,54:a,55:u,56:o,57:s,62:c,63:l,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(b,[2,14]),t(A,[2,16]),t(A,[2,17]),t(N,[2,22]),t(N,[2,23]),t(N,[2,29]),t(N,[2,30]),t(N,[2,31]),t(N,[2,24]),t(N,[2,25]),t(N,[2,26]),t(N,[2,27]),t(N,[2,28]),{8:q,9:I,10:O,12:R,13:P,16:M,31:j,33:V,34:U,35:G,36:$,37:H,39:102,40:Y,44:z,45:W,46:Z,47:K,48:X,49:82,50:80,51:81,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,72:83,73:y,74:m,75:v,76:nt,77:it,78:at},{28:113,30:23,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(ut,[2,53],{42:114,9:[1,115],48:[1,116]}),{9:[1,117]},t(ot,[2,57]),t(ot,[2,58]),t(ot,[2,59]),t(ot,[2,60]),{30:118,38:24,39:25,61:[1,119],62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{62:[1,120]},{30:121,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{30:122,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{30:123,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:124,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:127,34:[1,126],39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:128,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:129,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:130,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(B,[2,46]),t(T,[2,48]),{39:131,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{9:st,11:132,16:ct,17:lt,18:135},{9:st,11:137,16:ct,17:lt,18:135},{9:st,11:138,16:ct,17:lt,18:135},{9:st,11:139,16:ct,17:lt,18:135},{9:st,11:140,16:ct,17:lt,18:135},{1:[2,3]},t(b,[2,13]),{8:q,9:I,10:O,12:R,13:P,16:M,17:[2,81],31:j,33:V,34:U,35:G,36:$,37:H,39:102,40:Y,44:z,45:W,46:Z,47:K,48:X,49:82,51:141,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,72:83,73:y,74:m,75:v,76:nt,77:it,78:at},t(ht,[2,64]),t(ht,[2,95]),t(ht,[2,96]),t(ht,[2,97]),t(ht,[2,98]),t(ht,dt),t(ht,[2,113]),t(ht,[2,114]),t(ht,[2,115]),t(ht,[2,116]),t(ht,[2,117]),t(ht,[2,118]),t(ht,[2,119]),t(ht,[2,120]),t(ht,[2,121]),t(ht,[2,122]),t(ht,[2,123]),t(ht,[2,124]),t(ht,[2,125]),t(ht,[2,126]),t(ht,[2,127]),t(ht,[2,100]),t(ht,pt),t(ht,[2,102]),t(ht,[2,103]),t(ht,[2,66]),t(ht,[2,67]),t(ht,[2,68]),t(ht,[2,69]),t(ht,[2,70]),t(ht,[2,71]),t(ht,[2,72]),t(_,[2,32]),t(ut,[2,51],{9:[1,142]}),t(ut,[2,54]),{8:q,9:I,10:O,12:R,13:P,32:143,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:144,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{9:[1,145]},{9:[1,146]},{9:[1,147]},{9:[1,148]},{9:[1,149]},{9:[1,150]},{8:q,9:I,10:O,12:R,13:P,33:[1,151],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(ft,[2,62]),{8:q,9:I,10:O,12:R,13:P,32:153,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,35:[1,154],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,37:[1,155],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,33:[1,156],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:[1,157],13:P,39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(S,[2,50]),t(gt,[2,5]),t(gt,[2,10]),t(gt,[2,11]),{17:[1,158]},{9:st,17:[2,21],18:159},t(gt,[2,6]),t(gt,[2,7]),t(gt,[2,8]),t(gt,[2,9]),t(ht,[2,65]),t(ut,[2,52]),{8:q,9:I,10:O,12:R,13:P,39:102,40:Y,48:[1,160],49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:[1,161],10:O,12:R,13:P,39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{9:yt,40:mt,60:162,61:vt,62:bt,64:163,66:164,67:At,68:Et,69:xt,70:wt,71:_t},{9:yt,40:mt,60:174,61:vt,62:bt,64:163,66:164,67:At,68:Et,69:xt,70:wt,71:_t},{9:yt,40:mt,60:175,61:vt,62:bt,64:163,66:164,67:At,68:Et,69:xt,70:wt,71:_t},{9:yt,40:mt,60:176,61:vt,62:bt,64:163,66:164,67:At,68:Et,69:xt,70:wt,71:_t},{30:177,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{30:178,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(B,[2,34],{9:[1,179]}),t(ft,[2,63]),{8:q,9:I,10:O,12:R,13:P,35:[1,180],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(B,[2,38],{9:[1,181]}),t(B,[2,40],{9:[1,182]}),t(B,[2,42],{9:[1,183]}),t(Dt,dt,{6:kt,16:kt,17:kt,43:kt,44:kt,45:kt,46:kt,47:kt}),t(gt,[2,12]),{17:[2,20]},t([9,62,65,67,68,70,71,73,74,75],[2,61]),t(Dt,pt,{41:184,44:D,45:k,46:C,47:F}),t(_,[2,78],{65:Ct}),t(Ft,[2,82],{66:186,9:yt,40:mt,61:vt,62:bt,67:At,68:Et,69:xt,70:wt,71:_t}),t(Bt,[2,84]),t(Bt,[2,86]),t(Bt,[2,87]),t(Bt,[2,88]),t(Bt,[2,89]),t(Bt,[2,90]),t(Bt,[2,91]),t(Bt,[2,92]),t(Bt,[2,93]),t(Bt,[2,94]),t(_,[2,79],{65:Ct}),t(_,[2,80],{65:Ct}),t(_,[2,75],{65:Ct}),t(_,[2,76]),t(_,[2,77]),t(B,[2,35]),{35:[1,187]},t(B,[2,39]),t(B,[2,41]),t(B,[2,43]),t(ut,[2,55],{9:[1,188]}),{9:yt,40:mt,61:vt,62:bt,64:189,66:164,67:At,68:Et,69:xt,70:wt,71:_t},t(Bt,[2,85]),t(B,[2,36],{9:[1,190]}),t(ut,[2,56]),t(Ft,[2,83],{66:186,9:yt,40:mt,61:vt,62:bt,67:At,68:Et,69:xt,70:wt,71:_t}),t(B,[2,37])],defaultActions:{36:[2,1],78:[2,3],159:[2,20]},parseError:function(e,t){if(!t.recoverable)throw new Error(e); -this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},St=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,r,n){switch(r){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:return 57;case 5:return 8;case 6:return 10;case 7:return 10;case 8:return 10;case 9:return 10;case 10:return 10;case 11:return 10;case 12:return 62;case 13:return 70;case 14:return 68;case 15:return 16;case 16:return 65;case 17:return 74;case 18:return 75;case 19:return 71;case 20:return 13;case 21:return 12;case 22:return 14;case 23:return 15;case 24:return 46;case 25:return 44;case 26:return 45;case 27:return 47;case 28:return 43;case 29:return 40;case 30:return 73;case 31:return 63;case 32:return 74;case 33:return 67;case 34:return 48;case 35:return 34;case 36:return 35;case 37:return 31;case 38:return 33;case 39:return 36;case 40:return 37;case 41:return 78;case 42:return 17;case 43:return 9;case 44:return 6}},rules:[/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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:{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,43,44],inclusive:!0}}};return e}();return Tt.lexer=St,e.prototype=Tt,Tt.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],107:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[6,8,10,11,15,17,19,20,22,33],n=[2,2],i=[1,6],a=[1,8],u=[1,9],o=[1,12],s=[1,13],c=[1,14],l=[1,15],h=[1,17],d=[1,18],p=[2,7],f=[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],b={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(e,t,r,n,i,a){var u=a.length-1;switch(i){case 1:return n.apply(a[u-1]),a[u-1];case 2:this.$=[];break;case 3:a[u-1].push(a[u]),this.$=a[u-1];break;case 4:case 5:this.$=a[u];break;case 6:case 7:this.$=[];break;case 8:this.$=a[u-1];break;case 12:a[u-1].unshift({type:"loopStart",loopText:a[u-2].actor,signalType:n.LINETYPE.LOOP_START}),a[u-1].push({type:"loopEnd",loopText:a[u-2],signalType:n.LINETYPE.LOOP_END}),this.$=a[u-1];break;case 13:a[u-1].unshift({type:"optStart",optText:a[u-2].actor,signalType:n.LINETYPE.OPT_START}),a[u-1].push({type:"optEnd",optText:a[u-2].actor,signalType:n.LINETYPE.OPT_END}),this.$=a[u-1];break;case 14:a[u-4].unshift({type:"altStart",altText:a[u-5].actor,signalType:n.LINETYPE.ALT_START}),a[u-4].push({type:"else",altText:a[u-2].actor,signalType:n.LINETYPE.ALT_ELSE}),a[u-4]=a[u-4].concat(a[u-1]),a[u-4].push({type:"altEnd",signalType:n.LINETYPE.ALT_END}),this.$=a[u-4];break;case 15:this.$=[a[u-1],{type:"addNote",placement:a[u-2],actor:a[u-1].actor,text:a[u]}];break;case 19:this.$=a[u];break;case 20:this.$=[a[u-2],a[u]];break;case 21:this.$=n.PLACEMENT.LEFTOF;break;case 22:this.$=n.PLACEMENT.RIGHTOF;break;case 23:this.$=[a[u-3],a[u-1],{type:"addMessage",from:a[u-3].actor,to:a[u-1].actor,signalType:a[u-2],msg:a[u]}];break;case 26:this.$={type:"addActor",actor:a[u]};break;case 27:this.$=n.LINETYPE.SOLID_OPEN;break;case 28:this.$=n.LINETYPE.DOTTED_OPEN;break;case 29:this.$=n.LINETYPE.SOLID;break;case 30:this.$=n.LINETYPE.DOTTED;break;case 31:this.$=n.LINETYPE.SOLID_CROSS;break;case 32:this.$=n.LINETYPE.DOTTED_CROSS;break;case 33:this.$=a[u].substring(1).trim().replace(/\\n/gm,"\n")}},table:[{3:1,4:[1,2]},{1:[3]},t(r,n,{5:3}),{6:[1,4],7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,22:h,33:d},t(r,p,{1:[2,1]}),t(f,[2,3]),{9:19,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,22:h,33:d},t(f,[2,5]),t(f,[2,6]),{12:20,33:d},{10:[1,21]},{10:[1,22]},{8:[1,23]},{12:24,33:d},{12:25,33:d},{12:26,33:d},{31:27,34:[1,28],35:[1,29],36:[1,30],37:[1,31],38:[1,32],39:[1,33]},{23:34,25:[1,35],29:[1,36],30:[1,37]},t([6,8,10,11,15,17,18,19,20,21,22,28,33,34,35,36,37,38,39,40],[2,26]),t(f,[2,4]),{10:[1,38]},t(f,[2,9]),t(f,[2,10]),{16:[1,39]},t(g,n,{5:40}),t(g,n,{5:41}),t([6,8,10,11,15,17,19,20,21,22,33],n,{5:42}),{12:43,33:d},{33:[2,27]},{33:[2,28]},{33:[2,29]},{33:[2,30]},{33:[2,31]},{33:[2,32]},{12:44,33:d},{8:y,26:45},{33:[2,21]},{33:[2,22]},t(f,[2,8]),{10:[1,47]},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,48],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,50],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,21:[1,51],22:h,33:d},{24:52,40:v},{24:54,40:v},{12:56,27:55,33:d},{8:y,26:57,33:[2,18]},t(f,[2,11]),t(f,[2,12]),t(f,p),t(f,[2,13]),{12:58,33:d},{10:[2,23]},{10:[2,33]},{10:[2,15]},{12:59,33:d},{28:[1,60],33:[2,19]},{33:[2,17]},t(g,n,{5:61}),{10:[2,16]},{12:62,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,63],19:c,20:l,22:h,33:d},{33:[2,20]},t(f,[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(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},A=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(e,t,r,n){switch(r){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 e}();return b.lexer=A,e.prototype=b,b.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],108:[function(e,t,r){var n={},i=[],a=[],u=[];r.addActor=function(e,t,r){n[e]={name:t,description:r},i.push(e)},r.addMessage=function(e,t,r,n){a.push({from:e,to:t,message:r,answer:n})},r.addSignal=function(e,t,r,n){a.push({from:e,to:t,message:r,type:n})},r.getMessages=function(){return a},r.getActors=function(){return n},r.getActor=function(e){return n[e]},r.getActorKeys=function(){return Object.keys(n)},r.clear=function(){n={},a=[]},r.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},r.ARROWTYPE={FILLED:0,OPEN:1},r.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},r.addNote=function(e,t,n){var i={actor:e,placement:t,message:n};u.push(i),a.push({from:e,to:e,message:n,type:r.LINETYPE.NOTE,placement:t})},r.parseError=function(e){console.log("Syntax error:"+e)},r.apply=function(e){if(e instanceof Array)e.forEach(function(e){r.apply(e)});else switch(e.type){case"addActor":r.addActor(e.actor,e.actor,e.actor);break;case"addNote":r.addNote(e.actor,e.placement,e.text);break;case"addMessage":r.addSignal(e.from,e.to,e.msg,e.signalType);break;case"loopStart":r.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":r.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":r.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":r.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":r.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":r.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":r.addSignal(void 0,void 0,void 0,e.signalType)}}},{}],109:[function(e,t,r){var n=e("./parser/sequenceDiagram").parser;n.yy=e("./sequenceDb");var i=e("./svgDraw"),a={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35};r.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(e,t,r,n){e[t]="undefined"==typeof e[t]?r:n(r,e[t])},updateLoops:function(e,t,n,i){var u=this,o=0;this.list.forEach(function(s){o++;var c=u.list.length-o+1;u.updateVal(s,"startx",e-c*a.boxMargin,Math.min),u.updateVal(s,"starty",t-c*a.boxMargin,Math.min),u.updateVal(s,"stopx",n+c*a.boxMargin,Math.max),u.updateVal(s,"stopy",i+c*a.boxMargin,Math.max),u.updateVal(r.bounds.data,"startx",e-c*a.boxMargin,Math.min),u.updateVal(r.bounds.data,"starty",t-c*a.boxMargin,Math.min),u.updateVal(r.bounds.data,"stopx",n+c*a.boxMargin,Math.max),u.updateVal(r.bounds.data,"stopy",i+c*a.boxMargin,Math.max)})},insert:function(e,t,n,i){var a,u,o,s;a=Math.min(e,n),o=Math.max(e,n),u=Math.min(t,i),s=Math.max(t,i),this.updateVal(r.bounds.data,"startx",a,Math.min),this.updateVal(r.bounds.data,"starty",u,Math.min),this.updateVal(r.bounds.data,"stopx",o,Math.max),this.updateVal(r.bounds.data,"stopy",s,Math.max),this.updateLoops(a,u,o,s)},newLoop:function(e){this.list.push({startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:e})},endLoop:function(){var e=this.list.pop();return e},addElseToLoop:function(e){var t=this.list.pop();t.elsey=r.bounds.getVerticalPos(),t.elseText=e,this.list.push(t)},bumpVerticalPos:function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}};var u=function(e,t,n,u){var o=i.getNoteRect();o.x=t,o.y=n,o.width=a.width,o.class="note";var s=e.append("g"),c=i.drawRect(s,o),l=i.getTextObj();l.x=t,l.y=n+a.noteMargin,l.textMargin=a.noteMargin,l.dy="1em",l.text=u.message,l.class="noteText";var h=i.drawText(s,l),d=h[0][0].getBBox().height;r.bounds.insert(t,n,t+a.width,n+2*a.noteMargin+d),c.attr("height",d+2*a.noteMargin),r.bounds.bumpVerticalPos(d+2*a.noteMargin)},o=function(e,t,i,a,u){var o,s=e.append("g"),c=t+(i-t)/2,l=s.append("text").attr("x",c).attr("y",a-7).style("text-anchor","middle").attr("class","messageText").text(u.message),h=l[0][0].getBBox().width;if(t===i){o=s.append("path").attr("d","M "+t+","+a+" C "+(t+60)+","+(a-10)+" "+(t+60)+","+(a+30)+" "+t+","+(a+20)),r.bounds.bumpVerticalPos(30);var d=Math.max(h/2,100);r.bounds.insert(t-d,r.bounds.getVerticalPos()-10,i+d,r.bounds.getVerticalPos())}else o=s.append("line"),o.attr("x1",t),o.attr("y1",a),o.attr("x2",i),o.attr("y2",a),r.bounds.insert(t,r.bounds.getVerticalPos()-10,i,r.bounds.getVerticalPos());u.type===n.yy.LINETYPE.DOTTED||u.type===n.yy.LINETYPE.DOTTED_CROSS||u.type===n.yy.LINETYPE.DOTTED_OPEN?(o.style("stroke-dasharray","3, 3"),o.attr("class","messageLine1")):o.attr("class","messageLine0"),o.attr("stroke-width",2),o.attr("stroke","black"),o.style("fill","none"),(u.type===n.yy.LINETYPE.SOLID||u.type===n.yy.LINETYPE.DOTTED)&&o.attr("marker-end","url(#arrowhead)"),(u.type===n.yy.LINETYPE.SOLID_CROSS||u.type===n.yy.LINETYPE.DOTTED_CROSS)&&o.attr("marker-end","url(#crosshead)")};t.exports.drawActors=function(e,t,n){var u;for(u=0;u/gi).forEach(function(e){var n=r.append("tspan");n.attr("x",t.x+t.textMargin),n.attr("dy",t.dy),n.text(e)}),"undefined"!=typeof t.class&&r.attr("class",t.class),r},r.drawLabel=function(e,t){var n=r.getNoteRect();n.x=t.x,n.y=t.y,n.width=50,n.height=20,n.fill="#526e52",n.stroke="none",n.class="labelBox",r.drawRect(e,n),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,t.fill="white",r.drawText(e,t)},r.drawActor=function(e,t,n,i){var a=t+i.width/2,u=e.append("g");u.append("line").attr("x1",a).attr("y1",5).attr("x2",a).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999");var o=r.getNoteRect();o.x=t,o.fill="#eaeaea",o.width=i.width,o.height=i.height,o.class="actor",o.rx=3,o.ry=3,r.drawRect(u,o),u.append("text").attr("x",a).attr("y",i.height/2+5).attr("class","actor").style("text-anchor","middle").text(n)},r.drawLoop=function(e,t,n,i){var a=e.append("g"),u=function(e,t,r,n){a.append("line").attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",n).attr("stroke-width",2).attr("stroke","#526e52").attr("class","loopLine")};u(t.startx,t.starty,t.stopx,t.starty),u(t.stopx,t.starty,t.stopx,t.stopy),u(t.startx,t.stopy,t.stopx,t.stopy),u(t.startx,t.starty,t.startx,t.stopy),"undefined"!=typeof t.elsey&&u(t.startx,t.elsey,t.stopx,t.elsey);var o=r.getTextObj();o.text=n,o.x=t.startx,o.y=t.starty,o.labelMargin=1.5*i.boxMargin,o.class="labelText",o.fill="white",r.drawLabel(a,o),o=r.getTextObj(),o.text="[ "+t.title+" ]",o.x=t.startx+(t.stopx-t.startx)/2,o.y=t.starty+1.5*i.boxMargin,o.anchor="middle",o.class="loopText",r.drawText(a,o),"undefined"!=typeof t.elseText&&(o.text="[ "+t.elseText+" ]",o.y=t.elsey+1.5*i.boxMargin,r.drawText(a,o))},r.insertArrowHead=function(e){e.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")},r.insertArrowCrossHead=function(e){e.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").attr("refX",15).attr("refY",4).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 1,1 L 7,7 M 7,1 L 1,7")},r.getTextObj=function(){var e={x:0,y:0,fill:"black","text-anchor":"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0};return e},r.getNoteRect=function(){var e={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0};return e}},{}],111:[function(e,t,r){(function(t){var n=e("./diagrams/flowchart/graphDb"),i=e("./diagrams/flowchart/parser/flow"),a=e("./utils"),u=e("./diagrams/flowchart/flowRenderer"),o=e("./diagrams/sequenceDiagram/sequenceRenderer"),s=e("he"),c=function(){var e,t=document.querySelectorAll(".mermaid"),r=0;for(e=0;e/g,">"),l=l.replace(/';var h=a.detectType(l),d={};switch(h){case"graph":d=u.getClasses(l,!1),u.draw(l,c,!1),a.cloneCssStyles(i.firstChild,d),n.bindFunctions();break;case"dotGraph":d=u.getClasses(l,!0),u.draw(l,c,!0),a.cloneCssStyles(i.firstChild,d);break;case"sequenceDiagram":o.draw(l,c),a.cloneCssStyles(i.firstChild,[])}}}};r.tester=function(){},r.version=function(){return e("../package.json").version};var l=function(e,t){return"undefined"==typeof t?!1:e===t};t.mermaid={startOnLoad:!0,init:function(){c()},version:function(){return r.version()},getParser:function(){return i.parser}},r.contentLoaded=function(){t.mermaid.startOnLoad&&("undefined"!=typeof mermaid_config?l(!0,mermaid_config.startOnLoad)&&t.mermaid.init():t.mermaid.init())},"undefined"!=typeof document&&document.addEventListener("DOMContentLoaded",function(){r.contentLoaded()},!1)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../package.json":102,"./diagrams/flowchart/flowRenderer":103,"./diagrams/flowchart/graphDb":104,"./diagrams/flowchart/parser/flow":106,"./diagrams/sequenceDiagram/sequenceRenderer":109,"./utils":112,he:100}],112:[function(e,t){t.exports.detectType=function(e){return e.match(/^\s*sequenceDiagram/)?"sequenceDiagram":e.match(/^\s*sequence/)?"sequence":e.match(/^\s*digraph/)?(console.log("Detected flow syntax"),"dotGraph"):"graph"},t.exports.cloneCssStyles=function(e,t){for(var r="",n=document.styleSheets,i=0;i0&&(r+=o.selectorText+" { "+o.style.cssText+" }\n")}}}var c="",l="";for(var h in t)t.hasOwnProperty(h)&&"undefined"!=typeof h&&("default"===h?c=".node { "+t[h].styles.join("; ")+"; }\n":l+="."+h+" { "+t[h].styles.join("; ")+"; }\n");if(""!==r||""!==c||""!==l){var d=document.createElement("style");d.setAttribute("type","text/css"),d.setAttribute("title","mermaid-svg-internal-css"),d.innerHTML="/* */\n",e.insertBefore(d,e.firstChild)}}},{}]},{},[111]); \ No newline at end of file +},{}],103:[function(e,t,r){var n=e("./graphDb"),i=e("./parser/flow"),a=e("./parser/dot"),u=e("dagre-d3");r.addVertices=function(e,t){var r=Object.keys(e),n=function(e,t){var r;for(r=0;r0&&(u=a.classes.join(" "));var o="";o=n(o,a.styles),i="undefined"==typeof a.text?a.id:a.text;var s=0,c="";switch(a.type){case"round":s=5,c="rect";break;case"square":c="rect";break;case"diamond":c="question";break;case"odd":c="rect_left_inv_arrow";break;case"circle":c="circle";break;default:c="rect"}t.setNode(a.id,{labelType:"html",shape:c,label:i,rx:s,ry:s,"class":u,style:o,id:a.id})})},r.addEdges=function(e,t){var r,n=0;e.forEach(function(e){n++,r="arrow_open"===e.type?"none":"normal";var i="";"undefined"!=typeof e.style&&e.style.forEach(function(e){i=i+e+";"}),"undefined"==typeof e.text?"undefined"==typeof e.style?t.setEdge(e.start,e.end,{style:"stroke: #333; stroke-width: 1.5px;fill:none",arrowheadStyle:"fill: #333",arrowhead:r},n):t.setEdge(e.start,e.end,{style:i,arrowheadStyle:"fill: #333",arrowhead:r},n):"undefined"==typeof e.style?t.setEdge(e.start,e.end,{labelType:"html",style:"stroke: #333; stroke-width: 1.5px;fill:none",labelpos:"c",label:''+e.text+"",arrowheadStyle:"fill: #333",arrowhead:r},n):t.setEdge(e.start,e.end,{labelType:"html",style:i,arrowheadStyle:"fill: #333",label:e.text,arrowhead:r},n)})},r.getClasses=function(e,t){var r;n.clear(),r=t?a.parser:i.parser,r.yy=n,r.parse(e);var u=n.getClasses();return"undefined"==typeof u.default&&(u.default={id:"default"},u.default.styles=["fill:#eaeaea","stroke:#666","stroke-width:1.5px"]),u},r.draw=function(e,t,o){var s;n.clear(),s=o?a.parser:i.parser,s.yy=n,s.parse(e);var c;c=n.getDirection(),"undefined"==typeof c&&(c="TD");var l=new u.graphlib.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:c,marginx:20,marginy:20}).setDefaultEdgeLabel(function(){return{}}),h=n.getSubGraphs(),d=0;h.forEach(function(){d+=1;var e="subG"+d;n.addVertex(e,void 0,void 0,void 0)});var p=n.getVertices(),f=n.getEdges();d=0,h.forEach(function(e){d+=1;var t="subG"+d;e.forEach(function(e){l.setParent(e,t)})}),r.addVertices(p,l),r.addEdges(f,l);var g=new u.render;g.shapes().question=function(e,t,r){var n=t.width,i=t.height,a=.8*(n+i),o=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}],s=e.insert("polygon",":first-child").attr("points",o.map(function(e){return e.x+","+e.y}).join(" ")).attr("rx",5).attr("ry",5).attr("transform","translate("+-a/2+","+2*a/4+")");return r.intersect=function(e){return u.intersect.polygon(r,o,e)},s},g.shapes().rect_left_inv_arrow=function(e,t,r){var n=t.width,i=t.height,a=[{x:-i/2,y:0},{x:n,y:0},{x:n,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}],o=e.insert("polygon",":first-child").attr("points",a.map(function(e){return e.x+","+e.y}).join(" ")).attr("transform","translate("+-n/2+","+2*i/4+")");return r.intersect=function(e){return u.intersect.polygon(r,a,e)},o},g.arrows().none=function(e,t,r,n){var i=e.append("marker").attr("id",t).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");u.util.applyStyle(a,r[n+"Style"])};var y=d3.select("#"+t);svgGroup=d3.select("#"+t+" g"),g(d3.select("#"+t+" g"),l);var m=document.querySelector("#mermaidChart0");y.attr("height",l.graph().height),y.attr("width",l.graph().width),y.attr("viewBox",m.getBBox().x+" 0 "+l.graph().width+" "+l.graph().height)}},{"./graphDb":104,"./parser/dot":105,"./parser/flow":106,"dagre-d3":1}],104:[function(require,module,exports){var vertices={},edges=[],classes=[],subGraphs=[],direction,funs=[];exports.addVertex=function(e,t,r,n){"undefined"!=typeof e&&0!==e.trim().length&&("undefined"==typeof vertices[e]&&(vertices[e]={id:e,styles:[],classes:[]}),"undefined"!=typeof t&&(vertices[e].text=t),"undefined"!=typeof r&&(vertices[e].type=r),"undefined"!=typeof r&&(vertices[e].type=r),"undefined"!=typeof n&&null!==n&&n.forEach(function(t){vertices[e].styles.push(t)}))},exports.addLink=function(e,t,r,n){var i={start:e,end:t,type:void 0,text:""};n=r.text,"undefined"!=typeof n&&(i.text=n),"undefined"!=typeof r&&(i.type=r.type),edges.push(i)},exports.updateLink=function(e,t){e.substr(1);edges[e].style=t},exports.addClass=function(e,t){"undefined"==typeof classes[e]&&(classes[e]={id:e,styles:[]}),"undefined"!=typeof t&&null!==t&&t.forEach(function(t){classes[e].styles.push(t)})},exports.setDirection=function(e){direction=e},exports.setClass=function(e,t){e.indexOf(",")>0?e.split(",").forEach(function(e){"undefined"!=typeof vertices[e]&&vertices[e].classes.push(t)}):"undefined"!=typeof vertices[e]&&vertices[e].classes.push(t)},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(e){e()})},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=[],funs=[],subGraphs=[]},exports.defaultStyle=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},exports.addSubGraph=function(e){function t(e){var t={"boolean":{},number:{},string:{}},r=[];return e.filter(function(e){var n=typeof e;return n in t?t[n].hasOwnProperty(e)?!1:t[n][e]=!0:r.indexOf(e)>=0?!1:r.push(e)})}var r=[];r=t(r.concat.apply(r,e)),subGraphs.push(r)},exports.getSubGraphs=function(){return subGraphs}},{}],105:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[1,5],n=[1,6],i=[1,12],a=[1,13],u=[1,14],o=[1,15],s=[1,16],c=[1,17],l=[1,18],h=[1,19],d=[1,20],p=[1,21],f=[1,22],g=[8,16,17,18,19,20,21,22,23,24,25,26],y=[1,37],m=[1,33],v=[1,34],b=[1,35],A=[1,36],E=[8,10,16,17,18,19,20,21,22,23,24,25,26,28,32,37,39,40,45,57,58],x=[10,28],w=[10,28,37,57,58],_=[2,49],D=[1,45],k=[1,48],C=[1,49],F=[1,52],B=[2,65],T=[1,65],S=[1,66],L=[1,67],N=[1,68],q=[1,69],I=[1,70],O=[1,71],R=[1,72],P=[1,73],M=[8,16,17,18,19,20,21,22,23,24,25,26,47],j=[10,28,37],V={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(e,t,r,n,i,a){var u=a.length-1;switch(i){case 1:this.$=a[u-1];break;case 2:this.$=a[u-4];break;case 3:this.$=a[u-5];break;case 4:this.$=a[u-3];break;case 8:case 10:case 11:this.$=a[u];break;case 9:this.$=a[u-1]+""+a[u];break;case 12:case 13:case 14:case 15:case 16:case 18:case 19:case 20:this.$=a[u];break;case 17:this.$="
";break;case 39:this.$="oy";break;case 40:n.addLink(a[u-1],a[u].id,a[u].op),this.$="oy";break;case 42:n.addLink(a[u-1],a[u].id,a[u].op),this.$={op:a[u-2],id:a[u-1]};break;case 44:this.$={op:a[u-1],id:a[u]};break;case 48:n.addVertex(a[u-1]),this.$=a[u-1];break;case 49:n.addVertex(a[u]),this.$=a[u];break;case 66:this.$="arrow";break;case 67:this.$="arrow_open"}},table:[{3:1,4:2,6:3,11:[1,4],12:r,13:n},{1:[3]},{5:[1,7]},{7:8,8:[1,9],14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{6:23,12:r,13:n},t(g,[2,5]),t(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:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},t([8,10,28,32,37,39,40,45,57,58],[2,7],{15:38,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f}),t(E,[2,8]),t(E,[2,10]),t(E,[2,11]),t(E,[2,12]),t(E,[2,13]),t(E,[2,14]),t(E,[2,15]),t(E,[2,16]),t(E,[2,17]),t(E,[2,18]),t(E,[2,19]),t(E,[2,20]),{7:39,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{7:30,8:y,9:40,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,41]},{10:[2,21],28:[1,42]},t(x,[2,23]),t(x,[2,24]),t(x,[2,25]),t(w,_,{44:44,32:[1,43],45:D}),t(x,[2,27],{41:46,43:47,57:k,58:C}),t(x,[2,47],{43:47,34:50,41:51,37:F,57:k,58:C}),{34:53,37:F},{34:54,37:F},{34:55,37:F},{7:56,8:[1,57],14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{7:30,8:y,9:58,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},t(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:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{7:62,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},t(w,[2,48]),t(w,B,{14:10,15:11,7:63,46:64,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,48:T,49:S,50:L,51:N,52:q,53:I,54:O,55:R,56:P}),t(x,[2,41],{34:74,37:F}),{7:77,8:y,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,33:76,42:75,47:A},t(M,[2,66]),t(M,[2,67]),t(x,[2,46]),t(x,[2,40],{34:78,37:F}),{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,38:79,39:[1,80]},t(x,[2,28]),t(x,[2,29]),t(x,[2,30]),{8:[1,82]},{7:30,8:y,9:83,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,84]},{7:30,8:y,9:85,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{5:[2,2]},{10:[2,22]},t(x,[2,26]),t(w,[2,51],{45:[1,86]}),t(w,[2,52]),t(w,[2,56]),t(w,[2,57]),t(w,[2,58]),t(w,[2,59]),t(w,[2,60]),t(w,[2,61]),t(w,[2,62]),t(w,[2,63]),t(w,[2,64]),t(x,[2,38]),t(j,[2,44],{43:47,41:87,57:k,58:C}),t(j,[2,45],{43:47,41:88,57:k,58:C}),t(w,_,{44:44,45:D}),t(x,[2,39]),{39:[1,89]},t(x,[2,34],{34:90,37:F}),{32:[1,91]},{7:30,8:y,9:92,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,93]},t(w,[2,55]),{10:[1,94]},t(w,B,{46:95,48:T,49:S,50:L,51:N,52:q,53:I,54:O,55:R,56:P}),t(j,[2,42]),t(j,[2,43]),t(x,[2,33],{34:96,37:F}),t(x,[2,32]),{7:97,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{10:[1,98]},t(w,[2,54]),{5:[2,3]},t(w,[2,50]),t(x,[2,31]),{28:[1,99],39:[2,37],40:[1,100]},t(w,[2,53]),{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,38:101},{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,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(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},U=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,r,n){switch(r){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 e}();return V.lexer=U,e.prototype=V,V.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],106:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[1,9,10,12,19,29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],n=[2,2],i=[1,9],a=[1,10],u=[1,11],o=[1,12],s=[1,20],c=[1,23],l=[1,24],h=[1,25],d=[1,26],p=[1,27],f=[1,32],g=[1,21],y=[1,34],m=[1,31],v=[1,33],b=[1,39],A=[1,38],E=[1,35],x=[1,36],w=[1,37],_=[1,9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],D=[29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],k=[2,19],C=[1,51],F=[1,52],B=[1,50],T=[9,10,19],S=[1,63],L=[1,64],N=[1,65],q=[1,66],I=[9,10,19,47,48,49,50,51],O=[9,10,12,15,16,19,35,38,40,47,48,49,50,51],R=[9,10,12,15,16,19,35,38,40,47,48,49,50,51,66,69,71,72,74,75,77,78,79],P=[9,10,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,47,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],M=[1,81],j=[1,84],V=[1,82],U=[1,91],G=[1,90],$=[1,113],H=[1,123],Y=[1,115],z=[1,124],W=[1,98],Z=[1,97],K=[1,125],X=[1,126],J=[1,102],Q=[1,103],et=[1,100],tt=[1,101],rt=[1,104],nt=[1,105],it=[1,116],at=[1,109],ut=[1,110],ot=[1,108],st=[1,111],ct=[1,99],lt=[1,118],ht=[1,119],dt=[1,120],pt=[1,121],ft=[1,122],gt=[1,106],yt=[1,107],mt=[1,112],vt=[66,69,71,72,74,75,77,78,79],bt=[12,52,66,69,71,72,74,75,77,78,79],At=[9,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],Et=[2,104],xt=[2,106],wt=[11,12,13,15,16,29,31,37,39,41,44,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79],_t=[1,177],Dt=[1,174],kt=[1,178],Ct=[1,175],Ft=[1,172],Bt=[1,173],Tt=[1,176],St=[1,179],Lt=[1,180],Nt=[11,12,13,15,16,29,31,44,57,58,59,60,61,66,69,71,72,74,75,77,78,79],qt=[2,47],It=[1,192],Ot=[9,10,19,69],Rt=[9,10,12,19,44,65,66,69,71,72,73,74,75],Pt={trace:function(){},yy:{},symbols_:{error:2,mermaidDoc:3,graphConfig:4,document:5,line:6,spaceListNewline:7,statement:8,SEMI:9,EOF:10,GRAPH:11,SPACE:12,DIR:13,FirstStmtSeperator:14,TAGEND:15,TAGSTART:16,UP:17,DOWN:18,NEWLINE:19,spaceList:20,commentStatement:21,verticeStatement:22,separator:23,styleStatement:24,linkStyleStatement:25,classDefStatement:26,classStatement:27,clickStatement:28,subgraph:29,endStatement:30,end:31,vertex:32,link:33,alphaNum:34,SQS:35,text:36,SQE:37,PS:38,PE:39,DIAMOND_START:40,DIAMOND_STOP:41,alphaNumStatement:42,alphaNumToken:43,MINUS:44,linkStatement:45,arrowText:46,"--":47,ARROW_POINT:48,ARROW_CIRCLE:49,ARROW_CROSS:50,ARROW_OPEN:51,PIPE:52,textToken:53,commentText:54,commentToken:55,keywords:56,STYLE:57,LINKSTYLE:58,CLASSDEF:59,CLASS:60,CLICK:61,textNoTags:62,textNoTagsToken:63,stylesOpt:64,HEX:65,NUM:66,PCT:67,style:68,COMMA:69,styleComponent:70,ALPHA:71,COLON:72,UNIT:73,BRKT:74,DOT:75,graphCodeTokens:76,PLUS:77,EQUALS:78,MULT:79,TAG_START:80,TAG_END:81,QUOTE:82,$accept:0,$end:1},terminals_:{2:"error",9:"SEMI",10:"EOF",11:"GRAPH",12:"SPACE",13:"DIR",15:"TAGEND",16:"TAGSTART",17:"UP",18:"DOWN",19:"NEWLINE",29:"subgraph",31:"end",35:"SQS",37:"SQE",38:"PS",39:"PE",40:"DIAMOND_START",41:"DIAMOND_STOP",44:"MINUS",47:"--",48:"ARROW_POINT",49:"ARROW_CIRCLE",50:"ARROW_CROSS",51:"ARROW_OPEN",52:"PIPE",57:"STYLE",58:"LINKSTYLE",59:"CLASSDEF",60:"CLASS",61:"CLICK",65:"HEX",66:"NUM",67:"PCT",69:"COMMA",71:"ALPHA",72:"COLON",73:"UNIT",74:"BRKT",75:"DOT",77:"PLUS",78:"EQUALS",79:"MULT",80:"TAG_START",81:"TAG_END",82:"QUOTE"},productions_:[0,[3,2],[5,0],[5,2],[6,2],[6,1],[6,1],[6,1],[4,4],[4,4],[4,4],[4,4],[4,4],[14,1],[14,1],[14,2],[7,2],[7,2],[7,1],[7,1],[20,2],[20,1],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,4],[30,1],[30,2],[23,1],[23,1],[23,1],[22,3],[22,1],[32,4],[32,5],[32,6],[32,7],[32,4],[32,5],[32,4],[32,5],[32,4],[32,5],[32,4],[32,1],[32,2],[34,1],[34,2],[42,1],[42,3],[33,2],[33,3],[33,1],[33,2],[33,5],[33,6],[45,1],[45,1],[45,1],[45,1],[46,3],[36,1],[36,2],[54,1],[54,2],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[62,1],[62,2],[26,5],[27,5],[28,5],[24,5],[24,5],[25,5],[21,3],[64,1],[64,3],[68,1],[68,2],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[55,1],[55,1],[53,1],[53,1],[53,1],[63,1],[63,1],[63,1],[63,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1]],performAction:function(e,t,r,n,i,a){var u=a.length-1;switch(i){case 2:this.$=[];break;case 3:a[u]!==[]&&a[u-1].push(a[u]),this.$=a[u-1];break;case 4:case 5:case 50:case 52:case 65:case 67:case 78:this.$=a[u];break;case 8:n.setDirection(a[u-1]),this.$=a[u-1];break;case 9:n.setDirection("LR"),this.$=a[u-1];break;case 10:n.setDirection("RL"),this.$=a[u-1];break;case 11:n.setDirection("BT"),this.$=a[u-1];break;case 12:n.setDirection("TB"),this.$=a[u-1];break;case 22:case 24:case 25:case 26:case 27:case 28:this.$=[];break;case 23:this.$=a[u-1];break;case 29:n.addSubGraph(a[u-2]);break;case 35:n.addLink(a[u-2],a[u],a[u-1]),this.$=[a[u-2],a[u]];break;case 36:this.$="yo";break;case 37:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"square");break;case 38:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"square");break;case 39:this.$=a[u-5],n.addVertex(a[u-5],a[u-2],"circle");break;case 40:this.$=a[u-6],n.addVertex(a[u-6],a[u-3],"circle");break;case 41:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"round");break;case 42:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"round");break;case 43:case 47:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"diamond");break;case 44:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"diamond");break;case 45:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"odd");break;case 46:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"odd");break;case 48:this.$=a[u],n.addVertex(a[u]);break;case 49:this.$=a[u-1],n.addVertex(a[u-1]);break;case 51:case 66:case 68:case 79:this.$=a[u-1]+""+a[u];break;case 53:this.$=a[u-2]+"-"+a[u];break;case 54:a[u-1].text=a[u],this.$=a[u-1];break;case 55:a[u-2].text=a[u-1],this.$=a[u-2];break;case 56:this.$=a[u];break;case 57:case 64:this.$=a[u-1];break;case 58:a[u].text=a[u-2],this.$=a[u];break;case 59:a[u-1].text=a[u-3],this.$=a[u-1];break;case 60:this.$={type:"arrow"};break;case 61:this.$={type:"arrow_circle"};break;case 62:this.$={type:"arrow_cross"};break;case 63:this.$={type:"arrow_open"};break;case 80:this.$=a[u-4],n.addClass(a[u-2],a[u]);break;case 81:this.$=a[u-4],n.setClass(a[u-2],a[u]);break;case 82:this.$=a[u-4],n.setClickEvent(a[u-2],a[u]);break;case 83:this.$=a[u-4],n.addVertex(a[u-2],void 0,void 0,a[u]); +break;case 84:case 85:this.$=a[u-4],n.updateLink(a[u-2],a[u]);break;case 87:this.$=[a[u]];break;case 88:a[u-2].push(a[u]),this.$=a[u-2];break;case 90:this.$=a[u-1]+a[u]}},table:[{3:1,4:2,11:[1,3]},{1:[3]},t(r,n,{5:4}),{12:[1,5]},{1:[2,1],6:6,7:7,8:8,9:i,10:a,12:u,19:o,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:s,32:22,34:28,42:29,43:30,57:c,58:l,59:h,60:d,61:p,66:f,67:g,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{13:[1,40],15:[1,41],16:[1,42],17:[1,43],18:[1,44]},t(_,[2,3]),{8:45,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:s,32:22,34:28,42:29,43:30,57:c,58:l,59:h,60:d,61:p,66:f,67:g,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(_,[2,5]),t(_,[2,6]),t(_,[2,7]),t(D,k,{7:46,12:u,19:o}),t(D,[2,18],{7:47,12:u,19:o}),{19:[1,48]},{9:C,10:F,19:B,23:49},{9:C,10:F,19:B,23:53},{9:C,10:F,19:B,23:54},{9:C,10:F,19:B,23:55},{9:C,10:F,19:B,23:56},{9:C,10:F,19:B,23:57},t([9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],n,{5:58}),{67:[1,59]},t(T,[2,36],{33:60,45:61,47:[1,62],48:S,49:L,50:N,51:q}),{12:[1,67]},{12:[1,68]},{12:[1,69]},{12:[1,70]},{12:[1,71]},t(I,[2,48],{12:[1,77],15:[1,75],16:[1,76],35:[1,72],38:[1,73],40:[1,74]}),t(O,[2,50],{42:29,43:30,34:78,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w}),t(R,[2,52],{44:[1,79]}),t(P,[2,109]),t(P,[2,110]),t(P,[2,111]),t(P,[2,112]),t(P,[2,113]),t(P,[2,114]),t(P,[2,115]),t(P,[2,116]),t(P,[2,117]),{9:M,12:j,14:80,19:V,20:83},{9:M,12:j,14:85,19:V,20:83},{9:M,12:j,14:86,19:V,20:83},{9:M,12:j,14:87,19:V,20:83},{9:M,12:j,14:88,19:V,20:83},t(_,[2,4]),t(D,[2,16]),t(D,[2,17]),t(_,[2,22]),t(_,[2,23]),t(_,[2,32]),t(_,[2,33]),t(_,[2,34]),t(_,[2,24]),t(_,[2,25]),t(_,[2,26]),t(_,[2,27]),t(_,[2,28]),{6:6,7:7,8:8,9:i,10:a,12:U,19:o,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:s,30:89,31:G,32:22,34:28,42:29,43:30,57:c,58:l,59:h,60:d,61:p,66:f,67:g,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{9:$,11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,35:J,37:Q,38:et,39:tt,40:rt,41:nt,43:114,44:it,48:at,49:ut,50:ot,51:st,52:ct,53:94,54:92,55:93,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,76:95,77:E,78:x,79:w,80:gt,81:yt,82:mt},{32:127,34:28,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(vt,[2,56],{46:128,12:[1,129],52:[1,130]}),{12:[1,131]},t(bt,[2,60]),t(bt,[2,61]),t(bt,[2,62]),t(bt,[2,63]),{34:132,42:29,43:30,65:[1,133],66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{66:[1,134]},{34:135,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{34:136,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{34:137,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:138,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:141,38:[1,140],43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:142,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:143,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:144,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(I,[2,49]),t(O,[2,51]),{43:145,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(r,[2,8]),t(r,[2,13]),t(r,[2,14]),{19:[1,146]},{12:j,19:[2,21],20:147},t(r,[2,9]),t(r,[2,10]),t(r,[2,11]),t(r,[2,12]),{9:C,10:F,19:B,23:148},t(T,[2,30]),t(D,k,{7:46,30:149,12:U,19:o,31:G}),{9:$,11:H,12:Y,13:z,15:W,16:Z,19:[2,86],29:K,31:X,35:J,37:Q,38:et,39:tt,40:rt,41:nt,43:114,44:it,48:at,49:ut,50:ot,51:st,52:ct,53:94,55:150,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,76:95,77:E,78:x,79:w,80:gt,81:yt,82:mt},t(At,[2,67]),t(At,[2,100]),t(At,[2,101]),t(At,[2,102]),t(At,[2,103]),t(At,Et),t(At,[2,118]),t(At,[2,119]),t(At,[2,120]),t(At,[2,121]),t(At,[2,122]),t(At,[2,123]),t(At,[2,124]),t(At,[2,125]),t(At,[2,126]),t(At,[2,127]),t(At,[2,128]),t(At,[2,129]),t(At,[2,130]),t(At,[2,131]),t(At,[2,132]),t(At,[2,105]),t(At,xt),t(At,[2,107]),t(At,[2,108]),t(At,[2,69]),t(At,[2,70]),t(At,[2,71]),t(At,[2,72]),t(At,[2,73]),t(At,[2,74]),t(At,[2,75]),t(At,[2,76]),t(At,[2,77]),t(T,[2,35]),t(vt,[2,54],{12:[1,151]}),t(vt,[2,57]),{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:152,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:153,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{12:[1,154]},{12:[1,155]},{12:[1,156]},{12:[1,157]},{12:[1,158]},{12:[1,159]},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,37:[1,160],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(wt,[2,65]),{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:162,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,39:[1,163],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,41:[1,164],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,37:[1,165],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:[1,166],16:Z,29:K,31:X,43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(R,[2,53]),t(r,[2,15]),{19:[2,20]},t(_,[2,29]),t(T,[2,31]),t(At,[2,68]),t(vt,[2,55]),{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,43:114,44:it,52:[1,167],53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:[1,168],13:z,15:W,16:Z,29:K,31:X,43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{12:_t,44:Dt,64:169,65:kt,66:Ct,68:170,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},{12:_t,44:Dt,64:181,65:kt,66:Ct,68:170,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},{12:_t,44:Dt,64:182,65:kt,66:Ct,68:170,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},{12:_t,44:Dt,64:183,65:kt,66:Ct,68:170,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},{34:184,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{34:185,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(I,[2,37],{12:[1,186]}),t(wt,[2,66]),{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,39:[1,187],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(I,[2,41],{12:[1,188]}),t(I,[2,43],{12:[1,189]}),t(I,[2,45],{12:[1,190]}),t(Nt,Et,{9:qt,10:qt,19:qt,47:qt,48:qt,49:qt,50:qt,51:qt}),t([12,66,69,71,72,74,75,77,78,79],[2,64]),t(Nt,xt,{45:191,48:S,49:L,50:N,51:q}),t(T,[2,83],{69:It}),t(Ot,[2,87],{70:193,12:_t,44:Dt,65:kt,66:Ct,71:Ft,72:Bt,73:Tt,74:St,75:Lt}),t(Rt,[2,89]),t(Rt,[2,91]),t(Rt,[2,92]),t(Rt,[2,93]),t(Rt,[2,94]),t(Rt,[2,95]),t(Rt,[2,96]),t(Rt,[2,97]),t(Rt,[2,98]),t(Rt,[2,99]),t(T,[2,84],{69:It}),t(T,[2,85],{69:It}),t(T,[2,80],{69:It}),t(T,[2,81]),t(T,[2,82]),t(I,[2,38]),{39:[1,194]},t(I,[2,42]),t(I,[2,44]),t(I,[2,46]),t(vt,[2,58],{12:[1,195]}),{12:_t,44:Dt,65:kt,66:Ct,68:196,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},t(Rt,[2,90]),t(I,[2,39],{12:[1,197]}),t(vt,[2,59]),t(Ot,[2,88],{70:193,12:_t,44:Dt,65:kt,66:Ct,71:Ft,72:Bt,73:Tt,74:St,75:Lt}),t(I,[2,40])],defaultActions:{147:[2,20]},parseError:function(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},Mt=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,r,n){switch(r){case 0:return 57;case 1:return 58;case 2:return 59;case 3:return 60;case 4:return 61;case 5:return 11;case 6:return 29;case 7:return 31;case 8:return 13;case 9:return 13;case 10:return 13;case 11:return 13;case 12:return 13;case 13:return 13;case 14:return 66;case 15:return 74;case 16:return 72;case 17:return 9;case 18:return 69;case 19:return 78;case 20:return 79;case 21:return 75;case 22:return 16;case 23:return 15;case 24:return 17;case 25:return 18;case 26:return 50;case 27:return 48;case 28:return 49;case 29:return 51;case 30:return 47;case 31:return 44;case 32:return 77;case 33:return 67;case 34:return 78;case 35:return 71;case 36:return 52;case 37:return 38;case 38:return 39;case 39:return 35;case 40:return 37;case 41:return 40;case 42:return 41;case 43:return 82;case 44:return 19;case 45:return 12;case 46:return 10}},rules:[/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:subgraph\b)/,/^(?:end\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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:{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,43,44,45,46],inclusive:!0}}};return e}();return Pt.lexer=Mt,e.prototype=Pt,Pt.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],107:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[6,8,10,11,15,17,19,20,22,33],n=[2,2],i=[1,6],a=[1,8],u=[1,9],o=[1,12],s=[1,13],c=[1,14],l=[1,15],h=[1,17],d=[1,18],p=[2,7],f=[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],b={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(e,t,r,n,i,a){var u=a.length-1;switch(i){case 1:return n.apply(a[u-1]),a[u-1];case 2:this.$=[];break;case 3:a[u-1].push(a[u]),this.$=a[u-1];break;case 4:case 5:this.$=a[u];break;case 6:case 7:this.$=[];break;case 8:this.$=a[u-1];break;case 12:a[u-1].unshift({type:"loopStart",loopText:a[u-2].actor,signalType:n.LINETYPE.LOOP_START}),a[u-1].push({type:"loopEnd",loopText:a[u-2],signalType:n.LINETYPE.LOOP_END}),this.$=a[u-1];break;case 13:a[u-1].unshift({type:"optStart",optText:a[u-2].actor,signalType:n.LINETYPE.OPT_START}),a[u-1].push({type:"optEnd",optText:a[u-2].actor,signalType:n.LINETYPE.OPT_END}),this.$=a[u-1];break;case 14:a[u-4].unshift({type:"altStart",altText:a[u-5].actor,signalType:n.LINETYPE.ALT_START}),a[u-4].push({type:"else",altText:a[u-2].actor,signalType:n.LINETYPE.ALT_ELSE}),a[u-4]=a[u-4].concat(a[u-1]),a[u-4].push({type:"altEnd",signalType:n.LINETYPE.ALT_END}),this.$=a[u-4];break;case 15:this.$=[a[u-1],{type:"addNote",placement:a[u-2],actor:a[u-1].actor,text:a[u]}];break;case 19:this.$=a[u];break;case 20:this.$=[a[u-2],a[u]];break;case 21:this.$=n.PLACEMENT.LEFTOF;break;case 22:this.$=n.PLACEMENT.RIGHTOF;break;case 23:this.$=[a[u-3],a[u-1],{type:"addMessage",from:a[u-3].actor,to:a[u-1].actor,signalType:a[u-2],msg:a[u]}];break;case 26:this.$={type:"addActor",actor:a[u]};break;case 27:this.$=n.LINETYPE.SOLID_OPEN;break;case 28:this.$=n.LINETYPE.DOTTED_OPEN;break;case 29:this.$=n.LINETYPE.SOLID;break;case 30:this.$=n.LINETYPE.DOTTED;break;case 31:this.$=n.LINETYPE.SOLID_CROSS;break;case 32:this.$=n.LINETYPE.DOTTED_CROSS;break;case 33:this.$=a[u].substring(1).trim().replace(/\\n/gm,"\n")}},table:[{3:1,4:[1,2]},{1:[3]},t(r,n,{5:3}),{6:[1,4],7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,22:h,33:d},t(r,p,{1:[2,1]}),t(f,[2,3]),{9:19,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,22:h,33:d},t(f,[2,5]),t(f,[2,6]),{12:20,33:d},{10:[1,21]},{10:[1,22]},{8:[1,23]},{12:24,33:d},{12:25,33:d},{12:26,33:d},{31:27,34:[1,28],35:[1,29],36:[1,30],37:[1,31],38:[1,32],39:[1,33]},{23:34,25:[1,35],29:[1,36],30:[1,37]},t([6,8,10,11,15,17,18,19,20,21,22,28,33,34,35,36,37,38,39,40],[2,26]),t(f,[2,4]),{10:[1,38]},t(f,[2,9]),t(f,[2,10]),{16:[1,39]},t(g,n,{5:40}),t(g,n,{5:41}),t([6,8,10,11,15,17,19,20,21,22,33],n,{5:42}),{12:43,33:d},{33:[2,27]},{33:[2,28]},{33:[2,29]},{33:[2,30]},{33:[2,31]},{33:[2,32]},{12:44,33:d},{8:y,26:45},{33:[2,21]},{33:[2,22]},t(f,[2,8]),{10:[1,47]},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,48],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,50],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,21:[1,51],22:h,33:d},{24:52,40:v},{24:54,40:v},{12:56,27:55,33:d},{8:y,26:57,33:[2,18]},t(f,[2,11]),t(f,[2,12]),t(f,p),t(f,[2,13]),{12:58,33:d},{10:[2,23]},{10:[2,33]},{10:[2,15]},{12:59,33:d},{28:[1,60],33:[2,19]},{33:[2,17]},t(g,n,{5:61}),{10:[2,16]},{12:62,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,63],19:c,20:l,22:h,33:d},{33:[2,20]},t(f,[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(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},A=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(e,t,r,n){switch(r){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 e}();return b.lexer=A,e.prototype=b,b.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],108:[function(e,t,r){var n={},i=[],a=[],u=[];r.addActor=function(e,t,r){n[e]={name:t,description:r},i.push(e)},r.addMessage=function(e,t,r,n){a.push({from:e,to:t,message:r,answer:n})},r.addSignal=function(e,t,r,n){a.push({from:e,to:t,message:r,type:n})},r.getMessages=function(){return a},r.getActors=function(){return n},r.getActor=function(e){return n[e]},r.getActorKeys=function(){return Object.keys(n)},r.clear=function(){n={},a=[]},r.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},r.ARROWTYPE={FILLED:0,OPEN:1},r.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},r.addNote=function(e,t,n){var i={actor:e,placement:t,message:n};u.push(i),a.push({from:e,to:e,message:n,type:r.LINETYPE.NOTE,placement:t})},r.parseError=function(e){console.log("Syntax error:"+e)},r.apply=function(e){if(e instanceof Array)e.forEach(function(e){r.apply(e)});else switch(e.type){case"addActor":r.addActor(e.actor,e.actor,e.actor);break;case"addNote":r.addNote(e.actor,e.placement,e.text);break;case"addMessage":r.addSignal(e.from,e.to,e.msg,e.signalType);break;case"loopStart":r.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":r.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":r.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":r.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":r.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":r.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":r.addSignal(void 0,void 0,void 0,e.signalType)}}},{}],109:[function(e,t,r){var n=e("./parser/sequenceDiagram").parser;n.yy=e("./sequenceDb");var i=e("./svgDraw"),a={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35};r.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(e,t,r,n){e[t]="undefined"==typeof e[t]?r:n(r,e[t])},updateLoops:function(e,t,n,i){var u=this,o=0;this.list.forEach(function(s){o++;var c=u.list.length-o+1;u.updateVal(s,"startx",e-c*a.boxMargin,Math.min),u.updateVal(s,"starty",t-c*a.boxMargin,Math.min),u.updateVal(s,"stopx",n+c*a.boxMargin,Math.max),u.updateVal(s,"stopy",i+c*a.boxMargin,Math.max),u.updateVal(r.bounds.data,"startx",e-c*a.boxMargin,Math.min),u.updateVal(r.bounds.data,"starty",t-c*a.boxMargin,Math.min),u.updateVal(r.bounds.data,"stopx",n+c*a.boxMargin,Math.max),u.updateVal(r.bounds.data,"stopy",i+c*a.boxMargin,Math.max)})},insert:function(e,t,n,i){var a,u,o,s;a=Math.min(e,n),o=Math.max(e,n),u=Math.min(t,i),s=Math.max(t,i),this.updateVal(r.bounds.data,"startx",a,Math.min),this.updateVal(r.bounds.data,"starty",u,Math.min),this.updateVal(r.bounds.data,"stopx",o,Math.max),this.updateVal(r.bounds.data,"stopy",s,Math.max),this.updateLoops(a,u,o,s)},newLoop:function(e){this.list.push({startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:e})},endLoop:function(){var e=this.list.pop();return e},addElseToLoop:function(e){var t=this.list.pop();t.elsey=r.bounds.getVerticalPos(),t.elseText=e,this.list.push(t)},bumpVerticalPos:function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}};var u=function(e,t,n,u){var o=i.getNoteRect();o.x=t,o.y=n,o.width=a.width,o.class="note";var s=e.append("g"),c=i.drawRect(s,o),l=i.getTextObj();l.x=t,l.y=n+a.noteMargin,l.textMargin=a.noteMargin,l.dy="1em",l.text=u.message,l.class="noteText";var h=i.drawText(s,l),d=h[0][0].getBBox().height;r.bounds.insert(t,n,t+a.width,n+2*a.noteMargin+d),c.attr("height",d+2*a.noteMargin),r.bounds.bumpVerticalPos(d+2*a.noteMargin)},o=function(e,t,i,a,u){var o,s=e.append("g"),c=t+(i-t)/2,l=s.append("text").attr("x",c).attr("y",a-7).style("text-anchor","middle").attr("class","messageText").text(u.message),h=l[0][0].getBBox().width;if(t===i){o=s.append("path").attr("d","M "+t+","+a+" C "+(t+60)+","+(a-10)+" "+(t+60)+","+(a+30)+" "+t+","+(a+20)),r.bounds.bumpVerticalPos(30);var d=Math.max(h/2,100);r.bounds.insert(t-d,r.bounds.getVerticalPos()-10,i+d,r.bounds.getVerticalPos())}else o=s.append("line"),o.attr("x1",t),o.attr("y1",a),o.attr("x2",i),o.attr("y2",a),r.bounds.insert(t,r.bounds.getVerticalPos()-10,i,r.bounds.getVerticalPos());u.type===n.yy.LINETYPE.DOTTED||u.type===n.yy.LINETYPE.DOTTED_CROSS||u.type===n.yy.LINETYPE.DOTTED_OPEN?(o.style("stroke-dasharray","3, 3"),o.attr("class","messageLine1")):o.attr("class","messageLine0"),o.attr("stroke-width",2),o.attr("stroke","black"),o.style("fill","none"),(u.type===n.yy.LINETYPE.SOLID||u.type===n.yy.LINETYPE.DOTTED)&&o.attr("marker-end","url(#arrowhead)"),(u.type===n.yy.LINETYPE.SOLID_CROSS||u.type===n.yy.LINETYPE.DOTTED_CROSS)&&o.attr("marker-end","url(#crosshead)")};t.exports.drawActors=function(e,t,n){var u;for(u=0;u/gi).forEach(function(e){var n=r.append("tspan");n.attr("x",t.x+t.textMargin),n.attr("dy",t.dy),n.text(e)}),"undefined"!=typeof t.class&&r.attr("class",t.class),r},r.drawLabel=function(e,t){var n=r.getNoteRect();n.x=t.x,n.y=t.y,n.width=50,n.height=20,n.fill="#526e52",n.stroke="none",n.class="labelBox",r.drawRect(e,n),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,t.fill="white",r.drawText(e,t)},r.drawActor=function(e,t,n,i){var a=t+i.width/2,u=e.append("g");u.append("line").attr("x1",a).attr("y1",5).attr("x2",a).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999");var o=r.getNoteRect();o.x=t,o.fill="#eaeaea",o.width=i.width,o.height=i.height,o.class="actor",o.rx=3,o.ry=3,r.drawRect(u,o),u.append("text").attr("x",a).attr("y",i.height/2+5).attr("class","actor").style("text-anchor","middle").text(n)},r.drawLoop=function(e,t,n,i){var a=e.append("g"),u=function(e,t,r,n){a.append("line").attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",n).attr("stroke-width",2).attr("stroke","#526e52").attr("class","loopLine")};u(t.startx,t.starty,t.stopx,t.starty),u(t.stopx,t.starty,t.stopx,t.stopy),u(t.startx,t.stopy,t.stopx,t.stopy),u(t.startx,t.starty,t.startx,t.stopy),"undefined"!=typeof t.elsey&&u(t.startx,t.elsey,t.stopx,t.elsey);var o=r.getTextObj();o.text=n,o.x=t.startx,o.y=t.starty,o.labelMargin=1.5*i.boxMargin,o.class="labelText",o.fill="white",r.drawLabel(a,o),o=r.getTextObj(),o.text="[ "+t.title+" ]",o.x=t.startx+(t.stopx-t.startx)/2,o.y=t.starty+1.5*i.boxMargin,o.anchor="middle",o.class="loopText",r.drawText(a,o),"undefined"!=typeof t.elseText&&(o.text="[ "+t.elseText+" ]",o.y=t.elsey+1.5*i.boxMargin,r.drawText(a,o))},r.insertArrowHead=function(e){e.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")},r.insertArrowCrossHead=function(e){e.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").attr("refX",15).attr("refY",4).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 1,1 L 7,7 M 7,1 L 1,7")},r.getTextObj=function(){var e={x:0,y:0,fill:"black","text-anchor":"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0};return e},r.getNoteRect=function(){var e={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0};return e}},{}],111:[function(e,t,r){(function(t){var n=e("./diagrams/flowchart/graphDb"),i=e("./diagrams/flowchart/parser/flow"),a=e("./utils"),u=e("./diagrams/flowchart/flowRenderer"),o=e("./diagrams/sequenceDiagram/sequenceRenderer"),s=e("he"),c=function(){var e,t=document.querySelectorAll(".mermaid"),r=0;for(e=0;e/g,">"),l=l.replace(/';var h=a.detectType(l),d={};switch(h){case"graph":d=u.getClasses(l,!1),u.draw(l,c,!1),a.cloneCssStyles(i.firstChild,d),n.bindFunctions();break;case"dotGraph":d=u.getClasses(l,!0),u.draw(l,c,!0),a.cloneCssStyles(i.firstChild,d);break;case"sequenceDiagram":o.draw(l,c),a.cloneCssStyles(i.firstChild,[])}}}};r.tester=function(){},r.version=function(){return e("../package.json").version};var l=function(e,t){return"undefined"==typeof t?!1:e===t};t.mermaid={startOnLoad:!0,init:function(){c()},version:function(){return r.version()},getParser:function(){return i.parser}},r.contentLoaded=function(){t.mermaid.startOnLoad&&("undefined"!=typeof mermaid_config?l(!0,mermaid_config.startOnLoad)&&t.mermaid.init():t.mermaid.init())},"undefined"!=typeof document&&document.addEventListener("DOMContentLoaded",function(){r.contentLoaded()},!1)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../package.json":102,"./diagrams/flowchart/flowRenderer":103,"./diagrams/flowchart/graphDb":104,"./diagrams/flowchart/parser/flow":106,"./diagrams/sequenceDiagram/sequenceRenderer":109,"./utils":112,he:100}],112:[function(e,t){t.exports.detectType=function(e){return e.match(/^\s*sequenceDiagram/)?"sequenceDiagram":e.match(/^\s*sequence/)?"sequence":e.match(/^\s*digraph/)?(console.log("Detected flow syntax"),"dotGraph"):"graph"},t.exports.cloneCssStyles=function(e,t){for(var r="",n=document.styleSheets,i=0;i0&&(r+=o.selectorText+" { "+o.style.cssText+" }\n")}}}var c="",l="";for(var h in t)t.hasOwnProperty(h)&&"undefined"!=typeof h&&("default"===h?c=".node { "+t[h].styles.join("; ")+"; }\n":l+="."+h+" { "+t[h].styles.join("; ")+"; }\n");if(""!==r||""!==c||""!==l){var d=document.createElement("style");d.setAttribute("type","text/css"),d.setAttribute("title","mermaid-svg-internal-css"),d.innerHTML="/* */\n",e.insertBefore(d,e.firstChild)}}},{}]},{},[111]); \ No newline at end of file diff --git a/dist/mermaid.slim.js b/dist/mermaid.slim.js index 504b4ff45..5bbb16069 100644 --- a/dist/mermaid.slim.js +++ b/dist/mermaid.slim.js @@ -13088,6 +13088,8 @@ exports.addVertices = function (vert, g) { */ var classStr = ''; + //console.log(vertice.classes); + if(vertice.classes.length >0){ classStr = vertice.classes.join(" "); } @@ -13245,7 +13247,10 @@ exports.draw = function (text, id,isDot) { } // Create the input mermaid.graph - var g = new dagreD3.graphlib.Graph({multigraph:true}) + var g = new dagreD3.graphlib.Graph({ + multigraph:true, + compound: true + }) .setGraph({ rankdir: dir, marginx: 20, @@ -13256,9 +13261,33 @@ exports.draw = function (text, id,isDot) { return {}; }); + var subGraphs = graph.getSubGraphs(); + var i = 0; + subGraphs.forEach(function(subG){ + i = i + 1; + var id = 'subG'+i; + graph.addVertex(id,undefined,undefined,undefined); + }); + // Fetch the verices/nodes and edges/links from the parsed graph definition var vert = graph.getVertices(); + + //console.log(vert); var edges = graph.getEdges(); + //g.setParent("A", "p"); + //g.setParent("B", "p"); + + //console.log(subGraphs); + i = 0; + subGraphs.forEach(function(subG){ + i = i + 1; + var id = 'subG'+i; + //console.log('Setting id '+id); + subG.forEach(function(node){ + //console.log('Setting node',node,' to subgraph '+id); + g.setParent(node,id); + }); + }); exports.addVertices(vert, g); exports.addEdges(edges, g); @@ -13349,6 +13378,7 @@ exports.draw = function (text, id,isDot) { var vertices = {}; var edges = []; var classes = []; +var subGraphs = []; var direction; // Functions to be run after graph rendering var funs = []; @@ -13541,6 +13571,7 @@ exports.clear = function () { classes = {}; edges = []; funs = []; + subGraphs = []; }; /** * @@ -13550,6 +13581,32 @@ exports.defaultStyle = function () { return "fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"; }; +/** + * Clears the internal graph db so that a new graph can be parsed. + */ +exports.addSubGraph = function (list) { + function uniq(a) { + var prims = {"boolean":{}, "number":{}, "string":{}}, objs = []; + + return a.filter(function(item) { + var type = typeof item; + if(type in prims) + return prims[type].hasOwnProperty(item) ? false : (prims[type][item] = true); + else + return objs.indexOf(item) >= 0 ? false : objs.push(item); + }); + } + + var subG = []; + + subG = uniq(subG.concat.apply(subG,list)); + + subGraphs.push(subG); +}; +exports.getSubGraphs = function (list) { + return subGraphs; +}; + },{}],105:[function(require,module,exports){ (function (process){ /* parser generated by jison 0.4.15 */ @@ -14364,147 +14421,160 @@ if (typeof module !== 'undefined' && require.main === module) { } */ var parser = (function(){ -var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,7],$V1=[1,8],$V2=[1,18],$V3=[1,19],$V4=[1,20],$V5=[1,21],$V6=[1,22],$V7=[1,27],$V8=[1,16],$V9=[1,29],$Va=[1,26],$Vb=[1,28],$Vc=[1,34],$Vd=[1,33],$Ve=[1,30],$Vf=[1,31],$Vg=[1,32],$Vh=[1,6],$Vi=[53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$Vj=[1,46],$Vk=[1,45],$Vl=[1,44],$Vm=[6,16,17],$Vn=[1,56],$Vo=[1,57],$Vp=[1,58],$Vq=[1,59],$Vr=[6,16,17,43,44,45,46,47],$Vs=[6,9,12,13,16,17,31,34,36,43,44,45,46,47],$Vt=[6,9,12,13,16,17,31,34,36,43,44,45,46,47,62,65,67,68,70,71,73,74,75],$Vu=[6,8,9,10,12,13,16,17,31,33,34,35,36,37,40,43,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],$Vv=[1,6,9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$Vw=[1,111],$Vx=[1,103],$Vy=[1,112],$Vz=[1,86],$VA=[1,85],$VB=[1,101],$VC=[1,90],$VD=[1,91],$VE=[1,88],$VF=[1,89],$VG=[1,92],$VH=[1,93],$VI=[1,104],$VJ=[1,97],$VK=[1,98],$VL=[1,96],$VM=[1,99],$VN=[1,87],$VO=[1,106],$VP=[1,107],$VQ=[1,108],$VR=[1,109],$VS=[1,110],$VT=[1,94],$VU=[1,95],$VV=[1,100],$VW=[62,65,67,68,70,71,73,74,75],$VX=[9,48,62,65,67,68,70,71,73,74,75],$VY=[1,136],$VZ=[1,133],$V_=[1,134],$V$=[8,9,10,12,13,16,17,31,33,34,35,36,37,40,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],$V01=[2,99],$V11=[2,101],$V21=[8,9,10,12,13,33,35,37,40,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75],$V31=[9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$V41=[1,170],$V51=[1,167],$V61=[1,171],$V71=[1,168],$V81=[1,165],$V91=[1,166],$Va1=[1,169],$Vb1=[1,172],$Vc1=[1,173],$Vd1=[8,9,10,12,13,40,53,54,55,56,57,62,65,67,68,70,71,73,74,75],$Ve1=[2,44],$Vf1=[1,185],$Vg1=[6,16,17,65],$Vh1=[6,9,16,17,40,61,62,65,67,68,69,70,71]; +var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,9,10,12,19,29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$V1=[2,2],$V2=[1,9],$V3=[1,10],$V4=[1,11],$V5=[1,12],$V6=[1,20],$V7=[1,23],$V8=[1,24],$V9=[1,25],$Va=[1,26],$Vb=[1,27],$Vc=[1,32],$Vd=[1,21],$Ve=[1,34],$Vf=[1,31],$Vg=[1,33],$Vh=[1,39],$Vi=[1,38],$Vj=[1,35],$Vk=[1,36],$Vl=[1,37],$Vm=[1,9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$Vn=[29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$Vo=[2,19],$Vp=[1,51],$Vq=[1,52],$Vr=[1,50],$Vs=[9,10,19],$Vt=[1,63],$Vu=[1,64],$Vv=[1,65],$Vw=[1,66],$Vx=[9,10,19,47,48,49,50,51],$Vy=[9,10,12,15,16,19,35,38,40,47,48,49,50,51],$Vz=[9,10,12,15,16,19,35,38,40,47,48,49,50,51,66,69,71,72,74,75,77,78,79],$VA=[9,10,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,47,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],$VB=[1,81],$VC=[1,84],$VD=[1,82],$VE=[1,91],$VF=[1,90],$VG=[1,113],$VH=[1,123],$VI=[1,115],$VJ=[1,124],$VK=[1,98],$VL=[1,97],$VM=[1,125],$VN=[1,126],$VO=[1,102],$VP=[1,103],$VQ=[1,100],$VR=[1,101],$VS=[1,104],$VT=[1,105],$VU=[1,116],$VV=[1,109],$VW=[1,110],$VX=[1,108],$VY=[1,111],$VZ=[1,99],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,121],$V21=[1,122],$V31=[1,106],$V41=[1,107],$V51=[1,112],$V61=[66,69,71,72,74,75,77,78,79],$V71=[12,52,66,69,71,72,74,75,77,78,79],$V81=[9,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],$V91=[2,104],$Va1=[2,106],$Vb1=[11,12,13,15,16,29,31,37,39,41,44,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79],$Vc1=[1,177],$Vd1=[1,174],$Ve1=[1,178],$Vf1=[1,175],$Vg1=[1,172],$Vh1=[1,173],$Vi1=[1,176],$Vj1=[1,179],$Vk1=[1,180],$Vl1=[11,12,13,15,16,29,31,44,57,58,59,60,61,66,69,71,72,74,75,77,78,79],$Vm1=[2,47],$Vn1=[1,192],$Vo1=[9,10,19,69],$Vp1=[9,10,12,19,44,65,66,69,71,72,73,74,75]; var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"expressions":3,"graphConfig":4,"statements":5,"EOF":6,"spaceListNewline":7,"GRAPH":8,"SPACE":9,"DIR":10,"FirstStmtSeperator":11,"TAGEND":12,"TAGSTART":13,"UP":14,"DOWN":15,"SEMI":16,"NEWLINE":17,"spaceList":18,"statement":19,"commentStatement":20,"verticeStatement":21,"separator":22,"styleStatement":23,"linkStyleStatement":24,"classDefStatement":25,"classStatement":26,"clickStatement":27,"vertex":28,"link":29,"alphaNum":30,"SQS":31,"text":32,"SQE":33,"PS":34,"PE":35,"DIAMOND_START":36,"DIAMOND_STOP":37,"alphaNumStatement":38,"alphaNumToken":39,"MINUS":40,"linkStatement":41,"arrowText":42,"--":43,"ARROW_POINT":44,"ARROW_CIRCLE":45,"ARROW_CROSS":46,"ARROW_OPEN":47,"PIPE":48,"textToken":49,"commentText":50,"commentToken":51,"keywords":52,"STYLE":53,"LINKSTYLE":54,"CLASSDEF":55,"CLASS":56,"CLICK":57,"textNoTags":58,"textNoTagsToken":59,"stylesOpt":60,"HEX":61,"NUM":62,"PCT":63,"style":64,"COMMA":65,"styleComponent":66,"ALPHA":67,"COLON":68,"UNIT":69,"BRKT":70,"DOT":71,"graphCodeTokens":72,"PLUS":73,"EQUALS":74,"MULT":75,"TAG_START":76,"TAG_END":77,"QUOTE":78,"$accept":0,"$end":1}, -terminals_: {2:"error",6:"EOF",8:"GRAPH",9:"SPACE",10:"DIR",12:"TAGEND",13:"TAGSTART",14:"UP",15:"DOWN",16:"SEMI",17:"NEWLINE",31:"SQS",33:"SQE",34:"PS",35:"PE",36:"DIAMOND_START",37:"DIAMOND_STOP",40:"MINUS",43:"--",44:"ARROW_POINT",45:"ARROW_CIRCLE",46:"ARROW_CROSS",47:"ARROW_OPEN",48:"PIPE",53:"STYLE",54:"LINKSTYLE",55:"CLASSDEF",56:"CLASS",57:"CLICK",61:"HEX",62:"NUM",63:"PCT",65:"COMMA",67:"ALPHA",68:"COLON",69:"UNIT",70:"BRKT",71:"DOT",73:"PLUS",74:"EQUALS",75:"MULT",76:"TAG_START",77:"TAG_END",78:"QUOTE"}, -productions_: [0,[3,3],[3,2],[3,4],[3,3],[4,4],[4,4],[4,4],[4,4],[4,4],[11,1],[11,1],[11,2],[5,3],[5,2],[5,1],[7,2],[7,2],[7,1],[7,1],[18,2],[18,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[22,1],[22,1],[22,1],[21,3],[21,1],[28,4],[28,5],[28,6],[28,7],[28,4],[28,5],[28,4],[28,5],[28,4],[28,5],[28,4],[28,1],[28,2],[30,1],[30,2],[38,1],[38,3],[29,2],[29,3],[29,1],[29,2],[29,5],[29,6],[41,1],[41,1],[41,1],[41,1],[42,3],[32,1],[32,2],[50,1],[50,2],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[58,1],[58,2],[25,5],[26,5],[27,5],[23,5],[23,5],[24,5],[20,3],[60,1],[60,3],[64,1],[64,2],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[51,1],[51,1],[49,1],[49,1],[49,1],[59,1],[59,1],[59,1],[59,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1]], +symbols_: {"error":2,"mermaidDoc":3,"graphConfig":4,"document":5,"line":6,"spaceListNewline":7,"statement":8,"SEMI":9,"EOF":10,"GRAPH":11,"SPACE":12,"DIR":13,"FirstStmtSeperator":14,"TAGEND":15,"TAGSTART":16,"UP":17,"DOWN":18,"NEWLINE":19,"spaceList":20,"commentStatement":21,"verticeStatement":22,"separator":23,"styleStatement":24,"linkStyleStatement":25,"classDefStatement":26,"classStatement":27,"clickStatement":28,"subgraph":29,"endStatement":30,"end":31,"vertex":32,"link":33,"alphaNum":34,"SQS":35,"text":36,"SQE":37,"PS":38,"PE":39,"DIAMOND_START":40,"DIAMOND_STOP":41,"alphaNumStatement":42,"alphaNumToken":43,"MINUS":44,"linkStatement":45,"arrowText":46,"--":47,"ARROW_POINT":48,"ARROW_CIRCLE":49,"ARROW_CROSS":50,"ARROW_OPEN":51,"PIPE":52,"textToken":53,"commentText":54,"commentToken":55,"keywords":56,"STYLE":57,"LINKSTYLE":58,"CLASSDEF":59,"CLASS":60,"CLICK":61,"textNoTags":62,"textNoTagsToken":63,"stylesOpt":64,"HEX":65,"NUM":66,"PCT":67,"style":68,"COMMA":69,"styleComponent":70,"ALPHA":71,"COLON":72,"UNIT":73,"BRKT":74,"DOT":75,"graphCodeTokens":76,"PLUS":77,"EQUALS":78,"MULT":79,"TAG_START":80,"TAG_END":81,"QUOTE":82,"$accept":0,"$end":1}, +terminals_: {2:"error",9:"SEMI",10:"EOF",11:"GRAPH",12:"SPACE",13:"DIR",15:"TAGEND",16:"TAGSTART",17:"UP",18:"DOWN",19:"NEWLINE",29:"subgraph",31:"end",35:"SQS",37:"SQE",38:"PS",39:"PE",40:"DIAMOND_START",41:"DIAMOND_STOP",44:"MINUS",47:"--",48:"ARROW_POINT",49:"ARROW_CIRCLE",50:"ARROW_CROSS",51:"ARROW_OPEN",52:"PIPE",57:"STYLE",58:"LINKSTYLE",59:"CLASSDEF",60:"CLASS",61:"CLICK",65:"HEX",66:"NUM",67:"PCT",69:"COMMA",71:"ALPHA",72:"COLON",73:"UNIT",74:"BRKT",75:"DOT",77:"PLUS",78:"EQUALS",79:"MULT",80:"TAG_START",81:"TAG_END",82:"QUOTE"}, +productions_: [0,[3,2],[5,0],[5,2],[6,2],[6,1],[6,1],[6,1],[4,4],[4,4],[4,4],[4,4],[4,4],[14,1],[14,1],[14,2],[7,2],[7,2],[7,1],[7,1],[20,2],[20,1],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,4],[30,1],[30,2],[23,1],[23,1],[23,1],[22,3],[22,1],[32,4],[32,5],[32,6],[32,7],[32,4],[32,5],[32,4],[32,5],[32,4],[32,5],[32,4],[32,1],[32,2],[34,1],[34,2],[42,1],[42,3],[33,2],[33,3],[33,1],[33,2],[33,5],[33,6],[45,1],[45,1],[45,1],[45,1],[46,3],[36,1],[36,2],[54,1],[54,2],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[62,1],[62,2],[26,5],[27,5],[28,5],[24,5],[24,5],[25,5],[21,3],[64,1],[64,3],[68,1],[68,2],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[55,1],[55,1],[53,1],[53,1],[53,1],[63,1],[63,1],[63,1],[63,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1]], performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) { /* this == yyval */ var $0 = $$.length - 1; switch (yystate) { +case 2: + this.$ = []; +break; case 3: -this.$=$$[$0-3]; + + if($$[$0] !== []){ + $$[$0-1].push($$[$0]); + } + this.$=$$[$0-1]; break; -case 4: -this.$=$$[$0-2]; -break; -case 5: - yy.setDirection($$[$0-1]);this.$ = $$[$0-1]; -break; -case 6: - yy.setDirection("LR");this.$ = $$[$0-1]; -break; -case 7: - yy.setDirection("RL");this.$ = $$[$0-1]; -break; -case 8: - yy.setDirection("BT");this.$ = $$[$0-1]; -break; -case 9: - yy.setDirection("TB");this.$ = $$[$0-1]; -break; -case 32: - yy.addLink($$[$0-2],$$[$0],$$[$0-1]);this.$ = 'oy' -break; -case 33: -this.$ = 'yo'; -break; -case 34: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'square'); -break; -case 35: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'square'); -break; -case 36: -this.$ = $$[$0-5];yy.addVertex($$[$0-5],$$[$0-2],'circle'); -break; -case 37: -this.$ = $$[$0-6];yy.addVertex($$[$0-6],$$[$0-3],'circle'); -break; -case 38: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'round'); -break; -case 39: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'round'); -break; -case 40: case 44: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'diamond'); -break; -case 41: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'diamond'); -break; -case 42: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'odd'); -break; -case 43: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'odd'); -break; -case 45: -this.$ = $$[$0];yy.addVertex($$[$0]); -break; -case 46: -this.$ = $$[$0-1];yy.addVertex($$[$0-1]); -break; -case 47: case 49: case 62: case 64: case 73: +case 4: case 5: case 50: case 52: case 65: case 67: case 78: this.$=$$[$0]; break; -case 48: case 63: case 65: case 74: +case 8: + yy.setDirection($$[$0-1]);this.$ = $$[$0-1]; +break; +case 9: + yy.setDirection("LR");this.$ = $$[$0-1]; +break; +case 10: + yy.setDirection("RL");this.$ = $$[$0-1]; +break; +case 11: + yy.setDirection("BT");this.$ = $$[$0-1]; +break; +case 12: + yy.setDirection("TB");this.$ = $$[$0-1]; +break; +case 22: case 24: case 25: case 26: case 27: case 28: +this.$=[]; +break; +case 23: +this.$=$$[$0-1] +break; +case 29: +yy.addSubGraph($$[$0-2]); +break; +case 35: + yy.addLink($$[$0-2],$$[$0],$$[$0-1]);this.$ = [$$[$0-2],$$[$0]]; +break; +case 36: +this.$ = 'yo'; +break; +case 37: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'square'); +break; +case 38: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'square'); +break; +case 39: +this.$ = $$[$0-5];yy.addVertex($$[$0-5],$$[$0-2],'circle'); +break; +case 40: +this.$ = $$[$0-6];yy.addVertex($$[$0-6],$$[$0-3],'circle'); +break; +case 41: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'round'); +break; +case 42: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'round'); +break; +case 43: case 47: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'diamond'); +break; +case 44: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'diamond'); +break; +case 45: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'odd'); +break; +case 46: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'odd'); +break; +case 48: +this.$ = $$[$0];yy.addVertex($$[$0]); +break; +case 49: +this.$ = $$[$0-1];yy.addVertex($$[$0-1]); +break; +case 51: case 66: case 68: case 79: this.$=$$[$0-1]+''+$$[$0]; break; -case 50: +case 53: this.$=$$[$0-2]+'-'+$$[$0]; break; -case 51: +case 54: $$[$0-1].text = $$[$0];this.$ = $$[$0-1]; break; -case 52: +case 55: $$[$0-2].text = $$[$0-1];this.$ = $$[$0-2]; break; -case 53: +case 56: this.$ = $$[$0]; break; -case 54: case 61: +case 57: case 64: this.$ = $$[$0-1]; break; -case 55: +case 58: $$[$0].text = $$[$0-2];this.$ = $$[$0]; break; -case 56: +case 59: $$[$0-1].text = $$[$0-3];this.$ = $$[$0-1]; break; -case 57: +case 60: this.$ = {"type":"arrow"}; break; -case 58: +case 61: this.$ = {"type":"arrow_circle"}; break; -case 59: +case 62: this.$ = {"type":"arrow_cross"}; break; -case 60: +case 63: this.$ = {"type":"arrow_open"}; break; -case 75: +case 80: this.$ = $$[$0-4];yy.addClass($$[$0-2],$$[$0]); break; -case 76: +case 81: this.$ = $$[$0-4];yy.setClass($$[$0-2], $$[$0]); break; -case 77: +case 82: this.$ = $$[$0-4];yy.setClickEvent($$[$0-2], $$[$0]); break; -case 78: +case 83: this.$ = $$[$0-4];yy.addVertex($$[$0-2],undefined,undefined,$$[$0]); break; -case 79: case 80: +case 84: case 85: this.$ = $$[$0-4];yy.updateLink($$[$0-2],$$[$0]); break; -case 82: +case 87: this.$ = [$$[$0]] break; -case 83: +case 88: $$[$0-2].push($$[$0]);this.$ = $$[$0-2]; break; -case 85: +case 90: this.$ = $$[$0-1] + $$[$0]; break; } }, -table: [{3:1,4:2,8:[1,3]},{1:[3]},{5:4,7:5,9:$V0,17:$V1,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:[1,35]},{1:[2,2],6:[1,36]},{5:37,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vh,[2,15],{19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,7:38,5:39,9:$V0,17:$V1,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg}),o($Vi,[2,19],{7:40,9:$V0,17:$V1}),o($Vi,[2,18],{7:41,9:$V0,17:$V1}),{17:[1,42]},{6:$Vj,16:$Vk,17:$Vl,22:43},{6:$Vj,16:$Vk,17:$Vl,22:47},{6:$Vj,16:$Vk,17:$Vl,22:48},{6:$Vj,16:$Vk,17:$Vl,22:49},{6:$Vj,16:$Vk,17:$Vl,22:50},{6:$Vj,16:$Vk,17:$Vl,22:51},{63:[1,52]},o($Vm,[2,33],{29:53,41:54,43:[1,55],44:$Vn,45:$Vo,46:$Vp,47:$Vq}),{9:[1,60]},{9:[1,61]},{9:[1,62]},{9:[1,63]},{9:[1,64]},o($Vr,[2,45],{9:[1,70],12:[1,68],13:[1,69],31:[1,65],34:[1,66],36:[1,67]}),o($Vs,[2,47],{38:24,39:25,30:71,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg}),o($Vt,[2,49],{40:[1,72]}),o($Vu,[2,104]),o($Vu,[2,105]),o($Vu,[2,106]),o($Vu,[2,107]),o($Vu,[2,108]),o($Vu,[2,109]),o($Vu,[2,110]),o($Vu,[2,111]),o($Vu,[2,112]),{10:[1,73],12:[1,74],13:[1,75],14:[1,76],15:[1,77]},{1:[2,1]},{1:[2,4],6:[1,78]},{5:79,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vh,[2,14]),o($Vi,[2,16]),o($Vi,[2,17]),o($Vv,[2,22]),o($Vv,[2,23]),o($Vv,[2,29]),o($Vv,[2,30]),o($Vv,[2,31]),o($Vv,[2,24]),o($Vv,[2,25]),o($Vv,[2,26]),o($Vv,[2,27]),o($Vv,[2,28]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,16:$VB,31:$VC,33:$VD,34:$VE,35:$VF,36:$VG,37:$VH,39:102,40:$VI,44:$VJ,45:$VK,46:$VL,47:$VM,48:$VN,49:82,50:80,51:81,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,72:83,73:$Ve,74:$Vf,75:$Vg,76:$VT,77:$VU,78:$VV},{28:113,30:23,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($VW,[2,53],{42:114,9:[1,115],48:[1,116]}),{9:[1,117]},o($VX,[2,57]),o($VX,[2,58]),o($VX,[2,59]),o($VX,[2,60]),{30:118,38:24,39:25,61:[1,119],62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{62:[1,120]},{30:121,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:122,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:123,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:124,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:127,34:[1,126],39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:128,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:129,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:130,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,46]),o($Vs,[2,48]),{39:131,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:$VY,11:132,16:$VZ,17:$V_,18:135},{9:$VY,11:137,16:$VZ,17:$V_,18:135},{9:$VY,11:138,16:$VZ,17:$V_,18:135},{9:$VY,11:139,16:$VZ,17:$V_,18:135},{9:$VY,11:140,16:$VZ,17:$V_,18:135},{1:[2,3]},o($Vh,[2,13]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,16:$VB,17:[2,81],31:$VC,33:$VD,34:$VE,35:$VF,36:$VG,37:$VH,39:102,40:$VI,44:$VJ,45:$VK,46:$VL,47:$VM,48:$VN,49:82,51:141,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,72:83,73:$Ve,74:$Vf,75:$Vg,76:$VT,77:$VU,78:$VV},o($V$,[2,64]),o($V$,[2,95]),o($V$,[2,96]),o($V$,[2,97]),o($V$,[2,98]),o($V$,$V01),o($V$,[2,113]),o($V$,[2,114]),o($V$,[2,115]),o($V$,[2,116]),o($V$,[2,117]),o($V$,[2,118]),o($V$,[2,119]),o($V$,[2,120]),o($V$,[2,121]),o($V$,[2,122]),o($V$,[2,123]),o($V$,[2,124]),o($V$,[2,125]),o($V$,[2,126]),o($V$,[2,127]),o($V$,[2,100]),o($V$,$V11),o($V$,[2,102]),o($V$,[2,103]),o($V$,[2,66]),o($V$,[2,67]),o($V$,[2,68]),o($V$,[2,69]),o($V$,[2,70]),o($V$,[2,71]),o($V$,[2,72]),o($Vm,[2,32]),o($VW,[2,51],{9:[1,142]}),o($VW,[2,54]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:143,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:144,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:[1,145]},{9:[1,146]},{9:[1,147]},{9:[1,148]},{9:[1,149]},{9:[1,150]},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,33:[1,151],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($V21,[2,62]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:153,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,35:[1,154],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,37:[1,155],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,33:[1,156],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:[1,157],13:$VA,39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vt,[2,50]),o($V31,[2,5]),o($V31,[2,10]),o($V31,[2,11]),{17:[1,158]},{9:$VY,17:[2,21],18:159},o($V31,[2,6]),o($V31,[2,7]),o($V31,[2,8]),o($V31,[2,9]),o($V$,[2,65]),o($VW,[2,52]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,39:102,40:$VI,48:[1,160],49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:[1,161],10:$Vy,12:$Vz,13:$VA,39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:$V41,40:$V51,60:162,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:174,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:175,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:176,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{30:177,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:178,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,34],{9:[1,179]}),o($V21,[2,63]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,35:[1,180],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,38],{9:[1,181]}),o($Vr,[2,40],{9:[1,182]}),o($Vr,[2,42],{9:[1,183]}),o($Vd1,$V01,{6:$Ve1,16:$Ve1,17:$Ve1,43:$Ve1,44:$Ve1,45:$Ve1,46:$Ve1,47:$Ve1}),o($V31,[2,12]),{17:[2,20]},o([9,62,65,67,68,70,71,73,74,75],[2,61]),o($Vd1,$V11,{41:184,44:$Vn,45:$Vo,46:$Vp,47:$Vq}),o($Vm,[2,78],{65:$Vf1}),o($Vg1,[2,82],{66:186,9:$V41,40:$V51,61:$V61,62:$V71,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1}),o($Vh1,[2,84]),o($Vh1,[2,86]),o($Vh1,[2,87]),o($Vh1,[2,88]),o($Vh1,[2,89]),o($Vh1,[2,90]),o($Vh1,[2,91]),o($Vh1,[2,92]),o($Vh1,[2,93]),o($Vh1,[2,94]),o($Vm,[2,79],{65:$Vf1}),o($Vm,[2,80],{65:$Vf1}),o($Vm,[2,75],{65:$Vf1}),o($Vm,[2,76]),o($Vm,[2,77]),o($Vr,[2,35]),{35:[1,187]},o($Vr,[2,39]),o($Vr,[2,41]),o($Vr,[2,43]),o($VW,[2,55],{9:[1,188]}),{9:$V41,40:$V51,61:$V61,62:$V71,64:189,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},o($Vh1,[2,85]),o($Vr,[2,36],{9:[1,190]}),o($VW,[2,56]),o($Vg1,[2,83],{66:186,9:$V41,40:$V51,61:$V61,62:$V71,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1}),o($Vr,[2,37])], -defaultActions: {36:[2,1],78:[2,3],159:[2,20]}, +table: [{3:1,4:2,11:[1,3]},{1:[3]},o($V0,$V1,{5:4}),{12:[1,5]},{1:[2,1],6:6,7:7,8:8,9:$V2,10:$V3,12:$V4,19:$V5,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{13:[1,40],15:[1,41],16:[1,42],17:[1,43],18:[1,44]},o($Vm,[2,3]),{8:45,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vm,[2,5]),o($Vm,[2,6]),o($Vm,[2,7]),o($Vn,$Vo,{7:46,12:$V4,19:$V5}),o($Vn,[2,18],{7:47,12:$V4,19:$V5}),{19:[1,48]},{9:$Vp,10:$Vq,19:$Vr,23:49},{9:$Vp,10:$Vq,19:$Vr,23:53},{9:$Vp,10:$Vq,19:$Vr,23:54},{9:$Vp,10:$Vq,19:$Vr,23:55},{9:$Vp,10:$Vq,19:$Vr,23:56},{9:$Vp,10:$Vq,19:$Vr,23:57},o([9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$V1,{5:58}),{67:[1,59]},o($Vs,[2,36],{33:60,45:61,47:[1,62],48:$Vt,49:$Vu,50:$Vv,51:$Vw}),{12:[1,67]},{12:[1,68]},{12:[1,69]},{12:[1,70]},{12:[1,71]},o($Vx,[2,48],{12:[1,77],15:[1,75],16:[1,76],35:[1,72],38:[1,73],40:[1,74]}),o($Vy,[2,50],{42:29,43:30,34:78,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl}),o($Vz,[2,52],{44:[1,79]}),o($VA,[2,109]),o($VA,[2,110]),o($VA,[2,111]),o($VA,[2,112]),o($VA,[2,113]),o($VA,[2,114]),o($VA,[2,115]),o($VA,[2,116]),o($VA,[2,117]),{9:$VB,12:$VC,14:80,19:$VD,20:83},{9:$VB,12:$VC,14:85,19:$VD,20:83},{9:$VB,12:$VC,14:86,19:$VD,20:83},{9:$VB,12:$VC,14:87,19:$VD,20:83},{9:$VB,12:$VC,14:88,19:$VD,20:83},o($Vm,[2,4]),o($Vn,[2,16]),o($Vn,[2,17]),o($Vm,[2,22]),o($Vm,[2,23]),o($Vm,[2,32]),o($Vm,[2,33]),o($Vm,[2,34]),o($Vm,[2,24]),o($Vm,[2,25]),o($Vm,[2,26]),o($Vm,[2,27]),o($Vm,[2,28]),{6:6,7:7,8:8,9:$V2,10:$V3,12:$VE,19:$V5,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,30:89,31:$VF,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{9:$VG,11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,35:$VO,37:$VP,38:$VQ,39:$VR,40:$VS,41:$VT,43:114,44:$VU,48:$VV,49:$VW,50:$VX,51:$VY,52:$VZ,53:94,54:92,55:93,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,76:95,77:$Vj,78:$Vk,79:$Vl,80:$V31,81:$V41,82:$V51},{32:127,34:28,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($V61,[2,56],{46:128,12:[1,129],52:[1,130]}),{12:[1,131]},o($V71,[2,60]),o($V71,[2,61]),o($V71,[2,62]),o($V71,[2,63]),{34:132,42:29,43:30,65:[1,133],66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{66:[1,134]},{34:135,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:136,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:137,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:138,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:141,38:[1,140],43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:142,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:143,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:144,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,49]),o($Vy,[2,51]),{43:145,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($V0,[2,8]),o($V0,[2,13]),o($V0,[2,14]),{19:[1,146]},{12:$VC,19:[2,21],20:147},o($V0,[2,9]),o($V0,[2,10]),o($V0,[2,11]),o($V0,[2,12]),{9:$Vp,10:$Vq,19:$Vr,23:148},o($Vs,[2,30]),o($Vn,$Vo,{7:46,30:149,12:$VE,19:$V5,31:$VF}),{9:$VG,11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,19:[2,86],29:$VM,31:$VN,35:$VO,37:$VP,38:$VQ,39:$VR,40:$VS,41:$VT,43:114,44:$VU,48:$VV,49:$VW,50:$VX,51:$VY,52:$VZ,53:94,55:150,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,76:95,77:$Vj,78:$Vk,79:$Vl,80:$V31,81:$V41,82:$V51},o($V81,[2,67]),o($V81,[2,100]),o($V81,[2,101]),o($V81,[2,102]),o($V81,[2,103]),o($V81,$V91),o($V81,[2,118]),o($V81,[2,119]),o($V81,[2,120]),o($V81,[2,121]),o($V81,[2,122]),o($V81,[2,123]),o($V81,[2,124]),o($V81,[2,125]),o($V81,[2,126]),o($V81,[2,127]),o($V81,[2,128]),o($V81,[2,129]),o($V81,[2,130]),o($V81,[2,131]),o($V81,[2,132]),o($V81,[2,105]),o($V81,$Va1),o($V81,[2,107]),o($V81,[2,108]),o($V81,[2,69]),o($V81,[2,70]),o($V81,[2,71]),o($V81,[2,72]),o($V81,[2,73]),o($V81,[2,74]),o($V81,[2,75]),o($V81,[2,76]),o($V81,[2,77]),o($Vs,[2,35]),o($V61,[2,54],{12:[1,151]}),o($V61,[2,57]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:152,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:153,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{12:[1,154]},{12:[1,155]},{12:[1,156]},{12:[1,157]},{12:[1,158]},{12:[1,159]},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,37:[1,160],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vb1,[2,65]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:162,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,39:[1,163],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,41:[1,164],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,37:[1,165],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:[1,166],16:$VL,29:$VM,31:$VN,43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vz,[2,53]),o($V0,[2,15]),{19:[2,20]},o($Vm,[2,29]),o($Vs,[2,31]),o($V81,[2,68]),o($V61,[2,55]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,43:114,44:$VU,52:[1,167],53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:[1,168],13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{12:$Vc1,44:$Vd1,64:169,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:181,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:182,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:183,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{34:184,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:185,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,37],{12:[1,186]}),o($Vb1,[2,66]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,39:[1,187],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,41],{12:[1,188]}),o($Vx,[2,43],{12:[1,189]}),o($Vx,[2,45],{12:[1,190]}),o($Vl1,$V91,{9:$Vm1,10:$Vm1,19:$Vm1,47:$Vm1,48:$Vm1,49:$Vm1,50:$Vm1,51:$Vm1}),o([12,66,69,71,72,74,75,77,78,79],[2,64]),o($Vl1,$Va1,{45:191,48:$Vt,49:$Vu,50:$Vv,51:$Vw}),o($Vs,[2,83],{69:$Vn1}),o($Vo1,[2,87],{70:193,12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1}),o($Vp1,[2,89]),o($Vp1,[2,91]),o($Vp1,[2,92]),o($Vp1,[2,93]),o($Vp1,[2,94]),o($Vp1,[2,95]),o($Vp1,[2,96]),o($Vp1,[2,97]),o($Vp1,[2,98]),o($Vp1,[2,99]),o($Vs,[2,84],{69:$Vn1}),o($Vs,[2,85],{69:$Vn1}),o($Vs,[2,80],{69:$Vn1}),o($Vs,[2,81]),o($Vs,[2,82]),o($Vx,[2,38]),{39:[1,194]},o($Vx,[2,42]),o($Vx,[2,44]),o($Vx,[2,46]),o($V61,[2,58],{12:[1,195]}),{12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,68:196,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},o($Vp1,[2,90]),o($Vx,[2,39],{12:[1,197]}),o($V61,[2,59]),o($Vo1,[2,88],{70:193,12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1}),o($Vx,[2,40])], +defaultActions: {147:[2,20]}, parseError: function parseError(str, hash) { if (hash.recoverable) { this.trace(str); @@ -14978,100 +15048,104 @@ options: {}, performAction: function anonymous(yy,yy_,$avoiding_name_collisions,YY_START) { var YYSTATE=YY_START; switch($avoiding_name_collisions) { -case 0:return 53; +case 0:return 57; break; -case 1:return 54; +case 1:return 58; break; -case 2:return 55; +case 2:return 59; break; -case 3:return 56; +case 3:return 60; break; -case 4:return 57; +case 4:return 61; break; -case 5:return 8; +case 5:return 11; break; -case 6:return 10; +case 6:return 29; break; -case 7:return 10; +case 7:return 31; break; -case 8:return 10; +case 8:return 13; break; -case 9:return 10; +case 9:return 13; break; -case 10:return 10; +case 10:return 13; break; -case 11:return 10; +case 11:return 13; break; -case 12:return 62; +case 12:return 13; break; -case 13:return 70; +case 13:return 13; break; -case 14:return 68; +case 14:return 66; break; -case 15:return 16; +case 15:return 74; break; -case 16:return 65; +case 16:return 72; break; -case 17:return 74; +case 17:return 9; break; -case 18:return 75; +case 18:return 69; break; -case 19:return 71; +case 19:return 78; break; -case 20:return 13; +case 20:return 79; break; -case 21:return 12; +case 21:return 75; break; -case 22:return 14; +case 22:return 16; break; case 23:return 15; break; -case 24:return 46; +case 24:return 17; break; -case 25:return 44; +case 25:return 18; break; -case 26:return 45; +case 26:return 50; break; -case 27:return 47; +case 27:return 48; break; -case 28:return 43; +case 28:return 49; break; -case 29:return 40; +case 29:return 51; break; -case 30:return 73; +case 30:return 47; break; -case 31:return 63; +case 31:return 44; break; -case 32:return 74; +case 32:return 77; break; case 33:return 67; break; -case 34:return 48; +case 34:return 78; break; -case 35:return 34; +case 35:return 71; break; -case 36:return 35; +case 36:return 52; break; -case 37:return 31; +case 37:return 38; break; -case 38:return 33; +case 38:return 39; break; -case 39:return 36 +case 39:return 35; break; -case 40:return 37 +case 40:return 37; break; -case 41:return 78; +case 41:return 40 break; -case 42:return 17; +case 42:return 41 break; -case 43:return 9; +case 43:return 82; break; -case 44:return 6; +case 44:return 19; +break; +case 45:return 12; +break; +case 46:return 10; break; } }, -rules: [/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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: {"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,43,44],"inclusive":true}} +rules: [/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:subgraph\b)/,/^(?:end\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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: {"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,43,44,45,46],"inclusive":true}} }); return lexer; })(); @@ -16747,7 +16821,8 @@ module.exports.cloneCssStyles = function(svg, classes){ if (className === 'default') { defaultStyles = '.node' + ' { ' + classes[className].styles.join("; ") + '; }\n'; } else { - embeddedStyles += '.' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; + embeddedStyles += '.' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; + //embeddedStyles += svg.id.trim() + ' .' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; } } } diff --git a/dist/mermaid.slim.min.js b/dist/mermaid.slim.min.js index 6d50d25eb..a2b32e282 100644 --- a/dist/mermaid.slim.min.js +++ b/dist/mermaid.slim.min.js @@ -2,6 +2,6 @@ }return v}function n(e,t){a.each(e,function(e){e.vs=a.flatten(e.vs.map(function(e){return t[e]?t[e].vs:e}),!0)})}function i(e,t){a.isUndefined(e.barycenter)?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)}var a=e("../lodash"),u=e("./barycenter"),o=e("./resolve-conflicts"),s=e("./sort");t.exports=r},{"../lodash":36,"./barycenter":40,"./resolve-conflicts":45,"./sort":47}],47:[function(e,t){function r(e,t){var r=u.partition(e,function(e){return a.has(e,"barycenter")}),o=r.lhs,s=a.sortBy(r.rhs,function(e){return-e.i}),c=[],l=0,h=0,d=0;o.sort(i(!!t)),d=n(c,s,d),a.each(o,function(e){d+=e.vs.length,c.push(e.vs),l+=e.barycenter*e.weight,h+=e.weight,d=n(c,s,d)});var p={vs:a.flatten(c,!0)};return h&&(p.barycenter=l/h,p.weight=h),p}function n(e,t,r){for(var n;t.length&&(n=a.last(t)).i<=r;)t.pop(),e.push(n.vs),r++;return r}function i(e){return function(t,r){return t.barycenterr.barycenter?1:e?r.i-t.i:t.i-r.i}}var a=e("../lodash"),u=e("../util");t.exports=r},{"../lodash":36,"../util":55}],48:[function(e,t){function r(e){var t=i(e);a.each(e.graph().dummyChains,function(r){for(var i=e.node(r),a=i.edgeObj,u=n(e,t,a.v,a.w),o=u.path,s=u.lca,c=0,l=o[c],h=!0;r!==a.w;){if(i=e.node(r),h){for(;(l=o[c])!==s&&e.node(l).maxRanks||c>t[i].lim));for(a=i,i=n;(i=e.parent(i))!==a;)o.push(i);return{path:u.concat(o.reverse()),lca:a}}function i(e){function t(i){var u=n;a.each(e.children(i),t),r[i]={low:u,lim:n++}}var r={},n=0;return a.each(e.children(),t),r}var a=e("./lodash");t.exports=r},{"./lodash":36}],49:[function(e,t){"use strict";function r(e,t){function r(t,r){var u=0,o=0,s=t.length,c=y.last(r);return y.each(r,function(t,l){var h=i(e,t),d=h?e.node(h).order:s;(h||t===c)&&(y.each(r.slice(o,l+1),function(t){y.each(e.predecessors(t),function(r){var i=e.node(r),o=i.order;!(u>o||o>d)||i.dummy&&e.node(t).dummy||a(n,r,t)})}),o=l+1,u=d)}),r}var n={};return y.reduce(t,r),n}function n(e,t){function r(t,r,n,u,o){var s;y.each(y.range(r,n),function(r){s=t[r],e.node(s).dummy&&y.each(e.predecessors(s),function(t){var r=e.node(t);r.dummy&&(r.ordero)&&a(i,t,s)})})}function n(t,n){var i,a=-1,u=0;return y.each(n,function(o,s){if("border"===e.node(o).dummy){var c=e.predecessors(o);c.length&&(i=e.node(c[0]).order,r(n,u,s,a,i),u=s,a=i)}r(n,u,n.length,i,t.length)}),n}var i={};return y.reduce(t,n),i}function i(e,t){return e.node(t).dummy?y.find(e.predecessors(t),function(t){return e.node(t).dummy}):void 0}function a(e,t,r){if(t>r){var n=t;t=r,r=n}var i=e[t];i||(e[t]=i={}),i[r]=!0}function u(e,t,r){if(t>r){var n=t;t=r,r=n}return y.has(e[t],r)}function o(e,t,r,n){var i={},a={},o={};return y.each(t,function(e){y.each(e,function(e,t){i[e]=e,a[e]=e,o[e]=t})}),y.each(t,function(e){var t=-1;y.each(e,function(e){var s=n(e);if(s.length){s=y.sortBy(s,function(e){return o[e]});for(var c=(s.length-1)/2,l=Math.floor(c),h=Math.ceil(c);h>=l;++l){var d=s[l];a[e]===e&&tu.lim&&(o=u,s=!0);var c=f.filter(t.edges(),function(t){return s===p(e,e.node(t.v),o)&&s!==p(e,e.node(t.w),o)});return f.min(c,function(e){return y(t,e)})}function l(e,t,r,i){var a=r.v,o=r.w;e.removeEdge(a,o),e.setEdge(i.v,i.w,{}),u(e),n(e,t),h(e,t)}function h(e,t){var r=f.find(e.nodes(),function(e){return!t.node(e).parent}),n=v(e,r);n=n.slice(1),f.each(n,function(r){var n=e.node(r).parent,i=t.edge(r,n),a=!1;i||(i=t.edge(n,r),a=!0),t.node(r).rank=t.node(n).rank+(a?i.minlen:-i.minlen)})}function d(e,t,r){return e.hasEdge(t,r)}function p(e,t,r){return r.low<=t.lim&&t.lim<=r.lim}var f=e("../lodash"),g=e("./feasible-tree"),y=e("./util").slack,m=e("./util").longestPath,v=e("../graphlib").alg.preorder,b=e("../graphlib").alg.postorder,A=e("../util").simplify;t.exports=r,r.initLowLimValues=u,r.initCutValues=n,r.calcCutValue=a,r.leaveEdge=s,r.enterEdge=c,r.exchangeEdges=l},{"../graphlib":33,"../lodash":36,"../util":55,"./feasible-tree":51,"./util":54}],54:[function(e,t){"use strict";function r(e){function t(n){var a=e.node(n);if(i.has(r,n))return a.rank;r[n]=!0;var u=i.min(i.map(e.outEdges(n),function(r){return t(r.w)-e.edge(r).minlen}));return u===Number.POSITIVE_INFINITY&&(u=0),a.rank=u}var r={};i.each(e.sources(),t)}function n(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var i=e("../lodash");t.exports={longestPath:r,slack:n}},{"../lodash":36}],55:[function(e,t){"use strict";function r(e,t,r,n){var i;do i=y.uniqueId(n);while(e.hasNode(i));return r.dummy=t,e.setNode(i,r),i}function n(e){var t=(new m).setGraph(e.graph());return y.each(e.nodes(),function(r){t.setNode(r,e.node(r))}),y.each(e.edges(),function(r){var n=t.edge(r.v,r.w)||{weight:0,minlen:1},i=e.edge(r);t.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),t}function i(e){var t=new m({multigraph:e.isMultigraph()}).setGraph(e.graph());return y.each(e.nodes(),function(r){e.children(r).length||t.setNode(r,e.node(r))}),y.each(e.edges(),function(r){t.setEdge(r,e.edge(r))}),t}function a(e){var t=y.map(e.nodes(),function(t){var r={};return y.each(e.outEdges(t),function(t){r[t.w]=(r[t.w]||0)+e.edge(t).weight}),r});return y.zipObject(e.nodes(),t)}function u(e){var t=y.map(e.nodes(),function(t){var r={};return y.each(e.inEdges(t),function(t){r[t.v]=(r[t.v]||0)+e.edge(t).weight}),r});return y.zipObject(e.nodes(),t)}function o(e,t){var r=e.x,n=e.y,i=t.x-r,a=t.y-n,u=e.width/2,o=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var s,c;return Math.abs(a)*u>Math.abs(i)*o?(0>a&&(o=-o),s=o*i/a,c=o):(0>i&&(u=-u),s=u,c=u*a/i),{x:r+s,y:n+c}}function s(e){var t=y.map(y.range(d(e)+1),function(){return[]});return y.each(e.nodes(),function(r){var n=e.node(r),i=n.rank;y.isUndefined(i)||(t[i][n.order]=r)}),t}function c(e){var t=y.min(y.map(e.nodes(),function(t){return e.node(t).rank}));y.each(e.nodes(),function(r){var n=e.node(r);y.has(n,"rank")&&(n.rank-=t)})}function l(e){var t=y.min(y.map(e.nodes(),function(t){return e.node(t).rank})),r=[];y.each(e.nodes(),function(n){var i=e.node(n).rank-t;y.has(r,i)||(r[i]=[]),r[i].push(n)});var n=0,i=e.graph().nodeRankFactor;y.each(r,function(t,r){y.isUndefined(t)&&r%i!==0?--n:n&&y.each(t,function(t){e.node(t).rank+=n})})}function h(e,t,n,i){var a={width:0,height:0};return arguments.length>=4&&(a.rank=n,a.order=i),r(e,"border",a,t)}function d(e){return y.max(y.map(e.nodes(),function(t){var r=e.node(t).rank;return y.isUndefined(r)?void 0:r}))}function p(e,t){var r={lhs:[],rhs:[]};return y.each(e,function(e){t(e)?r.lhs.push(e):r.rhs.push(e)}),r}function f(e,t){var r=y.now();try{return t()}finally{console.log(e+" time: "+(y.now()-r)+"ms")}}function g(e,t){return t()}var y=e("./lodash"),m=e("./graphlib").Graph;t.exports={addDummyNode:r,simplify:n,asNonCompoundGraph:i,successorWeights:a,predecessorWeights:u,intersectRect:o,buildLayerMatrix:s,normalizeRanks:c,removeEmptyRanks:l,addBorderNode:h,maxRank:d,partition:p,time:f,notime:g}},{"./graphlib":33,"./lodash":36}],56:[function(e,t){t.exports="0.6.4"},{}],57:[function(e,t){var r=e("./lib");t.exports={Graph:r.Graph,json:e("./lib/json"),alg:e("./lib/alg"),version:r.version}},{"./lib":73,"./lib/alg":64,"./lib/json":74}],58:[function(e,t){function r(e){function t(a){n.has(i,a)||(i[a]=!0,r.push(a),n.each(e.successors(a),t),n.each(e.predecessors(a),t))}var r,i={},a=[];return n.each(e.nodes(),function(e){r=[],t(e),r.length&&a.push(r)}),a}var n=e("../lodash");t.exports=r},{"../lodash":75}],59:[function(e,t){function r(e,t,r){i.isArray(t)||(t=[t]);var a=[],u={};return i.each(t,function(t){if(!e.hasNode(t))throw new Error("Graph does not have node: "+t);n(e,t,"post"===r,u,a)}),a}function n(e,t,r,a,u){i.has(a,t)||(a[t]=!0,r||u.push(t),i.each(e.neighbors(t),function(t){n(e,t,r,a,u)}),r&&u.push(t))}var i=e("../lodash");t.exports=r},{"../lodash":75}],60:[function(e,t){function r(e,t,r){return i.transform(e.nodes(),function(i,a){i[a]=n(e,a,t,r)},{})}var n=e("./dijkstra"),i=e("../lodash");t.exports=r},{"../lodash":75,"./dijkstra":61}],61:[function(e,t){function r(e,t,r,i){return n(e,String(t),r||u,i||function(t){return e.outEdges(t)})}function n(e,t,r,n){var i,u,o={},s=new a,c=function(e){var t=e.v!==i?e.v:e.w,n=o[t],a=r(e),c=u.distance+a;if(0>a)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+a);c0&&(i=s.removeMin(),u=o[i],u.distance!==Number.POSITIVE_INFINITY);)n(i).forEach(c);return o}var i=e("../lodash"),a=e("../data/priority-queue");t.exports=r;var u=i.constant(1)},{"../data/priority-queue":71,"../lodash":75}],62:[function(e,t){function r(e){return n.filter(i(e),function(e){return e.length>1})}var n=e("../lodash"),i=e("./tarjan");t.exports=r},{"../lodash":75,"./tarjan":69}],63:[function(e,t){function r(e,t,r){return n(e,t||a,r||function(t){return e.outEdges(t)})}function n(e,t,r){var n={},i=e.nodes();return i.forEach(function(e){n[e]={},n[e][e]={distance:0},i.forEach(function(t){e!==t&&(n[e][t]={distance:Number.POSITIVE_INFINITY})}),r(e).forEach(function(r){var i=r.v===e?r.w:r.v,a=t(r);n[e][i]={distance:a,predecessor:e}})}),i.forEach(function(e){var t=n[e];i.forEach(function(r){var a=n[r];i.forEach(function(r){var n=a[e],i=t[r],u=a[r],o=n.distance+i.distance;oi&&(s[r]=u,c.decrease(r,i))}}var u,o=new i,s={},c=new a;if(0===e.nodeCount())return o;n.each(e.nodes(),function(e){c.add(e,Number.POSITIVE_INFINITY),o.setNode(e)}),c.decrease(e.nodes()[0],0);for(var l=!1;c.size()>0;){if(u=c.removeMin(),n.has(s,u))o.setEdge(u,s[u]);else{if(l)throw new Error("Input graph is not connected: "+e);l=!0}e.nodeEdges(u).forEach(r)}return o}var n=e("../lodash"),i=e("../graph"),a=e("../data/priority-queue");t.exports=r},{"../data/priority-queue":71,"../graph":72,"../lodash":75}],69:[function(e,t){function r(e){function t(o){var s=a[o]={onStack:!0,lowlink:r,index:r++};if(i.push(o),e.successors(o).forEach(function(e){n.has(a,e)?a[e].onStack&&(s.lowlink=Math.min(s.lowlink,a[e].index)):(t(e),s.lowlink=Math.min(s.lowlink,a[e].lowlink))}),s.lowlink===s.index){var c,l=[];do c=i.pop(),a[c].onStack=!1,l.push(c);while(o!==c);u.push(l)}}var r=0,i=[],a={},u=[];return e.nodes().forEach(function(e){n.has(a,e)||t(e)}),u}var n=e("../lodash");t.exports=r},{"../lodash":75}],70:[function(e,t){function r(e){function t(o){if(i.has(a,o))throw new n;i.has(r,o)||(a[o]=!0,r[o]=!0,i.each(e.predecessors(o),t),delete a[o],u.push(o))}var r={},a={},u=[];if(i.each(e.sinks(),t),i.size(r)!==e.nodeCount())throw new n;return u}function n(){}var i=e("../lodash");t.exports=r,r.CycleException=n},{"../lodash":75}],71:[function(e,t){function r(){this._arr=[],this._keyIndices={}}var n=e("../lodash");t.exports=r,r.prototype.size=function(){return this._arr.length},r.prototype.keys=function(){return this._arr.map(function(e){return e.key})},r.prototype.has=function(e){return n.has(this._keyIndices,e)},r.prototype.priority=function(e){var t=this._keyIndices[e];return void 0!==t?this._arr[t].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(e,t){var r=this._keyIndices;if(e=String(e),!n.has(r,e)){var i=this._arr,a=i.length;return r[e]=a,i.push({key:e,priority:t}),this._decrease(a),!0}return!1},r.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},r.prototype.decrease=function(e,t){var r=this._keyIndices[e];if(t>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[r].priority+" New: "+t);this._arr[r].priority=t,this._decrease(r)},r.prototype._heapify=function(e){var t=this._arr,r=2*e,n=r+1,i=e;r>1,!(r[t].priorityr){var i=t;t=r,r=i}return t+h+r+h+(s.isUndefined(n)?c:n)}function u(e,t,r,n){if(!e&&t>r){var i=t;t=r,r=i}var a={v:t,w:r};return n&&(a.name=n),a}function o(e,t){return a(e,t.v,t.w,t.name)}var s=e("./lodash");t.exports=r;var c="\x00",l="\x00",h="";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(e){return this._label=e,this},r.prototype.graph=function(){return this._label},r.prototype.setDefaultNodeLabel=function(e){return s.isFunction(e)||(e=s.constant(e)),this._defaultNodeLabelFn=e,this},r.prototype.nodeCount=function(){return this._nodeCount},r.prototype.nodes=function(){return s.keys(this._nodes)},r.prototype.sources=function(){return s.filter(this.nodes(),function(e){return s.isEmpty(this._in[e])},this)},r.prototype.sinks=function(){return s.filter(this.nodes(),function(e){return s.isEmpty(this._out[e])},this)},r.prototype.setNodes=function(e,t){var r=arguments;return s.each(e,function(e){r.length>1?this.setNode(e,t):this.setNode(e)},this),this},r.prototype.setNode=function(e,t){return s.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=l,this._children[e]={},this._children[l][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)},r.prototype.node=function(e){return this._nodes[e]},r.prototype.hasNode=function(e){return s.has(this._nodes,e)},r.prototype.removeNode=function(e){var t=this;if(s.has(this._nodes,e)){var r=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],s.each(this.children(e),function(e){this.setParent(e)},this),delete this._children[e]),s.each(s.keys(this._in[e]),r),delete this._in[e],delete this._preds[e],s.each(s.keys(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this},r.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(s.isUndefined(t))t=l;else{for(var r=t;!s.isUndefined(r);r=this.parent(r))if(r===e)throw new Error("Setting "+t+" as parent of "+e+" would create create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},r.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},r.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==l)return t}},r.prototype.children=function(e){if(s.isUndefined(e)&&(e=l),this._isCompound){var t=this._children[e];if(t)return s.keys(t)}else{if(e===l)return this.nodes();if(this.hasNode(e))return[]}},r.prototype.predecessors=function(e){var t=this._preds[e];return t?s.keys(t):void 0},r.prototype.successors=function(e){var t=this._sucs[e];return t?s.keys(t):void 0},r.prototype.neighbors=function(e){var t=this.predecessors(e);return t?s.union(t,this.successors(e)):void 0},r.prototype.setDefaultEdgeLabel=function(e){return s.isFunction(e)||(e=s.constant(e)),this._defaultEdgeLabelFn=e,this},r.prototype.edgeCount=function(){return this._edgeCount},r.prototype.edges=function(){return s.values(this._edgeObjs)},r.prototype.setPath=function(e,t){var r=this,n=arguments;return s.reduce(e,function(e,i){return n.length>1?r.setEdge(e,i,t):r.setEdge(e,i),i}),this},r.prototype.setEdge=function(){var e,t,r,i,o=!1;s.isPlainObject(arguments[0])?(e=arguments[0].v,t=arguments[0].w,r=arguments[0].name,2===arguments.length&&(i=arguments[1],o=!0)):(e=arguments[0],t=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),e=""+e,t=""+t,s.isUndefined(r)||(r=""+r);var c=a(this._isDirected,e,t,r);if(s.has(this._edgeLabels,c))return o&&(this._edgeLabels[c]=i),this;if(!s.isUndefined(r)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[c]=o?i:this._defaultEdgeLabelFn(e,t,r);var l=u(this._isDirected,e,t,r);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[c]=l,n(this._preds[t],e),n(this._sucs[e],t),this._in[t][c]=l,this._out[e][c]=l,this._edgeCount++,this},r.prototype.edge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return this._edgeLabels[n]},r.prototype.hasEdge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return s.has(this._edgeLabels,n)},r.prototype.removeEdge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r),u=this._edgeObjs[n];return u&&(e=u.v,t=u.w,delete this._edgeLabels[n],delete this._edgeObjs[n],i(this._preds[t],e),i(this._sucs[e],t),delete this._in[t][n],delete this._out[e][n],this._edgeCount--),this},r.prototype.inEdges=function(e,t){var r=this._in[e];if(r){var n=s.values(r);return t?s.filter(n,function(e){return e.v===t}):n}},r.prototype.outEdges=function(e,t){var r=this._out[e];if(r){var n=s.values(r);return t?s.filter(n,function(e){return e.w===t}):n}},r.prototype.nodeEdges=function(e,t){var r=this.inEdges(e,t);return r?r.concat(this.outEdges(e,t)):void 0}},{"./lodash":75}],73:[function(e,t){t.exports={Graph:e("./graph"),version:e("./version")}},{"./graph":72,"./version":76}],74:[function(e,t){function r(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:n(e),edges:i(e)};return u.isUndefined(e.graph())||(t.value=u.clone(e.graph())),t}function n(e){return u.map(e.nodes(),function(t){var r=e.node(t),n=e.parent(t),i={v:t};return u.isUndefined(r)||(i.value=r),u.isUndefined(n)||(i.parent=n),i})}function i(e){return u.map(e.edges(),function(t){var r=e.edge(t),n={v:t.v,w:t.w};return u.isUndefined(t.name)||(n.name=t.name),u.isUndefined(r)||(n.value=r),n})}function a(e){var t=new o(e.options).setGraph(e.value);return u.each(e.nodes,function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)}),u.each(e.edges,function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)}),t}var u=e("./lodash"),o=e("./graph");t.exports={write:r,read:a}},{"./graph":72,"./lodash":75}],75:[function(e,t){t.exports=e(20)},{lodash:101}],76:[function(e,t){t.exports="1.0.1"},{}],77:[function(e,t,r){arguments[4][57][0].apply(r,arguments)},{"./lib":93,"./lib/alg":84,"./lib/json":94}],78:[function(e,t){t.exports=e(58)},{"../lodash":95}],79:[function(e,t){t.exports=e(59)},{"../lodash":95}],80:[function(e,t){t.exports=e(60)},{"../lodash":95,"./dijkstra":81}],81:[function(e,t){t.exports=e(61)},{"../data/priority-queue":91,"../lodash":95}],82:[function(e,t){t.exports=e(62)},{"../lodash":95,"./tarjan":89}],83:[function(e,t){t.exports=e(63)},{"../lodash":95}],84:[function(e,t,r){arguments[4][64][0].apply(r,arguments)},{"./components":78,"./dijkstra":81,"./dijkstra-all":80,"./find-cycles":82,"./floyd-warshall":83,"./is-acyclic":85,"./postorder":86,"./preorder":87,"./prim":88,"./tarjan":89,"./topsort":90}],85:[function(e,t){t.exports=e(65)},{"./topsort":90}],86:[function(e,t){t.exports=e(66)},{"./dfs":79}],87:[function(e,t){t.exports=e(67)},{"./dfs":79}],88:[function(e,t,r){arguments[4][68][0].apply(r,arguments)},{"../data/priority-queue":91,"../graph":92,"../lodash":95}],89:[function(e,t){t.exports=e(69)},{"../lodash":95}],90:[function(e,t){t.exports=e(70)},{"../lodash":95}],91:[function(e,t){t.exports=e(71)},{"../lodash":95}],92:[function(e,t){"use strict";function r(e){this._isDirected=s.has(e,"directed")?e.directed:!0,this._isMultigraph=s.has(e,"multigraph")?e.multigraph:!1,this._isCompound=s.has(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=s.constant(void 0),this._defaultEdgeLabelFn=s.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[l]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function n(e,t){s.has(e,t)?e[t]++:e[t]=1}function i(e,t){--e[t]||delete e[t]}function a(e,t,r,n){if(!e&&t>r){var i=t;t=r,r=i}return t+h+r+h+(s.isUndefined(n)?c:n)}function u(e,t,r,n){if(!e&&t>r){var i=t;t=r,r=i}var a={v:t,w:r};return n&&(a.name=n),a}function o(e,t){return a(e,t.v,t.w,t.name)}var s=e("./lodash");t.exports=r;var c="\x00",l="\x00",h="";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(e){return this._label=e,this},r.prototype.graph=function(){return this._label},r.prototype.setDefaultNodeLabel=function(e){return s.isFunction(e)||(e=s.constant(e)),this._defaultNodeLabelFn=e,this},r.prototype.nodeCount=function(){return this._nodeCount},r.prototype.nodes=function(){return s.keys(this._nodes)},r.prototype.sources=function(){return s.filter(this.nodes(),function(e){return s.isEmpty(this._in[e])},this)},r.prototype.sinks=function(){return s.filter(this.nodes(),function(e){return s.isEmpty(this._out[e])},this)},r.prototype.setNodes=function(e,t){var r=arguments;return s.each(e,function(e){r.length>1?this.setNode(e,t):this.setNode(e)},this),this},r.prototype.setNode=function(e,t){return s.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=l,this._children[e]={},this._children[l][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)},r.prototype.node=function(e){return this._nodes[e]},r.prototype.hasNode=function(e){return s.has(this._nodes,e)},r.prototype.removeNode=function(e){var t=this;if(s.has(this._nodes,e)){var r=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],s.each(this.children(e),function(e){this.setParent(e)},this),delete this._children[e]),s.each(s.keys(this._in[e]),r),delete this._in[e],delete this._preds[e],s.each(s.keys(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this},r.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(s.isUndefined(t))t=l;else{for(var r=t;!s.isUndefined(r);r=this.parent(r))if(r===e)throw new Error("Setting "+t+" as parent of "+e+" would create create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},r.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},r.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==l)return t}},r.prototype.children=function(e){if(s.isUndefined(e)&&(e=l),this._isCompound){var t=this._children[e];if(t)return s.keys(t)}else{if(e===l)return this.nodes();if(this.hasNode(e))return[]}},r.prototype.predecessors=function(e){var t=this._preds[e];return t?s.keys(t):void 0},r.prototype.successors=function(e){var t=this._sucs[e];return t?s.keys(t):void 0},r.prototype.neighbors=function(e){var t=this.predecessors(e);return t?s.union(t,this.successors(e)):void 0},r.prototype.setDefaultEdgeLabel=function(e){return s.isFunction(e)||(e=s.constant(e)),this._defaultEdgeLabelFn=e,this},r.prototype.edgeCount=function(){return this._edgeCount},r.prototype.edges=function(){return s.values(this._edgeObjs)},r.prototype.setPath=function(e,t){var r=this,n=arguments;return s.reduce(e,function(e,i){return n.length>1?r.setEdge(e,i,t):r.setEdge(e,i),i}),this},r.prototype.setEdge=function(e,t,r,i){var o=arguments.length>2;e=String(e),t=String(t),s.isUndefined(i)||(i=String(i)),s.isPlainObject(arguments[0])&&(e=arguments[0].v,t=arguments[0].w,i=arguments[0].name,2===arguments.length&&(r=arguments[1],o=!0));var c=a(this._isDirected,e,t,i);if(s.has(this._edgeLabels,c))return o&&(this._edgeLabels[c]=r),this;if(!s.isUndefined(i)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[c]=o?r:this._defaultEdgeLabelFn(e,t,i);var l=u(this._isDirected,e,t,i);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[c]=l,n(this._preds[t],e),n(this._sucs[e],t),this._in[t][c]=l,this._out[e][c]=l,this._edgeCount++,this},r.prototype.edge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return this._edgeLabels[n]},r.prototype.hasEdge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return s.has(this._edgeLabels,n)},r.prototype.removeEdge=function(e,t,r){var n=1===arguments.length?o(this._isDirected,arguments[0]):a(this._isDirected,e,t,r),u=this._edgeObjs[n]; return u&&(e=u.v,t=u.w,delete this._edgeLabels[n],delete this._edgeObjs[n],i(this._preds[t],e),i(this._sucs[e],t),delete this._in[t][n],delete this._out[e][n],this._edgeCount--),this},r.prototype.inEdges=function(e,t){var r=this._in[e];if(r){var n=s.values(r);return t?s.filter(n,function(e){return e.v===t}):n}},r.prototype.outEdges=function(e,t){var r=this._out[e];if(r){var n=s.values(r);return t?s.filter(n,function(e){return e.w===t}):n}},r.prototype.nodeEdges=function(e,t){var r=this.inEdges(e,t);return r?r.concat(this.outEdges(e,t)):void 0}},{"./lodash":95}],93:[function(e,t,r){arguments[4][73][0].apply(r,arguments)},{"./graph":92,"./version":96}],94:[function(e,t,r){arguments[4][74][0].apply(r,arguments)},{"./graph":92,"./lodash":95}],95:[function(e,t){t.exports=e(20)},{lodash:101}],96:[function(e,t){t.exports="0.9.1"},{}],97:[function(){},{}],98:[function(e,t,r){(function(e){function t(e,t){for(var r=0,n=e.length-1;n>=0;n--){var i=e[n];"."===i?e.splice(n,1):".."===i?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}function n(e,t){if(e.filter)return e.filter(t);for(var r=[],n=0;n=-1&&!i;a--){var u=a>=0?arguments[a]:e.cwd();if("string"!=typeof u)throw new TypeError("Arguments to path.resolve must be strings");u&&(r=u+"/"+r,i="/"===u.charAt(0))}return r=t(n(r.split("/"),function(e){return!!e}),!i).join("/"),(i?"/":"")+r||"."},r.normalize=function(e){var i=r.isAbsolute(e),a="/"===u(e,-1);return e=t(n(e.split("/"),function(e){return!!e}),!i).join("/"),e||i||(e="."),e&&a&&(e+="/"),(i?"/":"")+e},r.isAbsolute=function(e){return"/"===e.charAt(0)},r.join=function(){var e=Array.prototype.slice.call(arguments,0);return r.normalize(n(e,function(e){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},r.relative=function(e,t){function n(e){for(var t=0;t=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=r.resolve(e).substr(1),t=r.resolve(t).substr(1);for(var i=n(e.split("/")),a=n(t.split("/")),u=Math.min(i.length,a.length),o=u,s=0;u>s;s++)if(i[s]!==a[s]){o=s;break}for(var c=[],s=o;st&&(t=e.length+t),e.substr(t,r)}}).call(this,e("1YiZ5S"))},{"1YiZ5S":99}],99:[function(e,t){function r(){}var n=t.exports={};n.nextTick=function(){var e="undefined"!=typeof window&&window.setImmediate,t="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(e)return function(e){return window.setImmediate(e)};if(t){var r=[];return window.addEventListener("message",function(e){var t=e.source;if((t===window||null===t)&&"process-tick"===e.data&&(e.stopPropagation(),r.length>0)){var n=r.shift();n()}},!0),function(e){r.push(e),window.postMessage("process-tick","*")}}return function(e){setTimeout(e,0)}}(),n.title="browser",n.browser=!0,n.env={},n.argv=[],n.on=r,n.addListener=r,n.once=r,n.off=r,n.removeListener=r,n.removeAllListeners=r,n.emit=r,n.binding=function(){throw new Error("process.binding is not supported")},n.cwd=function(){return"/"},n.chdir=function(){throw new Error("process.chdir is not supported")}},{}],100:[function(e,t,r){(function(e){!function(n){var i="object"==typeof r&&r,a="object"==typeof t&&t&&t.exports==i&&t,u="object"==typeof e&&e;(u.global===u||u.window===u)&&(n=u);var o=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,s=/[\x01-\x7F]/g,c=/[\x01-\t\x0B\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,l=/<\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,h={"Á":"Aacute","á":"aacute","Ă":"Abreve","ă":"abreve","∾":"ac","∿":"acd","∾̳":"acE","Â":"Acirc","â":"acirc","´":"acute","А":"Acy","а":"acy","Æ":"AElig","æ":"aelig","⁡":"af","𝔄":"Afr","𝔞":"afr","À":"Agrave","à":"agrave","ℵ":"aleph","Α":"Alpha","α":"alpha","Ā":"Amacr","ā":"amacr","⨿":"amalg","&":"amp","⩕":"andand","⩓":"And","∧":"and","⩜":"andd","⩘":"andslope","⩚":"andv","∠":"ang","⦤":"ange","⦨":"angmsdaa","⦩":"angmsdab","⦪":"angmsdac","⦫":"angmsdad","⦬":"angmsdae","⦭":"angmsdaf","⦮":"angmsdag","⦯":"angmsdah","∡":"angmsd","∟":"angrt","⊾":"angrtvb","⦝":"angrtvbd","∢":"angsph","Å":"angst","⍼":"angzarr","Ą":"Aogon","ą":"aogon","𝔸":"Aopf","𝕒":"aopf","⩯":"apacir","≈":"ap","⩰":"apE","≊":"ape","≋":"apid","'":"apos","å":"aring","𝒜":"Ascr","𝒶":"ascr","≔":"colone","*":"ast","≍":"CupCap","Ã":"Atilde","ã":"atilde","Ä":"Auml","ä":"auml","∳":"awconint","⨑":"awint","≌":"bcong","϶":"bepsi","‵":"bprime","∽":"bsim","⋍":"bsime","∖":"setmn","⫧":"Barv","⊽":"barvee","⌅":"barwed","⌆":"Barwed","⎵":"bbrk","⎶":"bbrktbrk","Б":"Bcy","б":"bcy","„":"bdquo","∵":"becaus","⦰":"bemptyv","ℬ":"Bscr","Β":"Beta","β":"beta","ℶ":"beth","≬":"twixt","𝔅":"Bfr","𝔟":"bfr","⋂":"xcap","◯":"xcirc","⋃":"xcup","⨀":"xodot","⨁":"xoplus","⨂":"xotime","⨆":"xsqcup","★":"starf","▽":"xdtri","△":"xutri","⨄":"xuplus","⋁":"Vee","⋀":"Wedge","⤍":"rbarr","⧫":"lozf","▪":"squf","▴":"utrif","▾":"dtrif","◂":"ltrif","▸":"rtrif","␣":"blank","▒":"blk12","░":"blk14","▓":"blk34","█":"block","=⃥":"bne","≡⃥":"bnequiv","⫭":"bNot","⌐":"bnot","𝔹":"Bopf","𝕓":"bopf","⊥":"bot","⋈":"bowtie","⧉":"boxbox","┐":"boxdl","╕":"boxdL","╖":"boxDl","╗":"boxDL","┌":"boxdr","╒":"boxdR","╓":"boxDr","╔":"boxDR","─":"boxh","═":"boxH","┬":"boxhd","╤":"boxHd","╥":"boxhD","╦":"boxHD","┴":"boxhu","╧":"boxHu","╨":"boxhU","╩":"boxHU","⊟":"minusb","⊞":"plusb","⊠":"timesb","┘":"boxul","╛":"boxuL","╜":"boxUl","╝":"boxUL","└":"boxur","╘":"boxuR","╙":"boxUr","╚":"boxUR","│":"boxv","║":"boxV","┼":"boxvh","╪":"boxvH","╫":"boxVh","╬":"boxVH","┤":"boxvl","╡":"boxvL","╢":"boxVl","╣":"boxVL","├":"boxvr","╞":"boxvR","╟":"boxVr","╠":"boxVR","˘":"breve","¦":"brvbar","𝒷":"bscr","⁏":"bsemi","⧅":"bsolb","\\":"bsol","⟈":"bsolhsub","•":"bull","≎":"bump","⪮":"bumpE","≏":"bumpe","Ć":"Cacute","ć":"cacute","⩄":"capand","⩉":"capbrcup","⩋":"capcap","∩":"cap","⋒":"Cap","⩇":"capcup","⩀":"capdot","ⅅ":"DD","∩︀":"caps","⁁":"caret","ˇ":"caron","ℭ":"Cfr","⩍":"ccaps","Č":"Ccaron","č":"ccaron","Ç":"Ccedil","ç":"ccedil","Ĉ":"Ccirc","ĉ":"ccirc","∰":"Cconint","⩌":"ccups","⩐":"ccupssm","Ċ":"Cdot","ċ":"cdot","¸":"cedil","⦲":"cemptyv","¢":"cent","·":"middot","𝔠":"cfr","Ч":"CHcy","ч":"chcy","✓":"check","Χ":"Chi","χ":"chi","ˆ":"circ","≗":"cire","↺":"olarr","↻":"orarr","⊛":"oast","⊚":"ocir","⊝":"odash","⊙":"odot","®":"reg","Ⓢ":"oS","⊖":"ominus","⊕":"oplus","⊗":"otimes","○":"cir","⧃":"cirE","⨐":"cirfnint","⫯":"cirmid","⧂":"cirscir","∲":"cwconint","”":"rdquo","’":"rsquo","♣":"clubs",":":"colon","∷":"Colon","⩴":"Colone",",":"comma","@":"commat","∁":"comp","∘":"compfn","ℂ":"Copf","≅":"cong","⩭":"congdot","≡":"equiv","∮":"oint","∯":"Conint","𝕔":"copf","∐":"coprod","©":"copy","℗":"copysr","↵":"crarr","✗":"cross","⨯":"Cross","𝒞":"Cscr","𝒸":"cscr","⫏":"csub","⫑":"csube","⫐":"csup","⫒":"csupe","⋯":"ctdot","⤸":"cudarrl","⤵":"cudarrr","⋞":"cuepr","⋟":"cuesc","↶":"cularr","⤽":"cularrp","⩈":"cupbrcap","⩆":"cupcap","∪":"cup","⋓":"Cup","⩊":"cupcup","⊍":"cupdot","⩅":"cupor","∪︀":"cups","↷":"curarr","⤼":"curarrm","⋎":"cuvee","⋏":"cuwed","¤":"curren","∱":"cwint","⌭":"cylcty","†":"dagger","‡":"Dagger","ℸ":"daleth","↓":"darr","↡":"Darr","⇓":"dArr","‐":"dash","⫤":"Dashv","⊣":"dashv","⤏":"rBarr","˝":"dblac","Ď":"Dcaron","ď":"dcaron","Д":"Dcy","д":"dcy","⇊":"ddarr","ⅆ":"dd","⤑":"DDotrahd","⩷":"eDDot","°":"deg","∇":"Del","Δ":"Delta","δ":"delta","⦱":"demptyv","⥿":"dfisht","𝔇":"Dfr","𝔡":"dfr","⥥":"dHar","⇃":"dharl","⇂":"dharr","˙":"dot","`":"grave","˜":"tilde","⋄":"diam","♦":"diams","¨":"die","ϝ":"gammad","⋲":"disin","÷":"div","⋇":"divonx","Ђ":"DJcy","ђ":"djcy","⌞":"dlcorn","⌍":"dlcrop",$:"dollar","𝔻":"Dopf","𝕕":"dopf","⃜":"DotDot","≐":"doteq","≑":"eDot","∸":"minusd","∔":"plusdo","⊡":"sdotb","⇐":"lArr","⇔":"iff","⟸":"xlArr","⟺":"xhArr","⟹":"xrArr","⇒":"rArr","⊨":"vDash","⇑":"uArr","⇕":"vArr","∥":"par","⤓":"DownArrowBar","⇵":"duarr","̑":"DownBreve","⥐":"DownLeftRightVector","⥞":"DownLeftTeeVector","⥖":"DownLeftVectorBar","↽":"lhard","⥟":"DownRightTeeVector","⥗":"DownRightVectorBar","⇁":"rhard","↧":"mapstodown","⊤":"top","⤐":"RBarr","⌟":"drcorn","⌌":"drcrop","𝒟":"Dscr","𝒹":"dscr","Ѕ":"DScy","ѕ":"dscy","⧶":"dsol","Đ":"Dstrok","đ":"dstrok","⋱":"dtdot","▿":"dtri","⥯":"duhar","⦦":"dwangle","Џ":"DZcy","џ":"dzcy","⟿":"dzigrarr","É":"Eacute","é":"eacute","⩮":"easter","Ě":"Ecaron","ě":"ecaron","Ê":"Ecirc","ê":"ecirc","≖":"ecir","≕":"ecolon","Э":"Ecy","э":"ecy","Ė":"Edot","ė":"edot","ⅇ":"ee","≒":"efDot","𝔈":"Efr","𝔢":"efr","⪚":"eg","È":"Egrave","è":"egrave","⪖":"egs","⪘":"egsdot","⪙":"el","∈":"in","⏧":"elinters","ℓ":"ell","⪕":"els","⪗":"elsdot","Ē":"Emacr","ē":"emacr","∅":"empty","◻":"EmptySmallSquare","▫":"EmptyVerySmallSquare"," ":"emsp13"," ":"emsp14"," ":"emsp","Ŋ":"ENG","ŋ":"eng"," ":"ensp","Ę":"Eogon","ę":"eogon","𝔼":"Eopf","𝕖":"eopf","⋕":"epar","⧣":"eparsl","⩱":"eplus","ε":"epsi","Ε":"Epsilon","ϵ":"epsiv","≂":"esim","⩵":"Equal","=":"equals","≟":"equest","⇌":"rlhar","⩸":"equivDD","⧥":"eqvparsl","⥱":"erarr","≓":"erDot","ℯ":"escr","ℰ":"Escr","⩳":"Esim","Η":"Eta","η":"eta","Ð":"ETH","ð":"eth","Ë":"Euml","ë":"euml","€":"euro","!":"excl","∃":"exist","Ф":"Fcy","ф":"fcy","♀":"female","ffi":"ffilig","ff":"fflig","ffl":"ffllig","𝔉":"Ffr","𝔣":"ffr","fi":"filig","◼":"FilledSmallSquare",fj:"fjlig","♭":"flat","fl":"fllig","▱":"fltns","ƒ":"fnof","𝔽":"Fopf","𝕗":"fopf","∀":"forall","⋔":"fork","⫙":"forkv","ℱ":"Fscr","⨍":"fpartint","½":"half","⅓":"frac13","¼":"frac14","⅕":"frac15","⅙":"frac16","⅛":"frac18","⅔":"frac23","⅖":"frac25","¾":"frac34","⅗":"frac35","⅜":"frac38","⅘":"frac45","⅚":"frac56","⅝":"frac58","⅞":"frac78","⁄":"frasl","⌢":"frown","𝒻":"fscr","ǵ":"gacute","Γ":"Gamma","γ":"gamma","Ϝ":"Gammad","⪆":"gap","Ğ":"Gbreve","ğ":"gbreve","Ģ":"Gcedil","Ĝ":"Gcirc","ĝ":"gcirc","Г":"Gcy","г":"gcy","Ġ":"Gdot","ġ":"gdot","≥":"ge","≧":"gE","⪌":"gEl","⋛":"gel","⩾":"ges","⪩":"gescc","⪀":"gesdot","⪂":"gesdoto","⪄":"gesdotol","⋛︀":"gesl","⪔":"gesles","𝔊":"Gfr","𝔤":"gfr","≫":"gg","⋙":"Gg","ℷ":"gimel","Ѓ":"GJcy","ѓ":"gjcy","⪥":"gla","≷":"gl","⪒":"glE","⪤":"glj","⪊":"gnap","⪈":"gne","≩":"gnE","⋧":"gnsim","𝔾":"Gopf","𝕘":"gopf","⪢":"GreaterGreater","≳":"gsim","𝒢":"Gscr","ℊ":"gscr","⪎":"gsime","⪐":"gsiml","⪧":"gtcc","⩺":"gtcir",">":"gt","⋗":"gtdot","⦕":"gtlPar","⩼":"gtquest","⥸":"gtrarr","≩︀":"gvnE"," ":"hairsp","ℋ":"Hscr","Ъ":"HARDcy","ъ":"hardcy","⥈":"harrcir","↔":"harr","↭":"harrw","^":"Hat","ℏ":"hbar","Ĥ":"Hcirc","ĥ":"hcirc","♥":"hearts","…":"mldr","⊹":"hercon","𝔥":"hfr","ℌ":"Hfr","⤥":"searhk","⤦":"swarhk","⇿":"hoarr","∻":"homtht","↩":"larrhk","↪":"rarrhk","𝕙":"hopf","ℍ":"Hopf","―":"horbar","𝒽":"hscr","Ħ":"Hstrok","ħ":"hstrok","⁃":"hybull","Í":"Iacute","í":"iacute","⁣":"ic","Î":"Icirc","î":"icirc","И":"Icy","и":"icy","İ":"Idot","Е":"IEcy","е":"iecy","¡":"iexcl","𝔦":"ifr","ℑ":"Im","Ì":"Igrave","ì":"igrave","ⅈ":"ii","⨌":"qint","∭":"tint","⧜":"iinfin","℩":"iiota","IJ":"IJlig","ij":"ijlig","Ī":"Imacr","ī":"imacr","ℐ":"Iscr","ı":"imath","⊷":"imof","Ƶ":"imped","℅":"incare","∞":"infin","⧝":"infintie","⊺":"intcal","∫":"int","∬":"Int","ℤ":"Zopf","⨗":"intlarhk","⨼":"iprod","⁢":"it","Ё":"IOcy","ё":"iocy","Į":"Iogon","į":"iogon","𝕀":"Iopf","𝕚":"iopf","Ι":"Iota","ι":"iota","¿":"iquest","𝒾":"iscr","⋵":"isindot","⋹":"isinE","⋴":"isins","⋳":"isinsv","Ĩ":"Itilde","ĩ":"itilde","І":"Iukcy","і":"iukcy","Ï":"Iuml","ï":"iuml","Ĵ":"Jcirc","ĵ":"jcirc","Й":"Jcy","й":"jcy","𝔍":"Jfr","𝔧":"jfr","ȷ":"jmath","𝕁":"Jopf","𝕛":"jopf","𝒥":"Jscr","𝒿":"jscr","Ј":"Jsercy","ј":"jsercy","Є":"Jukcy","є":"jukcy","Κ":"Kappa","κ":"kappa","ϰ":"kappav","Ķ":"Kcedil","ķ":"kcedil","К":"Kcy","к":"kcy","𝔎":"Kfr","𝔨":"kfr","ĸ":"kgreen","Х":"KHcy","х":"khcy","Ќ":"KJcy","ќ":"kjcy","𝕂":"Kopf","𝕜":"kopf","𝒦":"Kscr","𝓀":"kscr","⇚":"lAarr","Ĺ":"Lacute","ĺ":"lacute","⦴":"laemptyv","ℒ":"Lscr","Λ":"Lambda","λ":"lambda","⟨":"lang","⟪":"Lang","⦑":"langd","⪅":"lap","«":"laquo","⇤":"larrb","⤟":"larrbfs","←":"larr","↞":"Larr","⤝":"larrfs","↫":"larrlp","⤹":"larrpl","⥳":"larrsim","↢":"larrtl","⤙":"latail","⤛":"lAtail","⪫":"lat","⪭":"late","⪭︀":"lates","⤌":"lbarr","⤎":"lBarr","❲":"lbbrk","{":"lcub","[":"lsqb","⦋":"lbrke","⦏":"lbrksld","⦍":"lbrkslu","Ľ":"Lcaron","ľ":"lcaron","Ļ":"Lcedil","ļ":"lcedil","⌈":"lceil","Л":"Lcy","л":"lcy","⤶":"ldca","“":"ldquo","⥧":"ldrdhar","⥋":"ldrushar","↲":"ldsh","≤":"le","≦":"lE","⇆":"lrarr","⟦":"lobrk","⥡":"LeftDownTeeVector","⥙":"LeftDownVectorBar","⌊":"lfloor","↼":"lharu","⇇":"llarr","⇋":"lrhar","⥎":"LeftRightVector","↤":"mapstoleft","⥚":"LeftTeeVector","⋋":"lthree","⧏":"LeftTriangleBar","⊲":"vltri","⊴":"ltrie","⥑":"LeftUpDownVector","⥠":"LeftUpTeeVector","⥘":"LeftUpVectorBar","↿":"uharl","⥒":"LeftVectorBar","⪋":"lEg","⋚":"leg","⩽":"les","⪨":"lescc","⩿":"lesdot","⪁":"lesdoto","⪃":"lesdotor","⋚︀":"lesg","⪓":"lesges","⋖":"ltdot","≶":"lg","⪡":"LessLess","≲":"lsim","⥼":"lfisht","𝔏":"Lfr","𝔩":"lfr","⪑":"lgE","⥢":"lHar","⥪":"lharul","▄":"lhblk","Љ":"LJcy","љ":"ljcy","≪":"ll","⋘":"Ll","⥫":"llhard","◺":"lltri","Ŀ":"Lmidot","ŀ":"lmidot","⎰":"lmoust","⪉":"lnap","⪇":"lne","≨":"lnE","⋦":"lnsim","⟬":"loang","⇽":"loarr","⟵":"xlarr","⟷":"xharr","⟼":"xmap","⟶":"xrarr","↬":"rarrlp","⦅":"lopar","𝕃":"Lopf","𝕝":"lopf","⨭":"loplus","⨴":"lotimes","∗":"lowast",_:"lowbar","↙":"swarr","↘":"searr","◊":"loz","(":"lpar","⦓":"lparlt","⥭":"lrhard","‎":"lrm","⊿":"lrtri","‹":"lsaquo","𝓁":"lscr","↰":"lsh","⪍":"lsime","⪏":"lsimg","‘":"lsquo","‚":"sbquo","Ł":"Lstrok","ł":"lstrok","⪦":"ltcc","⩹":"ltcir","<":"lt","⋉":"ltimes","⥶":"ltlarr","⩻":"ltquest","◃":"ltri","⦖":"ltrPar","⥊":"lurdshar","⥦":"luruhar","≨︀":"lvnE","¯":"macr","♂":"male","✠":"malt","⤅":"Map","↦":"map","↥":"mapstoup","▮":"marker","⨩":"mcomma","М":"Mcy","м":"mcy","—":"mdash","∺":"mDDot"," ":"MediumSpace","ℳ":"Mscr","𝔐":"Mfr","𝔪":"mfr","℧":"mho","µ":"micro","⫰":"midcir","∣":"mid","−":"minus","⨪":"minusdu","∓":"mp","⫛":"mlcp","⊧":"models","𝕄":"Mopf","𝕞":"mopf","𝓂":"mscr","Μ":"Mu","μ":"mu","⊸":"mumap","Ń":"Nacute","ń":"nacute","∠⃒":"nang","≉":"nap","⩰̸":"napE","≋̸":"napid","ʼn":"napos","♮":"natur","ℕ":"Nopf"," ":"nbsp","≎̸":"nbump","≏̸":"nbumpe","⩃":"ncap","Ň":"Ncaron","ň":"ncaron","Ņ":"Ncedil","ņ":"ncedil","≇":"ncong","⩭̸":"ncongdot","⩂":"ncup","Н":"Ncy","н":"ncy","–":"ndash","⤤":"nearhk","↗":"nearr","⇗":"neArr","≠":"ne","≐̸":"nedot","​":"ZeroWidthSpace","≢":"nequiv","⤨":"toea","≂̸":"nesim","\n":"NewLine","∄":"nexist","𝔑":"Nfr","𝔫":"nfr","≧̸":"ngE","≱":"nge","⩾̸":"nges","⋙̸":"nGg","≵":"ngsim","≫⃒":"nGt","≯":"ngt","≫̸":"nGtv","↮":"nharr","⇎":"nhArr","⫲":"nhpar","∋":"ni","⋼":"nis","⋺":"nisd","Њ":"NJcy","њ":"njcy","↚":"nlarr","⇍":"nlArr","‥":"nldr","≦̸":"nlE","≰":"nle","⩽̸":"nles","≮":"nlt","⋘̸":"nLl","≴":"nlsim","≪⃒":"nLt","⋪":"nltri","⋬":"nltrie","≪̸":"nLtv","∤":"nmid","⁠":"NoBreak","𝕟":"nopf","⫬":"Not","¬":"not","≭":"NotCupCap","∦":"npar","∉":"notin","≹":"ntgl","⋵̸":"notindot","⋹̸":"notinE","⋷":"notinvb","⋶":"notinvc","⧏̸":"NotLeftTriangleBar","≸":"ntlg","⪢̸":"NotNestedGreaterGreater","⪡̸":"NotNestedLessLess","∌":"notni","⋾":"notnivb","⋽":"notnivc","⊀":"npr","⪯̸":"npre","⋠":"nprcue","⧐̸":"NotRightTriangleBar","⋫":"nrtri","⋭":"nrtrie","⊏̸":"NotSquareSubset","⋢":"nsqsube","⊐̸":"NotSquareSuperset","⋣":"nsqsupe","⊂⃒":"vnsub","⊈":"nsube","⊁":"nsc","⪰̸":"nsce","⋡":"nsccue","≿̸":"NotSucceedsTilde","⊃⃒":"vnsup","⊉":"nsupe","≁":"nsim","≄":"nsime","⫽⃥":"nparsl","∂̸":"npart","⨔":"npolint","⤳̸":"nrarrc","↛":"nrarr","⇏":"nrArr","↝̸":"nrarrw","𝒩":"Nscr","𝓃":"nscr","⊄":"nsub","⫅̸":"nsubE","⊅":"nsup","⫆̸":"nsupE","Ñ":"Ntilde","ñ":"ntilde","Ν":"Nu","ν":"nu","#":"num","№":"numero"," ":"numsp","≍⃒":"nvap","⊬":"nvdash","⊭":"nvDash","⊮":"nVdash","⊯":"nVDash","≥⃒":"nvge",">⃒":"nvgt","⤄":"nvHarr","⧞":"nvinfin","⤂":"nvlArr","≤⃒":"nvle","<⃒":"nvlt","⊴⃒":"nvltrie","⤃":"nvrArr","⊵⃒":"nvrtrie","∼⃒":"nvsim","⤣":"nwarhk","↖":"nwarr","⇖":"nwArr","⤧":"nwnear","Ó":"Oacute","ó":"oacute","Ô":"Ocirc","ô":"ocirc","О":"Ocy","о":"ocy","Ő":"Odblac","ő":"odblac","⨸":"odiv","⦼":"odsold","Œ":"OElig","œ":"oelig","⦿":"ofcir","𝔒":"Ofr","𝔬":"ofr","˛":"ogon","Ò":"Ograve","ò":"ograve","⧁":"ogt","⦵":"ohbar","Ω":"ohm","⦾":"olcir","⦻":"olcross","‾":"oline","⧀":"olt","Ō":"Omacr","ō":"omacr","ω":"omega","Ο":"Omicron","ο":"omicron","⦶":"omid","𝕆":"Oopf","𝕠":"oopf","⦷":"opar","⦹":"operp","⩔":"Or","∨":"or","⩝":"ord","ℴ":"oscr","ª":"ordf","º":"ordm","⊶":"origof","⩖":"oror","⩗":"orslope","⩛":"orv","𝒪":"Oscr","Ø":"Oslash","ø":"oslash","⊘":"osol","Õ":"Otilde","õ":"otilde","⨶":"otimesas","⨷":"Otimes","Ö":"Ouml","ö":"ouml","⌽":"ovbar","⏞":"OverBrace","⎴":"tbrk","⏜":"OverParenthesis","¶":"para","⫳":"parsim","⫽":"parsl","∂":"part","П":"Pcy","п":"pcy","%":"percnt",".":"period","‰":"permil","‱":"pertenk","𝔓":"Pfr","𝔭":"pfr","Φ":"Phi","φ":"phi","ϕ":"phiv","☎":"phone","Π":"Pi","π":"pi","ϖ":"piv","ℎ":"planckh","⨣":"plusacir","⨢":"pluscir","+":"plus","⨥":"plusdu","⩲":"pluse","±":"pm","⨦":"plussim","⨧":"plustwo","⨕":"pointint","𝕡":"popf","ℙ":"Popf","£":"pound","⪷":"prap","⪻":"Pr","≺":"pr","≼":"prcue","⪯":"pre","≾":"prsim","⪹":"prnap","⪵":"prnE","⋨":"prnsim","⪳":"prE","′":"prime","″":"Prime","∏":"prod","⌮":"profalar","⌒":"profline","⌓":"profsurf","∝":"prop","⊰":"prurel","𝒫":"Pscr","𝓅":"pscr","Ψ":"Psi","ψ":"psi"," ":"puncsp","𝔔":"Qfr","𝔮":"qfr","𝕢":"qopf","ℚ":"Qopf","⁗":"qprime","𝒬":"Qscr","𝓆":"qscr","⨖":"quatint","?":"quest",'"':"quot","⇛":"rAarr","∽̱":"race","Ŕ":"Racute","ŕ":"racute","√":"Sqrt","⦳":"raemptyv","⟩":"rang","⟫":"Rang","⦒":"rangd","⦥":"range","»":"raquo","⥵":"rarrap","⇥":"rarrb","⤠":"rarrbfs","⤳":"rarrc","→":"rarr","↠":"Rarr","⤞":"rarrfs","⥅":"rarrpl","⥴":"rarrsim","⤖":"Rarrtl","↣":"rarrtl","↝":"rarrw","⤚":"ratail","⤜":"rAtail","∶":"ratio","❳":"rbbrk","}":"rcub","]":"rsqb","⦌":"rbrke","⦎":"rbrksld","⦐":"rbrkslu","Ř":"Rcaron","ř":"rcaron","Ŗ":"Rcedil","ŗ":"rcedil","⌉":"rceil","Р":"Rcy","р":"rcy","⤷":"rdca","⥩":"rdldhar","↳":"rdsh","ℜ":"Re","ℛ":"Rscr","ℝ":"Ropf","▭":"rect","⥽":"rfisht","⌋":"rfloor","𝔯":"rfr","⥤":"rHar","⇀":"rharu","⥬":"rharul","Ρ":"Rho","ρ":"rho","ϱ":"rhov","⇄":"rlarr","⟧":"robrk","⥝":"RightDownTeeVector","⥕":"RightDownVectorBar","⇉":"rrarr","⊢":"vdash","⥛":"RightTeeVector","⋌":"rthree","⧐":"RightTriangleBar","⊳":"vrtri","⊵":"rtrie","⥏":"RightUpDownVector","⥜":"RightUpTeeVector","⥔":"RightUpVectorBar","↾":"uharr","⥓":"RightVectorBar","˚":"ring","‏":"rlm","⎱":"rmoust","⫮":"rnmid","⟭":"roang","⇾":"roarr","⦆":"ropar","𝕣":"ropf","⨮":"roplus","⨵":"rotimes","⥰":"RoundImplies",")":"rpar","⦔":"rpargt","⨒":"rppolint","›":"rsaquo","𝓇":"rscr","↱":"rsh","⋊":"rtimes","▹":"rtri","⧎":"rtriltri","⧴":"RuleDelayed","⥨":"ruluhar","℞":"rx","Ś":"Sacute","ś":"sacute","⪸":"scap","Š":"Scaron","š":"scaron","⪼":"Sc","≻":"sc","≽":"sccue","⪰":"sce","⪴":"scE","Ş":"Scedil","ş":"scedil","Ŝ":"Scirc","ŝ":"scirc","⪺":"scnap","⪶":"scnE","⋩":"scnsim","⨓":"scpolint","≿":"scsim","С":"Scy","с":"scy","⋅":"sdot","⩦":"sdote","⇘":"seArr","§":"sect",";":"semi","⤩":"tosa","✶":"sext","𝔖":"Sfr","𝔰":"sfr","♯":"sharp","Щ":"SHCHcy","щ":"shchcy","Ш":"SHcy","ш":"shcy","↑":"uarr","­":"shy","Σ":"Sigma","σ":"sigma","ς":"sigmaf","∼":"sim","⩪":"simdot","≃":"sime","⪞":"simg","⪠":"simgE","⪝":"siml","⪟":"simlE","≆":"simne","⨤":"simplus","⥲":"simrarr","⨳":"smashp","⧤":"smeparsl","⌣":"smile","⪪":"smt","⪬":"smte","⪬︀":"smtes","Ь":"SOFTcy","ь":"softcy","⌿":"solbar","⧄":"solb","/":"sol","𝕊":"Sopf","𝕤":"sopf","♠":"spades","⊓":"sqcap","⊓︀":"sqcaps","⊔":"sqcup","⊔︀":"sqcups","⊏":"sqsub","⊑":"sqsube","⊐":"sqsup","⊒":"sqsupe","□":"squ","𝒮":"Sscr","𝓈":"sscr","⋆":"Star","☆":"star","⊂":"sub","⋐":"Sub","⪽":"subdot","⫅":"subE","⊆":"sube","⫃":"subedot","⫁":"submult","⫋":"subnE","⊊":"subne","⪿":"subplus","⥹":"subrarr","⫇":"subsim","⫕":"subsub","⫓":"subsup","∑":"sum","♪":"sung","¹":"sup1","²":"sup2","³":"sup3","⊃":"sup","⋑":"Sup","⪾":"supdot","⫘":"supdsub","⫆":"supE","⊇":"supe","⫄":"supedot","⟉":"suphsol","⫗":"suphsub","⥻":"suplarr","⫂":"supmult","⫌":"supnE","⊋":"supne","⫀":"supplus","⫈":"supsim","⫔":"supsub","⫖":"supsup","⇙":"swArr","⤪":"swnwar","ß":"szlig"," ":"Tab","⌖":"target","Τ":"Tau","τ":"tau","Ť":"Tcaron","ť":"tcaron","Ţ":"Tcedil","ţ":"tcedil","Т":"Tcy","т":"tcy","⃛":"tdot","⌕":"telrec","𝔗":"Tfr","𝔱":"tfr","∴":"there4","Θ":"Theta","θ":"theta","ϑ":"thetav","  ":"ThickSpace"," ":"thinsp","Þ":"THORN","þ":"thorn","⨱":"timesbar","×":"times","⨰":"timesd","⌶":"topbot","⫱":"topcir","𝕋":"Topf","𝕥":"topf","⫚":"topfork","‴":"tprime","™":"trade","▵":"utri","≜":"trie","◬":"tridot","⨺":"triminus","⨹":"triplus","⧍":"trisb","⨻":"tritime","⏢":"trpezium","𝒯":"Tscr","𝓉":"tscr","Ц":"TScy","ц":"tscy","Ћ":"TSHcy","ћ":"tshcy","Ŧ":"Tstrok","ŧ":"tstrok","Ú":"Uacute","ú":"uacute","↟":"Uarr","⥉":"Uarrocir","Ў":"Ubrcy","ў":"ubrcy","Ŭ":"Ubreve","ŭ":"ubreve","Û":"Ucirc","û":"ucirc","У":"Ucy","у":"ucy","⇅":"udarr","Ű":"Udblac","ű":"udblac","⥮":"udhar","⥾":"ufisht","𝔘":"Ufr","𝔲":"ufr","Ù":"Ugrave","ù":"ugrave","⥣":"uHar","▀":"uhblk","⌜":"ulcorn","⌏":"ulcrop","◸":"ultri","Ū":"Umacr","ū":"umacr","⏟":"UnderBrace","⏝":"UnderParenthesis","⊎":"uplus","Ų":"Uogon","ų":"uogon","𝕌":"Uopf","𝕦":"uopf","⤒":"UpArrowBar","↕":"varr","υ":"upsi","ϒ":"Upsi","Υ":"Upsilon","⇈":"uuarr","⌝":"urcorn","⌎":"urcrop","Ů":"Uring","ů":"uring","◹":"urtri","𝒰":"Uscr","𝓊":"uscr","⋰":"utdot","Ũ":"Utilde","ũ":"utilde","Ü":"Uuml","ü":"uuml","⦧":"uwangle","⦜":"vangrt","⊊︀":"vsubne","⫋︀":"vsubnE","⊋︀":"vsupne","⫌︀":"vsupnE","⫨":"vBar","⫫":"Vbar","⫩":"vBarv","В":"Vcy","в":"vcy","⊩":"Vdash","⊫":"VDash","⫦":"Vdashl","⊻":"veebar","≚":"veeeq","⋮":"vellip","|":"vert","‖":"Vert","❘":"VerticalSeparator","≀":"wr","𝔙":"Vfr","𝔳":"vfr","𝕍":"Vopf","𝕧":"vopf","𝒱":"Vscr","𝓋":"vscr","⊪":"Vvdash","⦚":"vzigzag","Ŵ":"Wcirc","ŵ":"wcirc","⩟":"wedbar","≙":"wedgeq","℘":"wp","𝔚":"Wfr","𝔴":"wfr","𝕎":"Wopf","𝕨":"wopf","𝒲":"Wscr","𝓌":"wscr","𝔛":"Xfr","𝔵":"xfr","Ξ":"Xi","ξ":"xi","⋻":"xnis","𝕏":"Xopf","𝕩":"xopf","𝒳":"Xscr","𝓍":"xscr","Ý":"Yacute","ý":"yacute","Я":"YAcy","я":"yacy","Ŷ":"Ycirc","ŷ":"ycirc","Ы":"Ycy","ы":"ycy","¥":"yen","𝔜":"Yfr","𝔶":"yfr","Ї":"YIcy","ї":"yicy","𝕐":"Yopf","𝕪":"yopf","𝒴":"Yscr","𝓎":"yscr","Ю":"YUcy","ю":"yucy","ÿ":"yuml","Ÿ":"Yuml","Ź":"Zacute","ź":"zacute","Ž":"Zcaron","ž":"zcaron","З":"Zcy","з":"zcy","Ż":"Zdot","ż":"zdot","ℨ":"Zfr","Ζ":"Zeta","ζ":"zeta","𝔷":"zfr","Ж":"ZHcy","ж":"zhcy","⇝":"zigrarr","𝕫":"zopf","𝒵":"Zscr","𝓏":"zscr","‍":"zwj","‌":"zwnj"},d=/["&'<>`]/g,p={'"':""","&":"&","'":"'","<":"<",">":">","`":"`"},f=/&#(?:[xX][^a-fA-F0-9]|[^0-9xX])/,g=/[\0-\x08\x0B\x0E-\x1F\x7F-\x9F\uFDD0-\uFDEF\uFFFE\uFFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDFFE\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,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:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"⁡",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",amp:"&",AMP:"&",andand:"⩕",And:"⩓",and:"∧",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angmsd:"∡",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",apacir:"⩯",ap:"≈",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"⁡",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",barwed:"⌅",Barwed:"⌆",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",Because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxdl:"┐",boxdL:"╕",boxDl:"╖",boxDL:"╗",boxdr:"┌",boxdR:"╒",boxDr:"╓",boxDR:"╔",boxh:"─",boxH:"═",boxhd:"┬",boxHd:"╤",boxhD:"╥",boxHD:"╦",boxhu:"┴",boxHu:"╧",boxhU:"╨",boxHU:"╩",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxuL:"╛",boxUl:"╜",boxUL:"╝",boxur:"└",boxuR:"╘",boxUr:"╙",boxUR:"╚",boxv:"│",boxV:"║",boxvh:"┼",boxvH:"╪",boxVh:"╫",boxVH:"╬",boxvl:"┤",boxvL:"╡",boxVl:"╢",boxVL:"╣",boxvr:"├",boxvR:"╞",boxVr:"╟",boxVR:"╠",bprime:"‵",breve:"˘",Breve:"˘",brvbar:"¦",bscr:"𝒷",Bscr:"ℬ",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsolb:"⧅",bsol:"\\",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",capand:"⩄",capbrcup:"⩉",capcap:"⩋",cap:"∩",Cap:"⋒",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",CenterDot:"·",cfr:"𝔠",Cfr:"ℭ",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cir:"○",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",colon:":",Colon:"∷",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",conint:"∮",Conint:"∯",ContourIntegral:"∮",copf:"𝕔",Copf:"ℂ",coprod:"∐",Coproduct:"∐",copy:"©",COPY:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",cross:"✗",Cross:"⨯",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cupbrcap:"⩈",cupcap:"⩆",CupCap:"≍",cup:"∪",Cup:"⋓",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dagger:"†",Dagger:"‡",daleth:"ℸ",darr:"↓",Darr:"↡",dArr:"⇓",dash:"‐",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",ddagger:"‡",ddarr:"⇊",DD:"ⅅ",dd:"ⅆ",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",diamond:"⋄",Diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrowBar:"⤓",downarrow:"↓",DownArrow:"↓",Downarrow:"⇓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVectorBar:"⥖",DownLeftVector:"↽",DownRightTeeVector:"⥟",DownRightVectorBar:"⥗",DownRightVector:"⇁",DownTeeArrow:"↧",DownTee:"⊤",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",Ecirc:"Ê",ecirc:"ê",ecir:"≖",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",edot:"ė",eDot:"≑",ee:"ⅇ",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp13:" ",emsp14:" ",emsp:" ",ENG:"Ŋ",eng:"ŋ",ensp:" ",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",escr:"ℯ",Escr:"ℰ",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",exponentiale:"ⅇ",ExponentialE:"ⅇ",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",forall:"∀",ForAll:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",fscr:"𝒻",Fscr:"ℱ",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",ge:"≥",gE:"≧",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",gescc:"⪩",ges:"⩾",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",gg:"≫",Gg:"⋙",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gla:"⪥",gl:"≷",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gnE:"≩",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",gtcc:"⪧",gtcir:"⩺",gt:">",GT:">",Gt:"≫",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",HARDcy:"Ъ",hardcy:"ъ",harrcir:"⥈",harr:"↔",hArr:"⇔",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",Hfr:"ℌ",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",Hopf:"ℍ",horbar:"―",HorizontalLine:"─",hscr:"𝒽",Hscr:"ℋ",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",Iacute:"Í",iacute:"í",ic:"⁣",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",ifr:"𝔦",Ifr:"ℑ",Igrave:"Ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Imacr:"Ī",imacr:"ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",Im:"ℑ",imof:"⊷",imped:"Ƶ",Implies:"⇒",incare:"℅","in":"∈",infin:"∞",infintie:"⧝",inodot:"ı",intcal:"⊺","int":"∫",Int:"∬",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"⁣",InvisibleTimes:"⁢",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",Iscr:"ℐ",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",Lambda:"Λ",lambda:"λ",lang:"⟨",Lang:"⟪",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",larrb:"⇤",larrbfs:"⤟",larr:"←",Larr:"↞",lArr:"⇐",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",latail:"⤙",lAtail:"⤛",lat:"⪫",late:"⪭",lates:"⪭︀",lbarr:"⤌",lBarr:"⤎",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",lE:"≦",LeftAngleBracket:"⟨",LeftArrowBar:"⇤",leftarrow:"←",LeftArrow:"←",Leftarrow:"⇐",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVectorBar:"⥙",LeftDownVector:"⇃",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTeeArrow:"↤",LeftTee:"⊣",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangleBar:"⧏",LeftTriangle:"⊲",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVectorBar:"⥘",LeftUpVector:"↿",LeftVectorBar:"⥒",LeftVector:"↼",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",lescc:"⪨",les:"⩽",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",llarr:"⇇",ll:"≪",Ll:"⋘",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoustache:"⎰",lmoust:"⎰",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lnE:"≨",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftrightarrow:"⟷",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longmapsto:"⟼",longrightarrow:"⟶",LongRightArrow:"⟶",Longrightarrow:"⟹",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",lscr:"𝓁",Lscr:"ℒ",lsh:"↰",Lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",Lstrok:"Ł",lstrok:"ł",ltcc:"⪦",ltcir:"⩹",lt:"<",LT:"<",Lt:"≪",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",midast:"*",midcir:"⫰",mid:"∣",middot:"·",minusb:"⊟",minus:"−",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",mscr:"𝓂",Mscr:"ℳ",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natural:"♮",naturals:"ℕ",natur:"♮",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"–",nearhk:"⤤",nearr:"↗",neArr:"⇗",nearrow:"↗",ne:"≠",nedot:"≐̸",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:"\n",nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nharr:"↮",nhArr:"⇎",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlarr:"↚",nlArr:"⇍",nldr:"‥",nlE:"≦̸",nle:"≰",nleftarrow:"↚",nLeftarrow:"⇍",nleftrightarrow:"↮",nLeftrightarrow:"⇎",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"⁠",NonBreakingSpace:" ",nopf:"𝕟",Nopf:"ℕ",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangleBar:"⧏̸",NotLeftTriangle:"⋪",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangleBar:"⧐̸",NotRightTriangle:"⋫",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",nparallel:"∦",npar:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",nprec:"⊀",npreceq:"⪯̸",npre:"⪯̸",nrarrc:"⤳̸",nrarr:"↛",nrArr:"⇏",nrarrw:"↝̸",nrightarrow:"↛",nRightarrow:"⇏",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwarr:"↖",nwArr:"⇖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",Ocirc:"Ô",ocirc:"ô",ocir:"⊚",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",orarr:"↻",Or:"⩔",or:"∨",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",otimesas:"⨶",Otimes:"⨷",otimes:"⊗",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",para:"¶",parallel:"∥",par:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plus:"+",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",popf:"𝕡",Popf:"ℙ",pound:"£",prap:"⪷",Pr:"⪻",pr:"≺",prcue:"≼",precapprox:"⪷",prec:"≺",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",pre:"⪯",prE:"⪳",precsim:"≾",prime:"′",Prime:"″",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportional:"∝",Proportion:"∷",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:" ",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",qopf:"𝕢",Qopf:"ℚ",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',QUOT:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",Rang:"⟫",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarr:"→",Rarr:"↠",rArr:"⇒",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",ratail:"⤚",rAtail:"⤜",ratio:"∶",rationals:"ℚ",rbarr:"⤍",rBarr:"⤏",RBarr:"⤐",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",Re:"ℜ",rect:"▭",reg:"®",REG:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",Rfr:"ℜ",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrowBar:"⇥",rightarrow:"→",RightArrow:"→",Rightarrow:"⇒",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVectorBar:"⥕",RightDownVector:"⇂",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTeeArrow:"↦",RightTee:"⊢",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangleBar:"⧐",RightTriangle:"⊳",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVectorBar:"⥔",RightUpVector:"↾",RightVectorBar:"⥓",RightVector:"⇀",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoustache:"⎱",rmoust:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",Ropf:"ℝ",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",rscr:"𝓇",Rscr:"ℛ",rsh:"↱",Rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"‚",scap:"⪸",Scaron:"Š",scaron:"š",Sc:"⪼",sc:"≻",sccue:"≽",sce:"⪰",scE:"⪴",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdotb:"⊡",sdot:"⋅",sdote:"⩦",searhk:"⤥",searr:"↘",seArr:"⇘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"­",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",solbar:"⌿",solb:"⧄",sol:"/",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",square:"□",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squ:"□",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",Sub:"⋐",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",Subset:"⋐",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succapprox:"⪸",succ:"≻",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",sum:"∑",Sum:"∑",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",sup:"⊃",Sup:"⋑",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",Supset:"⋑",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swarr:"↙",swArr:"⇙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:" ",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",therefore:"∴",Therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:"  ",ThinSpace:" ",thinsp:" ",thkap:"≈",thksim:"∼",THORN:"Þ",thorn:"þ",tilde:"˜",Tilde:"∼",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",timesbar:"⨱",timesb:"⊠",times:"×",timesd:"⨰",tint:"∭",toea:"⤨",topbot:"⌶",topcir:"⫱",top:"⊤",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",TRADE:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",uarr:"↑",Uarr:"↟",uArr:"⇑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrowBar:"⤒",uparrow:"↑",UpArrow:"↑",Uparrow:"⇑",UpArrowDownArrow:"⇅",updownarrow:"↕",UpDownArrow:"↕",Updownarrow:"⇕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",upsi:"υ",Upsi:"ϒ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTeeArrow:"↥",UpTee:"⊥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",vArr:"⇕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vBar:"⫨",Vbar:"⫫",vBarv:"⫩",Vcy:"В",vcy:"в",vdash:"⊢",vDash:"⊨",Vdash:"⊩",VDash:"⊫",Vdashl:"⫦",veebar:"⊻",vee:"∨",Vee:"⋁",veeeq:"≚",vellip:"⋮",verbar:"|",Verbar:"‖",vert:"|",Vert:"‖",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",Wedge:"⋀",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xharr:"⟷",xhArr:"⟺",Xi:"Ξ",xi:"ξ",xlarr:"⟵",xlArr:"⟸",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrarr:"⟶",xrArr:"⟹",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",yuml:"ÿ",Yuml:"Ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"ℨ",ZeroWidthSpace:"​",Zeta:"Ζ",zeta:"ζ",zfr:"𝔷",Zfr:"ℨ",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",Zopf:"ℤ",Zscr:"𝒵",zscr:"𝓏",zwj:"‍",zwnj:"‌"},v={Aacute:"Á",aacute:"á",Acirc:"Â",acirc:"â",acute:"´",AElig:"Æ",aelig:"æ",Agrave:"À",agrave:"à",amp:"&",AMP:"&",Aring:"Å",aring:"å",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",brvbar:"¦",Ccedil:"Ç",ccedil:"ç",cedil:"¸",cent:"¢",copy:"©",COPY:"©",curren:"¤",deg:"°",divide:"÷",Eacute:"É",eacute:"é",Ecirc:"Ê",ecirc:"ê",Egrave:"È",egrave:"è",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",frac12:"½",frac14:"¼",frac34:"¾",gt:">",GT:">",Iacute:"Í",iacute:"í",Icirc:"Î",icirc:"î",iexcl:"¡",Igrave:"Ì",igrave:"ì",iquest:"¿",Iuml:"Ï",iuml:"ï",laquo:"«",lt:"<",LT:"<",macr:"¯",micro:"µ",middot:"·",nbsp:" ",not:"¬",Ntilde:"Ñ",ntilde:"ñ",Oacute:"Ó",oacute:"ó",Ocirc:"Ô",ocirc:"ô",Ograve:"Ò",ograve:"ò",ordf:"ª",ordm:"º",Oslash:"Ø",oslash:"ø",Otilde:"Õ",otilde:"õ",Ouml:"Ö",ouml:"ö",para:"¶",plusmn:"±",pound:"£",quot:'"',QUOT:'"',raquo:"»",reg:"®",REG:"®",sect:"§",shy:"­",sup1:"¹",sup2:"²",sup3:"³",szlig:"ß",THORN:"Þ",thorn:"þ",times:"×",Uacute:"Ú",uacute:"ú",Ucirc:"Û",ucirc:"û",Ugrave:"Ù",ugrave:"ù",uml:"¨",Uuml:"Ü",uuml:"ü",Yacute:"Ý",yacute:"ý",yen:"¥",yuml:"ÿ"},b={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"},A=[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],E=String.fromCharCode,x={},w=x.hasOwnProperty,_=function(e,t){return w.call(e,t) },D=function(e,t){for(var r=-1,n=e.length;++r=55296&&57343>=e||e>1114111?(t&&B("character reference outside the permissible Unicode range"),"�"):_(b,e)?(t&&B("disallowed character reference"),b[e]):(t&&D(A,e)&&B("disallowed character reference"),e>65535&&(e-=65536,r+=E(e>>>10&1023|55296),e=56320|1023&e),r+=E(e))},F=function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"},B=function(e){throw Error("Parse error: "+e)},T=function(e,t){t=k(t,T.options);var r=t.strict;r&&g.test(e)&&B("forbidden code point");var n=t.encodeEverything,i=t.useNamedReferences,a=t.allowUnsafeSymbols;return n?(e=e.replace(s,function(e){return i&&_(h,e)?"&"+h[e]+";":F(e)}),i&&(e=e.replace(/>\u20D2/g,">⃒").replace(/<\u20D2/g,"<⃒").replace(/fj/g,"fj")),i&&(e=e.replace(l,function(e){return"&"+h[e]+";"}))):i?(a||(e=e.replace(d,function(e){return"&"+h[e]+";"})),e=e.replace(/>\u20D2/g,">⃒").replace(/<\u20D2/g,"<⃒"),e=e.replace(l,function(e){return"&"+h[e]+";"})):a||(e=e.replace(d,F)),e.replace(o,function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1),n=1024*(t-55296)+r-56320+65536;return"&#x"+n.toString(16).toUpperCase()+";"}).replace(c,F)};T.options={allowUnsafeSymbols:!1,encodeEverything:!1,strict:!1,useNamedReferences:!1};var S=function(e,t){t=k(t,S.options);var r=t.strict;return r&&f.test(e)&&B("malformed character reference"),e.replace(y,function(e,n,i,a,u,o,s,c){var l,h,d,p,f;return n?(l=n,h=i,r&&!h&&B("character reference was not terminated by a semicolon"),C(l,r)):a?(d=a,h=u,r&&!h&&B("character reference was not terminated by a semicolon"),l=parseInt(d,16),C(l,r)):o?(p=o,_(m,p)?m[p]:(r&&B("named character reference was not terminated by a semicolon"),e)):(p=s,f=c,f&&t.isAttributeValue?(r&&"="==f&&B("`&` did not start a character reference"),e):(r&&B("named character reference was not terminated by a semicolon"),v[p]+(f||"")))})};S.options={isAttributeValue:!1,strict:!1};var L=function(e){return e.replace(d,function(e){return p[e]})},N={version:"0.5.0",encode:T,decode:S,escape:L,unescape:S};if("function"==typeof define&&"object"==typeof define.amd&&define.amd)define(function(){return N});else if(i&&!i.nodeType)if(a)a.exports=N;else for(var q in N)_(N,q)&&(i[q]=N[q]);else n.he=N}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],101:[function(e,t,r){(function(e){(function(){function n(e,t,r){for(var n=(r||0)-1,i=e?e.length:0;++n-1?0:-1:e?0:-1}function a(e){var t=this.cache,r=typeof e;if("boolean"==r||null==e)t[e]=!0;else{"number"!=r&&"string"!=r&&(r="object");var n="number"==r?e:A+e,i=t[r]||(t[r]={});"object"==r?(i[n]||(i[n]=[])).push(e):i[n]=!0}}function u(e){return e.charCodeAt(0)}function o(e,t){for(var r=e.criteria,n=t.criteria,i=-1,a=r.length;++io||"undefined"==typeof u)return 1;if(o>u||"undefined"==typeof o)return-1}}return e.index-t.index}function s(e){var t=-1,r=e.length,n=e[0],i=e[r/2|0],u=e[r-1];if(n&&"object"==typeof n&&i&&"object"==typeof i&&u&&"object"==typeof u)return!1;var o=h();o["false"]=o["null"]=o["true"]=o.undefined=!1;var s=h();for(s.array=e,s.cache=o,s.push=a;++ti?0:i);++n=E&&a===n,c=[];if(o){var l=s(t);l?(a=i,t=l):o=!1}for(;++r-1:void 0});return i.pop(),a.pop(),v&&(d(i),d(a)),u}function tt(e,t,r,n,i){(Jn(t)?Kt:si)(t,function(t,a){var u,o,s=t,c=e[a];if(t&&((o=Jn(t))||ci(t))){for(var l=n.length;l--;)if(u=n[l]==t){c=i[l];break}if(!u){var h;r&&(s=r(c,t),(h="undefined"!=typeof s)&&(c=s)),h||(c=o?Jn(c)?c:[]:ci(c)?c:{}),n.push(t),i.push(c),h||tt(c,t,r,n,i)}}else r&&(s=r(c,t),"undefined"==typeof s&&(s=t)),"undefined"!=typeof s&&(c=s);e[a]=c})}function nt(e,t){return e+Sn(Wn()*(t-e+1))}function it(e,t,r){var a=-1,u=st(),o=e?e.length:0,c=[],h=!t&&o>=E&&u===n,f=r||h?l():c;if(h){var g=s(f);u=i,f=g}for(;++a3&&"function"==typeof t[r-2])var n=x(t[--r-1],t[r--],2);else r>2&&"function"==typeof t[r-1]&&(n=t[--r]);for(var i=f(arguments,1,r),a=-1,u=l(),o=l();++ar?Hn(0,a+r):r)||0,Jn(e)?u=i(e,t,r)>-1:"number"==typeof a?u=(It(e)?e.indexOf(t,r):i(e,t,r))>-1:si(e,function(e){return++n>=r?!(u=e===t):void 0}),u}function Yt(e,r,n){var i=!0;r=t.createCallback(r,n,3);var a=-1,u=e?e.length:0;if("number"==typeof u)for(;++aa&&(a=c)}else r=null==r&&It(e)?u:t.createCallback(r,n,3),Kt(e,function(e,t,n){var u=r(e,t,n);u>i&&(i=u,a=e)});return a}function tr(e,r,n){var i=1/0,a=i;if("function"!=typeof r&&n&&n[r]===e&&(r=null),null==r&&Jn(e))for(var o=-1,s=e.length;++oc&&(a=c)}else r=null==r&&It(e)?u:t.createCallback(r,n,3),Kt(e,function(e,t,n){var u=r(e,t,n);i>u&&(i=u,a=e)});return a}function rr(e,r,n,i){if(!e)return n;var a=arguments.length<3;r=t.createCallback(r,i,4);var u=-1,o=e.length;if("number"==typeof o)for(a&&(n=e[++u]);++ur?Hn(0,i+r):r||0}else if(r){var a=kr(e,t);return e[a]===t?a:-1}return n(e,t,r)}function vr(e,r,n){var i=0,a=e?e.length:0;if("number"!=typeof r&&null!=r){var u=a;for(r=t.createCallback(r,n,3);u--&&r(e[u],u,e);)i++}else i=null==r||n?1:r||i;return f(e,0,Yn(Hn(0,a-i),a))}function br(){for(var e=[],t=-1,r=arguments.length,a=l(),u=st(),o=u===n,c=l();++t=E&&s(t?e[t]:c)))}var f=e[0],g=-1,y=f?f.length:0,m=[];e:for(;++gr?Hn(0,n+r):Yn(r,n-1))+1);n--;)if(e[n]===t)return n;return-1}function xr(e){for(var t=arguments,r=0,n=t.length,i=e?e.length:0;++ra;){var o=a+u>>>1;n(e[o])1?arguments:arguments[0],t=-1,r=e?er(pi(e,"length")):0,n=fn(0>r?0:r);++t2?ut(e,17,f(arguments,2),null,t):ut(e,1,null,null,t)}function Ir(e){for(var t=arguments.length>1?Q(arguments,!0,!1,1):At(e),r=-1,n=t.length;++r2?ut(t,19,f(arguments,2),null,e):ut(t,3,null,null,e)}function Rr(){for(var e=arguments,t=e.length;t--;)if(!Bt(e[t]))throw new wn;return function(){for(var t=arguments,r=e.length;r--;)t=[e[r].apply(this,t)];return t[0]}}function Pr(e,t){return t="number"==typeof t?t:+t||e.length,ut(e,4,null,null,null,t)}function Mr(e,t,r){var n,i,a,u,o,s,c,l=0,h=!1,d=!0;if(!Bt(e))throw new wn;if(t=Hn(0,t)||0,r===!0){var p=!0;d=!1}else Tt(r)&&(p=r.leading,h="maxWait"in r&&(Hn(t,r.maxWait)||0),d="trailing"in r?r.trailing:d);var f=function(){var r=t-(gi()-u);if(0>=r){i&&Tn(i);var h=c;i=s=c=y,h&&(l=gi(),a=e.apply(o,n),s||i||(n=o=null))}else s=On(f,r)},g=function(){s&&Tn(s),i=s=c=y,(d||h!==t)&&(l=gi(),a=e.apply(o,n),s||i||(n=o=null))};return function(){if(n=arguments,u=gi(),o=this,c=d&&(s||!p),h===!1)var r=p&&!s;else{i||p||(l=u);var y=h-(u-l),m=0>=y;m?(i&&(i=Tn(i)),l=u,a=e.apply(o,n)):i||(i=On(g,y))}return m&&s?s=Tn(s):s||t===h||(s=On(f,t)),r&&(m=!0,a=e.apply(o,n)),!m||s||i||(n=o=null),a}}function jr(e){if(!Bt(e))throw new wn;var t=f(arguments,1);return On(function(){e.apply(y,t)},1)}function Vr(e,t){if(!Bt(e))throw new wn;var r=f(arguments,2);return On(function(){e.apply(y,r)},t)}function Ur(e,t){if(!Bt(e))throw new wn;var r=function(){var n=r.cache,i=t?t.apply(this,arguments):A+arguments[0];return qn.call(n,i)?n[i]:n[i]=e.apply(this,arguments)};return r.cache={},r}function Gr(e){var t,r;if(!Bt(e))throw new wn;return function(){return t?r:(t=!0,r=e.apply(this,arguments),e=null,r)}}function $r(e){return ut(e,16,f(arguments,1))}function Hr(e){return ut(e,32,null,f(arguments,1))}function Yr(e,t,r){var n=!0,i=!0;if(!Bt(e))throw new wn;return r===!1?n=!1:Tt(r)&&(n="leading"in r?r.leading:n,i="trailing"in r?r.trailing:i),z.leading=n,z.maxWait=t,z.trailing=i,Mr(e,t,z)}function zr(e,t){return ut(t,16,[e])}function Wr(e){return function(){return e}}function Zr(e,t,r){var n=typeof e;if(null==e||"function"==n)return x(e,t,r);if("object"!=n)return tn(e);var i=ei(e),a=i[0],u=e[a];return 1!=i.length||u!==u||Tt(u)?function(t){for(var r=i.length,n=!1;r--&&(n=et(t[i[r]],e[i[r]],null,!0)););return n}:function(e){var t=e[a];return u===t&&(0!==u||1/u==1/t)}}function Kr(e){return null==e?"":xn(e).replace(ii,ot)}function Xr(e){return e}function Jr(e,n,i){var a=!0,u=n&&At(n);n&&(i||u.length)||(null==i&&(i=n),o=r,n=e,e=t,u=At(n)),i===!1?a=!1:Tt(i)&&"chain"in i&&(a=i.chain);var o=e,s=Bt(o);Kt(u,function(t){var r=e[t]=n[t];s&&(o.prototype[t]=function(){var t=this.__chain__,n=this.__wrapped__,i=[n];In.apply(i,arguments);var u=r.apply(e,i);if(a||t){if(n===u&&Tt(u))return this;u=new o(u),u.__chain__=t}return u})})}function Qr(){return e._=kn,this}function en(){}function tn(e){return function(t){return t[e]}}function rn(e,t,r){var n=null==e,i=null==t;if(null==r&&("boolean"==typeof e&&i?(r=e,e=1):i||"boolean"!=typeof t||(r=t,i=!0)),n&&i&&(t=1),e=+e||0,i?(t=e,e=0):t=+t||0,r||e%1||t%1){var a=Wn();return Yn(e+a*(t-e+parseFloat("1e-"+((a+"").length-1))),t)}return nt(e,t)}function nn(e,t){if(e){var r=e[t];return Bt(r)?e[t]():r}}function an(e,r,n){var i=t.templateSettings;e=xn(e||""),n=ui({},n,i);var a,u=ui({},n.imports,i.imports),o=ei(u),s=Gt(u),l=0,h=n.interpolate||L,d="__p += '",p=En((n.escape||L).source+"|"+h.source+"|"+(h===T?C:L).source+"|"+(n.evaluate||L).source+"|$","g");e.replace(p,function(t,r,n,i,u,o){return n||(n=i),d+=e.slice(l,o).replace(q,c),r&&(d+="' +\n__e("+r+") +\n'"),u&&(a=!0,d+="';\n"+u+";\n__p += '"),n&&(d+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),l=o+t.length,t}),d+="';\n";var f=n.variable,g=f;g||(f="obj",d="with ("+f+") {\n"+d+"\n}\n"),d=(a?d.replace(_,""):d).replace(D,"$1").replace(k,"$1;"),d="function("+f+") {\n"+(g?"":f+" || ("+f+" = {});\n")+"var __t, __p = '', __e = _.escape"+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var m="\n/*\n//# sourceURL="+(n.sourceURL||"/lodash/template/source["+O++ +"]")+"\n*/";try{var v=mn(o,"return "+d+m).apply(y,s)}catch(b){throw b.source=d,b}return r?v(r):(v.source=d,v)}function un(e,t,r){e=(e=+e)>-1?e:0;var n=-1,i=fn(e);for(t=x(t,r,1);++n/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:T,variable:"",imports:{_:t}},jn||(v=function(){function t(){}return function(r){if(Tt(r)){t.prototype=r;var n=new t;t.prototype=null}return n||e.Object()}}());var Xn=Mn?function(e,t){W.value=t,Mn(e,"__bindData__",W)}:en,Jn=Vn||function(e){return e&&"object"==typeof e&&"number"==typeof e.length&&Cn.call(e)==P||!1},Qn=function(e){var t,r=e,n=[];if(!r)return n;if(!Z[typeof e])return n;for(t in r)qn.call(r,t)&&n.push(t);return n},ei=$n?function(e){return Tt(e)?$n(e):[]}:Qn,ti={"&":"&","<":"<",">":">",'"':""","'":"'"},ri=xt(ti),ni=En("("+ei(ri).join("|")+")","g"),ii=En("["+ei(ti).join("")+"]","g"),ai=function(e,t,r){var n,i=e,a=i;if(!i)return a;var u=arguments,o=0,s="number"==typeof r?2:u.length;if(s>3&&"function"==typeof u[s-2])var c=x(u[--s-1],u[s--],2);else s>2&&"function"==typeof u[s-1]&&(c=u[--s]);for(;++o/g,S=RegExp("^["+w+"]*0+(?=.$)"),L=/($^)/,N=/\bthis\b/,q=/['\n\r\t\u2028\u2029\\]/g,I=["Array","Boolean","Date","Function","Math","Number","Object","RegExp","String","_","attachEvent","clearTimeout","isFinite","isNaN","parseInt","setTimeout"],O=0,R="[object Arguments]",P="[object Array]",M="[object Boolean]",j="[object Date]",V="[object Function]",U="[object Number]",G="[object Object]",$="[object RegExp]",H="[object String]",Y={};Y[V]=!1,Y[R]=Y[P]=Y[M]=Y[j]=Y[U]=Y[G]=Y[$]=Y[H]=!0;var z={leading:!1,maxWait:0,trailing:!1},W={configurable:!1,enumerable:!1,value:null,writable:!1},Z={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},K={"\\":"\\","'":"'","\n":"n","\r":"r"," ":"t","\u2028":"u2028","\u2029":"u2029"},X=Z[typeof window]&&window||this,J=Z[typeof r]&&r&&!r.nodeType&&r,Q=Z[typeof t]&&t&&!t.nodeType&&t,et=Q&&Q.exports===J&&J,tt=Z[typeof e]&&e;!tt||tt.global!==tt&&tt.window!==tt||(X=tt);var rt=g();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(X._=rt,define(function(){return rt})):J&&Q?et?(Q.exports=rt)._=rt:J._=rt:X._=rt}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],102:[function(e,t){t.exports={name:"mermaid",version:"0.3.1",description:"Markdownish syntax for generating flowcharts",main:"src/main.js",bin:{mermaid:"./bin/mermaid.js"},scripts:{test:"gulp test"},repository:{type:"git",url:"https://github.com/knsv/mermaid"},author:"",license:"MIT",dependencies:{chalk:"^0.5.1","dagre-d3":"~0.3.2",he:"^0.5.0",minimist:"^1.1.0",mkdirp:"^0.5.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",d3:"~3.4.13","dagre-d3":"~0.3.2","event-stream":"^3.2.0",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-hogan":"^1.1.0","gulp-istanbul":"^0.4.0","gulp-jasmine":"~1.0.1","gulp-jison":"~1.0.0","gulp-jshint":"^1.9.0","gulp-less":"^1.3.6","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.12",rewire:"^2.1.3",rimraf:"^2.2.8","semantic-ui":"^1.4.1",tape:"^3.0.3"}} -},{}],103:[function(e,t,r){var n=e("./graphDb"),i=e("./parser/flow"),a=e("./parser/dot"),u=e("dagre-d3");r.addVertices=function(e,t){var r=Object.keys(e),n=function(e,t){var r;for(r=0;r0&&(u=a.classes.join(" "));var o="";o=n(o,a.styles),i="undefined"==typeof a.text?a.id:a.text;var s=0,c="";switch(a.type){case"round":s=5,c="rect";break;case"square":c="rect";break;case"diamond":c="question";break;case"odd":c="rect_left_inv_arrow";break;case"circle":c="circle";break;default:c="rect"}t.setNode(a.id,{labelType:"html",shape:c,label:i,rx:s,ry:s,"class":u,style:o,id:a.id})})},r.addEdges=function(e,t){var r,n=0;e.forEach(function(e){n++,r="arrow_open"===e.type?"none":"normal";var i="";"undefined"!=typeof e.style&&e.style.forEach(function(e){i=i+e+";"}),"undefined"==typeof e.text?"undefined"==typeof e.style?t.setEdge(e.start,e.end,{style:"stroke: #333; stroke-width: 1.5px;fill:none",arrowheadStyle:"fill: #333",arrowhead:r},n):t.setEdge(e.start,e.end,{style:i,arrowheadStyle:"fill: #333",arrowhead:r},n):"undefined"==typeof e.style?t.setEdge(e.start,e.end,{labelType:"html",style:"stroke: #333; stroke-width: 1.5px;fill:none",labelpos:"c",label:''+e.text+"",arrowheadStyle:"fill: #333",arrowhead:r},n):t.setEdge(e.start,e.end,{labelType:"html",style:i,arrowheadStyle:"fill: #333",label:e.text,arrowhead:r},n)})},r.getClasses=function(e,t){var r;n.clear(),r=t?a.parser:i.parser,r.yy=n,r.parse(e);var u=n.getClasses();return"undefined"==typeof u.default&&(u.default={id:"default"},u.default.styles=["fill:#eaeaea","stroke:#666","stroke-width:1.5px"]),u},r.draw=function(e,t,o){var s;n.clear(),s=o?a.parser:i.parser,s.yy=n,s.parse(e);var c;c=n.getDirection(),"undefined"==typeof c&&(c="TD");var l=new u.graphlib.Graph({multigraph:!0}).setGraph({rankdir:c,marginx:20,marginy:20}).setDefaultEdgeLabel(function(){return{}}),h=n.getVertices(),d=n.getEdges();r.addVertices(h,l),r.addEdges(d,l);var p=new u.render;p.shapes().question=function(e,t,r){var n=t.width,i=t.height,a=.8*(n+i),o=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}],s=e.insert("polygon",":first-child").attr("points",o.map(function(e){return e.x+","+e.y}).join(" ")).attr("rx",5).attr("ry",5).attr("transform","translate("+-a/2+","+2*a/4+")");return r.intersect=function(e){return u.intersect.polygon(r,o,e)},s},p.shapes().rect_left_inv_arrow=function(e,t,r){var n=t.width,i=t.height,a=[{x:-i/2,y:0},{x:n,y:0},{x:n,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}],o=e.insert("polygon",":first-child").attr("points",a.map(function(e){return e.x+","+e.y}).join(" ")).attr("transform","translate("+-n/2+","+2*i/4+")");return r.intersect=function(e){return u.intersect.polygon(r,a,e)},o},p.arrows().none=function(e,t,r,n){var i=e.append("marker").attr("id",t).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");u.util.applyStyle(a,r[n+"Style"])};var f=d3.select("#"+t);svgGroup=d3.select("#"+t+" g"),p(d3.select("#"+t+" g"),l);var g=document.querySelector("#mermaidChart0");f.attr("height",l.graph().height),f.attr("width",l.graph().width),f.attr("viewBox",g.getBBox().x+" 0 "+l.graph().width+" "+l.graph().height)}},{"./graphDb":104,"./parser/dot":105,"./parser/flow":106,"dagre-d3":1}],104:[function(require,module,exports){var vertices={},edges=[],classes=[],direction,funs=[];exports.addVertex=function(e,t,r,n){"undefined"!=typeof e&&0!==e.trim().length&&("undefined"==typeof vertices[e]&&(vertices[e]={id:e,styles:[],classes:[]}),"undefined"!=typeof t&&(vertices[e].text=t),"undefined"!=typeof r&&(vertices[e].type=r),"undefined"!=typeof r&&(vertices[e].type=r),"undefined"!=typeof n&&null!==n&&n.forEach(function(t){vertices[e].styles.push(t)}))},exports.addLink=function(e,t,r,n){var i={start:e,end:t,type:void 0,text:""};n=r.text,"undefined"!=typeof n&&(i.text=n),"undefined"!=typeof r&&(i.type=r.type),edges.push(i)},exports.updateLink=function(e,t){e.substr(1);edges[e].style=t},exports.addClass=function(e,t){"undefined"==typeof classes[e]&&(classes[e]={id:e,styles:[]}),"undefined"!=typeof t&&null!==t&&t.forEach(function(t){classes[e].styles.push(t)})},exports.setDirection=function(e){direction=e},exports.setClass=function(e,t){e.indexOf(",")>0?e.split(",").forEach(function(e){"undefined"!=typeof vertices[e]&&vertices[e].classes.push(t)}):"undefined"!=typeof vertices[e]&&vertices[e].classes.push(t)},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(e){e()})},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=[],funs=[]},exports.defaultStyle=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}},{}],105:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[1,5],n=[1,6],i=[1,12],a=[1,13],u=[1,14],o=[1,15],s=[1,16],c=[1,17],l=[1,18],h=[1,19],d=[1,20],p=[1,21],f=[1,22],g=[8,16,17,18,19,20,21,22,23,24,25,26],y=[1,37],m=[1,33],v=[1,34],b=[1,35],A=[1,36],E=[8,10,16,17,18,19,20,21,22,23,24,25,26,28,32,37,39,40,45,57,58],x=[10,28],w=[10,28,37,57,58],_=[2,49],D=[1,45],k=[1,48],C=[1,49],F=[1,52],B=[2,65],T=[1,65],S=[1,66],L=[1,67],N=[1,68],q=[1,69],I=[1,70],O=[1,71],R=[1,72],P=[1,73],M=[8,16,17,18,19,20,21,22,23,24,25,26,47],j=[10,28,37],V={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(e,t,r,n,i,a){var u=a.length-1;switch(i){case 1:this.$=a[u-1];break;case 2:this.$=a[u-4];break;case 3:this.$=a[u-5];break;case 4:this.$=a[u-3];break;case 8:case 10:case 11:this.$=a[u];break;case 9:this.$=a[u-1]+""+a[u];break;case 12:case 13:case 14:case 15:case 16:case 18:case 19:case 20:this.$=a[u];break;case 17:this.$="
";break;case 39:this.$="oy";break;case 40:n.addLink(a[u-1],a[u].id,a[u].op),this.$="oy";break;case 42:n.addLink(a[u-1],a[u].id,a[u].op),this.$={op:a[u-2],id:a[u-1]};break;case 44:this.$={op:a[u-1],id:a[u]};break;case 48:n.addVertex(a[u-1]),this.$=a[u-1];break;case 49:n.addVertex(a[u]),this.$=a[u];break;case 66:this.$="arrow";break;case 67:this.$="arrow_open"}},table:[{3:1,4:2,6:3,11:[1,4],12:r,13:n},{1:[3]},{5:[1,7]},{7:8,8:[1,9],14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{6:23,12:r,13:n},t(g,[2,5]),t(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:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},t([8,10,28,32,37,39,40,45,57,58],[2,7],{15:38,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f}),t(E,[2,8]),t(E,[2,10]),t(E,[2,11]),t(E,[2,12]),t(E,[2,13]),t(E,[2,14]),t(E,[2,15]),t(E,[2,16]),t(E,[2,17]),t(E,[2,18]),t(E,[2,19]),t(E,[2,20]),{7:39,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{7:30,8:y,9:40,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,41]},{10:[2,21],28:[1,42]},t(x,[2,23]),t(x,[2,24]),t(x,[2,25]),t(w,_,{44:44,32:[1,43],45:D}),t(x,[2,27],{41:46,43:47,57:k,58:C}),t(x,[2,47],{43:47,34:50,41:51,37:F,57:k,58:C}),{34:53,37:F},{34:54,37:F},{34:55,37:F},{7:56,8:[1,57],14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{7:30,8:y,9:58,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},t(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:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{7:62,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},t(w,[2,48]),t(w,B,{14:10,15:11,7:63,46:64,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,48:T,49:S,50:L,51:N,52:q,53:I,54:O,55:R,56:P}),t(x,[2,41],{34:74,37:F}),{7:77,8:y,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,33:76,42:75,47:A},t(M,[2,66]),t(M,[2,67]),t(x,[2,46]),t(x,[2,40],{34:78,37:F}),{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,38:79,39:[1,80]},t(x,[2,28]),t(x,[2,29]),t(x,[2,30]),{8:[1,82]},{7:30,8:y,9:83,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,84]},{7:30,8:y,9:85,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{5:[2,2]},{10:[2,22]},t(x,[2,26]),t(w,[2,51],{45:[1,86]}),t(w,[2,52]),t(w,[2,56]),t(w,[2,57]),t(w,[2,58]),t(w,[2,59]),t(w,[2,60]),t(w,[2,61]),t(w,[2,62]),t(w,[2,63]),t(w,[2,64]),t(x,[2,38]),t(j,[2,44],{43:47,41:87,57:k,58:C}),t(j,[2,45],{43:47,41:88,57:k,58:C}),t(w,_,{44:44,45:D}),t(x,[2,39]),{39:[1,89]},t(x,[2,34],{34:90,37:F}),{32:[1,91]},{7:30,8:y,9:92,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,93]},t(w,[2,55]),{10:[1,94]},t(w,B,{46:95,48:T,49:S,50:L,51:N,52:q,53:I,54:O,55:R,56:P}),t(j,[2,42]),t(j,[2,43]),t(x,[2,33],{34:96,37:F}),t(x,[2,32]),{7:97,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{10:[1,98]},t(w,[2,54]),{5:[2,3]},t(w,[2,50]),t(x,[2,31]),{28:[1,99],39:[2,37],40:[1,100]},t(w,[2,53]),{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,38:101},{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,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(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},U=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,r,n){switch(r){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 e}();return V.lexer=U,e.prototype=V,V.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],106:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[1,7],n=[1,8],i=[1,18],a=[1,19],u=[1,20],o=[1,21],s=[1,22],c=[1,27],l=[1,16],h=[1,29],d=[1,26],p=[1,28],f=[1,34],g=[1,33],y=[1,30],m=[1,31],v=[1,32],b=[1,6],A=[53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],E=[1,46],x=[1,45],w=[1,44],_=[6,16,17],D=[1,56],k=[1,57],C=[1,58],F=[1,59],B=[6,16,17,43,44,45,46,47],T=[6,9,12,13,16,17,31,34,36,43,44,45,46,47],S=[6,9,12,13,16,17,31,34,36,43,44,45,46,47,62,65,67,68,70,71,73,74,75],L=[6,8,9,10,12,13,16,17,31,33,34,35,36,37,40,43,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],N=[1,6,9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],q=[1,111],I=[1,103],O=[1,112],R=[1,86],P=[1,85],M=[1,101],j=[1,90],V=[1,91],U=[1,88],G=[1,89],$=[1,92],H=[1,93],Y=[1,104],z=[1,97],W=[1,98],Z=[1,96],K=[1,99],X=[1,87],J=[1,106],Q=[1,107],et=[1,108],tt=[1,109],rt=[1,110],nt=[1,94],it=[1,95],at=[1,100],ut=[62,65,67,68,70,71,73,74,75],ot=[9,48,62,65,67,68,70,71,73,74,75],st=[1,136],ct=[1,133],lt=[1,134],ht=[8,9,10,12,13,16,17,31,33,34,35,36,37,40,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],dt=[2,99],pt=[2,101],ft=[8,9,10,12,13,33,35,37,40,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75],gt=[9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],yt=[1,170],mt=[1,167],vt=[1,171],bt=[1,168],At=[1,165],Et=[1,166],xt=[1,169],wt=[1,172],_t=[1,173],Dt=[8,9,10,12,13,40,53,54,55,56,57,62,65,67,68,70,71,73,74,75],kt=[2,44],Ct=[1,185],Ft=[6,16,17,65],Bt=[6,9,16,17,40,61,62,65,67,68,69,70,71],Tt={trace:function(){},yy:{},symbols_:{error:2,expressions:3,graphConfig:4,statements:5,EOF:6,spaceListNewline:7,GRAPH:8,SPACE:9,DIR:10,FirstStmtSeperator:11,TAGEND:12,TAGSTART:13,UP:14,DOWN:15,SEMI:16,NEWLINE:17,spaceList:18,statement:19,commentStatement:20,verticeStatement:21,separator:22,styleStatement:23,linkStyleStatement:24,classDefStatement:25,classStatement:26,clickStatement:27,vertex:28,link:29,alphaNum:30,SQS:31,text:32,SQE:33,PS:34,PE:35,DIAMOND_START:36,DIAMOND_STOP:37,alphaNumStatement:38,alphaNumToken:39,MINUS:40,linkStatement:41,arrowText:42,"--":43,ARROW_POINT:44,ARROW_CIRCLE:45,ARROW_CROSS:46,ARROW_OPEN:47,PIPE:48,textToken:49,commentText:50,commentToken:51,keywords:52,STYLE:53,LINKSTYLE:54,CLASSDEF:55,CLASS:56,CLICK:57,textNoTags:58,textNoTagsToken:59,stylesOpt:60,HEX:61,NUM:62,PCT:63,style:64,COMMA:65,styleComponent:66,ALPHA:67,COLON:68,UNIT:69,BRKT:70,DOT:71,graphCodeTokens:72,PLUS:73,EQUALS:74,MULT:75,TAG_START:76,TAG_END:77,QUOTE:78,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",8:"GRAPH",9:"SPACE",10:"DIR",12:"TAGEND",13:"TAGSTART",14:"UP",15:"DOWN",16:"SEMI",17:"NEWLINE",31:"SQS",33:"SQE",34:"PS",35:"PE",36:"DIAMOND_START",37:"DIAMOND_STOP",40:"MINUS",43:"--",44:"ARROW_POINT",45:"ARROW_CIRCLE",46:"ARROW_CROSS",47:"ARROW_OPEN",48:"PIPE",53:"STYLE",54:"LINKSTYLE",55:"CLASSDEF",56:"CLASS",57:"CLICK",61:"HEX",62:"NUM",63:"PCT",65:"COMMA",67:"ALPHA",68:"COLON",69:"UNIT",70:"BRKT",71:"DOT",73:"PLUS",74:"EQUALS",75:"MULT",76:"TAG_START",77:"TAG_END",78:"QUOTE"},productions_:[0,[3,3],[3,2],[3,4],[3,3],[4,4],[4,4],[4,4],[4,4],[4,4],[11,1],[11,1],[11,2],[5,3],[5,2],[5,1],[7,2],[7,2],[7,1],[7,1],[18,2],[18,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[22,1],[22,1],[22,1],[21,3],[21,1],[28,4],[28,5],[28,6],[28,7],[28,4],[28,5],[28,4],[28,5],[28,4],[28,5],[28,4],[28,1],[28,2],[30,1],[30,2],[38,1],[38,3],[29,2],[29,3],[29,1],[29,2],[29,5],[29,6],[41,1],[41,1],[41,1],[41,1],[42,3],[32,1],[32,2],[50,1],[50,2],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[58,1],[58,2],[25,5],[26,5],[27,5],[23,5],[23,5],[24,5],[20,3],[60,1],[60,3],[64,1],[64,2],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[51,1],[51,1],[49,1],[49,1],[49,1],[59,1],[59,1],[59,1],[59,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1]],performAction:function(e,t,r,n,i,a){var u=a.length-1;switch(i){case 3:this.$=a[u-3];break;case 4:this.$=a[u-2];break;case 5:n.setDirection(a[u-1]),this.$=a[u-1];break;case 6:n.setDirection("LR"),this.$=a[u-1];break;case 7:n.setDirection("RL"),this.$=a[u-1];break;case 8:n.setDirection("BT"),this.$=a[u-1];break;case 9:n.setDirection("TB"),this.$=a[u-1];break;case 32:n.addLink(a[u-2],a[u],a[u-1]),this.$="oy";break;case 33:this.$="yo";break;case 34:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"square");break;case 35:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"square");break;case 36:this.$=a[u-5],n.addVertex(a[u-5],a[u-2],"circle");break;case 37:this.$=a[u-6],n.addVertex(a[u-6],a[u-3],"circle");break;case 38:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"round");break;case 39:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"round");break;case 40:case 44:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"diamond");break;case 41:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"diamond");break;case 42:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"odd");break;case 43:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"odd");break;case 45:this.$=a[u],n.addVertex(a[u]);break;case 46:this.$=a[u-1],n.addVertex(a[u-1]);break;case 47:case 49:case 62:case 64:case 73:this.$=a[u];break;case 48:case 63:case 65:case 74:this.$=a[u-1]+""+a[u];break;case 50:this.$=a[u-2]+"-"+a[u];break;case 51:a[u-1].text=a[u],this.$=a[u-1];break;case 52:a[u-2].text=a[u-1],this.$=a[u-2];break;case 53:this.$=a[u];break;case 54:case 61:this.$=a[u-1];break;case 55:a[u].text=a[u-2],this.$=a[u];break;case 56:a[u-1].text=a[u-3],this.$=a[u-1];break;case 57:this.$={type:"arrow"};break;case 58:this.$={type:"arrow_circle"};break;case 59:this.$={type:"arrow_cross"};break;case 60:this.$={type:"arrow_open"};break;case 75:this.$=a[u-4],n.addClass(a[u-2],a[u]);break;case 76:this.$=a[u-4],n.setClass(a[u-2],a[u]);break;case 77:this.$=a[u-4],n.setClickEvent(a[u-2],a[u]);break;case 78:this.$=a[u-4],n.addVertex(a[u-2],void 0,void 0,a[u]);break;case 79:case 80:this.$=a[u-4],n.updateLink(a[u-2],a[u]);break;case 82:this.$=[a[u]];break;case 83:a[u-2].push(a[u]),this.$=a[u-2];break;case 85:this.$=a[u-1]+a[u]}},table:[{3:1,4:2,8:[1,3]},{1:[3]},{5:4,7:5,9:r,17:n,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:i,54:a,55:u,56:o,57:s,62:c,63:l,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{9:[1,35]},{1:[2,2],6:[1,36]},{5:37,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:i,54:a,55:u,56:o,57:s,62:c,63:l,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(b,[2,15],{19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,7:38,5:39,9:r,17:n,53:i,54:a,55:u,56:o,57:s,62:c,63:l,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v}),t(A,[2,19],{7:40,9:r,17:n}),t(A,[2,18],{7:41,9:r,17:n}),{17:[1,42]},{6:E,16:x,17:w,22:43},{6:E,16:x,17:w,22:47},{6:E,16:x,17:w,22:48},{6:E,16:x,17:w,22:49},{6:E,16:x,17:w,22:50},{6:E,16:x,17:w,22:51},{63:[1,52]},t(_,[2,33],{29:53,41:54,43:[1,55],44:D,45:k,46:C,47:F}),{9:[1,60]},{9:[1,61]},{9:[1,62]},{9:[1,63]},{9:[1,64]},t(B,[2,45],{9:[1,70],12:[1,68],13:[1,69],31:[1,65],34:[1,66],36:[1,67]}),t(T,[2,47],{38:24,39:25,30:71,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v}),t(S,[2,49],{40:[1,72]}),t(L,[2,104]),t(L,[2,105]),t(L,[2,106]),t(L,[2,107]),t(L,[2,108]),t(L,[2,109]),t(L,[2,110]),t(L,[2,111]),t(L,[2,112]),{10:[1,73],12:[1,74],13:[1,75],14:[1,76],15:[1,77]},{1:[2,1]},{1:[2,4],6:[1,78]},{5:79,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:i,54:a,55:u,56:o,57:s,62:c,63:l,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(b,[2,14]),t(A,[2,16]),t(A,[2,17]),t(N,[2,22]),t(N,[2,23]),t(N,[2,29]),t(N,[2,30]),t(N,[2,31]),t(N,[2,24]),t(N,[2,25]),t(N,[2,26]),t(N,[2,27]),t(N,[2,28]),{8:q,9:I,10:O,12:R,13:P,16:M,31:j,33:V,34:U,35:G,36:$,37:H,39:102,40:Y,44:z,45:W,46:Z,47:K,48:X,49:82,50:80,51:81,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,72:83,73:y,74:m,75:v,76:nt,77:it,78:at},{28:113,30:23,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(ut,[2,53],{42:114,9:[1,115],48:[1,116]}),{9:[1,117]},t(ot,[2,57]),t(ot,[2,58]),t(ot,[2,59]),t(ot,[2,60]),{30:118,38:24,39:25,61:[1,119],62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{62:[1,120]},{30:121,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{30:122,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{30:123,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:124,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:127,34:[1,126],39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:128,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:129,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:130,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(B,[2,46]),t(T,[2,48]),{39:131,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{9:st,11:132,16:ct,17:lt,18:135},{9:st,11:137,16:ct,17:lt,18:135},{9:st,11:138,16:ct,17:lt,18:135},{9:st,11:139,16:ct,17:lt,18:135},{9:st,11:140,16:ct,17:lt,18:135},{1:[2,3]},t(b,[2,13]),{8:q,9:I,10:O,12:R,13:P,16:M,17:[2,81],31:j,33:V,34:U,35:G,36:$,37:H,39:102,40:Y,44:z,45:W,46:Z,47:K,48:X,49:82,51:141,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,72:83,73:y,74:m,75:v,76:nt,77:it,78:at},t(ht,[2,64]),t(ht,[2,95]),t(ht,[2,96]),t(ht,[2,97]),t(ht,[2,98]),t(ht,dt),t(ht,[2,113]),t(ht,[2,114]),t(ht,[2,115]),t(ht,[2,116]),t(ht,[2,117]),t(ht,[2,118]),t(ht,[2,119]),t(ht,[2,120]),t(ht,[2,121]),t(ht,[2,122]),t(ht,[2,123]),t(ht,[2,124]),t(ht,[2,125]),t(ht,[2,126]),t(ht,[2,127]),t(ht,[2,100]),t(ht,pt),t(ht,[2,102]),t(ht,[2,103]),t(ht,[2,66]),t(ht,[2,67]),t(ht,[2,68]),t(ht,[2,69]),t(ht,[2,70]),t(ht,[2,71]),t(ht,[2,72]),t(_,[2,32]),t(ut,[2,51],{9:[1,142]}),t(ut,[2,54]),{8:q,9:I,10:O,12:R,13:P,32:143,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,32:144,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{9:[1,145]},{9:[1,146]},{9:[1,147]},{9:[1,148]},{9:[1,149]},{9:[1,150]},{8:q,9:I,10:O,12:R,13:P,33:[1,151],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(ft,[2,62]),{8:q,9:I,10:O,12:R,13:P,32:153,39:102,40:Y,49:125,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,35:[1,154],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,37:[1,155],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:R,13:P,33:[1,156],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:I,10:O,12:[1,157],13:P,39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(S,[2,50]),t(gt,[2,5]),t(gt,[2,10]),t(gt,[2,11]),{17:[1,158]},{9:st,17:[2,21],18:159},t(gt,[2,6]),t(gt,[2,7]),t(gt,[2,8]),t(gt,[2,9]),t(ht,[2,65]),t(ut,[2,52]),{8:q,9:I,10:O,12:R,13:P,39:102,40:Y,48:[1,160],49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{8:q,9:[1,161],10:O,12:R,13:P,39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{9:yt,40:mt,60:162,61:vt,62:bt,64:163,66:164,67:At,68:Et,69:xt,70:wt,71:_t},{9:yt,40:mt,60:174,61:vt,62:bt,64:163,66:164,67:At,68:Et,69:xt,70:wt,71:_t},{9:yt,40:mt,60:175,61:vt,62:bt,64:163,66:164,67:At,68:Et,69:xt,70:wt,71:_t},{9:yt,40:mt,60:176,61:vt,62:bt,64:163,66:164,67:At,68:Et,69:xt,70:wt,71:_t},{30:177,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},{30:178,38:24,39:25,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(B,[2,34],{9:[1,179]}),t(ft,[2,63]),{8:q,9:I,10:O,12:R,13:P,35:[1,180],39:102,40:Y,49:152,52:105,53:J,54:Q,55:et,56:tt,57:rt,59:84,62:c,65:h,67:d,68:p,70:f,71:g,73:y,74:m,75:v},t(B,[2,38],{9:[1,181]}),t(B,[2,40],{9:[1,182]}),t(B,[2,42],{9:[1,183]}),t(Dt,dt,{6:kt,16:kt,17:kt,43:kt,44:kt,45:kt,46:kt,47:kt}),t(gt,[2,12]),{17:[2,20]},t([9,62,65,67,68,70,71,73,74,75],[2,61]),t(Dt,pt,{41:184,44:D,45:k,46:C,47:F}),t(_,[2,78],{65:Ct}),t(Ft,[2,82],{66:186,9:yt,40:mt,61:vt,62:bt,67:At,68:Et,69:xt,70:wt,71:_t}),t(Bt,[2,84]),t(Bt,[2,86]),t(Bt,[2,87]),t(Bt,[2,88]),t(Bt,[2,89]),t(Bt,[2,90]),t(Bt,[2,91]),t(Bt,[2,92]),t(Bt,[2,93]),t(Bt,[2,94]),t(_,[2,79],{65:Ct}),t(_,[2,80],{65:Ct}),t(_,[2,75],{65:Ct}),t(_,[2,76]),t(_,[2,77]),t(B,[2,35]),{35:[1,187]},t(B,[2,39]),t(B,[2,41]),t(B,[2,43]),t(ut,[2,55],{9:[1,188]}),{9:yt,40:mt,61:vt,62:bt,64:189,66:164,67:At,68:Et,69:xt,70:wt,71:_t},t(Bt,[2,85]),t(B,[2,36],{9:[1,190]}),t(ut,[2,56]),t(Ft,[2,83],{66:186,9:yt,40:mt,61:vt,62:bt,67:At,68:Et,69:xt,70:wt,71:_t}),t(B,[2,37])],defaultActions:{36:[2,1],78:[2,3],159:[2,20]},parseError:function(e,t){if(!t.recoverable)throw new Error(e); -this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},St=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,r,n){switch(r){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:return 57;case 5:return 8;case 6:return 10;case 7:return 10;case 8:return 10;case 9:return 10;case 10:return 10;case 11:return 10;case 12:return 62;case 13:return 70;case 14:return 68;case 15:return 16;case 16:return 65;case 17:return 74;case 18:return 75;case 19:return 71;case 20:return 13;case 21:return 12;case 22:return 14;case 23:return 15;case 24:return 46;case 25:return 44;case 26:return 45;case 27:return 47;case 28:return 43;case 29:return 40;case 30:return 73;case 31:return 63;case 32:return 74;case 33:return 67;case 34:return 48;case 35:return 34;case 36:return 35;case 37:return 31;case 38:return 33;case 39:return 36;case 40:return 37;case 41:return 78;case 42:return 17;case 43:return 9;case 44:return 6}},rules:[/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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:{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,43,44],inclusive:!0}}};return e}();return Tt.lexer=St,e.prototype=Tt,Tt.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],107:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[6,8,10,11,15,17,19,20,22,33],n=[2,2],i=[1,6],a=[1,8],u=[1,9],o=[1,12],s=[1,13],c=[1,14],l=[1,15],h=[1,17],d=[1,18],p=[2,7],f=[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],b={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(e,t,r,n,i,a){var u=a.length-1;switch(i){case 1:return n.apply(a[u-1]),a[u-1];case 2:this.$=[];break;case 3:a[u-1].push(a[u]),this.$=a[u-1];break;case 4:case 5:this.$=a[u];break;case 6:case 7:this.$=[];break;case 8:this.$=a[u-1];break;case 12:a[u-1].unshift({type:"loopStart",loopText:a[u-2].actor,signalType:n.LINETYPE.LOOP_START}),a[u-1].push({type:"loopEnd",loopText:a[u-2],signalType:n.LINETYPE.LOOP_END}),this.$=a[u-1];break;case 13:a[u-1].unshift({type:"optStart",optText:a[u-2].actor,signalType:n.LINETYPE.OPT_START}),a[u-1].push({type:"optEnd",optText:a[u-2].actor,signalType:n.LINETYPE.OPT_END}),this.$=a[u-1];break;case 14:a[u-4].unshift({type:"altStart",altText:a[u-5].actor,signalType:n.LINETYPE.ALT_START}),a[u-4].push({type:"else",altText:a[u-2].actor,signalType:n.LINETYPE.ALT_ELSE}),a[u-4]=a[u-4].concat(a[u-1]),a[u-4].push({type:"altEnd",signalType:n.LINETYPE.ALT_END}),this.$=a[u-4];break;case 15:this.$=[a[u-1],{type:"addNote",placement:a[u-2],actor:a[u-1].actor,text:a[u]}];break;case 19:this.$=a[u];break;case 20:this.$=[a[u-2],a[u]];break;case 21:this.$=n.PLACEMENT.LEFTOF;break;case 22:this.$=n.PLACEMENT.RIGHTOF;break;case 23:this.$=[a[u-3],a[u-1],{type:"addMessage",from:a[u-3].actor,to:a[u-1].actor,signalType:a[u-2],msg:a[u]}];break;case 26:this.$={type:"addActor",actor:a[u]};break;case 27:this.$=n.LINETYPE.SOLID_OPEN;break;case 28:this.$=n.LINETYPE.DOTTED_OPEN;break;case 29:this.$=n.LINETYPE.SOLID;break;case 30:this.$=n.LINETYPE.DOTTED;break;case 31:this.$=n.LINETYPE.SOLID_CROSS;break;case 32:this.$=n.LINETYPE.DOTTED_CROSS;break;case 33:this.$=a[u].substring(1).trim().replace(/\\n/gm,"\n")}},table:[{3:1,4:[1,2]},{1:[3]},t(r,n,{5:3}),{6:[1,4],7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,22:h,33:d},t(r,p,{1:[2,1]}),t(f,[2,3]),{9:19,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,22:h,33:d},t(f,[2,5]),t(f,[2,6]),{12:20,33:d},{10:[1,21]},{10:[1,22]},{8:[1,23]},{12:24,33:d},{12:25,33:d},{12:26,33:d},{31:27,34:[1,28],35:[1,29],36:[1,30],37:[1,31],38:[1,32],39:[1,33]},{23:34,25:[1,35],29:[1,36],30:[1,37]},t([6,8,10,11,15,17,18,19,20,21,22,28,33,34,35,36,37,38,39,40],[2,26]),t(f,[2,4]),{10:[1,38]},t(f,[2,9]),t(f,[2,10]),{16:[1,39]},t(g,n,{5:40}),t(g,n,{5:41}),t([6,8,10,11,15,17,19,20,21,22,33],n,{5:42}),{12:43,33:d},{33:[2,27]},{33:[2,28]},{33:[2,29]},{33:[2,30]},{33:[2,31]},{33:[2,32]},{12:44,33:d},{8:y,26:45},{33:[2,21]},{33:[2,22]},t(f,[2,8]),{10:[1,47]},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,48],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,50],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,21:[1,51],22:h,33:d},{24:52,40:v},{24:54,40:v},{12:56,27:55,33:d},{8:y,26:57,33:[2,18]},t(f,[2,11]),t(f,[2,12]),t(f,p),t(f,[2,13]),{12:58,33:d},{10:[2,23]},{10:[2,33]},{10:[2,15]},{12:59,33:d},{28:[1,60],33:[2,19]},{33:[2,17]},t(g,n,{5:61}),{10:[2,16]},{12:62,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,63],19:c,20:l,22:h,33:d},{33:[2,20]},t(f,[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(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},A=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(e,t,r,n){switch(r){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 e}();return b.lexer=A,e.prototype=b,b.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],108:[function(e,t,r){var n={},i=[],a=[],u=[];r.addActor=function(e,t,r){n[e]={name:t,description:r},i.push(e)},r.addMessage=function(e,t,r,n){a.push({from:e,to:t,message:r,answer:n})},r.addSignal=function(e,t,r,n){a.push({from:e,to:t,message:r,type:n})},r.getMessages=function(){return a},r.getActors=function(){return n},r.getActor=function(e){return n[e]},r.getActorKeys=function(){return Object.keys(n)},r.clear=function(){n={},a=[]},r.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},r.ARROWTYPE={FILLED:0,OPEN:1},r.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},r.addNote=function(e,t,n){var i={actor:e,placement:t,message:n};u.push(i),a.push({from:e,to:e,message:n,type:r.LINETYPE.NOTE,placement:t})},r.parseError=function(e){console.log("Syntax error:"+e)},r.apply=function(e){if(e instanceof Array)e.forEach(function(e){r.apply(e)});else switch(e.type){case"addActor":r.addActor(e.actor,e.actor,e.actor);break;case"addNote":r.addNote(e.actor,e.placement,e.text);break;case"addMessage":r.addSignal(e.from,e.to,e.msg,e.signalType);break;case"loopStart":r.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":r.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":r.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":r.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":r.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":r.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":r.addSignal(void 0,void 0,void 0,e.signalType)}}},{}],109:[function(e,t,r){var n=e("./parser/sequenceDiagram").parser;n.yy=e("./sequenceDb");var i=e("./svgDraw"),a={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35};r.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(e,t,r,n){e[t]="undefined"==typeof e[t]?r:n(r,e[t])},updateLoops:function(e,t,n,i){var u=this,o=0;this.list.forEach(function(s){o++;var c=u.list.length-o+1;u.updateVal(s,"startx",e-c*a.boxMargin,Math.min),u.updateVal(s,"starty",t-c*a.boxMargin,Math.min),u.updateVal(s,"stopx",n+c*a.boxMargin,Math.max),u.updateVal(s,"stopy",i+c*a.boxMargin,Math.max),u.updateVal(r.bounds.data,"startx",e-c*a.boxMargin,Math.min),u.updateVal(r.bounds.data,"starty",t-c*a.boxMargin,Math.min),u.updateVal(r.bounds.data,"stopx",n+c*a.boxMargin,Math.max),u.updateVal(r.bounds.data,"stopy",i+c*a.boxMargin,Math.max)})},insert:function(e,t,n,i){var a,u,o,s;a=Math.min(e,n),o=Math.max(e,n),u=Math.min(t,i),s=Math.max(t,i),this.updateVal(r.bounds.data,"startx",a,Math.min),this.updateVal(r.bounds.data,"starty",u,Math.min),this.updateVal(r.bounds.data,"stopx",o,Math.max),this.updateVal(r.bounds.data,"stopy",s,Math.max),this.updateLoops(a,u,o,s)},newLoop:function(e){this.list.push({startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:e})},endLoop:function(){var e=this.list.pop();return e},addElseToLoop:function(e){var t=this.list.pop();t.elsey=r.bounds.getVerticalPos(),t.elseText=e,this.list.push(t)},bumpVerticalPos:function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}};var u=function(e,t,n,u){var o=i.getNoteRect();o.x=t,o.y=n,o.width=a.width,o.class="note";var s=e.append("g"),c=i.drawRect(s,o),l=i.getTextObj();l.x=t,l.y=n+a.noteMargin,l.textMargin=a.noteMargin,l.dy="1em",l.text=u.message,l.class="noteText";var h=i.drawText(s,l),d=h[0][0].getBBox().height;r.bounds.insert(t,n,t+a.width,n+2*a.noteMargin+d),c.attr("height",d+2*a.noteMargin),r.bounds.bumpVerticalPos(d+2*a.noteMargin)},o=function(e,t,i,a,u){var o,s=e.append("g"),c=t+(i-t)/2,l=s.append("text").attr("x",c).attr("y",a-7).style("text-anchor","middle").attr("class","messageText").text(u.message),h=l[0][0].getBBox().width;if(t===i){o=s.append("path").attr("d","M "+t+","+a+" C "+(t+60)+","+(a-10)+" "+(t+60)+","+(a+30)+" "+t+","+(a+20)),r.bounds.bumpVerticalPos(30);var d=Math.max(h/2,100);r.bounds.insert(t-d,r.bounds.getVerticalPos()-10,i+d,r.bounds.getVerticalPos())}else o=s.append("line"),o.attr("x1",t),o.attr("y1",a),o.attr("x2",i),o.attr("y2",a),r.bounds.insert(t,r.bounds.getVerticalPos()-10,i,r.bounds.getVerticalPos());u.type===n.yy.LINETYPE.DOTTED||u.type===n.yy.LINETYPE.DOTTED_CROSS||u.type===n.yy.LINETYPE.DOTTED_OPEN?(o.style("stroke-dasharray","3, 3"),o.attr("class","messageLine1")):o.attr("class","messageLine0"),o.attr("stroke-width",2),o.attr("stroke","black"),o.style("fill","none"),(u.type===n.yy.LINETYPE.SOLID||u.type===n.yy.LINETYPE.DOTTED)&&o.attr("marker-end","url(#arrowhead)"),(u.type===n.yy.LINETYPE.SOLID_CROSS||u.type===n.yy.LINETYPE.DOTTED_CROSS)&&o.attr("marker-end","url(#crosshead)")};t.exports.drawActors=function(e,t,n){var u;for(u=0;u/gi).forEach(function(e){var n=r.append("tspan");n.attr("x",t.x+t.textMargin),n.attr("dy",t.dy),n.text(e)}),"undefined"!=typeof t.class&&r.attr("class",t.class),r},r.drawLabel=function(e,t){var n=r.getNoteRect();n.x=t.x,n.y=t.y,n.width=50,n.height=20,n.fill="#526e52",n.stroke="none",n.class="labelBox",r.drawRect(e,n),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,t.fill="white",r.drawText(e,t)},r.drawActor=function(e,t,n,i){var a=t+i.width/2,u=e.append("g");u.append("line").attr("x1",a).attr("y1",5).attr("x2",a).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999");var o=r.getNoteRect();o.x=t,o.fill="#eaeaea",o.width=i.width,o.height=i.height,o.class="actor",o.rx=3,o.ry=3,r.drawRect(u,o),u.append("text").attr("x",a).attr("y",i.height/2+5).attr("class","actor").style("text-anchor","middle").text(n)},r.drawLoop=function(e,t,n,i){var a=e.append("g"),u=function(e,t,r,n){a.append("line").attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",n).attr("stroke-width",2).attr("stroke","#526e52").attr("class","loopLine")};u(t.startx,t.starty,t.stopx,t.starty),u(t.stopx,t.starty,t.stopx,t.stopy),u(t.startx,t.stopy,t.stopx,t.stopy),u(t.startx,t.starty,t.startx,t.stopy),"undefined"!=typeof t.elsey&&u(t.startx,t.elsey,t.stopx,t.elsey);var o=r.getTextObj();o.text=n,o.x=t.startx,o.y=t.starty,o.labelMargin=1.5*i.boxMargin,o.class="labelText",o.fill="white",r.drawLabel(a,o),o=r.getTextObj(),o.text="[ "+t.title+" ]",o.x=t.startx+(t.stopx-t.startx)/2,o.y=t.starty+1.5*i.boxMargin,o.anchor="middle",o.class="loopText",r.drawText(a,o),"undefined"!=typeof t.elseText&&(o.text="[ "+t.elseText+" ]",o.y=t.elsey+1.5*i.boxMargin,r.drawText(a,o))},r.insertArrowHead=function(e){e.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")},r.insertArrowCrossHead=function(e){e.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").attr("refX",15).attr("refY",4).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 1,1 L 7,7 M 7,1 L 1,7")},r.getTextObj=function(){var e={x:0,y:0,fill:"black","text-anchor":"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0};return e},r.getNoteRect=function(){var e={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0};return e}},{}],111:[function(e,t,r){(function(t){var n=e("./diagrams/flowchart/graphDb"),i=e("./diagrams/flowchart/parser/flow"),a=e("./utils"),u=e("./diagrams/flowchart/flowRenderer"),o=e("./diagrams/sequenceDiagram/sequenceRenderer"),s=e("he"),c=function(){var e,t=document.querySelectorAll(".mermaid"),r=0;for(e=0;e/g,">"),l=l.replace(/';var h=a.detectType(l),d={};switch(h){case"graph":d=u.getClasses(l,!1),u.draw(l,c,!1),a.cloneCssStyles(i.firstChild,d),n.bindFunctions();break;case"dotGraph":d=u.getClasses(l,!0),u.draw(l,c,!0),a.cloneCssStyles(i.firstChild,d);break;case"sequenceDiagram":o.draw(l,c),a.cloneCssStyles(i.firstChild,[])}}}};r.tester=function(){},r.version=function(){return e("../package.json").version};var l=function(e,t){return"undefined"==typeof t?!1:e===t};t.mermaid={startOnLoad:!0,init:function(){c()},version:function(){return r.version()},getParser:function(){return i.parser}},r.contentLoaded=function(){t.mermaid.startOnLoad&&("undefined"!=typeof mermaid_config?l(!0,mermaid_config.startOnLoad)&&t.mermaid.init():t.mermaid.init())},"undefined"!=typeof document&&document.addEventListener("DOMContentLoaded",function(){r.contentLoaded()},!1)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../package.json":102,"./diagrams/flowchart/flowRenderer":103,"./diagrams/flowchart/graphDb":104,"./diagrams/flowchart/parser/flow":106,"./diagrams/sequenceDiagram/sequenceRenderer":109,"./utils":112,he:100}],112:[function(e,t){t.exports.detectType=function(e){return e.match(/^\s*sequenceDiagram/)?"sequenceDiagram":e.match(/^\s*sequence/)?"sequence":e.match(/^\s*digraph/)?(console.log("Detected flow syntax"),"dotGraph"):"graph"},t.exports.cloneCssStyles=function(e,t){for(var r="",n=document.styleSheets,i=0;i0&&(r+=o.selectorText+" { "+o.style.cssText+" }\n")}}}var c="",l="";for(var h in t)t.hasOwnProperty(h)&&"undefined"!=typeof h&&("default"===h?c=".node { "+t[h].styles.join("; ")+"; }\n":l+="."+h+" { "+t[h].styles.join("; ")+"; }\n");if(""!==r||""!==c||""!==l){var d=document.createElement("style");d.setAttribute("type","text/css"),d.setAttribute("title","mermaid-svg-internal-css"),d.innerHTML="/* */\n",e.insertBefore(d,e.firstChild)}}},{}]},{},[111]); \ No newline at end of file +},{}],103:[function(e,t,r){var n=e("./graphDb"),i=e("./parser/flow"),a=e("./parser/dot"),u=e("dagre-d3");r.addVertices=function(e,t){var r=Object.keys(e),n=function(e,t){var r;for(r=0;r0&&(u=a.classes.join(" "));var o="";o=n(o,a.styles),i="undefined"==typeof a.text?a.id:a.text;var s=0,c="";switch(a.type){case"round":s=5,c="rect";break;case"square":c="rect";break;case"diamond":c="question";break;case"odd":c="rect_left_inv_arrow";break;case"circle":c="circle";break;default:c="rect"}t.setNode(a.id,{labelType:"html",shape:c,label:i,rx:s,ry:s,"class":u,style:o,id:a.id})})},r.addEdges=function(e,t){var r,n=0;e.forEach(function(e){n++,r="arrow_open"===e.type?"none":"normal";var i="";"undefined"!=typeof e.style&&e.style.forEach(function(e){i=i+e+";"}),"undefined"==typeof e.text?"undefined"==typeof e.style?t.setEdge(e.start,e.end,{style:"stroke: #333; stroke-width: 1.5px;fill:none",arrowheadStyle:"fill: #333",arrowhead:r},n):t.setEdge(e.start,e.end,{style:i,arrowheadStyle:"fill: #333",arrowhead:r},n):"undefined"==typeof e.style?t.setEdge(e.start,e.end,{labelType:"html",style:"stroke: #333; stroke-width: 1.5px;fill:none",labelpos:"c",label:''+e.text+"",arrowheadStyle:"fill: #333",arrowhead:r},n):t.setEdge(e.start,e.end,{labelType:"html",style:i,arrowheadStyle:"fill: #333",label:e.text,arrowhead:r},n)})},r.getClasses=function(e,t){var r;n.clear(),r=t?a.parser:i.parser,r.yy=n,r.parse(e);var u=n.getClasses();return"undefined"==typeof u.default&&(u.default={id:"default"},u.default.styles=["fill:#eaeaea","stroke:#666","stroke-width:1.5px"]),u},r.draw=function(e,t,o){var s;n.clear(),s=o?a.parser:i.parser,s.yy=n,s.parse(e);var c;c=n.getDirection(),"undefined"==typeof c&&(c="TD");var l=new u.graphlib.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:c,marginx:20,marginy:20}).setDefaultEdgeLabel(function(){return{}}),h=n.getSubGraphs(),d=0;h.forEach(function(){d+=1;var e="subG"+d;n.addVertex(e,void 0,void 0,void 0)});var p=n.getVertices(),f=n.getEdges();d=0,h.forEach(function(e){d+=1;var t="subG"+d;e.forEach(function(e){l.setParent(e,t)})}),r.addVertices(p,l),r.addEdges(f,l);var g=new u.render;g.shapes().question=function(e,t,r){var n=t.width,i=t.height,a=.8*(n+i),o=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}],s=e.insert("polygon",":first-child").attr("points",o.map(function(e){return e.x+","+e.y}).join(" ")).attr("rx",5).attr("ry",5).attr("transform","translate("+-a/2+","+2*a/4+")");return r.intersect=function(e){return u.intersect.polygon(r,o,e)},s},g.shapes().rect_left_inv_arrow=function(e,t,r){var n=t.width,i=t.height,a=[{x:-i/2,y:0},{x:n,y:0},{x:n,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}],o=e.insert("polygon",":first-child").attr("points",a.map(function(e){return e.x+","+e.y}).join(" ")).attr("transform","translate("+-n/2+","+2*i/4+")");return r.intersect=function(e){return u.intersect.polygon(r,a,e)},o},g.arrows().none=function(e,t,r,n){var i=e.append("marker").attr("id",t).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");u.util.applyStyle(a,r[n+"Style"])};var y=d3.select("#"+t);svgGroup=d3.select("#"+t+" g"),g(d3.select("#"+t+" g"),l);var m=document.querySelector("#mermaidChart0");y.attr("height",l.graph().height),y.attr("width",l.graph().width),y.attr("viewBox",m.getBBox().x+" 0 "+l.graph().width+" "+l.graph().height)}},{"./graphDb":104,"./parser/dot":105,"./parser/flow":106,"dagre-d3":1}],104:[function(require,module,exports){var vertices={},edges=[],classes=[],subGraphs=[],direction,funs=[];exports.addVertex=function(e,t,r,n){"undefined"!=typeof e&&0!==e.trim().length&&("undefined"==typeof vertices[e]&&(vertices[e]={id:e,styles:[],classes:[]}),"undefined"!=typeof t&&(vertices[e].text=t),"undefined"!=typeof r&&(vertices[e].type=r),"undefined"!=typeof r&&(vertices[e].type=r),"undefined"!=typeof n&&null!==n&&n.forEach(function(t){vertices[e].styles.push(t)}))},exports.addLink=function(e,t,r,n){var i={start:e,end:t,type:void 0,text:""};n=r.text,"undefined"!=typeof n&&(i.text=n),"undefined"!=typeof r&&(i.type=r.type),edges.push(i)},exports.updateLink=function(e,t){e.substr(1);edges[e].style=t},exports.addClass=function(e,t){"undefined"==typeof classes[e]&&(classes[e]={id:e,styles:[]}),"undefined"!=typeof t&&null!==t&&t.forEach(function(t){classes[e].styles.push(t)})},exports.setDirection=function(e){direction=e},exports.setClass=function(e,t){e.indexOf(",")>0?e.split(",").forEach(function(e){"undefined"!=typeof vertices[e]&&vertices[e].classes.push(t)}):"undefined"!=typeof vertices[e]&&vertices[e].classes.push(t)},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(e){e()})},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=[],funs=[],subGraphs=[]},exports.defaultStyle=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},exports.addSubGraph=function(e){function t(e){var t={"boolean":{},number:{},string:{}},r=[];return e.filter(function(e){var n=typeof e;return n in t?t[n].hasOwnProperty(e)?!1:t[n][e]=!0:r.indexOf(e)>=0?!1:r.push(e)})}var r=[];r=t(r.concat.apply(r,e)),subGraphs.push(r)},exports.getSubGraphs=function(){return subGraphs}},{}],105:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[1,5],n=[1,6],i=[1,12],a=[1,13],u=[1,14],o=[1,15],s=[1,16],c=[1,17],l=[1,18],h=[1,19],d=[1,20],p=[1,21],f=[1,22],g=[8,16,17,18,19,20,21,22,23,24,25,26],y=[1,37],m=[1,33],v=[1,34],b=[1,35],A=[1,36],E=[8,10,16,17,18,19,20,21,22,23,24,25,26,28,32,37,39,40,45,57,58],x=[10,28],w=[10,28,37,57,58],_=[2,49],D=[1,45],k=[1,48],C=[1,49],F=[1,52],B=[2,65],T=[1,65],S=[1,66],L=[1,67],N=[1,68],q=[1,69],I=[1,70],O=[1,71],R=[1,72],P=[1,73],M=[8,16,17,18,19,20,21,22,23,24,25,26,47],j=[10,28,37],V={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(e,t,r,n,i,a){var u=a.length-1;switch(i){case 1:this.$=a[u-1];break;case 2:this.$=a[u-4];break;case 3:this.$=a[u-5];break;case 4:this.$=a[u-3];break;case 8:case 10:case 11:this.$=a[u];break;case 9:this.$=a[u-1]+""+a[u];break;case 12:case 13:case 14:case 15:case 16:case 18:case 19:case 20:this.$=a[u];break;case 17:this.$="
";break;case 39:this.$="oy";break;case 40:n.addLink(a[u-1],a[u].id,a[u].op),this.$="oy";break;case 42:n.addLink(a[u-1],a[u].id,a[u].op),this.$={op:a[u-2],id:a[u-1]};break;case 44:this.$={op:a[u-1],id:a[u]};break;case 48:n.addVertex(a[u-1]),this.$=a[u-1];break;case 49:n.addVertex(a[u]),this.$=a[u];break;case 66:this.$="arrow";break;case 67:this.$="arrow_open"}},table:[{3:1,4:2,6:3,11:[1,4],12:r,13:n},{1:[3]},{5:[1,7]},{7:8,8:[1,9],14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{6:23,12:r,13:n},t(g,[2,5]),t(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:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},t([8,10,28,32,37,39,40,45,57,58],[2,7],{15:38,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f}),t(E,[2,8]),t(E,[2,10]),t(E,[2,11]),t(E,[2,12]),t(E,[2,13]),t(E,[2,14]),t(E,[2,15]),t(E,[2,16]),t(E,[2,17]),t(E,[2,18]),t(E,[2,19]),t(E,[2,20]),{7:39,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{7:30,8:y,9:40,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,41]},{10:[2,21],28:[1,42]},t(x,[2,23]),t(x,[2,24]),t(x,[2,25]),t(w,_,{44:44,32:[1,43],45:D}),t(x,[2,27],{41:46,43:47,57:k,58:C}),t(x,[2,47],{43:47,34:50,41:51,37:F,57:k,58:C}),{34:53,37:F},{34:54,37:F},{34:55,37:F},{7:56,8:[1,57],14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{7:30,8:y,9:58,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},t(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:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{7:62,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},t(w,[2,48]),t(w,B,{14:10,15:11,7:63,46:64,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,48:T,49:S,50:L,51:N,52:q,53:I,54:O,55:R,56:P}),t(x,[2,41],{34:74,37:F}),{7:77,8:y,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,33:76,42:75,47:A},t(M,[2,66]),t(M,[2,67]),t(x,[2,46]),t(x,[2,40],{34:78,37:F}),{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,38:79,39:[1,80]},t(x,[2,28]),t(x,[2,29]),t(x,[2,30]),{8:[1,82]},{7:30,8:y,9:83,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,84]},{7:30,8:y,9:85,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{5:[2,2]},{10:[2,22]},t(x,[2,26]),t(w,[2,51],{45:[1,86]}),t(w,[2,52]),t(w,[2,56]),t(w,[2,57]),t(w,[2,58]),t(w,[2,59]),t(w,[2,60]),t(w,[2,61]),t(w,[2,62]),t(w,[2,63]),t(w,[2,64]),t(x,[2,38]),t(j,[2,44],{43:47,41:87,57:k,58:C}),t(j,[2,45],{43:47,41:88,57:k,58:C}),t(w,_,{44:44,45:D}),t(x,[2,39]),{39:[1,89]},t(x,[2,34],{34:90,37:F}),{32:[1,91]},{7:30,8:y,9:92,12:m,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,27:26,29:27,30:28,31:29,33:31,35:v,36:b,42:32,47:A},{10:[1,93]},t(w,[2,55]),{10:[1,94]},t(w,B,{46:95,48:T,49:S,50:L,51:N,52:q,53:I,54:O,55:R,56:P}),t(j,[2,42]),t(j,[2,43]),t(x,[2,33],{34:96,37:F}),t(x,[2,32]),{7:97,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f},{10:[1,98]},t(w,[2,54]),{5:[2,3]},t(w,[2,50]),t(x,[2,31]),{28:[1,99],39:[2,37],40:[1,100]},t(w,[2,53]),{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,38:101},{7:81,14:10,15:11,16:i,17:a,18:u,19:o,20:s,21:c,22:l,23:h,24:d,25:p,26:f,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(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},U=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,r,n){switch(r){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 e}();return V.lexer=U,e.prototype=V,V.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],106:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[1,9,10,12,19,29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],n=[2,2],i=[1,9],a=[1,10],u=[1,11],o=[1,12],s=[1,20],c=[1,23],l=[1,24],h=[1,25],d=[1,26],p=[1,27],f=[1,32],g=[1,21],y=[1,34],m=[1,31],v=[1,33],b=[1,39],A=[1,38],E=[1,35],x=[1,36],w=[1,37],_=[1,9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],D=[29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],k=[2,19],C=[1,51],F=[1,52],B=[1,50],T=[9,10,19],S=[1,63],L=[1,64],N=[1,65],q=[1,66],I=[9,10,19,47,48,49,50,51],O=[9,10,12,15,16,19,35,38,40,47,48,49,50,51],R=[9,10,12,15,16,19,35,38,40,47,48,49,50,51,66,69,71,72,74,75,77,78,79],P=[9,10,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,47,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],M=[1,81],j=[1,84],V=[1,82],U=[1,91],G=[1,90],$=[1,113],H=[1,123],Y=[1,115],z=[1,124],W=[1,98],Z=[1,97],K=[1,125],X=[1,126],J=[1,102],Q=[1,103],et=[1,100],tt=[1,101],rt=[1,104],nt=[1,105],it=[1,116],at=[1,109],ut=[1,110],ot=[1,108],st=[1,111],ct=[1,99],lt=[1,118],ht=[1,119],dt=[1,120],pt=[1,121],ft=[1,122],gt=[1,106],yt=[1,107],mt=[1,112],vt=[66,69,71,72,74,75,77,78,79],bt=[12,52,66,69,71,72,74,75,77,78,79],At=[9,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],Et=[2,104],xt=[2,106],wt=[11,12,13,15,16,29,31,37,39,41,44,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79],_t=[1,177],Dt=[1,174],kt=[1,178],Ct=[1,175],Ft=[1,172],Bt=[1,173],Tt=[1,176],St=[1,179],Lt=[1,180],Nt=[11,12,13,15,16,29,31,44,57,58,59,60,61,66,69,71,72,74,75,77,78,79],qt=[2,47],It=[1,192],Ot=[9,10,19,69],Rt=[9,10,12,19,44,65,66,69,71,72,73,74,75],Pt={trace:function(){},yy:{},symbols_:{error:2,mermaidDoc:3,graphConfig:4,document:5,line:6,spaceListNewline:7,statement:8,SEMI:9,EOF:10,GRAPH:11,SPACE:12,DIR:13,FirstStmtSeperator:14,TAGEND:15,TAGSTART:16,UP:17,DOWN:18,NEWLINE:19,spaceList:20,commentStatement:21,verticeStatement:22,separator:23,styleStatement:24,linkStyleStatement:25,classDefStatement:26,classStatement:27,clickStatement:28,subgraph:29,endStatement:30,end:31,vertex:32,link:33,alphaNum:34,SQS:35,text:36,SQE:37,PS:38,PE:39,DIAMOND_START:40,DIAMOND_STOP:41,alphaNumStatement:42,alphaNumToken:43,MINUS:44,linkStatement:45,arrowText:46,"--":47,ARROW_POINT:48,ARROW_CIRCLE:49,ARROW_CROSS:50,ARROW_OPEN:51,PIPE:52,textToken:53,commentText:54,commentToken:55,keywords:56,STYLE:57,LINKSTYLE:58,CLASSDEF:59,CLASS:60,CLICK:61,textNoTags:62,textNoTagsToken:63,stylesOpt:64,HEX:65,NUM:66,PCT:67,style:68,COMMA:69,styleComponent:70,ALPHA:71,COLON:72,UNIT:73,BRKT:74,DOT:75,graphCodeTokens:76,PLUS:77,EQUALS:78,MULT:79,TAG_START:80,TAG_END:81,QUOTE:82,$accept:0,$end:1},terminals_:{2:"error",9:"SEMI",10:"EOF",11:"GRAPH",12:"SPACE",13:"DIR",15:"TAGEND",16:"TAGSTART",17:"UP",18:"DOWN",19:"NEWLINE",29:"subgraph",31:"end",35:"SQS",37:"SQE",38:"PS",39:"PE",40:"DIAMOND_START",41:"DIAMOND_STOP",44:"MINUS",47:"--",48:"ARROW_POINT",49:"ARROW_CIRCLE",50:"ARROW_CROSS",51:"ARROW_OPEN",52:"PIPE",57:"STYLE",58:"LINKSTYLE",59:"CLASSDEF",60:"CLASS",61:"CLICK",65:"HEX",66:"NUM",67:"PCT",69:"COMMA",71:"ALPHA",72:"COLON",73:"UNIT",74:"BRKT",75:"DOT",77:"PLUS",78:"EQUALS",79:"MULT",80:"TAG_START",81:"TAG_END",82:"QUOTE"},productions_:[0,[3,2],[5,0],[5,2],[6,2],[6,1],[6,1],[6,1],[4,4],[4,4],[4,4],[4,4],[4,4],[14,1],[14,1],[14,2],[7,2],[7,2],[7,1],[7,1],[20,2],[20,1],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,4],[30,1],[30,2],[23,1],[23,1],[23,1],[22,3],[22,1],[32,4],[32,5],[32,6],[32,7],[32,4],[32,5],[32,4],[32,5],[32,4],[32,5],[32,4],[32,1],[32,2],[34,1],[34,2],[42,1],[42,3],[33,2],[33,3],[33,1],[33,2],[33,5],[33,6],[45,1],[45,1],[45,1],[45,1],[46,3],[36,1],[36,2],[54,1],[54,2],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[62,1],[62,2],[26,5],[27,5],[28,5],[24,5],[24,5],[25,5],[21,3],[64,1],[64,3],[68,1],[68,2],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[55,1],[55,1],[53,1],[53,1],[53,1],[63,1],[63,1],[63,1],[63,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1]],performAction:function(e,t,r,n,i,a){var u=a.length-1;switch(i){case 2:this.$=[];break;case 3:a[u]!==[]&&a[u-1].push(a[u]),this.$=a[u-1];break;case 4:case 5:case 50:case 52:case 65:case 67:case 78:this.$=a[u];break;case 8:n.setDirection(a[u-1]),this.$=a[u-1];break;case 9:n.setDirection("LR"),this.$=a[u-1];break;case 10:n.setDirection("RL"),this.$=a[u-1];break;case 11:n.setDirection("BT"),this.$=a[u-1];break;case 12:n.setDirection("TB"),this.$=a[u-1];break;case 22:case 24:case 25:case 26:case 27:case 28:this.$=[];break;case 23:this.$=a[u-1];break;case 29:n.addSubGraph(a[u-2]);break;case 35:n.addLink(a[u-2],a[u],a[u-1]),this.$=[a[u-2],a[u]];break;case 36:this.$="yo";break;case 37:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"square");break;case 38:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"square");break;case 39:this.$=a[u-5],n.addVertex(a[u-5],a[u-2],"circle");break;case 40:this.$=a[u-6],n.addVertex(a[u-6],a[u-3],"circle");break;case 41:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"round");break;case 42:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"round");break;case 43:case 47:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"diamond");break;case 44:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"diamond");break;case 45:this.$=a[u-3],n.addVertex(a[u-3],a[u-1],"odd");break;case 46:this.$=a[u-4],n.addVertex(a[u-4],a[u-2],"odd");break;case 48:this.$=a[u],n.addVertex(a[u]);break;case 49:this.$=a[u-1],n.addVertex(a[u-1]);break;case 51:case 66:case 68:case 79:this.$=a[u-1]+""+a[u];break;case 53:this.$=a[u-2]+"-"+a[u];break;case 54:a[u-1].text=a[u],this.$=a[u-1];break;case 55:a[u-2].text=a[u-1],this.$=a[u-2];break;case 56:this.$=a[u];break;case 57:case 64:this.$=a[u-1];break;case 58:a[u].text=a[u-2],this.$=a[u];break;case 59:a[u-1].text=a[u-3],this.$=a[u-1];break;case 60:this.$={type:"arrow"};break;case 61:this.$={type:"arrow_circle"};break;case 62:this.$={type:"arrow_cross"};break;case 63:this.$={type:"arrow_open"};break;case 80:this.$=a[u-4],n.addClass(a[u-2],a[u]);break;case 81:this.$=a[u-4],n.setClass(a[u-2],a[u]);break;case 82:this.$=a[u-4],n.setClickEvent(a[u-2],a[u]);break;case 83:this.$=a[u-4],n.addVertex(a[u-2],void 0,void 0,a[u]); +break;case 84:case 85:this.$=a[u-4],n.updateLink(a[u-2],a[u]);break;case 87:this.$=[a[u]];break;case 88:a[u-2].push(a[u]),this.$=a[u-2];break;case 90:this.$=a[u-1]+a[u]}},table:[{3:1,4:2,11:[1,3]},{1:[3]},t(r,n,{5:4}),{12:[1,5]},{1:[2,1],6:6,7:7,8:8,9:i,10:a,12:u,19:o,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:s,32:22,34:28,42:29,43:30,57:c,58:l,59:h,60:d,61:p,66:f,67:g,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{13:[1,40],15:[1,41],16:[1,42],17:[1,43],18:[1,44]},t(_,[2,3]),{8:45,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:s,32:22,34:28,42:29,43:30,57:c,58:l,59:h,60:d,61:p,66:f,67:g,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(_,[2,5]),t(_,[2,6]),t(_,[2,7]),t(D,k,{7:46,12:u,19:o}),t(D,[2,18],{7:47,12:u,19:o}),{19:[1,48]},{9:C,10:F,19:B,23:49},{9:C,10:F,19:B,23:53},{9:C,10:F,19:B,23:54},{9:C,10:F,19:B,23:55},{9:C,10:F,19:B,23:56},{9:C,10:F,19:B,23:57},t([9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],n,{5:58}),{67:[1,59]},t(T,[2,36],{33:60,45:61,47:[1,62],48:S,49:L,50:N,51:q}),{12:[1,67]},{12:[1,68]},{12:[1,69]},{12:[1,70]},{12:[1,71]},t(I,[2,48],{12:[1,77],15:[1,75],16:[1,76],35:[1,72],38:[1,73],40:[1,74]}),t(O,[2,50],{42:29,43:30,34:78,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w}),t(R,[2,52],{44:[1,79]}),t(P,[2,109]),t(P,[2,110]),t(P,[2,111]),t(P,[2,112]),t(P,[2,113]),t(P,[2,114]),t(P,[2,115]),t(P,[2,116]),t(P,[2,117]),{9:M,12:j,14:80,19:V,20:83},{9:M,12:j,14:85,19:V,20:83},{9:M,12:j,14:86,19:V,20:83},{9:M,12:j,14:87,19:V,20:83},{9:M,12:j,14:88,19:V,20:83},t(_,[2,4]),t(D,[2,16]),t(D,[2,17]),t(_,[2,22]),t(_,[2,23]),t(_,[2,32]),t(_,[2,33]),t(_,[2,34]),t(_,[2,24]),t(_,[2,25]),t(_,[2,26]),t(_,[2,27]),t(_,[2,28]),{6:6,7:7,8:8,9:i,10:a,12:U,19:o,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:s,30:89,31:G,32:22,34:28,42:29,43:30,57:c,58:l,59:h,60:d,61:p,66:f,67:g,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{9:$,11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,35:J,37:Q,38:et,39:tt,40:rt,41:nt,43:114,44:it,48:at,49:ut,50:ot,51:st,52:ct,53:94,54:92,55:93,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,76:95,77:E,78:x,79:w,80:gt,81:yt,82:mt},{32:127,34:28,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(vt,[2,56],{46:128,12:[1,129],52:[1,130]}),{12:[1,131]},t(bt,[2,60]),t(bt,[2,61]),t(bt,[2,62]),t(bt,[2,63]),{34:132,42:29,43:30,65:[1,133],66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{66:[1,134]},{34:135,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{34:136,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{34:137,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:138,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:141,38:[1,140],43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:142,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:143,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:144,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(I,[2,49]),t(O,[2,51]),{43:145,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(r,[2,8]),t(r,[2,13]),t(r,[2,14]),{19:[1,146]},{12:j,19:[2,21],20:147},t(r,[2,9]),t(r,[2,10]),t(r,[2,11]),t(r,[2,12]),{9:C,10:F,19:B,23:148},t(T,[2,30]),t(D,k,{7:46,30:149,12:U,19:o,31:G}),{9:$,11:H,12:Y,13:z,15:W,16:Z,19:[2,86],29:K,31:X,35:J,37:Q,38:et,39:tt,40:rt,41:nt,43:114,44:it,48:at,49:ut,50:ot,51:st,52:ct,53:94,55:150,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,76:95,77:E,78:x,79:w,80:gt,81:yt,82:mt},t(At,[2,67]),t(At,[2,100]),t(At,[2,101]),t(At,[2,102]),t(At,[2,103]),t(At,Et),t(At,[2,118]),t(At,[2,119]),t(At,[2,120]),t(At,[2,121]),t(At,[2,122]),t(At,[2,123]),t(At,[2,124]),t(At,[2,125]),t(At,[2,126]),t(At,[2,127]),t(At,[2,128]),t(At,[2,129]),t(At,[2,130]),t(At,[2,131]),t(At,[2,132]),t(At,[2,105]),t(At,xt),t(At,[2,107]),t(At,[2,108]),t(At,[2,69]),t(At,[2,70]),t(At,[2,71]),t(At,[2,72]),t(At,[2,73]),t(At,[2,74]),t(At,[2,75]),t(At,[2,76]),t(At,[2,77]),t(T,[2,35]),t(vt,[2,54],{12:[1,151]}),t(vt,[2,57]),{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:152,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:153,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{12:[1,154]},{12:[1,155]},{12:[1,156]},{12:[1,157]},{12:[1,158]},{12:[1,159]},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,37:[1,160],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(wt,[2,65]),{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,36:162,43:114,44:it,53:139,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,39:[1,163],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,41:[1,164],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,37:[1,165],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:Y,13:z,15:[1,166],16:Z,29:K,31:X,43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(R,[2,53]),t(r,[2,15]),{19:[2,20]},t(_,[2,29]),t(T,[2,31]),t(At,[2,68]),t(vt,[2,55]),{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,43:114,44:it,52:[1,167],53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{11:H,12:[1,168],13:z,15:W,16:Z,29:K,31:X,43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{12:_t,44:Dt,64:169,65:kt,66:Ct,68:170,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},{12:_t,44:Dt,64:181,65:kt,66:Ct,68:170,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},{12:_t,44:Dt,64:182,65:kt,66:Ct,68:170,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},{12:_t,44:Dt,64:183,65:kt,66:Ct,68:170,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},{34:184,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},{34:185,42:29,43:30,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(I,[2,37],{12:[1,186]}),t(wt,[2,66]),{11:H,12:Y,13:z,15:W,16:Z,29:K,31:X,39:[1,187],43:114,44:it,53:161,56:117,57:lt,58:ht,59:dt,60:pt,61:ft,63:96,66:f,69:y,71:m,72:v,74:b,75:A,77:E,78:x,79:w},t(I,[2,41],{12:[1,188]}),t(I,[2,43],{12:[1,189]}),t(I,[2,45],{12:[1,190]}),t(Nt,Et,{9:qt,10:qt,19:qt,47:qt,48:qt,49:qt,50:qt,51:qt}),t([12,66,69,71,72,74,75,77,78,79],[2,64]),t(Nt,xt,{45:191,48:S,49:L,50:N,51:q}),t(T,[2,83],{69:It}),t(Ot,[2,87],{70:193,12:_t,44:Dt,65:kt,66:Ct,71:Ft,72:Bt,73:Tt,74:St,75:Lt}),t(Rt,[2,89]),t(Rt,[2,91]),t(Rt,[2,92]),t(Rt,[2,93]),t(Rt,[2,94]),t(Rt,[2,95]),t(Rt,[2,96]),t(Rt,[2,97]),t(Rt,[2,98]),t(Rt,[2,99]),t(T,[2,84],{69:It}),t(T,[2,85],{69:It}),t(T,[2,80],{69:It}),t(T,[2,81]),t(T,[2,82]),t(I,[2,38]),{39:[1,194]},t(I,[2,42]),t(I,[2,44]),t(I,[2,46]),t(vt,[2,58],{12:[1,195]}),{12:_t,44:Dt,65:kt,66:Ct,68:196,70:171,71:Ft,72:Bt,73:Tt,74:St,75:Lt},t(Rt,[2,90]),t(I,[2,39],{12:[1,197]}),t(vt,[2,59]),t(Ot,[2,88],{70:193,12:_t,44:Dt,65:kt,66:Ct,71:Ft,72:Bt,73:Tt,74:St,75:Lt}),t(I,[2,40])],defaultActions:{147:[2,20]},parseError:function(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},Mt=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,r,n){switch(r){case 0:return 57;case 1:return 58;case 2:return 59;case 3:return 60;case 4:return 61;case 5:return 11;case 6:return 29;case 7:return 31;case 8:return 13;case 9:return 13;case 10:return 13;case 11:return 13;case 12:return 13;case 13:return 13;case 14:return 66;case 15:return 74;case 16:return 72;case 17:return 9;case 18:return 69;case 19:return 78;case 20:return 79;case 21:return 75;case 22:return 16;case 23:return 15;case 24:return 17;case 25:return 18;case 26:return 50;case 27:return 48;case 28:return 49;case 29:return 51;case 30:return 47;case 31:return 44;case 32:return 77;case 33:return 67;case 34:return 78;case 35:return 71;case 36:return 52;case 37:return 38;case 38:return 39;case 39:return 35;case 40:return 37;case 41:return 40;case 42:return 41;case 43:return 82;case 44:return 19;case 45:return 12;case 46:return 10}},rules:[/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:subgraph\b)/,/^(?:end\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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:{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,43,44,45,46],inclusive:!0}}};return e}();return Pt.lexer=Mt,e.prototype=Pt,Pt.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],107:[function(e,t,r){(function(n){var i=function(){function e(){this.yy={}}var t=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},r=[6,8,10,11,15,17,19,20,22,33],n=[2,2],i=[1,6],a=[1,8],u=[1,9],o=[1,12],s=[1,13],c=[1,14],l=[1,15],h=[1,17],d=[1,18],p=[2,7],f=[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],b={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(e,t,r,n,i,a){var u=a.length-1;switch(i){case 1:return n.apply(a[u-1]),a[u-1];case 2:this.$=[];break;case 3:a[u-1].push(a[u]),this.$=a[u-1];break;case 4:case 5:this.$=a[u];break;case 6:case 7:this.$=[];break;case 8:this.$=a[u-1];break;case 12:a[u-1].unshift({type:"loopStart",loopText:a[u-2].actor,signalType:n.LINETYPE.LOOP_START}),a[u-1].push({type:"loopEnd",loopText:a[u-2],signalType:n.LINETYPE.LOOP_END}),this.$=a[u-1];break;case 13:a[u-1].unshift({type:"optStart",optText:a[u-2].actor,signalType:n.LINETYPE.OPT_START}),a[u-1].push({type:"optEnd",optText:a[u-2].actor,signalType:n.LINETYPE.OPT_END}),this.$=a[u-1];break;case 14:a[u-4].unshift({type:"altStart",altText:a[u-5].actor,signalType:n.LINETYPE.ALT_START}),a[u-4].push({type:"else",altText:a[u-2].actor,signalType:n.LINETYPE.ALT_ELSE}),a[u-4]=a[u-4].concat(a[u-1]),a[u-4].push({type:"altEnd",signalType:n.LINETYPE.ALT_END}),this.$=a[u-4];break;case 15:this.$=[a[u-1],{type:"addNote",placement:a[u-2],actor:a[u-1].actor,text:a[u]}];break;case 19:this.$=a[u];break;case 20:this.$=[a[u-2],a[u]];break;case 21:this.$=n.PLACEMENT.LEFTOF;break;case 22:this.$=n.PLACEMENT.RIGHTOF;break;case 23:this.$=[a[u-3],a[u-1],{type:"addMessage",from:a[u-3].actor,to:a[u-1].actor,signalType:a[u-2],msg:a[u]}];break;case 26:this.$={type:"addActor",actor:a[u]};break;case 27:this.$=n.LINETYPE.SOLID_OPEN;break;case 28:this.$=n.LINETYPE.DOTTED_OPEN;break;case 29:this.$=n.LINETYPE.SOLID;break;case 30:this.$=n.LINETYPE.DOTTED;break;case 31:this.$=n.LINETYPE.SOLID_CROSS;break;case 32:this.$=n.LINETYPE.DOTTED_CROSS;break;case 33:this.$=a[u].substring(1).trim().replace(/\\n/gm,"\n")}},table:[{3:1,4:[1,2]},{1:[3]},t(r,n,{5:3}),{6:[1,4],7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,22:h,33:d},t(r,p,{1:[2,1]}),t(f,[2,3]),{9:19,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,22:h,33:d},t(f,[2,5]),t(f,[2,6]),{12:20,33:d},{10:[1,21]},{10:[1,22]},{8:[1,23]},{12:24,33:d},{12:25,33:d},{12:26,33:d},{31:27,34:[1,28],35:[1,29],36:[1,30],37:[1,31],38:[1,32],39:[1,33]},{23:34,25:[1,35],29:[1,36],30:[1,37]},t([6,8,10,11,15,17,18,19,20,21,22,28,33,34,35,36,37,38,39,40],[2,26]),t(f,[2,4]),{10:[1,38]},t(f,[2,9]),t(f,[2,10]),{16:[1,39]},t(g,n,{5:40}),t(g,n,{5:41}),t([6,8,10,11,15,17,19,20,21,22,33],n,{5:42}),{12:43,33:d},{33:[2,27]},{33:[2,28]},{33:[2,29]},{33:[2,30]},{33:[2,31]},{33:[2,32]},{12:44,33:d},{8:y,26:45},{33:[2,21]},{33:[2,22]},t(f,[2,8]),{10:[1,47]},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,48],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,50],19:c,20:l,22:h,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,19:c,20:l,21:[1,51],22:h,33:d},{24:52,40:v},{24:54,40:v},{12:56,27:55,33:d},{8:y,26:57,33:[2,18]},t(f,[2,11]),t(f,[2,12]),t(f,p),t(f,[2,13]),{12:58,33:d},{10:[2,23]},{10:[2,33]},{10:[2,15]},{12:59,33:d},{28:[1,60],33:[2,19]},{33:[2,17]},t(g,n,{5:61}),{10:[2,16]},{12:62,33:d},{6:m,7:5,8:i,9:7,10:a,11:u,12:16,13:10,14:11,15:o,17:s,18:[1,63],19:c,20:l,22:h,33:d},{33:[2,20]},t(f,[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(e,t){if(!t.recoverable)throw new Error(e);this.trace(e)},parse:function(e){function t(){var e;return e=f.lex()||d,"number"!=typeof e&&(e=r.symbols_[e]||e),e}var r=this,n=[0],i=[null],a=[],u=this.table,o="",s=0,c=0,l=0,h=2,d=1,p=a.slice.call(arguments,1),f=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]);f.setInput(e,g.yy),g.yy.lexer=f,g.yy.parser=this,"undefined"==typeof f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var v=f.options&&f.options.ranges;this.parseError="function"==typeof g.yy.parseError?g.yy.parseError:Object.getPrototypeOf(this).parseError;for(var b,A,E,x,w,_,D,k,C,F={};;){if(E=n[n.length-1],this.defaultActions[E]?x=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=t()),x=u[E]&&u[E][b]),"undefined"==typeof x||!x.length||!x[0]){var B="";C=[];for(_ in u[E])this.terminals_[_]&&_>h&&C.push("'"+this.terminals_[_]+"'");B=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(s+1)+": Unexpected "+(b==d?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+b);switch(x[0]){case 1:n.push(b),i.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,A?(b=A,A=null):(c=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,l>0&&l--);break;case 2:if(D=this.productions_[x[1]][1],F.$=i[i.length-D],F._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},v&&(F._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),w=this.performAction.apply(F,[o,c,s,g.yy,x[1],i,a].concat(p)),"undefined"!=typeof w)return w;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),i.push(F.$),a.push(F._$),k=u[n[n.length-2]][n[n.length-1]],n.push(k);break;case 3:return!0}}return!0}},A=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,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 e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=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),r.length-1&&(this.yylineno-=r.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:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),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(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,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))),n=e[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;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 e,t,r,n;this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(e=this.test_match(r,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[n]),e!==!1?e:!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 e=this.next();return e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){var e=this.conditionStack.length-1;return e>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(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(e,t,r,n){switch(r){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 e}();return b.lexer=A,e.prototype=b,b.Parser=e,new e}();"undefined"!=typeof e&&"undefined"!=typeof r&&(r.parser=i,r.Parser=i.Parser,r.parse=function(){return i.parse.apply(i,arguments)},r.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),n.exit(1));var i=e("fs").readFileSync(e("path").normalize(t[1]),"utf8");return r.parser.parse(i)},"undefined"!=typeof t&&e.main===t&&r.main(n.argv.slice(1)))}).call(this,e("1YiZ5S"))},{"1YiZ5S":99,fs:97,path:98}],108:[function(e,t,r){var n={},i=[],a=[],u=[];r.addActor=function(e,t,r){n[e]={name:t,description:r},i.push(e)},r.addMessage=function(e,t,r,n){a.push({from:e,to:t,message:r,answer:n})},r.addSignal=function(e,t,r,n){a.push({from:e,to:t,message:r,type:n})},r.getMessages=function(){return a},r.getActors=function(){return n},r.getActor=function(e){return n[e]},r.getActorKeys=function(){return Object.keys(n)},r.clear=function(){n={},a=[]},r.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},r.ARROWTYPE={FILLED:0,OPEN:1},r.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},r.addNote=function(e,t,n){var i={actor:e,placement:t,message:n};u.push(i),a.push({from:e,to:e,message:n,type:r.LINETYPE.NOTE,placement:t})},r.parseError=function(e){console.log("Syntax error:"+e)},r.apply=function(e){if(e instanceof Array)e.forEach(function(e){r.apply(e)});else switch(e.type){case"addActor":r.addActor(e.actor,e.actor,e.actor);break;case"addNote":r.addNote(e.actor,e.placement,e.text);break;case"addMessage":r.addSignal(e.from,e.to,e.msg,e.signalType);break;case"loopStart":r.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":r.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":r.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":r.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":r.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":r.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":r.addSignal(void 0,void 0,void 0,e.signalType)}}},{}],109:[function(e,t,r){var n=e("./parser/sequenceDiagram").parser;n.yy=e("./sequenceDb");var i=e("./svgDraw"),a={diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35};r.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(e,t,r,n){e[t]="undefined"==typeof e[t]?r:n(r,e[t])},updateLoops:function(e,t,n,i){var u=this,o=0;this.list.forEach(function(s){o++;var c=u.list.length-o+1;u.updateVal(s,"startx",e-c*a.boxMargin,Math.min),u.updateVal(s,"starty",t-c*a.boxMargin,Math.min),u.updateVal(s,"stopx",n+c*a.boxMargin,Math.max),u.updateVal(s,"stopy",i+c*a.boxMargin,Math.max),u.updateVal(r.bounds.data,"startx",e-c*a.boxMargin,Math.min),u.updateVal(r.bounds.data,"starty",t-c*a.boxMargin,Math.min),u.updateVal(r.bounds.data,"stopx",n+c*a.boxMargin,Math.max),u.updateVal(r.bounds.data,"stopy",i+c*a.boxMargin,Math.max)})},insert:function(e,t,n,i){var a,u,o,s;a=Math.min(e,n),o=Math.max(e,n),u=Math.min(t,i),s=Math.max(t,i),this.updateVal(r.bounds.data,"startx",a,Math.min),this.updateVal(r.bounds.data,"starty",u,Math.min),this.updateVal(r.bounds.data,"stopx",o,Math.max),this.updateVal(r.bounds.data,"stopy",s,Math.max),this.updateLoops(a,u,o,s)},newLoop:function(e){this.list.push({startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:e})},endLoop:function(){var e=this.list.pop();return e},addElseToLoop:function(e){var t=this.list.pop();t.elsey=r.bounds.getVerticalPos(),t.elseText=e,this.list.push(t)},bumpVerticalPos:function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}};var u=function(e,t,n,u){var o=i.getNoteRect();o.x=t,o.y=n,o.width=a.width,o.class="note";var s=e.append("g"),c=i.drawRect(s,o),l=i.getTextObj();l.x=t,l.y=n+a.noteMargin,l.textMargin=a.noteMargin,l.dy="1em",l.text=u.message,l.class="noteText";var h=i.drawText(s,l),d=h[0][0].getBBox().height;r.bounds.insert(t,n,t+a.width,n+2*a.noteMargin+d),c.attr("height",d+2*a.noteMargin),r.bounds.bumpVerticalPos(d+2*a.noteMargin)},o=function(e,t,i,a,u){var o,s=e.append("g"),c=t+(i-t)/2,l=s.append("text").attr("x",c).attr("y",a-7).style("text-anchor","middle").attr("class","messageText").text(u.message),h=l[0][0].getBBox().width;if(t===i){o=s.append("path").attr("d","M "+t+","+a+" C "+(t+60)+","+(a-10)+" "+(t+60)+","+(a+30)+" "+t+","+(a+20)),r.bounds.bumpVerticalPos(30);var d=Math.max(h/2,100);r.bounds.insert(t-d,r.bounds.getVerticalPos()-10,i+d,r.bounds.getVerticalPos())}else o=s.append("line"),o.attr("x1",t),o.attr("y1",a),o.attr("x2",i),o.attr("y2",a),r.bounds.insert(t,r.bounds.getVerticalPos()-10,i,r.bounds.getVerticalPos());u.type===n.yy.LINETYPE.DOTTED||u.type===n.yy.LINETYPE.DOTTED_CROSS||u.type===n.yy.LINETYPE.DOTTED_OPEN?(o.style("stroke-dasharray","3, 3"),o.attr("class","messageLine1")):o.attr("class","messageLine0"),o.attr("stroke-width",2),o.attr("stroke","black"),o.style("fill","none"),(u.type===n.yy.LINETYPE.SOLID||u.type===n.yy.LINETYPE.DOTTED)&&o.attr("marker-end","url(#arrowhead)"),(u.type===n.yy.LINETYPE.SOLID_CROSS||u.type===n.yy.LINETYPE.DOTTED_CROSS)&&o.attr("marker-end","url(#crosshead)")};t.exports.drawActors=function(e,t,n){var u;for(u=0;u/gi).forEach(function(e){var n=r.append("tspan");n.attr("x",t.x+t.textMargin),n.attr("dy",t.dy),n.text(e)}),"undefined"!=typeof t.class&&r.attr("class",t.class),r},r.drawLabel=function(e,t){var n=r.getNoteRect();n.x=t.x,n.y=t.y,n.width=50,n.height=20,n.fill="#526e52",n.stroke="none",n.class="labelBox",r.drawRect(e,n),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,t.fill="white",r.drawText(e,t)},r.drawActor=function(e,t,n,i){var a=t+i.width/2,u=e.append("g");u.append("line").attr("x1",a).attr("y1",5).attr("x2",a).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999");var o=r.getNoteRect();o.x=t,o.fill="#eaeaea",o.width=i.width,o.height=i.height,o.class="actor",o.rx=3,o.ry=3,r.drawRect(u,o),u.append("text").attr("x",a).attr("y",i.height/2+5).attr("class","actor").style("text-anchor","middle").text(n)},r.drawLoop=function(e,t,n,i){var a=e.append("g"),u=function(e,t,r,n){a.append("line").attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",n).attr("stroke-width",2).attr("stroke","#526e52").attr("class","loopLine")};u(t.startx,t.starty,t.stopx,t.starty),u(t.stopx,t.starty,t.stopx,t.stopy),u(t.startx,t.stopy,t.stopx,t.stopy),u(t.startx,t.starty,t.startx,t.stopy),"undefined"!=typeof t.elsey&&u(t.startx,t.elsey,t.stopx,t.elsey);var o=r.getTextObj();o.text=n,o.x=t.startx,o.y=t.starty,o.labelMargin=1.5*i.boxMargin,o.class="labelText",o.fill="white",r.drawLabel(a,o),o=r.getTextObj(),o.text="[ "+t.title+" ]",o.x=t.startx+(t.stopx-t.startx)/2,o.y=t.starty+1.5*i.boxMargin,o.anchor="middle",o.class="loopText",r.drawText(a,o),"undefined"!=typeof t.elseText&&(o.text="[ "+t.elseText+" ]",o.y=t.elsey+1.5*i.boxMargin,r.drawText(a,o))},r.insertArrowHead=function(e){e.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")},r.insertArrowCrossHead=function(e){e.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").attr("refX",15).attr("refY",4).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 1,1 L 7,7 M 7,1 L 1,7")},r.getTextObj=function(){var e={x:0,y:0,fill:"black","text-anchor":"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0};return e},r.getNoteRect=function(){var e={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0};return e}},{}],111:[function(e,t,r){(function(t){var n=e("./diagrams/flowchart/graphDb"),i=e("./diagrams/flowchart/parser/flow"),a=e("./utils"),u=e("./diagrams/flowchart/flowRenderer"),o=e("./diagrams/sequenceDiagram/sequenceRenderer"),s=e("he"),c=function(){var e,t=document.querySelectorAll(".mermaid"),r=0;for(e=0;e/g,">"),l=l.replace(/';var h=a.detectType(l),d={};switch(h){case"graph":d=u.getClasses(l,!1),u.draw(l,c,!1),a.cloneCssStyles(i.firstChild,d),n.bindFunctions();break;case"dotGraph":d=u.getClasses(l,!0),u.draw(l,c,!0),a.cloneCssStyles(i.firstChild,d);break;case"sequenceDiagram":o.draw(l,c),a.cloneCssStyles(i.firstChild,[])}}}};r.tester=function(){},r.version=function(){return e("../package.json").version};var l=function(e,t){return"undefined"==typeof t?!1:e===t};t.mermaid={startOnLoad:!0,init:function(){c()},version:function(){return r.version()},getParser:function(){return i.parser}},r.contentLoaded=function(){t.mermaid.startOnLoad&&("undefined"!=typeof mermaid_config?l(!0,mermaid_config.startOnLoad)&&t.mermaid.init():t.mermaid.init())},"undefined"!=typeof document&&document.addEventListener("DOMContentLoaded",function(){r.contentLoaded()},!1)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../package.json":102,"./diagrams/flowchart/flowRenderer":103,"./diagrams/flowchart/graphDb":104,"./diagrams/flowchart/parser/flow":106,"./diagrams/sequenceDiagram/sequenceRenderer":109,"./utils":112,he:100}],112:[function(e,t){t.exports.detectType=function(e){return e.match(/^\s*sequenceDiagram/)?"sequenceDiagram":e.match(/^\s*sequence/)?"sequence":e.match(/^\s*digraph/)?(console.log("Detected flow syntax"),"dotGraph"):"graph"},t.exports.cloneCssStyles=function(e,t){for(var r="",n=document.styleSheets,i=0;i0&&(r+=o.selectorText+" { "+o.style.cssText+" }\n")}}}var c="",l="";for(var h in t)t.hasOwnProperty(h)&&"undefined"!=typeof h&&("default"===h?c=".node { "+t[h].styles.join("; ")+"; }\n":l+="."+h+" { "+t[h].styles.join("; ")+"; }\n");if(""!==r||""!==c||""!==l){var d=document.createElement("style");d.setAttribute("type","text/css"),d.setAttribute("title","mermaid-svg-internal-css"),d.innerHTML="/* */\n",e.insertBefore(d,e.firstChild)}}},{}]},{},[111]); \ No newline at end of file diff --git a/src/diagrams/flowchart/flowRenderer.js b/src/diagrams/flowchart/flowRenderer.js index 879ae421b..835eede02 100644 --- a/src/diagrams/flowchart/flowRenderer.js +++ b/src/diagrams/flowchart/flowRenderer.js @@ -38,6 +38,8 @@ exports.addVertices = function (vert, g) { */ var classStr = ''; + //console.log(vertice.classes); + if(vertice.classes.length >0){ classStr = vertice.classes.join(" "); } @@ -195,7 +197,10 @@ exports.draw = function (text, id,isDot) { } // Create the input mermaid.graph - var g = new dagreD3.graphlib.Graph({multigraph:true}) + var g = new dagreD3.graphlib.Graph({ + multigraph:true, + compound: true + }) .setGraph({ rankdir: dir, marginx: 20, @@ -206,9 +211,33 @@ exports.draw = function (text, id,isDot) { return {}; }); + var subGraphs = graph.getSubGraphs(); + var i = 0; + subGraphs.forEach(function(subG){ + i = i + 1; + var id = 'subG'+i; + graph.addVertex(id,undefined,undefined,undefined); + }); + // Fetch the verices/nodes and edges/links from the parsed graph definition var vert = graph.getVertices(); + + //console.log(vert); var edges = graph.getEdges(); + //g.setParent("A", "p"); + //g.setParent("B", "p"); + + //console.log(subGraphs); + i = 0; + subGraphs.forEach(function(subG){ + i = i + 1; + var id = 'subG'+i; + //console.log('Setting id '+id); + subG.forEach(function(node){ + //console.log('Setting node',node,' to subgraph '+id); + g.setParent(node,id); + }); + }); exports.addVertices(vert, g); exports.addEdges(edges, g); diff --git a/src/diagrams/flowchart/graphDb.js b/src/diagrams/flowchart/graphDb.js index d22d159c6..f2f94657e 100644 --- a/src/diagrams/flowchart/graphDb.js +++ b/src/diagrams/flowchart/graphDb.js @@ -5,6 +5,7 @@ var vertices = {}; var edges = []; var classes = []; +var subGraphs = []; var direction; // Functions to be run after graph rendering var funs = []; @@ -197,6 +198,7 @@ exports.clear = function () { classes = {}; edges = []; funs = []; + subGraphs = []; }; /** * @@ -205,3 +207,29 @@ exports.clear = function () { exports.defaultStyle = function () { return "fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"; }; + +/** + * Clears the internal graph db so that a new graph can be parsed. + */ +exports.addSubGraph = function (list) { + function uniq(a) { + var prims = {"boolean":{}, "number":{}, "string":{}}, objs = []; + + return a.filter(function(item) { + var type = typeof item; + if(type in prims) + return prims[type].hasOwnProperty(item) ? false : (prims[type][item] = true); + else + return objs.indexOf(item) >= 0 ? false : objs.push(item); + }); + } + + var subG = []; + + subG = uniq(subG.concat.apply(subG,list)); + + subGraphs.push(subG); +}; +exports.getSubGraphs = function (list) { + return subGraphs; +}; diff --git a/src/diagrams/flowchart/parser/flow.jison b/src/diagrams/flowchart/parser/flow.jison index ff8615bee..07d5e3800 100644 --- a/src/diagrams/flowchart/parser/flow.jison +++ b/src/diagrams/flowchart/parser/flow.jison @@ -10,6 +10,8 @@ "class" return 'CLASS'; "click" return 'CLICK'; "graph" return 'GRAPH'; +"subgraph" return 'subgraph'; +"end" return 'end'; "LR" return 'DIR'; "RL" return 'DIR'; "TB" return 'DIR'; @@ -117,18 +119,31 @@ %left '^' -%start expressions +%start mermaidDoc %% /* language grammar */ -expressions - : graphConfig statements EOF - | graphConfig statements - | graphConfig spaceListNewline statements EOF - {$$=$1;} - | graphConfig spaceListNewline statements - {$$=$1;} - ; +mermaidDoc: graphConfig document ; + +document + : /* empty */ + { $$ = [];} + | document line + { + if($2 !== []){ + $1.push($2); + } + $$=$1;} + ; + +line + : spaceListNewline statement + {$$=$2;} + | statement + {$$=$1;} + | SEMI + | EOF + ; graphConfig : GRAPH SPACE DIR FirstStmtSeperator @@ -146,12 +161,6 @@ graphConfig FirstStmtSeperator : SEMI | NEWLINE | spaceList NEWLINE ; -statements - : statement spaceListNewline statements - | statement statements - | statement - ; - spaceListNewline : SPACE spaceListNewline @@ -168,19 +177,32 @@ spaceList statement : commentStatement NEWLINE + {$$=[];} | verticeStatement separator + {$$=$1} | styleStatement separator + {$$=[];} | linkStyleStatement separator + {$$=[];} | classDefStatement separator + {$$=[];} | classStatement separator + {$$=[];} | clickStatement separator + {$$=[];} + | subgraph document endStatement separator + {yy.addSubGraph($2);} + ; + +endStatement: end + | SPACE endStatement ; separator: NEWLINE | SEMI | EOF ; verticeStatement: vertex link vertex - { yy.addLink($1,$3,$2);$$ = 'oy'} + { yy.addLink($1,$3,$2);$$ = [$1,$3];} | vertex {$$ = 'yo';} ; @@ -273,7 +295,7 @@ commentText: commentToken keywords - : STYLE | LINKSTYLE | CLASSDEF | CLASS | CLICK | GRAPH | DIR; + : STYLE | LINKSTYLE | CLASSDEF | CLASS | CLICK | GRAPH | DIR | subgraph | end ; textNoTags: textNoTagsToken diff --git a/src/diagrams/flowchart/parser/flow.js b/src/diagrams/flowchart/parser/flow.js index aec7d5003..4a5b77b3f 100644 --- a/src/diagrams/flowchart/parser/flow.js +++ b/src/diagrams/flowchart/parser/flow.js @@ -72,147 +72,160 @@ } */ var parser = (function(){ -var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,7],$V1=[1,8],$V2=[1,18],$V3=[1,19],$V4=[1,20],$V5=[1,21],$V6=[1,22],$V7=[1,27],$V8=[1,16],$V9=[1,29],$Va=[1,26],$Vb=[1,28],$Vc=[1,34],$Vd=[1,33],$Ve=[1,30],$Vf=[1,31],$Vg=[1,32],$Vh=[1,6],$Vi=[53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$Vj=[1,46],$Vk=[1,45],$Vl=[1,44],$Vm=[6,16,17],$Vn=[1,56],$Vo=[1,57],$Vp=[1,58],$Vq=[1,59],$Vr=[6,16,17,43,44,45,46,47],$Vs=[6,9,12,13,16,17,31,34,36,43,44,45,46,47],$Vt=[6,9,12,13,16,17,31,34,36,43,44,45,46,47,62,65,67,68,70,71,73,74,75],$Vu=[6,8,9,10,12,13,16,17,31,33,34,35,36,37,40,43,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],$Vv=[1,6,9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$Vw=[1,111],$Vx=[1,103],$Vy=[1,112],$Vz=[1,86],$VA=[1,85],$VB=[1,101],$VC=[1,90],$VD=[1,91],$VE=[1,88],$VF=[1,89],$VG=[1,92],$VH=[1,93],$VI=[1,104],$VJ=[1,97],$VK=[1,98],$VL=[1,96],$VM=[1,99],$VN=[1,87],$VO=[1,106],$VP=[1,107],$VQ=[1,108],$VR=[1,109],$VS=[1,110],$VT=[1,94],$VU=[1,95],$VV=[1,100],$VW=[62,65,67,68,70,71,73,74,75],$VX=[9,48,62,65,67,68,70,71,73,74,75],$VY=[1,136],$VZ=[1,133],$V_=[1,134],$V$=[8,9,10,12,13,16,17,31,33,34,35,36,37,40,44,45,46,47,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75,76,77,78],$V01=[2,99],$V11=[2,101],$V21=[8,9,10,12,13,33,35,37,40,48,53,54,55,56,57,62,65,67,68,70,71,73,74,75],$V31=[9,17,53,54,55,56,57,62,63,65,67,68,70,71,73,74,75],$V41=[1,170],$V51=[1,167],$V61=[1,171],$V71=[1,168],$V81=[1,165],$V91=[1,166],$Va1=[1,169],$Vb1=[1,172],$Vc1=[1,173],$Vd1=[8,9,10,12,13,40,53,54,55,56,57,62,65,67,68,70,71,73,74,75],$Ve1=[2,44],$Vf1=[1,185],$Vg1=[6,16,17,65],$Vh1=[6,9,16,17,40,61,62,65,67,68,69,70,71]; +var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[1,9,10,12,19,29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$V1=[2,2],$V2=[1,9],$V3=[1,10],$V4=[1,11],$V5=[1,12],$V6=[1,20],$V7=[1,23],$V8=[1,24],$V9=[1,25],$Va=[1,26],$Vb=[1,27],$Vc=[1,32],$Vd=[1,21],$Ve=[1,34],$Vf=[1,31],$Vg=[1,33],$Vh=[1,39],$Vi=[1,38],$Vj=[1,35],$Vk=[1,36],$Vl=[1,37],$Vm=[1,9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$Vn=[29,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$Vo=[2,19],$Vp=[1,51],$Vq=[1,52],$Vr=[1,50],$Vs=[9,10,19],$Vt=[1,63],$Vu=[1,64],$Vv=[1,65],$Vw=[1,66],$Vx=[9,10,19,47,48,49,50,51],$Vy=[9,10,12,15,16,19,35,38,40,47,48,49,50,51],$Vz=[9,10,12,15,16,19,35,38,40,47,48,49,50,51,66,69,71,72,74,75,77,78,79],$VA=[9,10,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,47,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],$VB=[1,81],$VC=[1,84],$VD=[1,82],$VE=[1,91],$VF=[1,90],$VG=[1,113],$VH=[1,123],$VI=[1,115],$VJ=[1,124],$VK=[1,98],$VL=[1,97],$VM=[1,125],$VN=[1,126],$VO=[1,102],$VP=[1,103],$VQ=[1,100],$VR=[1,101],$VS=[1,104],$VT=[1,105],$VU=[1,116],$VV=[1,109],$VW=[1,110],$VX=[1,108],$VY=[1,111],$VZ=[1,99],$V_=[1,118],$V$=[1,119],$V01=[1,120],$V11=[1,121],$V21=[1,122],$V31=[1,106],$V41=[1,107],$V51=[1,112],$V61=[66,69,71,72,74,75,77,78,79],$V71=[12,52,66,69,71,72,74,75,77,78,79],$V81=[9,11,12,13,15,16,19,29,31,35,37,38,39,40,41,44,48,49,50,51,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79,80,81,82],$V91=[2,104],$Va1=[2,106],$Vb1=[11,12,13,15,16,29,31,37,39,41,44,52,57,58,59,60,61,66,69,71,72,74,75,77,78,79],$Vc1=[1,177],$Vd1=[1,174],$Ve1=[1,178],$Vf1=[1,175],$Vg1=[1,172],$Vh1=[1,173],$Vi1=[1,176],$Vj1=[1,179],$Vk1=[1,180],$Vl1=[11,12,13,15,16,29,31,44,57,58,59,60,61,66,69,71,72,74,75,77,78,79],$Vm1=[2,47],$Vn1=[1,192],$Vo1=[9,10,19,69],$Vp1=[9,10,12,19,44,65,66,69,71,72,73,74,75]; var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"expressions":3,"graphConfig":4,"statements":5,"EOF":6,"spaceListNewline":7,"GRAPH":8,"SPACE":9,"DIR":10,"FirstStmtSeperator":11,"TAGEND":12,"TAGSTART":13,"UP":14,"DOWN":15,"SEMI":16,"NEWLINE":17,"spaceList":18,"statement":19,"commentStatement":20,"verticeStatement":21,"separator":22,"styleStatement":23,"linkStyleStatement":24,"classDefStatement":25,"classStatement":26,"clickStatement":27,"vertex":28,"link":29,"alphaNum":30,"SQS":31,"text":32,"SQE":33,"PS":34,"PE":35,"DIAMOND_START":36,"DIAMOND_STOP":37,"alphaNumStatement":38,"alphaNumToken":39,"MINUS":40,"linkStatement":41,"arrowText":42,"--":43,"ARROW_POINT":44,"ARROW_CIRCLE":45,"ARROW_CROSS":46,"ARROW_OPEN":47,"PIPE":48,"textToken":49,"commentText":50,"commentToken":51,"keywords":52,"STYLE":53,"LINKSTYLE":54,"CLASSDEF":55,"CLASS":56,"CLICK":57,"textNoTags":58,"textNoTagsToken":59,"stylesOpt":60,"HEX":61,"NUM":62,"PCT":63,"style":64,"COMMA":65,"styleComponent":66,"ALPHA":67,"COLON":68,"UNIT":69,"BRKT":70,"DOT":71,"graphCodeTokens":72,"PLUS":73,"EQUALS":74,"MULT":75,"TAG_START":76,"TAG_END":77,"QUOTE":78,"$accept":0,"$end":1}, -terminals_: {2:"error",6:"EOF",8:"GRAPH",9:"SPACE",10:"DIR",12:"TAGEND",13:"TAGSTART",14:"UP",15:"DOWN",16:"SEMI",17:"NEWLINE",31:"SQS",33:"SQE",34:"PS",35:"PE",36:"DIAMOND_START",37:"DIAMOND_STOP",40:"MINUS",43:"--",44:"ARROW_POINT",45:"ARROW_CIRCLE",46:"ARROW_CROSS",47:"ARROW_OPEN",48:"PIPE",53:"STYLE",54:"LINKSTYLE",55:"CLASSDEF",56:"CLASS",57:"CLICK",61:"HEX",62:"NUM",63:"PCT",65:"COMMA",67:"ALPHA",68:"COLON",69:"UNIT",70:"BRKT",71:"DOT",73:"PLUS",74:"EQUALS",75:"MULT",76:"TAG_START",77:"TAG_END",78:"QUOTE"}, -productions_: [0,[3,3],[3,2],[3,4],[3,3],[4,4],[4,4],[4,4],[4,4],[4,4],[11,1],[11,1],[11,2],[5,3],[5,2],[5,1],[7,2],[7,2],[7,1],[7,1],[18,2],[18,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[22,1],[22,1],[22,1],[21,3],[21,1],[28,4],[28,5],[28,6],[28,7],[28,4],[28,5],[28,4],[28,5],[28,4],[28,5],[28,4],[28,1],[28,2],[30,1],[30,2],[38,1],[38,3],[29,2],[29,3],[29,1],[29,2],[29,5],[29,6],[41,1],[41,1],[41,1],[41,1],[42,3],[32,1],[32,2],[50,1],[50,2],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[58,1],[58,2],[25,5],[26,5],[27,5],[23,5],[23,5],[24,5],[20,3],[60,1],[60,3],[64,1],[64,2],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[51,1],[51,1],[49,1],[49,1],[49,1],[59,1],[59,1],[59,1],[59,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[39,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1]], +symbols_: {"error":2,"mermaidDoc":3,"graphConfig":4,"document":5,"line":6,"spaceListNewline":7,"statement":8,"SEMI":9,"EOF":10,"GRAPH":11,"SPACE":12,"DIR":13,"FirstStmtSeperator":14,"TAGEND":15,"TAGSTART":16,"UP":17,"DOWN":18,"NEWLINE":19,"spaceList":20,"commentStatement":21,"verticeStatement":22,"separator":23,"styleStatement":24,"linkStyleStatement":25,"classDefStatement":26,"classStatement":27,"clickStatement":28,"subgraph":29,"endStatement":30,"end":31,"vertex":32,"link":33,"alphaNum":34,"SQS":35,"text":36,"SQE":37,"PS":38,"PE":39,"DIAMOND_START":40,"DIAMOND_STOP":41,"alphaNumStatement":42,"alphaNumToken":43,"MINUS":44,"linkStatement":45,"arrowText":46,"--":47,"ARROW_POINT":48,"ARROW_CIRCLE":49,"ARROW_CROSS":50,"ARROW_OPEN":51,"PIPE":52,"textToken":53,"commentText":54,"commentToken":55,"keywords":56,"STYLE":57,"LINKSTYLE":58,"CLASSDEF":59,"CLASS":60,"CLICK":61,"textNoTags":62,"textNoTagsToken":63,"stylesOpt":64,"HEX":65,"NUM":66,"PCT":67,"style":68,"COMMA":69,"styleComponent":70,"ALPHA":71,"COLON":72,"UNIT":73,"BRKT":74,"DOT":75,"graphCodeTokens":76,"PLUS":77,"EQUALS":78,"MULT":79,"TAG_START":80,"TAG_END":81,"QUOTE":82,"$accept":0,"$end":1}, +terminals_: {2:"error",9:"SEMI",10:"EOF",11:"GRAPH",12:"SPACE",13:"DIR",15:"TAGEND",16:"TAGSTART",17:"UP",18:"DOWN",19:"NEWLINE",29:"subgraph",31:"end",35:"SQS",37:"SQE",38:"PS",39:"PE",40:"DIAMOND_START",41:"DIAMOND_STOP",44:"MINUS",47:"--",48:"ARROW_POINT",49:"ARROW_CIRCLE",50:"ARROW_CROSS",51:"ARROW_OPEN",52:"PIPE",57:"STYLE",58:"LINKSTYLE",59:"CLASSDEF",60:"CLASS",61:"CLICK",65:"HEX",66:"NUM",67:"PCT",69:"COMMA",71:"ALPHA",72:"COLON",73:"UNIT",74:"BRKT",75:"DOT",77:"PLUS",78:"EQUALS",79:"MULT",80:"TAG_START",81:"TAG_END",82:"QUOTE"}, +productions_: [0,[3,2],[5,0],[5,2],[6,2],[6,1],[6,1],[6,1],[4,4],[4,4],[4,4],[4,4],[4,4],[14,1],[14,1],[14,2],[7,2],[7,2],[7,1],[7,1],[20,2],[20,1],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,2],[8,4],[30,1],[30,2],[23,1],[23,1],[23,1],[22,3],[22,1],[32,4],[32,5],[32,6],[32,7],[32,4],[32,5],[32,4],[32,5],[32,4],[32,5],[32,4],[32,1],[32,2],[34,1],[34,2],[42,1],[42,3],[33,2],[33,3],[33,1],[33,2],[33,5],[33,6],[45,1],[45,1],[45,1],[45,1],[46,3],[36,1],[36,2],[54,1],[54,2],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[56,1],[62,1],[62,2],[26,5],[27,5],[28,5],[24,5],[24,5],[25,5],[21,3],[64,1],[64,3],[68,1],[68,2],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[55,1],[55,1],[53,1],[53,1],[53,1],[63,1],[63,1],[63,1],[63,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[43,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1]], performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) { /* this == yyval */ var $0 = $$.length - 1; switch (yystate) { +case 2: + this.$ = []; +break; case 3: -this.$=$$[$0-3]; + + if($$[$0] !== []){ + $$[$0-1].push($$[$0]); + } + this.$=$$[$0-1]; break; -case 4: -this.$=$$[$0-2]; -break; -case 5: - yy.setDirection($$[$0-1]);this.$ = $$[$0-1]; -break; -case 6: - yy.setDirection("LR");this.$ = $$[$0-1]; -break; -case 7: - yy.setDirection("RL");this.$ = $$[$0-1]; -break; -case 8: - yy.setDirection("BT");this.$ = $$[$0-1]; -break; -case 9: - yy.setDirection("TB");this.$ = $$[$0-1]; -break; -case 32: - yy.addLink($$[$0-2],$$[$0],$$[$0-1]);this.$ = 'oy' -break; -case 33: -this.$ = 'yo'; -break; -case 34: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'square'); -break; -case 35: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'square'); -break; -case 36: -this.$ = $$[$0-5];yy.addVertex($$[$0-5],$$[$0-2],'circle'); -break; -case 37: -this.$ = $$[$0-6];yy.addVertex($$[$0-6],$$[$0-3],'circle'); -break; -case 38: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'round'); -break; -case 39: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'round'); -break; -case 40: case 44: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'diamond'); -break; -case 41: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'diamond'); -break; -case 42: -this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'odd'); -break; -case 43: -this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'odd'); -break; -case 45: -this.$ = $$[$0];yy.addVertex($$[$0]); -break; -case 46: -this.$ = $$[$0-1];yy.addVertex($$[$0-1]); -break; -case 47: case 49: case 62: case 64: case 73: +case 4: case 5: case 50: case 52: case 65: case 67: case 78: this.$=$$[$0]; break; -case 48: case 63: case 65: case 74: +case 8: + yy.setDirection($$[$0-1]);this.$ = $$[$0-1]; +break; +case 9: + yy.setDirection("LR");this.$ = $$[$0-1]; +break; +case 10: + yy.setDirection("RL");this.$ = $$[$0-1]; +break; +case 11: + yy.setDirection("BT");this.$ = $$[$0-1]; +break; +case 12: + yy.setDirection("TB");this.$ = $$[$0-1]; +break; +case 22: case 24: case 25: case 26: case 27: case 28: +this.$=[]; +break; +case 23: +this.$=$$[$0-1] +break; +case 29: +yy.addSubGraph($$[$0-2]); +break; +case 35: + yy.addLink($$[$0-2],$$[$0],$$[$0-1]);this.$ = [$$[$0-2],$$[$0]]; +break; +case 36: +this.$ = 'yo'; +break; +case 37: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'square'); +break; +case 38: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'square'); +break; +case 39: +this.$ = $$[$0-5];yy.addVertex($$[$0-5],$$[$0-2],'circle'); +break; +case 40: +this.$ = $$[$0-6];yy.addVertex($$[$0-6],$$[$0-3],'circle'); +break; +case 41: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'round'); +break; +case 42: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'round'); +break; +case 43: case 47: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'diamond'); +break; +case 44: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'diamond'); +break; +case 45: +this.$ = $$[$0-3];yy.addVertex($$[$0-3],$$[$0-1],'odd'); +break; +case 46: +this.$ = $$[$0-4];yy.addVertex($$[$0-4],$$[$0-2],'odd'); +break; +case 48: +this.$ = $$[$0];yy.addVertex($$[$0]); +break; +case 49: +this.$ = $$[$0-1];yy.addVertex($$[$0-1]); +break; +case 51: case 66: case 68: case 79: this.$=$$[$0-1]+''+$$[$0]; break; -case 50: +case 53: this.$=$$[$0-2]+'-'+$$[$0]; break; -case 51: +case 54: $$[$0-1].text = $$[$0];this.$ = $$[$0-1]; break; -case 52: +case 55: $$[$0-2].text = $$[$0-1];this.$ = $$[$0-2]; break; -case 53: +case 56: this.$ = $$[$0]; break; -case 54: case 61: +case 57: case 64: this.$ = $$[$0-1]; break; -case 55: +case 58: $$[$0].text = $$[$0-2];this.$ = $$[$0]; break; -case 56: +case 59: $$[$0-1].text = $$[$0-3];this.$ = $$[$0-1]; break; -case 57: +case 60: this.$ = {"type":"arrow"}; break; -case 58: +case 61: this.$ = {"type":"arrow_circle"}; break; -case 59: +case 62: this.$ = {"type":"arrow_cross"}; break; -case 60: +case 63: this.$ = {"type":"arrow_open"}; break; -case 75: +case 80: this.$ = $$[$0-4];yy.addClass($$[$0-2],$$[$0]); break; -case 76: +case 81: this.$ = $$[$0-4];yy.setClass($$[$0-2], $$[$0]); break; -case 77: +case 82: this.$ = $$[$0-4];yy.setClickEvent($$[$0-2], $$[$0]); break; -case 78: +case 83: this.$ = $$[$0-4];yy.addVertex($$[$0-2],undefined,undefined,$$[$0]); break; -case 79: case 80: +case 84: case 85: this.$ = $$[$0-4];yy.updateLink($$[$0-2],$$[$0]); break; -case 82: +case 87: this.$ = [$$[$0]] break; -case 83: +case 88: $$[$0-2].push($$[$0]);this.$ = $$[$0-2]; break; -case 85: +case 90: this.$ = $$[$0-1] + $$[$0]; break; } }, -table: [{3:1,4:2,8:[1,3]},{1:[3]},{5:4,7:5,9:$V0,17:$V1,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:[1,35]},{1:[2,2],6:[1,36]},{5:37,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vh,[2,15],{19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,7:38,5:39,9:$V0,17:$V1,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg}),o($Vi,[2,19],{7:40,9:$V0,17:$V1}),o($Vi,[2,18],{7:41,9:$V0,17:$V1}),{17:[1,42]},{6:$Vj,16:$Vk,17:$Vl,22:43},{6:$Vj,16:$Vk,17:$Vl,22:47},{6:$Vj,16:$Vk,17:$Vl,22:48},{6:$Vj,16:$Vk,17:$Vl,22:49},{6:$Vj,16:$Vk,17:$Vl,22:50},{6:$Vj,16:$Vk,17:$Vl,22:51},{63:[1,52]},o($Vm,[2,33],{29:53,41:54,43:[1,55],44:$Vn,45:$Vo,46:$Vp,47:$Vq}),{9:[1,60]},{9:[1,61]},{9:[1,62]},{9:[1,63]},{9:[1,64]},o($Vr,[2,45],{9:[1,70],12:[1,68],13:[1,69],31:[1,65],34:[1,66],36:[1,67]}),o($Vs,[2,47],{38:24,39:25,30:71,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg}),o($Vt,[2,49],{40:[1,72]}),o($Vu,[2,104]),o($Vu,[2,105]),o($Vu,[2,106]),o($Vu,[2,107]),o($Vu,[2,108]),o($Vu,[2,109]),o($Vu,[2,110]),o($Vu,[2,111]),o($Vu,[2,112]),{10:[1,73],12:[1,74],13:[1,75],14:[1,76],15:[1,77]},{1:[2,1]},{1:[2,4],6:[1,78]},{5:79,19:6,20:9,21:10,23:11,24:12,25:13,26:14,27:15,28:17,30:23,38:24,39:25,53:$V2,54:$V3,55:$V4,56:$V5,57:$V6,62:$V7,63:$V8,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vh,[2,14]),o($Vi,[2,16]),o($Vi,[2,17]),o($Vv,[2,22]),o($Vv,[2,23]),o($Vv,[2,29]),o($Vv,[2,30]),o($Vv,[2,31]),o($Vv,[2,24]),o($Vv,[2,25]),o($Vv,[2,26]),o($Vv,[2,27]),o($Vv,[2,28]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,16:$VB,31:$VC,33:$VD,34:$VE,35:$VF,36:$VG,37:$VH,39:102,40:$VI,44:$VJ,45:$VK,46:$VL,47:$VM,48:$VN,49:82,50:80,51:81,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,72:83,73:$Ve,74:$Vf,75:$Vg,76:$VT,77:$VU,78:$VV},{28:113,30:23,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($VW,[2,53],{42:114,9:[1,115],48:[1,116]}),{9:[1,117]},o($VX,[2,57]),o($VX,[2,58]),o($VX,[2,59]),o($VX,[2,60]),{30:118,38:24,39:25,61:[1,119],62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{62:[1,120]},{30:121,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:122,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:123,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:124,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:127,34:[1,126],39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:128,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:129,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:130,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,46]),o($Vs,[2,48]),{39:131,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:$VY,11:132,16:$VZ,17:$V_,18:135},{9:$VY,11:137,16:$VZ,17:$V_,18:135},{9:$VY,11:138,16:$VZ,17:$V_,18:135},{9:$VY,11:139,16:$VZ,17:$V_,18:135},{9:$VY,11:140,16:$VZ,17:$V_,18:135},{1:[2,3]},o($Vh,[2,13]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,16:$VB,17:[2,81],31:$VC,33:$VD,34:$VE,35:$VF,36:$VG,37:$VH,39:102,40:$VI,44:$VJ,45:$VK,46:$VL,47:$VM,48:$VN,49:82,51:141,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,72:83,73:$Ve,74:$Vf,75:$Vg,76:$VT,77:$VU,78:$VV},o($V$,[2,64]),o($V$,[2,95]),o($V$,[2,96]),o($V$,[2,97]),o($V$,[2,98]),o($V$,$V01),o($V$,[2,113]),o($V$,[2,114]),o($V$,[2,115]),o($V$,[2,116]),o($V$,[2,117]),o($V$,[2,118]),o($V$,[2,119]),o($V$,[2,120]),o($V$,[2,121]),o($V$,[2,122]),o($V$,[2,123]),o($V$,[2,124]),o($V$,[2,125]),o($V$,[2,126]),o($V$,[2,127]),o($V$,[2,100]),o($V$,$V11),o($V$,[2,102]),o($V$,[2,103]),o($V$,[2,66]),o($V$,[2,67]),o($V$,[2,68]),o($V$,[2,69]),o($V$,[2,70]),o($V$,[2,71]),o($V$,[2,72]),o($Vm,[2,32]),o($VW,[2,51],{9:[1,142]}),o($VW,[2,54]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:143,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:144,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:[1,145]},{9:[1,146]},{9:[1,147]},{9:[1,148]},{9:[1,149]},{9:[1,150]},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,33:[1,151],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($V21,[2,62]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,32:153,39:102,40:$VI,49:125,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,35:[1,154],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,37:[1,155],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,33:[1,156],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:$Vx,10:$Vy,12:[1,157],13:$VA,39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vt,[2,50]),o($V31,[2,5]),o($V31,[2,10]),o($V31,[2,11]),{17:[1,158]},{9:$VY,17:[2,21],18:159},o($V31,[2,6]),o($V31,[2,7]),o($V31,[2,8]),o($V31,[2,9]),o($V$,[2,65]),o($VW,[2,52]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,39:102,40:$VI,48:[1,160],49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{8:$Vw,9:[1,161],10:$Vy,12:$Vz,13:$VA,39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{9:$V41,40:$V51,60:162,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:174,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:175,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{9:$V41,40:$V51,60:176,61:$V61,62:$V71,64:163,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},{30:177,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},{30:178,38:24,39:25,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,34],{9:[1,179]}),o($V21,[2,63]),{8:$Vw,9:$Vx,10:$Vy,12:$Vz,13:$VA,35:[1,180],39:102,40:$VI,49:152,52:105,53:$VO,54:$VP,55:$VQ,56:$VR,57:$VS,59:84,62:$V7,65:$V9,67:$Va,68:$Vb,70:$Vc,71:$Vd,73:$Ve,74:$Vf,75:$Vg},o($Vr,[2,38],{9:[1,181]}),o($Vr,[2,40],{9:[1,182]}),o($Vr,[2,42],{9:[1,183]}),o($Vd1,$V01,{6:$Ve1,16:$Ve1,17:$Ve1,43:$Ve1,44:$Ve1,45:$Ve1,46:$Ve1,47:$Ve1}),o($V31,[2,12]),{17:[2,20]},o([9,62,65,67,68,70,71,73,74,75],[2,61]),o($Vd1,$V11,{41:184,44:$Vn,45:$Vo,46:$Vp,47:$Vq}),o($Vm,[2,78],{65:$Vf1}),o($Vg1,[2,82],{66:186,9:$V41,40:$V51,61:$V61,62:$V71,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1}),o($Vh1,[2,84]),o($Vh1,[2,86]),o($Vh1,[2,87]),o($Vh1,[2,88]),o($Vh1,[2,89]),o($Vh1,[2,90]),o($Vh1,[2,91]),o($Vh1,[2,92]),o($Vh1,[2,93]),o($Vh1,[2,94]),o($Vm,[2,79],{65:$Vf1}),o($Vm,[2,80],{65:$Vf1}),o($Vm,[2,75],{65:$Vf1}),o($Vm,[2,76]),o($Vm,[2,77]),o($Vr,[2,35]),{35:[1,187]},o($Vr,[2,39]),o($Vr,[2,41]),o($Vr,[2,43]),o($VW,[2,55],{9:[1,188]}),{9:$V41,40:$V51,61:$V61,62:$V71,64:189,66:164,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1},o($Vh1,[2,85]),o($Vr,[2,36],{9:[1,190]}),o($VW,[2,56]),o($Vg1,[2,83],{66:186,9:$V41,40:$V51,61:$V61,62:$V71,67:$V81,68:$V91,69:$Va1,70:$Vb1,71:$Vc1}),o($Vr,[2,37])], -defaultActions: {36:[2,1],78:[2,3],159:[2,20]}, +table: [{3:1,4:2,11:[1,3]},{1:[3]},o($V0,$V1,{5:4}),{12:[1,5]},{1:[2,1],6:6,7:7,8:8,9:$V2,10:$V3,12:$V4,19:$V5,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{13:[1,40],15:[1,41],16:[1,42],17:[1,43],18:[1,44]},o($Vm,[2,3]),{8:45,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vm,[2,5]),o($Vm,[2,6]),o($Vm,[2,7]),o($Vn,$Vo,{7:46,12:$V4,19:$V5}),o($Vn,[2,18],{7:47,12:$V4,19:$V5}),{19:[1,48]},{9:$Vp,10:$Vq,19:$Vr,23:49},{9:$Vp,10:$Vq,19:$Vr,23:53},{9:$Vp,10:$Vq,19:$Vr,23:54},{9:$Vp,10:$Vq,19:$Vr,23:55},{9:$Vp,10:$Vq,19:$Vr,23:56},{9:$Vp,10:$Vq,19:$Vr,23:57},o([9,10,12,19,29,31,57,58,59,60,61,66,67,69,71,72,74,75,77,78,79],$V1,{5:58}),{67:[1,59]},o($Vs,[2,36],{33:60,45:61,47:[1,62],48:$Vt,49:$Vu,50:$Vv,51:$Vw}),{12:[1,67]},{12:[1,68]},{12:[1,69]},{12:[1,70]},{12:[1,71]},o($Vx,[2,48],{12:[1,77],15:[1,75],16:[1,76],35:[1,72],38:[1,73],40:[1,74]}),o($Vy,[2,50],{42:29,43:30,34:78,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl}),o($Vz,[2,52],{44:[1,79]}),o($VA,[2,109]),o($VA,[2,110]),o($VA,[2,111]),o($VA,[2,112]),o($VA,[2,113]),o($VA,[2,114]),o($VA,[2,115]),o($VA,[2,116]),o($VA,[2,117]),{9:$VB,12:$VC,14:80,19:$VD,20:83},{9:$VB,12:$VC,14:85,19:$VD,20:83},{9:$VB,12:$VC,14:86,19:$VD,20:83},{9:$VB,12:$VC,14:87,19:$VD,20:83},{9:$VB,12:$VC,14:88,19:$VD,20:83},o($Vm,[2,4]),o($Vn,[2,16]),o($Vn,[2,17]),o($Vm,[2,22]),o($Vm,[2,23]),o($Vm,[2,32]),o($Vm,[2,33]),o($Vm,[2,34]),o($Vm,[2,24]),o($Vm,[2,25]),o($Vm,[2,26]),o($Vm,[2,27]),o($Vm,[2,28]),{6:6,7:7,8:8,9:$V2,10:$V3,12:$VE,19:$V5,21:13,22:14,24:15,25:16,26:17,27:18,28:19,29:$V6,30:89,31:$VF,32:22,34:28,42:29,43:30,57:$V7,58:$V8,59:$V9,60:$Va,61:$Vb,66:$Vc,67:$Vd,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{9:$VG,11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,35:$VO,37:$VP,38:$VQ,39:$VR,40:$VS,41:$VT,43:114,44:$VU,48:$VV,49:$VW,50:$VX,51:$VY,52:$VZ,53:94,54:92,55:93,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,76:95,77:$Vj,78:$Vk,79:$Vl,80:$V31,81:$V41,82:$V51},{32:127,34:28,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($V61,[2,56],{46:128,12:[1,129],52:[1,130]}),{12:[1,131]},o($V71,[2,60]),o($V71,[2,61]),o($V71,[2,62]),o($V71,[2,63]),{34:132,42:29,43:30,65:[1,133],66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{66:[1,134]},{34:135,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:136,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:137,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:138,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:141,38:[1,140],43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:142,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:143,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:144,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,49]),o($Vy,[2,51]),{43:145,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($V0,[2,8]),o($V0,[2,13]),o($V0,[2,14]),{19:[1,146]},{12:$VC,19:[2,21],20:147},o($V0,[2,9]),o($V0,[2,10]),o($V0,[2,11]),o($V0,[2,12]),{9:$Vp,10:$Vq,19:$Vr,23:148},o($Vs,[2,30]),o($Vn,$Vo,{7:46,30:149,12:$VE,19:$V5,31:$VF}),{9:$VG,11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,19:[2,86],29:$VM,31:$VN,35:$VO,37:$VP,38:$VQ,39:$VR,40:$VS,41:$VT,43:114,44:$VU,48:$VV,49:$VW,50:$VX,51:$VY,52:$VZ,53:94,55:150,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,76:95,77:$Vj,78:$Vk,79:$Vl,80:$V31,81:$V41,82:$V51},o($V81,[2,67]),o($V81,[2,100]),o($V81,[2,101]),o($V81,[2,102]),o($V81,[2,103]),o($V81,$V91),o($V81,[2,118]),o($V81,[2,119]),o($V81,[2,120]),o($V81,[2,121]),o($V81,[2,122]),o($V81,[2,123]),o($V81,[2,124]),o($V81,[2,125]),o($V81,[2,126]),o($V81,[2,127]),o($V81,[2,128]),o($V81,[2,129]),o($V81,[2,130]),o($V81,[2,131]),o($V81,[2,132]),o($V81,[2,105]),o($V81,$Va1),o($V81,[2,107]),o($V81,[2,108]),o($V81,[2,69]),o($V81,[2,70]),o($V81,[2,71]),o($V81,[2,72]),o($V81,[2,73]),o($V81,[2,74]),o($V81,[2,75]),o($V81,[2,76]),o($V81,[2,77]),o($Vs,[2,35]),o($V61,[2,54],{12:[1,151]}),o($V61,[2,57]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:152,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:153,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{12:[1,154]},{12:[1,155]},{12:[1,156]},{12:[1,157]},{12:[1,158]},{12:[1,159]},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,37:[1,160],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vb1,[2,65]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,36:162,43:114,44:$VU,53:139,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,39:[1,163],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,41:[1,164],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,37:[1,165],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:$VI,13:$VJ,15:[1,166],16:$VL,29:$VM,31:$VN,43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vz,[2,53]),o($V0,[2,15]),{19:[2,20]},o($Vm,[2,29]),o($Vs,[2,31]),o($V81,[2,68]),o($V61,[2,55]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,43:114,44:$VU,52:[1,167],53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{11:$VH,12:[1,168],13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{12:$Vc1,44:$Vd1,64:169,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:181,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:182,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{12:$Vc1,44:$Vd1,64:183,65:$Ve1,66:$Vf1,68:170,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},{34:184,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},{34:185,42:29,43:30,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,37],{12:[1,186]}),o($Vb1,[2,66]),{11:$VH,12:$VI,13:$VJ,15:$VK,16:$VL,29:$VM,31:$VN,39:[1,187],43:114,44:$VU,53:161,56:117,57:$V_,58:$V$,59:$V01,60:$V11,61:$V21,63:96,66:$Vc,69:$Ve,71:$Vf,72:$Vg,74:$Vh,75:$Vi,77:$Vj,78:$Vk,79:$Vl},o($Vx,[2,41],{12:[1,188]}),o($Vx,[2,43],{12:[1,189]}),o($Vx,[2,45],{12:[1,190]}),o($Vl1,$V91,{9:$Vm1,10:$Vm1,19:$Vm1,47:$Vm1,48:$Vm1,49:$Vm1,50:$Vm1,51:$Vm1}),o([12,66,69,71,72,74,75,77,78,79],[2,64]),o($Vl1,$Va1,{45:191,48:$Vt,49:$Vu,50:$Vv,51:$Vw}),o($Vs,[2,83],{69:$Vn1}),o($Vo1,[2,87],{70:193,12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1}),o($Vp1,[2,89]),o($Vp1,[2,91]),o($Vp1,[2,92]),o($Vp1,[2,93]),o($Vp1,[2,94]),o($Vp1,[2,95]),o($Vp1,[2,96]),o($Vp1,[2,97]),o($Vp1,[2,98]),o($Vp1,[2,99]),o($Vs,[2,84],{69:$Vn1}),o($Vs,[2,85],{69:$Vn1}),o($Vs,[2,80],{69:$Vn1}),o($Vs,[2,81]),o($Vs,[2,82]),o($Vx,[2,38]),{39:[1,194]},o($Vx,[2,42]),o($Vx,[2,44]),o($Vx,[2,46]),o($V61,[2,58],{12:[1,195]}),{12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,68:196,70:171,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1},o($Vp1,[2,90]),o($Vx,[2,39],{12:[1,197]}),o($V61,[2,59]),o($Vo1,[2,88],{70:193,12:$Vc1,44:$Vd1,65:$Ve1,66:$Vf1,71:$Vg1,72:$Vh1,73:$Vi1,74:$Vj1,75:$Vk1}),o($Vx,[2,40])], +defaultActions: {147:[2,20]}, parseError: function parseError(str, hash) { if (hash.recoverable) { this.trace(str); @@ -686,100 +699,104 @@ options: {}, performAction: function anonymous(yy,yy_,$avoiding_name_collisions,YY_START) { var YYSTATE=YY_START; switch($avoiding_name_collisions) { -case 0:return 53; +case 0:return 57; break; -case 1:return 54; +case 1:return 58; break; -case 2:return 55; +case 2:return 59; break; -case 3:return 56; +case 3:return 60; break; -case 4:return 57; +case 4:return 61; break; -case 5:return 8; +case 5:return 11; break; -case 6:return 10; +case 6:return 29; break; -case 7:return 10; +case 7:return 31; break; -case 8:return 10; +case 8:return 13; break; -case 9:return 10; +case 9:return 13; break; -case 10:return 10; +case 10:return 13; break; -case 11:return 10; +case 11:return 13; break; -case 12:return 62; +case 12:return 13; break; -case 13:return 70; +case 13:return 13; break; -case 14:return 68; +case 14:return 66; break; -case 15:return 16; +case 15:return 74; break; -case 16:return 65; +case 16:return 72; break; -case 17:return 74; +case 17:return 9; break; -case 18:return 75; +case 18:return 69; break; -case 19:return 71; +case 19:return 78; break; -case 20:return 13; +case 20:return 79; break; -case 21:return 12; +case 21:return 75; break; -case 22:return 14; +case 22:return 16; break; case 23:return 15; break; -case 24:return 46; +case 24:return 17; break; -case 25:return 44; +case 25:return 18; break; -case 26:return 45; +case 26:return 50; break; -case 27:return 47; +case 27:return 48; break; -case 28:return 43; +case 28:return 49; break; -case 29:return 40; +case 29:return 51; break; -case 30:return 73; +case 30:return 47; break; -case 31:return 63; +case 31:return 44; break; -case 32:return 74; +case 32:return 77; break; case 33:return 67; break; -case 34:return 48; +case 34:return 78; break; -case 35:return 34; +case 35:return 71; break; -case 36:return 35; +case 36:return 52; break; -case 37:return 31; +case 37:return 38; break; -case 38:return 33; +case 38:return 39; break; -case 39:return 36 +case 39:return 35; break; -case 40:return 37 +case 40:return 37; break; -case 41:return 78; +case 41:return 40 break; -case 42:return 17; +case 42:return 41 break; -case 43:return 9; +case 43:return 82; break; -case 44:return 6; +case 44:return 19; +break; +case 45:return 12; +break; +case 46:return 10; break; } }, -rules: [/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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: {"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,43,44],"inclusive":true}} +rules: [/^(?:style\b)/,/^(?:linkStyle\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:click\b)/,/^(?:graph\b)/,/^(?:subgraph\b)/,/^(?:end\b)/,/^(?:LR\b)/,/^(?:RL\b)/,/^(?:TB\b)/,/^(?:BT\b)/,/^(?:TD\b)/,/^(?:BR\b)/,/^(?:[0-9])/,/^(?:#)/,/^(?::)/,/^(?:;)/,/^(?:,)/,/^(?:=)/,/^(?:\*)/,/^(?:\.)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:v\b)/,/^(?:--[x])/,/^(?:-->)/,/^(?:--[o])/,/^(?:---)/,/^(?:--)/,/^(?:-)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:[\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: {"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,43,44,45,46],"inclusive":true}} }); return lexer; })(); diff --git a/src/diagrams/flowchart/parser/flow.spec.js b/src/diagrams/flowchart/parser/flow.spec.js index e6882af94..53199686b 100644 --- a/src/diagrams/flowchart/parser/flow.spec.js +++ b/src/diagrams/flowchart/parser/flow.spec.js @@ -15,7 +15,7 @@ describe('when parsing ',function(){ }); it('should handle a nodes and edges',function(){ - var res = flow.parser.parse('graph TD;A-->B;'); + var res = flow.parser.parse('graph TD;\nA-->B;'); var vert = flow.parser.yy.getVertices(); @@ -204,7 +204,7 @@ describe('when parsing ',function(){ }); it('it should handle a trailing whitespaces after statememnts',function(){ - var res = flow.parser.parse('graph TD;\n\n\n %% CComment\n A-->B; \nB-->C;'); + var res = flow.parser.parse('graph TD;\n\n\n %% CComment\n A-->B; \n B-->C;'); var vert = flow.parser.yy.getVertices(); @@ -248,6 +248,45 @@ describe('when parsing ',function(){ expect(edges[0].type).toBe('arrow_circle'); }); + it('should handle subgraphs',function(){ + var res = flow.parser.parse('graph TD;A-->B;subgraph;c-->d;end;'); + + var vert = flow.parser.yy.getVertices(); + var edges = flow.parser.yy.getEdges(); + + + expect(edges[0].type).toBe('arrow'); + }); + + it('should handle subgraphs',function(){ + var res = flow.parser.parse('graph TD\nA-->B\nsubgraph\nc-->d\nend\n'); + + var vert = flow.parser.yy.getVertices(); + var edges = flow.parser.yy.getEdges(); + + + expect(edges[0].type).toBe('arrow'); + }); + + it('should handle subgraphs',function(){ + var res = flow.parser.parse('graph TD\nA-->B\nsubgraph\nc-->d\nend;'); + + var vert = flow.parser.yy.getVertices(); + var edges = flow.parser.yy.getEdges(); + + + expect(edges[0].type).toBe('arrow'); + }); + + it('should handle subgraphs',function(){ + var res = flow.parser.parse('graph TD\nA-->B\nsubgraph\nc-- text -->d\nd-->e\n end;'); + + var vert = flow.parser.yy.getVertices(); + var edges = flow.parser.yy.getEdges(); + + + expect(edges[0].type).toBe('arrow'); + }); describe("it should handle text on edges",function(){ it('it should handle text without space',function(){ diff --git a/src/utils.js b/src/utils.js index e888a6c0b..611b7c95b 100644 --- a/src/utils.js +++ b/src/utils.js @@ -60,7 +60,8 @@ module.exports.cloneCssStyles = function(svg, classes){ if (className === 'default') { defaultStyles = '.node' + ' { ' + classes[className].styles.join("; ") + '; }\n'; } else { - embeddedStyles += '.' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; + embeddedStyles += '.' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; + //embeddedStyles += svg.id.trim() + ' .' + className + ' { ' + classes[className].styles.join("; ") + '; }\n'; } } } diff --git a/src/utils.spec.js b/src/utils.spec.js index ddd0d7f87..10c0162a1 100644 --- a/src/utils.spec.js +++ b/src/utils.spec.js @@ -194,7 +194,7 @@ describe('when cloning CSS ',function() { expect(stylesToArray(svg)).toEqual([ '.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 () { + xit('should handle a default class together with stylesheet in document and classDefs', function () { var svg = generateSVG(); addStyleToDocument(); utils.cloneCssStyles(svg, { "default": { "styles": ["stroke:#fff","stroke-width:1.5px"] }, diff --git a/test/web.html b/test/web.html index 9736f5ac7..726c99bdc 100644 --- a/test/web.html +++ b/test/web.html @@ -16,23 +16,17 @@ console.log('CLICKED'); } + +

Shapes

- Shape examples: -
-        graph TD;
-            sq[Square shape]-->ci((Circle shape));
-            od>Odd shape]---|Two line <br>edge comment|ro;
-            od2>Really long text in an Odd shape]-->od3>Really long text with linebreak <br>in an Odd shape];
-            di{Diamond is  <br> broken}-->ro(Rounded <br>square <br>shape);
-
-            %% Comments after double percent signs
-            di-->ro2(Rounded square shape);
-            e((Inner circle))-->f(,.?!+-*ز);
-            A[Object]-->B(Thing);
-            style e red;
-    
graph TD; A-->B; @@ -40,19 +34,52 @@ A-->D; B-->D; A-->|Link text|B + classDef default fill:#9f6,stroke:#333,stroke-width:2px; + classDef green fill:#9f6,stroke:#333,stroke-width:2px; + class green B;
-
- graph TD; - sq[Square shape]-->ci((Circle shape)); - od>Odd shape]---|Two line
edge comment|ro; - od2>Really long text in an Odd shape]-->od3>Really long text with linebreak
in an Odd shape]; - di{Diamond is
broken}-->ro(Rounded
square
shape); - di-->ro2(Rounded square shape); +

Sub graphs

+
graph TB + subgraph + sq[Square shape] --> ci((Circle shape)) + od>Odd shape]-- Two line
edge comment --> ro + di{Diamond with
line break} --> ro(Rounded
square
shape) + di-->ro2(Rounded square shape) + end + + %% Notice that no text in shape are added here instead that is appended further down + subgraph + e --> od3>Really long text with linebreak
in an Odd shape] + + e((Inner / circle
and some odd
special characters)) --> f(,.?!+-*ز) + + cyr[Cyrillic]-->cyr2((Circle shape Начало)) + end + classDef green fill:#9f6,stroke:#333,stroke-width:2px; + classDef orange fill:#f96,stroke:#333,stroke-width:4px; + class sq,e green + class di orange +
+
+ graph TB + subgraph + sq[Square shape]-->ci((Circle shape)) + od>Odd shape]---|Two line
edge comment|ro + end + subgraph + od2>Really long text in an Odd shape]-->od3>Really long text with linebreak
in an Odd shape]; + di{Diamond is
broken}-->ro(Rounded
square
shape); + di-->ro2(Rounded square shape) + end %% Comments after double percent signs - e((Inner / circle))-->f(,.?!+-*ز); - cyr[Cyrillic]-->cyr2((Circle shape Начало)); - A[Object foo,bar]-->B(Thing); + subgraph + e((Inner / circle))-->f(,.?!+-*ز); + cyr[Cyrillic]-->cyr2((Circle shape Начало)); + A[Object foo,bar]-->B(Thing) + end style e red; + classDef green fill:#9f6,stroke:#333,stroke-width:2px; + class green sq
graph LR; @@ -88,7 +115,7 @@ participant Alice Note left of Alice: Bob thinks about
things
to think about
-
+
sequenceDiagram participant Alice participant Bob @@ -107,7 +134,7 @@
-
+
graph LR; A[Start]-->B{a = '1,2'} B-->|True|C[test = 1]