UNPKG

mermaid

Version:

Markdownish syntax for generating flowcharts, sequence diagrams and gantt charts.

1,299 lines 226 kB
<!DOCTYPE html>
<html>
<head>
  <title>flow3.js</title>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <link rel="stylesheet" media="all" href="../../../../doc-style.css" />
  <script src="../../../../doc-filelist.js"></script>
  <script>
    var relativeDir = "../../../../", thisFile = "Users/knut/Documents/source/mermaid/src/diagrams/example/parser/flow3.js", defaultSidebar = true;
  </script>
  <script src="../../../../doc-script.js"></script>
  <script src="../../../../mermaid.js"></script>
  <link rel="stylesheet" href="../../../../mermaid.css" />
</head>
<body>
  <div id="sidebar_wrapper">
    <div id="sidebar_switch">
      <span class="tree">Files</span>
      <span class="headings">Headings</span>
    </div>
    <div id="tree"></div>
    <div id="headings">
      <div class="heading h1">
        <a href="#flow3.js">flow3.js</a>
      </div>
    </div>
  </div>
  <div id="sidebar-toggle"></div>
  <div id="container"><div class="background highlight"></div>
<table cellpadding="0" cellspacing="0">
  <tbody>
      <tr>
        <td class="docs">
        <div class="pilwrap" id="flow3.js">
          <h1>
              <a href="#flow3.js" name="flow3.js" class="pilcrow">&#182;</a>flow3.js
          </h1>
        </div>
        </td>
        <td class="code highlight"></td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-1" id="section-1">&#182;</a>
</div>

        </td>
        <td class="code highlight"><div class="highlight"><pre><span class="cm">/* parser generated by jison 0.4.15 */</span>

</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-2" id="section-2">&#182;</a>
</div>
<div class="dox">
  <div class="summary"><p>Returns a Parser object of the following structure:</p>

  </div>
  <div class="body"><p>Parser: {
yy: {}
}</p>
<p>Parser.prototype: {
yy: {},
trace: function(),
symbols<em>: {associative list: name ==&gt; number},
terminals</em>: {associative list: number ==&gt; name},
productions<em>: [...],
performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, </em>$),
table: [...],
defaultActions: {...},
parseError: function(str, hash),
parse: function(input),</p>
<p>lexer: {
EOF: 1,
parseError: function(str, hash),
setInput: function(input),
input: function(),
unput: function(str),
more: function(),
less: function(n),
pastInput: function(),
upcomingInput: function(),
showPosition: function(),
test<em>match: function(regex_match_array, rule_index),
next: function(),
lex: function(),
begin: function(condition),
popState: function(),
_currentRules: function(),
topState: function(),
pushState: function(condition),</p>
<p>options: {
ranges: boolean           (optional: true ==&gt; token location info will include a .range[] member)
flex: boolean             (optional: true ==&gt; flex-like lexing behaviour where the rules are tested exhaustively to find the longest match)
backtrack_lexer: boolean  (optional: true ==&gt; lexer regexes are tested in order and for each matching regex the action code is invoked; the lexer terminates the scan when a token is returned by the action code)
},</p>
<p>performAction: function(yy, yy</em>, $avoiding<em>name_collisions, YY_START),
rules: [...],
conditions: {associative list: name ==&gt; set},
}
}</p>
<p>token location info (@$, </em>$, etc.): {
first_line: n,
last_line: n,
first_column: n,
last_column: n,
range: [start_number, end_number]       (where the numbers are indexes into the input string, regular zero-based)
}</p>
<p>the parseError function receives a &#39;hash&#39; object with these members for lexer and parser errors: {
text:        (matched text)
token:       (the produced terminal token, if any)
line:        (yylineno)
}
while parser (grammar) errors will also provide these members, i.e. parser errors deliver a superset of attributes: {
loc:         (yylloc)
expected:    (string describing the set of expected tokens)
recoverable: (boolean: TRUE when the parser has a error recovery rule available for this particular error)
}</p>

  </div>
