jssm 5.142.1 → 5.142.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cdn/viz.js CHANGED
@@ -453,11 +453,11 @@ function peg$parse(input, options) {
453
453
  return { config_kind: "action", config_items: action_items || [] };
454
454
  }, peg$c1359 = function (key, value) { return { key, value }; }, peg$c1360 = peg$otherExpectation("graph default edge color"), peg$c1361 = function (value) { return { key: 'graph_default_edge_color', value }; }, peg$c1362 = "transition", peg$c1363 = peg$literalExpectation("transition", false), peg$c1364 = function (transition_items) {
455
455
  return { config_kind: "transition", config_items: transition_items || [] };
456
- }, peg$c1365 = "graph_layout", peg$c1366 = peg$literalExpectation("graph_layout", false), peg$c1367 = function (value) { return { key: "graph_layout", value: value }; }, peg$c1368 = "start_states", peg$c1369 = peg$literalExpectation("start_states", false), peg$c1370 = function (value) { return { key: "start_states", value: value }; }, peg$c1371 = "end_states", peg$c1372 = peg$literalExpectation("end_states", false), peg$c1373 = function (value) { return { key: "end_states", value: value }; }, peg$c1374 = "graph_bg_color", peg$c1375 = peg$literalExpectation("graph_bg_color", false), peg$c1376 = function (value) { return { key: "graph_bg_color", value: value }; }, peg$c1377 = "allows_override", peg$c1378 = peg$literalExpectation("allows_override", false), peg$c1379 = function (value) { return { key: "allows_override", value: value }; }, peg$c1380 = function () { return true; }, peg$c1381 = function () { return false; }, peg$c1382 = peg$otherExpectation("configuration"), peg$c1383 = "MIT", peg$c1384 = peg$literalExpectation("MIT", false), peg$c1385 = "BSD 2-clause", peg$c1386 = peg$literalExpectation("BSD 2-clause", false), peg$c1387 = "BSD 3-clause", peg$c1388 = peg$literalExpectation("BSD 3-clause", false), peg$c1389 = "Apache 2.0", peg$c1390 = peg$literalExpectation("Apache 2.0", false), peg$c1391 = "Mozilla 2.0", peg$c1392 = peg$literalExpectation("Mozilla 2.0", false), peg$c1393 = "Public domain", peg$c1394 = peg$literalExpectation("Public domain", false), peg$c1395 = "GPL v2", peg$c1396 = peg$literalExpectation("GPL v2", false), peg$c1397 = "GPL v3", peg$c1398 = peg$literalExpectation("GPL v3", false), peg$c1399 = "LGPL v2.1", peg$c1400 = peg$literalExpectation("LGPL v2.1", false), peg$c1401 = "LGPL v3.0", peg$c1402 = peg$literalExpectation("LGPL v3.0", false), peg$c1403 = "Unknown", peg$c1404 = peg$literalExpectation("Unknown", false), peg$c1405 = peg$otherExpectation("direction"), peg$c1406 = "up", peg$c1407 = peg$literalExpectation("up", false), peg$c1408 = "right", peg$c1409 = peg$literalExpectation("right", false), peg$c1410 = "down", peg$c1411 = peg$literalExpectation("down", false), peg$c1412 = "left", peg$c1413 = peg$literalExpectation("left", false), peg$c1414 = peg$otherExpectation("hook definition (open/closed)"), peg$c1415 = "open", peg$c1416 = peg$literalExpectation("open", false), peg$c1417 = "closed", peg$c1418 = peg$literalExpectation("closed", false), peg$c1419 = "machine_author", peg$c1420 = peg$literalExpectation("machine_author", false), peg$c1421 = function (value) { return { key: "machine_author", value }; }, peg$c1422 = "machine_contributor", peg$c1423 = peg$literalExpectation("machine_contributor", false), peg$c1424 = function (value) { return { key: "machine_contributor", value }; }, peg$c1425 = "machine_comment", peg$c1426 = peg$literalExpectation("machine_comment", false), peg$c1427 = function (value) { return { key: "machine_comment", value }; }, peg$c1428 = "machine_definition", peg$c1429 = peg$literalExpectation("machine_definition", false), peg$c1430 = function (value) { return { key: "machine_definition", value }; }, peg$c1431 = "machine_name", peg$c1432 = peg$literalExpectation("machine_name", false), peg$c1433 = function (value) { return { key: "machine_name", value }; }, peg$c1434 = "npm_name", peg$c1435 = peg$literalExpectation("npm_name", false), peg$c1436 = function (value) { return { key: "npm_name", value }; }, peg$c1437 = "machine_reference", peg$c1438 = peg$literalExpectation("machine_reference", false), peg$c1439 = function (value) { return { key: "machine_reference", value }; }, peg$c1440 = "machine_version", peg$c1441 = peg$literalExpectation("machine_version", false), peg$c1442 = function (value) { return { key: "machine_version", value }; }, peg$c1443 = "machine_license", peg$c1444 = peg$literalExpectation("machine_license", false), peg$c1445 = function (value) { return { key: "machine_license", value }; }, peg$c1446 = "machine_language", peg$c1447 = peg$literalExpectation("machine_language", false), peg$c1448 = function (value) { return { key: "machine_language", value }; }, peg$c1449 = "fsl_version", peg$c1450 = peg$literalExpectation("fsl_version", false), peg$c1451 = function (value) { return { key: "fsl_version", value }; }, peg$c1452 = "theme", peg$c1453 = peg$literalExpectation("theme", false), peg$c1454 = function (value) { return { key: "theme", value }; }, peg$c1455 = "flow", peg$c1456 = peg$literalExpectation("flow", false), peg$c1457 = function (value) { return { key: "flow", value }; }, peg$c1458 = "hooks", peg$c1459 = peg$literalExpectation("hooks", false), peg$c1460 = function (value) { return { key: "hook_definition", value }; }, peg$c1461 = "dot_preamble", peg$c1462 = peg$literalExpectation("dot_preamble", false), peg$c1463 = function (value) { return { key: "dot_preamble", value }; }, peg$c1464 = peg$otherExpectation("machine attribute"), peg$c1465 = "label", peg$c1466 = peg$literalExpectation("label", false), peg$c1467 = function (value) { return { key: 'state-label', value }; }, peg$c1468 = "color", peg$c1469 = peg$literalExpectation("color", false), peg$c1470 = function (value) { return { key: 'color', value }; }, peg$c1471 = peg$otherExpectation("text color"), peg$c1472 = "text-color", peg$c1473 = peg$literalExpectation("text-color", false), peg$c1474 = function (value) { return { key: 'text-color', value }; }, peg$c1475 = peg$otherExpectation("background color"), peg$c1476 = "background-color", peg$c1477 = peg$literalExpectation("background-color", false), peg$c1478 = function (value) { return { key: 'background-color', value }; }, peg$c1479 = peg$otherExpectation("border color"), peg$c1480 = "border-color", peg$c1481 = peg$literalExpectation("border-color", false), peg$c1482 = function (value) { return { key: 'border-color', value }; }, peg$c1483 = peg$otherExpectation("shape"), peg$c1484 = "shape", peg$c1485 = peg$literalExpectation("shape", false), peg$c1486 = function (value) { return { key: 'shape', value }; }, peg$c1487 = peg$otherExpectation("corners"), peg$c1488 = "corners", peg$c1489 = peg$literalExpectation("corners", false), peg$c1490 = function (value) { return { key: 'corners', value }; }, peg$c1491 = peg$otherExpectation("linestyle"), peg$c1492 = function (value) { return { key: 'line-style', value }; }, peg$c1493 = "linestyle", peg$c1494 = peg$literalExpectation("linestyle", false), peg$c1495 = peg$otherExpectation("image"), peg$c1496 = "image", peg$c1497 = peg$literalExpectation("image", false), peg$c1498 = function (value) { return { key: 'image', value }; }, peg$c1499 = peg$otherExpectation("url"), peg$c1500 = "url", peg$c1501 = peg$literalExpectation("url", false), peg$c1502 = function (value) { return { key: 'url', value }; }, peg$c1503 = peg$otherExpectation("state property"), peg$c1504 = "property", peg$c1505 = peg$literalExpectation("property", false), peg$c1506 = function (name, value) {
456
+ }, peg$c1365 = "graph_layout", peg$c1366 = peg$literalExpectation("graph_layout", false), peg$c1367 = function (value) { return { key: "graph_layout", value: value }; }, peg$c1368 = "start_states", peg$c1369 = peg$literalExpectation("start_states", false), peg$c1370 = function (value) { return { key: "start_states", value: value }; }, peg$c1371 = "end_states", peg$c1372 = peg$literalExpectation("end_states", false), peg$c1373 = function (value) { return { key: "end_states", value: value }; }, peg$c1374 = "failed_outputs", peg$c1375 = peg$literalExpectation("failed_outputs", false), peg$c1376 = function (value) { return { key: "failed_outputs", value: typeof value === 'string' ? [value] : value }; }, peg$c1377 = "graph_bg_color", peg$c1378 = peg$literalExpectation("graph_bg_color", false), peg$c1379 = function (value) { return { key: "graph_bg_color", value: value }; }, peg$c1380 = "allows_override", peg$c1381 = peg$literalExpectation("allows_override", false), peg$c1382 = function (value) { return { key: "allows_override", value: value }; }, peg$c1383 = function () { return true; }, peg$c1384 = function () { return false; }, peg$c1385 = peg$otherExpectation("configuration"), peg$c1386 = "MIT", peg$c1387 = peg$literalExpectation("MIT", false), peg$c1388 = "BSD 2-clause", peg$c1389 = peg$literalExpectation("BSD 2-clause", false), peg$c1390 = "BSD 3-clause", peg$c1391 = peg$literalExpectation("BSD 3-clause", false), peg$c1392 = "Apache 2.0", peg$c1393 = peg$literalExpectation("Apache 2.0", false), peg$c1394 = "Mozilla 2.0", peg$c1395 = peg$literalExpectation("Mozilla 2.0", false), peg$c1396 = "Public domain", peg$c1397 = peg$literalExpectation("Public domain", false), peg$c1398 = "GPL v2", peg$c1399 = peg$literalExpectation("GPL v2", false), peg$c1400 = "GPL v3", peg$c1401 = peg$literalExpectation("GPL v3", false), peg$c1402 = "LGPL v2.1", peg$c1403 = peg$literalExpectation("LGPL v2.1", false), peg$c1404 = "LGPL v3.0", peg$c1405 = peg$literalExpectation("LGPL v3.0", false), peg$c1406 = "Unknown", peg$c1407 = peg$literalExpectation("Unknown", false), peg$c1408 = peg$otherExpectation("direction"), peg$c1409 = "up", peg$c1410 = peg$literalExpectation("up", false), peg$c1411 = "right", peg$c1412 = peg$literalExpectation("right", false), peg$c1413 = "down", peg$c1414 = peg$literalExpectation("down", false), peg$c1415 = "left", peg$c1416 = peg$literalExpectation("left", false), peg$c1417 = peg$otherExpectation("hook definition (open/closed)"), peg$c1418 = "open", peg$c1419 = peg$literalExpectation("open", false), peg$c1420 = "closed", peg$c1421 = peg$literalExpectation("closed", false), peg$c1422 = "machine_author", peg$c1423 = peg$literalExpectation("machine_author", false), peg$c1424 = function (value) { return { key: "machine_author", value }; }, peg$c1425 = "machine_contributor", peg$c1426 = peg$literalExpectation("machine_contributor", false), peg$c1427 = function (value) { return { key: "machine_contributor", value }; }, peg$c1428 = "machine_comment", peg$c1429 = peg$literalExpectation("machine_comment", false), peg$c1430 = function (value) { return { key: "machine_comment", value }; }, peg$c1431 = "machine_definition", peg$c1432 = peg$literalExpectation("machine_definition", false), peg$c1433 = function (value) { return { key: "machine_definition", value }; }, peg$c1434 = "machine_name", peg$c1435 = peg$literalExpectation("machine_name", false), peg$c1436 = function (value) { return { key: "machine_name", value }; }, peg$c1437 = "npm_name", peg$c1438 = peg$literalExpectation("npm_name", false), peg$c1439 = function (value) { return { key: "npm_name", value }; }, peg$c1440 = "machine_reference", peg$c1441 = peg$literalExpectation("machine_reference", false), peg$c1442 = function (value) { return { key: "machine_reference", value }; }, peg$c1443 = "machine_version", peg$c1444 = peg$literalExpectation("machine_version", false), peg$c1445 = function (value) { return { key: "machine_version", value }; }, peg$c1446 = "machine_license", peg$c1447 = peg$literalExpectation("machine_license", false), peg$c1448 = function (value) { return { key: "machine_license", value }; }, peg$c1449 = "machine_language", peg$c1450 = peg$literalExpectation("machine_language", false), peg$c1451 = function (value) { return { key: "machine_language", value }; }, peg$c1452 = "fsl_version", peg$c1453 = peg$literalExpectation("fsl_version", false), peg$c1454 = function (value) { return { key: "fsl_version", value }; }, peg$c1455 = "theme", peg$c1456 = peg$literalExpectation("theme", false), peg$c1457 = function (value) { return { key: "theme", value }; }, peg$c1458 = "flow", peg$c1459 = peg$literalExpectation("flow", false), peg$c1460 = function (value) { return { key: "flow", value }; }, peg$c1461 = "hooks", peg$c1462 = peg$literalExpectation("hooks", false), peg$c1463 = function (value) { return { key: "hook_definition", value }; }, peg$c1464 = "dot_preamble", peg$c1465 = peg$literalExpectation("dot_preamble", false), peg$c1466 = function (value) { return { key: "dot_preamble", value }; }, peg$c1467 = peg$otherExpectation("machine attribute"), peg$c1468 = "label", peg$c1469 = peg$literalExpectation("label", false), peg$c1470 = function (value) { return { key: 'state-label', value }; }, peg$c1471 = "color", peg$c1472 = peg$literalExpectation("color", false), peg$c1473 = function (value) { return { key: 'color', value }; }, peg$c1474 = peg$otherExpectation("text color"), peg$c1475 = "text-color", peg$c1476 = peg$literalExpectation("text-color", false), peg$c1477 = function (value) { return { key: 'text-color', value }; }, peg$c1478 = peg$otherExpectation("background color"), peg$c1479 = "background-color", peg$c1480 = peg$literalExpectation("background-color", false), peg$c1481 = function (value) { return { key: 'background-color', value }; }, peg$c1482 = peg$otherExpectation("border color"), peg$c1483 = "border-color", peg$c1484 = peg$literalExpectation("border-color", false), peg$c1485 = function (value) { return { key: 'border-color', value }; }, peg$c1486 = peg$otherExpectation("shape"), peg$c1487 = "shape", peg$c1488 = peg$literalExpectation("shape", false), peg$c1489 = function (value) { return { key: 'shape', value }; }, peg$c1490 = peg$otherExpectation("corners"), peg$c1491 = "corners", peg$c1492 = peg$literalExpectation("corners", false), peg$c1493 = function (value) { return { key: 'corners', value }; }, peg$c1494 = peg$otherExpectation("linestyle"), peg$c1495 = function (value) { return { key: 'line-style', value }; }, peg$c1496 = "linestyle", peg$c1497 = peg$literalExpectation("linestyle", false), peg$c1498 = peg$otherExpectation("image"), peg$c1499 = "image", peg$c1500 = peg$literalExpectation("image", false), peg$c1501 = function (value) { return { key: 'image', value }; }, peg$c1502 = peg$otherExpectation("url"), peg$c1503 = "url", peg$c1504 = peg$literalExpectation("url", false), peg$c1505 = function (value) { return { key: 'url', value }; }, peg$c1506 = peg$otherExpectation("state property"), peg$c1507 = "property", peg$c1508 = peg$literalExpectation("property", false), peg$c1509 = function (name, value) {
457
457
  return { key: 'state_property', name, value };
458
- }, peg$c1507 = "required", peg$c1508 = peg$literalExpectation("required", false), peg$c1509 = function (name, value) {
458
+ }, peg$c1510 = "required", peg$c1511 = peg$literalExpectation("required", false), peg$c1512 = function (name, value) {
459
459
  return { key: 'state_property', name, value, required: true };
460
- }, peg$c1510 = function (name, value) { return { key: 'state_declaration', name, value }; }, peg$c1511 = "&", peg$c1512 = peg$literalExpectation("&", false), peg$c1513 = function (name, value) { return { key: 'named_list', name, value }; }, peg$c1514 = function (name, default_value) { return { key: 'property_definition', name, default_value, required: true }; }, peg$c1515 = function (name) { return { key: 'property_definition', name, required: true }; }, peg$c1516 = function (name, default_value) { return { key: 'property_definition', name, default_value }; }, peg$c1517 = function (name) { return { key: 'property_definition', name }; }, peg$c1518 = "arrange", peg$c1519 = peg$literalExpectation("arrange", false), peg$c1520 = function (value) { return { key: 'arrange_declaration', value }; }, peg$c1521 = "arrange-start", peg$c1522 = peg$literalExpectation("arrange-start", false), peg$c1523 = function (value) { return { key: 'arrange_start_declaration', value }; }, peg$c1524 = "arrange-end", peg$c1525 = peg$literalExpectation("arrange-end", false), peg$c1526 = function (value) { return { key: 'arrange_end_declaration', value }; }, peg$c1527 = peg$otherExpectation("arrange declaration"), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result;
460
+ }, peg$c1513 = function (name, value) { return { key: 'state_declaration', name, value }; }, peg$c1514 = "&", peg$c1515 = peg$literalExpectation("&", false), peg$c1516 = function (name, value) { return { key: 'named_list', name, value }; }, peg$c1517 = function (name, default_value) { return { key: 'property_definition', name, default_value, required: true }; }, peg$c1518 = function (name) { return { key: 'property_definition', name, required: true }; }, peg$c1519 = function (name, default_value) { return { key: 'property_definition', name, default_value }; }, peg$c1520 = function (name) { return { key: 'property_definition', name }; }, peg$c1521 = "arrange", peg$c1522 = peg$literalExpectation("arrange", false), peg$c1523 = function (value) { return { key: 'arrange_declaration', value }; }, peg$c1524 = "arrange-start", peg$c1525 = peg$literalExpectation("arrange-start", false), peg$c1526 = function (value) { return { key: 'arrange_start_declaration', value }; }, peg$c1527 = "arrange-end", peg$c1528 = peg$literalExpectation("arrange-end", false), peg$c1529 = function (value) { return { key: 'arrange_end_declaration', value }; }, peg$c1530 = peg$otherExpectation("arrange declaration"), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result;
461
461
  if ("startRule" in options) {
462
462
  if (!(options.startRule in peg$startRuleFunctions)) {
463
463
  throw new Error("Can't start parsing from rule \"" + options.startRule + "\".");
@@ -14646,7 +14646,7 @@ function peg$parse(input, options) {
14646
14646
  }
14647
14647
  return s0;
14648
14648
  }
14649
- function peg$parseConfigGraphBgColor() {
14649
+ function peg$parseConfigFailedOutputs() {
14650
14650
  var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
14651
14651
  s0 = peg$currPos;
14652
14652
  s1 = peg$parseWS();
@@ -14686,7 +14686,7 @@ function peg$parse(input, options) {
14686
14686
  s5 = null;
14687
14687
  }
14688
14688
  if (s5 !== peg$FAILED) {
14689
- s6 = peg$parseColor();
14689
+ s6 = peg$parseLabelOrLabelList();
14690
14690
  if (s6 !== peg$FAILED) {
14691
14691
  s7 = peg$parseWS();
14692
14692
  if (s7 === peg$FAILED) {
@@ -14759,7 +14759,7 @@ function peg$parse(input, options) {
14759
14759
  }
14760
14760
  return s0;
14761
14761
  }
14762
- function peg$parseConfigAllowsOverride() {
14762
+ function peg$parseConfigGraphBgColor() {
14763
14763
  var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
14764
14764
  s0 = peg$currPos;
14765
14765
  s1 = peg$parseWS();
@@ -14767,9 +14767,9 @@ function peg$parse(input, options) {
14767
14767
  s1 = null;
14768
14768
  }
14769
14769
  if (s1 !== peg$FAILED) {
14770
- if (input.substr(peg$currPos, 15) === peg$c1377) {
14770
+ if (input.substr(peg$currPos, 14) === peg$c1377) {
14771
14771
  s2 = peg$c1377;
14772
- peg$currPos += 15;
14772
+ peg$currPos += 14;
14773
14773
  }
14774
14774
  else {
14775
14775
  s2 = peg$FAILED;
@@ -14799,7 +14799,7 @@ function peg$parse(input, options) {
14799
14799
  s5 = null;
14800
14800
  }
14801
14801
  if (s5 !== peg$FAILED) {
14802
- s6 = peg$parseOverrideT();
14802
+ s6 = peg$parseColor();
14803
14803
  if (s6 !== peg$FAILED) {
14804
14804
  s7 = peg$parseWS();
14805
14805
  if (s7 === peg$FAILED) {
@@ -14872,6 +14872,119 @@ function peg$parse(input, options) {
14872
14872
  }
14873
14873
  return s0;
14874
14874
  }
14875
+ function peg$parseConfigAllowsOverride() {
14876
+ var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
14877
+ s0 = peg$currPos;
14878
+ s1 = peg$parseWS();
14879
+ if (s1 === peg$FAILED) {
14880
+ s1 = null;
14881
+ }
14882
+ if (s1 !== peg$FAILED) {
14883
+ if (input.substr(peg$currPos, 15) === peg$c1380) {
14884
+ s2 = peg$c1380;
14885
+ peg$currPos += 15;
14886
+ }
14887
+ else {
14888
+ s2 = peg$FAILED;
14889
+ if (peg$silentFails === 0) {
14890
+ peg$fail(peg$c1381);
14891
+ }
14892
+ }
14893
+ if (s2 !== peg$FAILED) {
14894
+ s3 = peg$parseWS();
14895
+ if (s3 === peg$FAILED) {
14896
+ s3 = null;
14897
+ }
14898
+ if (s3 !== peg$FAILED) {
14899
+ if (input.charCodeAt(peg$currPos) === 58) {
14900
+ s4 = peg$c1206;
14901
+ peg$currPos++;
14902
+ }
14903
+ else {
14904
+ s4 = peg$FAILED;
14905
+ if (peg$silentFails === 0) {
14906
+ peg$fail(peg$c1207);
14907
+ }
14908
+ }
14909
+ if (s4 !== peg$FAILED) {
14910
+ s5 = peg$parseWS();
14911
+ if (s5 === peg$FAILED) {
14912
+ s5 = null;
14913
+ }
14914
+ if (s5 !== peg$FAILED) {
14915
+ s6 = peg$parseOverrideT();
14916
+ if (s6 !== peg$FAILED) {
14917
+ s7 = peg$parseWS();
14918
+ if (s7 === peg$FAILED) {
14919
+ s7 = null;
14920
+ }
14921
+ if (s7 !== peg$FAILED) {
14922
+ if (input.charCodeAt(peg$currPos) === 59) {
14923
+ s8 = peg$c1208;
14924
+ peg$currPos++;
14925
+ }
14926
+ else {
14927
+ s8 = peg$FAILED;
14928
+ if (peg$silentFails === 0) {
14929
+ peg$fail(peg$c1209);
14930
+ }
14931
+ }
14932
+ if (s8 !== peg$FAILED) {
14933
+ s9 = peg$parseWS();
14934
+ if (s9 === peg$FAILED) {
14935
+ s9 = null;
14936
+ }
14937
+ if (s9 !== peg$FAILED) {
14938
+ peg$savedPos = s0;
14939
+ s1 = peg$c1382(s6);
14940
+ s0 = s1;
14941
+ }
14942
+ else {
14943
+ peg$currPos = s0;
14944
+ s0 = peg$FAILED;
14945
+ }
14946
+ }
14947
+ else {
14948
+ peg$currPos = s0;
14949
+ s0 = peg$FAILED;
14950
+ }
14951
+ }
14952
+ else {
14953
+ peg$currPos = s0;
14954
+ s0 = peg$FAILED;
14955
+ }
14956
+ }
14957
+ else {
14958
+ peg$currPos = s0;
14959
+ s0 = peg$FAILED;
14960
+ }
14961
+ }
14962
+ else {
14963
+ peg$currPos = s0;
14964
+ s0 = peg$FAILED;
14965
+ }
14966
+ }
14967
+ else {
14968
+ peg$currPos = s0;
14969
+ s0 = peg$FAILED;
14970
+ }
14971
+ }
14972
+ else {
14973
+ peg$currPos = s0;
14974
+ s0 = peg$FAILED;
14975
+ }
14976
+ }
14977
+ else {
14978
+ peg$currPos = s0;
14979
+ s0 = peg$FAILED;
14980
+ }
14981
+ }
14982
+ else {
14983
+ peg$currPos = s0;
14984
+ s0 = peg$FAILED;
14985
+ }
14986
+ return s0;
14987
+ }
14875
14988
  function peg$parseOverrideT() {
14876
14989
  var s0, s1;
14877
14990
  s0 = peg$currPos;
@@ -14887,7 +15000,7 @@ function peg$parse(input, options) {
14887
15000
  }
14888
15001
  if (s1 !== peg$FAILED) {
14889
15002
  peg$savedPos = s0;
14890
- s1 = peg$c1380();
15003
+ s1 = peg$c1383();
14891
15004
  }
14892
15005
  s0 = s1;
14893
15006
  if (s0 === peg$FAILED) {
@@ -14904,7 +15017,7 @@ function peg$parse(input, options) {
14904
15017
  }
14905
15018
  if (s1 !== peg$FAILED) {
14906
15019
  peg$savedPos = s0;
14907
- s1 = peg$c1381();
15020
+ s1 = peg$c1384();
14908
15021
  }
14909
15022
  s0 = s1;
14910
15023
  if (s0 === peg$FAILED) {
@@ -14937,17 +15050,20 @@ function peg$parse(input, options) {
14937
15050
  if (s0 === peg$FAILED) {
14938
15051
  s0 = peg$parseConfigEndNodes();
14939
15052
  if (s0 === peg$FAILED) {
14940
- s0 = peg$parseConfigTransition();
15053
+ s0 = peg$parseConfigFailedOutputs();
14941
15054
  if (s0 === peg$FAILED) {
14942
- s0 = peg$parseConfigAction();
15055
+ s0 = peg$parseConfigTransition();
14943
15056
  if (s0 === peg$FAILED) {
14944
- s0 = peg$parseConfigAnyState();
15057
+ s0 = peg$parseConfigAction();
14945
15058
  if (s0 === peg$FAILED) {
14946
- s0 = peg$parseConfigValidation();
15059
+ s0 = peg$parseConfigAnyState();
14947
15060
  if (s0 === peg$FAILED) {
14948
- s0 = peg$parseConfigGraphBgColor();
15061
+ s0 = peg$parseConfigValidation();
14949
15062
  if (s0 === peg$FAILED) {
14950
- s0 = peg$parseConfigAllowsOverride();
15063
+ s0 = peg$parseConfigGraphBgColor();
15064
+ if (s0 === peg$FAILED) {
15065
+ s0 = peg$parseConfigAllowsOverride();
15066
+ }
14951
15067
  }
14952
15068
  }
14953
15069
  }
@@ -14959,131 +15075,131 @@ function peg$parse(input, options) {
14959
15075
  peg$silentFails--;
14960
15076
  if (s0 === peg$FAILED) {
14961
15077
  if (peg$silentFails === 0) {
14962
- peg$fail(peg$c1382);
15078
+ peg$fail(peg$c1385);
14963
15079
  }
14964
15080
  }
14965
15081
  return s0;
14966
15082
  }
14967
15083
  function peg$parseLicenseOrLabelOrList() {
14968
15084
  var s0;
14969
- if (input.substr(peg$currPos, 3) === peg$c1383) {
14970
- s0 = peg$c1383;
15085
+ if (input.substr(peg$currPos, 3) === peg$c1386) {
15086
+ s0 = peg$c1386;
14971
15087
  peg$currPos += 3;
14972
15088
  }
14973
15089
  else {
14974
15090
  s0 = peg$FAILED;
14975
15091
  if (peg$silentFails === 0) {
14976
- peg$fail(peg$c1384);
15092
+ peg$fail(peg$c1387);
14977
15093
  }
14978
15094
  }
14979
15095
  if (s0 === peg$FAILED) {
14980
- if (input.substr(peg$currPos, 12) === peg$c1385) {
14981
- s0 = peg$c1385;
15096
+ if (input.substr(peg$currPos, 12) === peg$c1388) {
15097
+ s0 = peg$c1388;
14982
15098
  peg$currPos += 12;
14983
15099
  }
14984
15100
  else {
14985
15101
  s0 = peg$FAILED;
14986
15102
  if (peg$silentFails === 0) {
14987
- peg$fail(peg$c1386);
15103
+ peg$fail(peg$c1389);
14988
15104
  }
14989
15105
  }
14990
15106
  if (s0 === peg$FAILED) {
14991
- if (input.substr(peg$currPos, 12) === peg$c1387) {
14992
- s0 = peg$c1387;
15107
+ if (input.substr(peg$currPos, 12) === peg$c1390) {
15108
+ s0 = peg$c1390;
14993
15109
  peg$currPos += 12;
14994
15110
  }
14995
15111
  else {
14996
15112
  s0 = peg$FAILED;
14997
15113
  if (peg$silentFails === 0) {
14998
- peg$fail(peg$c1388);
15114
+ peg$fail(peg$c1391);
14999
15115
  }
15000
15116
  }
15001
15117
  if (s0 === peg$FAILED) {
15002
- if (input.substr(peg$currPos, 10) === peg$c1389) {
15003
- s0 = peg$c1389;
15118
+ if (input.substr(peg$currPos, 10) === peg$c1392) {
15119
+ s0 = peg$c1392;
15004
15120
  peg$currPos += 10;
15005
15121
  }
15006
15122
  else {
15007
15123
  s0 = peg$FAILED;
15008
15124
  if (peg$silentFails === 0) {
15009
- peg$fail(peg$c1390);
15125
+ peg$fail(peg$c1393);
15010
15126
  }
15011
15127
  }
15012
15128
  if (s0 === peg$FAILED) {
15013
- if (input.substr(peg$currPos, 11) === peg$c1391) {
15014
- s0 = peg$c1391;
15129
+ if (input.substr(peg$currPos, 11) === peg$c1394) {
15130
+ s0 = peg$c1394;
15015
15131
  peg$currPos += 11;
15016
15132
  }
15017
15133
  else {
15018
15134
  s0 = peg$FAILED;
15019
15135
  if (peg$silentFails === 0) {
15020
- peg$fail(peg$c1392);
15136
+ peg$fail(peg$c1395);
15021
15137
  }
15022
15138
  }
15023
15139
  if (s0 === peg$FAILED) {
15024
- if (input.substr(peg$currPos, 13) === peg$c1393) {
15025
- s0 = peg$c1393;
15140
+ if (input.substr(peg$currPos, 13) === peg$c1396) {
15141
+ s0 = peg$c1396;
15026
15142
  peg$currPos += 13;
15027
15143
  }
15028
15144
  else {
15029
15145
  s0 = peg$FAILED;
15030
15146
  if (peg$silentFails === 0) {
15031
- peg$fail(peg$c1394);
15147
+ peg$fail(peg$c1397);
15032
15148
  }
15033
15149
  }
15034
15150
  if (s0 === peg$FAILED) {
15035
- if (input.substr(peg$currPos, 6) === peg$c1395) {
15036
- s0 = peg$c1395;
15151
+ if (input.substr(peg$currPos, 6) === peg$c1398) {
15152
+ s0 = peg$c1398;
15037
15153
  peg$currPos += 6;
15038
15154
  }
15039
15155
  else {
15040
15156
  s0 = peg$FAILED;
15041
15157
  if (peg$silentFails === 0) {
15042
- peg$fail(peg$c1396);
15158
+ peg$fail(peg$c1399);
15043
15159
  }
15044
15160
  }
15045
15161
  if (s0 === peg$FAILED) {
15046
- if (input.substr(peg$currPos, 6) === peg$c1397) {
15047
- s0 = peg$c1397;
15162
+ if (input.substr(peg$currPos, 6) === peg$c1400) {
15163
+ s0 = peg$c1400;
15048
15164
  peg$currPos += 6;
15049
15165
  }
15050
15166
  else {
15051
15167
  s0 = peg$FAILED;
15052
15168
  if (peg$silentFails === 0) {
15053
- peg$fail(peg$c1398);
15169
+ peg$fail(peg$c1401);
15054
15170
  }
15055
15171
  }
15056
15172
  if (s0 === peg$FAILED) {
15057
- if (input.substr(peg$currPos, 9) === peg$c1399) {
15058
- s0 = peg$c1399;
15173
+ if (input.substr(peg$currPos, 9) === peg$c1402) {
15174
+ s0 = peg$c1402;
15059
15175
  peg$currPos += 9;
15060
15176
  }
15061
15177
  else {
15062
15178
  s0 = peg$FAILED;
15063
15179
  if (peg$silentFails === 0) {
15064
- peg$fail(peg$c1400);
15180
+ peg$fail(peg$c1403);
15065
15181
  }
15066
15182
  }
15067
15183
  if (s0 === peg$FAILED) {
15068
- if (input.substr(peg$currPos, 9) === peg$c1401) {
15069
- s0 = peg$c1401;
15184
+ if (input.substr(peg$currPos, 9) === peg$c1404) {
15185
+ s0 = peg$c1404;
15070
15186
  peg$currPos += 9;
15071
15187
  }
15072
15188
  else {
15073
15189
  s0 = peg$FAILED;
15074
15190
  if (peg$silentFails === 0) {
15075
- peg$fail(peg$c1402);
15191
+ peg$fail(peg$c1405);
15076
15192
  }
15077
15193
  }
15078
15194
  if (s0 === peg$FAILED) {
15079
- if (input.substr(peg$currPos, 7) === peg$c1403) {
15080
- s0 = peg$c1403;
15195
+ if (input.substr(peg$currPos, 7) === peg$c1406) {
15196
+ s0 = peg$c1406;
15081
15197
  peg$currPos += 7;
15082
15198
  }
15083
15199
  else {
15084
15200
  s0 = peg$FAILED;
15085
15201
  if (peg$silentFails === 0) {
15086
- peg$fail(peg$c1404);
15202
+ peg$fail(peg$c1407);
15087
15203
  }
15088
15204
  }
15089
15205
  if (s0 === peg$FAILED) {
@@ -15107,47 +15223,47 @@ function peg$parse(input, options) {
15107
15223
  function peg$parseDirection() {
15108
15224
  var s0;
15109
15225
  peg$silentFails++;
15110
- if (input.substr(peg$currPos, 2) === peg$c1406) {
15111
- s0 = peg$c1406;
15226
+ if (input.substr(peg$currPos, 2) === peg$c1409) {
15227
+ s0 = peg$c1409;
15112
15228
  peg$currPos += 2;
15113
15229
  }
15114
15230
  else {
15115
15231
  s0 = peg$FAILED;
15116
15232
  if (peg$silentFails === 0) {
15117
- peg$fail(peg$c1407);
15233
+ peg$fail(peg$c1410);
15118
15234
  }
15119
15235
  }
15120
15236
  if (s0 === peg$FAILED) {
15121
- if (input.substr(peg$currPos, 5) === peg$c1408) {
15122
- s0 = peg$c1408;
15237
+ if (input.substr(peg$currPos, 5) === peg$c1411) {
15238
+ s0 = peg$c1411;
15123
15239
  peg$currPos += 5;
15124
15240
  }
15125
15241
  else {
15126
15242
  s0 = peg$FAILED;
15127
15243
  if (peg$silentFails === 0) {
15128
- peg$fail(peg$c1409);
15244
+ peg$fail(peg$c1412);
15129
15245
  }
15130
15246
  }
15131
15247
  if (s0 === peg$FAILED) {
15132
- if (input.substr(peg$currPos, 4) === peg$c1410) {
15133
- s0 = peg$c1410;
15248
+ if (input.substr(peg$currPos, 4) === peg$c1413) {
15249
+ s0 = peg$c1413;
15134
15250
  peg$currPos += 4;
15135
15251
  }
15136
15252
  else {
15137
15253
  s0 = peg$FAILED;
15138
15254
  if (peg$silentFails === 0) {
15139
- peg$fail(peg$c1411);
15255
+ peg$fail(peg$c1414);
15140
15256
  }
15141
15257
  }
15142
15258
  if (s0 === peg$FAILED) {
15143
- if (input.substr(peg$currPos, 4) === peg$c1412) {
15144
- s0 = peg$c1412;
15259
+ if (input.substr(peg$currPos, 4) === peg$c1415) {
15260
+ s0 = peg$c1415;
15145
15261
  peg$currPos += 4;
15146
15262
  }
15147
15263
  else {
15148
15264
  s0 = peg$FAILED;
15149
15265
  if (peg$silentFails === 0) {
15150
- peg$fail(peg$c1413);
15266
+ peg$fail(peg$c1416);
15151
15267
  }
15152
15268
  }
15153
15269
  }
@@ -15156,7 +15272,7 @@ function peg$parse(input, options) {
15156
15272
  peg$silentFails--;
15157
15273
  if (s0 === peg$FAILED) {
15158
15274
  if (peg$silentFails === 0) {
15159
- peg$fail(peg$c1405);
15275
+ peg$fail(peg$c1408);
15160
15276
  }
15161
15277
  }
15162
15278
  return s0;
@@ -15164,32 +15280,32 @@ function peg$parse(input, options) {
15164
15280
  function peg$parseHookDefinition() {
15165
15281
  var s0;
15166
15282
  peg$silentFails++;
15167
- if (input.substr(peg$currPos, 4) === peg$c1415) {
15168
- s0 = peg$c1415;
15283
+ if (input.substr(peg$currPos, 4) === peg$c1418) {
15284
+ s0 = peg$c1418;
15169
15285
  peg$currPos += 4;
15170
15286
  }
15171
15287
  else {
15172
15288
  s0 = peg$FAILED;
15173
15289
  if (peg$silentFails === 0) {
15174
- peg$fail(peg$c1416);
15290
+ peg$fail(peg$c1419);
15175
15291
  }
15176
15292
  }
15177
15293
  if (s0 === peg$FAILED) {
15178
- if (input.substr(peg$currPos, 6) === peg$c1417) {
15179
- s0 = peg$c1417;
15294
+ if (input.substr(peg$currPos, 6) === peg$c1420) {
15295
+ s0 = peg$c1420;
15180
15296
  peg$currPos += 6;
15181
15297
  }
15182
15298
  else {
15183
15299
  s0 = peg$FAILED;
15184
15300
  if (peg$silentFails === 0) {
15185
- peg$fail(peg$c1418);
15301
+ peg$fail(peg$c1421);
15186
15302
  }
15187
15303
  }
15188
15304
  }
15189
15305
  peg$silentFails--;
15190
15306
  if (s0 === peg$FAILED) {
15191
15307
  if (peg$silentFails === 0) {
15192
- peg$fail(peg$c1414);
15308
+ peg$fail(peg$c1417);
15193
15309
  }
15194
15310
  }
15195
15311
  return s0;
@@ -15202,14 +15318,14 @@ function peg$parse(input, options) {
15202
15318
  s1 = null;
15203
15319
  }
15204
15320
  if (s1 !== peg$FAILED) {
15205
- if (input.substr(peg$currPos, 14) === peg$c1419) {
15206
- s2 = peg$c1419;
15321
+ if (input.substr(peg$currPos, 14) === peg$c1422) {
15322
+ s2 = peg$c1422;
15207
15323
  peg$currPos += 14;
15208
15324
  }
15209
15325
  else {
15210
15326
  s2 = peg$FAILED;
15211
15327
  if (peg$silentFails === 0) {
15212
- peg$fail(peg$c1420);
15328
+ peg$fail(peg$c1423);
15213
15329
  }
15214
15330
  }
15215
15331
  if (s2 !== peg$FAILED) {
@@ -15258,7 +15374,7 @@ function peg$parse(input, options) {
15258
15374
  }
15259
15375
  if (s9 !== peg$FAILED) {
15260
15376
  peg$savedPos = s0;
15261
- s1 = peg$c1421(s6);
15377
+ s1 = peg$c1424(s6);
15262
15378
  s0 = s1;
15263
15379
  }
15264
15380
  else {
@@ -15315,14 +15431,14 @@ function peg$parse(input, options) {
15315
15431
  s1 = null;
15316
15432
  }
15317
15433
  if (s1 !== peg$FAILED) {
15318
- if (input.substr(peg$currPos, 19) === peg$c1422) {
15319
- s2 = peg$c1422;
15434
+ if (input.substr(peg$currPos, 19) === peg$c1425) {
15435
+ s2 = peg$c1425;
15320
15436
  peg$currPos += 19;
15321
15437
  }
15322
15438
  else {
15323
15439
  s2 = peg$FAILED;
15324
15440
  if (peg$silentFails === 0) {
15325
- peg$fail(peg$c1423);
15441
+ peg$fail(peg$c1426);
15326
15442
  }
15327
15443
  }
15328
15444
  if (s2 !== peg$FAILED) {
@@ -15371,7 +15487,7 @@ function peg$parse(input, options) {
15371
15487
  }
15372
15488
  if (s9 !== peg$FAILED) {
15373
15489
  peg$savedPos = s0;
15374
- s1 = peg$c1424(s6);
15490
+ s1 = peg$c1427(s6);
15375
15491
  s0 = s1;
15376
15492
  }
15377
15493
  else {
@@ -15428,14 +15544,14 @@ function peg$parse(input, options) {
15428
15544
  s1 = null;
15429
15545
  }
15430
15546
  if (s1 !== peg$FAILED) {
15431
- if (input.substr(peg$currPos, 15) === peg$c1425) {
15432
- s2 = peg$c1425;
15547
+ if (input.substr(peg$currPos, 15) === peg$c1428) {
15548
+ s2 = peg$c1428;
15433
15549
  peg$currPos += 15;
15434
15550
  }
15435
15551
  else {
15436
15552
  s2 = peg$FAILED;
15437
15553
  if (peg$silentFails === 0) {
15438
- peg$fail(peg$c1426);
15554
+ peg$fail(peg$c1429);
15439
15555
  }
15440
15556
  }
15441
15557
  if (s2 !== peg$FAILED) {
@@ -15484,7 +15600,7 @@ function peg$parse(input, options) {
15484
15600
  }
15485
15601
  if (s9 !== peg$FAILED) {
15486
15602
  peg$savedPos = s0;
15487
- s1 = peg$c1427(s6);
15603
+ s1 = peg$c1430(s6);
15488
15604
  s0 = s1;
15489
15605
  }
15490
15606
  else {
@@ -15541,14 +15657,14 @@ function peg$parse(input, options) {
15541
15657
  s1 = null;
15542
15658
  }
15543
15659
  if (s1 !== peg$FAILED) {
15544
- if (input.substr(peg$currPos, 18) === peg$c1428) {
15545
- s2 = peg$c1428;
15660
+ if (input.substr(peg$currPos, 18) === peg$c1431) {
15661
+ s2 = peg$c1431;
15546
15662
  peg$currPos += 18;
15547
15663
  }
15548
15664
  else {
15549
15665
  s2 = peg$FAILED;
15550
15666
  if (peg$silentFails === 0) {
15551
- peg$fail(peg$c1429);
15667
+ peg$fail(peg$c1432);
15552
15668
  }
15553
15669
  }
15554
15670
  if (s2 !== peg$FAILED) {
@@ -15597,7 +15713,7 @@ function peg$parse(input, options) {
15597
15713
  }
15598
15714
  if (s9 !== peg$FAILED) {
15599
15715
  peg$savedPos = s0;
15600
- s1 = peg$c1430(s6);
15716
+ s1 = peg$c1433(s6);
15601
15717
  s0 = s1;
15602
15718
  }
15603
15719
  else {
@@ -15654,14 +15770,14 @@ function peg$parse(input, options) {
15654
15770
  s1 = null;
15655
15771
  }
15656
15772
  if (s1 !== peg$FAILED) {
15657
- if (input.substr(peg$currPos, 12) === peg$c1431) {
15658
- s2 = peg$c1431;
15773
+ if (input.substr(peg$currPos, 12) === peg$c1434) {
15774
+ s2 = peg$c1434;
15659
15775
  peg$currPos += 12;
15660
15776
  }
15661
15777
  else {
15662
15778
  s2 = peg$FAILED;
15663
15779
  if (peg$silentFails === 0) {
15664
- peg$fail(peg$c1432);
15780
+ peg$fail(peg$c1435);
15665
15781
  }
15666
15782
  }
15667
15783
  if (s2 !== peg$FAILED) {
@@ -15710,7 +15826,7 @@ function peg$parse(input, options) {
15710
15826
  }
15711
15827
  if (s9 !== peg$FAILED) {
15712
15828
  peg$savedPos = s0;
15713
- s1 = peg$c1433(s6);
15829
+ s1 = peg$c1436(s6);
15714
15830
  s0 = s1;
15715
15831
  }
15716
15832
  else {
@@ -15767,14 +15883,14 @@ function peg$parse(input, options) {
15767
15883
  s1 = null;
15768
15884
  }
15769
15885
  if (s1 !== peg$FAILED) {
15770
- if (input.substr(peg$currPos, 8) === peg$c1434) {
15771
- s2 = peg$c1434;
15886
+ if (input.substr(peg$currPos, 8) === peg$c1437) {
15887
+ s2 = peg$c1437;
15772
15888
  peg$currPos += 8;
15773
15889
  }
15774
15890
  else {
15775
15891
  s2 = peg$FAILED;
15776
15892
  if (peg$silentFails === 0) {
15777
- peg$fail(peg$c1435);
15893
+ peg$fail(peg$c1438);
15778
15894
  }
15779
15895
  }
15780
15896
  if (s2 !== peg$FAILED) {
@@ -15823,7 +15939,7 @@ function peg$parse(input, options) {
15823
15939
  }
15824
15940
  if (s9 !== peg$FAILED) {
15825
15941
  peg$savedPos = s0;
15826
- s1 = peg$c1436(s6);
15942
+ s1 = peg$c1439(s6);
15827
15943
  s0 = s1;
15828
15944
  }
15829
15945
  else {
@@ -15880,14 +15996,14 @@ function peg$parse(input, options) {
15880
15996
  s1 = null;
15881
15997
  }
15882
15998
  if (s1 !== peg$FAILED) {
15883
- if (input.substr(peg$currPos, 17) === peg$c1437) {
15884
- s2 = peg$c1437;
15999
+ if (input.substr(peg$currPos, 17) === peg$c1440) {
16000
+ s2 = peg$c1440;
15885
16001
  peg$currPos += 17;
15886
16002
  }
15887
16003
  else {
15888
16004
  s2 = peg$FAILED;
15889
16005
  if (peg$silentFails === 0) {
15890
- peg$fail(peg$c1438);
16006
+ peg$fail(peg$c1441);
15891
16007
  }
15892
16008
  }
15893
16009
  if (s2 !== peg$FAILED) {
@@ -15936,7 +16052,7 @@ function peg$parse(input, options) {
15936
16052
  }
15937
16053
  if (s9 !== peg$FAILED) {
15938
16054
  peg$savedPos = s0;
15939
- s1 = peg$c1439(s6);
16055
+ s1 = peg$c1442(s6);
15940
16056
  s0 = s1;
15941
16057
  }
15942
16058
  else {
@@ -15993,14 +16109,14 @@ function peg$parse(input, options) {
15993
16109
  s1 = null;
15994
16110
  }
15995
16111
  if (s1 !== peg$FAILED) {
15996
- if (input.substr(peg$currPos, 15) === peg$c1440) {
15997
- s2 = peg$c1440;
16112
+ if (input.substr(peg$currPos, 15) === peg$c1443) {
16113
+ s2 = peg$c1443;
15998
16114
  peg$currPos += 15;
15999
16115
  }
16000
16116
  else {
16001
16117
  s2 = peg$FAILED;
16002
16118
  if (peg$silentFails === 0) {
16003
- peg$fail(peg$c1441);
16119
+ peg$fail(peg$c1444);
16004
16120
  }
16005
16121
  }
16006
16122
  if (s2 !== peg$FAILED) {
@@ -16049,7 +16165,7 @@ function peg$parse(input, options) {
16049
16165
  }
16050
16166
  if (s9 !== peg$FAILED) {
16051
16167
  peg$savedPos = s0;
16052
- s1 = peg$c1442(s6);
16168
+ s1 = peg$c1445(s6);
16053
16169
  s0 = s1;
16054
16170
  }
16055
16171
  else {
@@ -16106,14 +16222,14 @@ function peg$parse(input, options) {
16106
16222
  s1 = null;
16107
16223
  }
16108
16224
  if (s1 !== peg$FAILED) {
16109
- if (input.substr(peg$currPos, 15) === peg$c1443) {
16110
- s2 = peg$c1443;
16225
+ if (input.substr(peg$currPos, 15) === peg$c1446) {
16226
+ s2 = peg$c1446;
16111
16227
  peg$currPos += 15;
16112
16228
  }
16113
16229
  else {
16114
16230
  s2 = peg$FAILED;
16115
16231
  if (peg$silentFails === 0) {
16116
- peg$fail(peg$c1444);
16232
+ peg$fail(peg$c1447);
16117
16233
  }
16118
16234
  }
16119
16235
  if (s2 !== peg$FAILED) {
@@ -16162,7 +16278,7 @@ function peg$parse(input, options) {
16162
16278
  }
16163
16279
  if (s9 !== peg$FAILED) {
16164
16280
  peg$savedPos = s0;
16165
- s1 = peg$c1445(s6);
16281
+ s1 = peg$c1448(s6);
16166
16282
  s0 = s1;
16167
16283
  }
16168
16284
  else {
@@ -16219,14 +16335,14 @@ function peg$parse(input, options) {
16219
16335
  s1 = null;
16220
16336
  }
16221
16337
  if (s1 !== peg$FAILED) {
16222
- if (input.substr(peg$currPos, 16) === peg$c1446) {
16223
- s2 = peg$c1446;
16338
+ if (input.substr(peg$currPos, 16) === peg$c1449) {
16339
+ s2 = peg$c1449;
16224
16340
  peg$currPos += 16;
16225
16341
  }
16226
16342
  else {
16227
16343
  s2 = peg$FAILED;
16228
16344
  if (peg$silentFails === 0) {
16229
- peg$fail(peg$c1447);
16345
+ peg$fail(peg$c1450);
16230
16346
  }
16231
16347
  }
16232
16348
  if (s2 !== peg$FAILED) {
@@ -16275,7 +16391,7 @@ function peg$parse(input, options) {
16275
16391
  }
16276
16392
  if (s9 !== peg$FAILED) {
16277
16393
  peg$savedPos = s0;
16278
- s1 = peg$c1448(s6);
16394
+ s1 = peg$c1451(s6);
16279
16395
  s0 = s1;
16280
16396
  }
16281
16397
  else {
@@ -16332,14 +16448,14 @@ function peg$parse(input, options) {
16332
16448
  s1 = null;
16333
16449
  }
16334
16450
  if (s1 !== peg$FAILED) {
16335
- if (input.substr(peg$currPos, 11) === peg$c1449) {
16336
- s2 = peg$c1449;
16451
+ if (input.substr(peg$currPos, 11) === peg$c1452) {
16452
+ s2 = peg$c1452;
16337
16453
  peg$currPos += 11;
16338
16454
  }
16339
16455
  else {
16340
16456
  s2 = peg$FAILED;
16341
16457
  if (peg$silentFails === 0) {
16342
- peg$fail(peg$c1450);
16458
+ peg$fail(peg$c1453);
16343
16459
  }
16344
16460
  }
16345
16461
  if (s2 !== peg$FAILED) {
@@ -16388,7 +16504,7 @@ function peg$parse(input, options) {
16388
16504
  }
16389
16505
  if (s9 !== peg$FAILED) {
16390
16506
  peg$savedPos = s0;
16391
- s1 = peg$c1451(s6);
16507
+ s1 = peg$c1454(s6);
16392
16508
  s0 = s1;
16393
16509
  }
16394
16510
  else {
@@ -16445,14 +16561,14 @@ function peg$parse(input, options) {
16445
16561
  s1 = null;
16446
16562
  }
16447
16563
  if (s1 !== peg$FAILED) {
16448
- if (input.substr(peg$currPos, 5) === peg$c1452) {
16449
- s2 = peg$c1452;
16564
+ if (input.substr(peg$currPos, 5) === peg$c1455) {
16565
+ s2 = peg$c1455;
16450
16566
  peg$currPos += 5;
16451
16567
  }
16452
16568
  else {
16453
16569
  s2 = peg$FAILED;
16454
16570
  if (peg$silentFails === 0) {
16455
- peg$fail(peg$c1453);
16571
+ peg$fail(peg$c1456);
16456
16572
  }
16457
16573
  }
16458
16574
  if (s2 !== peg$FAILED) {
@@ -16501,7 +16617,7 @@ function peg$parse(input, options) {
16501
16617
  }
16502
16618
  if (s9 !== peg$FAILED) {
16503
16619
  peg$savedPos = s0;
16504
- s1 = peg$c1454(s6);
16620
+ s1 = peg$c1457(s6);
16505
16621
  s0 = s1;
16506
16622
  }
16507
16623
  else {
@@ -16558,14 +16674,14 @@ function peg$parse(input, options) {
16558
16674
  s1 = null;
16559
16675
  }
16560
16676
  if (s1 !== peg$FAILED) {
16561
- if (input.substr(peg$currPos, 4) === peg$c1455) {
16562
- s2 = peg$c1455;
16677
+ if (input.substr(peg$currPos, 4) === peg$c1458) {
16678
+ s2 = peg$c1458;
16563
16679
  peg$currPos += 4;
16564
16680
  }
16565
16681
  else {
16566
16682
  s2 = peg$FAILED;
16567
16683
  if (peg$silentFails === 0) {
16568
- peg$fail(peg$c1456);
16684
+ peg$fail(peg$c1459);
16569
16685
  }
16570
16686
  }
16571
16687
  if (s2 !== peg$FAILED) {
@@ -16614,7 +16730,7 @@ function peg$parse(input, options) {
16614
16730
  }
16615
16731
  if (s9 !== peg$FAILED) {
16616
16732
  peg$savedPos = s0;
16617
- s1 = peg$c1457(s6);
16733
+ s1 = peg$c1460(s6);
16618
16734
  s0 = s1;
16619
16735
  }
16620
16736
  else {
@@ -16671,14 +16787,14 @@ function peg$parse(input, options) {
16671
16787
  s1 = null;
16672
16788
  }
16673
16789
  if (s1 !== peg$FAILED) {
16674
- if (input.substr(peg$currPos, 5) === peg$c1458) {
16675
- s2 = peg$c1458;
16790
+ if (input.substr(peg$currPos, 5) === peg$c1461) {
16791
+ s2 = peg$c1461;
16676
16792
  peg$currPos += 5;
16677
16793
  }
16678
16794
  else {
16679
16795
  s2 = peg$FAILED;
16680
16796
  if (peg$silentFails === 0) {
16681
- peg$fail(peg$c1459);
16797
+ peg$fail(peg$c1462);
16682
16798
  }
16683
16799
  }
16684
16800
  if (s2 !== peg$FAILED) {
@@ -16727,7 +16843,7 @@ function peg$parse(input, options) {
16727
16843
  }
16728
16844
  if (s9 !== peg$FAILED) {
16729
16845
  peg$savedPos = s0;
16730
- s1 = peg$c1460(s6);
16846
+ s1 = peg$c1463(s6);
16731
16847
  s0 = s1;
16732
16848
  }
16733
16849
  else {
@@ -16784,14 +16900,14 @@ function peg$parse(input, options) {
16784
16900
  s1 = null;
16785
16901
  }
16786
16902
  if (s1 !== peg$FAILED) {
16787
- if (input.substr(peg$currPos, 12) === peg$c1461) {
16788
- s2 = peg$c1461;
16903
+ if (input.substr(peg$currPos, 12) === peg$c1464) {
16904
+ s2 = peg$c1464;
16789
16905
  peg$currPos += 12;
16790
16906
  }
16791
16907
  else {
16792
16908
  s2 = peg$FAILED;
16793
16909
  if (peg$silentFails === 0) {
16794
- peg$fail(peg$c1462);
16910
+ peg$fail(peg$c1465);
16795
16911
  }
16796
16912
  }
16797
16913
  if (s2 !== peg$FAILED) {
@@ -16840,7 +16956,7 @@ function peg$parse(input, options) {
16840
16956
  }
16841
16957
  if (s9 !== peg$FAILED) {
16842
16958
  peg$savedPos = s0;
16843
- s1 = peg$c1463(s6);
16959
+ s1 = peg$c1466(s6);
16844
16960
  s0 = s1;
16845
16961
  }
16846
16962
  else {
@@ -16938,7 +17054,7 @@ function peg$parse(input, options) {
16938
17054
  peg$silentFails--;
16939
17055
  if (s0 === peg$FAILED) {
16940
17056
  if (peg$silentFails === 0) {
16941
- peg$fail(peg$c1464);
17057
+ peg$fail(peg$c1467);
16942
17058
  }
16943
17059
  }
16944
17060
  return s0;
@@ -16969,14 +17085,14 @@ function peg$parse(input, options) {
16969
17085
  s1 = null;
16970
17086
  }
16971
17087
  if (s1 !== peg$FAILED) {
16972
- if (input.substr(peg$currPos, 5) === peg$c1465) {
16973
- s2 = peg$c1465;
17088
+ if (input.substr(peg$currPos, 5) === peg$c1468) {
17089
+ s2 = peg$c1468;
16974
17090
  peg$currPos += 5;
16975
17091
  }
16976
17092
  else {
16977
17093
  s2 = peg$FAILED;
16978
17094
  if (peg$silentFails === 0) {
16979
- peg$fail(peg$c1466);
17095
+ peg$fail(peg$c1469);
16980
17096
  }
16981
17097
  }
16982
17098
  if (s2 !== peg$FAILED) {
@@ -17025,7 +17141,7 @@ function peg$parse(input, options) {
17025
17141
  }
17026
17142
  if (s9 !== peg$FAILED) {
17027
17143
  peg$savedPos = s0;
17028
- s1 = peg$c1467(s6);
17144
+ s1 = peg$c1470(s6);
17029
17145
  s0 = s1;
17030
17146
  }
17031
17147
  else {
@@ -17090,14 +17206,14 @@ function peg$parse(input, options) {
17090
17206
  s1 = null;
17091
17207
  }
17092
17208
  if (s1 !== peg$FAILED) {
17093
- if (input.substr(peg$currPos, 5) === peg$c1468) {
17094
- s2 = peg$c1468;
17209
+ if (input.substr(peg$currPos, 5) === peg$c1471) {
17210
+ s2 = peg$c1471;
17095
17211
  peg$currPos += 5;
17096
17212
  }
17097
17213
  else {
17098
17214
  s2 = peg$FAILED;
17099
17215
  if (peg$silentFails === 0) {
17100
- peg$fail(peg$c1469);
17216
+ peg$fail(peg$c1472);
17101
17217
  }
17102
17218
  }
17103
17219
  if (s2 !== peg$FAILED) {
@@ -17146,7 +17262,7 @@ function peg$parse(input, options) {
17146
17262
  }
17147
17263
  if (s9 !== peg$FAILED) {
17148
17264
  peg$savedPos = s0;
17149
- s1 = peg$c1470(s6);
17265
+ s1 = peg$c1473(s6);
17150
17266
  s0 = s1;
17151
17267
  }
17152
17268
  else {
@@ -17211,14 +17327,14 @@ function peg$parse(input, options) {
17211
17327
  s1 = null;
17212
17328
  }
17213
17329
  if (s1 !== peg$FAILED) {
17214
- if (input.substr(peg$currPos, 10) === peg$c1472) {
17215
- s2 = peg$c1472;
17330
+ if (input.substr(peg$currPos, 10) === peg$c1475) {
17331
+ s2 = peg$c1475;
17216
17332
  peg$currPos += 10;
17217
17333
  }
17218
17334
  else {
17219
17335
  s2 = peg$FAILED;
17220
17336
  if (peg$silentFails === 0) {
17221
- peg$fail(peg$c1473);
17337
+ peg$fail(peg$c1476);
17222
17338
  }
17223
17339
  }
17224
17340
  if (s2 !== peg$FAILED) {
@@ -17267,7 +17383,7 @@ function peg$parse(input, options) {
17267
17383
  }
17268
17384
  if (s9 !== peg$FAILED) {
17269
17385
  peg$savedPos = s0;
17270
- s1 = peg$c1474(s6);
17386
+ s1 = peg$c1477(s6);
17271
17387
  s0 = s1;
17272
17388
  }
17273
17389
  else {
@@ -17318,7 +17434,7 @@ function peg$parse(input, options) {
17318
17434
  if (s0 === peg$FAILED) {
17319
17435
  s1 = peg$FAILED;
17320
17436
  if (peg$silentFails === 0) {
17321
- peg$fail(peg$c1471);
17437
+ peg$fail(peg$c1474);
17322
17438
  }
17323
17439
  }
17324
17440
  return s0;
@@ -17332,14 +17448,14 @@ function peg$parse(input, options) {
17332
17448
  s1 = null;
17333
17449
  }
17334
17450
  if (s1 !== peg$FAILED) {
17335
- if (input.substr(peg$currPos, 16) === peg$c1476) {
17336
- s2 = peg$c1476;
17451
+ if (input.substr(peg$currPos, 16) === peg$c1479) {
17452
+ s2 = peg$c1479;
17337
17453
  peg$currPos += 16;
17338
17454
  }
17339
17455
  else {
17340
17456
  s2 = peg$FAILED;
17341
17457
  if (peg$silentFails === 0) {
17342
- peg$fail(peg$c1477);
17458
+ peg$fail(peg$c1480);
17343
17459
  }
17344
17460
  }
17345
17461
  if (s2 !== peg$FAILED) {
@@ -17388,7 +17504,7 @@ function peg$parse(input, options) {
17388
17504
  }
17389
17505
  if (s9 !== peg$FAILED) {
17390
17506
  peg$savedPos = s0;
17391
- s1 = peg$c1478(s6);
17507
+ s1 = peg$c1481(s6);
17392
17508
  s0 = s1;
17393
17509
  }
17394
17510
  else {
@@ -17439,7 +17555,7 @@ function peg$parse(input, options) {
17439
17555
  if (s0 === peg$FAILED) {
17440
17556
  s1 = peg$FAILED;
17441
17557
  if (peg$silentFails === 0) {
17442
- peg$fail(peg$c1475);
17558
+ peg$fail(peg$c1478);
17443
17559
  }
17444
17560
  }
17445
17561
  return s0;
@@ -17453,14 +17569,14 @@ function peg$parse(input, options) {
17453
17569
  s1 = null;
17454
17570
  }
17455
17571
  if (s1 !== peg$FAILED) {
17456
- if (input.substr(peg$currPos, 12) === peg$c1480) {
17457
- s2 = peg$c1480;
17572
+ if (input.substr(peg$currPos, 12) === peg$c1483) {
17573
+ s2 = peg$c1483;
17458
17574
  peg$currPos += 12;
17459
17575
  }
17460
17576
  else {
17461
17577
  s2 = peg$FAILED;
17462
17578
  if (peg$silentFails === 0) {
17463
- peg$fail(peg$c1481);
17579
+ peg$fail(peg$c1484);
17464
17580
  }
17465
17581
  }
17466
17582
  if (s2 !== peg$FAILED) {
@@ -17509,7 +17625,7 @@ function peg$parse(input, options) {
17509
17625
  }
17510
17626
  if (s9 !== peg$FAILED) {
17511
17627
  peg$savedPos = s0;
17512
- s1 = peg$c1482(s6);
17628
+ s1 = peg$c1485(s6);
17513
17629
  s0 = s1;
17514
17630
  }
17515
17631
  else {
@@ -17560,7 +17676,7 @@ function peg$parse(input, options) {
17560
17676
  if (s0 === peg$FAILED) {
17561
17677
  s1 = peg$FAILED;
17562
17678
  if (peg$silentFails === 0) {
17563
- peg$fail(peg$c1479);
17679
+ peg$fail(peg$c1482);
17564
17680
  }
17565
17681
  }
17566
17682
  return s0;
@@ -17574,14 +17690,14 @@ function peg$parse(input, options) {
17574
17690
  s1 = null;
17575
17691
  }
17576
17692
  if (s1 !== peg$FAILED) {
17577
- if (input.substr(peg$currPos, 5) === peg$c1484) {
17578
- s2 = peg$c1484;
17693
+ if (input.substr(peg$currPos, 5) === peg$c1487) {
17694
+ s2 = peg$c1487;
17579
17695
  peg$currPos += 5;
17580
17696
  }
17581
17697
  else {
17582
17698
  s2 = peg$FAILED;
17583
17699
  if (peg$silentFails === 0) {
17584
- peg$fail(peg$c1485);
17700
+ peg$fail(peg$c1488);
17585
17701
  }
17586
17702
  }
17587
17703
  if (s2 !== peg$FAILED) {
@@ -17630,7 +17746,7 @@ function peg$parse(input, options) {
17630
17746
  }
17631
17747
  if (s9 !== peg$FAILED) {
17632
17748
  peg$savedPos = s0;
17633
- s1 = peg$c1486(s6);
17749
+ s1 = peg$c1489(s6);
17634
17750
  s0 = s1;
17635
17751
  }
17636
17752
  else {
@@ -17681,7 +17797,7 @@ function peg$parse(input, options) {
17681
17797
  if (s0 === peg$FAILED) {
17682
17798
  s1 = peg$FAILED;
17683
17799
  if (peg$silentFails === 0) {
17684
- peg$fail(peg$c1483);
17800
+ peg$fail(peg$c1486);
17685
17801
  }
17686
17802
  }
17687
17803
  return s0;
@@ -17695,14 +17811,14 @@ function peg$parse(input, options) {
17695
17811
  s1 = null;
17696
17812
  }
17697
17813
  if (s1 !== peg$FAILED) {
17698
- if (input.substr(peg$currPos, 7) === peg$c1488) {
17699
- s2 = peg$c1488;
17814
+ if (input.substr(peg$currPos, 7) === peg$c1491) {
17815
+ s2 = peg$c1491;
17700
17816
  peg$currPos += 7;
17701
17817
  }
17702
17818
  else {
17703
17819
  s2 = peg$FAILED;
17704
17820
  if (peg$silentFails === 0) {
17705
- peg$fail(peg$c1489);
17821
+ peg$fail(peg$c1492);
17706
17822
  }
17707
17823
  }
17708
17824
  if (s2 !== peg$FAILED) {
@@ -17751,7 +17867,7 @@ function peg$parse(input, options) {
17751
17867
  }
17752
17868
  if (s9 !== peg$FAILED) {
17753
17869
  peg$savedPos = s0;
17754
- s1 = peg$c1490(s6);
17870
+ s1 = peg$c1493(s6);
17755
17871
  s0 = s1;
17756
17872
  }
17757
17873
  else {
@@ -17802,7 +17918,7 @@ function peg$parse(input, options) {
17802
17918
  if (s0 === peg$FAILED) {
17803
17919
  s1 = peg$FAILED;
17804
17920
  if (peg$silentFails === 0) {
17805
- peg$fail(peg$c1487);
17921
+ peg$fail(peg$c1490);
17806
17922
  }
17807
17923
  }
17808
17924
  return s0;
@@ -17872,7 +17988,7 @@ function peg$parse(input, options) {
17872
17988
  }
17873
17989
  if (s9 !== peg$FAILED) {
17874
17990
  peg$savedPos = s0;
17875
- s1 = peg$c1492(s6);
17991
+ s1 = peg$c1495(s6);
17876
17992
  s0 = s1;
17877
17993
  }
17878
17994
  else {
@@ -17926,14 +18042,14 @@ function peg$parse(input, options) {
17926
18042
  s1 = null;
17927
18043
  }
17928
18044
  if (s1 !== peg$FAILED) {
17929
- if (input.substr(peg$currPos, 9) === peg$c1493) {
17930
- s2 = peg$c1493;
18045
+ if (input.substr(peg$currPos, 9) === peg$c1496) {
18046
+ s2 = peg$c1496;
17931
18047
  peg$currPos += 9;
17932
18048
  }
17933
18049
  else {
17934
18050
  s2 = peg$FAILED;
17935
18051
  if (peg$silentFails === 0) {
17936
- peg$fail(peg$c1494);
18052
+ peg$fail(peg$c1497);
17937
18053
  }
17938
18054
  }
17939
18055
  if (s2 !== peg$FAILED) {
@@ -17982,7 +18098,7 @@ function peg$parse(input, options) {
17982
18098
  }
17983
18099
  if (s9 !== peg$FAILED) {
17984
18100
  peg$savedPos = s0;
17985
- s1 = peg$c1492(s6);
18101
+ s1 = peg$c1495(s6);
17986
18102
  s0 = s1;
17987
18103
  }
17988
18104
  else {
@@ -18034,7 +18150,7 @@ function peg$parse(input, options) {
18034
18150
  if (s0 === peg$FAILED) {
18035
18151
  s1 = peg$FAILED;
18036
18152
  if (peg$silentFails === 0) {
18037
- peg$fail(peg$c1491);
18153
+ peg$fail(peg$c1494);
18038
18154
  }
18039
18155
  }
18040
18156
  return s0;
@@ -18048,14 +18164,14 @@ function peg$parse(input, options) {
18048
18164
  s1 = null;
18049
18165
  }
18050
18166
  if (s1 !== peg$FAILED) {
18051
- if (input.substr(peg$currPos, 5) === peg$c1496) {
18052
- s2 = peg$c1496;
18167
+ if (input.substr(peg$currPos, 5) === peg$c1499) {
18168
+ s2 = peg$c1499;
18053
18169
  peg$currPos += 5;
18054
18170
  }
18055
18171
  else {
18056
18172
  s2 = peg$FAILED;
18057
18173
  if (peg$silentFails === 0) {
18058
- peg$fail(peg$c1497);
18174
+ peg$fail(peg$c1500);
18059
18175
  }
18060
18176
  }
18061
18177
  if (s2 !== peg$FAILED) {
@@ -18104,7 +18220,7 @@ function peg$parse(input, options) {
18104
18220
  }
18105
18221
  if (s9 !== peg$FAILED) {
18106
18222
  peg$savedPos = s0;
18107
- s1 = peg$c1498(s6);
18223
+ s1 = peg$c1501(s6);
18108
18224
  s0 = s1;
18109
18225
  }
18110
18226
  else {
@@ -18155,7 +18271,7 @@ function peg$parse(input, options) {
18155
18271
  if (s0 === peg$FAILED) {
18156
18272
  s1 = peg$FAILED;
18157
18273
  if (peg$silentFails === 0) {
18158
- peg$fail(peg$c1495);
18274
+ peg$fail(peg$c1498);
18159
18275
  }
18160
18276
  }
18161
18277
  return s0;
@@ -18169,14 +18285,14 @@ function peg$parse(input, options) {
18169
18285
  s1 = null;
18170
18286
  }
18171
18287
  if (s1 !== peg$FAILED) {
18172
- if (input.substr(peg$currPos, 3) === peg$c1500) {
18173
- s2 = peg$c1500;
18288
+ if (input.substr(peg$currPos, 3) === peg$c1503) {
18289
+ s2 = peg$c1503;
18174
18290
  peg$currPos += 3;
18175
18291
  }
18176
18292
  else {
18177
18293
  s2 = peg$FAILED;
18178
18294
  if (peg$silentFails === 0) {
18179
- peg$fail(peg$c1501);
18295
+ peg$fail(peg$c1504);
18180
18296
  }
18181
18297
  }
18182
18298
  if (s2 !== peg$FAILED) {
@@ -18225,7 +18341,7 @@ function peg$parse(input, options) {
18225
18341
  }
18226
18342
  if (s9 !== peg$FAILED) {
18227
18343
  peg$savedPos = s0;
18228
- s1 = peg$c1502(s6);
18344
+ s1 = peg$c1505(s6);
18229
18345
  s0 = s1;
18230
18346
  }
18231
18347
  else {
@@ -18276,7 +18392,7 @@ function peg$parse(input, options) {
18276
18392
  if (s0 === peg$FAILED) {
18277
18393
  s1 = peg$FAILED;
18278
18394
  if (peg$silentFails === 0) {
18279
- peg$fail(peg$c1499);
18395
+ peg$fail(peg$c1502);
18280
18396
  }
18281
18397
  }
18282
18398
  return s0;
@@ -18290,14 +18406,14 @@ function peg$parse(input, options) {
18290
18406
  s1 = null;
18291
18407
  }
18292
18408
  if (s1 !== peg$FAILED) {
18293
- if (input.substr(peg$currPos, 8) === peg$c1504) {
18294
- s2 = peg$c1504;
18409
+ if (input.substr(peg$currPos, 8) === peg$c1507) {
18410
+ s2 = peg$c1507;
18295
18411
  peg$currPos += 8;
18296
18412
  }
18297
18413
  else {
18298
18414
  s2 = peg$FAILED;
18299
18415
  if (peg$silentFails === 0) {
18300
- peg$fail(peg$c1505);
18416
+ peg$fail(peg$c1508);
18301
18417
  }
18302
18418
  }
18303
18419
  if (s2 !== peg$FAILED) {
@@ -18350,7 +18466,7 @@ function peg$parse(input, options) {
18350
18466
  }
18351
18467
  if (s11 !== peg$FAILED) {
18352
18468
  peg$savedPos = s0;
18353
- s1 = peg$c1506(s6, s8);
18469
+ s1 = peg$c1509(s6, s8);
18354
18470
  s0 = s1;
18355
18471
  }
18356
18472
  else {
@@ -18414,14 +18530,14 @@ function peg$parse(input, options) {
18414
18530
  s1 = null;
18415
18531
  }
18416
18532
  if (s1 !== peg$FAILED) {
18417
- if (input.substr(peg$currPos, 8) === peg$c1504) {
18418
- s2 = peg$c1504;
18533
+ if (input.substr(peg$currPos, 8) === peg$c1507) {
18534
+ s2 = peg$c1507;
18419
18535
  peg$currPos += 8;
18420
18536
  }
18421
18537
  else {
18422
18538
  s2 = peg$FAILED;
18423
18539
  if (peg$silentFails === 0) {
18424
- peg$fail(peg$c1505);
18540
+ peg$fail(peg$c1508);
18425
18541
  }
18426
18542
  }
18427
18543
  if (s2 !== peg$FAILED) {
@@ -18454,14 +18570,14 @@ function peg$parse(input, options) {
18454
18570
  if (s8 !== peg$FAILED) {
18455
18571
  s9 = peg$parseWS();
18456
18572
  if (s9 !== peg$FAILED) {
18457
- if (input.substr(peg$currPos, 8) === peg$c1507) {
18458
- s10 = peg$c1507;
18573
+ if (input.substr(peg$currPos, 8) === peg$c1510) {
18574
+ s10 = peg$c1510;
18459
18575
  peg$currPos += 8;
18460
18576
  }
18461
18577
  else {
18462
18578
  s10 = peg$FAILED;
18463
18579
  if (peg$silentFails === 0) {
18464
- peg$fail(peg$c1508);
18580
+ peg$fail(peg$c1511);
18465
18581
  }
18466
18582
  }
18467
18583
  if (s10 !== peg$FAILED) {
@@ -18487,7 +18603,7 @@ function peg$parse(input, options) {
18487
18603
  }
18488
18604
  if (s13 !== peg$FAILED) {
18489
18605
  peg$savedPos = s0;
18490
- s1 = peg$c1509(s6, s8);
18606
+ s1 = peg$c1512(s6, s8);
18491
18607
  s0 = s1;
18492
18608
  }
18493
18609
  else {
@@ -18559,7 +18675,7 @@ function peg$parse(input, options) {
18559
18675
  if (s0 === peg$FAILED) {
18560
18676
  s1 = peg$FAILED;
18561
18677
  if (peg$silentFails === 0) {
18562
- peg$fail(peg$c1503);
18678
+ peg$fail(peg$c1506);
18563
18679
  }
18564
18680
  }
18565
18681
  return s0;
@@ -18739,7 +18855,7 @@ function peg$parse(input, options) {
18739
18855
  }
18740
18856
  if (s11 !== peg$FAILED) {
18741
18857
  peg$savedPos = s0;
18742
- s1 = peg$c1510(s4, s8);
18858
+ s1 = peg$c1513(s4, s8);
18743
18859
  s0 = s1;
18744
18860
  }
18745
18861
  else {
@@ -18807,13 +18923,13 @@ function peg$parse(input, options) {
18807
18923
  }
18808
18924
  if (s1 !== peg$FAILED) {
18809
18925
  if (input.charCodeAt(peg$currPos) === 38) {
18810
- s2 = peg$c1511;
18926
+ s2 = peg$c1514;
18811
18927
  peg$currPos++;
18812
18928
  }
18813
18929
  else {
18814
18930
  s2 = peg$FAILED;
18815
18931
  if (peg$silentFails === 0) {
18816
- peg$fail(peg$c1512);
18932
+ peg$fail(peg$c1515);
18817
18933
  }
18818
18934
  }
18819
18935
  if (s2 !== peg$FAILED) {
@@ -18869,7 +18985,7 @@ function peg$parse(input, options) {
18869
18985
  }
18870
18986
  if (s11 !== peg$FAILED) {
18871
18987
  peg$savedPos = s0;
18872
- s1 = peg$c1513(s4, s8);
18988
+ s1 = peg$c1516(s4, s8);
18873
18989
  s0 = s1;
18874
18990
  }
18875
18991
  else {
@@ -18936,14 +19052,14 @@ function peg$parse(input, options) {
18936
19052
  s1 = null;
18937
19053
  }
18938
19054
  if (s1 !== peg$FAILED) {
18939
- if (input.substr(peg$currPos, 8) === peg$c1504) {
18940
- s2 = peg$c1504;
19055
+ if (input.substr(peg$currPos, 8) === peg$c1507) {
19056
+ s2 = peg$c1507;
18941
19057
  peg$currPos += 8;
18942
19058
  }
18943
19059
  else {
18944
19060
  s2 = peg$FAILED;
18945
19061
  if (peg$silentFails === 0) {
18946
- peg$fail(peg$c1505);
19062
+ peg$fail(peg$c1508);
18947
19063
  }
18948
19064
  }
18949
19065
  if (s2 !== peg$FAILED) {
@@ -18970,14 +19086,14 @@ function peg$parse(input, options) {
18970
19086
  if (s8 !== peg$FAILED) {
18971
19087
  s9 = peg$parseWS();
18972
19088
  if (s9 !== peg$FAILED) {
18973
- if (input.substr(peg$currPos, 8) === peg$c1507) {
18974
- s10 = peg$c1507;
19089
+ if (input.substr(peg$currPos, 8) === peg$c1510) {
19090
+ s10 = peg$c1510;
18975
19091
  peg$currPos += 8;
18976
19092
  }
18977
19093
  else {
18978
19094
  s10 = peg$FAILED;
18979
19095
  if (peg$silentFails === 0) {
18980
- peg$fail(peg$c1508);
19096
+ peg$fail(peg$c1511);
18981
19097
  }
18982
19098
  }
18983
19099
  if (s10 !== peg$FAILED) {
@@ -19003,7 +19119,7 @@ function peg$parse(input, options) {
19003
19119
  }
19004
19120
  if (s13 !== peg$FAILED) {
19005
19121
  peg$savedPos = s0;
19006
- s1 = peg$c1514(s4, s8);
19122
+ s1 = peg$c1517(s4, s8);
19007
19123
  s0 = s1;
19008
19124
  }
19009
19125
  else {
@@ -19077,14 +19193,14 @@ function peg$parse(input, options) {
19077
19193
  s1 = null;
19078
19194
  }
19079
19195
  if (s1 !== peg$FAILED) {
19080
- if (input.substr(peg$currPos, 8) === peg$c1504) {
19081
- s2 = peg$c1504;
19196
+ if (input.substr(peg$currPos, 8) === peg$c1507) {
19197
+ s2 = peg$c1507;
19082
19198
  peg$currPos += 8;
19083
19199
  }
19084
19200
  else {
19085
19201
  s2 = peg$FAILED;
19086
19202
  if (peg$silentFails === 0) {
19087
- peg$fail(peg$c1505);
19203
+ peg$fail(peg$c1508);
19088
19204
  }
19089
19205
  }
19090
19206
  if (s2 !== peg$FAILED) {
@@ -19094,14 +19210,14 @@ function peg$parse(input, options) {
19094
19210
  if (s4 !== peg$FAILED) {
19095
19211
  s5 = peg$parseWS();
19096
19212
  if (s5 !== peg$FAILED) {
19097
- if (input.substr(peg$currPos, 8) === peg$c1507) {
19098
- s6 = peg$c1507;
19213
+ if (input.substr(peg$currPos, 8) === peg$c1510) {
19214
+ s6 = peg$c1510;
19099
19215
  peg$currPos += 8;
19100
19216
  }
19101
19217
  else {
19102
19218
  s6 = peg$FAILED;
19103
19219
  if (peg$silentFails === 0) {
19104
- peg$fail(peg$c1508);
19220
+ peg$fail(peg$c1511);
19105
19221
  }
19106
19222
  }
19107
19223
  if (s6 !== peg$FAILED) {
@@ -19127,7 +19243,7 @@ function peg$parse(input, options) {
19127
19243
  }
19128
19244
  if (s9 !== peg$FAILED) {
19129
19245
  peg$savedPos = s0;
19130
- s1 = peg$c1515(s4);
19246
+ s1 = peg$c1518(s4);
19131
19247
  s0 = s1;
19132
19248
  }
19133
19249
  else {
@@ -19181,14 +19297,14 @@ function peg$parse(input, options) {
19181
19297
  s1 = null;
19182
19298
  }
19183
19299
  if (s1 !== peg$FAILED) {
19184
- if (input.substr(peg$currPos, 8) === peg$c1504) {
19185
- s2 = peg$c1504;
19300
+ if (input.substr(peg$currPos, 8) === peg$c1507) {
19301
+ s2 = peg$c1507;
19186
19302
  peg$currPos += 8;
19187
19303
  }
19188
19304
  else {
19189
19305
  s2 = peg$FAILED;
19190
19306
  if (peg$silentFails === 0) {
19191
- peg$fail(peg$c1505);
19307
+ peg$fail(peg$c1508);
19192
19308
  }
19193
19309
  }
19194
19310
  if (s2 !== peg$FAILED) {
@@ -19235,7 +19351,7 @@ function peg$parse(input, options) {
19235
19351
  }
19236
19352
  if (s11 !== peg$FAILED) {
19237
19353
  peg$savedPos = s0;
19238
- s1 = peg$c1516(s4, s8);
19354
+ s1 = peg$c1519(s4, s8);
19239
19355
  s0 = s1;
19240
19356
  }
19241
19357
  else {
@@ -19299,14 +19415,14 @@ function peg$parse(input, options) {
19299
19415
  s1 = null;
19300
19416
  }
19301
19417
  if (s1 !== peg$FAILED) {
19302
- if (input.substr(peg$currPos, 8) === peg$c1504) {
19303
- s2 = peg$c1504;
19418
+ if (input.substr(peg$currPos, 8) === peg$c1507) {
19419
+ s2 = peg$c1507;
19304
19420
  peg$currPos += 8;
19305
19421
  }
19306
19422
  else {
19307
19423
  s2 = peg$FAILED;
19308
19424
  if (peg$silentFails === 0) {
19309
- peg$fail(peg$c1505);
19425
+ peg$fail(peg$c1508);
19310
19426
  }
19311
19427
  }
19312
19428
  if (s2 !== peg$FAILED) {
@@ -19336,7 +19452,7 @@ function peg$parse(input, options) {
19336
19452
  }
19337
19453
  if (s7 !== peg$FAILED) {
19338
19454
  peg$savedPos = s0;
19339
- s1 = peg$c1517(s4);
19455
+ s1 = peg$c1520(s4);
19340
19456
  s0 = s1;
19341
19457
  }
19342
19458
  else {
@@ -19381,14 +19497,14 @@ function peg$parse(input, options) {
19381
19497
  function peg$parseRegularArrangeDeclaration() {
19382
19498
  var s0, s1, s2, s3, s4, s5, s6;
19383
19499
  s0 = peg$currPos;
19384
- if (input.substr(peg$currPos, 7) === peg$c1518) {
19385
- s1 = peg$c1518;
19500
+ if (input.substr(peg$currPos, 7) === peg$c1521) {
19501
+ s1 = peg$c1521;
19386
19502
  peg$currPos += 7;
19387
19503
  }
19388
19504
  else {
19389
19505
  s1 = peg$FAILED;
19390
19506
  if (peg$silentFails === 0) {
19391
- peg$fail(peg$c1519);
19507
+ peg$fail(peg$c1522);
19392
19508
  }
19393
19509
  }
19394
19510
  if (s1 !== peg$FAILED) {
@@ -19421,7 +19537,7 @@ function peg$parse(input, options) {
19421
19537
  }
19422
19538
  if (s6 !== peg$FAILED) {
19423
19539
  peg$savedPos = s0;
19424
- s1 = peg$c1520(s3);
19540
+ s1 = peg$c1523(s3);
19425
19541
  s0 = s1;
19426
19542
  }
19427
19543
  else {
@@ -19458,14 +19574,14 @@ function peg$parse(input, options) {
19458
19574
  function peg$parseArrangeStartDeclaration() {
19459
19575
  var s0, s1, s2, s3, s4, s5, s6;
19460
19576
  s0 = peg$currPos;
19461
- if (input.substr(peg$currPos, 13) === peg$c1521) {
19462
- s1 = peg$c1521;
19577
+ if (input.substr(peg$currPos, 13) === peg$c1524) {
19578
+ s1 = peg$c1524;
19463
19579
  peg$currPos += 13;
19464
19580
  }
19465
19581
  else {
19466
19582
  s1 = peg$FAILED;
19467
19583
  if (peg$silentFails === 0) {
19468
- peg$fail(peg$c1522);
19584
+ peg$fail(peg$c1525);
19469
19585
  }
19470
19586
  }
19471
19587
  if (s1 !== peg$FAILED) {
@@ -19498,7 +19614,7 @@ function peg$parse(input, options) {
19498
19614
  }
19499
19615
  if (s6 !== peg$FAILED) {
19500
19616
  peg$savedPos = s0;
19501
- s1 = peg$c1523(s3);
19617
+ s1 = peg$c1526(s3);
19502
19618
  s0 = s1;
19503
19619
  }
19504
19620
  else {
@@ -19535,14 +19651,14 @@ function peg$parse(input, options) {
19535
19651
  function peg$parseArrangeEndDeclaration() {
19536
19652
  var s0, s1, s2, s3, s4, s5, s6;
19537
19653
  s0 = peg$currPos;
19538
- if (input.substr(peg$currPos, 11) === peg$c1524) {
19539
- s1 = peg$c1524;
19654
+ if (input.substr(peg$currPos, 11) === peg$c1527) {
19655
+ s1 = peg$c1527;
19540
19656
  peg$currPos += 11;
19541
19657
  }
19542
19658
  else {
19543
19659
  s1 = peg$FAILED;
19544
19660
  if (peg$silentFails === 0) {
19545
- peg$fail(peg$c1525);
19661
+ peg$fail(peg$c1528);
19546
19662
  }
19547
19663
  }
19548
19664
  if (s1 !== peg$FAILED) {
@@ -19575,7 +19691,7 @@ function peg$parse(input, options) {
19575
19691
  }
19576
19692
  if (s6 !== peg$FAILED) {
19577
19693
  peg$savedPos = s0;
19578
- s1 = peg$c1526(s3);
19694
+ s1 = peg$c1529(s3);
19579
19695
  s0 = s1;
19580
19696
  }
19581
19697
  else {
@@ -19622,7 +19738,7 @@ function peg$parse(input, options) {
19622
19738
  peg$silentFails--;
19623
19739
  if (s0 === peg$FAILED) {
19624
19740
  if (peg$silentFails === 0) {
19625
- peg$fail(peg$c1527);
19741
+ peg$fail(peg$c1530);
19626
19742
  }
19627
19743
  }
19628
19744
  return s0;
@@ -20940,7 +21056,7 @@ function compile_rule_handler(rule) {
20940
21056
  }
20941
21057
  // things that can only exist once and are just a value under their own name
20942
21058
  const tautologies = [
20943
- 'graph_layout', 'start_states', 'end_states', 'machine_name', 'machine_version',
21059
+ 'graph_layout', 'start_states', 'end_states', 'failed_outputs', 'machine_name', 'machine_version',
20944
21060
  'machine_comment', 'machine_author', 'machine_contributor', 'machine_definition',
20945
21061
  'machine_reference', 'machine_license', 'fsl_version', 'state_config', 'theme',
20946
21062
  'flow', 'dot_preamble', 'allows_override', 'default_state_config',
@@ -21010,6 +21126,7 @@ function compile(tree) {
21010
21126
  transition: [],
21011
21127
  start_states: [],
21012
21128
  end_states: [],
21129
+ failed_outputs: [],
21013
21130
  state_config: [],
21014
21131
  state_declaration: [],
21015
21132
  fsl_version: [],
@@ -21051,6 +21168,7 @@ function compile(tree) {
21051
21168
  const result_cfg = {
21052
21169
  start_states: results.start_states.length ? results.start_states : [assembled_transitions[0].from],
21053
21170
  end_states: results.end_states,
21171
+ failed_outputs: results.failed_outputs,
21054
21172
  transitions: assembled_transitions,
21055
21173
  state_property: [],
21056
21174
  };
@@ -21572,7 +21690,7 @@ var constants = /*#__PURE__*/Object.freeze({
21572
21690
  * Useful for runtime diagnostics and for embedding in serialized machine
21573
21691
  * snapshots so that deserializers can detect version-skew.
21574
21692
  */
21575
- const version = "5.142.1";
21693
+ const version = "5.142.2";
21576
21694
 
21577
21695
  // whargarbl lots of these return arrays could/should be sets
21578
21696
  const { state_name_chars, state_name_first_chars, action_label_chars } = constants;
@@ -21764,7 +21882,7 @@ function state_style_condense(jssk, machine) {
21764
21882
  */
21765
21883
  class Machine {
21766
21884
  // whargarbl this badly needs to be broken up, monolith master
21767
- constructor({ start_states, end_states = [], initial_state, start_states_no_enforce, complete = [], transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, npm_name, state_declaration, property_definition, state_property, fsl_version, dot_preamble = undefined, arrange_declaration = [], arrange_start_declaration = [], arrange_end_declaration = [], theme = ['default'], flow = 'down', graph_layout = 'dot', instance_name, history, data, default_state_config, default_active_state_config, default_hooked_state_config, default_terminal_state_config, default_start_state_config, default_end_state_config, allows_override, config_allows_override, rng_seed, time_source, timeout_source, clear_timeout_source }) {
21885
+ constructor({ start_states, end_states = [], failed_outputs = [], initial_state, start_states_no_enforce, complete = [], transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, npm_name, state_declaration, property_definition, state_property, fsl_version, dot_preamble = undefined, arrange_declaration = [], arrange_start_declaration = [], arrange_end_declaration = [], theme = ['default'], flow = 'down', graph_layout = 'dot', instance_name, history, data, default_state_config, default_active_state_config, default_hooked_state_config, default_terminal_state_config, default_start_state_config, default_end_state_config, allows_override, config_allows_override, rng_seed, time_source, timeout_source, clear_timeout_source }) {
21768
21886
  this._time_source = () => new Date().getTime();
21769
21887
  this._create_started = this._time_source();
21770
21888
  this._instance_name = instance_name;
@@ -21779,6 +21897,7 @@ class Machine {
21779
21897
  this._reverse_action_targets = new Map(); // todo
21780
21898
  this._start_states = new Set(start_states);
21781
21899
  this._end_states = new Set(end_states); // todo consider what to do about incorporating complete too
21900
+ this._failed_outputs = new Set(failed_outputs);
21782
21901
  this._machine_author = array_box_if_string(machine_author);
21783
21902
  this._machine_comment = machine_comment;
21784
21903
  this._machine_contributor = array_box_if_string(machine_contributor);
@@ -22408,6 +22527,45 @@ class Machine {
22408
22527
  is_end_state(whichState) {
22409
22528
  return this._end_states.has(whichState);
22410
22529
  }
22530
+ /********
22531
+ *
22532
+ * Get the set of states declared as failure outputs for this machine.
22533
+ * Returns an array of state labels, or an empty array when none were
22534
+ * declared. A state in this list means the machine is in a failure
22535
+ * condition when it occupies that state.
22536
+ *
22537
+ * @see {@link is_failed_output} to test a single state
22538
+ * @see {@link is_failed} to test the current state
22539
+ *
22540
+ */
22541
+ failed_outputs() {
22542
+ return [...this._failed_outputs];
22543
+ }
22544
+ /********
22545
+ *
22546
+ * Check whether a given state is declared as a failure output.
22547
+ *
22548
+ * @param whichState The name of the state to check
22549
+ *
22550
+ * @see {@link failed_outputs} for the full failure-output set
22551
+ * @see {@link is_failed} to test the current state
22552
+ *
22553
+ */
22554
+ is_failed_output(whichState) {
22555
+ return this._failed_outputs.has(whichState);
22556
+ }
22557
+ /********
22558
+ *
22559
+ * Check whether the machine is currently in a failure state — that is,
22560
+ * whether its current state is one of the declared `failed_outputs`.
22561
+ *
22562
+ * @see {@link failed_outputs} for the full failure-output set
22563
+ * @see {@link is_failed_output} to test an arbitrary state
22564
+ *
22565
+ */
22566
+ is_failed() {
22567
+ return this._failed_outputs.has(this._state);
22568
+ }
22411
22569
  /********
22412
22570
  *
22413
22571
  * Check whether a given state is final (either has no exits or is marked