@gk8/mermaid
Version:
Markdown-ish syntax for generating flowcharts, sequence diagrams, class diagrams, gantt charts and git graphs.
808 lines • 80.8 kB
JavaScript
import { m as _1, c as B1, a as Me, d as ls, l as W, b as hs, e as fs, f as ds, g as kt, h as u1, i as F1, p as ps, j as Dt, s as As, k as Ft, u as gs, n as bt, o as St, q as bs, t as k1, v as Es, w as ms } from "./mermaid-e6b51d44.js";
const ys = {
trace: (...e) => {
},
debug: (...e) => {
},
info: (...e) => {
},
warn: (...e) => {
},
error: (...e) => {
},
fatal: (...e) => {
}
};
var S1 = function() {
var e = function(Ae, l, f, p) {
for (f = f || {}, p = Ae.length; p--; f[Ae[p]] = l)
;
return f;
}, s = [1, 9], r = [1, 7], i = [1, 6], u = [1, 8], a = [1, 20, 21, 22, 23, 38, 45, 47, 49, 53, 69, 92, 93, 94, 95, 96, 97, 110, 113, 114, 117, 119, 122, 123, 124, 129, 130, 131, 132], o = [2, 10], d = [1, 20], h = [1, 21], A = [1, 22], g = [1, 23], D = [1, 30], F = [1, 32], C = [1, 33], X = [1, 34], k = [1, 56], T = [1, 55], ge = [1, 36], se = [1, 37], Ue = [1, 38], Ge = [1, 39], je = [1, 40], L = [1, 51], R = [1, 53], I = [1, 49], N = [1, 54], w = [1, 50], O = [1, 57], P = [1, 52], M = [1, 58], z = [1, 59], We = [1, 41], Ke = [1, 42], He = [1, 43], Ye = [1, 44], M1 = [1, 62], Ne = [1, 67], B = [1, 20, 21, 22, 23, 38, 43, 45, 47, 49, 53, 69, 92, 93, 94, 95, 96, 97, 110, 113, 114, 117, 119, 122, 123, 124, 129, 130, 131, 132], Z = [1, 71], $ = [1, 70], ee = [1, 72], Xe = [20, 21, 23, 84, 86], ye = [1, 98], ke = [1, 103], De = [1, 102], Fe = [1, 99], Se = [1, 95], xe = [1, 101], Ce = [1, 97], Te = [1, 104], _e = [1, 100], Be = [1, 105], ve = [1, 96], qe = [20, 21, 22, 23, 84, 86], U = [20, 21, 22, 23, 55, 84, 86], H = [20, 21, 22, 23, 40, 53, 55, 57, 59, 61, 63, 65, 67, 69, 72, 74, 76, 77, 79, 84, 86, 97, 110, 113, 114, 117, 119, 122, 123, 124], _ = [20, 21, 23], z1 = [20, 21, 23, 53, 69, 84, 86, 97, 110, 113, 114, 117, 119, 122, 123, 124], d1 = [1, 12, 20, 21, 22, 23, 24, 38, 43, 45, 47, 49, 53, 69, 92, 93, 94, 95, 96, 97, 110, 113, 114, 117, 119, 122, 123, 124, 129, 130, 131, 132], we = [53, 69, 97, 110, 113, 114, 117, 119, 122, 123, 124], U1 = [1, 134], G1 = [1, 133], j1 = [1, 141], W1 = [1, 155], K1 = [1, 156], H1 = [1, 157], Y1 = [1, 158], X1 = [1, 143], q1 = [1, 145], Q1 = [1, 149], J1 = [1, 150], Z1 = [1, 151], $1 = [1, 152], et = [1, 153], tt = [1, 154], st = [1, 159], nt = [1, 160], it = [1, 139], rt = [1, 140], ut = [1, 147], at = [1, 142], ct = [1, 146], ot = [1, 144], p1 = [20, 21, 22, 23, 38, 43, 45, 47, 49, 53, 69, 92, 93, 94, 95, 96, 97, 110, 113, 114, 117, 119, 122, 123, 124, 129, 130, 131, 132], lt = [1, 162], Y = [20, 21, 22, 23, 26, 53, 69, 97, 113, 114, 117, 119, 122, 123, 124], b = [1, 182], G = [1, 178], j = [1, 179], E = [1, 183], m = [1, 180], y = [1, 181], ht = [12, 21, 22, 24], Ve = [86, 124, 127], S = [20, 21, 22, 23, 24, 26, 38, 40, 43, 53, 69, 84, 92, 93, 94, 95, 96, 97, 98, 113, 117, 119, 122, 123, 124], ft = [22, 114], pe = [42, 58, 60, 62, 64, 66, 71, 73, 75, 76, 78, 80, 124, 125, 126], ne = [1, 250], ie = [1, 248], re = [1, 252], ue = [1, 246], ae = [1, 247], ce = [1, 249], oe = [1, 251], le = [1, 253], Le = [1, 270], dt = [20, 21, 23, 114], te = [20, 21, 22, 23, 69, 92, 113, 114, 117, 118, 119, 120], A1 = {
trace: function() {
},
yy: {},
symbols_: { error: 2, start: 3, mermaidDoc: 4, directive: 5, openDirective: 6, typeDirective: 7, closeDirective: 8, separator: 9, ":": 10, argDirective: 11, open_directive: 12, type_directive: 13, arg_directive: 14, close_directive: 15, graphConfig: 16, document: 17, line: 18, statement: 19, SEMI: 20, NEWLINE: 21, SPACE: 22, EOF: 23, GRAPH: 24, NODIR: 25, DIR: 26, FirstStmtSeperator: 27, ending: 28, endToken: 29, spaceList: 30, spaceListNewline: 31, verticeStatement: 32, styleStatement: 33, linkStyleStatement: 34, classDefStatement: 35, classStatement: 36, clickStatement: 37, subgraph: 38, textNoTags: 39, SQS: 40, text: 41, SQE: 42, end: 43, direction: 44, acc_title: 45, acc_title_value: 46, acc_descr: 47, acc_descr_value: 48, acc_descr_multiline_value: 49, link: 50, node: 51, styledVertex: 52, AMP: 53, vertex: 54, STYLE_SEPARATOR: 55, idString: 56, DOUBLECIRCLESTART: 57, DOUBLECIRCLEEND: 58, PS: 59, PE: 60, "(-": 61, "-)": 62, STADIUMSTART: 63, STADIUMEND: 64, SUBROUTINESTART: 65, SUBROUTINEEND: 66, VERTEX_WITH_PROPS_START: 67, "NODE_STRING[field]": 68, COLON: 69, "NODE_STRING[value]": 70, PIPE: 71, CYLINDERSTART: 72, CYLINDEREND: 73, DIAMOND_START: 74, DIAMOND_STOP: 75, TAGEND: 76, TRAPSTART: 77, TRAPEND: 78, INVTRAPSTART: 79, INVTRAPEND: 80, linkStatement: 81, arrowText: 82, TESTSTR: 83, START_LINK: 84, edgeText: 85, LINK: 86, edgeTextToken: 87, STR: 88, MD_STR: 89, textToken: 90, keywords: 91, STYLE: 92, LINKSTYLE: 93, CLASSDEF: 94, CLASS: 95, CLICK: 96, DOWN: 97, UP: 98, textNoTagsToken: 99, stylesOpt: 100, "idString[vertex]": 101, "idString[class]": 102, CALLBACKNAME: 103, CALLBACKARGS: 104, HREF: 105, LINK_TARGET: 106, "STR[link]": 107, "STR[tooltip]": 108, alphaNum: 109, DEFAULT: 110, numList: 111, INTERPOLATE: 112, NUM: 113, COMMA: 114, style: 115, styleComponent: 116, NODE_STRING: 117, UNIT: 118, BRKT: 119, PCT: 120, idStringToken: 121, MINUS: 122, MULT: 123, UNICODE_TEXT: 124, TEXT: 125, TAGSTART: 126, EDGE_TEXT: 127, alphaNumToken: 128, direction_tb: 129, direction_bt: 130, direction_rl: 131, direction_lr: 132, $accept: 0, $end: 1 },
terminals_: { 2: "error", 10: ":", 12: "open_directive", 13: "type_directive", 14: "arg_directive", 15: "close_directive", 20: "SEMI", 21: "NEWLINE", 22: "SPACE", 23: "EOF", 24: "GRAPH", 25: "NODIR", 26: "DIR", 38: "subgraph", 40: "SQS", 42: "SQE", 43: "end", 45: "acc_title", 46: "acc_title_value", 47: "acc_descr", 48: "acc_descr_value", 49: "acc_descr_multiline_value", 53: "AMP", 55: "STYLE_SEPARATOR", 57: "DOUBLECIRCLESTART", 58: "DOUBLECIRCLEEND", 59: "PS", 60: "PE", 61: "(-", 62: "-)", 63: "STADIUMSTART", 64: "STADIUMEND", 65: "SUBROUTINESTART", 66: "SUBROUTINEEND", 67: "VERTEX_WITH_PROPS_START", 68: "NODE_STRING[field]", 69: "COLON", 70: "NODE_STRING[value]", 71: "PIPE", 72: "CYLINDERSTART", 73: "CYLINDEREND", 74: "DIAMOND_START", 75: "DIAMOND_STOP", 76: "TAGEND", 77: "TRAPSTART", 78: "TRAPEND", 79: "INVTRAPSTART", 80: "INVTRAPEND", 83: "TESTSTR", 84: "START_LINK", 86: "LINK", 88: "STR", 89: "MD_STR", 92: "STYLE", 93: "LINKSTYLE", 94: "CLASSDEF", 95: "CLASS", 96: "CLICK", 97: "DOWN", 98: "UP", 101: "idString[vertex]", 102: "idString[class]", 103: "CALLBACKNAME", 104: "CALLBACKARGS", 105: "HREF", 106: "LINK_TARGET", 107: "STR[link]", 108: "STR[tooltip]", 110: "DEFAULT", 112: "INTERPOLATE", 113: "NUM", 114: "COMMA", 117: "NODE_STRING", 118: "UNIT", 119: "BRKT", 120: "PCT", 122: "MINUS", 123: "MULT", 124: "UNICODE_TEXT", 125: "TEXT", 126: "TAGSTART", 127: "EDGE_TEXT", 129: "direction_tb", 130: "direction_bt", 131: "direction_rl", 132: "direction_lr" },
productions_: [0, [3, 1], [3, 2], [5, 4], [5, 6], [6, 1], [7, 1], [11, 1], [8, 1], [4, 2], [17, 0], [17, 2], [18, 1], [18, 1], [18, 1], [18, 1], [18, 1], [16, 2], [16, 2], [16, 2], [16, 3], [28, 2], [28, 1], [29, 1], [29, 1], [29, 1], [27, 1], [27, 1], [27, 2], [31, 2], [31, 2], [31, 1], [31, 1], [30, 2], [30, 1], [19, 2], [19, 2], [19, 2], [19, 2], [19, 2], [19, 2], [19, 9], [19, 6], [19, 4], [19, 1], [19, 2], [19, 2], [19, 1], [9, 1], [9, 1], [9, 1], [32, 3], [32, 4], [32, 2], [32, 1], [51, 1], [51, 5], [52, 1], [52, 3], [54, 4], [54, 4], [54, 6], [54, 4], [54, 4], [54, 4], [54, 8], [54, 4], [54, 4], [54, 4], [54, 6], [54, 4], [54, 4], [54, 4], [54, 4], [54, 4], [54, 1], [50, 2], [50, 3], [50, 3], [50, 1], [50, 3], [85, 1], [85, 2], [85, 1], [85, 1], [81, 1], [82, 3], [41, 1], [41, 2], [41, 1], [41, 1], [91, 1], [91, 1], [91, 1], [91, 1], [91, 1], [91, 1], [91, 1], [91, 1], [91, 1], [91, 1], [91, 1], [39, 1], [39, 2], [39, 1], [39, 1], [35, 5], [36, 5], [37, 2], [37, 4], [37, 3], [37, 5], [37, 3], [37, 5], [37, 5], [37, 7], [37, 2], [37, 4], [37, 2], [37, 4], [37, 4], [37, 6], [33, 5], [34, 5], [34, 5], [34, 9], [34, 9], [34, 7], [34, 7], [111, 1], [111, 3], [100, 1], [100, 3], [115, 1], [115, 2], [116, 1], [116, 1], [116, 1], [116, 1], [116, 1], [116, 1], [116, 1], [116, 1], [121, 1], [121, 1], [121, 1], [121, 1], [121, 1], [121, 1], [121, 1], [121, 1], [121, 1], [121, 1], [121, 1], [90, 1], [90, 1], [90, 1], [90, 1], [99, 1], [99, 1], [99, 1], [99, 1], [99, 1], [99, 1], [99, 1], [99, 1], [99, 1], [99, 1], [99, 1], [87, 1], [87, 1], [128, 1], [128, 1], [128, 1], [128, 1], [128, 1], [128, 1], [128, 1], [128, 1], [128, 1], [128, 1], [128, 1], [56, 1], [56, 2], [109, 1], [109, 2], [44, 1], [44, 1], [44, 1], [44, 1]],
performAction: function(l, f, p, c, v, t, Oe) {
var n = t.length - 1;
switch (v) {
case 5:
c.parseDirective("%%{", "open_directive");
break;
case 6:
c.parseDirective(t[n], "type_directive");
break;
case 7:
t[n] = t[n].trim().replace(/'/g, '"'), c.parseDirective(t[n], "arg_directive");
break;
case 8:
c.parseDirective("}%%", "close_directive", "flowchart");
break;
case 10:
this.$ = [];
break;
case 11:
(!Array.isArray(t[n]) || t[n].length > 0) && t[n - 1].push(t[n]), this.$ = t[n - 1];
break;
case 12:
case 184:
this.$ = t[n];
break;
case 19:
c.setDirection("TB"), this.$ = "TB";
break;
case 20:
c.setDirection(t[n - 1]), this.$ = t[n - 1];
break;
case 35:
this.$ = t[n - 1].nodes;
break;
case 36:
case 37:
case 38:
case 39:
case 40:
this.$ = [];
break;
case 41:
this.$ = c.addSubGraph(t[n - 6], t[n - 1], t[n - 4]);
break;
case 42:
this.$ = c.addSubGraph(t[n - 3], t[n - 1], t[n - 3]);
break;
case 43:
this.$ = c.addSubGraph(void 0, t[n - 1], void 0);
break;
case 45:
this.$ = t[n].trim(), c.setAccTitle(this.$);
break;
case 46:
case 47:
this.$ = t[n].trim(), c.setAccDescription(this.$);
break;
case 51:
c.addLink(t[n - 2].stmt, t[n], t[n - 1]), this.$ = { stmt: t[n], nodes: t[n].concat(t[n - 2].nodes) };
break;
case 52:
c.addLink(t[n - 3].stmt, t[n - 1], t[n - 2]), this.$ = { stmt: t[n - 1], nodes: t[n - 1].concat(t[n - 3].nodes) };
break;
case 53:
this.$ = { stmt: t[n - 1], nodes: t[n - 1] };
break;
case 54:
this.$ = { stmt: t[n], nodes: t[n] };
break;
case 55:
this.$ = [t[n]];
break;
case 56:
this.$ = t[n - 4].concat(t[n]);
break;
case 57:
this.$ = t[n];
break;
case 58:
this.$ = t[n - 2], c.setClass(t[n - 2], t[n]);
break;
case 59:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "square");
break;
case 60:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "doublecircle");
break;
case 61:
this.$ = t[n - 5], c.addVertex(t[n - 5], t[n - 2], "circle");
break;
case 62:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "ellipse");
break;
case 63:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "stadium");
break;
case 64:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "subroutine");
break;
case 65:
this.$ = t[n - 7], c.addVertex(t[n - 7], t[n - 1], "rect", void 0, void 0, void 0, Object.fromEntries([[t[n - 5], t[n - 3]]]));
break;
case 66:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "cylinder");
break;
case 67:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "round");
break;
case 68:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "diamond");
break;
case 69:
this.$ = t[n - 5], c.addVertex(t[n - 5], t[n - 2], "hexagon");
break;
case 70:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "odd");
break;
case 71:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "trapezoid");
break;
case 72:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "inv_trapezoid");
break;
case 73:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "lean_right");
break;
case 74:
this.$ = t[n - 3], c.addVertex(t[n - 3], t[n - 1], "lean_left");
break;
case 75:
this.$ = t[n], c.addVertex(t[n]);
break;
case 76:
t[n - 1].text = t[n], this.$ = t[n - 1];
break;
case 77:
case 78:
t[n - 2].text = t[n - 1], this.$ = t[n - 2];
break;
case 79:
this.$ = t[n];
break;
case 80:
var q = c.destructLink(t[n], t[n - 2]);
this.$ = { type: q.type, stroke: q.stroke, length: q.length, text: t[n - 1] };
break;
case 81:
this.$ = { text: t[n], type: "text" };
break;
case 82:
this.$ = { text: t[n - 1].text + "" + t[n], type: t[n - 1].type };
break;
case 83:
this.$ = { text: t[n], type: "string" };
break;
case 84:
this.$ = { text: t[n], type: "markdown" };
break;
case 85:
var q = c.destructLink(t[n]);
this.$ = { type: q.type, stroke: q.stroke, length: q.length };
break;
case 86:
this.$ = t[n - 1];
break;
case 87:
this.$ = { text: t[n], type: "text" };
break;
case 88:
this.$ = { text: t[n - 1].text + "" + t[n], type: t[n - 1].type };
break;
case 89:
this.$ = { text: t[n], type: "string" };
break;
case 90:
case 105:
this.$ = { text: t[n], type: "markdown" };
break;
case 102:
this.$ = { text: t[n], type: "text" };
break;
case 103:
this.$ = { text: t[n - 1].text + "" + t[n], type: t[n - 1].type };
break;
case 104:
this.$ = { text: t[n], type: "text" };
break;
case 106:
this.$ = t[n - 4], c.addClass(t[n - 2], t[n]);
break;
case 107:
this.$ = t[n - 4], c.setClass(t[n - 2], t[n]);
break;
case 108:
case 116:
this.$ = t[n - 1], c.setClickEvent(t[n - 1], t[n]);
break;
case 109:
case 117:
this.$ = t[n - 3], c.setClickEvent(t[n - 3], t[n - 2]), c.setTooltip(t[n - 3], t[n]);
break;
case 110:
this.$ = t[n - 2], c.setClickEvent(t[n - 2], t[n - 1], t[n]);
break;
case 111:
this.$ = t[n - 4], c.setClickEvent(t[n - 4], t[n - 3], t[n - 2]), c.setTooltip(t[n - 4], t[n]);
break;
case 112:
this.$ = t[n - 2], c.setLink(t[n - 2], t[n]);
break;
case 113:
this.$ = t[n - 4], c.setLink(t[n - 4], t[n - 2]), c.setTooltip(t[n - 4], t[n]);
break;
case 114:
this.$ = t[n - 4], c.setLink(t[n - 4], t[n - 2], t[n]);
break;
case 115:
this.$ = t[n - 6], c.setLink(t[n - 6], t[n - 4], t[n]), c.setTooltip(t[n - 6], t[n - 2]);
break;
case 118:
this.$ = t[n - 1], c.setLink(t[n - 1], t[n]);
break;
case 119:
this.$ = t[n - 3], c.setLink(t[n - 3], t[n - 2]), c.setTooltip(t[n - 3], t[n]);
break;
case 120:
this.$ = t[n - 3], c.setLink(t[n - 3], t[n - 2], t[n]);
break;
case 121:
this.$ = t[n - 5], c.setLink(t[n - 5], t[n - 4], t[n]), c.setTooltip(t[n - 5], t[n - 2]);
break;
case 122:
this.$ = t[n - 4], c.addVertex(t[n - 2], void 0, void 0, t[n]);
break;
case 123:
this.$ = t[n - 4], c.updateLink([t[n - 2]], t[n]);
break;
case 124:
this.$ = t[n - 4], c.updateLink(t[n - 2], t[n]);
break;
case 125:
this.$ = t[n - 8], c.updateLinkInterpolate([t[n - 6]], t[n - 2]), c.updateLink([t[n - 6]], t[n]);
break;
case 126:
this.$ = t[n - 8], c.updateLinkInterpolate(t[n - 6], t[n - 2]), c.updateLink(t[n - 6], t[n]);
break;
case 127:
this.$ = t[n - 6], c.updateLinkInterpolate([t[n - 4]], t[n]);
break;
case 128:
this.$ = t[n - 6], c.updateLinkInterpolate(t[n - 4], t[n]);
break;
case 129:
case 131:
this.$ = [t[n]];
break;
case 130:
case 132:
t[n - 2].push(t[n]), this.$ = t[n - 2];
break;
case 134:
this.$ = t[n - 1] + t[n];
break;
case 182:
this.$ = t[n];
break;
case 183:
this.$ = t[n - 1] + "" + t[n];
break;
case 185:
this.$ = t[n - 1] + "" + t[n];
break;
case 186:
this.$ = { stmt: "dir", value: "TB" };
break;
case 187:
this.$ = { stmt: "dir", value: "BT" };
break;
case 188:
this.$ = { stmt: "dir", value: "RL" };
break;
case 189:
this.$ = { stmt: "dir", value: "LR" };
break;
}
},
table: [{ 3: 1, 4: 2, 5: 3, 6: 5, 12: s, 16: 4, 21: r, 22: i, 24: u }, { 1: [3] }, { 1: [2, 1] }, { 3: 10, 4: 2, 5: 3, 6: 5, 12: s, 16: 4, 21: r, 22: i, 24: u }, e(a, o, { 17: 11 }), { 7: 12, 13: [1, 13] }, { 16: 14, 21: r, 22: i, 24: u }, { 16: 15, 21: r, 22: i, 24: u }, { 25: [1, 16], 26: [1, 17] }, { 13: [2, 5] }, { 1: [2, 2] }, { 1: [2, 9], 18: 18, 19: 19, 20: d, 21: h, 22: A, 23: g, 32: 24, 33: 25, 34: 26, 35: 27, 36: 28, 37: 29, 38: D, 44: 31, 45: F, 47: C, 49: X, 51: 35, 52: 45, 53: k, 54: 46, 56: 47, 69: T, 92: ge, 93: se, 94: Ue, 95: Ge, 96: je, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z, 129: We, 130: Ke, 131: He, 132: Ye }, { 8: 60, 10: [1, 61], 15: M1 }, e([10, 15], [2, 6]), e(a, [2, 17]), e(a, [2, 18]), e(a, [2, 19]), { 20: [1, 64], 21: [1, 65], 22: Ne, 27: 63, 30: 66 }, e(B, [2, 11]), e(B, [2, 12]), e(B, [2, 13]), e(B, [2, 14]), e(B, [2, 15]), e(B, [2, 16]), { 9: 68, 20: Z, 21: $, 23: ee, 50: 69, 81: 73, 84: [1, 74], 86: [1, 75] }, { 9: 76, 20: Z, 21: $, 23: ee }, { 9: 77, 20: Z, 21: $, 23: ee }, { 9: 78, 20: Z, 21: $, 23: ee }, { 9: 79, 20: Z, 21: $, 23: ee }, { 9: 80, 20: Z, 21: $, 23: ee }, { 9: 82, 20: Z, 21: $, 22: [1, 81], 23: ee }, e(B, [2, 44]), { 46: [1, 83] }, { 48: [1, 84] }, e(B, [2, 47]), e(Xe, [2, 54], { 30: 85, 22: Ne }), { 22: [1, 86] }, { 22: [1, 87] }, { 22: [1, 88] }, { 22: [1, 89] }, { 26: ye, 53: ke, 69: De, 88: [1, 93], 97: Fe, 103: [1, 90], 105: [1, 91], 109: 92, 113: Se, 114: xe, 117: Ce, 119: Te, 122: _e, 123: Be, 124: ve, 128: 94 }, e(B, [2, 186]), e(B, [2, 187]), e(B, [2, 188]), e(B, [2, 189]), e(qe, [2, 55]), e(qe, [2, 57], { 55: [1, 106] }), e(U, [2, 75], { 121: 119, 40: [1, 107], 53: k, 57: [1, 108], 59: [1, 109], 61: [1, 110], 63: [1, 111], 65: [1, 112], 67: [1, 113], 69: T, 72: [1, 114], 74: [1, 115], 76: [1, 116], 77: [1, 117], 79: [1, 118], 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 122: P, 123: M, 124: z }), e(H, [2, 182]), e(H, [2, 143]), e(H, [2, 144]), e(H, [2, 145]), e(H, [2, 146]), e(H, [2, 147]), e(H, [2, 148]), e(H, [2, 149]), e(H, [2, 150]), e(H, [2, 151]), e(H, [2, 152]), e(H, [2, 153]), { 9: 120, 20: Z, 21: $, 23: ee }, { 11: 121, 14: [1, 122] }, e(_, [2, 8]), e(a, [2, 20]), e(a, [2, 26]), e(a, [2, 27]), { 21: [1, 123] }, e(z1, [2, 34], { 30: 124, 22: Ne }), e(B, [2, 35]), { 51: 125, 52: 45, 53: k, 54: 46, 56: 47, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z }, e(d1, [2, 48]), e(d1, [2, 49]), e(d1, [2, 50]), e(we, [2, 79], { 82: 126, 71: [1, 128], 83: [1, 127] }), { 85: 129, 87: 130, 88: [1, 131], 89: [1, 132], 124: U1, 127: G1 }, e([53, 69, 71, 83, 97, 110, 113, 114, 117, 119, 122, 123, 124], [2, 85]), e(B, [2, 36]), e(B, [2, 37]), e(B, [2, 38]), e(B, [2, 39]), e(B, [2, 40]), { 22: j1, 24: W1, 26: K1, 38: H1, 39: 135, 43: Y1, 53: X1, 69: q1, 84: Q1, 88: [1, 137], 89: [1, 138], 91: 148, 92: J1, 93: Z1, 94: $1, 95: et, 96: tt, 97: st, 98: nt, 99: 136, 113: it, 117: rt, 119: ut, 122: at, 123: ct, 124: ot }, e(p1, o, { 17: 161 }), e(B, [2, 45]), e(B, [2, 46]), e(Xe, [2, 53], { 53: lt }), { 53: k, 56: 163, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z }, { 110: [1, 164], 111: 165, 113: [1, 166] }, { 53: k, 56: 167, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z }, { 53: k, 56: 168, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z }, e(_, [2, 108], { 22: [1, 169], 104: [1, 170] }), { 88: [1, 171] }, e(_, [2, 116], { 128: 173, 22: [1, 172], 26: ye, 53: ke, 69: De, 97: Fe, 113: Se, 114: xe, 117: Ce, 119: Te, 122: _e, 123: Be, 124: ve }), e(_, [2, 118], { 22: [1, 174] }), e(Y, [2, 184]), e(Y, [2, 171]), e(Y, [2, 172]), e(Y, [2, 173]), e(Y, [2, 174]), e(Y, [2, 175]), e(Y, [2, 176]), e(Y, [2, 177]), e(Y, [2, 178]), e(Y, [2, 179]), e(Y, [2, 180]), e(Y, [2, 181]), { 53: k, 56: 175, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z }, { 41: 176, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 184, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 186, 59: [1, 185], 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 187, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 188, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 189, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 117: [1, 190] }, { 41: 191, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 192, 74: [1, 193], 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 194, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 195, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 41: 196, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, e(H, [2, 183]), e(ht, [2, 3]), { 8: 197, 15: M1 }, { 15: [2, 7] }, e(a, [2, 28]), e(z1, [2, 33]), e(Xe, [2, 51], { 30: 198, 22: Ne }), e(we, [2, 76], { 22: [1, 199] }), { 22: [1, 200] }, { 41: 201, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 86: [1, 202], 87: 203, 124: U1, 127: G1 }, e(Ve, [2, 81]), e(Ve, [2, 83]), e(Ve, [2, 84]), e(Ve, [2, 169]), e(Ve, [2, 170]), { 9: 205, 20: Z, 21: $, 22: j1, 23: ee, 24: W1, 26: K1, 38: H1, 40: [1, 204], 43: Y1, 53: X1, 69: q1, 84: Q1, 91: 148, 92: J1, 93: Z1, 94: $1, 95: et, 96: tt, 97: st, 98: nt, 99: 206, 113: it, 117: rt, 119: ut, 122: at, 123: ct, 124: ot }, e(S, [2, 102]), e(S, [2, 104]), e(S, [2, 105]), e(S, [2, 158]), e(S, [2, 159]), e(S, [2, 160]), e(S, [2, 161]), e(S, [2, 162]), e(S, [2, 163]), e(S, [2, 164]), e(S, [2, 165]), e(S, [2, 166]), e(S, [2, 167]), e(S, [2, 168]), e(S, [2, 91]), e(S, [2, 92]), e(S, [2, 93]), e(S, [2, 94]), e(S, [2, 95]), e(S, [2, 96]), e(S, [2, 97]), e(S, [2, 98]), e(S, [2, 99]), e(S, [2, 100]), e(S, [2, 101]), { 18: 18, 19: 19, 20: d, 21: h, 22: A, 23: g, 32: 24, 33: 25, 34: 26, 35: 27, 36: 28, 37: 29, 38: D, 43: [1, 207], 44: 31, 45: F, 47: C, 49: X, 51: 35, 52: 45, 53: k, 54: 46, 56: 47, 69: T, 92: ge, 93: se, 94: Ue, 95: Ge, 96: je, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z, 129: We, 130: Ke, 131: He, 132: Ye }, { 22: Ne, 30: 208 }, { 22: [1, 209], 53: k, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 119, 122: P, 123: M, 124: z }, { 22: [1, 210] }, { 22: [1, 211], 114: [1, 212] }, e(ft, [2, 129]), { 22: [1, 213], 53: k, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 119, 122: P, 123: M, 124: z }, { 22: [1, 214], 53: k, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 119, 122: P, 123: M, 124: z }, { 88: [1, 215] }, e(_, [2, 110], { 22: [1, 216] }), e(_, [2, 112], { 22: [1, 217] }), { 88: [1, 218] }, e(Y, [2, 185]), { 88: [1, 219], 106: [1, 220] }, e(qe, [2, 58], { 121: 119, 53: k, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 122: P, 123: M, 124: z }), { 42: [1, 221], 76: b, 90: 222, 124: E, 125: m, 126: y }, e(pe, [2, 87]), e(pe, [2, 89]), e(pe, [2, 90]), e(pe, [2, 154]), e(pe, [2, 155]), e(pe, [2, 156]), e(pe, [2, 157]), { 58: [1, 223], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 41: 224, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 60: [1, 225], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 62: [1, 226], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 64: [1, 227], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 66: [1, 228], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 69: [1, 229] }, { 73: [1, 230], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 75: [1, 231], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 41: 232, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, { 42: [1, 233], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 76: b, 78: [1, 234], 80: [1, 235], 90: 222, 124: E, 125: m, 126: y }, { 76: b, 78: [1, 237], 80: [1, 236], 90: 222, 124: E, 125: m, 126: y }, { 9: 238, 20: Z, 21: $, 23: ee }, e(Xe, [2, 52], { 53: lt }), e(we, [2, 78]), e(we, [2, 77]), { 71: [1, 239], 76: b, 90: 222, 124: E, 125: m, 126: y }, e(we, [2, 80]), e(Ve, [2, 82]), { 41: 240, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, e(p1, o, { 17: 241 }), e(S, [2, 103]), e(B, [2, 43]), { 52: 242, 53: k, 54: 46, 56: 47, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z }, { 22: ne, 69: ie, 92: re, 100: 243, 113: ue, 115: 244, 116: 245, 117: ae, 118: ce, 119: oe, 120: le }, { 22: ne, 69: ie, 92: re, 100: 254, 112: [1, 255], 113: ue, 115: 244, 116: 245, 117: ae, 118: ce, 119: oe, 120: le }, { 22: ne, 69: ie, 92: re, 100: 256, 112: [1, 257], 113: ue, 115: 244, 116: 245, 117: ae, 118: ce, 119: oe, 120: le }, { 113: [1, 258] }, { 22: ne, 69: ie, 92: re, 100: 259, 113: ue, 115: 244, 116: 245, 117: ae, 118: ce, 119: oe, 120: le }, { 53: k, 56: 260, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z }, e(_, [2, 109]), { 88: [1, 261] }, { 88: [1, 262], 106: [1, 263] }, e(_, [2, 117]), e(_, [2, 119], { 22: [1, 264] }), e(_, [2, 120]), e(U, [2, 59]), e(pe, [2, 88]), e(U, [2, 60]), { 60: [1, 265], 76: b, 90: 222, 124: E, 125: m, 126: y }, e(U, [2, 67]), e(U, [2, 62]), e(U, [2, 63]), e(U, [2, 64]), { 117: [1, 266] }, e(U, [2, 66]), e(U, [2, 68]), { 75: [1, 267], 76: b, 90: 222, 124: E, 125: m, 126: y }, e(U, [2, 70]), e(U, [2, 71]), e(U, [2, 73]), e(U, [2, 72]), e(U, [2, 74]), e(ht, [2, 4]), e([22, 53, 69, 97, 110, 113, 114, 117, 119, 122, 123, 124], [2, 86]), { 42: [1, 268], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 18: 18, 19: 19, 20: d, 21: h, 22: A, 23: g, 32: 24, 33: 25, 34: 26, 35: 27, 36: 28, 37: 29, 38: D, 43: [1, 269], 44: 31, 45: F, 47: C, 49: X, 51: 35, 52: 45, 53: k, 54: 46, 56: 47, 69: T, 92: ge, 93: se, 94: Ue, 95: Ge, 96: je, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z, 129: We, 130: Ke, 131: He, 132: Ye }, e(qe, [2, 56]), e(_, [2, 122], { 114: Le }), e(dt, [2, 131], { 116: 271, 22: ne, 69: ie, 92: re, 113: ue, 117: ae, 118: ce, 119: oe, 120: le }), e(te, [2, 133]), e(te, [2, 135]), e(te, [2, 136]), e(te, [2, 137]), e(te, [2, 138]), e(te, [2, 139]), e(te, [2, 140]), e(te, [2, 141]), e(te, [2, 142]), e(_, [2, 123], { 114: Le }), { 22: [1, 272] }, e(_, [2, 124], { 114: Le }), { 22: [1, 273] }, e(ft, [2, 130]), e(_, [2, 106], { 114: Le }), e(_, [2, 107], { 121: 119, 53: k, 69: T, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 122: P, 123: M, 124: z }), e(_, [2, 111]), e(_, [2, 113], { 22: [1, 274] }), e(_, [2, 114]), { 106: [1, 275] }, { 60: [1, 276] }, { 71: [1, 277] }, { 75: [1, 278] }, { 9: 279, 20: Z, 21: $, 23: ee }, e(B, [2, 42]), { 22: ne, 69: ie, 92: re, 113: ue, 115: 280, 116: 245, 117: ae, 118: ce, 119: oe, 120: le }, e(te, [2, 134]), { 26: ye, 53: ke, 69: De, 97: Fe, 109: 281, 113: Se, 114: xe, 117: Ce, 119: Te, 122: _e, 123: Be, 124: ve, 128: 94 }, { 26: ye, 53: ke, 69: De, 97: Fe, 109: 282, 113: Se, 114: xe, 117: Ce, 119: Te, 122: _e, 123: Be, 124: ve, 128: 94 }, { 106: [1, 283] }, e(_, [2, 121]), e(U, [2, 61]), { 41: 284, 76: b, 88: G, 89: j, 90: 177, 124: E, 125: m, 126: y }, e(U, [2, 69]), e(p1, o, { 17: 285 }), e(dt, [2, 132], { 116: 271, 22: ne, 69: ie, 92: re, 113: ue, 117: ae, 118: ce, 119: oe, 120: le }), e(_, [2, 127], { 128: 173, 22: [1, 286], 26: ye, 53: ke, 69: De, 97: Fe, 113: Se, 114: xe, 117: Ce, 119: Te, 122: _e, 123: Be, 124: ve }), e(_, [2, 128], { 128: 173, 22: [1, 287], 26: ye, 53: ke, 69: De, 97: Fe, 113: Se, 114: xe, 117: Ce, 119: Te, 122: _e, 123: Be, 124: ve }), e(_, [2, 115]), { 42: [1, 288], 76: b, 90: 222, 124: E, 125: m, 126: y }, { 18: 18, 19: 19, 20: d, 21: h, 22: A, 23: g, 32: 24, 33: 25, 34: 26, 35: 27, 36: 28, 37: 29, 38: D, 43: [1, 289], 44: 31, 45: F, 47: C, 49: X, 51: 35, 52: 45, 53: k, 54: 46, 56: 47, 69: T, 92: ge, 93: se, 94: Ue, 95: Ge, 96: je, 97: L, 110: R, 113: I, 114: N, 117: w, 119: O, 121: 48, 122: P, 123: M, 124: z, 129: We, 130: Ke, 131: He, 132: Ye }, { 22: ne, 69: ie, 92: re, 100: 290, 113: ue, 115: 244, 116: 245, 117: ae, 118: ce, 119: oe, 120: le }, { 22: ne, 69: ie, 92: re, 100: 291, 113: ue, 115: 244, 116: 245, 117: ae, 118: ce, 119: oe, 120: le }, e(U, [2, 65]), e(B, [2, 41]), e(_, [2, 125], { 114: Le }), e(_, [2, 126], { 114: Le })],
defaultActions: { 2: [2, 1], 9: [2, 5], 10: [2, 2], 122: [2, 7] },
parseError: function(l, f) {
if (f.recoverable)
this.trace(l);
else {
var p = new Error(l);
throw p.hash = f, p;
}
},
parse: function(l) {
var f = this, p = [0], c = [], v = [null], t = [], Oe = this.table, n = "", q = 0, pt = 0, us = 2, At = 1, as = t.slice.call(arguments, 1), V = Object.create(this.lexer), be = { yy: {} };
for (var b1 in this.yy)
Object.prototype.hasOwnProperty.call(this.yy, b1) && (be.yy[b1] = this.yy[b1]);
V.setInput(l, be.yy), be.yy.lexer = V, be.yy.parser = this, typeof V.yylloc > "u" && (V.yylloc = {});
var E1 = V.yylloc;
t.push(E1);
var cs = V.options && V.options.ranges;
typeof be.yy.parseError == "function" ? this.parseError = be.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
function os() {
var fe;
return fe = c.pop() || V.lex() || At, typeof fe != "number" && (fe instanceof Array && (c = fe, fe = c.pop()), fe = f.symbols_[fe] || fe), fe;
}
for (var K, Ee, Q, m1, Re = {}, Qe, he, gt, Je; ; ) {
if (Ee = p[p.length - 1], this.defaultActions[Ee] ? Q = this.defaultActions[Ee] : ((K === null || typeof K > "u") && (K = os()), Q = Oe[Ee] && Oe[Ee][K]), typeof Q > "u" || !Q.length || !Q[0]) {
var y1 = "";
Je = [];
for (Qe in Oe[Ee])
this.terminals_[Qe] && Qe > us && Je.push("'" + this.terminals_[Qe] + "'");
V.showPosition ? y1 = "Parse error on line " + (q + 1) + `:
` + V.showPosition() + `
Expecting ` + Je.join(", ") + ", got '" + (this.terminals_[K] || K) + "'" : y1 = "Parse error on line " + (q + 1) + ": Unexpected " + (K == At ? "end of input" : "'" + (this.terminals_[K] || K) + "'"), this.parseError(y1, {
text: V.match,
token: this.terminals_[K] || K,
line: V.yylineno,
loc: E1,
expected: Je
});
}
if (Q[0] instanceof Array && Q.length > 1)
throw new Error("Parse Error: multiple actions possible at state: " + Ee + ", token: " + K);
switch (Q[0]) {
case 1:
p.push(K), v.push(V.yytext), t.push(V.yylloc), p.push(Q[1]), K = null, pt = V.yyleng, n = V.yytext, q = V.yylineno, E1 = V.yylloc;
break;
case 2:
if (he = this.productions_[Q[1]][1], Re.$ = v[v.length - he], Re._$ = {
first_line: t[t.length - (he || 1)].first_line,
last_line: t[t.length - 1].last_line,
first_column: t[t.length - (he || 1)].first_column,
last_column: t[t.length - 1].last_column
}, cs && (Re._$.range = [
t[t.length - (he || 1)].range[0],
t[t.length - 1].range[1]
]), m1 = this.performAction.apply(Re, [
n,
pt,
q,
be.yy,
Q[1],
v,
t
].concat(as)), typeof m1 < "u")
return m1;
he && (p = p.slice(0, -1 * he * 2), v = v.slice(0, -1 * he), t = t.slice(0, -1 * he)), p.push(this.productions_[Q[1]][0]), v.push(Re.$), t.push(Re._$), gt = Oe[p[p.length - 2]][p[p.length - 1]], p.push(gt);
break;
case 3:
return !0;
}
}
return !0;
}
}, rs = function() {
var Ae = {
EOF: 1,
parseError: function(f, p) {
if (this.yy.parser)
this.yy.parser.parseError(f, p);
else
throw new Error(f);
},
// resets the lexer, sets new input
setInput: function(l, f) {
return this.yy = f || this.yy || {}, this._input = l, 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;
},
// consumes and returns one char from the input
input: function() {
var l = this._input[0];
this.yytext += l, this.yyleng++, this.offset++, this.match += l, this.matched += l;
var f = l.match(/(?:\r\n?|\n).*/g);
return f ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), l;
},
// unshifts one char (or a string) into the input
unput: function(l) {
var f = l.length, p = l.split(/(?:\r\n?|\n)/g);
this._input = l + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - f), this.offset -= f;
var c = 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), p.length - 1 && (this.yylineno -= p.length - 1);
var v = 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: p ? (p.length === c.length ? this.yylloc.first_column : 0) + c[c.length - p.length].length - p[0].length : this.yylloc.first_column - f
}, this.options.ranges && (this.yylloc.range = [v[0], v[0] + this.yyleng - f]), this.yyleng = this.yytext.length, this;
},
// When called from action, caches matched text and appends it on next action
more: function() {
return this._more = !0, this;
},
// When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.
reject: function() {
if (this.options.backtrack_lexer)
this._backtrack = !0;
else
return 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).
` + this.showPosition(), {
text: "",
token: null,
line: this.yylineno
});
return this;
},
// retain first n characters of the match
less: function(l) {
this.unput(this.match.slice(l));
},
// displays already matched input, i.e. for error messages
pastInput: function() {
var l = this.matched.substr(0, this.matched.length - this.match.length);
return (l.length > 20 ? "..." : "") + l.substr(-20).replace(/\n/g, "");
},
// displays upcoming input, i.e. for error messages
upcomingInput: function() {
var l = this.match;
return l.length < 20 && (l += this._input.substr(0, 20 - l.length)), (l.substr(0, 20) + (l.length > 20 ? "..." : "")).replace(/\n/g, "");
},
// displays the character position where the lexing error occurred, i.e. for error messages
showPosition: function() {
var l = this.pastInput(), f = new Array(l.length + 1).join("-");
return l + this.upcomingInput() + `
` + f + "^";
},
// test the lexed token: return FALSE when not a match, otherwise return token
test_match: function(l, f) {
var p, c, v;
if (this.options.backtrack_lexer && (v = {
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 && (v.yylloc.range = this.yylloc.range.slice(0))), c = l[0].match(/(?:\r\n?|\n).*/g), c && (this.yylineno += c.length), this.yylloc = {
first_line: this.yylloc.last_line,
last_line: this.yylineno + 1,
first_column: this.yylloc.last_column,
last_column: c ? c[c.length - 1].length - c[c.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + l[0].length
}, this.yytext += l[0], this.match += l[0], this.matches = l, 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(l[0].length), this.matched += l[0], p = this.performAction.call(this, this.yy, this, f, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), p)
return p;
if (this._backtrack) {
for (var t in v)
this[t] = v[t];
return !1;
}
return !1;
},
// return next match in input
next: function() {
if (this.done)
return this.EOF;
this._input || (this.done = !0);
var l, f, p, c;
this._more || (this.yytext = "", this.match = "");
for (var v = this._currentRules(), t = 0; t < v.length; t++)
if (p = this._input.match(this.rules[v[t]]), p && (!f || p[0].length > f[0].length)) {
if (f = p, c = t, this.options.backtrack_lexer) {
if (l = this.test_match(p, v[t]), l !== !1)
return l;
if (this._backtrack) {
f = !1;
continue;
} else
return !1;
} else if (!this.options.flex)
break;
}
return f ? (l = this.test_match(f, v[c]), l !== !1 ? l : !1) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
` + this.showPosition(), {
text: "",
token: null,
line: this.yylineno
});
},
// return next match that has a token
lex: function() {
var f = this.next();
return f || this.lex();
},
// activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
begin: function(f) {
this.conditionStack.push(f);
},
// pop the previously active lexer condition state off the condition stack
popState: function() {
var f = this.conditionStack.length - 1;
return f > 0 ? this.conditionStack.pop() : this.conditionStack[0];
},
// produce the lexer rule set which is active for the currently active lexer condition state
_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;
},
// return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
topState: function(f) {
return f = this.conditionStack.length - 1 - Math.abs(f || 0), f >= 0 ? this.conditionStack[f] : "INITIAL";
},
// alias for begin(condition)
pushState: function(f) {
this.begin(f);
},
// return the number of states currently on the stack
stateStackSize: function() {
return this.conditionStack.length;
},
options: {},
performAction: function(f, p, c, v) {
switch (c) {
case 0:
return this.begin("open_directive"), 12;
case 1:
return this.begin("type_directive"), 13;
case 2:
return this.popState(), this.begin("arg_directive"), 10;
case 3:
return this.popState(), this.popState(), 15;
case 4:
return 14;
case 5:
return this.begin("acc_title"), 45;
case 6:
return this.popState(), "acc_title_value";
case 7:
return this.begin("acc_descr"), 47;
case 8:
return this.popState(), "acc_descr_value";
case 9:
this.begin("acc_descr_multiline");
break;
case 10:
this.popState();
break;
case 11:
return "acc_descr_multiline_value";
case 12:
this.begin("callbackname");
break;
case 13:
this.popState();
break;
case 14:
this.popState(), this.begin("callbackargs");
break;
case 15:
return 103;
case 16:
this.popState();
break;
case 17:
return 104;
case 18:
return "MD_STR";
case 19:
this.popState();
break;
case 20:
this.begin("md_string");
break;
case 21:
return "STR";
case 22:
this.popState();
break;
case 23:
this.pushState("string");
break;
case 24:
return 92;
case 25:
return 110;
case 26:
return 93;
case 27:
return 112;
case 28:
return 94;
case 29:
return 95;
case 30:
return 105;
case 31:
this.begin("click");
break;
case 32:
this.popState();
break;
case 33:
return 96;
case 34:
return f.lex.firstGraph() && this.begin("dir"), 24;
case 35:
return f.lex.firstGraph() && this.begin("dir"), 24;
case 36:
return f.lex.firstGraph() && this.begin("dir"), 24;
case 37:
return 38;
case 38:
return 43;
case 39:
return 106;
case 40:
return 106;
case 41:
return 106;
case 42:
return 106;
case 43:
return this.popState(), 25;
case 44:
return this.popState(), 26;
case 45:
return this.popState(), 26;
case 46:
return this.popState(), 26;
case 47:
return this.popState(), 26;
case 48:
return this.popState(), 26;
case 49:
return this.popState(), 26;
case 50:
return this.popState(), 26;
case 51:
return this.popState(), 26;
case 52:
return this.popState(), 26;
case 53:
return this.popState(), 26;
case 54:
return 129;
case 55:
return 130;
case 56:
return 131;
case 57:
return 132;
case 58:
return 113;
case 59:
return 119;
case 60:
return 55;
case 61:
return 69;
case 62:
return 53;
case 63:
return 20;
case 64:
return 114;
case 65:
return 123;
case 66:
return this.popState(), 86;
case 67:
return this.pushState("edgeText"), 84;
case 68:
return 127;
case 69:
return this.popState(), 86;
case 70:
return this.pushState("thickEdgeText"), 84;
case 71:
return 127;
case 72:
return this.popState(), 86;
case 73:
return this.pushState("dottedEdgeText"), 84;
case 74:
return 127;
case 75:
return 86;
case 76:
return this.popState(), 62;
case 77:
return "TEXT";
case 78:
return this.pushState("ellipseText"), 61;
case 79:
return this.popState(), 64;
case 80:
return this.pushState("text"), 63;
case 81:
return this.popState(), 66;
case 82:
return this.pushState("text"), 65;
case 83:
return 67;
case 84:
return this.pushState("text"), 76;
case 85:
return this.popState(), 73;
case 86:
return this.pushState("text"), 72;
case 87:
return this.popState(), 58;
case 88:
return this.pushState("text"), 57;
case 89:
return this.popState(), 78;
case 90:
return this.popState(), 80;
case 91:
return 125;
case 92:
return this.pushState("trapText"), 77;
case 93:
return this.pushState("trapText"), 79;
case 94:
return 126;
case 95:
return 76;
case 96:
return 98;
case 97:
return "SEP";
case 98:
return 97;
case 99:
return 123;
case 100:
return 119;
case 101:
return 53;
case 102:
return 117;
case 103:
return 122;
case 104:
return 124;
case 105:
return this.popState(), 71;
case 106:
return this.pushState("text"), 71;
case 107:
return this.popState(), 60;
case 108:
return this.pushState("text"), 59;
case 109:
return this.popState(), 42;
case 110:
return this.pushState("text"), 40;
case 111:
return this.popState(), 75;
case 112:
return this.pushState("text"), 74;
case 113:
return "TEXT";
case 114:
return "QUOTE";
case 115:
return 21;
case 116:
return 22;
case 117:
return 23;
}
},
rules: [/^(?:%%\{)/, /^(?:((?:(?!\}%%)[^:.])*))/, /^(?::)/, /^(?:\}%%)/, /^(?:((?:(?!\}%%).|\n)*))/, /^(?:accTitle\s*:\s*)/, /^(?:(?!\n||)*[^\n]*)/, /^(?:accDescr\s*:\s*)/, /^(?:(?!\n||)*[^\n]*)/, /^(?:accDescr\s*\{\s*)/, /^(?:[\}])/, /^(?:[^\}]*)/, /^(?:call[\s]+)/, /^(?:\([\s]*\))/, /^(?:\()/, /^(?:[^(]*)/, /^(?:\))/, /^(?:[^)]*)/, /^(?:[^`"]+)/, /^(?:[`]["])/, /^(?:["][`])/, /^(?:[^"]+)/, /^(?:["])/, /^(?:["])/, /^(?:style\b)/, /^(?:default\b)/, /^(?:linkStyle\b)/, /^(?:interpolate\b)/, /^(?:classDef\b)/, /^(?:class\b)/, /^(?:href[\s])/, /^(?:click[\s]+)/, /^(?:[\s\n])/, /^(?:[^\s\n]*)/, /^(?:flowchart-elk\b)/, /^(?:graph\b)/, /^(?:flowchart\b)/, /^(?:subgraph\b)/, /^(?:end\b\s*)/, /^(?:_self\b)/, /^(?:_blank\b)/, /^(?:_parent\b)/, /^(?:_top\b)/, /^(?:(\r?\n)*\s*\n)/, /^(?:\s*LR\b)/, /^(?:\s*RL\b)/, /^(?:\s*TB\b)/, /^(?:\s*BT\b)/, /^(?:\s*TD\b)/, /^(?:\s*BR\b)/, /^(?:\s*<)/, /^(?:\s*>)/, /^(?:\s*\^)/, /^(?:\s*v\b)/, /^(?:.*direction\s+TB[^\n]*)/, /^(?:.*direction\s+BT[^\n]*)/, /^(?:.*direction\s+RL[^\n]*)/, /^(?:.*direction\s+LR[^\n]*)/, /^(?:[0-9]+)/, /^(?:#)/, /^(?::::)/, /^(?::)/, /^(?:&)/, /^(?:;)/, /^(?:,)/, /^(?:\*)/, /^(?:\s*[xo<]?--+[-xo>]\s*)/, /^(?:\s*[xo<]?--\s*)/, /^(?:[^-]|-(?!-)+)/, /^(?:\s*[xo<]?==+[=xo>]\s*)/, /^(?:\s*[xo<]?==\s*)/, /^(?:[^=]|=(?!))/, /^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/, /^(?:\s*[xo<]?-\.\s*)/, /^(?:[^\.]|\.(?!))/, /^(?:\s*~~[\~]+\s*)/, /^(?:[-/\)][\)])/, /^(?:[^\(\)\[\]\{\}]|(?!\)+))/, /^(?:\(-)/, /^(?:\]\))/, /^(?:\(\[)/, /^(?:\]\])/, /^(?:\[\[)/, /^(?:\[\|)/, /^(?:>)/, /^(?:\)\])/, /^(?:\[\()/, /^(?:\)\)\))/, /^(?:\(\(\()/, /^(?:[\\(?=\])][\]])/, /^(?:\/(?=\])\])/, /^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/, /^(?:\[\/)/, /^(?:\[\\)/, /^(?:<)/, /^(?:>)/, /^(?:\^)/, /^(?:\\\|)/, /^(?:v\b)/, /^(?:\*)/, /^(?:#)/, /^(?:&)/, /^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/, /^(?:-)/, /^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E