</div>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="kd">var</span> <span class="nx">parser</span> <span class="o">=</span> <span class="p">(</span><span class="kd">function</span><span class="p">(){</span>
<span class="kd">var</span> <span class="nx">o</span><span class="o">=</span><span class="kd">function</span><span class="p">(</span><span class="nx">k</span><span class="p">,</span><span class="nx">v</span><span class="p">,</span><span class="nx">o</span><span class="p">,</span><span class="nx">l</span><span class="p">){</span><span class="k">for</span><span class="p">(</span><span class="nx">o</span><span class="o">=</span><span class="nx">o</span><span class="o">||</span><span class="p">{},</span><span class="nx">l</span><span class="o">=</span><span class="nx">k</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span><span class="nx">l</span><span class="o">--</span><span class="p">;</span><span class="nx">o</span><span class="p">[</span><span class="nx">k</span><span class="p">[</span><span class="nx">l</span><span class="p">]]</span><span class="o">=</span><span class="nx">v</span><span class="p">);</span><span class="k">return</span> <span class="nx">o</span><span class="p">},</span><span class="nx">$V0</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">14</span><span class="p">,</span><span class="mi">15</span><span class="p">,</span><span class="mi">16</span><span class="p">,</span><span class="mi">72</span><span class="p">,</span><span class="mi">76</span><span class="p">,</span><span class="mi">78</span><span class="p">,</span><span class="mi">79</span><span class="p">,</span><span class="mi">81</span><span class="p">,</span><span class="mi">82</span><span class="p">,</span><span class="mi">84</span><span class="p">,</span><span class="mi">85</span><span class="p">,</span><span class="mi">86</span><span class="p">],</span><span class="nx">$V1</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">20</span><span class="p">],</span><span class="nx">$V2</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">22</span><span class="p">],</span><span class="nx">$V3</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">19</span><span class="p">],</span><span class="nx">$V4</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">21</span><span class="p">],</span><span class="nx">$V5</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">27</span><span class="p">],</span><span class="nx">$V6</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">26</span><span class="p">],</span><span class="nx">$V7</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">23</span><span class="p">],</span><span class="nx">$V8</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">24</span><span class="p">],</span><span class="nx">$V9</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">25</span><span class="p">],</span><span class="nx">$Va</span><span class="o">=</span><span class="p">[</span><span class="mi">15</span><span class="p">,</span><span class="mi">21</span><span class="p">,</span><span class="mi">22</span><span class="p">,</span><span class="mi">23</span><span class="p">,</span><span class="mi">24</span><span class="p">,</span><span class="mi">25</span><span class="p">,</span><span class="mi">72</span><span class="p">,</span><span class="mi">76</span><span class="p">,</span><span class="mi">78</span><span class="p">,</span><span class="mi">79</span><span class="p">,</span><span class="mi">81</span><span class="p">,</span><span class="mi">82</span><span class="p">,</span><span class="mi">84</span><span class="p">,</span><span class="mi">85</span><span class="p">,</span><span class="mi">86</span><span class="p">];</span>
<span class="kd">var</span> <span class="nx">parser</span> <span class="o">=</span> <span class="p">{</span><span class="nx">trace</span><span class="o">:</span> <span class="kd">function</span> <span class="nx">trace</span><span class="p">()</span> <span class="p">{</span> <span class="p">},</span>
<span class="nx">yy</span><span class="o">:</span> <span class="p">{},</span>
<span class="nx">symbols_</span><span class="o">:</span> <span class="p">{</span><span class="s2">&quot;error&quot;</span><span class="o">:</span><span class="mi">2</span><span class="p">,</span><span class="s2">&quot;mermaidDoc&quot;</span><span class="o">:</span><span class="mi">3</span><span class="p">,</span><span class="s2">&quot;graphConfig&quot;</span><span class="o">:</span><span class="mi">4</span><span class="p">,</span><span class="s2">&quot;document&quot;</span><span class="o">:</span><span class="mi">5</span><span class="p">,</span><span class="s2">&quot;GRAPH&quot;</span><span class="o">:</span><span class="mi">6</span><span class="p">,</span><span class="s2">&quot;DIR&quot;</span><span class="o">:</span><span class="mi">7</span><span class="p">,</span><span class="s2">&quot;TAGEND&quot;</span><span class="o">:</span><span class="mi">8</span><span class="p">,</span><span class="s2">&quot;TAGSTART&quot;</span><span class="o">:</span><span class="mi">9</span><span class="p">,</span><span class="s2">&quot;UP&quot;</span><span class="o">:</span><span class="mi">10</span><span class="p">,</span><span class="s2">&quot;DOWN&quot;</span><span class="o">:</span><span class="mi">11</span><span class="p">,</span><span class="s2">&quot;line&quot;</span><span class="o">:</span><span class="mi">12</span><span class="p">,</span><span class="s2">&quot;statement&quot;</span><span class="o">:</span><span class="mi">13</span><span class="p">,</span><span class="s2">&quot;NEWLINE&quot;</span><span class="o">:</span><span class="mi">14</span><span class="p">,</span><span class="s2">&quot;EOF&quot;</span><span class="o">:</span><span class="mi">15</span><span class="p">,</span><span class="s2">&quot;SEMI&quot;</span><span class="o">:</span><span class="mi">16</span><span class="p">,</span><span class="s2">&quot;verticeStatement&quot;</span><span class="o">:</span><span class="mi">17</span><span class="p">,</span><span class="s2">&quot;vertex&quot;</span><span class="o">:</span><span class="mi">18</span><span class="p">,</span><span class="s2">&quot;alphaNum&quot;</span><span class="o">:</span><span class="mi">19</span><span class="p">,</span><span class="s2">&quot;vertexType&quot;</span><span class="o">:</span><span class="mi">20</span><span class="p">,</span><span class="s2">&quot;SQUARE&quot;</span><span class="o">:</span><span class="mi">21</span><span class="p">,</span><span class="s2">&quot;ROUND&quot;</span><span class="o">:</span><span class="mi">22</span><span class="p">,</span><span class="s2">&quot;CIRCLE&quot;</span><span class="o">:</span><span class="mi">23</span><span class="p">,</span><span class="s2">&quot;DIAMOND&quot;</span><span class="o">:</span><span class="mi">24</span><span class="p">,</span><span class="s2">&quot;ODD&quot;</span><span class="o">:</span><span class="mi">25</span><span class="p">,</span><span class="s2">&quot;link&quot;</span><span class="o">:</span><span class="mi">26</span><span class="p">,</span><span class="s2">&quot;linkStatement&quot;</span><span class="o">:</span><span class="mi">27</span><span class="p">,</span><span class="s2">&quot;arrowText&quot;</span><span class="o">:</span><span class="mi">28</span><span class="p">,</span><span class="s2">&quot;TESTSTR&quot;</span><span class="o">:</span><span class="mi">29</span><span class="p">,</span><span class="s2">&quot;SPACE&quot;</span><span class="o">:</span><span class="mi">30</span><span class="p">,</span><span class="s2">&quot;--&quot;</span><span class="o">:</span><span class="mi">31</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="mi">32</span><span class="p">,</span><span class="s2">&quot;ARROW_POINT&quot;</span><span class="o">:</span><span class="mi">33</span><span class="p">,</span><span class="s2">&quot;ARROW_CIRCLE&quot;</span><span class="o">:</span><span class="mi">34</span><span class="p">,</span><span class="s2">&quot;ARROW_CROSS&quot;</span><span class="o">:</span><span class="mi">35</span><span class="p">,</span><span class="s2">&quot;ARROW_OPEN&quot;</span><span class="o">:</span><span class="mi">36</span><span class="p">,</span><span class="s2">&quot;-.&quot;</span><span class="o">:</span><span class="mi">37</span><span class="p">,</span><span class="s2">&quot;DOTTED_ARROW_POINT&quot;</span><span class="o">:</span><span class="mi">38</span><span class="p">,</span><span class="s2">&quot;DOTTED_ARROW_CIRCLE&quot;</span><span class="o">:</span><span class="mi">39</span><span class="p">,</span><span class="s2">&quot;DOTTED_ARROW_CROSS&quot;</span><span class="o">:</span><span class="mi">40</span><span class="p">,</span><span class="s2">&quot;DOTTED_ARROW_OPEN&quot;</span><span class="o">:</span><span class="mi">41</span><span class="p">,</span><span class="s2">&quot;==&quot;</span><span class="o">:</span><span class="mi">42</span><span class="p">,</span><span class="s2">&quot;THICK_ARROW_POINT&quot;</span><span class="o">:</span><span class="mi">43</span><span class="p">,</span><span class="s2">&quot;THICK_ARROW_CIRCLE&quot;</span><span class="o">:</span><span class="mi">44</span><span class="p">,</span><span class="s2">&quot;THICK_ARROW_CROSS&quot;</span><span class="o">:</span><span class="mi">45</span><span class="p">,</span><span class="s2">&quot;THICK_ARROW_OPEN&quot;</span><span class="o">:</span><span class="mi">46</span><span class="p">,</span><span class="s2">&quot;alphaNumToken&quot;</span><span class="o">:</span><span class="mi">47</span><span class="p">,</span><span class="s2">&quot;alphaNum2&quot;</span><span class="o">:</span><span class="mi">48</span><span class="p">,</span><span class="s2">&quot;MINUS&quot;</span><span class="o">:</span><span class="mi">49</span><span class="p">,</span><span class="s2">&quot;PIPE&quot;</span><span class="o">:</span><span class="mi">50</span><span class="p">,</span><span class="s2">&quot;textToken&quot;</span><span class="o">:</span><span class="mi">51</span><span class="p">,</span><span class="s2">&quot;commentText&quot;</span><span class="o">:</span><span class="mi">52</span><span class="p">,</span><span class="s2">&quot;commentToken&quot;</span><span class="o">:</span><span class="mi">53</span><span class="p">,</span><span class="s2">&quot;keywords&quot;</span><span class="o">:</span><span class="mi">54</span><span class="p">,</span><span class="s2">&quot;STYLE&quot;</span><span class="o">:</span><span class="mi">55</span><span class="p">,</span><span class="s2">&quot;LINKSTYLE&quot;</span><span class="o">:</span><span class="mi">56</span><span class="p">,</span><span class="s2">&quot;CLASSDEF&quot;</span><span class="o">:</span><span class="mi">57</span><span class="p">,</span><span class="s2">&quot;CLASS&quot;</span><span class="o">:</span><span class="mi">58</span><span class="p">,</span><span class="s2">&quot;CLICK&quot;</span><span class="o">:</span><span class="mi">59</span><span class="p">,</span><span class="s2">&quot;subgraph&quot;</span><span class="o">:</span><span class="mi">60</span><span class="p">,</span><span class="s2">&quot;end&quot;</span><span class="o">:</span><span class="mi">61</span><span class="p">,</span><span class="s2">&quot;textNoTags&quot;</span><span class="o">:</span><span class="mi">62</span><span class="p">,</span><span class="s2">&quot;textNoTagsToken&quot;</span><span class="o">:</span><span class="mi">63</span><span class="p">,</span><span class="s2">&quot;classDefStatement&quot;</span><span class="o">:</span><span class="mi">64</span><span class="p">,</span><span class="s2">&quot;DEFAULT&quot;</span><span class="o">:</span><span class="mi">65</span><span class="p">,</span><span class="s2">&quot;stylesOpt&quot;</span><span class="o">:</span><span class="mi">66</span><span class="p">,</span><span class="s2">&quot;classStatement&quot;</span><span class="o">:</span><span class="mi">67</span><span class="p">,</span><span class="s2">&quot;clickStatement&quot;</span><span class="o">:</span><span class="mi">68</span><span class="p">,</span><span class="s2">&quot;styleStatement&quot;</span><span class="o">:</span><span class="mi">69</span><span class="p">,</span><span class="s2">&quot;HEX&quot;</span><span class="o">:</span><span class="mi">70</span><span class="p">,</span><span class="s2">&quot;linkStyleStatement&quot;</span><span class="o">:</span><span class="mi">71</span><span class="p">,</span><span class="s2">&quot;NUM&quot;</span><span class="o">:</span><span class="mi">72</span><span class="p">,</span><span class="s2">&quot;commentStatement&quot;</span><span class="o">:</span><span class="mi">73</span><span class="p">,</span><span class="s2">&quot;PCT&quot;</span><span class="o">:</span><span class="mi">74</span><span class="p">,</span><span class="s2">&quot;style&quot;</span><span class="o">:</span><span class="mi">75</span><span class="p">,</span><span class="s2">&quot;COMMA&quot;</span><span class="o">:</span><span class="mi">76</span><span class="p">,</span><span class="s2">&quot;styleComponent&quot;</span><span class="o">:</span><span class="mi">77</span><span class="p">,</span><span class="s2">&quot;ALPHA&quot;</span><span class="o">:</span><span class="mi">78</span><span class="p">,</span><span class="s2">&quot;COLON&quot;</span><span class="o">:</span><span class="mi">79</span><span class="p">,</span><span class="s2">&quot;UNIT&quot;</span><span class="o">:</span><span class="mi">80</span><span class="p">,</span><span class="s2">&quot;BRKT&quot;</span><span class="o">:</span><span class="mi">81</span><span class="p">,</span><span class="s2">&quot;DOT&quot;</span><span class="o">:</span><span class="mi">82</span><span class="p">,</span><span class="s2">&quot;graphCodeTokens&quot;</span><span class="o">:</span><span class="mi">83</span><span class="p">,</span><span class="s2">&quot;PLUS&quot;</span><span class="o">:</span><span class="mi">84</span><span class="p">,</span><span class="s2">&quot;EQUALS&quot;</span><span class="o">:</span><span class="mi">85</span><span class="p">,</span><span class="s2">&quot;MULT&quot;</span><span class="o">:</span><span class="mi">86</span><span class="p">,</span><span class="s2">&quot;PS&quot;</span><span class="o">:</span><span class="mi">87</span><span class="p">,</span><span class="s2">&quot;PE&quot;</span><span class="o">:</span><span class="mi">88</span><span class="p">,</span><span class="s2">&quot;SQS&quot;</span><span class="o">:</span><span class="mi">89</span><span class="p">,</span><span class="s2">&quot;SQE&quot;</span><span class="o">:</span><span class="mi">90</span><span class="p">,</span><span class="s2">&quot;DIAMOND_START&quot;</span><span class="o">:</span><span class="mi">91</span><span class="p">,</span><span class="s2">&quot;DIAMOND_STOP&quot;</span><span class="o">:</span><span class="mi">92</span><span class="p">,</span><span class="s2">&quot;TAG_START&quot;</span><span class="o">:</span><span class="mi">93</span><span class="p">,</span><span class="s2">&quot;TAG_END&quot;</span><span class="o">:</span><span class="mi">94</span><span class="p">,</span><span class="s2">&quot;QUOTE&quot;</span><span class="o">:</span><span class="mi">95</span><span class="p">,</span><span class="s2">&quot;$accept&quot;</span><span class="o">:</span><span class="mi">0</span><span class="p">,</span><span class="s2">&quot;$end&quot;</span><span class="o">:</span><span class="mi">1</span><span class="p">},</span>
<span class="nx">terminals_</span><span class="o">:</span> <span class="p">{</span><span class="mi">2</span><span class="o">:</span><span class="s2">&quot;error&quot;</span><span class="p">,</span><span class="mi">6</span><span class="o">:</span><span class="s2">&quot;GRAPH&quot;</span><span class="p">,</span><span class="mi">7</span><span class="o">:</span><span class="s2">&quot;DIR&quot;</span><span class="p">,</span><span class="mi">8</span><span class="o">:</span><span class="s2">&quot;TAGEND&quot;</span><span class="p">,</span><span class="mi">9</span><span class="o">:</span><span class="s2">&quot;TAGSTART&quot;</span><span class="p">,</span><span class="mi">10</span><span class="o">:</span><span class="s2">&quot;UP&quot;</span><span class="p">,</span><span class="mi">11</span><span class="o">:</span><span class="s2">&quot;DOWN&quot;</span><span class="p">,</span><span class="mi">14</span><span class="o">:</span><span class="s2">&quot;NEWLINE&quot;</span><span class="p">,</span><span class="mi">15</span><span class="o">:</span><span class="s2">&quot;EOF&quot;</span><span class="p">,</span><span class="mi">16</span><span class="o">:</span><span class="s2">&quot;SEMI&quot;</span><span class="p">,</span><span class="mi">21</span><span class="o">:</span><span class="s2">&quot;SQUARE&quot;</span><span class="p">,</span><span class="mi">22</span><span class="o">:</span><span class="s2">&quot;ROUND&quot;</span><span class="p">,</span><span class="mi">23</span><span class="o">:</span><span class="s2">&quot;CIRCLE&quot;</span><span class="p">,</span><span class="mi">24</span><span class="o">:</span><span class="s2">&quot;DIAMOND&quot;</span><span class="p">,</span><span class="mi">25</span><span class="o">:</span><span class="s2">&quot;ODD&quot;</span><span class="p">,</span><span class="mi">29</span><span class="o">:</span><span class="s2">&quot;TESTSTR&quot;</span><span class="p">,</span><span class="mi">30</span><span class="o">:</span><span class="s2">&quot;SPACE&quot;</span><span class="p">,</span><span class="mi">31</span><span class="o">:</span><span class="s2">&quot;--&quot;</span><span class="p">,</span><span class="mi">33</span><span class="o">:</span><span class="s2">&quot;ARROW_POINT&quot;</span><span class="p">,</span><span class="mi">34</span><span class="o">:</span><span class="s2">&quot;ARROW_CIRCLE&quot;</span><span class="p">,</span><span class="mi">35</span><span class="o">:</span><span class="s2">&quot;ARROW_CROSS&quot;</span><span class="p">,</span><span class="mi">36</span><span class="o">:</span><span class="s2">&quot;ARROW_OPEN&quot;</span><span class="p">,</span><span class="mi">37</span><span class="o">:</span><span class="s2">&quot;-.&quot;</span><span class="p">,</span><span class="mi">38</span><span class="o">:</span><span class="s2">&quot;DOTTED_ARROW_POINT&quot;</span><span class="p">,</span><span class="mi">39</span><span class="o">:</span><span class="s2">&quot;DOTTED_ARROW_CIRCLE&quot;</span><span class="p">,</span><span class="mi">40</span><span class="o">:</span><span class="s2">&quot;DOTTED_ARROW_CROSS&quot;</span><span class="p">,</span><span class="mi">41</span><span class="o">:</span><span class="s2">&quot;DOTTED_ARROW_OPEN&quot;</span><span class="p">,</span><span class="mi">42</span><span class="o">:</span><span class="s2">&quot;==&quot;</span><span class="p">,</span><span class="mi">43</span><span class="o">:</span><span class="s2">&quot;THICK_ARROW_POINT&quot;</span><span class="p">,</span><span class="mi">44</span><span class="o">:</span><span class="s2">&quot;THICK_ARROW_CIRCLE&quot;</span><span class="p">,</span><span class="mi">45</span><span class="o">:</span><span class="s2">&quot;THICK_ARROW_CROSS&quot;</span><span class="p">,</span><span class="mi">46</span><span class="o">:</span><span class="s2">&quot;THICK_ARROW_OPEN&quot;</span><span class="p">,</span><span class="mi">49</span><span class="o">:</span><span class="s2">&quot;MINUS&quot;</span><span class="p">,</span><span class="mi">50</span><span class="o">:</span><span class="s2">&quot;PIPE&quot;</span><span class="p">,</span><span class="mi">55</span><span class="o">:</span><span class="s2">&quot;STYLE&quot;</span><span class="p">,</span><span class="mi">56</span><span class="o">:</span><span class="s2">&quot;LINKSTYLE&quot;</span><span class="p">,</span><span class="mi">57</span><span class="o">:</span><span class="s2">&quot;CLASSDEF&quot;</span><span class="p">,</span><span class="mi">58</span><span class="o">:</span><span class="s2">&quot;CLASS&quot;</span><span class="p">,</span><span class="mi">59</span><span class="o">:</span><span class="s2">&quot;CLICK&quot;</span><span class="p">,</span><span class="mi">60</span><span class="o">:</span><span class="s2">&quot;subgraph&quot;</span><span class="p">,</span><span class="mi">61</span><span class="o">:</span><span class="s2">&quot;end&quot;</span><span class="p">,</span><span class="mi">65</span><span class="o">:</span><span class="s2">&quot;DEFAULT&quot;</span><span class="p">,</span><span class="mi">70</span><span class="o">:</span><span class="s2">&quot;HEX&quot;</span><span class="p">,</span><span class="mi">72</span><span class="o">:</span><span class="s2">&quot;NUM&quot;</span><span class="p">,</span><span class="mi">74</span><span class="o">:</span><span class="s2">&quot;PCT&quot;</span><span class="p">,</span><span class="mi">76</span><span class="o">:</span><span class="s2">&quot;COMMA&quot;</span><span class="p">,</span><span class="mi">78</span><span class="o">:</span><span class="s2">&quot;ALPHA&quot;</span><span class="p">,</span><span class="mi">79</span><span class="o">:</span><span class="s2">&quot;COLON&quot;</span><span class="p">,</span><span class="mi">80</span><span class="o">:</span><span class="s2">&quot;UNIT&quot;</span><span class="p">,</span><span class="mi">81</span><span class="o">:</span><span class="s2">&quot;BRKT&quot;</span><span class="p">,</span><span class="mi">82</span><span class="o">:</span><span class="s2">&quot;DOT&quot;</span><span class="p">,</span><span class="mi">84</span><span class="o">:</span><span class="s2">&quot;PLUS&quot;</span><span class="p">,</span><span class="mi">85</span><span class="o">:</span><span class="s2">&quot;EQUALS&quot;</span><span class="p">,</span><span class="mi">86</span><span class="o">:</span><span class="s2">&quot;MULT&quot;</span><span class="p">,</span><span class="mi">87</span><span class="o">:</span><span class="s2">&quot;PS&quot;</span><span class="p">,</span><span class="mi">88</span><span class="o">:</span><span class="s2">&quot;PE&quot;</span><span class="p">,</span><span class="mi">89</span><span class="o">:</span><span class="s2">&quot;SQS&quot;</span><span class="p">,</span><span class="mi">90</span><span class="o">:</span><span class="s2">&quot;SQE&quot;</span><span class="p">,</span><span class="mi">91</span><span class="o">:</span><span class="s2">&quot;DIAMOND_START&quot;</span><span class="p">,</span><span class="mi">92</span><span class="o">:</span><span class="s2">&quot;DIAMOND_STOP&quot;</span><span class="p">,</span><span class="mi">93</span><span class="o">:</span><span class="s2">&quot;TAG_START&quot;</span><span class="p">,</span><span class="mi">94</span><span class="o">:</span><span class="s2">&quot;TAG_END&quot;</span><span class="p">,</span><span class="mi">95</span><span class="o">:</span><span class="s2">&quot;QUOTE&quot;</span><span class="p">},</span>
<span class="nx">productions_</span><span class="o">:</span> <span class="p">[</span><span class="mi">0</span><span class="p">,[</span><span class="mi">3</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">4</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">4</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">4</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">4</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">4</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">5</span><span class="p">,</span><span class="mi">0</span><span class="p">],[</span><span class="mi">5</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">12</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">12</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">12</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">12</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">13</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">17</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">18</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">18</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">20</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">20</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">20</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">20</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">20</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">26</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">27</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">19</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">19</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">48</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">48</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">48</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">28</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">32</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">32</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">32</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">52</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">52</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">54</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">62</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">62</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">64</span><span class="p">,</span><span class="mi">5</span><span class="p">],[</span><span class="mi">64</span><span class="p">,</span><span class="mi">5</span><span class="p">],[</span><span class="mi">67</span><span class="p">,</span><span class="mi">5</span><span class="p">],[</span><span class="mi">68</span><span class="p">,</span><span class="mi">5</span><span class="p">],[</span><span class="mi">69</span><span class="p">,</span><span class="mi">5</span><span class="p">],[</span><span class="mi">69</span><span class="p">,</span><span class="mi">5</span><span class="p">],[</span><span class="mi">71</span><span class="p">,</span><span class="mi">5</span><span class="p">],[</span><span class="mi">71</span><span class="p">,</span><span class="mi">5</span><span class="p">],[</span><span class="mi">73</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">66</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">66</span><span class="p">,</span><span class="mi">3</span><span class="p">],[</span><span class="mi">75</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">75</span><span class="p">,</span><span class="mi">2</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">77</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">53</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">53</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">51</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">51</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">51</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">51</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">51</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">51</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">51</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">63</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">63</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">63</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">63</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">47</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">],[</span><span class="mi">83</span><span class="p">,</span><span class="mi">1</span><span class="p">]],</span>
<span class="nx">performAction</span><span class="o">:</span> <span class="kd">function</span> <span class="nx">anonymous</span><span class="p">(</span><span class="nx">yytext</span><span class="p">,</span> <span class="nx">yyleng</span><span class="p">,</span> <span class="nx">yylineno</span><span class="p">,</span> <span class="nx">yy</span><span class="p">,</span> <span class="nx">yystate</span> <span class="cm">/* action[1] */</span><span class="p">,</span> <span class="nx">$$</span> <span class="cm">/* vstack */</span><span class="p">,</span> <span class="nx">_$</span> <span class="cm">/* lstack */</span><span class="p">)</span> <span class="p">{</span>
<span class="cm">/* this == yyval */</span>

<span class="kd">var</span> <span class="nx">$0</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">;</span>
<span class="k">switch</span> <span class="p">(</span><span class="nx">yystate</span><span class="p">)</span> <span class="p">{</span>
<span class="k">case</span> <span class="mi">2</span><span class="o">:</span>
 <span class="nx">yy</span><span class="p">.</span><span class="nx">setDirection</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]);</span><span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">3</span><span class="o">:</span>
 <span class="nx">yy</span><span class="p">.</span><span class="nx">setDirection</span><span class="p">(</span><span class="s2">&quot;LR&quot;</span><span class="p">);</span><span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">4</span><span class="o">:</span>
 <span class="nx">yy</span><span class="p">.</span><span class="nx">setDirection</span><span class="p">(</span><span class="s2">&quot;RL&quot;</span><span class="p">);</span><span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">5</span><span class="o">:</span>
 <span class="nx">yy</span><span class="p">.</span><span class="nx">setDirection</span><span class="p">(</span><span class="s2">&quot;BT&quot;</span><span class="p">);</span><span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">6</span><span class="o">:</span>
 <span class="nx">yy</span><span class="p">.</span><span class="nx">setDirection</span><span class="p">(</span><span class="s2">&quot;TB&quot;</span><span class="p">);</span><span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">9</span><span class="o">:</span>
 
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">14</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">[</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">15</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">addVertex</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">],</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">].</span><span class="nx">text</span><span class="p">,</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">].</span><span class="nx">type</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">16</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">addVertex</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">],</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$01</span><span class="p">].</span><span class="nx">text</span><span class="p">,</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$01</span><span class="p">].</span><span class="nx">type</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">17</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="nx">text</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">],</span><span class="nx">type</span><span class="o">:</span><span class="s1">&#39;square&#39;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">18</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">addVertex</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">],</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$01</span><span class="p">],</span><span class="s1">&#39;round&#39;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">19</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">addVertex</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">],</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$01</span><span class="p">],</span><span class="s1">&#39;circle&#39;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">20</span><span class="o">:</span> <span class="k">case</span> <span class="mi">21</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">addVertex</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">],</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$01</span><span class="p">],</span><span class="s1">&#39;diamond&#39;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">22</span><span class="o">:</span>
<span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">].</span><span class="nx">text</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span><span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">23</span><span class="o">:</span> <span class="k">case</span> <span class="mi">24</span><span class="o">:</span>
<span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">].</span><span class="nx">text</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">];</span><span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">25</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">26</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;normal&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">27</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_circle&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;normal&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">28</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_cross&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;normal&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">29</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_open&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;normal&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">30</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;dotted&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">31</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_circle&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;dotted&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">32</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_cross&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;dotted&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">33</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_open&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;dotted&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">34</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;thick&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">35</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_circle&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;thick&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">36</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_cross&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;thick&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">37</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_open&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;thick&quot;</span><span class="p">,</span><span class="s2">&quot;text&quot;</span><span class="o">:</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">38</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;normal&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">39</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_circle&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;normal&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">40</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_cross&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;normal&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">41</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_open&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;normal&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">42</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;dotted&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">43</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_circle&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;dotted&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">44</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_cross&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;dotted&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">45</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_open&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;dotted&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">46</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;thick&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">47</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_circle&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;thick&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">48</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_cross&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;thick&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">49</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">{</span><span class="s2">&quot;type&quot;</span><span class="o">:</span><span class="s2">&quot;arrow_open&quot;</span><span class="p">,</span><span class="s2">&quot;stroke&quot;</span><span class="o">:</span><span class="s2">&quot;thick&quot;</span><span class="p">};</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">52</span><span class="o">:</span> <span class="k">case</span> <span class="mi">53</span><span class="o">:</span> <span class="k">case</span> <span class="mi">56</span><span class="o">:</span> <span class="k">case</span> <span class="mi">58</span><span class="o">:</span> <span class="k">case</span> <span class="mi">59</span><span class="o">:</span> <span class="k">case</span> <span class="mi">72</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span><span class="o">=</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">54</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span><span class="o">=</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span><span class="o">+</span><span class="s1">&#39;-&#39;</span><span class="o">+</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">55</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">57</span><span class="o">:</span> <span class="k">case</span> <span class="mi">60</span><span class="o">:</span> <span class="k">case</span> <span class="mi">73</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span><span class="o">=</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="s1">&#39;&#39;</span><span class="o">+</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">74</span><span class="o">:</span> <span class="k">case</span> <span class="mi">75</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">4</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">],</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">76</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">4</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">setClass</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">],</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">77</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">4</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">setClickEvent</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">],</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">78</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">4</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">addVertex</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">],</span><span class="kc">undefined</span><span class="p">,</span><span class="kc">undefined</span><span class="p">,</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">79</span><span class="o">:</span> <span class="k">case</span> <span class="mi">80</span><span class="o">:</span> <span class="k">case</span> <span class="mi">81</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">4</span><span class="p">];</span><span class="nx">yy</span><span class="p">.</span><span class="nx">updateLink</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">],</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">83</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="p">[</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]]</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">84</span><span class="o">:</span>
<span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">].</span><span class="nx">push</span><span class="p">(</span><span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">]);</span><span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">2</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">86</span><span class="o">:</span>
<span class="k">this</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">+</span> <span class="nx">$$</span><span class="p">[</span><span class="nx">$0</span><span class="p">];</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">},</span>
<span class="nx">table</span><span class="o">:</span> <span class="p">[{</span><span class="mi">3</span><span class="o">:</span><span class="mi">1</span><span class="p">,</span><span class="mi">4</span><span class="o">:</span><span class="mi">2</span><span class="p">,</span><span class="mi">6</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">3</span><span class="p">]},{</span><span class="mi">1</span><span class="o">:</span><span class="p">[</span><span class="mi">3</span><span class="p">]},</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">7</span><span class="p">],{</span><span class="mi">5</span><span class="o">:</span><span class="mi">4</span><span class="p">}),{</span><span class="mi">7</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">5</span><span class="p">],</span><span class="mi">8</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">6</span><span class="p">],</span><span class="mi">9</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">7</span><span class="p">],</span><span class="mi">10</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">8</span><span class="p">],</span><span class="mi">11</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">9</span><span class="p">]},{</span><span class="mi">1</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">1</span><span class="p">],</span><span class="mi">12</span><span class="o">:</span><span class="mi">10</span><span class="p">,</span><span class="mi">13</span><span class="o">:</span><span class="mi">11</span><span class="p">,</span><span class="mi">14</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">12</span><span class="p">],</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">13</span><span class="p">],</span><span class="mi">16</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">14</span><span class="p">],</span><span class="mi">17</span><span class="o">:</span><span class="mi">15</span><span class="p">,</span><span class="mi">18</span><span class="o">:</span><span class="mi">16</span><span class="p">,</span><span class="mi">19</span><span class="o">:</span><span class="mi">17</span><span class="p">,</span><span class="mi">47</span><span class="o">:</span><span class="mi">18</span><span class="p">,</span><span class="mi">72</span><span class="o">:</span><span class="nx">$V1</span><span class="p">,</span><span class="mi">76</span><span class="o">:</span><span class="nx">$V2</span><span class="p">,</span><span class="mi">78</span><span class="o">:</span><span class="nx">$V3</span><span class="p">,</span><span class="mi">79</span><span class="o">:</span><span class="nx">$V4</span><span class="p">,</span><span class="mi">81</span><span class="o">:</span><span class="nx">$V5</span><span class="p">,</span><span class="mi">82</span><span class="o">:</span><span class="nx">$V6</span><span class="p">,</span><span class="mi">84</span><span class="o">:</span><span class="nx">$V7</span><span class="p">,</span><span class="mi">85</span><span class="o">:</span><span class="nx">$V8</span><span class="p">,</span><span class="mi">86</span><span class="o">:</span><span class="nx">$V9</span><span class="p">},</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">2</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">4</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">5</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">6</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">8</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">9</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">10</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">11</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">12</span><span class="p">]),{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">28</span><span class="p">]},{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">14</span><span class="p">]},{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">16</span><span class="p">],</span><span class="mi">20</span><span class="o">:</span><span class="mi">29</span><span class="p">,</span><span class="mi">21</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">31</span><span class="p">],</span><span class="mi">22</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">32</span><span class="p">],</span><span class="mi">23</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">33</span><span class="p">],</span><span class="mi">24</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">34</span><span class="p">],</span><span class="mi">25</span><span class="o">:</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">35</span><span class="p">],</span><span class="mi">47</span><span class="o">:</span><span class="mi">30</span><span class="p">,</span><span class="mi">72</span><span class="o">:</span><span class="nx">$V1</span><span class="p">,</span><span class="mi">76</span><span class="o">:</span><span class="nx">$V2</span><span class="p">,</span><span class="mi">78</span><span class="o">:</span><span class="nx">$V3</span><span class="p">,</span><span class="mi">79</span><span class="o">:</span><span class="nx">$V4</span><span class="p">,</span><span class="mi">81</span><span class="o">:</span><span class="nx">$V5</span><span class="p">,</span><span class="mi">82</span><span class="o">:</span><span class="nx">$V6</span><span class="p">,</span><span class="mi">84</span><span class="o">:</span><span class="nx">$V7</span><span class="p">,</span><span class="mi">85</span><span class="o">:</span><span class="nx">$V8</span><span class="p">,</span><span class="mi">86</span><span class="o">:</span><span class="nx">$V9</span><span class="p">},</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">50</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">111</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">112</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">113</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">114</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">115</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">116</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">117</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">118</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">119</span><span class="p">]),</span><span class="nx">o</span><span class="p">(</span><span class="nx">$V0</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">13</span><span class="p">]),{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">15</span><span class="p">]},</span><span class="nx">o</span><span class="p">(</span><span class="nx">$Va</span><span class="p">,[</span><span class="mi">2</span><span class="p">,</span><span class="mi">51</span><span class="p">]),{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">17</span><span class="p">]},{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">18</span><span class="p">]},{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">19</span><span class="p">]},{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">20</span><span class="p">]},{</span><span class="mi">15</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">21</span><span class="p">]}],</span>
<span class="nx">defaultActions</span><span class="o">:</span> <span class="p">{</span><span class="mi">16</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">14</span><span class="p">],</span><span class="mi">29</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">15</span><span class="p">],</span><span class="mi">31</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">17</span><span class="p">],</span><span class="mi">32</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">18</span><span class="p">],</span><span class="mi">33</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">19</span><span class="p">],</span><span class="mi">34</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">20</span><span class="p">],</span><span class="mi">35</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">21</span><span class="p">]},</span>
<span class="nx">parseError</span><span class="o">:</span> <span class="kd">function</span> <span class="nx">parseError</span><span class="p">(</span><span class="nx">str</span><span class="p">,</span> <span class="nx">hash</span><span class="p">)</span> <span class="p">{</span>
    <span class="k">if</span> <span class="p">(</span><span class="nx">hash</span><span class="p">.</span><span class="nx">recoverable</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">trace</span><span class="p">(</span><span class="nx">str</span><span class="p">);</span>
    <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
        <span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="p">(</span><span class="nx">str</span><span class="p">);</span>
    <span class="p">}</span>
<span class="p">},</span>
<span class="nx">parse</span><span class="o">:</span> <span class="kd">function</span> <span class="nx">parse</span><span class="p">(</span><span class="nx">input</span><span class="p">)</span> <span class="p">{</span>
    <span class="kd">var</span> <span class="nx">self</span> <span class="o">=</span> <span class="k">this</span><span class="p">,</span> <span class="nx">stack</span> <span class="o">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="nx">tstack</span> <span class="o">=</span> <span class="p">[],</span> <span class="nx">vstack</span> <span class="o">=</span> <span class="p">[</span><span class="kc">null</span><span class="p">],</span> <span class="nx">lstack</span> <span class="o">=</span> <span class="p">[],</span> <span class="nx">table</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">table</span><span class="p">,</span> <span class="nx">yytext</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="nx">yylineno</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">yyleng</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">recovering</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">TERROR</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span> <span class="nx">EOF</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
    <span class="kd">var</span> <span class="nx">args</span> <span class="o">=</span> <span class="nx">lstack</span><span class="p">.</span><span class="nx">slice</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">arguments</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>
    <span class="kd">var</span> <span class="nx">lexer</span> <span class="o">=</span> <span class="nb">Object</span><span class="p">.</span><span class="nx">create</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">lexer</span><span class="p">);</span>
    <span class="kd">var</span> <span class="nx">sharedState</span> <span class="o">=</span> <span class="p">{</span> <span class="nx">yy</span><span class="o">:</span> <span class="p">{}</span> <span class="p">};</span>
    <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">k</span> <span class="k">in</span> <span class="k">this</span><span class="p">.</span><span class="nx">yy</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">if</span> <span class="p">(</span><span class="nb">Object</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">yy</span><span class="p">,</span> <span class="nx">k</span><span class="p">))</span> <span class="p">{</span>
            <span class="nx">sharedState</span><span class="p">.</span><span class="nx">yy</span><span class="p">[</span><span class="nx">k</span><span class="p">]</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">yy</span><span class="p">[</span><span class="nx">k</span><span class="p">];</span>
        <span class="p">}</span>
    <span class="p">}</span>
    <span class="nx">lexer</span><span class="p">.</span><span class="nx">setInput</span><span class="p">(</span><span class="nx">input</span><span class="p">,</span> <span class="nx">sharedState</span><span class="p">.</span><span class="nx">yy</span><span class="p">);</span>
    <span class="nx">sharedState</span><span class="p">.</span><span class="nx">yy</span><span class="p">.</span><span class="nx">lexer</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">;</span>
    <span class="nx">sharedState</span><span class="p">.</span><span class="nx">yy</span><span class="p">.</span><span class="nx">parser</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
    <span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">yylloc</span> <span class="o">==</span> <span class="s1">&#39;undefined&#39;</span><span class="p">)</span> <span class="p">{</span>
        <span class="nx">lexer</span><span class="p">.</span><span class="nx">yylloc</span> <span class="o">=</span> <span class="p">{};</span>
    <span class="p">}</span>
    <span class="kd">var</span> <span class="nx">yyloc</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">;</span>
    <span class="nx">lstack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">yyloc</span><span class="p">);</span>
    <span class="kd">var</span> <span class="nx">ranges</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">options</span> <span class="o">&amp;&amp;</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">ranges</span><span class="p">;</span>
    <span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">sharedState</span><span class="p">.</span><span class="nx">yy</span><span class="p">.</span><span class="nx">parseError</span> <span class="o">===</span> <span class="s1">&#39;function&#39;</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">parseError</span> <span class="o">=</span> <span class="nx">sharedState</span><span class="p">.</span><span class="nx">yy</span><span class="p">.</span><span class="nx">parseError</span><span class="p">;</span>
    <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">parseError</span> <span class="o">=</span> <span class="nb">Object</span><span class="p">.</span><span class="nx">getPrototypeOf</span><span class="p">(</span><span class="k">this</span><span class="p">).</span><span class="nx">parseError</span><span class="p">;</span>
    <span class="p">}</span>
    <span class="kd">function</span> <span class="nx">popStack</span><span class="p">(</span><span class="nx">n</span><span class="p">)</span> <span class="p">{</span>
        <span class="nx">stack</span><span class="p">.</span><span class="nx">length</span> <span class="o">=</span> <span class="nx">stack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="nx">n</span><span class="p">;</span>
        <span class="nx">vstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">=</span> <span class="nx">vstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">n</span><span class="p">;</span>
        <span class="nx">lstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">=</span> <span class="nx">lstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">n</span><span class="p">;</span>
    <span class="p">}</span>
    <span class="nx">_token_stack</span><span class="o">:</span>
        <span class="kd">function</span> <span class="nx">lex</span><span class="p">()</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">token</span><span class="p">;</span>
            <span class="nx">token</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">lex</span><span class="p">()</span> <span class="o">||</span> <span class="nx">EOF</span><span class="p">;</span>
            <span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">token</span> <span class="o">!==</span> <span class="s1">&#39;number&#39;</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">token</span> <span class="o">=</span> <span class="nx">self</span><span class="p">.</span><span class="nx">symbols_</span><span class="p">[</span><span class="nx">token</span><span class="p">]</span> <span class="o">||</span> <span class="nx">token</span><span class="p">;</span>
            <span class="p">}</span>
            <span class="k">return</span> <span class="nx">token</span><span class="p">;</span>
        <span class="p">}</span>
    <span class="kd">var</span> <span class="nx">symbol</span><span class="p">,</span> <span class="nx">preErrorSymbol</span><span class="p">,</span> <span class="nx">state</span><span class="p">,</span> <span class="nx">action</span><span class="p">,</span> <span class="nx">a</span><span class="p">,</span> <span class="nx">r</span><span class="p">,</span> <span class="nx">yyval</span> <span class="o">=</span> <span class="p">{},</span> <span class="nx">p</span><span class="p">,</span> <span class="nx">len</span><span class="p">,</span> <span class="nx">newState</span><span class="p">,</span> <span class="nx">expected</span><span class="p">;</span>
    <span class="k">while</span> <span class="p">(</span><span class="kc">true</span><span class="p">)</span> <span class="p">{</span>
        <span class="nx">state</span> <span class="o">=</span> <span class="nx">stack</span><span class="p">[</span><span class="nx">stack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">];</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">defaultActions</span><span class="p">[</span><span class="nx">state</span><span class="p">])</span> <span class="p">{</span>
            <span class="nx">action</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">defaultActions</span><span class="p">[</span><span class="nx">state</span><span class="p">];</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">symbol</span> <span class="o">===</span> <span class="kc">null</span> <span class="o">||</span> <span class="k">typeof</span> <span class="nx">symbol</span> <span class="o">==</span> <span class="s1">&#39;undefined&#39;</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">symbol</span> <span class="o">=</span> <span class="nx">lex</span><span class="p">();</span>
            <span class="p">}</span>
            <span class="nx">action</span> <span class="o">=</span> <span class="nx">table</span><span class="p">[</span><span class="nx">state</span><span class="p">]</span> <span class="o">&amp;&amp;</span> <span class="nx">table</span><span class="p">[</span><span class="nx">state</span><span class="p">][</span><span class="nx">symbol</span><span class="p">];</span>
        <span class="p">}</span>
                    <span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">action</span> <span class="o">===</span> <span class="s1">&#39;undefined&#39;</span> <span class="o">||</span> <span class="o">!</span><span class="nx">action</span><span class="p">.</span><span class="nx">length</span> <span class="o">||</span> <span class="o">!</span><span class="nx">action</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="p">{</span>
                <span class="kd">var</span> <span class="nx">errStr</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="p">;</span>
                <span class="nx">expected</span> <span class="o">=</span> <span class="p">[];</span>
                <span class="k">for</span> <span class="p">(</span><span class="nx">p</span> <span class="k">in</span> <span class="nx">table</span><span class="p">[</span><span class="nx">state</span><span class="p">])</span> <span class="p">{</span>
                    <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">terminals_</span><span class="p">[</span><span class="nx">p</span><span class="p">]</span> <span class="o">&amp;&amp;</span> <span class="nx">p</span> <span class="o">&gt;</span> <span class="nx">TERROR</span><span class="p">)</span> <span class="p">{</span>
                        <span class="nx">expected</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="s1">&#39;\&#39;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">terminals_</span><span class="p">[</span><span class="nx">p</span><span class="p">]</span> <span class="o">+</span> <span class="s1">&#39;\&#39;&#39;</span><span class="p">);</span>
                    <span class="p">}</span>
                <span class="p">}</span>
                <span class="k">if</span> <span class="p">(</span><span class="nx">lexer</span><span class="p">.</span><span class="nx">showPosition</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">errStr</span> <span class="o">=</span> <span class="s1">&#39;Parse error on line &#39;</span> <span class="o">+</span> <span class="p">(</span><span class="nx">yylineno</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;:\n&#39;</span> <span class="o">+</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">showPosition</span><span class="p">()</span> <span class="o">+</span> <span class="s1">&#39;\nExpecting &#39;</span> <span class="o">+</span> <span class="nx">expected</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;, &#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;, got \&#39;&#39;</span> <span class="o">+</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">terminals_</span><span class="p">[</span><span class="nx">symbol</span><span class="p">]</span> <span class="o">||</span> <span class="nx">symbol</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;\&#39;&#39;</span><span class="p">;</span>
                <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                    <span class="nx">errStr</span> <span class="o">=</span> <span class="s1">&#39;Parse error on line &#39;</span> <span class="o">+</span> <span class="p">(</span><span class="nx">yylineno</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;: Unexpected &#39;</span> <span class="o">+</span> <span class="p">(</span><span class="nx">symbol</span> <span class="o">==</span> <span class="nx">EOF</span> <span class="o">?</span> <span class="s1">&#39;end of input&#39;</span> <span class="o">:</span> <span class="s1">&#39;\&#39;&#39;</span> <span class="o">+</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">terminals_</span><span class="p">[</span><span class="nx">symbol</span><span class="p">]</span> <span class="o">||</span> <span class="nx">symbol</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;\&#39;&#39;</span><span class="p">);</span>
                <span class="p">}</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">parseError</span><span class="p">(</span><span class="nx">errStr</span><span class="p">,</span> <span class="p">{</span>
                    <span class="nx">text</span><span class="o">:</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">match</span><span class="p">,</span>
                    <span class="nx">token</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">terminals_</span><span class="p">[</span><span class="nx">symbol</span><span class="p">]</span> <span class="o">||</span> <span class="nx">symbol</span><span class="p">,</span>
                    <span class="nx">line</span><span class="o">:</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">yylineno</span><span class="p">,</span>
                    <span class="nx">loc</span><span class="o">:</span> <span class="nx">yyloc</span><span class="p">,</span>
                    <span class="nx">expected</span><span class="o">:</span> <span class="nx">expected</span>
                <span class="p">});</span>
            <span class="p">}</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">action</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="k">instanceof</span> <span class="nb">Array</span> <span class="o">&amp;&amp;</span> <span class="nx">action</span><span class="p">.</span><span class="nx">length</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="p">(</span><span class="s1">&#39;Parse Error: multiple actions possible at state: &#39;</span> <span class="o">+</span> <span class="nx">state</span> <span class="o">+</span> <span class="s1">&#39;, token: &#39;</span> <span class="o">+</span> <span class="nx">symbol</span><span class="p">);</span>
        <span class="p">}</span>
        <span class="k">switch</span> <span class="p">(</span><span class="nx">action</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="p">{</span>
        <span class="k">case</span> <span class="mi">1</span><span class="o">:</span>
            <span class="nx">stack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">symbol</span><span class="p">);</span>
            <span class="nx">vstack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">lexer</span><span class="p">.</span><span class="nx">yytext</span><span class="p">);</span>
            <span class="nx">lstack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">lexer</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">);</span>
            <span class="nx">stack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">action</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span>
            <span class="nx">symbol</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
            <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">preErrorSymbol</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">yyleng</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">yyleng</span><span class="p">;</span>
                <span class="nx">yytext</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">yytext</span><span class="p">;</span>
                <span class="nx">yylineno</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">yylineno</span><span class="p">;</span>
                <span class="nx">yyloc</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">;</span>
                <span class="k">if</span> <span class="p">(</span><span class="nx">recovering</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">recovering</span><span class="o">--</span><span class="p">;</span>
                <span class="p">}</span>
            <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                <span class="nx">symbol</span> <span class="o">=</span> <span class="nx">preErrorSymbol</span><span class="p">;</span>
                <span class="nx">preErrorSymbol</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
            <span class="p">}</span>
            <span class="k">break</span><span class="p">;</span>
        <span class="k">case</span> <span class="mi">2</span><span class="o">:</span>
            <span class="nx">len</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">productions_</span><span class="p">[</span><span class="nx">action</span><span class="p">[</span><span class="mi">1</span><span class="p">]][</span><span class="mi">1</span><span class="p">];</span>
            <span class="nx">yyval</span><span class="p">.</span><span class="nx">$</span> <span class="o">=</span> <span class="nx">vstack</span><span class="p">[</span><span class="nx">vstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">len</span><span class="p">];</span>
            <span class="nx">yyval</span><span class="p">.</span><span class="nx">_$</span> <span class="o">=</span> <span class="p">{</span>
                <span class="nx">first_line</span><span class="o">:</span> <span class="nx">lstack</span><span class="p">[</span><span class="nx">lstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="p">(</span><span class="nx">len</span> <span class="o">||</span> <span class="mi">1</span><span class="p">)].</span><span class="nx">first_line</span><span class="p">,</span>
                <span class="nx">last_line</span><span class="o">:</span> <span class="nx">lstack</span><span class="p">[</span><span class="nx">lstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">].</span><span class="nx">last_line</span><span class="p">,</span>
                <span class="nx">first_column</span><span class="o">:</span> <span class="nx">lstack</span><span class="p">[</span><span class="nx">lstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="p">(</span><span class="nx">len</span> <span class="o">||</span> <span class="mi">1</span><span class="p">)].</span><span class="nx">first_column</span><span class="p">,</span>
                <span class="nx">last_column</span><span class="o">:</span> <span class="nx">lstack</span><span class="p">[</span><span class="nx">lstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">].</span><span class="nx">last_column</span>
            <span class="p">};</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">ranges</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">yyval</span><span class="p">.</span><span class="nx">_$</span><span class="p">.</span><span class="nx">range</span> <span class="o">=</span> <span class="p">[</span>
                    <span class="nx">lstack</span><span class="p">[</span><span class="nx">lstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="p">(</span><span class="nx">len</span> <span class="o">||</span> <span class="mi">1</span><span class="p">)].</span><span class="nx">range</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
                    <span class="nx">lstack</span><span class="p">[</span><span class="nx">lstack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">].</span><span class="nx">range</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
                <span class="p">];</span>
            <span class="p">}</span>
            <span class="nx">r</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">performAction</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="nx">yyval</span><span class="p">,</span> <span class="p">[</span>
                <span class="nx">yytext</span><span class="p">,</span>
                <span class="nx">yyleng</span><span class="p">,</span>
                <span class="nx">yylineno</span><span class="p">,</span>
                <span class="nx">sharedState</span><span class="p">.</span><span class="nx">yy</span><span class="p">,</span>
                <span class="nx">action</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span>
                <span class="nx">vstack</span><span class="p">,</span>
                <span class="nx">lstack</span>
            <span class="p">].</span><span class="nx">concat</span><span class="p">(</span><span class="nx">args</span><span class="p">));</span>
            <span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">r</span> <span class="o">!==</span> <span class="s1">&#39;undefined&#39;</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">return</span> <span class="nx">r</span><span class="p">;</span>
            <span class="p">}</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">len</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">stack</span> <span class="o">=</span> <span class="nx">stack</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span> <span class="o">*</span> <span class="nx">len</span> <span class="o">*</span> <span class="mi">2</span><span class="p">);</span>
                <span class="nx">vstack</span> <span class="o">=</span> <span class="nx">vstack</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span> <span class="o">*</span> <span class="nx">len</span><span class="p">);</span>
                <span class="nx">lstack</span> <span class="o">=</span> <span class="nx">lstack</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span> <span class="o">*</span> <span class="nx">len</span><span class="p">);</span>
            <span class="p">}</span>
            <span class="nx">stack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">productions_</span><span class="p">[</span><span class="nx">action</span><span class="p">[</span><span class="mi">1</span><span class="p">]][</span><span class="mi">0</span><span class="p">]);</span>
            <span class="nx">vstack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">yyval</span><span class="p">.</span><span class="nx">$</span><span class="p">);</span>
            <span class="nx">lstack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">yyval</span><span class="p">.</span><span class="nx">_$</span><span class="p">);</span>
            <span class="nx">newState</span> <span class="o">=</span> <span class="nx">table</span><span class="p">[</span><span class="nx">stack</span><span class="p">[</span><span class="nx">stack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">2</span><span class="p">]][</span><span class="nx">stack</span><span class="p">[</span><span class="nx">stack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]];</span>
            <span class="nx">stack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">newState</span><span class="p">);</span>
            <span class="k">break</span><span class="p">;</span>
        <span class="k">case</span> <span class="mi">3</span><span class="o">:</span>
            <span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
        <span class="p">}</span>
    <span class="p">}</span>
    <span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
