import { l as O_, M as M_, L as L_, E as E_, F as F_, A as A_, V as Vn, $ as $n, a as L, m as B_, a7 as F0 } from './index.esm2.js';

function _instanceof(left, right) {
    if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
        return !!right[Symbol.hasInstance](left);
    } else {
        return left instanceof right;
    }
}
function _type_of(obj) {
    "@swc/helpers - typeof";
    return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
}
var gt = function() {
    var t = function t(C, r, n, i) {
        for(n = n || {}, i = C.length; i--; n[C[i]] = r);
        return n;
    }, s = [
        1,
        2
    ], a = [
        1,
        3
    ], h = [
        1,
        4
    ], f = [
        2,
        4
    ], d = [
        1,
        9
    ], y = [
        1,
        11
    ], k = [
        1,
        15
    ], u = [
        1,
        16
    ], E = [
        1,
        17
    ], T = [
        1,
        18
    ], R = [
        1,
        30
    ], G = [
        1,
        19
    ], j = [
        1,
        20
    ], U = [
        1,
        21
    ], z = [
        1,
        22
    ], M = [
        1,
        23
    ], H = [
        1,
        25
    ], X = [
        1,
        26
    ], K = [
        1,
        27
    ], W = [
        1,
        28
    ], J = [
        1,
        29
    ], q = [
        1,
        32
    ], Q = [
        1,
        33
    ], Z = [
        1,
        34
    ], tt = [
        1,
        35
    ], w = [
        1,
        31
    ], c = [
        1,
        4,
        5,
        15,
        16,
        18,
        20,
        21,
        23,
        24,
        25,
        26,
        27,
        28,
        32,
        34,
        36,
        37,
        41,
        44,
        45,
        46,
        47,
        50
    ], et = [
        1,
        4,
        5,
        13,
        14,
        15,
        16,
        18,
        20,
        21,
        23,
        24,
        25,
        26,
        27,
        28,
        32,
        34,
        36,
        37,
        41,
        44,
        45,
        46,
        47,
        50
    ], Dt = [
        4,
        5,
        15,
        16,
        18,
        20,
        21,
        23,
        24,
        25,
        26,
        27,
        28,
        32,
        34,
        36,
        37,
        41,
        44,
        45,
        46,
        47,
        50
    ], ht = {
        trace: function trace() {},
        yy: {},
        symbols_: {
            error: 2,
            start: 3,
            SPACE: 4,
            NL: 5,
            SD: 6,
            document: 7,
            line: 8,
            statement: 9,
            classDefStatement: 10,
            cssClassStatement: 11,
            idStatement: 12,
            DESCR: 13,
            "-->": 14,
            HIDE_EMPTY: 15,
            scale: 16,
            WIDTH: 17,
            COMPOSIT_STATE: 18,
            STRUCT_START: 19,
            STRUCT_STOP: 20,
            STATE_DESCR: 21,
            AS: 22,
            ID: 23,
            FORK: 24,
            JOIN: 25,
            CHOICE: 26,
            CONCURRENT: 27,
            note: 28,
            notePosition: 29,
            NOTE_TEXT: 30,
            direction: 31,
            acc_title: 32,
            acc_title_value: 33,
            acc_descr: 34,
            acc_descr_value: 35,
            acc_descr_multiline_value: 36,
            classDef: 37,
            CLASSDEF_ID: 38,
            CLASSDEF_STYLEOPTS: 39,
            DEFAULT: 40,
            class: 41,
            CLASSENTITY_IDS: 42,
            STYLECLASS: 43,
            direction_tb: 44,
            direction_bt: 45,
            direction_rl: 46,
            direction_lr: 47,
            eol: 48,
            ";": 49,
            EDGE_STATE: 50,
            STYLE_SEPARATOR: 51,
            left_of: 52,
            right_of: 53,
            $accept: 0,
            $end: 1
        },
        terminals_: {
            2: "error",
            4: "SPACE",
            5: "NL",
            6: "SD",
            13: "DESCR",
            14: "-->",
            15: "HIDE_EMPTY",
            16: "scale",
            17: "WIDTH",
            18: "COMPOSIT_STATE",
            19: "STRUCT_START",
            20: "STRUCT_STOP",
            21: "STATE_DESCR",
            22: "AS",
            23: "ID",
            24: "FORK",
            25: "JOIN",
            26: "CHOICE",
            27: "CONCURRENT",
            28: "note",
            30: "NOTE_TEXT",
            32: "acc_title",
            33: "acc_title_value",
            34: "acc_descr",
            35: "acc_descr_value",
            36: "acc_descr_multiline_value",
            37: "classDef",
            38: "CLASSDEF_ID",
            39: "CLASSDEF_STYLEOPTS",
            40: "DEFAULT",
            41: "class",
            42: "CLASSENTITY_IDS",
            43: "STYLECLASS",
            44: "direction_tb",
            45: "direction_bt",
            46: "direction_rl",
            47: "direction_lr",
            49: ";",
            50: "EDGE_STATE",
            51: "STYLE_SEPARATOR",
            52: "left_of",
            53: "right_of"
        },
        productions_: [
            0,
            [
                3,
                2
            ],
            [
                3,
                2
            ],
            [
                3,
                2
            ],
            [
                7,
                0
            ],
            [
                7,
                2
            ],
            [
                8,
                2
            ],
            [
                8,
                1
            ],
            [
                8,
                1
            ],
            [
                9,
                1
            ],
            [
                9,
                1
            ],
            [
                9,
                1
            ],
            [
                9,
                2
            ],
            [
                9,
                3
            ],
            [
                9,
                4
            ],
            [
                9,
                1
            ],
            [
                9,
                2
            ],
            [
                9,
                1
            ],
            [
                9,
                4
            ],
            [
                9,
                3
            ],
            [
                9,
                6
            ],
            [
                9,
                1
            ],
            [
                9,
                1
            ],
            [
                9,
                1
            ],
            [
                9,
                1
            ],
            [
                9,
                4
            ],
            [
                9,
                4
            ],
            [
                9,
                1
            ],
            [
                9,
                2
            ],
            [
                9,
                2
            ],
            [
                9,
                1
            ],
            [
                10,
                3
            ],
            [
                10,
                3
            ],
            [
                11,
                3
            ],
            [
                31,
                1
            ],
            [
                31,
                1
            ],
            [
                31,
                1
            ],
            [
                31,
                1
            ],
            [
                48,
                1
            ],
            [
                48,
                1
            ],
            [
                12,
                1
            ],
            [
                12,
                1
            ],
            [
                12,
                3
            ],
            [
                12,
                3
            ],
            [
                29,
                1
            ],
            [
                29,
                1
            ]
        ],
        performAction: function performAction(r, n, i, o, p, e, $) {
            var l = e.length - 1;
            switch(p){
                case 3:
                    return o.setRootDoc(e[l]), e[l];
                case 4:
                    this.$ = [];
                    break;
                case 5:
                    e[l] != "nl" && (e[l - 1].push(e[l]), this.$ = e[l - 1]);
                    break;
                case 6:
                case 7:
                    this.$ = e[l];
                    break;
                case 8:
                    this.$ = "nl";
                    break;
                case 11:
                    this.$ = e[l];
                    break;
                case 12:
                    var B = e[l - 1];
                    B.description = o.trimColon(e[l]), this.$ = B;
                    break;
                case 13:
                    this.$ = {
                        stmt: "relation",
                        state1: e[l - 2],
                        state2: e[l]
                    };
                    break;
                case 14:
                    var ft = o.trimColon(e[l]);
                    this.$ = {
                        stmt: "relation",
                        state1: e[l - 3],
                        state2: e[l - 1],
                        description: ft
                    };
                    break;
                case 18:
                    this.$ = {
                        stmt: "state",
                        id: e[l - 3],
                        type: "default",
                        description: "",
                        doc: e[l - 1]
                    };
                    break;
                case 19:
                    var A = e[l], O = e[l - 2].trim();
                    if (e[l].match(":")) {
                        var st = e[l].split(":");
                        A = st[0], O = [
                            O,
                            st[1]
                        ];
                    }
                    this.$ = {
                        stmt: "state",
                        id: A,
                        type: "default",
                        description: O
                    };
                    break;
                case 20:
                    this.$ = {
                        stmt: "state",
                        id: e[l - 3],
                        type: "default",
                        description: e[l - 5],
                        doc: e[l - 1]
                    };
                    break;
                case 21:
                    this.$ = {
                        stmt: "state",
                        id: e[l],
                        type: "fork"
                    };
                    break;
                case 22:
                    this.$ = {
                        stmt: "state",
                        id: e[l],
                        type: "join"
                    };
                    break;
                case 23:
                    this.$ = {
                        stmt: "state",
                        id: e[l],
                        type: "choice"
                    };
                    break;
                case 24:
                    this.$ = {
                        stmt: "state",
                        id: o.getDividerId(),
                        type: "divider"
                    };
                    break;
                case 25:
                    this.$ = {
                        stmt: "state",
                        id: e[l - 1].trim(),
                        note: {
                            position: e[l - 2].trim(),
                            text: e[l].trim()
                        }
                    };
                    break;
                case 28:
                    this.$ = e[l].trim(), o.setAccTitle(this.$);
                    break;
                case 29:
                case 30:
                    this.$ = e[l].trim(), o.setAccDescription(this.$);
                    break;
                case 31:
                case 32:
                    this.$ = {
                        stmt: "classDef",
                        id: e[l - 1].trim(),
                        classes: e[l].trim()
                    };
                    break;
                case 33:
                    this.$ = {
                        stmt: "applyClass",
                        id: e[l - 1].trim(),
                        styleClass: e[l].trim()
                    };
                    break;
                case 34:
                    o.setDirection("TB"), this.$ = {
                        stmt: "dir",
                        value: "TB"
                    };
                    break;
                case 35:
                    o.setDirection("BT"), this.$ = {
                        stmt: "dir",
                        value: "BT"
                    };
                    break;
                case 36:
                    o.setDirection("RL"), this.$ = {
                        stmt: "dir",
                        value: "RL"
                    };
                    break;
                case 37:
                    o.setDirection("LR"), this.$ = {
                        stmt: "dir",
                        value: "LR"
                    };
                    break;
                case 40:
                case 41:
                    this.$ = {
                        stmt: "state",
                        id: e[l].trim(),
                        type: "default",
                        description: ""
                    };
                    break;
                case 42:
                    this.$ = {
                        stmt: "state",
                        id: e[l - 2].trim(),
                        classes: [
                            e[l].trim()
                        ],
                        type: "default",
                        description: ""
                    };
                    break;
                case 43:
                    this.$ = {
                        stmt: "state",
                        id: e[l - 2].trim(),
                        classes: [
                            e[l].trim()
                        ],
                        type: "default",
                        description: ""
                    };
                    break;
            }
        },
        table: [
            {
                3: 1,
                4: s,
                5: a,
                6: h
            },
            {
                1: [
                    3
                ]
            },
            {
                3: 5,
                4: s,
                5: a,
                6: h
            },
            {
                3: 6,
                4: s,
                5: a,
                6: h
            },
            t([
                1,
                4,
                5,
                15,
                16,
                18,
                21,
                23,
                24,
                25,
                26,
                27,
                28,
                32,
                34,
                36,
                37,
                41,
                44,
                45,
                46,
                47,
                50
            ], f, {
                7: 7
            }),
            {
                1: [
                    2,
                    1
                ]
            },
            {
                1: [
                    2,
                    2
                ]
            },
            {
                1: [
                    2,
                    3
                ],
                4: d,
                5: y,
                8: 8,
                9: 10,
                10: 12,
                11: 13,
                12: 14,
                15: k,
                16: u,
                18: E,
                21: T,
                23: R,
                24: G,
                25: j,
                26: U,
                27: z,
                28: M,
                31: 24,
                32: H,
                34: X,
                36: K,
                37: W,
                41: J,
                44: q,
                45: Q,
                46: Z,
                47: tt,
                50: w
            },
            t(c, [
                2,
                5
            ]),
            {
                9: 36,
                10: 12,
                11: 13,
                12: 14,
                15: k,
                16: u,
                18: E,
                21: T,
                23: R,
                24: G,
                25: j,
                26: U,
                27: z,
                28: M,
                31: 24,
                32: H,
                34: X,
                36: K,
                37: W,
                41: J,
                44: q,
                45: Q,
                46: Z,
                47: tt,
                50: w
            },
            t(c, [
                2,
                7
            ]),
            t(c, [
                2,
                8
            ]),
            t(c, [
                2,
                9
            ]),
            t(c, [
                2,
                10
            ]),
            t(c, [
                2,
                11
            ], {
                13: [
                    1,
                    37
                ],
                14: [
                    1,
                    38
                ]
            }),
            t(c, [
                2,
                15
            ]),
            {
                17: [
                    1,
                    39
                ]
            },
            t(c, [
                2,
                17
            ], {
                19: [
                    1,
                    40
                ]
            }),
            {
                22: [
                    1,
                    41
                ]
            },
            t(c, [
                2,
                21
            ]),
            t(c, [
                2,
                22
            ]),
            t(c, [
                2,
                23
            ]),
            t(c, [
                2,
                24
            ]),
            {
                29: 42,
                30: [
                    1,
                    43
                ],
                52: [
                    1,
                    44
                ],
                53: [
                    1,
                    45
                ]
            },
            t(c, [
                2,
                27
            ]),
            {
                33: [
                    1,
                    46
                ]
            },
            {
                35: [
                    1,
                    47
                ]
            },
            t(c, [
                2,
                30
            ]),
            {
                38: [
                    1,
                    48
                ],
                40: [
                    1,
                    49
                ]
            },
            {
                42: [
                    1,
                    50
                ]
            },
            t(et, [
                2,
                40
            ], {
                51: [
                    1,
                    51
                ]
            }),
            t(et, [
                2,
                41
            ], {
                51: [
                    1,
                    52
                ]
            }),
            t(c, [
                2,
                34
            ]),
            t(c, [
                2,
                35
            ]),
            t(c, [
                2,
                36
            ]),
            t(c, [
                2,
                37
            ]),
            t(c, [
                2,
                6
            ]),
            t(c, [
                2,
                12
            ]),
            {
                12: 53,
                23: R,
                50: w
            },
            t(c, [
                2,
                16
            ]),
            t(Dt, f, {
                7: 54
            }),
            {
                23: [
                    1,
                    55
                ]
            },
            {
                23: [
                    1,
                    56
                ]
            },
            {
                22: [
                    1,
                    57
                ]
            },
            {
                23: [
                    2,
                    44
                ]
            },
            {
                23: [
                    2,
                    45
                ]
            },
            t(c, [
                2,
                28
            ]),
            t(c, [
                2,
                29
            ]),
            {
                39: [
                    1,
                    58
                ]
            },
            {
                39: [
                    1,
                    59
                ]
            },
            {
                43: [
                    1,
                    60
                ]
            },
            {
                23: [
                    1,
                    61
                ]
            },
            {
                23: [
                    1,
                    62
                ]
            },
            t(c, [
                2,
                13
            ], {
                13: [
                    1,
                    63
                ]
            }),
            {
                4: d,
                5: y,
                8: 8,
                9: 10,
                10: 12,
                11: 13,
                12: 14,
                15: k,
                16: u,
                18: E,
                20: [
                    1,
                    64
                ],
                21: T,
                23: R,
                24: G,
                25: j,
                26: U,
                27: z,
                28: M,
                31: 24,
                32: H,
                34: X,
                36: K,
                37: W,
                41: J,
                44: q,
                45: Q,
                46: Z,
                47: tt,
                50: w
            },
            t(c, [
                2,
                19
            ], {
                19: [
                    1,
                    65
                ]
            }),
            {
                30: [
                    1,
                    66
                ]
            },
            {
                23: [
                    1,
                    67
                ]
            },
            t(c, [
                2,
                31
            ]),
            t(c, [
                2,
                32
            ]),
            t(c, [
                2,
                33
            ]),
            t(et, [
                2,
                42
            ]),
            t(et, [
                2,
                43
            ]),
            t(c, [
                2,
                14
            ]),
            t(c, [
                2,
                18
            ]),
            t(Dt, f, {
                7: 68
            }),
            t(c, [
                2,
                25
            ]),
            t(c, [
                2,
                26
            ]),
            {
                4: d,
                5: y,
                8: 8,
                9: 10,
                10: 12,
                11: 13,
                12: 14,
                15: k,
                16: u,
                18: E,
                20: [
                    1,
                    69
                ],
                21: T,
                23: R,
                24: G,
                25: j,
                26: U,
                27: z,
                28: M,
                31: 24,
                32: H,
                34: X,
                36: K,
                37: W,
                41: J,
                44: q,
                45: Q,
                46: Z,
                47: tt,
                50: w
            },
            t(c, [
                2,
                20
            ])
        ],
        defaultActions: {
            5: [
                2,
                1
            ],
            6: [
                2,
                2
            ],
            44: [
                2,
                44
            ],
            45: [
                2,
                45
            ]
        },
        parseError: function parseError(r, n) {
            if (n.recoverable) this.trace(r);
            else {
                var i = new Error(r);
                throw i.hash = n, i;
            }
        },
        parse: function parse(r) {
            var n = this, i = [
                0
            ], o = [], p = [
                null
            ], e = [], $ = this.table, l = "", A = 0, O = 0, st = 2, B = 1, ft = e.slice.call(arguments, 1), S = Object.create(this.lexer), L = {
                yy: {}
            };
            for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy, dt) && (L.yy[dt] = this.yy[dt]);
            S.setInput(r, L.yy), L.yy.lexer = S, L.yy.parser = this, _type_of(S.yylloc) > "u" && (S.yylloc = {});
            var yt = S.yylloc;
            e.push(yt);
            var Gt = S.options && S.options.ranges;
            typeof L.yy.parseError == "function" ? this.parseError = L.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
            function jt() {
                var x;
                return x = o.pop() || S.lex() || B, typeof x != "number" && (_instanceof(x, Array) && (o = x, x = o.pop()), x = n.symbols_[x] || x), x;
            }
            for(var _, v, m, pt, N = {}, it, b, Ct, rt;;){
                if (v = i[i.length - 1], this.defaultActions[v] ? m = this.defaultActions[v] : ((_ === null || (typeof _ === "undefined" ? "undefined" : _type_of(_)) > "u") && (_ = jt()), m = $[v] && $[v][_]), (typeof m === "undefined" ? "undefined" : _type_of(m)) > "u" || !m.length || !m[0]) {
                    var St = "";
                    rt = [];
                    for(it in $[v])this.terminals_[it] && it > st && rt.push("'" + this.terminals_[it] + "'");
                    S.showPosition ? St = "Parse error on line " + (A + 1) + ":\n" + S.showPosition() + "\nExpecting " + rt.join(", ") + ", got '" + (this.terminals_[_] || _) + "'" : St = "Parse error on line " + (A + 1) + ": Unexpected " + (_ == B ? "end of input" : "'" + (this.terminals_[_] || _) + "'"), this.parseError(St, {
                        text: S.match,
                        token: this.terminals_[_] || _,
                        line: S.yylineno,
                        loc: yt,
                        expected: rt
                    });
                }
                if (_instanceof(m[0], Array) && m.length > 1) throw new Error("Parse Error: multiple actions possible at state: " + v + ", token: " + _);
                switch(m[0]){
                    case 1:
                        i.push(_), p.push(S.yytext), e.push(S.yylloc), i.push(m[1]), _ = null, O = S.yyleng, l = S.yytext, A = S.yylineno, yt = S.yylloc;
                        break;
                    case 2:
                        if (b = this.productions_[m[1]][1], N.$ = p[p.length - b], N._$ = {
                            first_line: e[e.length - (b || 1)].first_line,
                            last_line: e[e.length - 1].last_line,
                            first_column: e[e.length - (b || 1)].first_column,
                            last_column: e[e.length - 1].last_column
                        }, Gt && (N._$.range = [
                            e[e.length - (b || 1)].range[0],
                            e[e.length - 1].range[1]
                        ]), pt = this.performAction.apply(N, [
                            l,
                            O,
                            A,
                            L.yy,
                            m[1],
                            p,
                            e
                        ].concat(ft)), (typeof pt === "undefined" ? "undefined" : _type_of(pt)) < "u") return pt;
                        b && (i = i.slice(0, -1 * b * 2), p = p.slice(0, -1 * b), e = e.slice(0, -1 * b)), i.push(this.productions_[m[1]][0]), p.push(N.$), e.push(N._$), Ct = $[i[i.length - 2]][i[i.length - 1]], i.push(Ct);
                        break;
                    case 3:
                        return true;
                }
            }
            return true;
        }
    }, Yt = function() {
        var C = {
            EOF: 1,
            parseError: function parseError(n, i) {
                if (this.yy.parser) this.yy.parser.parseError(n, i);
                else throw new Error(n);
            },
            // resets the lexer, sets new input
            setInput: function setInput(r, n) {
                return this.yy = n || this.yy || {}, this._input = r, this._more = this._backtrack = this.done = false, 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 input() {
                var r = this._input[0];
                this.yytext += r, this.yyleng++, this.offset++, this.match += r, this.matched += r;
                var n = r.match(/(?:\r\n?|\n).*/g);
                return n ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), r;
            },
            // unshifts one char (or a string) into the input
            unput: function unput(r) {
                var n = r.length, i = r.split(/(?:\r\n?|\n)/g);
                this._input = r + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - n), this.offset -= n;
                var o = 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), i.length - 1 && (this.yylineno -= i.length - 1);
                var p = 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: i ? (i.length === o.length ? this.yylloc.first_column : 0) + o[o.length - i.length].length - i[0].length : this.yylloc.first_column - n
                }, this.options.ranges && (this.yylloc.range = [
                    p[0],
                    p[0] + this.yyleng - n
                ]), this.yyleng = this.yytext.length, this;
            },
            // When called from action, caches matched text and appends it on next action
            more: function more() {
                return this._more = true, 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 reject() {
                if (this.options.backtrack_lexer) this._backtrack = true;
                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).\n" + this.showPosition(), {
                    text: "",
                    token: null,
                    line: this.yylineno
                });
                return this;
            },
            // retain first n characters of the match
            less: function less(r) {
                this.unput(this.match.slice(r));
            },
            // displays already matched input, i.e. for error messages
            pastInput: function pastInput() {
                var r = this.matched.substr(0, this.matched.length - this.match.length);
                return (r.length > 20 ? "..." : "") + r.substr(-20).replace(/\n/g, "");
            },
            // displays upcoming input, i.e. for error messages
            upcomingInput: function upcomingInput() {
                var r = this.match;
                return r.length < 20 && (r += this._input.substr(0, 20 - r.length)), (r.substr(0, 20) + (r.length > 20 ? "..." : "")).replace(/\n/g, "");
            },
            // displays the character position where the lexing error occurred, i.e. for error messages
            showPosition: function showPosition() {
                var r = this.pastInput(), n = new Array(r.length + 1).join("-");
                return r + this.upcomingInput() + "\n" + n + "^";
            },
            // test the lexed token: return FALSE when not a match, otherwise return token
            test_match: function test_match(r, n) {
                var i, o, p;
                if (this.options.backtrack_lexer && (p = {
                    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 && (p.yylloc.range = this.yylloc.range.slice(0))), o = r[0].match(/(?:\r\n?|\n).*/g), o && (this.yylineno += o.length), this.yylloc = {
                    first_line: this.yylloc.last_line,
                    last_line: this.yylineno + 1,
                    first_column: this.yylloc.last_column,
                    last_column: o ? o[o.length - 1].length - o[o.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + r[0].length
                }, this.yytext += r[0], this.match += r[0], this.matches = r, this.yyleng = this.yytext.length, this.options.ranges && (this.yylloc.range = [
                    this.offset,
                    this.offset += this.yyleng
                ]), this._more = false, this._backtrack = false, this._input = this._input.slice(r[0].length), this.matched += r[0], i = this.performAction.call(this, this.yy, this, n, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = false), i) return i;
                if (this._backtrack) {
                    for(var e in p)this[e] = p[e];
                    return false;
                }
                return false;
            },
            // return next match in input
            next: function next() {
                if (this.done) return this.EOF;
                this._input || (this.done = true);
                var r, n, i, o;
                this._more || (this.yytext = "", this.match = "");
                for(var p = this._currentRules(), e = 0; e < p.length; e++)if (i = this._input.match(this.rules[p[e]]), i && (!n || i[0].length > n[0].length)) {
                    if (n = i, o = e, this.options.backtrack_lexer) {
                        if (r = this.test_match(i, p[e]), r !== false) return r;
                        if (this._backtrack) {
                            n = false;
                            continue;
                        } else return false;
                    } else if (!this.options.flex) break;
                }
                return n ? (r = this.test_match(n, p[o]), r !== false ? r : false) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), {
                    text: "",
                    token: null,
                    line: this.yylineno
                });
            },
            // return next match that has a token
            lex: function lex() {
                var n = this.next();
                return n || this.lex();
            },
            // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
            begin: function begin(n) {
                this.conditionStack.push(n);
            },
            // pop the previously active lexer condition state off the condition stack
            popState: function popState() {
                var n = this.conditionStack.length - 1;
                return n > 0 ? this.conditionStack.pop() : this.conditionStack[0];
            },
            // produce the lexer rule set which is active for the currently active lexer condition state
            _currentRules: function _currentRules() {
                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 topState(n) {
                return n = this.conditionStack.length - 1 - Math.abs(n || 0), n >= 0 ? this.conditionStack[n] : "INITIAL";
            },
            // alias for begin(condition)
            pushState: function pushState(n) {
                this.begin(n);
            },
            // return the number of states currently on the stack
            stateStackSize: function stateStackSize() {
                return this.conditionStack.length;
            },
            options: {
                "case-insensitive": true
            },
            performAction: function performAction(n, i, o, p) {
                switch(o){
                    case 0:
                        return 40;
                    case 1:
                        return 44;
                    case 2:
                        return 45;
                    case 3:
                        return 46;
                    case 4:
                        return 47;
                    case 5:
                        break;
                    case 6:
                        break;
                    case 7:
                        return 5;
                    case 8:
                        break;
                    case 9:
                        break;
                    case 10:
                        break;
                    case 11:
                        break;
                    case 12:
                        return this.pushState("SCALE"), 16;
                    case 13:
                        return 17;
                    case 14:
                        this.popState();
                        break;
                    case 15:
                        return this.begin("acc_title"), 32;
                    case 16:
                        return this.popState(), "acc_title_value";
                    case 17:
                        return this.begin("acc_descr"), 34;
                    case 18:
                        return this.popState(), "acc_descr_value";
                    case 19:
                        this.begin("acc_descr_multiline");
                        break;
                    case 20:
                        this.popState();
                        break;
                    case 21:
                        return "acc_descr_multiline_value";
                    case 22:
                        return this.pushState("CLASSDEF"), 37;
                    case 23:
                        return this.popState(), this.pushState("CLASSDEFID"), "DEFAULT_CLASSDEF_ID";
                    case 24:
                        return this.popState(), this.pushState("CLASSDEFID"), 38;
                    case 25:
                        return this.popState(), 39;
                    case 26:
                        return this.pushState("CLASS"), 41;
                    case 27:
                        return this.popState(), this.pushState("CLASS_STYLE"), 42;
                    case 28:
                        return this.popState(), 43;
                    case 29:
                        return this.pushState("SCALE"), 16;
                    case 30:
                        return 17;
                    case 31:
                        this.popState();
                        break;
                    case 32:
                        this.pushState("STATE");
                        break;
                    case 33:
                        return this.popState(), i.yytext = i.yytext.slice(0, -8).trim(), 24;
                    case 34:
                        return this.popState(), i.yytext = i.yytext.slice(0, -8).trim(), 25;
                    case 35:
                        return this.popState(), i.yytext = i.yytext.slice(0, -10).trim(), 26;
                    case 36:
                        return this.popState(), i.yytext = i.yytext.slice(0, -8).trim(), 24;
                    case 37:
                        return this.popState(), i.yytext = i.yytext.slice(0, -8).trim(), 25;
                    case 38:
                        return this.popState(), i.yytext = i.yytext.slice(0, -10).trim(), 26;
                    case 39:
                        return 44;
                    case 40:
                        return 45;
                    case 41:
                        return 46;
                    case 42:
                        return 47;
                    case 43:
                        this.pushState("STATE_STRING");
                        break;
                    case 44:
                        return this.pushState("STATE_ID"), "AS";
                    case 45:
                        return this.popState(), "ID";
                    case 46:
                        this.popState();
                        break;
                    case 47:
                        return "STATE_DESCR";
                    case 48:
                        return 18;
                    case 49:
                        this.popState();
                        break;
                    case 50:
                        return this.popState(), this.pushState("struct"), 19;
                    case 51:
                        break;
                    case 52:
                        return this.popState(), 20;
                    case 53:
                        break;
                    case 54:
                        return this.begin("NOTE"), 28;
                    case 55:
                        return this.popState(), this.pushState("NOTE_ID"), 52;
                    case 56:
                        return this.popState(), this.pushState("NOTE_ID"), 53;
                    case 57:
                        this.popState(), this.pushState("FLOATING_NOTE");
                        break;
                    case 58:
                        return this.popState(), this.pushState("FLOATING_NOTE_ID"), "AS";
                    case 59:
                        break;
                    case 60:
                        return "NOTE_TEXT";
                    case 61:
                        return this.popState(), "ID";
                    case 62:
                        return this.popState(), this.pushState("NOTE_TEXT"), 23;
                    case 63:
                        return this.popState(), i.yytext = i.yytext.substr(2).trim(), 30;
                    case 64:
                        return this.popState(), i.yytext = i.yytext.slice(0, -8).trim(), 30;
                    case 65:
                        return 6;
                    case 66:
                        return 6;
                    case 67:
                        return 15;
                    case 68:
                        return 50;
                    case 69:
                        return 23;
                    case 70:
                        return i.yytext = i.yytext.trim(), 13;
                    case 71:
                        return 14;
                    case 72:
                        return 27;
                    case 73:
                        return 51;
                    case 74:
                        return 5;
                    case 75:
                        return "INVALID";
                }
            },
            rules: [
                /^(?:default\b)/i,
                /^(?:.*direction\s+TB[^\n]*)/i,
                /^(?:.*direction\s+BT[^\n]*)/i,
                /^(?:.*direction\s+RL[^\n]*)/i,
                /^(?:.*direction\s+LR[^\n]*)/i,
                /^(?:%%(?!\{)[^\n]*)/i,
                /^(?:[^\}]%%[^\n]*)/i,
                /^(?:[\n]+)/i,
                /^(?:[\s]+)/i,
                /^(?:((?!\n)\s)+)/i,
                /^(?:#[^\n]*)/i,
                /^(?:%[^\n]*)/i,
                /^(?:scale\s+)/i,
                /^(?:\d+)/i,
                /^(?:\s+width\b)/i,
                /^(?:accTitle\s*:\s*)/i,
                /^(?:(?!\n||)*[^\n]*)/i,
                /^(?:accDescr\s*:\s*)/i,
                /^(?:(?!\n||)*[^\n]*)/i,
                /^(?:accDescr\s*\{\s*)/i,
                /^(?:[\}])/i,
                /^(?:[^\}]*)/i,
                /^(?:classDef\s+)/i,
                /^(?:DEFAULT\s+)/i,
                /^(?:\w+\s+)/i,
                /^(?:[^\n]*)/i,
                /^(?:class\s+)/i,
                /^(?:(\w+)+((,\s*\w+)*))/i,
                /^(?:[^\n]*)/i,
                /^(?:scale\s+)/i,
                /^(?:\d+)/i,
                /^(?:\s+width\b)/i,
                /^(?:state\s+)/i,
                /^(?:.*<<fork>>)/i,
                /^(?:.*<<join>>)/i,
                /^(?:.*<<choice>>)/i,
                /^(?:.*\[\[fork\]\])/i,
                /^(?:.*\[\[join\]\])/i,
                /^(?:.*\[\[choice\]\])/i,
                /^(?:.*direction\s+TB[^\n]*)/i,
                /^(?:.*direction\s+BT[^\n]*)/i,
                /^(?:.*direction\s+RL[^\n]*)/i,
                /^(?:.*direction\s+LR[^\n]*)/i,
                /^(?:["])/i,
                /^(?:\s*as\s+)/i,
                /^(?:[^\n\{]*)/i,
                /^(?:["])/i,
                /^(?:[^"]*)/i,
                /^(?:[^\n\s\{]+)/i,
                /^(?:\n)/i,
                /^(?:\{)/i,
                /^(?:%%(?!\{)[^\n]*)/i,
                /^(?:\})/i,
                /^(?:[\n])/i,
                /^(?:note\s+)/i,
                /^(?:left of\b)/i,
                /^(?:right of\b)/i,
                /^(?:")/i,
                /^(?:\s*as\s*)/i,
                /^(?:["])/i,
                /^(?:[^"]*)/i,
                /^(?:[^\n]*)/i,
                /^(?:\s*[^:\n\s\-]+)/i,
                /^(?:\s*:[^:\n;]+)/i,
                /^(?:[\s\S]*?end note\b)/i,
                /^(?:stateDiagram\s+)/i,
                /^(?:stateDiagram-v2\s+)/i,
                /^(?:hide empty description\b)/i,
                /^(?:\[\*\])/i,
                /^(?:[^:\n\s\-\{]+)/i,
                /^(?:\s*:[^:\n;]+)/i,
                /^(?:-->)/i,
                /^(?:--)/i,
                /^(?::::)/i,
                /^(?:$)/i,
                /^(?:.)/i
            ],
            conditions: {
                LINE: {
                    rules: [
                        9,
                        10
                    ],
                    inclusive: false
                },
                struct: {
                    rules: [
                        9,
                        10,
                        22,
                        26,
                        32,
                        39,
                        40,
                        41,
                        42,
                        51,
                        52,
                        53,
                        54,
                        68,
                        69,
                        70,
                        71,
                        72
                    ],
                    inclusive: false
                },
                FLOATING_NOTE_ID: {
                    rules: [
                        61
                    ],
                    inclusive: false
                },
                FLOATING_NOTE: {
                    rules: [
                        58,
                        59,
                        60
                    ],
                    inclusive: false
                },
                NOTE_TEXT: {
                    rules: [
                        63,
                        64
                    ],
                    inclusive: false
                },
                NOTE_ID: {
                    rules: [
                        62
                    ],
                    inclusive: false
                },
                NOTE: {
                    rules: [
                        55,
                        56,
                        57
                    ],
                    inclusive: false
                },
                CLASS_STYLE: {
                    rules: [
                        28
                    ],
                    inclusive: false
                },
                CLASS: {
                    rules: [
                        27
                    ],
                    inclusive: false
                },
                CLASSDEFID: {
                    rules: [
                        25
                    ],
                    inclusive: false
                },
                CLASSDEF: {
                    rules: [
                        23,
                        24
                    ],
                    inclusive: false
                },
                acc_descr_multiline: {
                    rules: [
                        20,
                        21
                    ],
                    inclusive: false
                },
                acc_descr: {
                    rules: [
                        18
                    ],
                    inclusive: false
                },
                acc_title: {
                    rules: [
                        16
                    ],
                    inclusive: false
                },
                SCALE: {
                    rules: [
                        13,
                        14,
                        30,
                        31
                    ],
                    inclusive: false
                },
                ALIAS: {
                    rules: [],
                    inclusive: false
                },
                STATE_ID: {
                    rules: [
                        45
                    ],
                    inclusive: false
                },
                STATE_STRING: {
                    rules: [
                        46,
                        47
                    ],
                    inclusive: false
                },
                FORK_STATE: {
                    rules: [],
                    inclusive: false
                },
                STATE: {
                    rules: [
                        9,
                        10,
                        33,
                        34,
                        35,
                        36,
                        37,
                        38,
                        43,
                        44,
                        48,
                        49,
                        50
                    ],
                    inclusive: false
                },
                ID: {
                    rules: [
                        9,
                        10
                    ],
                    inclusive: false
                },
                INITIAL: {
                    rules: [
                        0,
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        10,
                        11,
                        12,
                        15,
                        17,
                        19,
                        22,
                        26,
                        29,
                        32,
                        50,
                        54,
                        65,
                        66,
                        67,
                        68,
                        69,
                        70,
                        71,
                        73,
                        74,
                        75
                    ],
                    inclusive: true
                }
            }
        };
        return C;
    }();
    ht.lexer = Yt;
    function ut() {
        this.yy = {};
    }
    return ut.prototype = ht, ht.Parser = ut, new ut();
}();
gt.parser = gt;
var De = gt, qt = "LR", Ce = "TB", _t = "state", It = "relation", Qt = "classDef", Zt = "applyClass", Et = "default", te = "divider", bt = "[*]", Ot = "start", Nt = bt, Rt = "end", At = "color", Lt = "fill", ee = "bgFill", se = ",";
function wt() {
    return {};
}
var $t = qt, lt = [], P = wt();
var Bt = function() {
    return {
        relations: [],
        states: {},
        documents: {}
    };
};
var ct = {
    root: Bt()
}, g = ct.root, F = 0, vt = 0;
var ie = {
    LINE: 0,
    DOTTED_LINE: 1
}, re = {
    AGGREGATION: 0,
    EXTENSION: 1,
    COMPOSITION: 2,
    DEPENDENCY: 3
}, nt = function(t) {
    return JSON.parse(JSON.stringify(t));
}, ne = function(t) {
    L.info("Setting root doc", t), lt = t;
}, ae = function() {
    return lt;
}, at = function(t, s, a) {
    if (s.stmt === It) at(t, s.state1, true), at(t, s.state2, false);
    else if (s.stmt === _t && (s.id === "[*]" ? (s.id = a ? t.id + "_start" : t.id + "_end", s.start = a) : s.id = s.id.trim()), s.doc) {
        var h = [];
        var f = [], d;
        for(d = 0; d < s.doc.length; d++)if (s.doc[d].type === te) {
            var y = nt(s.doc[d]);
            y.doc = nt(f), h.push(y), f = [];
        } else f.push(s.doc[d]);
        if (h.length > 0 && f.length > 0) {
            var y1 = {
                stmt: _t,
                id: F0(),
                type: "divider",
                doc: nt(f)
            };
            h.push(nt(y1)), s.doc = h;
        }
        s.doc.forEach(function(y) {
            return at(s, y, true);
        });
    }
}, le = function() {
    return at({
        id: "root"
    }, {
        id: "root",
        doc: lt
    }, true), {
        id: "root",
        doc: lt
    };
}, ce = function(t) {
    var s;
    t.doc ? s = t.doc : s = t, L.info(s), Pt(true), L.info("Extract", s), s.forEach(function(a) {
        switch(a.stmt){
            case _t:
                I(a.id.trim(), a.type, a.doc, a.description, a.note, a.classes, a.styles, a.textStyles);
                break;
            case It:
                Ft(a.state1, a.state2, a.description);
                break;
            case Qt:
                Vt(a.id.trim(), a.classes);
                break;
            case Zt:
                xt(a.id.trim(), a.styleClass);
                break;
        }
    });
}, I = function I(t) {
    var s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : Et, a = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, h = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : null, f = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : null, d = arguments.length > 5 && arguments[5] !== void 0 ? arguments[5] : null, y = arguments.length > 6 && arguments[6] !== void 0 ? arguments[6] : null, k = arguments.length > 7 && arguments[7] !== void 0 ? arguments[7] : null;
    var u = t == null ? void 0 : t.trim();
    g.states[u] === void 0 ? (L.info("Adding state ", u, h), g.states[u] = {
        id: u,
        descriptions: [],
        type: s,
        doc: a,
        note: f,
        classes: [],
        styles: [],
        textStyles: []
    }) : (g.states[u].doc || (g.states[u].doc = a), g.states[u].type || (g.states[u].type = s)), h && (L.info("Setting state description", u, h), typeof h == "string" && kt(u, h.trim()), (typeof h === "undefined" ? "undefined" : _type_of(h)) == "object" && h.forEach(function(E) {
        return kt(u, E.trim());
    })), f && (g.states[u].note = f, g.states[u].note.text = $n.sanitizeText(g.states[u].note.text, Vn())), d && (L.info("Setting state classes", u, d), (typeof d == "string" ? [
        d
    ] : d).forEach(function(T) {
        return xt(u, T.trim());
    })), y && (L.info("Setting state styles", u, y), (typeof y == "string" ? [
        y
    ] : y).forEach(function(T) {
        return _e(u, T.trim());
    })), k && (L.info("Setting state styles", u, y), (typeof k == "string" ? [
        k
    ] : k).forEach(function(T) {
        return me(u, T.trim());
    }));
}, Pt = function Pt(t) {
    ct = {
        root: Bt()
    }, g = ct.root, F = 0, P = wt(), t || B_();
}, V = function V(t) {
    return g.states[t];
}, oe = function oe() {
    return g.states;
}, he = function he() {
    L.info("Documents = ", ct);
}, ue = function ue() {
    return g.relations;
};
function mt() {
    var t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "";
    var s = t;
    return t === bt && (F++, s = "".concat(Ot).concat(F)), s;
}
function Tt() {
    var t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : Et;
    return t === bt ? Ot : s;
}
function fe() {
    var t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "";
    var s = t;
    return t === Nt && (F++, s = "".concat(Rt).concat(F)), s;
}
function de() {
    var t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : Et;
    return t === Nt ? Rt : s;
}
function ye(t, s, a) {
    var h = mt(t.id.trim()), f = Tt(t.id.trim(), t.type), d = mt(s.id.trim()), y = Tt(s.id.trim(), s.type);
    I(h, f, t.doc, t.description, t.note, t.classes, t.styles, t.textStyles), I(d, y, s.doc, s.description, s.note, s.classes, s.styles, s.textStyles), g.relations.push({
        id1: h,
        id2: d,
        relationTitle: $n.sanitizeText(a, Vn())
    });
}
var Ft = function Ft(t, s, a) {
    if ((typeof t === "undefined" ? "undefined" : _type_of(t)) == "object") ye(t, s, a);
    else {
        var h = mt(t.trim()), f = Tt(t), d = fe(s.trim()), y = de(s);
        I(h, f), I(d, y), g.relations.push({
            id1: h,
            id2: d,
            title: $n.sanitizeText(a, Vn())
        });
    }
}, kt = function kt(t, s) {
    var a = g.states[t], h = s.startsWith(":") ? s.replace(":", "").trim() : s;
    a.descriptions.push($n.sanitizeText(h, Vn()));
}, pe = function pe(t) {
    return t.substring(0, 1) === ":" ? t.substr(2).trim() : t.trim();
}, Se = function() {
    return vt++, "divider-id-" + vt;
}, Vt = function Vt(t) {
    var s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
    P[t] === void 0 && (P[t] = {
        id: t,
        styles: [],
        textStyles: []
    });
    var a = P[t];
    s != null && s.split(se).forEach(function(h) {
        var f = h.replace(/([^;]*);/, "$1").trim();
        if (h.match(At)) {
            var y = f.replace(Lt, ee).replace(At, Lt);
            a.textStyles.push(y);
        }
        a.styles.push(f);
    });
}, ge = function ge() {
    return P;
}, xt = function xt(t, s) {
    t.split(",").forEach(function(a) {
        var h = V(a);
        if (h === void 0) {
            var f = a.trim();
            I(f), h = V(f);
        }
        h.classes.push(s);
    });
}, _e = function _e(t, s) {
    var a = V(t);
    a !== void 0 && a.textStyles.push(s);
}, me = function me(t, s) {
    var a = V(t);
    a !== void 0 && a.textStyles.push(s);
}, Te = function() {
    return $t;
}, ke = function(t) {
    $t = t;
}, Ee = function(t) {
    return t && t[0] === ":" ? t.substr(1).trim() : t.trim();
}, Ae = {
    getConfig: function() {
        return Vn().state;
    },
    addState: I,
    clear: Pt,
    getState: V,
    getStates: oe,
    getRelations: ue,
    getClasses: ge,
    getDirection: Te,
    addRelation: Ft,
    getDividerId: Se,
    setDirection: ke,
    cleanupLabel: pe,
    lineType: ie,
    relationType: re,
    logDocuments: he,
    getRootDoc: ae,
    setRootDoc: ne,
    getRootDocV2: le,
    extract: ce,
    trimColon: Ee,
    getAccTitle: A_,
    setAccTitle: F_,
    getAccDescription: E_,
    setAccDescription: L_,
    addStyleClass: Vt,
    setCssClass: xt,
    addDescription: kt,
    setDiagramTitle: M_,
    getDiagramTitle: O_
}, be = function(t) {
    return "\ndefs #statediagram-barbEnd {\n    fill: ".concat(t.transitionColor, ";\n    stroke: ").concat(t.transitionColor, ";\n  }\ng.stateGroup text {\n  fill: ").concat(t.nodeBorder, ";\n  stroke: none;\n  font-size: 10px;\n}\ng.stateGroup text {\n  fill: ").concat(t.textColor, ";\n  stroke: none;\n  font-size: 10px;\n\n}\ng.stateGroup .state-title {\n  font-weight: bolder;\n  fill: ").concat(t.stateLabelColor, ";\n}\n\ng.stateGroup rect {\n  fill: ").concat(t.mainBkg, ";\n  stroke: ").concat(t.nodeBorder, ";\n}\n\ng.stateGroup line {\n  stroke: ").concat(t.lineColor, ";\n  stroke-width: 1;\n}\n\n.transition {\n  stroke: ").concat(t.transitionColor, ";\n  stroke-width: 1;\n  fill: none;\n}\n\n.stateGroup .composit {\n  fill: ").concat(t.background, ";\n  border-bottom: 1px\n}\n\n.stateGroup .alt-composit {\n  fill: #e0e0e0;\n  border-bottom: 1px\n}\n\n.state-note {\n  stroke: ").concat(t.noteBorderColor, ";\n  fill: ").concat(t.noteBkgColor, ";\n\n  text {\n    fill: ").concat(t.noteTextColor, ";\n    stroke: none;\n    font-size: 10px;\n  }\n}\n\n.stateLabel .box {\n  stroke: none;\n  stroke-width: 0;\n  fill: ").concat(t.mainBkg, ";\n  opacity: 0.5;\n}\n\n.edgeLabel .label rect {\n  fill: ").concat(t.labelBackgroundColor, ";\n  opacity: 0.5;\n}\n.edgeLabel .label text {\n  fill: ").concat(t.transitionLabelColor || t.tertiaryTextColor, ";\n}\n.label div .edgeLabel {\n  color: ").concat(t.transitionLabelColor || t.tertiaryTextColor, ";\n}\n\n.stateLabel text {\n  fill: ").concat(t.stateLabelColor, ";\n  font-size: 10px;\n  font-weight: bold;\n}\n\n.node circle.state-start {\n  fill: ").concat(t.specialStateColor, ";\n  stroke: ").concat(t.specialStateColor, ";\n}\n\n.node .fork-join {\n  fill: ").concat(t.specialStateColor, ";\n  stroke: ").concat(t.specialStateColor, ";\n}\n\n.node circle.state-end {\n  fill: ").concat(t.innerEndBackground, ";\n  stroke: ").concat(t.background, ";\n  stroke-width: 1.5\n}\n.end-state-inner {\n  fill: ").concat(t.compositeBackground || t.background, ";\n  // stroke: ").concat(t.background, ";\n  stroke-width: 1.5\n}\n\n.node rect {\n  fill: ").concat(t.stateBkg || t.mainBkg, ";\n  stroke: ").concat(t.stateBorder || t.nodeBorder, ";\n  stroke-width: 1px;\n}\n.node polygon {\n  fill: ").concat(t.mainBkg, ";\n  stroke: ").concat(t.stateBorder || t.nodeBorder, ";;\n  stroke-width: 1px;\n}\n#statediagram-barbEnd {\n  fill: ").concat(t.lineColor, ";\n}\n\n.statediagram-cluster rect {\n  fill: ").concat(t.compositeTitleBackground, ";\n  stroke: ").concat(t.stateBorder || t.nodeBorder, ";\n  stroke-width: 1px;\n}\n\n.cluster-label, .nodeLabel {\n  color: ").concat(t.stateLabelColor, ";\n}\n\n.statediagram-cluster rect.outer {\n  rx: 5px;\n  ry: 5px;\n}\n.statediagram-state .divider {\n  stroke: ").concat(t.stateBorder || t.nodeBorder, ";\n}\n\n.statediagram-state .title-state {\n  rx: 5px;\n  ry: 5px;\n}\n.statediagram-cluster.statediagram-cluster .inner {\n  fill: ").concat(t.compositeBackground || t.background, ";\n}\n.statediagram-cluster.statediagram-cluster-alt .inner {\n  fill: ").concat(t.altBackground ? t.altBackground : "#efefef", ";\n}\n\n.statediagram-cluster .inner {\n  rx:0;\n  ry:0;\n}\n\n.statediagram-state rect.basic {\n  rx: 5px;\n  ry: 5px;\n}\n.statediagram-state rect.divider {\n  stroke-dasharray: 10,10;\n  fill: ").concat(t.altBackground ? t.altBackground : "#efefef", ";\n}\n\n.note-edge {\n  stroke-dasharray: 5;\n}\n\n.statediagram-note rect {\n  fill: ").concat(t.noteBkgColor, ";\n  stroke: ").concat(t.noteBorderColor, ";\n  stroke-width: 1px;\n  rx: 0;\n  ry: 0;\n}\n.statediagram-note rect {\n  fill: ").concat(t.noteBkgColor, ";\n  stroke: ").concat(t.noteBorderColor, ";\n  stroke-width: 1px;\n  rx: 0;\n  ry: 0;\n}\n\n.statediagram-note text {\n  fill: ").concat(t.noteTextColor, ";\n}\n\n.statediagram-note .nodeLabel {\n  color: ").concat(t.noteTextColor, ";\n}\n.statediagram .edgeLabel {\n  color: red; // ").concat(t.noteTextColor, ";\n}\n\n#dependencyStart, #dependencyEnd {\n  fill: ").concat(t.lineColor, ";\n  stroke: ").concat(t.lineColor, ";\n  stroke-width: 1;\n}\n\n.statediagramTitleText {\n  text-anchor: middle;\n  font-size: 18px;\n  fill: ").concat(t.textColor, ";\n}\n");
}, Le = be;

export { Ae as A, Ce as C, De as D, Et as E, It as I, Le as L, _t as _, te as t };