<span class="p">}};</span>
<span class="cm">/* generated by jison-lex 0.3.4 */</span>
<span class="kd">var</span> <span class="nx">lexer</span> <span class="o">=</span> <span class="p">(</span><span class="kd">function</span><span class="p">(){</span>
<span class="kd">var</span> <span class="nx">lexer</span> <span class="o">=</span> <span class="p">({</span>

<span class="nx">EOF</span><span class="o">:</span><span class="mi">1</span><span class="p">,</span>

<span class="nx">parseError</span><span class="o">:</span><span class="kd">function</span> <span class="nx">parseError</span><span class="p">(</span><span class="nx">str</span><span class="p">,</span> <span class="nx">hash</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">yy</span><span class="p">.</span><span class="nx">parser</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yy</span><span class="p">.</span><span class="nx">parser</span><span class="p">.</span><span class="nx">parseError</span><span class="p">(</span><span class="nx">str</span><span class="p">,</span> <span class="nx">hash</span><span class="p">);</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="p">(</span><span class="nx">str</span><span class="p">);</span>
        <span class="p">}</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-3" id="section-3">&#182;</a>
</div>
<p>resets the lexer, sets new input</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">setInput</span><span class="o">:</span><span class="kd">function</span> <span class="p">(</span><span class="nx">input</span><span class="p">,</span> <span class="nx">yy</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yy</span> <span class="o">=</span> <span class="nx">yy</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">yy</span> <span class="o">||</span> <span class="p">{};</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">_input</span> <span class="o">=</span> <span class="nx">input</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">_more</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_backtrack</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">done</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">yyleng</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">matched</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">match</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span> <span class="o">=</span> <span class="p">[</span><span class="s1">&#39;INITIAL&#39;</span><span class="p">];</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span> <span class="o">=</span> <span class="p">{</span>
            <span class="nx">first_line</span><span class="o">:</span> <span class="mi">1</span><span class="p">,</span>
            <span class="nx">first_column</span><span class="o">:</span> <span class="mi">0</span><span class="p">,</span>
            <span class="nx">last_line</span><span class="o">:</span> <span class="mi">1</span><span class="p">,</span>
            <span class="nx">last_column</span><span class="o">:</span> <span class="mi">0</span>
        <span class="p">};</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">ranges</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">range</span> <span class="o">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">];</span>
        <span class="p">}</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">offset</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
        <span class="k">return</span> <span class="k">this</span><span class="p">;</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-4" id="section-4">&#182;</a>
</div>
<p>consumes and returns one char from the input</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">input</span><span class="o">:</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
        <span class="kd">var</span> <span class="nx">ch</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span> <span class="o">+=</span> <span class="nx">ch</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yyleng</span><span class="o">++</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">offset</span><span class="o">++</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">match</span> <span class="o">+=</span> <span class="nx">ch</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">matched</span> <span class="o">+=</span> <span class="nx">ch</span><span class="p">;</span>
        <span class="kd">var</span> <span class="nx">lines</span> <span class="o">=</span> <span class="nx">ch</span><span class="p">.</span><span class="nx">match</span><span class="p">(</span><span class="sr">/(?:\r\n?|\n).*/g</span><span class="p">);</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">lines</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span><span class="o">++</span><span class="p">;</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">last_line</span><span class="o">++</span><span class="p">;</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">last_column</span><span class="o">++</span><span class="p">;</span>
        <span class="p">}</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">ranges</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">range</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">++</span><span class="p">;</span>
        <span class="p">}</span>

        <span class="k">this</span><span class="p">.</span><span class="nx">_input</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
        <span class="k">return</span> <span class="nx">ch</span><span class="p">;</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-5" id="section-5">&#182;</a>
</div>
<p>unshifts one char (or a string) into the input</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">unput</span><span class="o">:</span><span class="kd">function</span> <span class="p">(</span><span class="nx">ch</span><span class="p">)</span> <span class="p">{</span>
        <span class="kd">var</span> <span class="nx">len</span> <span class="o">=</span> <span class="nx">ch</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
        <span class="kd">var</span> <span class="nx">lines</span> <span class="o">=</span> <span class="nx">ch</span><span class="p">.</span><span class="nx">split</span><span class="p">(</span><span class="sr">/(?:\r\n?|\n)/g</span><span class="p">);</span>

        <span class="k">this</span><span class="p">.</span><span class="nx">_input</span> <span class="o">=</span> <span class="nx">ch</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span><span class="p">.</span><span class="nx">substr</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">len</span><span class="p">);</span>

</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-6" id="section-6">&#182;</a>
</div>
<p>this.yyleng -= len;</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
        <span class="k">this</span><span class="p">.</span><span class="nx">offset</span> <span class="o">-=</span> <span class="nx">len</span><span class="p">;</span>
        <span class="kd">var</span> <span class="nx">oldLines</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">match</span><span class="p">.</span><span class="nx">split</span><span class="p">(</span><span class="sr">/(?:\r\n?|\n)/g</span><span class="p">);</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">match</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">match</span><span class="p">.</span><span class="nx">substr</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">match</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">);</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">matched</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">matched</span><span class="p">.</span><span class="nx">substr</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">matched</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">);</span>

        <span class="k">if</span> <span class="p">(</span><span class="nx">lines</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span> <span class="o">-=</span> <span class="nx">lines</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">;</span>
        <span class="p">}</span>
        <span class="kd">var</span> <span class="nx">r</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">range</span><span class="p">;</span>

        <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span> <span class="o">=</span> <span class="p">{</span>
            <span class="nx">first_line</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">first_line</span><span class="p">,</span>
            <span class="nx">last_line</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span> <span class="o">+</span> <span class="mi">1</span><span class="p">,</span>
            <span class="nx">first_column</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">first_column</span><span class="p">,</span>
            <span class="nx">last_column</span><span class="o">:</span> <span class="nx">lines</span> <span class="o">?</span>
                <span class="p">(</span><span class="nx">lines</span><span class="p">.</span><span class="nx">length</span> <span class="o">===</span> <span class="nx">oldLines</span><span class="p">.</span><span class="nx">length</span> <span class="o">?</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">first_column</span> <span class="o">:</span> <span class="mi">0</span><span class="p">)</span>
                 <span class="o">+</span> <span class="nx">oldLines</span><span class="p">[</span><span class="nx">oldLines</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">lines</span><span class="p">.</span><span class="nx">length</span><span class="p">].</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">lines</span><span class="p">[</span><span class="mi">0</span><span class="p">].</span><span class="nx">length</span> <span class="o">:</span>
              <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">first_column</span> <span class="o">-</span> <span class="nx">len</span>
        <span class="p">};</span>

        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">ranges</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">range</span> <span class="o">=</span> <span class="p">[</span><span class="nx">r</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="nx">r</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">yyleng</span> <span class="o">-</span> <span class="nx">len</span><span class="p">];</span>
        <span class="p">}</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yyleng</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
        <span class="k">return</span> <span class="k">this</span><span class="p">;</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-7" id="section-7">&#182;</a>
</div>
<p>When called from action, caches matched text and appends it on next action</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">more</span><span class="o">:</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">_more</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
        <span class="k">return</span> <span class="k">this</span><span class="p">;</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-8" id="section-8">&#182;</a>
</div>
<p>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.</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">reject</span><span class="o">:</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">backtrack_lexer</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">_backtrack</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">parseError</span><span class="p">(</span><span class="s1">&#39;Lexical error on line &#39;</span> <span class="o">+</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">showPosition</span><span class="p">(),</span> <span class="p">{</span>
                <span class="nx">text</span><span class="o">:</span> <span class="s2">&quot;&quot;</span><span class="p">,</span>
                <span class="nx">token</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
                <span class="nx">line</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span>
            <span class="p">});</span>

        <span class="p">}</span>
        <span class="k">return</span> <span class="k">this</span><span class="p">;</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-9" id="section-9">&#182;</a>
</div>
<p>retain first n characters of the match</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">less</span><span class="o">:</span><span class="kd">function</span> <span class="p">(</span><span class="nx">n</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">unput</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">match</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="nx">n</span><span class="p">));</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-10" id="section-10">&#182;</a>
</div>
<p>displays already matched input, i.e. for error messages</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">pastInput</span><span class="o">:</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
        <span class="kd">var</span> <span class="nx">past</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">matched</span><span class="p">.</span><span class="nx">substr</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">matched</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="k">this</span><span class="p">.</span><span class="nx">match</span><span class="p">.</span><span class="nx">length</span><span class="p">);</span>
        <span class="k">return</span> <span class="p">(</span><span class="nx">past</span><span class="p">.</span><span class="nx">length</span> <span class="o">&gt;</span> <span class="mi">20</span> <span class="o">?</span> <span class="s1">&#39;...&#39;</span><span class="o">:</span><span class="s1">&#39;&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="nx">past</span><span class="p">.</span><span class="nx">substr</span><span class="p">(</span><span class="o">-</span><span class="mi">20</span><span class="p">).</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\n/g</span><span class="p">,</span> <span class="s2">&quot;&quot;</span><span class="p">);</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-11" id="section-11">&#182;</a>
</div>
<p>displays upcoming input, i.e. for error messages</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">upcomingInput</span><span class="o">:</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
        <span class="kd">var</span> <span class="nx">next</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">match</span><span class="p">;</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">next</span><span class="p">.</span><span class="nx">length</span> <span class="o">&lt;</span> <span class="mi">20</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">next</span> <span class="o">+=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">.</span><span class="nx">substr</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">20</span><span class="o">-</span><span class="nx">next</span><span class="p">.</span><span class="nx">length</span><span class="p">);</span>
        <span class="p">}</span>
        <span class="k">return</span> <span class="p">(</span><span class="nx">next</span><span class="p">.</span><span class="nx">substr</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">20</span><span class="p">)</span> <span class="o">+</span> <span class="p">(</span><span class="nx">next</span><span class="p">.</span><span class="nx">length</span> <span class="o">&gt;</span> <span class="mi">20</span> <span class="o">?</span> <span class="s1">&#39;...&#39;</span> <span class="o">:</span> <span class="s1">&#39;&#39;</span><span class="p">)).</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/\n/g</span><span class="p">,</span> <span class="s2">&quot;&quot;</span><span class="p">);</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-12" id="section-12">&#182;</a>
</div>
<p>displays the character position where the lexing error occurred, i.e. for error messages</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">showPosition</span><span class="o">:</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
        <span class="kd">var</span> <span class="nx">pre</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">pastInput</span><span class="p">();</span>
        <span class="kd">var</span> <span class="nx">c</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Array</span><span class="p">(</span><span class="nx">pre</span><span class="p">.</span><span class="nx">length</span> <span class="o">+</span> <span class="mi">1</span><span class="p">).</span><span class="nx">join</span><span class="p">(</span><span class="s2">&quot;-&quot;</span><span class="p">);</span>
        <span class="k">return</span> <span class="nx">pre</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">upcomingInput</span><span class="p">()</span> <span class="o">+</span> <span class="s2">&quot;\n&quot;</span> <span class="o">+</span> <span class="nx">c</span> <span class="o">+</span> <span class="s2">&quot;^&quot;</span><span class="p">;</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-13" id="section-13">&#182;</a>
</div>
<p>test the lexed token: return FALSE when not a match, otherwise return token</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">test_match</span><span class="o">:</span><span class="kd">function</span> <span class="p">(</span><span class="nx">match</span><span class="p">,</span> <span class="nx">indexed_rule</span><span class="p">)</span> <span class="p">{</span>
        <span class="kd">var</span> <span class="nx">token</span><span class="p">,</span>
            <span class="nx">lines</span><span class="p">,</span>
            <span class="nx">backup</span><span class="p">;</span>

        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">backtrack_lexer</span><span class="p">)</span> <span class="p">{</span>

</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-14" id="section-14">&#182;</a>
</div>
<p>save context</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
            <span class="nx">backup</span> <span class="o">=</span> <span class="p">{</span>
                <span class="nx">yylineno</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span><span class="p">,</span>
                <span class="nx">yylloc</span><span class="o">:</span> <span class="p">{</span>
                    <span class="nx">first_line</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">first_line</span><span class="p">,</span>
                    <span class="nx">last_line</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">last_line</span><span class="p">,</span>
                    <span class="nx">first_column</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">first_column</span><span class="p">,</span>
                    <span class="nx">last_column</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">last_column</span>
                <span class="p">},</span>
                <span class="nx">yytext</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span><span class="p">,</span>
                <span class="nx">match</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">match</span><span class="p">,</span>
                <span class="nx">matches</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">matches</span><span class="p">,</span>
                <span class="nx">matched</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">matched</span><span class="p">,</span>
                <span class="nx">yyleng</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yyleng</span><span class="p">,</span>
                <span class="nx">offset</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">offset</span><span class="p">,</span>
                <span class="nx">_more</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_more</span><span class="p">,</span>
                <span class="nx">_input</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">,</span>
                <span class="nx">yy</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yy</span><span class="p">,</span>
                <span class="nx">conditionStack</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">0</span><span class="p">),</span>
                <span class="nx">done</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">done</span>
            <span class="p">};</span>
            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">ranges</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">backup</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">range</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">range</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span>
            <span class="p">}</span>
        <span class="p">}</span>

        <span class="nx">lines</span> <span class="o">=</span> <span class="nx">match</span><span class="p">[</span><span class="mi">0</span><span class="p">].</span><span class="nx">match</span><span class="p">(</span><span class="sr">/(?:\r\n?|\n).*/g</span><span class="p">);</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">lines</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span> <span class="o">+=</span> <span class="nx">lines</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
        <span class="p">}</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span> <span class="o">=</span> <span class="p">{</span>
            <span class="nx">first_line</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">last_line</span><span class="p">,</span>
            <span class="nx">last_line</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span> <span class="o">+</span> <span class="mi">1</span><span class="p">,</span>
            <span class="nx">first_column</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">last_column</span><span class="p">,</span>
            <span class="nx">last_column</span><span class="o">:</span> <span class="nx">lines</span> <span class="o">?</span>
                         <span class="nx">lines</span><span class="p">[</span><span class="nx">lines</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">].</span><span class="nx">length</span> <span class="o">-</span> <span class="nx">lines</span><span class="p">[</span><span class="nx">lines</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">].</span><span class="nx">match</span><span class="p">(</span><span class="sr">/\r?\n?/</span><span class="p">)[</span><span class="mi">0</span><span class="p">].</span><span class="nx">length</span> <span class="o">:</span>
                         <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">last_column</span> <span class="o">+</span> <span class="nx">match</span><span class="p">[</span><span class="mi">0</span><span class="p">].</span><span class="nx">length</span>
        <span class="p">};</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span> <span class="o">+=</span> <span class="nx">match</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">match</span> <span class="o">+=</span> <span class="nx">match</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">matches</span> <span class="o">=</span> <span class="nx">match</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">yyleng</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">ranges</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yylloc</span><span class="p">.</span><span class="nx">range</span> <span class="o">=</span> <span class="p">[</span><span class="k">this</span><span class="p">.</span><span class="nx">offset</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">offset</span> <span class="o">+=</span> <span class="k">this</span><span class="p">.</span><span class="nx">yyleng</span><span class="p">];</span>
        <span class="p">}</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">_more</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">_backtrack</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">_input</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="nx">match</span><span class="p">[</span><span class="mi">0</span><span class="p">].</span><span class="nx">length</span><span class="p">);</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">matched</span> <span class="o">+=</span> <span class="nx">match</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
        <span class="nx">token</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">performAction</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">yy</span><span class="p">,</span> <span class="k">this</span><span class="p">,</span> <span class="nx">indexed_rule</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">[</span><span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]);</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">done</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">done</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
        <span class="p">}</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">token</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">return</span> <span class="nx">token</span><span class="p">;</span>
        <span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_backtrack</span><span class="p">)</span> <span class="p">{</span>

</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-15" id="section-15">&#182;</a>
</div>
<p>recover context</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
            <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">k</span> <span class="k">in</span> <span class="nx">backup</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">this</span><span class="p">[</span><span class="nx">k</span><span class="p">]</span> <span class="o">=</span> <span class="nx">backup</span><span class="p">[</span><span class="nx">k</span><span class="p">];</span>
            <span class="p">}</span>
            <span class="k">return</span> <span class="kc">false</span><span class="p">;</span> <span class="c1">// rule action called reject() implying the next rule should be tested instead.</span>
        <span class="p">}</span>
        <span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-16" id="section-16">&#182;</a>
</div>
<p>return next match in input</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">next</span><span class="o">:</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">done</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">EOF</span><span class="p">;</span>
        <span class="p">}</span>
        <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">done</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
        <span class="p">}</span>

        <span class="kd">var</span> <span class="nx">token</span><span class="p">,</span>
            <span class="nx">match</span><span class="p">,</span>
            <span class="nx">tempMatch</span><span class="p">,</span>
            <span class="nx">index</span><span class="p">;</span>
        <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">_more</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">yytext</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="p">;</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">match</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="p">;</span>
        <span class="p">}</span>
        <span class="kd">var</span> <span class="nx">rules</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_currentRules</span><span class="p">();</span>
        <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">rules</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">tempMatch</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_input</span><span class="p">.</span><span class="nx">match</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">rules</span><span class="p">[</span><span class="nx">rules</span><span class="p">[</span><span class="nx">i</span><span class="p">]]);</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">tempMatch</span> <span class="o">&amp;&amp;</span> <span class="p">(</span><span class="o">!</span><span class="nx">match</span> <span class="o">||</span> <span class="nx">tempMatch</span><span class="p">[</span><span class="mi">0</span><span class="p">].</span><span class="nx">length</span> <span class="o">&gt;</span> <span class="nx">match</span><span class="p">[</span><span class="mi">0</span><span class="p">].</span><span class="nx">length</span><span class="p">))</span> <span class="p">{</span>
                <span class="nx">match</span> <span class="o">=</span> <span class="nx">tempMatch</span><span class="p">;</span>
                <span class="nx">index</span> <span class="o">=</span> <span class="nx">i</span><span class="p">;</span>
                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">backtrack_lexer</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">token</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">test_match</span><span class="p">(</span><span class="nx">tempMatch</span><span class="p">,</span> <span class="nx">rules</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
                    <span class="k">if</span> <span class="p">(</span><span class="nx">token</span> <span class="o">!==</span> <span class="kc">false</span><span class="p">)</span> <span class="p">{</span>
                        <span class="k">return</span> <span class="nx">token</span><span class="p">;</span>
                    <span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_backtrack</span><span class="p">)</span> <span class="p">{</span>
                        <span class="nx">match</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
                        <span class="k">continue</span><span class="p">;</span> <span class="c1">// rule action called reject() implying a rule MISmatch.</span>
                    <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>

</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-17" id="section-17">&#182;</a>
</div>
<p>else: this is a lexer rule which consumes input without producing a token (e.g. whitespace)</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
                        <span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
                    <span class="p">}</span>
                <span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">flex</span><span class="p">)</span> <span class="p">{</span>
                    <span class="k">break</span><span class="p">;</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">}</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">match</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">token</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">test_match</span><span class="p">(</span><span class="nx">match</span><span class="p">,</span> <span class="nx">rules</span><span class="p">[</span><span class="nx">index</span><span class="p">]);</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">token</span> <span class="o">!==</span> <span class="kc">false</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">return</span> <span class="nx">token</span><span class="p">;</span>
            <span class="p">}</span>

</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-18" id="section-18">&#182;</a>
</div>
<p>else: this is a lexer rule which consumes input without producing a token (e.g. whitespace)</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
            <span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
        <span class="p">}</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_input</span> <span class="o">===</span> <span class="s2">&quot;&quot;</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">EOF</span><span class="p">;</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">parseError</span><span class="p">(</span><span class="s1">&#39;Lexical error on line &#39;</span> <span class="o">+</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;. Unrecognized text.\n&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">showPosition</span><span class="p">(),</span> <span class="p">{</span>
                <span class="nx">text</span><span class="o">:</span> <span class="s2">&quot;&quot;</span><span class="p">,</span>
                <span class="nx">token</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
                <span class="nx">line</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">yylineno</span>
            <span class="p">});</span>
        <span class="p">}</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-19" id="section-19">&#182;</a>
</div>
<p>return next match that has a token</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">lex</span><span class="o">:</span><span class="kd">function</span> <span class="nx">lex</span><span class="p">()</span> <span class="p">{</span>
        <span class="kd">var</span> <span class="nx">r</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">next</span><span class="p">();</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">r</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">return</span> <span class="nx">r</span><span class="p">;</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">lex</span><span class="p">();</span>
        <span class="p">}</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-20" id="section-20">&#182;</a>
</div>
<p>activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">begin</span><span class="o">:</span><span class="kd">function</span> <span class="nx">begin</span><span class="p">(</span><span class="nx">condition</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">condition</span><span class="p">);</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-21" id="section-21">&#182;</a>
</div>
<p>pop the previously active lexer condition state off the condition stack</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">popState</span><span class="o">:</span><span class="kd">function</span> <span class="nx">popState</span><span class="p">()</span> <span class="p">{</span>
        <span class="kd">var</span> <span class="nx">n</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">;</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">n</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">pop</span><span class="p">();</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
        <span class="p">}</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-22" id="section-22">&#182;</a>
</div>
<p>produce the lexer rule set which is active for the currently active lexer condition state</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">_currentRules</span><span class="o">:</span><span class="kd">function</span> <span class="nx">_currentRules</span><span class="p">()</span> <span class="p">{</span>
        <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">length</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">[</span><span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">])</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditions</span><span class="p">[</span><span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">[</span><span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]].</span><span class="nx">rules</span><span class="p">;</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditions</span><span class="p">[</span><span class="s2">&quot;INITIAL&quot;</span><span class="p">].</span><span class="nx">rules</span><span class="p">;</span>
        <span class="p">}</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-23" id="section-23">&#182;</a>
</div>
<p>return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">topState</span><span class="o">:</span><span class="kd">function</span> <span class="nx">topState</span><span class="p">(</span><span class="nx">n</span><span class="p">)</span> <span class="p">{</span>
        <span class="nx">n</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span> <span class="o">-</span> <span class="nb">Math</span><span class="p">.</span><span class="nx">abs</span><span class="p">(</span><span class="nx">n</span> <span class="o">||</span> <span class="mi">0</span><span class="p">);</span>
        <span class="k">if</span> <span class="p">(</span><span class="nx">n</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">[</span><span class="nx">n</span><span class="p">];</span>
        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
            <span class="k">return</span> <span class="s2">&quot;INITIAL&quot;</span><span class="p">;</span>
        <span class="p">}</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-24" id="section-24">&#182;</a>
</div>
<p>alias for begin(condition)</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">pushState</span><span class="o">:</span><span class="kd">function</span> <span class="nx">pushState</span><span class="p">(</span><span class="nx">condition</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="nx">condition</span><span class="p">);</span>
    <span class="p">},</span>


</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-25" id="section-25">&#182;</a>
</div>
<p>return the number of states currently on the stack</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>
<span class="nx">stateStackSize</span><span class="o">:</span><span class="kd">function</span> <span class="nx">stateStackSize</span><span class="p">()</span> <span class="p">{</span>
        <span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">conditionStack</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
    <span class="p">},</span>
<span class="nx">options</span><span class="o">:</span> <span class="p">{</span><span class="s2">&quot;case-insensitive&quot;</span><span class="o">:</span><span class="kc">true</span><span class="p">},</span>
<span class="nx">performAction</span><span class="o">:</span> <span class="kd">function</span> <span class="nx">anonymous</span><span class="p">(</span><span class="nx">yy</span><span class="p">,</span><span class="nx">yy_</span><span class="p">,</span><span class="nx">$avoiding_name_collisions</span><span class="p">,</span><span class="nx">YY_START</span><span class="p">)</span> <span class="p">{</span>

</pre></div>
        </td>
      </tr>
      <tr>
        <td class="docs">
<div class="pilwrap">
  <a class="pilcrow" href="#section-26" id="section-26">&#182;</a>
</div>
<p>Pre-lexer code can go here</p>

        </td>
        <td class="code highlight"><div class="highlight"><pre>

<span class="kd">var</span> <span class="nx">YYSTATE</span><span class="o">=</span><span class="nx">YY_START</span><span class="p">;</span>
<span class="k">switch</span><span class="p">(</span><span class="nx">$avoiding_name_collisions</span><span class="p">)</span> <span class="p">{</span>
<span class="k">case</span> <span class="mi">0</span><span class="o">:</span><span class="cm">/* do nothing */</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">1</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;string&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">2</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">3</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;TEXT&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">4</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;eSquareVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">5</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">6</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;SQUARE&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">7</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;squareVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">8</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">9</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;SQUARE&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">10</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;eOddVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">11</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">12</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;ODD&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">13</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;oddVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">14</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">15</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;ODD&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">16</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;eDiamondVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">17</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">18</span><span class="o">:</span><span class="nx">log</span><span class="p">.</span><span class="nx">debug</span><span class="p">(</span><span class="s1">&#39;edia: &#39;</span><span class="o">+</span><span class="nx">yy_</span><span class="p">.</span><span class="nx">yytext</span><span class="p">);</span><span class="k">return</span> <span class="s2">&quot;DIAMOND&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">19</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;diamondVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">20</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">21</span><span class="o">:</span><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">&#39;dia: &#39;</span><span class="o">+</span><span class="nx">yy_</span><span class="p">.</span><span class="nx">yytext</span><span class="p">);</span><span class="k">return</span> <span class="s2">&quot;DIAMOND&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">22</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;eCircleVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">23</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">24</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;CIRCLE&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">25</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;circleVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">26</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">27</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;CIRCLE&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">28</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;eRoundVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">29</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">30</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;ROUND&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">31</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">begin</span><span class="p">(</span><span class="s2">&quot;roundVertex&quot;</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">32</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">popState</span><span class="p">();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">33</span><span class="o">:</span><span class="k">return</span> <span class="s2">&quot;ROUND&quot;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">34</span><span class="o">:</span><span class="cm">/* do nothing */</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">35</span><span class="o">:</span><span class="k">return</span> <span class="mi">55</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">36</span><span class="o">:</span><span class="k">return</span> <span class="mi">65</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">37</span><span class="o">:</span><span class="k">return</span> <span class="mi">56</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">38</span><span class="o">:</span><span class="k">return</span> <span class="mi">57</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">39</span><span class="o">:</span><span class="k">return</span> <span class="mi">58</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">40</span><span class="o">:</span><span class="k">return</span> <span class="mi">59</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">41</span><span class="o">:</span><span class="k">return</span> <span class="mi">6</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">42</span><span class="o">:</span><span class="k">return</span> <span class="mi">60</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">43</span><span class="o">:</span><span class="k">return</span> <span class="mi">61</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">44</span><span class="o">:</span><span class="k">return</span> <span class="mi">7</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">45</span><span class="o">:</span><span class="k">return</span> <span class="mi">7</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">46</span><span class="o">:</span><span class="k">return</span> <span class="mi">7</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">47</span><span class="o">:</span><span class="k">return</span> <span class="mi">7</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">48</span><span class="o">:</span><span class="k">return</span> <span class="mi">7</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">49</span><span class="o">:</span><span class="k">return</span> <span class="mi">7</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">50</span><span class="o">:</span><span class="k">return</span> <span class="mi">72</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">51</span><span class="o">:</span><span class="k">return</span> <span class="mi">81</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">52</span><span class="o">:</span><span class="k">return</span> <span class="mi">79</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">53</span><span class="o">:</span><span class="k">return</span> <span class="mi">16</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">54</span><span class="o">:</span><span class="k">return</span> <span class="mi">76</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">55</span><span class="o">:</span><span class="k">return</span> <span class="mi">86</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">56</span><span class="o">:</span><span class="k">return</span> <span class="mi">9</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">57</span><span class="o">:</span><span class="k">return</span> <span class="mi">8</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">58</span><span class="o">:</span><span class="k">return</span> <span class="mi">10</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">59</span><span class="o">:</span><span class="k">return</span> <span class="mi">11</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">60</span><span class="o">:</span><span class="k">return</span> <span class="mi">35</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">61</span><span class="o">:</span><span class="k">return</span> <span class="mi">33</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">62</span><span class="o">:</span><span class="k">return</span> <span class="mi">34</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">63</span><span class="o">:</span><span class="k">return</span> <span class="mi">36</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">64</span><span class="o">:</span><span class="k">return</span> <span class="mi">40</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">65</span><span class="o">:</span><span class="k">return</span> <span class="mi">38</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">66</span><span class="o">:</span><span class="k">return</span> <span class="mi">39</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">67</span><span class="o">:</span><span class="k">return</span> <span class="mi">41</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">68</span><span class="o">:</span><span class="k">return</span> <span class="mi">40</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">69</span><span class="o">:</span><span class="k">return</span> <span class="mi">38</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">70</span><span class="o">:</span><span class="k">return</span> <span class="mi">39</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">71</span><span class="o">:</span><span class="k">return</span> <span class="mi">41</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">72</span><span class="o">:</span><span class="k">return</span> <span class="mi">45</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">73</span><span class="o">:</span><span class="k">return</span> <span class="mi">43</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">74</span><span class="o">:</span><span class="k">return</span> <span class="mi">44</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">75</span><span class="o">:</span><span class="k">return</span> <span class="mi">46</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">76</span><span class="o">:</span><span class="k">return</span> <span class="mi">31</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">77</span><span class="o">:</span><span class="k">return</span> <span class="mi">37</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">78</span><span class="o">:</span><span class="k">return</span> <span class="mi">42</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">79</span><span class="o">:</span><span class="k">return</span> <span class="mi">49</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">80</span><span class="o">:</span><span class="k">return</span> <span class="mi">82</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">81</span><span class="o">:</span><span class="k">return</span> <span class="mi">84</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">82</span><span class="o">:</span><span class="k">return</span> <span class="mi">74</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">83</span><span class="o">:</span><span class="k">return</span> <span class="mi">85</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">84</span><span class="o">:</span><span class="k">return</span> <span class="mi">85</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">85</span><span class="o">:</span><span class="k">return</span> <span class="mi">78</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">86</span><span class="o">:</span><span class="k">return</span> <span class="mi">50</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">87</span><span class="o">:</span><span class="k">return</span> <span class="mi">87</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">88</span><span class="o">:</span><span class="k">return</span> <span class="mi">88</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">89</span><span class="o">:</span><span class="k">return</span> <span class="mi">89</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">90</span><span class="o">:</span><span class="k">return</span> <span class="mi">90</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">91</span><span class="o">:</span><span class="k">return</span> <span class="mi">91</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">92</span><span class="o">:</span><span class="k">return</span> <span class="mi">92</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">93</span><span class="o">:</span><span class="k">return</span> <span class="mi">95</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">94</span><span class="o">:</span><span class="k">return</span> <span class="s1">&#39;say&#39;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">95</span><span class="o">:</span><span class="k">return</span> <span class="mi">14</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">96</span><span class="o">:</span><span class="k">return</span> <span class="mi">15</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="mi">97</span><span class="o">:</span><span class="k">return</span> <span class="s1">&#39;INVALID&#39;</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">},</span>
<span class="nx">rules</span><span class="o">:</span> <span class="p">[</span><span class="sr">/^(?:%%[^\n]*)/i</span><span class="p">,</span><span class="sr">/^(?:[&quot;])/i</span><span class="p">,</span><span class="sr">/^(?:[&quot;])/i</span><span class="p">,</span><span class="sr">/^(?:[^&quot;]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\[][&quot;])/i</span><span class="p">,</span><span class="sr">/^(?:[&quot;][\]])/i</span><span class="p">,</span><span class="sr">/^(?:[^&quot;]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\[])/i</span><span class="p">,</span><span class="sr">/^(?:[\]])/i</span><span class="p">,</span><span class="sr">/^(?:[^\]]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\&gt;][&quot;])/i</span><span class="p">,</span><span class="sr">/^(?:[&quot;][\]])/i</span><span class="p">,</span><span class="sr">/^(?:[^&quot;]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\&gt;])/i</span><span class="p">,</span><span class="sr">/^(?:[\]])/i</span><span class="p">,</span><span class="sr">/^(?:[^\]]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\{][&quot;])/i</span><span class="p">,</span><span class="sr">/^(?:[&quot;][\}])/i</span><span class="p">,</span><span class="sr">/^(?:[^&quot;]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\{])/i</span><span class="p">,</span><span class="sr">/^(?:[\}])/i</span><span class="p">,</span><span class="sr">/^(?:[^\}]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\(][\(][&quot;])/i</span><span class="p">,</span><span class="sr">/^(?:[&quot;][\)][\)])/i</span><span class="p">,</span><span class="sr">/^(?:[^\&quot;]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\(][\(])/i</span><span class="p">,</span><span class="sr">/^(?:[\)][\)])/i</span><span class="p">,</span><span class="sr">/^(?:[^\)]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\(][&quot;])/i</span><span class="p">,</span><span class="sr">/^(?:[&quot;][\)])/i</span><span class="p">,</span><span class="sr">/^(?:[^&quot;]*)/i</span><span class="p">,</span><span class="sr">/^(?:[\(])/i</span><span class="p">,</span><span class="sr">/^(?:[\)])/i</span><span class="p">,</span><span class="sr">/^(?:[^\)]*)/i</span><span class="p">,</span><span class="sr">/^(?:\s+)/i</span><span class="p">,</span><span class="sr">/^(?:style\b)/i</span><span class="p">,</span><span class="sr">/^(?:default\b)/i</span><span class="p">,</span><span class="sr">/^(?:linkStyle\b)/i</span><span class="p">,</span><span class="sr">/^(?:classDef\b)/i</span><span class="p">,</span><span class="sr">/^(?:class\b)/i</span><span class="p">,</span><span class="sr">/^(?:click\b)/i</span><span class="p">,</span><span class="sr">/^(?:graph\b)/i</span><span class="p">,</span><span class="sr">/^(?:subgraph\b)/i</span><span class="p">,</span><span class="sr">/^(?:end\s*)/i</span><span class="p">,</span><span class="sr">/^(?:LR\b)/i</span><span class="p">,</span><span class="sr">/^(?:RL\b)/i</span><span class="p">,</span><span class="sr">/^(?:TB\b)/i</span><span class="p">,</span><span class="sr">/^(?:BT\b)/i</span><span class="p">,</span><span class="sr">/^(?:TD\b)/i</span><span class="p">,</span><span class="sr">/^(?:BR\b)/i</span><span class="p">,</span><span class="sr">/^(?:[0-9]+)/i</span><span class="p">,</span><span class="sr">/^(?:#)/i</span><span class="p">,</span><span class="sr">/^(?::)/i</span><span class="p">,</span><span class="sr">/^(?:;)/i</span><span class="p">,</span><span class="sr">/^(?:,)/i</span><span class="p">,</span><span class="sr">/^(?:\*)/i</span><span class="p">,</span><span class="sr">/^(?:&lt;)/i</span><span class="p">,</span><span class="sr">/^(?:&gt;)/i</span><span class="p">,</span><span class="sr">/^(?:\^)/i</span><span class="p">,</span><span class="sr">/^(?:v\b)/i</span><span class="p">,</span><span class="sr">/^(?:\s*--[x]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*--&gt;\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*--[o]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*---\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*-\.-[x]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*-\.-&gt;\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*-\.-[o]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*-\.-\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*.-[x]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*\.-&gt;\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*\.-[o]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*\.-\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*==[x]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*==&gt;\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*==[o]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*==[\=]\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*--\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*-\.\s*)/i</span><span class="p">,</span><span class="sr">/^(?:\s*==\s*)/i</span><span class="p">,</span><span class="sr">/^(?:-)/i</span><span class="p">,</span><span class="sr">/^(?:\.)/i</span><span class="p">,</span><span class="sr">/^(?:\+)/i</span><span class="p">,</span><span class="sr">/^(?:%)/i</span><span class="p">,</span><span class="sr">/^(?:=)/i</span><span class="p">,</span><span class="sr">/^(?:=)/i</span><span class="p">,</span><span class="sr">/^(?:[\u0021-\u0027\u002A-\u002E\u003F\u0041-\u005A\u005C\u005F-\u007A\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC_\/])/i</span><span class="p">,</span><span class="sr">/^(?:\|)/i</span><span class="p">,</span><span class="sr">/^(?:\()/i</span><span class="p">,</span><span class="sr">/^(?:\))/i</span><span class="p">,</span><span class="sr">/^(?:\[)/i</span><span class="p">,</span><span class="sr">/^(?:\])/i</span><span class="p">,</span><span class="sr">/^(?:\{)/i</span><span class="p">,</span><span class="sr">/^(?:\})/i</span><span class="p">,</span><span class="sr">/^(?:&quot;)/i</span><span class="p">,</span><span class="sr">/^(?:say\b)/i</span><span class="p">,</span><span class="sr">/^(?:\n+)/i</span><span class="p">,</span><span class="sr">/^(?:$)/i</span><span class="p">,</span><span class="sr">/^(?:.)/i</span><span class="p">],</span>
<span class="nx">conditions</span><span class="o">:</span> <span class="p">{</span><span class="s2">&quot;string&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;squareVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">8</span><span class="p">,</span><span class="mi">9</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;eSquareVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">5</span><span class="p">,</span><span class="mi">6</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;roundVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">32</span><span class="p">,</span><span class="mi">33</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;eRoundVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">29</span><span class="p">,</span><span class="mi">30</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;circleVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">26</span><span class="p">,</span><span class="mi">27</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;eCircleVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">23</span><span class="p">,</span><span class="mi">24</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;diamondVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">20</span><span class="p">,</span><span class="mi">21</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;eDiamondVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">17</span><span class="p">,</span><span class="mi">18</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;oddVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">14</span><span class="p">,</span><span class="mi">15</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;eOddVertex&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">11</span><span class="p">,</span><span class="mi">12</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">false</span><span class="p">},</span><span class="s2">&quot;INITIAL&quot;</span><span class="o">:</span><span class="p">{</span><span class="s2">&quot;rules&quot;</span><span class="o">:</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">7</span><span class="p">,</span><span class="mi">10</span><span class="p">,</span><span class="mi">13</span><span class="p">,</span><span class="mi">16</span><span class="p">,</span><span class="mi">19</span><span class="p">,</span><span class="mi">22</span><span class="p">,</span><span class="mi">25</span><span class="p">,</span><span class="mi">28</span><span class="p">,</span><span class="mi">31</span><span class="p">,</span><span class="mi">34</span><span class="p">,</span><span class="mi">35</span><span class="p">,</span><span class="mi">36</span><span class="p">,</span><span class="mi">37</span><span class="p">,</span><span class="mi">38</span><span class="p">,</span><span class="mi">39</span><span class="p">,</span><span class="mi">40</span><span class="p">,</span><span class="mi">41</span><span class="p">,</span><span class="mi">42</span><span class="p">,</span><span class="mi">43</span><span class="p">,</span><span class="mi">44</span><span class="p">,</span><span class="mi">45</span><span class="p">,</span><span class="mi">46</span><span class="p">,</span><span class="mi">47</span><span class="p">,</span><span class="mi">48</span><span class="p">,</span><span class="mi">49</span><span class="p">,</span><span class="mi">50</span><span class="p">,</span><span class="mi">51</span><span class="p">,</span><span class="mi">52</span><span class="p">,</span><span class="mi">53</span><span class="p">,</span><span class="mi">54</span><span class="p">,</span><span class="mi">55</span><span class="p">,</span><span class="mi">56</span><span class="p">,</span><span class="mi">57</span><span class="p">,</span><span class="mi">58</span><span class="p">,</span><span class="mi">59</span><span class="p">,</span><span class="mi">60</span><span class="p">,</span><span class="mi">61</span><span class="p">,</span><span class="mi">62</span><span class="p">,</span><span class="mi">63</span><span class="p">,</span><span class="mi">64</span><span class="p">,</span><span class="mi">65</span><span class="p">,</span><span class="mi">66</span><span class="p">,</span><span class="mi">67</span><span class="p">,</span><span class="mi">68</span><span class="p">,</span><span class="mi">69</span><span class="p">,</span><span class="mi">70</span><span class="p">,</span><span class="mi">71</span><span class="p">,</span><span class="mi">72</span><span class="p">,</span><span class="mi">73</span><span class="p">,</span><span class="mi">74</span><span class="p">,</span><span class="mi">75</span><span class="p">,</span><span class="mi">76</span><span class="p">,</span><span class="mi">77</span><span class="p">,</span><span class="mi">78</span><span class="p">,</span><span class="mi">79</span><span class="p">,</span><span class="mi">80</span><span class="p">,</span><span class="mi">81</span><span class="p">,</span><span class="mi">82</span><span class="p">,</span><span class="mi">83</span><span class="p">,</span><span class="mi">84</span><span class="p">,</span><span class="mi">85</span><span class="p">,</span><span class="mi">86</span><span class="p">,</span><span class="mi">87</span><span class="p">,</span><span class="mi">88</span><span class="p">,</span><span class="mi">89</span><span class="p">,</span><span class="mi">90</span><span class="p">,</span><span class="mi">91</span><span class="p">,</span><span class="mi">92</span><span class="p">,</span><span class="mi">93</span><span class="p">,</span><span class="mi">94</span><span class="p">,</span><span class="mi">95</span><span class="p">,</span><span class="mi">96</span><span class="p">,</span><span class="mi">97</span><span class="p">],</span><span class="s2">&quot;inclusive&quot;</span><span class="o">:</span><span class="kc">true</span><span class="p">}}</span>
<span class="p">});</span>
<span class="k">return</span> <span class="nx">lexer</span><span class="p">;</span>
<span class="p">})();</span>
<span class="nx">parser</span><span class="p">.</span><span class="nx">lexer</span> <span class="o">=</span> <span class="nx">lexer</span><span class="p">;</span>
<span class="kd">function</span> <span class="nx">Parser</span> <span class="p">()</span> <span class="p">{</span>
  <span class="k">this</span><span class="p">.</span><span class="nx">yy</span> <span class="o">=</span> <span class="p">{};</span>
<span class="p">}</span>
<span class="nx">Parser</span><span class="p">.</span><span class="nx">prototype</span> <span class="o">=</span> <span class="nx">parser</span><span class="p">;</span><span class="nx">parser</span><span class="p">.</span><span class="nx">Parser</span> <span class="o">=</span> <span class="nx">Parser</span><span class="p">;</span>
<span class="k">return</span> <span class="k">new</span> <span class="nx">Parser</span><span class="p">;</span>
<span class="p">})();</span>


<span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">require</span> <span class="o">!==</span> <span class="s1">&#39;undefined&#39;</span> <span class="o">&amp;&amp;</span> <span class="k">typeof</span> <span class="nx">exports</span> <span class="o">!==</span> <span class="s1">&#39;undefined&#39;</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">exports</span><span class="p">.</span><span class="nx">parser</span> <span class="o">=</span> <span class="nx">parser</span><span class="p">;</span>
<span class="nx">exports</span><span class="p">.</span><span class="nx">Parser</span> <span class="o">=</span> <span class="nx">parser</span><span class="p">.</span><span class="nx">Parser</span><span class="p">;</span>
<span class="nx">exports</span><span class="p">.</span><span class="nx">parse</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="nx">parser</span><span class="p">.</span><span class="nx">parse</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="nx">parser</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span> <span class="p">};</span>
<span class="nx">exports</span><span class="p">.</span><span class="nx">main</span> <span class="o">=</span> <span class="kd">function</span> <span class="nx">commonjsMain</span><span class="p">(</span><span class="nx">args</span><span class="p">)</span> <span class="p">{</span>
    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">args</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="p">{</span>
        <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">&#39;Usage: &#39;</span><span class="o">+</span><span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="s1">&#39; FILE&#39;</span><span class="p">);</span>
        <span class="nx">process</span><span class="p">.</span><span class="nx">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
    <span class="p">}</span>
    <span class="kd">var</span> <span class="nx">source</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">&#39;fs&#39;</span><span class="p">).</span><span class="nx">readFileSync</span><span class="p">(</span><span class="nx">require</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">).</span><span class="nx">normalize</span><span class="p">(</span><span class="nx">args</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span> <span class="s2">&quot;utf8&quot;</span><span class="p">);</span>
    <span class="k">return</span> <span class="nx">exports</span><span class="p">.</span><span class="nx">parser</span><span class="p">.</span><span class="nx">parse</span><span class="p">(</span><span class="nx">source</span><span class="p">);</span>
<span class="p">};</span>
<span class="k">if</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">module</span> <span class="o">!==</span> <span class="s1">&#39;undefined&#39;</span> <span class="o">&amp;&amp;</span> <span class="nx">require</span><span class="p">.</span><span class="nx">main</span> <span class="o">===</span> <span class="nx">module</span><span class="p">)</span> <span class="p">{</span>
  <span class="nx">exports</span><span class="p">.</span><span class="nx">main</span><span class="p">(</span><span class="nx">process</span><span class="p">.</span><span class="nx">argv</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="mi">1</span><span class="p">));</span>
<span class="p">}</span>
<span class="p">}</span>
</pre></div>
        </td>
      </tr>
  </tbody>
</table>
  </div>
</body>
</html>