occam-verify-cli 0.0.705 → 0.0.706

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/lib/ruleNames.js CHANGED
@@ -21,18 +21,12 @@ _export(exports, {
21
21
  METASTATEMENT_RULE_NAME: function() {
22
22
  return METASTATEMENT_RULE_NAME;
23
23
  },
24
- METAVARIABLE_DECLARATION_RULE_NAME: function() {
25
- return METAVARIABLE_DECLARATION_RULE_NAME;
26
- },
27
24
  METAVARIABLE_RULE_NAME: function() {
28
25
  return METAVARIABLE_RULE_NAME;
29
26
  },
30
27
  META_ARGUMENT_RULE_NAME: function() {
31
28
  return META_ARGUMENT_RULE_NAME;
32
29
  },
33
- META_TYPE_RULE_NAME: function() {
34
- return META_TYPE_RULE_NAME;
35
- },
36
30
  QUALIFIED_METASTATEMENT_RULE_NAME: function() {
37
31
  return QUALIFIED_METASTATEMENT_RULE_NAME;
38
32
  },
@@ -62,19 +56,14 @@ _export(exports, {
62
56
  },
63
57
  VARIABLE_DECLARATION_RULE_NAME: function() {
64
58
  return VARIABLE_DECLARATION_RULE_NAME;
65
- },
66
- VARIABLE_RULE_NAME: function() {
67
- return VARIABLE_RULE_NAME;
68
59
  }
69
60
  });
70
61
  var TERM_RULE_NAME = "term";
71
62
  var TYPE_RULE_NAME = "type";
72
63
  var LABEL_RULE_NAME = "label";
73
- var VARIABLE_RULE_NAME = "variable";
74
64
  var ARGUMENT_RULE_NAME = "argument";
75
65
  var SUBPROOF_RULE_NAME = "subproof";
76
66
  var STATEMENT_RULE_NAME = "statement";
77
- var META_TYPE_RULE_NAME = "meta-type";
78
67
  var METAVARIABLE_RULE_NAME = "metavariable";
79
68
  var METASTATEMENT_RULE_NAME = "metastatement";
80
69
  var RULE_SUBPROOF_RULE_NAME = "ruleSubproof";
@@ -84,7 +73,6 @@ var VARIABLE_DECLARATION_RULE_NAME = "variableDeclaration";
84
73
  var UNQUALIFIED_STATEMENT_RULE_NAME = "unqualifiedStatement";
85
74
  var CONSTRUCTOR_DECLARATION_RULE_NAME = "constructorDeclaration";
86
75
  var QUALIFIED_METASTATEMENT_RULE_NAME = "qualifiedMetastatement";
87
- var METAVARIABLE_DECLARATION_RULE_NAME = "metavariableDeclaration";
88
76
  var UNQUALIFIED_METASTATEMENT_RULE_NAME = "unqualifiedMetastatement";
89
77
 
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlTmFtZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBURVJNX1JVTEVfTkFNRSA9IFwidGVybVwiO1xuZXhwb3J0IGNvbnN0IFRZUEVfUlVMRV9OQU1FID0gXCJ0eXBlXCI7XG5leHBvcnQgY29uc3QgTEFCRUxfUlVMRV9OQU1FID0gXCJsYWJlbFwiO1xuZXhwb3J0IGNvbnN0IFZBUklBQkxFX1JVTEVfTkFNRSA9IFwidmFyaWFibGVcIjtcbmV4cG9ydCBjb25zdCBBUkdVTUVOVF9SVUxFX05BTUUgPSBcImFyZ3VtZW50XCI7XG5leHBvcnQgY29uc3QgU1VCUFJPT0ZfUlVMRV9OQU1FID0gXCJzdWJwcm9vZlwiO1xuZXhwb3J0IGNvbnN0IFNUQVRFTUVOVF9SVUxFX05BTUUgPSBcInN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfVFlQRV9SVUxFX05BTUUgPSBcIm1ldGEtdHlwZVwiO1xuZXhwb3J0IGNvbnN0IE1FVEFWQVJJQUJMRV9SVUxFX05BTUUgPSBcIm1ldGF2YXJpYWJsZVwiO1xuZXhwb3J0IGNvbnN0IE1FVEFTVEFURU1FTlRfUlVMRV9OQU1FID0gXCJtZXRhc3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgUlVMRV9TVUJQUk9PRl9SVUxFX05BTUUgPSBcInJ1bGVTdWJwcm9vZlwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfQVJHVU1FTlRfUlVMRV9OQU1FID0gXCJtZXRhQXJndW1lbnRcIjtcbmV4cG9ydCBjb25zdCBRVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwicXVhbGlmaWVkU3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgVkFSSUFCTEVfREVDTEFSQVRJT05fUlVMRV9OQU1FID0gXCJ2YXJpYWJsZURlY2xhcmF0aW9uXCI7XG5leHBvcnQgY29uc3QgVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwidW5xdWFsaWZpZWRTdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBDT05TVFJVQ1RPUl9ERUNMQVJBVElPTl9SVUxFX05BTUUgPSBcImNvbnN0cnVjdG9yRGVjbGFyYXRpb25cIjtcbmV4cG9ydCBjb25zdCBRVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgPSBcInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBNRVRBVkFSSUFCTEVfREVDTEFSQVRJT05fUlVMRV9OQU1FID0gXCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvblwiO1xuZXhwb3J0IGNvbnN0IFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FID0gXCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRcIjtcbiJdLCJuYW1lcyI6WyJBUkdVTUVOVF9SVUxFX05BTUUiLCJDT05TVFJVQ1RPUl9ERUNMQVJBVElPTl9SVUxFX05BTUUiLCJMQUJFTF9SVUxFX05BTUUiLCJNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsIk1FVEFWQVJJQUJMRV9ERUNMQVJBVElPTl9SVUxFX05BTUUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwiTUVUQV9BUkdVTUVOVF9SVUxFX05BTUUiLCJNRVRBX1RZUEVfUlVMRV9OQU1FIiwiUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwiUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUiLCJSVUxFX1NVQlBST09GX1JVTEVfTkFNRSIsIlNUQVRFTUVOVF9SVUxFX05BTUUiLCJTVUJQUk9PRl9SVUxFX05BTUUiLCJURVJNX1JVTEVfTkFNRSIsIlRZUEVfUlVMRV9OQU1FIiwiVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiLCJVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FIiwiVkFSSUFCTEVfREVDTEFSQVRJT05fUlVMRV9OQU1FIiwiVkFSSUFCTEVfUlVMRV9OQU1FIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFNYUEsa0JBQWtCO2VBQWxCQTs7SUFXQUMsaUNBQWlDO2VBQWpDQTs7SUFiQUMsZUFBZTtlQUFmQTs7SUFPQUMsdUJBQXVCO2VBQXZCQTs7SUFRQUMsa0NBQWtDO2VBQWxDQTs7SUFUQUMsc0JBQXNCO2VBQXRCQTs7SUFHQUMsdUJBQXVCO2VBQXZCQTs7SUFKQUMsbUJBQW1CO2VBQW5CQTs7SUFTQUMsaUNBQWlDO2VBQWpDQTs7SUFKQUMsNkJBQTZCO2VBQTdCQTs7SUFGQUMsdUJBQXVCO2VBQXZCQTs7SUFKQUMsbUJBQW1CO2VBQW5CQTs7SUFEQUMsa0JBQWtCO2VBQWxCQTs7SUFMQUMsY0FBYztlQUFkQTs7SUFDQUMsY0FBYztlQUFkQTs7SUFpQkFDLG1DQUFtQztlQUFuQ0E7O0lBSkFDLCtCQUErQjtlQUEvQkE7O0lBREFDLDhCQUE4QjtlQUE5QkE7O0lBVkFDLGtCQUFrQjtlQUFsQkE7OztBQUhOLElBQU1MLGlCQUFpQjtBQUN2QixJQUFNQyxpQkFBaUI7QUFDdkIsSUFBTVosa0JBQWtCO0FBQ3hCLElBQU1nQixxQkFBcUI7QUFDM0IsSUFBTWxCLHFCQUFxQjtBQUMzQixJQUFNWSxxQkFBcUI7QUFDM0IsSUFBTUQsc0JBQXNCO0FBQzVCLElBQU1KLHNCQUFzQjtBQUM1QixJQUFNRix5QkFBeUI7QUFDL0IsSUFBTUYsMEJBQTBCO0FBQ2hDLElBQU1PLDBCQUEwQjtBQUNoQyxJQUFNSiwwQkFBMEI7QUFDaEMsSUFBTUcsZ0NBQWdDO0FBQ3RDLElBQU1RLGlDQUFpQztBQUN2QyxJQUFNRCxrQ0FBa0M7QUFDeEMsSUFBTWYsb0NBQW9DO0FBQzFDLElBQU1PLG9DQUFvQztBQUMxQyxJQUFNSixxQ0FBcUM7QUFDM0MsSUFBTVcsc0NBQXNDIn0=
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlTmFtZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBURVJNX1JVTEVfTkFNRSA9IFwidGVybVwiO1xuZXhwb3J0IGNvbnN0IFRZUEVfUlVMRV9OQU1FID0gXCJ0eXBlXCI7XG5leHBvcnQgY29uc3QgTEFCRUxfUlVMRV9OQU1FID0gXCJsYWJlbFwiO1xuZXhwb3J0IGNvbnN0IEFSR1VNRU5UX1JVTEVfTkFNRSA9IFwiYXJndW1lbnRcIjtcbmV4cG9ydCBjb25zdCBTVUJQUk9PRl9SVUxFX05BTUUgPSBcInN1YnByb29mXCI7XG5leHBvcnQgY29uc3QgU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwic3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgTUVUQVZBUklBQkxFX1JVTEVfTkFNRSA9IFwibWV0YXZhcmlhYmxlXCI7XG5leHBvcnQgY29uc3QgTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgPSBcIm1ldGFzdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBSVUxFX1NVQlBST09GX1JVTEVfTkFNRSA9IFwicnVsZVN1YnByb29mXCI7XG5leHBvcnQgY29uc3QgTUVUQV9BUkdVTUVOVF9SVUxFX05BTUUgPSBcIm1ldGFBcmd1bWVudFwiO1xuZXhwb3J0IGNvbnN0IFFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FID0gXCJxdWFsaWZpZWRTdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBWQVJJQUJMRV9ERUNMQVJBVElPTl9SVUxFX05BTUUgPSBcInZhcmlhYmxlRGVjbGFyYXRpb25cIjtcbmV4cG9ydCBjb25zdCBVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FID0gXCJ1bnF1YWxpZmllZFN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IENPTlNUUlVDVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSA9IFwiY29uc3RydWN0b3JEZWNsYXJhdGlvblwiO1xuZXhwb3J0IGNvbnN0IFFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwicXVhbGlmaWVkTWV0YXN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FID0gXCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRcIjtcbiJdLCJuYW1lcyI6WyJBUkdVTUVOVF9SVUxFX05BTUUiLCJDT05TVFJVQ1RPUl9ERUNMQVJBVElPTl9SVUxFX05BTUUiLCJMQUJFTF9SVUxFX05BTUUiLCJNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsIk1FVEFWQVJJQUJMRV9SVUxFX05BTUUiLCJNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRSIsIlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsIlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FIiwiUlVMRV9TVUJQUk9PRl9SVUxFX05BTUUiLCJTVEFURU1FTlRfUlVMRV9OQU1FIiwiU1VCUFJPT0ZfUlVMRV9OQU1FIiwiVEVSTV9SVUxFX05BTUUiLCJUWVBFX1JVTEVfTkFNRSIsIlVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwiVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSIsIlZBUklBQkxFX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBS2FBLGtCQUFrQjtlQUFsQkE7O0lBVUFDLGlDQUFpQztlQUFqQ0E7O0lBWEFDLGVBQWU7ZUFBZkE7O0lBS0FDLHVCQUF1QjtlQUF2QkE7O0lBREFDLHNCQUFzQjtlQUF0QkE7O0lBR0FDLHVCQUF1QjtlQUF2QkE7O0lBS0FDLGlDQUFpQztlQUFqQ0E7O0lBSkFDLDZCQUE2QjtlQUE3QkE7O0lBRkFDLHVCQUF1QjtlQUF2QkE7O0lBSEFDLG1CQUFtQjtlQUFuQkE7O0lBREFDLGtCQUFrQjtlQUFsQkE7O0lBSkFDLGNBQWM7ZUFBZEE7O0lBQ0FDLGNBQWM7ZUFBZEE7O0lBY0FDLG1DQUFtQztlQUFuQ0E7O0lBSEFDLCtCQUErQjtlQUEvQkE7O0lBREFDLDhCQUE4QjtlQUE5QkE7OztBQVhOLElBQU1KLGlCQUFpQjtBQUN2QixJQUFNQyxpQkFBaUI7QUFDdkIsSUFBTVYsa0JBQWtCO0FBQ3hCLElBQU1GLHFCQUFxQjtBQUMzQixJQUFNVSxxQkFBcUI7QUFDM0IsSUFBTUQsc0JBQXNCO0FBQzVCLElBQU1MLHlCQUF5QjtBQUMvQixJQUFNRCwwQkFBMEI7QUFDaEMsSUFBTUssMEJBQTBCO0FBQ2hDLElBQU1ILDBCQUEwQjtBQUNoQyxJQUFNRSxnQ0FBZ0M7QUFDdEMsSUFBTVEsaUNBQWlDO0FBQ3ZDLElBQU1ELGtDQUFrQztBQUN4QyxJQUFNYixvQ0FBb0M7QUFDMUMsSUFBTUssb0NBQW9DO0FBQzFDLElBQU1PLHNDQUFzQyJ9
@@ -9,6 +9,9 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
+ areArraysEqual: function() {
13
+ return areArraysEqual;
14
+ },
12
15
  compress: function() {
13
16
  return compress;
14
17
  },
@@ -95,5 +98,25 @@ function rightDifference(arrayA, arrayB) {
95
98
  }
96
99
  });
97
100
  }
101
+ function areArraysEqual(arrayA, arrayB, callback) {
102
+ if (callback === undefined) {
103
+ callback = function(elementA, elementB) {
104
+ if (elementA === elementB) {
105
+ return true;
106
+ }
107
+ };
108
+ }
109
+ var arraysEqual = false;
110
+ var arrayALength = arrayA.length, arrayBLength = arrayB.length;
111
+ if (arrayALength === arrayBLength) {
112
+ arraysEqual = arrayA.every(function(elementA, index) {
113
+ var elementB = arrayB[index], result = callback(elementA, elementB);
114
+ if (result) {
115
+ return true;
116
+ }
117
+ });
118
+ }
119
+ return arraysEqual;
120
+ }
98
121
 
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvYXJyYXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgcGVybXV0YXRpb25zTWF0cml4IGZyb20gXCIuLi9wZXJtdXRhdGlvbnNNYXRyaXhcIjtcblxuaW1wb3J0IHsgTUFYSU1VTV9JTkRFWEVTX0xFTkdUSCwgTUFYSU1VTV9QRVJNVVRBVElPTl9MRU5HVEggfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBjb25zdCB7IGZpcnN0LCBzZWNvbmQsIGxhc3QsIHB1c2gsIHBydW5lLCBmaWx0ZXIsIGNvbXByZXNzIH0gPSBhcnJheVV0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIHNvbWVTdWJBcnJheShhcnJheSwgc3ViQXJyYXlMZW5ndGgsIGNhbGxiYWNrKSB7XG4gIGxldCBmb3VuZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGFycmF5TGVuZ3RoID0gYXJyYXkubGVuZ3RoLFxuICAgICAgICBpbmRleGVzTGVuZ3RoID0gYXJyYXlMZW5ndGgsIC8vL1xuICAgICAgICBwZXJtdXRhdGlvbkxlbmd0aCA9IHN1YkFycmF5TGVuZ3RoOyAvLy9cblxuICBpZiAocGVybXV0YXRpb25MZW5ndGggPD0gTUFYSU1VTV9QRVJNVVRBVElPTl9MRU5HVEgpIHtcbiAgICBsZXQgb2Zmc2V0LFxuICAgICAgICBwZXJtdXRhdGlvbnM7XG5cbiAgICBpZiAoaW5kZXhlc0xlbmd0aCA+IE1BWElNVU1fSU5ERVhFU19MRU5HVEgpIHtcbiAgICAgIG9mZnNldCA9IGluZGV4ZXNMZW5ndGggLSBNQVhJTVVNX0lOREVYRVNfTEVOR1RIO1xuXG4gICAgICBwZXJtdXRhdGlvbnMgPSBwZXJtdXRhdGlvbnNNYXRyaXhbTUFYSU1VTV9JTkRFWEVTX0xFTkdUSF1bcGVybXV0YXRpb25MZW5ndGhdO1xuICAgIH0gZWxzZSB7XG4gICAgICBvZmZzZXQgPSAwO1xuXG4gICAgICBwZXJtdXRhdGlvbnMgPSBwZXJtdXRhdGlvbnNNYXRyaXhbaW5kZXhlc0xlbmd0aF1bcGVybXV0YXRpb25MZW5ndGhdO1xuICAgIH1cblxuICAgIGlmIChwZXJtdXRhdGlvbnMgIT09IG51bGwpIHtcbiAgICAgIGZvdW5kID0gcGVybXV0YXRpb25zLnNvbWUoKHBlcm11dGF0aW9uKSA9PiB7XG4gICAgICAgIGlmIChwZXJtdXRhdGlvbiAhPT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IHN1YkFycmF5ID0gW107XG5cbiAgICAgICAgICBmb3IgKGxldCBwb3NpdGlvbiA9IDA7IHBvc2l0aW9uIDwgcGVybXV0YXRpb25MZW5ndGg7IHBvc2l0aW9uKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gcGVybXV0YXRpb25bcG9zaXRpb25dICsgb2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgZWxlbWVudCA9IGFycmF5W2luZGV4XTtcblxuICAgICAgICAgICAgc3ViQXJyYXkucHVzaChlbGVtZW50KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBwYXNzZWQgPSBjYWxsYmFjayhzdWJBcnJheSk7XG5cbiAgICAgICAgICBpZiAocGFzc2VkKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmb3VuZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxlZnREaWZmZXJlbmNlKGFycmF5QSwgYXJyYXlCKSB7XG4gIGZpbHRlcihhcnJheUEsIChlbGVtZW50QSkgPT4ge1xuICAgIGNvbnN0IGFycmF5QkluY2x1ZGVzRWxlbWVudEEgPSBhcnJheUIuaW5jbHVkZXMoZWxlbWVudEEpO1xuXG4gICAgaWYgKCFhcnJheUJJbmNsdWRlc0VsZW1lbnRBKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmlnaHREaWZmZXJlbmNlKGFycmF5QSwgYXJyYXlCKSB7XG4gIGZpbHRlcihhcnJheUIsIChlbGVtZW50QikgPT4ge1xuICAgIGNvbnN0IGFycmF5QUluY2x1ZGVzRWxlbWVudEIgPSBhcnJheUEuaW5jbHVkZXMoZWxlbWVudEIpO1xuXG4gICAgaWYgKCFhcnJheUFJbmNsdWRlc0VsZW1lbnRCKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xufVxuIl0sIm5hbWVzIjpbImNvbXByZXNzIiwiZmlsdGVyIiwiZmlyc3QiLCJsYXN0IiwibGVmdERpZmZlcmVuY2UiLCJwcnVuZSIsInB1c2giLCJyaWdodERpZmZlcmVuY2UiLCJzZWNvbmQiLCJzb21lU3ViQXJyYXkiLCJhcnJheVV0aWxpdGllcyIsImFycmF5Iiwic3ViQXJyYXlMZW5ndGgiLCJjYWxsYmFjayIsImZvdW5kIiwiYXJyYXlMZW5ndGgiLCJsZW5ndGgiLCJpbmRleGVzTGVuZ3RoIiwicGVybXV0YXRpb25MZW5ndGgiLCJNQVhJTVVNX1BFUk1VVEFUSU9OX0xFTkdUSCIsIm9mZnNldCIsInBlcm11dGF0aW9ucyIsIk1BWElNVU1fSU5ERVhFU19MRU5HVEgiLCJwZXJtdXRhdGlvbnNNYXRyaXgiLCJzb21lIiwicGVybXV0YXRpb24iLCJzdWJBcnJheSIsInBvc2l0aW9uIiwiaW5kZXgiLCJlbGVtZW50IiwicGFzc2VkIiwiYXJyYXlBIiwiYXJyYXlCIiwiZWxlbWVudEEiLCJhcnJheUJJbmNsdWRlc0VsZW1lbnRBIiwiaW5jbHVkZXMiLCJlbGVtZW50QiIsImFycmF5QUluY2x1ZGVzRWxlbWVudEIiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQVF5REEsUUFBUTtlQUFSQTs7SUFBUkMsTUFBTTtlQUFOQTs7SUFBbENDLEtBQUs7ZUFBTEE7O0lBQWVDLElBQUk7ZUFBSkE7O0lBZ0RkQyxjQUFjO2VBQWRBOztJQWhEMEJDLEtBQUs7ZUFBTEE7O0lBQU5DLElBQUk7ZUFBSkE7O0lBMERwQkMsZUFBZTtlQUFmQTs7SUExRE1DLE1BQU07ZUFBTkE7O0lBRU5DLFlBQVk7ZUFBWkE7Ozt5QkFSZTt5RUFFQTt5QkFFb0M7Ozs7OztBQUU1RCxJQUFRUCxRQUF1RFEseUJBQWMsQ0FBckVSLE9BQU9NLFNBQWdERSx5QkFBYyxDQUE5REYsUUFBUUwsT0FBd0NPLHlCQUFjLENBQXREUCxNQUFNRyxPQUFrQ0kseUJBQWMsQ0FBaERKLE1BQU1ELFFBQTRCSyx5QkFBYyxDQUExQ0wsT0FBT0osU0FBcUJTLHlCQUFjLENBQW5DVCxRQUFRRCxXQUFhVSx5QkFBYyxDQUEzQlY7QUFFbEQsU0FBU1MsYUFBYUUsS0FBSyxFQUFFQyxjQUFjLEVBQUVDLFFBQVE7SUFDMUQsSUFBSUMsUUFBUTtJQUVaLElBQU1DLGNBQWNKLE1BQU1LLE1BQU0sRUFDMUJDLGdCQUFnQkYsYUFDaEJHLG9CQUFvQk4sZ0JBQWdCLEdBQUc7SUFFN0MsSUFBSU0scUJBQXFCQyxxQ0FBMEIsRUFBRTtRQUNuRCxJQUFJQyxRQUNBQztRQUVKLElBQUlKLGdCQUFnQkssaUNBQXNCLEVBQUU7WUFDMUNGLFNBQVNILGdCQUFnQkssaUNBQXNCO1lBRS9DRCxlQUFlRSwyQkFBa0IsQ0FBQ0QsaUNBQXNCLENBQUMsQ0FBQ0osa0JBQWtCO1FBQzlFLE9BQU87WUFDTEUsU0FBUztZQUVUQyxlQUFlRSwyQkFBa0IsQ0FBQ04sY0FBYyxDQUFDQyxrQkFBa0I7UUFDckU7UUFFQSxJQUFJRyxpQkFBaUIsTUFBTTtZQUN6QlAsUUFBUU8sYUFBYUcsSUFBSSxDQUFDLFNBQUNDO2dCQUN6QixJQUFJQSxnQkFBZ0IsTUFBTTtvQkFDeEIsSUFBTUMsV0FBVyxFQUFFO29CQUVuQixJQUFLLElBQUlDLFdBQVcsR0FBR0EsV0FBV1QsbUJBQW1CUyxXQUFZO3dCQUMvRCxJQUFNQyxRQUFRSCxXQUFXLENBQUNFLFNBQVMsR0FBR1AsUUFDaENTLFVBQVVsQixLQUFLLENBQUNpQixNQUFNO3dCQUU1QkYsU0FBU3BCLElBQUksQ0FBQ3VCO29CQUNoQjtvQkFFQSxJQUFNQyxTQUFTakIsU0FBU2E7b0JBRXhCLElBQUlJLFFBQVE7d0JBQ1YsT0FBTztvQkFDVDtnQkFDRjtZQUNGO1FBQ0Y7SUFDRjtJQUVBLE9BQU9oQjtBQUNUO0FBRU8sU0FBU1YsZUFBZTJCLE1BQU0sRUFBRUMsTUFBTTtJQUMzQy9CLE9BQU84QixRQUFRLFNBQUNFO1FBQ2QsSUFBTUMseUJBQXlCRixPQUFPRyxRQUFRLENBQUNGO1FBRS9DLElBQUksQ0FBQ0Msd0JBQXdCO1lBQzNCLE9BQU87UUFDVDtJQUNGO0FBQ0Y7QUFFTyxTQUFTM0IsZ0JBQWdCd0IsTUFBTSxFQUFFQyxNQUFNO0lBQzVDL0IsT0FBTytCLFFBQVEsU0FBQ0k7UUFDZCxJQUFNQyx5QkFBeUJOLE9BQU9JLFFBQVEsQ0FBQ0M7UUFFL0MsSUFBSSxDQUFDQyx3QkFBd0I7WUFDM0IsT0FBTztRQUNUO0lBQ0Y7QUFDRiJ9
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvYXJyYXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgcGVybXV0YXRpb25zTWF0cml4IGZyb20gXCIuLi9wZXJtdXRhdGlvbnNNYXRyaXhcIjtcblxuaW1wb3J0IHsgTUFYSU1VTV9JTkRFWEVTX0xFTkdUSCwgTUFYSU1VTV9QRVJNVVRBVElPTl9MRU5HVEggfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBjb25zdCB7IGZpcnN0LCBzZWNvbmQsIGxhc3QsIHB1c2gsIHBydW5lLCBmaWx0ZXIsIGNvbXByZXNzIH0gPSBhcnJheVV0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIHNvbWVTdWJBcnJheShhcnJheSwgc3ViQXJyYXlMZW5ndGgsIGNhbGxiYWNrKSB7XG4gIGxldCBmb3VuZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGFycmF5TGVuZ3RoID0gYXJyYXkubGVuZ3RoLFxuICAgICAgICBpbmRleGVzTGVuZ3RoID0gYXJyYXlMZW5ndGgsIC8vL1xuICAgICAgICBwZXJtdXRhdGlvbkxlbmd0aCA9IHN1YkFycmF5TGVuZ3RoOyAvLy9cblxuICBpZiAocGVybXV0YXRpb25MZW5ndGggPD0gTUFYSU1VTV9QRVJNVVRBVElPTl9MRU5HVEgpIHtcbiAgICBsZXQgb2Zmc2V0LFxuICAgICAgICBwZXJtdXRhdGlvbnM7XG5cbiAgICBpZiAoaW5kZXhlc0xlbmd0aCA+IE1BWElNVU1fSU5ERVhFU19MRU5HVEgpIHtcbiAgICAgIG9mZnNldCA9IGluZGV4ZXNMZW5ndGggLSBNQVhJTVVNX0lOREVYRVNfTEVOR1RIO1xuXG4gICAgICBwZXJtdXRhdGlvbnMgPSBwZXJtdXRhdGlvbnNNYXRyaXhbTUFYSU1VTV9JTkRFWEVTX0xFTkdUSF1bcGVybXV0YXRpb25MZW5ndGhdO1xuICAgIH0gZWxzZSB7XG4gICAgICBvZmZzZXQgPSAwO1xuXG4gICAgICBwZXJtdXRhdGlvbnMgPSBwZXJtdXRhdGlvbnNNYXRyaXhbaW5kZXhlc0xlbmd0aF1bcGVybXV0YXRpb25MZW5ndGhdO1xuICAgIH1cblxuICAgIGlmIChwZXJtdXRhdGlvbnMgIT09IG51bGwpIHtcbiAgICAgIGZvdW5kID0gcGVybXV0YXRpb25zLnNvbWUoKHBlcm11dGF0aW9uKSA9PiB7XG4gICAgICAgIGlmIChwZXJtdXRhdGlvbiAhPT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IHN1YkFycmF5ID0gW107XG5cbiAgICAgICAgICBmb3IgKGxldCBwb3NpdGlvbiA9IDA7IHBvc2l0aW9uIDwgcGVybXV0YXRpb25MZW5ndGg7IHBvc2l0aW9uKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gcGVybXV0YXRpb25bcG9zaXRpb25dICsgb2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgZWxlbWVudCA9IGFycmF5W2luZGV4XTtcblxuICAgICAgICAgICAgc3ViQXJyYXkucHVzaChlbGVtZW50KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBwYXNzZWQgPSBjYWxsYmFjayhzdWJBcnJheSk7XG5cbiAgICAgICAgICBpZiAocGFzc2VkKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmb3VuZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxlZnREaWZmZXJlbmNlKGFycmF5QSwgYXJyYXlCKSB7XG4gIGZpbHRlcihhcnJheUEsIChlbGVtZW50QSkgPT4ge1xuICAgIGNvbnN0IGFycmF5QkluY2x1ZGVzRWxlbWVudEEgPSBhcnJheUIuaW5jbHVkZXMoZWxlbWVudEEpO1xuXG4gICAgaWYgKCFhcnJheUJJbmNsdWRlc0VsZW1lbnRBKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmlnaHREaWZmZXJlbmNlKGFycmF5QSwgYXJyYXlCKSB7XG4gIGZpbHRlcihhcnJheUIsIChlbGVtZW50QikgPT4ge1xuICAgIGNvbnN0IGFycmF5QUluY2x1ZGVzRWxlbWVudEIgPSBhcnJheUEuaW5jbHVkZXMoZWxlbWVudEIpO1xuXG4gICAgaWYgKCFhcnJheUFJbmNsdWRlc0VsZW1lbnRCKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXJlQXJyYXlzRXF1YWwoYXJyYXlBLCBhcnJheUIsIGNhbGxiYWNrKSB7XG4gIGlmIChjYWxsYmFjayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY2FsbGJhY2sgPSAoZWxlbWVudEEsIGVsZW1lbnRCKSA9PiB7XG4gICAgICBpZiAoZWxlbWVudEEgPT09IGVsZW1lbnRCKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBsZXQgYXJyYXlzRXF1YWwgPSBmYWxzZTtcblxuICBjb25zdCBhcnJheUFMZW5ndGggPSBhcnJheUEubGVuZ3RoLFxuICAgICAgICBhcnJheUJMZW5ndGggPSBhcnJheUIubGVuZ3RoO1xuXG4gIGlmIChhcnJheUFMZW5ndGggPT09IGFycmF5Qkxlbmd0aCkge1xuICAgIGFycmF5c0VxdWFsID0gYXJyYXlBLmV2ZXJ5KChlbGVtZW50QSwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IGVsZW1lbnRCID0gYXJyYXlCW2luZGV4XSxcbiAgICAgICAgICAgIHJlc3VsdCA9IGNhbGxiYWNrKGVsZW1lbnRBLCBlbGVtZW50Qik7XG5cbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBhcnJheXNFcXVhbDtcbn1cbiJdLCJuYW1lcyI6WyJhcmVBcnJheXNFcXVhbCIsImNvbXByZXNzIiwiZmlsdGVyIiwiZmlyc3QiLCJsYXN0IiwibGVmdERpZmZlcmVuY2UiLCJwcnVuZSIsInB1c2giLCJyaWdodERpZmZlcmVuY2UiLCJzZWNvbmQiLCJzb21lU3ViQXJyYXkiLCJhcnJheVV0aWxpdGllcyIsImFycmF5Iiwic3ViQXJyYXlMZW5ndGgiLCJjYWxsYmFjayIsImZvdW5kIiwiYXJyYXlMZW5ndGgiLCJsZW5ndGgiLCJpbmRleGVzTGVuZ3RoIiwicGVybXV0YXRpb25MZW5ndGgiLCJNQVhJTVVNX1BFUk1VVEFUSU9OX0xFTkdUSCIsIm9mZnNldCIsInBlcm11dGF0aW9ucyIsIk1BWElNVU1fSU5ERVhFU19MRU5HVEgiLCJwZXJtdXRhdGlvbnNNYXRyaXgiLCJzb21lIiwicGVybXV0YXRpb24iLCJzdWJBcnJheSIsInBvc2l0aW9uIiwiaW5kZXgiLCJlbGVtZW50IiwicGFzc2VkIiwiYXJyYXlBIiwiYXJyYXlCIiwiZWxlbWVudEEiLCJhcnJheUJJbmNsdWRlc0VsZW1lbnRBIiwiaW5jbHVkZXMiLCJlbGVtZW50QiIsImFycmF5QUluY2x1ZGVzRWxlbWVudEIiLCJ1bmRlZmluZWQiLCJhcnJheXNFcXVhbCIsImFycmF5QUxlbmd0aCIsImFycmF5Qkxlbmd0aCIsImV2ZXJ5IiwicmVzdWx0Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUE0RWdCQSxjQUFjO2VBQWRBOztJQXBFeUNDLFFBQVE7ZUFBUkE7O0lBQVJDLE1BQU07ZUFBTkE7O0lBQWxDQyxLQUFLO2VBQUxBOztJQUFlQyxJQUFJO2VBQUpBOztJQWdEZEMsY0FBYztlQUFkQTs7SUFoRDBCQyxLQUFLO2VBQUxBOztJQUFOQyxJQUFJO2VBQUpBOztJQTBEcEJDLGVBQWU7ZUFBZkE7O0lBMURNQyxNQUFNO2VBQU5BOztJQUVOQyxZQUFZO2VBQVpBOzs7eUJBUmU7eUVBRUE7eUJBRW9DOzs7Ozs7QUFFNUQsSUFBUVAsUUFBdURRLHlCQUFjLENBQXJFUixPQUFPTSxTQUFnREUseUJBQWMsQ0FBOURGLFFBQVFMLE9BQXdDTyx5QkFBYyxDQUF0RFAsTUFBTUcsT0FBa0NJLHlCQUFjLENB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
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ areTerminalNodeMapsEqual: function() {
13
+ return areTerminalNodeMapsEqual;
14
+ },
15
+ terminalNodeMapFromNodes: function() {
16
+ return terminalNodeMapFromNodes;
17
+ }
18
+ });
19
+ var _array = require("../utilities/array");
20
+ function terminalNodeMapFromNodes(nodes) {
21
+ var terminalNodeMap = {};
22
+ nodes.forEach(function(node, index) {
23
+ var nodeTerminalNode = node.isTerminalNode();
24
+ if (nodeTerminalNode) {
25
+ var terminalNode = node; //
26
+ terminalNodeMap[index] = terminalNode;
27
+ }
28
+ });
29
+ return terminalNodeMap;
30
+ }
31
+ function areTerminalNodeMapsEqual(terminalNodeMapA, terminalNodeMapB) {
32
+ var terminalNodeMapsEqual = false;
33
+ var indexesA = Object.keys(terminalNodeMapA), indexesB = Object.keys(terminalNodeMapB), terminalNodeMapKeysEqual = (0, _array.areArraysEqual)(indexesA, indexesB);
34
+ if (terminalNodeMapKeysEqual) {
35
+ var terminalNodesA = Object.keys(terminalNodeMapA), terminalNodesB = Object.keys(terminalNodeMapB), terminalNodeMapValuesEqual = (0, _array.areArraysEqual)(terminalNodesA, terminalNodesB, function(terminalNodeA, terminalNodeB) {
36
+ var matches = terminalNodeA.match(terminalNodeB);
37
+ if (matches) {
38
+ return true;
39
+ }
40
+ });
41
+ terminalNodeMapsEqual = terminalNodeMapValuesEqual; ///
42
+ }
43
+ return terminalNodeMapsEqual;
44
+ }
45
+
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdGVybWluYWxOb2Rlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYXJlQXJyYXlzRXF1YWwgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiB0ZXJtaW5hbE5vZGVNYXBGcm9tTm9kZXMobm9kZXMpIHtcbiAgY29uc3QgdGVybWluYWxOb2RlTWFwID0ge307XG5cbiAgbm9kZXMuZm9yRWFjaCgobm9kZSwgaW5kZXgpID0+IHtcbiAgICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpO1xuXG4gICAgaWYgKG5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IG5vZGU7ICAvL1xuXG4gICAgICB0ZXJtaW5hbE5vZGVNYXBbaW5kZXhdID0gdGVybWluYWxOb2RlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHRlcm1pbmFsTm9kZU1hcDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFyZVRlcm1pbmFsTm9kZU1hcHNFcXVhbCh0ZXJtaW5hbE5vZGVNYXBBLCB0ZXJtaW5hbE5vZGVNYXBCKSB7XG4gIGxldCB0ZXJtaW5hbE5vZGVNYXBzRXF1YWwgPSBmYWxzZTtcblxuICBjb25zdCBpbmRleGVzQSA9IE9iamVjdC5rZXlzKHRlcm1pbmFsTm9kZU1hcEEpLCAvLy9cbiAgICAgICAgaW5kZXhlc0IgPSBPYmplY3Qua2V5cyh0ZXJtaW5hbE5vZGVNYXBCKSwgLy8vXG4gICAgICAgIHRlcm1pbmFsTm9kZU1hcEtleXNFcXVhbCA9IGFyZUFycmF5c0VxdWFsKGluZGV4ZXNBLCBpbmRleGVzQik7XG5cbiAgaWYgKHRlcm1pbmFsTm9kZU1hcEtleXNFcXVhbCkge1xuICAgIGNvbnN0IHRlcm1pbmFsTm9kZXNBID0gT2JqZWN0LmtleXModGVybWluYWxOb2RlTWFwQSksIC8vL1xuICAgICAgICAgIHRlcm1pbmFsTm9kZXNCID0gT2JqZWN0LmtleXModGVybWluYWxOb2RlTWFwQiksIC8vL1xuICAgICAgICAgIHRlcm1pbmFsTm9kZU1hcFZhbHVlc0VxdWFsID0gYXJlQXJyYXlzRXF1YWwodGVybWluYWxOb2Rlc0EsIHRlcm1pbmFsTm9kZXNCLCAodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQikgPT4ge1xuICAgICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IHRlcm1pbmFsTm9kZUEubWF0Y2godGVybWluYWxOb2RlQik7XG5cbiAgICAgICAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgdGVybWluYWxOb2RlTWFwc0VxdWFsID0gdGVybWluYWxOb2RlTWFwVmFsdWVzRXF1YWw7IC8vL1xuICB9XG5cbiAgcmV0dXJuIHRlcm1pbmFsTm9kZU1hcHNFcXVhbDtcbn1cbiJdLCJuYW1lcyI6WyJhcmVUZXJtaW5hbE5vZGVNYXBzRXF1YWwiLCJ0ZXJtaW5hbE5vZGVNYXBGcm9tTm9kZXMiLCJub2RlcyIsInRlcm1pbmFsTm9kZU1hcCIsImZvckVhY2giLCJub2RlIiwiaW5kZXgiLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGVNYXBBIiwidGVybWluYWxOb2RlTWFwQiIsInRlcm1pbmFsTm9kZU1hcHNFcXVhbCIsImluZGV4ZXNBIiwiT2JqZWN0Iiwia2V5cyIsImluZGV4ZXNCIiwidGVybWluYWxOb2RlTWFwS2V5c0VxdWFsIiwiYXJlQXJyYXlzRXF1YWwiLCJ0ZXJtaW5hbE5vZGVzQSIsInRlcm1pbmFsTm9kZXNCIiwidGVybWluYWxOb2RlTWFwVmFsdWVzRXF1YWwiLCJ0ZXJtaW5hbE5vZGVBIiwidGVybWluYWxOb2RlQiIsIm1hdGNoZXMiLCJtYXRjaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBb0JnQkEsd0JBQXdCO2VBQXhCQTs7SUFoQkFDLHdCQUF3QjtlQUF4QkE7OztxQkFGZTtBQUV4QixTQUFTQSx5QkFBeUJDLEtBQUs7SUFDNUMsSUFBTUMsa0JBQWtCLENBQUM7SUFFekJELE1BQU1FLE9BQU8sQ0FBQyxTQUFDQyxNQUFNQztRQUNuQixJQUFNQyxtQkFBbUJGLEtBQUtHLGNBQWM7UUFFNUMsSUFBSUQsa0JBQWtCO1lBQ3BCLElBQU1FLGVBQWVKLE1BQU8sRUFBRTtZQUU5QkYsZUFBZSxDQUFDRyxNQUFNLEdBQUdHO1FBQzNCO0lBQ0Y7SUFFQSxPQUFPTjtBQUNUO0FBRU8sU0FBU0gseUJBQXlCVSxnQkFBZ0IsRUFBRUMsZ0JBQWdCO0lBQ3pFLElBQUlDLHdCQUF3QjtJQUU1QixJQUFNQyxXQUFXQyxPQUFPQyxJQUFJLENBQUNMLG1CQUN2Qk0sV0FBV0YsT0FBT0MsSUFBSSxDQUFDSixtQkFDdkJNLDJCQUEyQkMsSUFBQUEscUJBQWMsRUFBQ0wsVUFBVUc7SUFFMUQsSUFBSUMsMEJBQTBCO1FBQzVCLElBQU1FLGlCQUFpQkwsT0FBT0MsSUFBSSxDQUFDTCxtQkFDN0JVLGlCQUFpQk4sT0FBT0MsSUFBSSxDQUFDSixtQkFDN0JVLDZCQUE2QkgsSUFBQUEscUJBQWMsRUFBQ0MsZ0JBQWdCQyxnQkFBZ0IsU0FBQ0UsZUFBZUM7WUFDMUYsSUFBTUMsVUFBVUYsY0FBY0csS0FBSyxDQUFDRjtZQUVwQyxJQUFJQyxTQUFTO2dCQUNYLE9BQU87WUFDVDtRQUNGO1FBRU5aLHdCQUF3QlMsNEJBQTRCLEdBQUc7SUFDekQ7SUFFQSxPQUFPVDtBQUNUIn0=
@@ -94,6 +94,32 @@ var NodeVerifier = /*#__PURE__*/ function() {
94
94
  return childNodesVerify;
95
95
  }
96
96
  },
97
+ {
98
+ key: "verifyTerminalNode",
99
+ value: function verifyTerminalNode(terminalNode) {
100
+ for(var _len = arguments.length, remainingArguments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
101
+ remainingArguments[_key - 1] = arguments[_key];
102
+ }
103
+ var terminalNodeVerified;
104
+ var verifyAhead = remainingArguments.pop(), verifiedAhead = verifyAhead(); ///
105
+ terminalNodeVerified = verifiedAhead; ///
106
+ return terminalNodeVerified;
107
+ }
108
+ },
109
+ {
110
+ key: "verifyNonTerminalNode",
111
+ value: function verifyNonTerminalNode(nonTerminalNode) {
112
+ for(var _len = arguments.length, remainingArguments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
113
+ remainingArguments[_key - 1] = arguments[_key];
114
+ }
115
+ var nonTerminalNodeVerified;
116
+ var childNodes = nonTerminalNode.getChildNodes(), childNodesVerify = this.verifyChildNodes.apply(this, [
117
+ childNodes
118
+ ].concat(_to_consumable_array(remainingArguments)));
119
+ nonTerminalNodeVerified = childNodesVerify; ///
120
+ return nonTerminalNodeVerified;
121
+ }
122
+ },
97
123
  {
98
124
  key: "verifyChildNodesAhead",
99
125
  value: function verifyChildNodesAhead(index, childNodes) {
@@ -111,10 +137,9 @@ var NodeVerifier = /*#__PURE__*/ function() {
111
137
  node
112
138
  ].concat(_to_consumable_array(remainingArguments), [
113
139
  function() {
114
- index++;
115
140
  remainingArguments.push(verifyAhead);
116
- var childNodesVerifyAhead = _this.verifyChildNodesAhead.apply(_this, [
117
- index,
141
+ var aheadIndex = index + 1, childNodesVerifyAhead = _this.verifyChildNodesAhead.apply(_this, [
142
+ aheadIndex,
118
143
  childNodes
119
144
  ].concat(_to_consumable_array(remainingArguments)));
120
145
  return childNodesVerifyAhead;
@@ -124,35 +149,9 @@ var NodeVerifier = /*#__PURE__*/ function() {
124
149
  }
125
150
  return childNodesVerify;
126
151
  }
127
- },
128
- {
129
- key: "verifyTerminalNode",
130
- value: function verifyTerminalNode(terminalNode) {
131
- for(var _len = arguments.length, remainingArguments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
132
- remainingArguments[_key - 1] = arguments[_key];
133
- }
134
- var terminalNodeVerified;
135
- var verifyAhead = remainingArguments.pop(), verifiedAhead = verifyAhead(); ///
136
- terminalNodeVerified = verifiedAhead; ///
137
- return terminalNodeVerified;
138
- }
139
- },
140
- {
141
- key: "verifyNonTerminalNode",
142
- value: function verifyNonTerminalNode(nonTerminalNode) {
143
- for(var _len = arguments.length, remainingArguments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
144
- remainingArguments[_key - 1] = arguments[_key];
145
- }
146
- var nonTerminalNodeVerified;
147
- var childNodes = nonTerminalNode.getChildNodes(), childNodesVerify = this.verifyChildNodes.apply(this, [
148
- childNodes
149
- ].concat(_to_consumable_array(remainingArguments)));
150
- nonTerminalNodeVerified = childNodesVerify; ///
151
- return nonTerminalNodeVerified;
152
- }
153
152
  }
154
153
  ]);
155
154
  return NodeVerifier;
156
155
  }();
157
156
 
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci9ub2RlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOb2RlVmVyaWZpZXIge1xuICB2ZXJpZnlOb2RlKG5vZGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBub2RlVmVyaWZpZWQ7XG5cbiAgICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpO1xuXG4gICAgaWYgKG5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICAgIHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICBub2RlVmVyaWZpZWQgPSB0ZXJtaW5hbE5vZGVWZXJpZmllZDsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgbm9kZVZlcmlmaWVkID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBub2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBjaGlsZE5vZGVzVmVyaWZ5O1xuXG4gICAgY29uc3QgaW5kZXggPSAwLFxuICAgICAgICAgIGNoaWxkTm9kZXNWZXJpZnlBaGVhZCA9IHRoaXMudmVyaWZ5Q2hpbGROb2Rlc0FoZWFkKGluZGV4LCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgY2hpbGROb2Rlc1ZlcmlmeSA9IGNoaWxkTm9kZXNWZXJpZnlBaGVhZDsgLy8vXG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1ZlcmlmeTtcbiAgfVxuXG4gIHZlcmlmeUNoaWxkTm9kZXNBaGVhZChpbmRleCwgY2hpbGROb2RlcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IGNoaWxkTm9kZXNWZXJpZnk7XG5cbiAgICBjb25zdCB2ZXJpZnlBaGVhZCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSwgLy8vXG4gICAgICAgICAgY2hpbGROb2Rlc0xlbmd0aCA9IGNoaWxkTm9kZXMubGVuZ3RoO1xuXG4gICAgaWYgKGluZGV4ID09PSBjaGlsZE5vZGVzTGVuZ3RoKSB7XG4gICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgY2hpbGROb2Rlc1ZlcmlmeSA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGUgPSBjaGlsZE5vZGVzW2luZGV4XSxcbiAgICAgICAgICAgIG5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgICAgbm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlOb2RlKG5vZGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgKCkgPT4ge1xuICAgICAgICAgICAgICBpbmRleCsrO1xuXG4gICAgICAgICAgICAgIHJlbWFpbmluZ0FyZ3VtZW50cy5wdXNoKHZlcmlmeUFoZWFkKTtcblxuICAgICAgICAgICAgICBjb25zdCBjaGlsZE5vZGVzVmVyaWZ5QWhlYWQgPSB0aGlzLnZlcmlmeUNoaWxkTm9kZXNBaGVhZChpbmRleCwgY2hpbGROb2RlcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgICAgICAgICByZXR1cm4gY2hpbGROb2Rlc1ZlcmlmeUFoZWFkO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgIGNoaWxkTm9kZXNWZXJpZnkgPSBub2RlVmVyaWZpZWQ7ICAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1ZlcmlmeTtcbiAgfVxuXG4gIHZlcmlmeVRlcm1pbmFsTm9kZSh0ZXJtaW5hbE5vZGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCB0ZXJtaW5hbE5vZGVWZXJpZmllZDtcblxuICAgIGNvbnN0IHZlcmlmeUFoZWFkID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpLCAvLy9cbiAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTsgIC8vL1xuXG4gICAgdGVybWluYWxOb2RlVmVyaWZpZWQgPSB2ZXJpZmllZEFoZWFkOyAvLy9cblxuICAgIHJldHVybiB0ZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcblxuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLCAvLy9cbiAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZ5ID0gdGhpcy52ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGNoaWxkTm9kZXNWZXJpZnk7IC8vL1xuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG4iXSwibmFtZXMiOlsiTm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9kZSIsIm5vZGUiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJub2RlVmVyaWZpZWQiLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGVWZXJpZmllZCIsInZlcmlmeVRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwidmVyaWZ5Q2hpbGROb2RlcyIsImNoaWxkTm9kZXMiLCJjaGlsZE5vZGVzVmVyaWZ5IiwiaW5kZXgiLCJjaGlsZE5vZGVzVmVyaWZ5QWhlYWQiLCJ2ZXJpZnlDaGlsZE5vZGVzQWhlYWQiLCJ2ZXJpZnlBaGVhZCIsInBvcCIsImNoaWxkTm9kZXNMZW5ndGgiLCJsZW5ndGgiLCJ2ZXJpZmllZEFoZWFkIiwiY2hpbGROb2RlIiwicHVzaCIsImdldENoaWxkTm9kZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBRXFCQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDZCQUFELEFBQUw7YUFBTUE7Z0NBQUFBOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUEsV0FBV0MsSUFBSTtnQkFBRSxJQUFBLElBQUEsT0FBQSxVQUFBLFFBQUEsQUFBR0MscUJBQUgsVUFBQSxPQUFBLElBQUEsT0FBQSxRQUFBLE9BQUEsR0FBQSxPQUFBLE1BQUE7b0JBQUdBLG1CQUFILE9BQUEsS0FBQSxTQUFBLENBQUEsS0FBcUI7O2dCQUNwQyxJQUFJQztnQkFFSixJQUFNQyxtQkFBbUJILEtBQUtJLGNBQWM7Z0JBRTVDLElBQUlELGtCQUFrQjtvQkFDcEIsSUFBTUUsZUFBZUwsTUFDZk0sdUJBQXVCLElBQUksQ0FBQ0Msa0JBQWtCLENBQXZCLE1BQUEsSUFBSSxFQUFKO3dCQUF3QkY7cUJBQW9DLENBQTVELE9BQXNDLHFCQUFHSjtvQkFFdEVDLGVBQWVJLHNCQUF1QixHQUFHO2dCQUMzQyxPQUFPO29CQUNMLElBQU1FLGtCQUFrQlIsTUFDbEJTLDBCQUEwQixJQUFJLENBQUNDLHFCQUFxQixDQUExQixNQUFBLElBQUksRUFBSjt3QkFBMkJGO3FCQUF1QyxDQUFsRSxPQUE0QyxxQkFBR1A7b0JBRS9F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
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci9ub2RlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOb2RlVmVyaWZpZXIge1xuICB2ZXJpZnlOb2RlKG5vZGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBub2RlVmVyaWZpZWQ7XG5cbiAgICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpO1xuXG4gICAgaWYgKG5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICAgIHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICBub2RlVmVyaWZpZWQgPSB0ZXJtaW5hbE5vZGVWZXJpZmllZDsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgbm9kZVZlcmlmaWVkID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBub2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBjaGlsZE5vZGVzVmVyaWZ5O1xuXG4gICAgY29uc3QgaW5kZXggPSAwLFxuICAgICAgICAgIGNoaWxkTm9kZXNWZXJpZnlBaGVhZCA9IHRoaXMudmVyaWZ5Q2hpbGROb2Rlc0FoZWFkKGluZGV4LCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgY2hpbGROb2Rlc1ZlcmlmeSA9IGNoaWxkTm9kZXNWZXJpZnlBaGVhZDsgLy8vXG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1ZlcmlmeTtcbiAgfVxuXG4gIHZlcmlmeVRlcm1pbmFsTm9kZSh0ZXJtaW5hbE5vZGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCB0ZXJtaW5hbE5vZGVWZXJpZmllZDtcblxuICAgIGNvbnN0IHZlcmlmeUFoZWFkID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpLCAvLy9cbiAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTsgIC8vL1xuXG4gICAgdGVybWluYWxOb2RlVmVyaWZpZWQgPSB2ZXJpZmllZEFoZWFkOyAvLy9cblxuICAgIHJldHVybiB0ZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcblxuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLCAvLy9cbiAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZ5ID0gdGhpcy52ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGNoaWxkTm9kZXNWZXJpZnk7IC8vL1xuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5Q2hpbGROb2Rlc0FoZWFkKGluZGV4LCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgY2hpbGROb2Rlc1ZlcmlmeTtcblxuICAgIGNvbnN0IHZlcmlmeUFoZWFkID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpLCAvLy9cbiAgICAgICAgICBjaGlsZE5vZGVzTGVuZ3RoID0gY2hpbGROb2Rlcy5sZW5ndGg7XG5cbiAgICBpZiAoaW5kZXggPT09IGNoaWxkTm9kZXNMZW5ndGgpIHtcbiAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICBjaGlsZE5vZGVzVmVyaWZ5ID0gdmVyaWZpZWRBaGVhZDsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZSA9IGNoaWxkTm9kZXNbaW5kZXhdLFxuICAgICAgICAgICAgbm9kZSA9IGNoaWxkTm9kZSwgLy8vXG4gICAgICAgICAgICBub2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU5vZGUobm9kZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCAoKSA9PiB7XG4gICAgICAgICAgICAgIHJlbWFpbmluZ0FyZ3VtZW50cy5wdXNoKHZlcmlmeUFoZWFkKTtcblxuICAgICAgICAgICAgICBjb25zdCBhaGVhZEluZGV4ID0gaW5kZXggKyAxLFxuICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZ5QWhlYWQgPSB0aGlzLnZlcmlmeUNoaWxkTm9kZXNBaGVhZChhaGVhZEluZGV4LCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICAgICAgICAgIHJldHVybiBjaGlsZE5vZGVzVmVyaWZ5QWhlYWQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgY2hpbGROb2Rlc1ZlcmlmeSA9IG5vZGVWZXJpZmllZDsgIC8vL1xuICAgIH1cblxuICAgIHJldHVybiBjaGlsZE5vZGVzVmVyaWZ5O1xuICB9XG59XG4iXSwibmFtZXMiOlsiTm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9kZSIsIm5vZGUiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJub2RlVmVyaWZpZWQiLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGVWZXJpZmllZCIsInZlcmlmeVRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwidmVyaWZ5Q2hpbGROb2RlcyIsImNoaWxkTm9kZXMiLCJjaGlsZE5vZGVzVmVyaWZ5IiwiaW5kZXgiLCJjaGlsZE5vZGVzVmVyaWZ5QWhlYWQiLCJ2ZXJpZnlDaGlsZE5vZGVzQWhlYWQiLCJ2ZXJpZnlBaGVhZCIsInBvcCIsInZlcmlmaWVkQWhlYWQiLCJnZXRDaGlsZE5vZGVzIiwiY2hpbGROb2Rlc0xlbmd0aCIsImxlbmd0aCIsImNoaWxkTm9kZSIsInB1c2giLCJhaGVhZEluZGV4Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQU4sSUFBQSxBQUFNQSw2QkFBRCxBQUFMO2FBQU1BO2dDQUFBQTs7a0JBQUFBOztZQUNuQkMsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVdDLElBQUk7Z0JBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdDLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO29CQUFHQSxtQkFBSCxPQUFBLEtBQUEsU0FBQSxDQUFBLEtBQXFCOztnQkFDcEMsSUFBSUM7Z0JBRUosSUFBTUMsbUJBQW1CSCxLQUFLSSxjQUFjO2dCQUU1QyxJQUFJRCxrQkFBa0I7b0JBQ3BCLElBQU1FLGVBQWVMLE1BQ2ZNLHVCQUF1QixJQUFJLENBQUNDLGtCQUFrQixDQUF2QixNQUFBLElBQUksRUFBSjt3QkFBd0JGO3FCQUFvQyxDQUE1RCxPQUFzQyxxQkFBR0o7b0JBRXRFQyxlQUFlSSxzQkFBdUIsR0FBRztnQkFDM0MsT0FBTztvQkFDTCxJQUFNRSxrQkFBa0JSLE1BQ2xCUywwQkFBMEIsSUFBSSxDQUFDQyxxQkFBcUIsQ0FBMUIsTUFBQSxJQUFJLEVBQUo7d0JB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
@@ -198,4 +198,4 @@ var TermNodesVerifier = /*#__PURE__*/ function(NodesVerifier) {
198
198
  var termNodesVerifier = new TermNodesVerifier();
199
199
  var _default = termNodesVerifier;
200
200
 
201
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy90ZXJtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZXNcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBBUkdVTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3Rlcm0hXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90eXBlIVwiKTtcblxuY2xhc3MgVGVybU5vZGVzVmVyaWZpZXIgZXh0ZW5kcyBOb2Rlc1ZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBjb25zdHJ1Y3RvclJ1bGVOYW1lID0gY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAocnVsZU5hbWUgPT09IGNvbnN0cnVjdG9yUnVsZU5hbWUpIHtcbiAgICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgICAgY2FzZSBBUkdVTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCBhcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yQXJndW1lbnROb2RlID0gY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGFyZ3VtZW50Tm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlBcmd1bWVudE5vZGUoYXJndW1lbnROb2RlLCBjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBhcmd1bWVudE5vZGVWZXJpZmllZDsgLy8vXG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN1cGVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGNvbnN0cnVjdG9yTm9uVGVybWluYWxOb2RlLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeUFyZ3VtZW50Tm9kZShhcmd1bWVudE5vZGUsIGNvbnN0cnVjdG9yQXJndW1lbnROb2RlLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBhcmd1bWVudE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgYXJndW1lbnRTdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyhhcmd1bWVudE5vZGUpO1xuXG4gICAgY29uc3QgdHlwZU5vZGUgPSB0eXBlTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgICBpZiAodHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnRleHQuZGVidWcoYFRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50IHNob3VsZCBiZSBhIHRlcm0sIG5vdCBhIHR5cGUuYCwgYXJndW1lbnROb2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgICAgIGlmICghYXJndW1lbnROb2RlVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgY29uc3RydWN0b3JUZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoY29uc3RydWN0b3JBcmd1bWVudE5vZGUpO1xuXG4gICAgICAgIGlmIChjb25zdHJ1Y3RvclRlcm1Ob2RlICE9PSBudWxsKSB7XG4gICAgICAgICAgY29uc3Qgbm9kZSA9IHRlcm1Ob2RlLCAgLy8vXG4gICAgICAgICAgICAgICAgY29uc3RydWN0b3JOb2RlID0gY29uc3RydWN0b3JUZXJtTm9kZSwgIC8vL1xuICAgICAgICAgICAgICAgIG5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9kZShub2RlLCBjb25zdHJ1Y3Rvck5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICAgIGFyZ3VtZW50Tm9kZVZlcmlmaWVkID0gbm9kZVZlcmlmaWVkOyAgLy8vXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCFhcmd1bWVudE5vZGVWZXJpZmllZCkge1xuICAgICAgICBjb25zdCBjb25zdHJ1Y3RvclR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeShjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSk7XG5cbiAgICAgICAgaWYgKGNvbnN0cnVjdG9yVHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgICBjb25zdCB7IHZlcmlmeVRlcm0gfSA9IHRlcm1Ob2Rlc1ZlcmlmaWVyLFxuICAgICAgICAgICAgICAgIHRlcm1zID0gW10sXG4gICAgICAgICAgICAgICAgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdGVybXMsIGNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgIGxldCB2ZXJpZmllZEFoZWFkID0gZmFsc2U7XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnN0cnVjdG9yVHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZShjb25zdHJ1Y3RvclR5cGVOb2RlKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0VGVybSA9IGZpcnN0KHRlcm1zKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlcm0gPSBmaXJzdFRlcm0sIC8vL1xuICAgICAgICAgICAgICAgICAgICAgICAgdGVybVR5cGUgPSB0ZXJtLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yVHlwZSA9IGNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKGNvbnN0cnVjdG9yVHlwZU5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUeXBlID0gdGVybVR5cGUuaXNFcXVhbFRvT3JTdWJUeXBlT2YoY29uc3RydWN0b3JUeXBlKTtcblxuICAgICAgICAgICAgICAgICAgaWYgKHRlcm1UeXBlRXF1YWxUb09yU3ViVHlwZU9mVHlwZSkge1xuICAgICAgICAgICAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICBhcmd1bWVudE5vZGVWZXJpZmllZCA9IHRlcm1WZXJpZmllZDsgIC8vL1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGFyZ3VtZW50Tm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IHRlcm1Ob2Rlc1ZlcmlmaWVyID0gbmV3IFRlcm1Ob2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRlcm1Ob2Rlc1ZlcmlmaWVyO1xuIl0sIm5hbWVzIjpbInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ0eXBlTm9kZVF1ZXJ5IiwiVGVybU5vZGVzVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJjb25zdHJ1Y3Rvck5vblRlcm1pbmFsTm9kZSIsImNvbnRleHQiLCJ2ZXJpZnlBaGVhZCIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsImNvbnN0cnVjdG9yUnVsZU5hbWUiLCJBUkdVTUVOVF9SVUxFX05BTUUiLCJhcmd1bWVudE5vZGUiLCJjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50Tm9kZVZlcmlmaWVkIiwidmVyaWZ5QXJndW1lbnROb2RlIiwiYXJndW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0eXBlTm9kZSIsImRlYnVnIiwidGVybU5vZGUiLCJjb25zdHJ1Y3RvclRlcm1Ob2RlIiwibm9kZSIsImNvbnN0cnVjdG9yTm9kZSIsIm5vZGVWZXJpZmllZCIsInZlcmlmeU5vZGUiLCJjb25zdHJ1Y3RvclR5cGVOb2RlIiwidmVyaWZ5VGVybSIsInRlcm1Ob2Rlc1ZlcmlmaWVyIiwidGVybXMiLCJ0ZXJtVmVyaWZpZWQiLCJ2ZXJpZmllZEFoZWFkIiwiY29uc3RydWN0b3JUeXBlTmFtZSIsInR5cGVOYW1lRnJvbVR5cGVOb2RlIiwiZmlyc3RUZXJtIiwiZmlyc3QiLCJ0ZXJtIiwidGVybVR5cGUiLCJnZXRUeXBlIiwiY29uc3RydWN0b3JUeXBlIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwidGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUeXBlIiwiaXNFcXVhbFRvT3JTdWJUeXBlT2YiLCJOb2Rlc1ZlcmlmaWVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFtR0E7OztlQUFBOzs7NERBakcwQjtxQkFFSjt5QkFDYTtxQkFDYTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy90ZXJtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZXNcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBBUkdVTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3Rlcm0hXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90eXBlIVwiKTtcblxuY2xhc3MgVGVybU5vZGVzVmVyaWZpZXIgZXh0ZW5kcyBOb2Rlc1ZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBjb25zdHJ1Y3RvclJ1bGVOYW1lID0gY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAocnVsZU5hbWUgPT09IGNvbnN0cnVjdG9yUnVsZU5hbWUpIHtcbiAgICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgICAgY2FzZSBBUkdVTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCBhcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yQXJndW1lbnROb2RlID0gY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGFyZ3VtZW50Tm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlBcmd1bWVudE5vZGUoYXJndW1lbnROb2RlLCBjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBhcmd1bWVudE5vZGVWZXJpZmllZDsgLy8vXG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN1cGVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGNvbnN0cnVjdG9yTm9uVGVybWluYWxOb2RlLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeUFyZ3VtZW50Tm9kZShhcmd1bWVudE5vZGUsIGNvbnN0cnVjdG9yQXJndW1lbnROb2RlLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBhcmd1bWVudE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgYXJndW1lbnRTdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyhhcmd1bWVudE5vZGUpO1xuXG4gICAgY29uc3QgdHlwZU5vZGUgPSB0eXBlTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgICBpZiAodHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnRleHQuZGVidWcoYFRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50IHNob3VsZCBiZSBhIHRlcm0sIG5vdCBhIHR5cGUuYCwgYXJndW1lbnROb2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgICAgIGlmICghYXJndW1lbnROb2RlVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgY29uc3RydWN0b3JUZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoY29uc3RydWN0b3JBcmd1bWVudE5vZGUpO1xuXG4gICAgICAgIGlmIChjb25zdHJ1Y3RvclRlcm1Ob2RlICE9PSBudWxsKSB7XG4gICAgICAgICAgY29uc3Qgbm9kZSA9IHRlcm1Ob2RlLCAgLy8vXG4gICAgICAgICAgICAgICAgY29uc3RydWN0b3JOb2RlID0gY29uc3RydWN0b3JUZXJtTm9kZSwgIC8vL1xuICAgICAgICAgICAgICAgIG5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9kZShub2RlLCBjb25zdHJ1Y3Rvck5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICAgIGFyZ3VtZW50Tm9kZVZlcmlmaWVkID0gbm9kZVZlcmlmaWVkOyAgLy8vXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCFhcmd1bWVudE5vZGVWZXJpZmllZCkge1xuICAgICAgICBjb25zdCBjb25zdHJ1Y3RvclR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeShjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSk7XG5cbiAgICAgICAgaWYgKGNvbnN0cnVjdG9yVHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgICBjb25zdCB7IHZlcmlmeVRlcm0gfSA9IHRlcm1Ob2Rlc1ZlcmlmaWVyLFxuICAgICAgICAgICAgICAgIHRlcm1zID0gW10sXG4gICAgICAgICAgICAgICAgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdGVybXMsIGNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgIGxldCB2ZXJpZmllZEFoZWFkID0gZmFsc2U7XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnN0cnVjdG9yVHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZShjb25zdHJ1Y3RvclR5cGVOb2RlKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0VGVybSA9IGZpcnN0KHRlcm1zKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlcm0gPSBmaXJzdFRlcm0sIC8vL1xuICAgICAgICAgICAgICAgICAgICAgICAgdGVybVR5cGUgPSB0ZXJtLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yVHlwZSA9IGNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKGNvbnN0cnVjdG9yVHlwZU5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUeXBlID0gdGVybVR5cGUuaXNFcXVhbFRvT3JTdWJUeXBlT2YoY29uc3RydWN0b3JUeXBlKTtcblxuICAgICAgICAgICAgICAgICAgaWYgKHRlcm1UeXBlRXF1YWxUb09yU3ViVHlwZU9mVHlwZSkge1xuICAgICAgICAgICAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICBhcmd1bWVudE5vZGVWZXJpZmllZCA9IHRlcm1WZXJpZmllZDsgIC8vL1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGFyZ3VtZW50Tm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IHRlcm1Ob2Rlc1ZlcmlmaWVyID0gbmV3IFRlcm1Ob2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRlcm1Ob2Rlc1ZlcmlmaWVyO1xuXG4iXSwibmFtZXMiOlsidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVOb2RlUXVlcnkiLCJUZXJtTm9kZXNWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsImNvbnN0cnVjdG9yTm9uVGVybWluYWxOb2RlIiwiY29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiY29uc3RydWN0b3JSdWxlTmFtZSIsIkFSR1VNRU5UX1JVTEVfTkFNRSIsImFyZ3VtZW50Tm9kZSIsImNvbnN0cnVjdG9yQXJndW1lbnROb2RlIiwiYXJndW1lbnROb2RlVmVyaWZpZWQiLCJ2ZXJpZnlBcmd1bWVudE5vZGUiLCJhcmd1bWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInR5cGVOb2RlIiwiZGVidWciLCJ0ZXJtTm9kZSIsImNvbnN0cnVjdG9yVGVybU5vZGUiLCJub2RlIiwiY29uc3RydWN0b3JOb2RlIiwibm9kZVZlcmlmaWVkIiwidmVyaWZ5Tm9kZSIsImNvbnN0cnVjdG9yVHlwZU5vZGUiLCJ2ZXJpZnlUZXJtIiwidGVybU5vZGVzVmVyaWZpZXIiLCJ0ZXJtcyIsInRlcm1WZXJpZmllZCIsInZlcmlmaWVkQWhlYWQiLCJjb25zdHJ1Y3RvclR5cGVOYW1lIiwidHlwZU5hbWVGcm9tVHlwZU5vZGUiLCJmaXJzdFRlcm0iLCJmaXJzdCIsInRlcm0iLCJ0ZXJtVHlwZSIsImdldFR5cGUiLCJjb25zdHJ1Y3RvclR5cGUiLCJmaW5kVHlwZUJ5VHlwZU5hbWUiLCJ0ZXJtVHlwZUVxdWFsVG9PclN1YlR5cGVPZlR5cGUiLCJpc0VxdWFsVG9PclN1YlR5cGVPZiIsIk5vZGVzVmVyaWZpZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQW1HQTs7O2VBQUE7Ozs0REFqRzBCO3FCQUVKO3lCQUNhO3FCQUNhOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "default", {
8
8
  return NodesVerifier;
9
9
  }
10
10
  });
11
+ var _terminalNodes = require("../utilities/terminalNodes");
11
12
  function _array_like_to_array(arr, len) {
12
13
  if (len == null || len > arr.length) len = arr.length;
13
14
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
@@ -92,14 +93,47 @@ var NodesVerifier = /*#__PURE__*/ function() {
92
93
  var childNodesVerify = false;
93
94
  var childNodesALength = childNodesA.length, childNodesBLength = childNodesB.length;
94
95
  if (childNodesALength === childNodesBLength) {
95
- var index = 0, childNodesVerifyAhead = this.verifyChildNodesAhead.apply(this, [
96
- index,
96
+ var childTerminalNodeMapA = (0, _terminalNodes.terminalNodeMapFromNodes)(childNodesA), childTerminalNodeMapB = (0, _terminalNodes.terminalNodeMapFromNodes)(childNodesB), terminalNodeMapsEqual = (0, _terminalNodes.areTerminalNodeMapsEqual)(childTerminalNodeMapA, childTerminalNodeMapB);
97
+ if (terminalNodeMapsEqual) {
98
+ var index = 0, childNodesVerifyAhead = this.verifyChildNodesAhead.apply(this, [
99
+ index,
100
+ childNodesA,
101
+ childNodesB
102
+ ].concat(_to_consumable_array(remainingArguments)));
103
+ childNodesVerify = childNodesVerifyAhead; ///
104
+ }
105
+ }
106
+ return childNodesVerify;
107
+ }
108
+ },
109
+ {
110
+ key: "verifyTerminalNode",
111
+ value: function verifyTerminalNode(terminalNodeA, terminalNodeB) {
112
+ for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
113
+ remainingArguments[_key - 2] = arguments[_key];
114
+ }
115
+ var terminalNodeVerified;
116
+ var verifyAhead = remainingArguments.pop(), verifiedAhead = verifyAhead();
117
+ terminalNodeVerified = verifiedAhead; ///
118
+ return terminalNodeVerified;
119
+ }
120
+ },
121
+ {
122
+ key: "verifyNonTerminalNode",
123
+ value: function verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB) {
124
+ for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
125
+ remainingArguments[_key - 2] = arguments[_key];
126
+ }
127
+ var nonTerminalNodeVerified = false;
128
+ var nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName(); ///
129
+ if (nonTerminalNodeARuleName === nonTerminalNodeBRuleName) {
130
+ var nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(), nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(), childNodesA = nonTerminalNodeAChildNodes, childNodesB = nonTerminalNodeBChildNodes, childNodesVerify = this.verifyChildNodes.apply(this, [
97
131
  childNodesA,
98
132
  childNodesB
99
133
  ].concat(_to_consumable_array(remainingArguments)));
100
- childNodesVerify = childNodesVerifyAhead; ///
134
+ nonTerminalNodeVerified = childNodesVerify; ///
101
135
  }
102
- return childNodesVerify;
136
+ return nonTerminalNodeVerified;
103
137
  }
104
138
  },
105
139
  {
@@ -120,10 +154,9 @@ var NodesVerifier = /*#__PURE__*/ function() {
120
154
  nodeB
121
155
  ].concat(_to_consumable_array(remainingArguments), [
122
156
  function() {
123
- index++;
124
157
  remainingArguments.push(verifyAhead); ///
125
- var childNodesVerifyAhead = _this.verifyChildNodesAhead.apply(_this, [
126
- index,
158
+ var aheadIndex = index + 1, childNodesVerifyAhead = _this.verifyChildNodesAhead.apply(_this, [
159
+ aheadIndex,
127
160
  childNodesA,
128
161
  childNodesB
129
162
  ].concat(_to_consumable_array(remainingArguments)));
@@ -134,42 +167,9 @@ var NodesVerifier = /*#__PURE__*/ function() {
134
167
  }
135
168
  return childNodesVerify;
136
169
  }
137
- },
138
- {
139
- key: "verifyTerminalNode",
140
- value: function verifyTerminalNode(terminalNodeA, terminalNodeB) {
141
- for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
142
- remainingArguments[_key - 2] = arguments[_key];
143
- }
144
- var terminalNodeVerified = false;
145
- var matches = terminalNodeA.match(terminalNodeB);
146
- if (matches) {
147
- var verifyAhead = remainingArguments.pop(), verifiedAhead = verifyAhead();
148
- terminalNodeVerified = verifiedAhead; ///
149
- }
150
- return terminalNodeVerified;
151
- }
152
- },
153
- {
154
- key: "verifyNonTerminalNode",
155
- value: function verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB) {
156
- for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
157
- remainingArguments[_key - 2] = arguments[_key];
158
- }
159
- var nonTerminalNodeVerified = false;
160
- var nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName(); ///
161
- if (nonTerminalNodeARuleName === nonTerminalNodeBRuleName) {
162
- var nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(), nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(), childNodesA = nonTerminalNodeAChildNodes, childNodesB = nonTerminalNodeBChildNodes, childNodesVerify = this.verifyChildNodes.apply(this, [
163
- childNodesA,
164
- childNodesB
165
- ].concat(_to_consumable_array(remainingArguments)));
166
- nonTerminalNodeVerified = childNodesVerify; ///
167
- }
168
- return nonTerminalNodeVerified;
169
- }
170
170
  }
171
171
  ]);
172
172
  return NodesVerifier;
173
173
  }();
174
174
 
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTm9kZXNWZXJpZmllciB7XG4gIHZlcmlmeU5vZGUobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgbm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBub2RlQVRlcm1pbmFsTm9kZSA9IG5vZGVBLmlzVGVybWluYWxOb2RlKCksXG4gICAgICAgICAgbm9kZUJUZXJtaW5hbE5vZGUgPSBub2RlQi5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICAgIG5vZGVBTm9uVGVybWluYWxOb2RlID0gbm9kZUEuaXNOb25UZXJtaW5hbE5vZGUoKSxcbiAgICAgICAgICBub2RlQk5vblRlcm1pbmFsTm9kZSA9IG5vZGVCLmlzTm9uVGVybWluYWxOb2RlKCk7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAobm9kZUFUZXJtaW5hbE5vZGUgJiYgbm9kZUJUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZUEgPSBub2RlQSwgIC8vL1xuICAgICAgICAgICAgdGVybWluYWxOb2RlQiA9IG5vZGVCLCAgLy8vXG4gICAgICAgICAgICB0ZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5VGVybWluYWxOb2RlKHRlcm1pbmFsTm9kZUEsIHRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgIG5vZGVWZXJpZmllZCA9IHRlcm1pbmFsTm9kZVZlcmlmaWVkOyAgLy8vXG4gICAgfSBlbHNlIGlmIChub2RlQU5vblRlcm1pbmFsTm9kZSAmJiBub2RlQk5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IG5vZGVBLCAgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUIsIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICBub2RlVmVyaWZpZWQgPSBub25UZXJtaW5hbE5vZGVWZXJpZmllZDsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeUNoaWxkTm9kZXMoY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgY2hpbGROb2Rlc1ZlcmlmeSA9IGZhbHNlO1xuXG4gICAgY29uc3QgY2hpbGROb2Rlc0FMZW5ndGggPSBjaGlsZE5vZGVzQS5sZW5ndGgsXG4gICAgICAgICAgY2hpbGROb2Rlc0JMZW5ndGggPSBjaGlsZE5vZGVzQi5sZW5ndGg7XG5cbiAgICBpZiAoY2hpbGROb2Rlc0FMZW5ndGggPT09IGNoaWxkTm9kZXNCTGVuZ3RoKSB7XG4gICAgICBjb25zdCBpbmRleCA9IDAsXG4gICAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZ5QWhlYWQgPSB0aGlzLnZlcmlmeUNoaWxkTm9kZXNBaGVhZChpbmRleCwgY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICBjaGlsZE5vZGVzVmVyaWZ5ID0gY2hpbGROb2Rlc1ZlcmlmeUFoZWFkOyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1ZlcmlmeTtcbiAgfVxuXG4gIHZlcmlmeUNoaWxkTm9kZXNBaGVhZChpbmRleCwgY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgY2hpbGROb2Rlc1ZlcmlmeTtcblxuICAgIGNvbnN0IHZlcmlmeUFoZWFkID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpLCAvLy9cbiAgICAgICAgICBjaGlsZE5vZGVzQUxlbmd0aCA9IGNoaWxkTm9kZXNBLmxlbmd0aDtcblxuICAgIGlmIChpbmRleCA9PT0gY2hpbGROb2Rlc0FMZW5ndGgpIHtcbiAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICBjaGlsZE5vZGVzVmVyaWZ5ID0gdmVyaWZpZWRBaGVhZDsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZUEgPSBjaGlsZE5vZGVzQVtpbmRleF0sXG4gICAgICAgICAgICBjaGlsZE5vZGVCID0gY2hpbGROb2Rlc0JbaW5kZXhdLFxuICAgICAgICAgICAgbm9kZUEgPSBjaGlsZE5vZGVBLCAvLy9cbiAgICAgICAgICAgIG5vZGVCID0gY2hpbGROb2RlQiwgLy8vXG4gICAgICAgICAgICBub2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU5vZGUobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMsICgpID0+IHtcbiAgICAgICAgICAgICAgaW5kZXgrKztcblxuICAgICAgICAgICAgICByZW1haW5pbmdBcmd1bWVudHMucHVzaCh2ZXJpZnlBaGVhZCk7IC8vL1xuXG4gICAgICAgICAgICAgIGNvbnN0IGNoaWxkTm9kZXNWZXJpZnlBaGVhZCA9IHRoaXMudmVyaWZ5Q2hpbGROb2Rlc0FoZWFkKGluZGV4LCBjaGlsZE5vZGVzQSwgY2hpbGROb2Rlc0IsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIGNoaWxkTm9kZXNWZXJpZnlBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBjaGlsZE5vZGVzVmVyaWZ5ID0gbm9kZVZlcmlmaWVkOyAgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNWZXJpZnk7XG4gIH1cblxuICB2ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBtYXRjaGVzID0gdGVybWluYWxOb2RlQS5tYXRjaCh0ZXJtaW5hbE5vZGVCKTtcblxuICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICBjb25zdCB2ZXJpZnlBaGVhZCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSxcbiAgICAgICAgICAgIHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICB0ZXJtaW5hbE5vZGVWZXJpZmllZCA9IHZlcmlmaWVkQWhlYWQ7ICAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gdGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVBLmdldFJ1bGVOYW1lKCksIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZUIuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAobm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID09PSBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUpIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlQS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCQ2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZUIuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgY2hpbGROb2Rlc0EgPSBub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgICBjaGlsZE5vZGVzQiA9IG5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgIGNoaWxkTm9kZXNWZXJpZnkgPSB0aGlzLnZlcmlmeUNoaWxkTm9kZXMoY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGNoaWxkTm9kZXNWZXJpZnk7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIk5vZGVzVmVyaWZpZXIiLCJ2ZXJpZnlOb2RlIiwibm9kZUEiLCJub2RlQiIsInJlbWFpbmluZ0FyZ3VtZW50cyIsIm5vZGVWZXJpZmllZCIsIm5vZGVBVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJub2RlQlRlcm1pbmFsTm9kZSIsIm5vZGVBTm9uVGVybWluYWxOb2RlIiwiaXNOb25UZXJtaW5hbE5vZGUiLCJub2RlQk5vblRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZUEiLCJ0ZXJtaW5hbE5vZGVCIiwidGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwidmVyaWZ5Q2hpbGROb2RlcyIsImNoaWxkTm9kZXNBIiwiY2hpbGROb2Rlc0IiLCJjaGlsZE5vZGVzVmVyaWZ5IiwiY2hpbGROb2Rlc0FMZW5ndGgiLCJsZW5ndGgiLCJjaGlsZE5vZGVzQkxlbmd0aCIsImluZGV4IiwiY2hpbGROb2Rlc1ZlcmlmeUFoZWFkIiwidmVyaWZ5Q2hpbGROb2Rlc0FoZWFkIiwidmVyaWZ5QWhlYWQiLCJwb3AiLCJ2ZXJpZmllZEFoZWFkIiwiY2hpbGROb2RlQSIsImNoaWxkTm9kZUIiLCJwdXNoIiwibWF0Y2hlcyIsIm1hdGNoIiwibm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUiLCJub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJub25UZXJtaW5hbE5vZGVCQ2hpbGROb2RlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFFcUJBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFOLElBQUEsQUFBTUEsOEJBQUQsQUFBTDthQUFNQTtnQ0FBQUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXQyxLQUFLLEVBQUVDLEtBQUs7Z0JBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdDLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO29CQUFHQSxtQkFBSCxPQUFBLEtBQUEsU0FBQSxDQUFBLEtBQXFCOztnQkFDNUMsSUFBSUMsZUFBZTtnQkFFbkIsSUFBTUMsb0JBQW9CSixNQUFNSyxjQUFjLElBQ3hDQyxvQkFBb0JMLE1BQU1JLGNBQWMsSUFDeENFLHVCQUF1QlAsTUFBTVEsaUJBQWlCLElBQzlDQyx1QkFBdUJSLE1BQU1PLGlCQUFpQjtnQkFFcEQsSUFBSSxPQUFPO2dCQUNULEdBQUc7Z0JBQ0wsT0FBTyxJQUFJSixxQkFBcUJFLG1CQUFtQjtvQkFDakQsSUFBTUksZ0JBQWdCVixPQUNoQlcsZ0JBQWdCVixPQUNoQlcsdUJBQXVCLElBQUksQ0FBQ0Msa0JBQWtCLENBQXZCLE1BQUEsSUFBSSxFQUFKO3dCQUF3Qkg7d0JBQWVDO3FCQUFxQyxDQUE1RSxPQUFzRCxxQkFBR1Q7b0JBRXRGQyxlQUFlUyxzQkFBdUIsR0FBRztnQkFDM0MsT0FBTyxJQUFJTCx3QkFBd0JFLHNCQUFzQjtvQkFDdkQsSUFBTUssbUJBQW1CZCxPQUNuQmUsbUJBQW1CZCxPQUNuQmUsMEJBQTBCLElBQUksQ0FBQ0MscUJBQXFCLENBQTFCLE1BQUEsSUFBSSxFQUFKO3dCQUEyQkg7d0JBQWtCQztxQkFBd0MsQ0FBckYsT0FBK0QscUJBQUdiO29CQUVsR0MsZUFBZWEseUJBQXlCLEdBQUc7Z0JBQzdDO2dCQUVBLE9BQU9iO1lBQ1Q7OztZQUVBZSxLQUFBQTttQkFBQUEsU0FBQUEsaUJBQWlCQyxXQUFXLEVBQUVDLFdBQVc7Z0JBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdsQixxQkFBSCxVQUFBLE9BQUEsSUFBQSxPQUFBLFFBQUEsT0FBQSxHQUFBLE9BQUEsTUFBQTtvQkFBR0EsbUJBQUgsT0FBQSxLQUFBLFNBQUEsQ0FBQSxLQUFxQjs7Z0JBQzlELElBQUltQixtQkFBbUI7Z0JBRXZCLElBQU1DLG9CQUFvQkgsWUFBWUksTUFBTSxFQUN0Q0Msb0JBQW9CSixZQUFZRyxNQUFNO2dCQUU1QyxJQUFJRCxzQkFBc0JFLG1CQUFtQjtvQkFDM0MsSUFBTUMsUUFBUSxHQUNSQyx3QkFBd0IsSUFBSSxDQUFDQyxxQkFBcUIsQ0FBMUIsTUFBQSxJQUFJLEVBQUo7d0JBQTJCRjt3QkFBT047d0JBQWFDO3FCQUFtQyxDQUFsRixPQUE0RCxxQkFBR2xCO29CQUU3Rm1CLG1CQUFtQkssdUJBQXVCLEdBQUc7Z0JBQy9DO2dCQUVBLE9BQU9MO1lBQ1Q7OztZQUVBTSxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCRixLQUFLLEVBQUVOLFdBQVcsRUFBRUMsV0FBVzs7Z0JBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdsQixxQkFBSCxVQUFBLE9BQUEsSUFBQSxPQUFBLFFBQUEsT0FBQSxHQUFBLE9BQUEsTUFBQTtvQkFBR0EsbUJBQUgsT0FBQSxLQUFBLFNBQUEsQ0FBQSxLQUFxQjs7Z0JBQzFFLElBQUltQjtnQkFFSixJQUFNTyxjQUFjMUIsbUJBQW1CMkIsR0FBRyxJQUNwQ1Asb0JBQW9CSCxZQUFZSSxNQUFNO2dCQUU1QyxJQUFJRSxVQUFVSCxtQkFBbUI7b0JBQy9CLElBQU1RLGdCQUFnQkY7b0JBRXRCUCxtQkFBbUJTLGVBQWUsR0FBRztnQkFDdkMsT0FBTztvQkFDTCxJQUFNQyxhQUFhWixXQUFXLENBQUNNLE1BQU0sRUFDL0JPLGFBQWFaLFdBQVcsQ0FBQ0ssTUFBTSxFQUMvQnpCLFFBQVErQixZQUNSOUIsUUFBUStCLFlBQ1I3QixlQUFlLElBQUksQ0FBQ0osVUFBVSxDQUFmLE1BQUEsSUFBSSxFQUFKO3dCQUFnQkM7d0JBQU9DO3FCQVFwQyxDQVJhLE9BQThCLHFCQUFHQyxxQkFBakM7d0JBQXFEOzRCQUNsRXVCOzRCQUVBdkIsbUJBQW1CK0IsSUFBSSxDQUFDTCxjQUFjLEdBQUc7NEJBRXpDLElBQU1GLHdCQUF3QixNQUFLQyxxQkFBcUIsQ0FBMUIsYUFBQTtnQ0FBMkJGO2dDQUFPTjtnQ0FBYUM7NkJBQW1DLENBQWxGLE9BQTRELHFCQUFHbEI7NEJBRTdGLE9BQU93Qjt3QkFDVDtxQkFBRTtvQkFFUkwsbUJBQW1CbEIsY0FBZSxHQUFHO2dCQUN2QztnQkFFQSxPQUFPa0I7WUFDVDs7O1lBRUFSLEtBQUFBO21CQUFBQSxTQUFBQSxtQkFBbUJILGFBQWEsRUFBRUMsYUFBYTtnQkFBRSxJQUFBLElBQUEsT0FBQSxVQUFBLFFBQUEsQUFBR1QscUJBQUgsVUFBQSxPQUFBLElBQUEsT0FBQSxRQUFBLE9BQUEsR0FBQSxPQUFBLE1BQUE7b0JBQUdBLG1CQUFILE9BQUEsS0FBQSxTQUFBLENBQUEsS0FBcUI7O2dCQUNwRSxJQUFJVSx1QkFBdUI7Z0JBRTNCLElBQU1zQixVQUFVeEIsY0FBY3lCLEtBQUssQ0FBQ3hCO2dCQUVwQyxJQUFJdUIsU0FBUztvQkFDWCxJQUFNTixjQUFjMUIsbUJBQW1CMkIsR0FBRyxJQUNwQ0MsZ0JBQWdCRjtvQkFFdEJoQix1QkFBdUJrQixlQUFnQixHQUFHO2dCQUM1QztnQkFFQSxPQUFPbEI7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JILGdCQUFnQixFQUFFQyxnQkFBZ0I7Z0JBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdiLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO29CQUFHQSxtQkFBSCxPQUFBLEtBQUEsU0FBQSxDQUFBLEtBQXFCOztnQkFDN0UsSUFBSWMsMEJBQTBCO2dCQUU5QixJQUFNb0IsMkJBQTJCdEIsaUJBQWlCdUIsV0FBVyxJQUN2REMsMkJBQTJCdkIsaUJBQWlCc0IsV0FBVyxJQUFJLEdBQUc7Z0JBRXBFLElBQUlELDZCQUE2QkUsMEJBQTBCO29CQUN6RCxJQUFNQyw2QkFBNkJ6QixpQkFBaUIwQixhQUFhLElBQzNEQyw2QkFBNkIxQixpQkFBaUJ5QixhQUFhLElBQzNEckIsY0FBY29CLDRCQUNkbkIsY0FBY3FCLDRCQUNkcEIsbUJBQW1CLElBQUksQ0FBQ0gsZ0JBQWdCLENBQXJCLE1BQUEsSUFBSSxFQUFKO3dCQUFzQkM7d0JBQWFDO3FCQUFtQyxDQUF0RSxPQUFnRCxxQkFBR2xCO29CQUU1RWMsMEJBQTBCSyxrQkFBa0IsR0FBRztnQkFDakQ7Z0JBRUEsT0FBT0w7WUFDVDs7O1dBM0dtQmxCIn0=
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgdGVybWluYWxOb2RlTWFwRnJvbU5vZGVzLCBhcmVUZXJtaW5hbE5vZGVNYXBzRXF1YWwgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3Rlcm1pbmFsTm9kZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTm9kZXNWZXJpZmllciB7XG4gIHZlcmlmeU5vZGUobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgbm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBub2RlQVRlcm1pbmFsTm9kZSA9IG5vZGVBLmlzVGVybWluYWxOb2RlKCksXG4gICAgICAgICAgbm9kZUJUZXJtaW5hbE5vZGUgPSBub2RlQi5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICAgIG5vZGVBTm9uVGVybWluYWxOb2RlID0gbm9kZUEuaXNOb25UZXJtaW5hbE5vZGUoKSxcbiAgICAgICAgICBub2RlQk5vblRlcm1pbmFsTm9kZSA9IG5vZGVCLmlzTm9uVGVybWluYWxOb2RlKCk7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAobm9kZUFUZXJtaW5hbE5vZGUgJiYgbm9kZUJUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZUEgPSBub2RlQSwgIC8vL1xuICAgICAgICAgICAgdGVybWluYWxOb2RlQiA9IG5vZGVCLCAgLy8vXG4gICAgICAgICAgICB0ZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5VGVybWluYWxOb2RlKHRlcm1pbmFsTm9kZUEsIHRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgIG5vZGVWZXJpZmllZCA9IHRlcm1pbmFsTm9kZVZlcmlmaWVkOyAgLy8vXG4gICAgfSBlbHNlIGlmIChub2RlQU5vblRlcm1pbmFsTm9kZSAmJiBub2RlQk5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IG5vZGVBLCAgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUIsIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICBub2RlVmVyaWZpZWQgPSBub25UZXJtaW5hbE5vZGVWZXJpZmllZDsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeUNoaWxkTm9kZXMoY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgY2hpbGROb2Rlc1ZlcmlmeSA9IGZhbHNlO1xuXG4gICAgY29uc3QgY2hpbGROb2Rlc0FMZW5ndGggPSBjaGlsZE5vZGVzQS5sZW5ndGgsXG4gICAgICAgICAgY2hpbGROb2Rlc0JMZW5ndGggPSBjaGlsZE5vZGVzQi5sZW5ndGg7XG5cbiAgICBpZiAoY2hpbGROb2Rlc0FMZW5ndGggPT09IGNoaWxkTm9kZXNCTGVuZ3RoKSB7XG4gICAgICBjb25zdCBjaGlsZFRlcm1pbmFsTm9kZU1hcEEgPSB0ZXJtaW5hbE5vZGVNYXBGcm9tTm9kZXMoY2hpbGROb2Rlc0EpLFxuICAgICAgICAgICAgY2hpbGRUZXJtaW5hbE5vZGVNYXBCID0gdGVybWluYWxOb2RlTWFwRnJvbU5vZGVzKGNoaWxkTm9kZXNCKSxcbiAgICAgICAgICAgIHRlcm1pbmFsTm9kZU1hcHNFcXVhbCA9IGFyZVRlcm1pbmFsTm9kZU1hcHNFcXVhbChjaGlsZFRlcm1pbmFsTm9kZU1hcEEsIGNoaWxkVGVybWluYWxOb2RlTWFwQik7XG5cbiAgICAgIGlmICh0ZXJtaW5hbE5vZGVNYXBzRXF1YWwpIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSAwLFxuICAgICAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZ5QWhlYWQgPSB0aGlzLnZlcmlmeUNoaWxkTm9kZXNBaGVhZChpbmRleCwgY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICAgIGNoaWxkTm9kZXNWZXJpZnkgPSBjaGlsZE5vZGVzVmVyaWZ5QWhlYWQ7IC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjaGlsZE5vZGVzVmVyaWZ5O1xuICB9XG5cbiAgdmVyaWZ5VGVybWluYWxOb2RlKHRlcm1pbmFsTm9kZUEsIHRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykgeyAvLy9cbiAgICBsZXQgdGVybWluYWxOb2RlVmVyaWZpZWQ7XG5cbiAgICBjb25zdCB2ZXJpZnlBaGVhZCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSxcbiAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgIHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdmVyaWZpZWRBaGVhZDsgIC8vL1xuXG4gICAgcmV0dXJuIHRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVCLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gICAgaWYgKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9PT0gbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lKSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZUEuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGVCLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgIGNoaWxkTm9kZXNBID0gbm9uVGVybWluYWxOb2RlQUNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgY2hpbGROb2Rlc0IgPSBub25UZXJtaW5hbE5vZGVCQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZ5ID0gdGhpcy52ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXNBLCBjaGlsZE5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBjaGlsZE5vZGVzVmVyaWZ5OyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlDaGlsZE5vZGVzQWhlYWQoaW5kZXgsIGNoaWxkTm9kZXNBLCBjaGlsZE5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IGNoaWxkTm9kZXNWZXJpZnk7XG5cbiAgICBjb25zdCB2ZXJpZnlBaGVhZCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSwgLy8vXG4gICAgICAgICAgY2hpbGROb2Rlc0FMZW5ndGggPSBjaGlsZE5vZGVzQS5sZW5ndGg7XG5cbiAgICBpZiAoaW5kZXggPT09IGNoaWxkTm9kZXNBTGVuZ3RoKSB7XG4gICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgY2hpbGROb2Rlc1ZlcmlmeSA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVBID0gY2hpbGROb2Rlc0FbaW5kZXhdLFxuICAgICAgICAgICAgY2hpbGROb2RlQiA9IGNoaWxkTm9kZXNCW2luZGV4XSxcbiAgICAgICAgICAgIG5vZGVBID0gY2hpbGROb2RlQSwgLy8vXG4gICAgICAgICAgICBub2RlQiA9IGNoaWxkTm9kZUIsIC8vL1xuICAgICAgICAgICAgbm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlOb2RlKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCAoKSA9PiB7XG4gICAgICAgICAgICAgIHJlbWFpbmluZ0FyZ3VtZW50cy5wdXNoKHZlcmlmeUFoZWFkKTsgLy8vXG5cbiAgICAgICAgICAgICAgY29uc3QgYWhlYWRJbmRleCA9IGluZGV4ICsgMSxcbiAgICAgICAgICAgICAgICAgICAgY2hpbGROb2Rlc1ZlcmlmeUFoZWFkID0gdGhpcy52ZXJpZnlDaGlsZE5vZGVzQWhlYWQoYWhlYWRJbmRleCwgY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICAgICAgICAgIHJldHVybiBjaGlsZE5vZGVzVmVyaWZ5QWhlYWQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgY2hpbGROb2Rlc1ZlcmlmeSA9IG5vZGVWZXJpZmllZDsgIC8vL1xuICAgIH1cblxuICAgIHJldHVybiBjaGlsZE5vZGVzVmVyaWZ5O1xuICB9XG59XG4iXSwibmFtZXMiOlsiTm9kZXNWZXJpZmllciIsInZlcmlmeU5vZGUiLCJub2RlQSIsIm5vZGVCIiwicmVtYWluaW5nQXJndW1lbnRzIiwibm9kZVZlcmlmaWVkIiwibm9kZUFUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsIm5vZGVCVGVybWluYWxOb2RlIiwibm9kZUFOb25UZXJtaW5hbE5vZGUiLCJpc05vblRlcm1pbmFsTm9kZSIsIm5vZGVCTm9uVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlQSIsInRlcm1pbmFsTm9kZUIiLCJ0ZXJtaW5hbE5vZGVWZXJpZmllZCIsInZlcmlmeVRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZUEiLCJub25UZXJtaW5hbE5vZGVCIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJ2ZXJpZnlDaGlsZE5vZGVzIiwiY2hpbGROb2Rlc0EiLCJjaGlsZE5vZGVzQiIsImNoaWxkTm9kZXNWZXJpZnkiLCJjaGlsZE5vZGVzQUxlbmd0aCIsImxlbmd0aCIsImNoaWxkTm9kZXNCTGVuZ3RoIiwiY2hpbGRUZXJtaW5hbE5vZGVNYXBBIiwidGVybWluYWxOb2RlTWFwRnJvbU5vZGVzIiwiY2hpbGRUZXJtaW5hbE5vZGVNYXBCIiwidGVybWluYWxOb2RlTWFwc0VxdWFsIiwiYXJlVGVybWluYWxOb2RlTWFwc0VxdWFsIiwiaW5kZXgiLCJjaGlsZE5vZGVzVmVyaWZ5QWhlYWQiLCJ2ZXJpZnlDaGlsZE5vZGVzQWhlYWQiLCJ2ZXJpZnlBaGVhZCIsInBvcCIsInZlcmlmaWVkQWhlYWQiLCJub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsIm5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzIiwiY2hpbGROb2RlQSIsImNoaWxkTm9kZUIiLCJwdXNoIiwiYWhlYWRJbmRleCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7NkJBRjhDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFcEQsSUFBQSxBQUFNQSw4QkFBRCxBQUFMO2FBQU1BO2dDQUFBQTs7a0JBQUFBOztZQUNuQkMsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVdDLEtBQUssRUFBRUMsS0FBSztnQkFBRSxJQUFBLElBQUEsT0FBQSxVQUFBLFFBQUEsQUFBR0MscUJBQUgsVUFBQSxPQUFBLElBQUEsT0FBQSxRQUFBLE9BQUEsR0FBQSxPQUFBLE1BQUE7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
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyGivenVariable;
9
+ }
10
+ });
11
+ function verifyGivenVariable(variableNode, variables, context, verifyAhead) {
12
+ var givenVariableVerified = false;
13
+ var variableString = context.nodeAsString(variableNode);
14
+ context.trace("Verifying the '".concat(variableString, "' given variable..."), variableNode);
15
+ var variable = context.findVariableByVariableNode(variableNode);
16
+ if (variable !== null) {
17
+ var verifiedAhead;
18
+ variables.push(variable);
19
+ verifiedAhead = verifyAhead();
20
+ if (!verifiedAhead) {
21
+ variables.pop();
22
+ }
23
+ givenVariableVerified = verifiedAhead; ///
24
+ }
25
+ if (givenVariableVerified) {
26
+ context.debug("...verified the '".concat(variableString, "' given variable."), variableNode);
27
+ }
28
+ return givenVariableVerified;
29
+ }
30
+
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZ2l2ZW5WYXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5R2l2ZW5WYXJpYWJsZSh2YXJpYWJsZU5vZGUsIHZhcmlhYmxlcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IGdpdmVuVmFyaWFibGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IHZhcmlhYmxlU3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcodmFyaWFibGVOb2RlKTtcblxuICBjb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgZ2l2ZW4gdmFyaWFibGUuLi5gLCB2YXJpYWJsZU5vZGUpO1xuXG4gIGNvbnN0IHZhcmlhYmxlID0gY29udGV4dC5maW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpO1xuXG4gIGlmICh2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgIGxldCB2ZXJpZmllZEFoZWFkO1xuXG4gICAgdmFyaWFibGVzLnB1c2godmFyaWFibGUpO1xuXG4gICAgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG5cbiAgICBpZiAoIXZlcmlmaWVkQWhlYWQpIHtcbiAgICAgIHZhcmlhYmxlcy5wb3AoKTtcbiAgICB9XG5cbiAgICBnaXZlblZhcmlhYmxlVmVyaWZpZWQgPSB2ZXJpZmllZEFoZWFkOyAvLy9cbiAgfVxuXG4gIGlmIChnaXZlblZhcmlhYmxlVmVyaWZpZWQpIHtcbiAgICBjb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7dmFyaWFibGVTdHJpbmd9JyBnaXZlbiB2YXJpYWJsZS5gLCB2YXJpYWJsZU5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGdpdmVuVmFyaWFibGVWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlHaXZlblZhcmlhYmxlIiwidmFyaWFibGVOb2RlIiwidmFyaWFibGVzIiwiY29udGV4dCIsInZlcmlmeUFoZWFkIiwiZ2l2ZW5WYXJpYWJsZVZlcmlmaWVkIiwidmFyaWFibGVTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInZhcmlhYmxlIiwiZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUiLCJ2ZXJpZmllZEFoZWFkIiwicHVzaCIsInBvcCIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFFQTs7O2VBQXdCQTs7O0FBQVQsU0FBU0Esb0JBQW9CQyxZQUFZLEVBQUVDLFNBQVMsRUFBRUMsT0FBTyxFQUFFQyxXQUFXO0lBQ3ZGLElBQUlDLHdCQUF3QjtJQUU1QixJQUFNQyxpQkFBaUJILFFBQVFJLFlBQVksQ0FBQ047SUFFNUNFLFFBQVFLLEtBQUssQ0FBQyxBQUFDLGtCQUFnQyxPQUFmRixnQkFBZSx3QkFBc0JMO0lBRXJFLElBQU1RLFdBQVdOLFFBQVFPLDBCQUEwQixDQUFDVDtJQUVwRCxJQUFJUSxhQUFhLE1BQU07UUFDckIsSUFBSUU7UUFFSlQsVUFBVVUsSUFBSSxDQUFDSDtRQUVmRSxnQkFBZ0JQO1FBRWhCLElBQUksQ0FBQ08sZUFBZTtZQUNsQlQsVUFBVVcsR0FBRztRQUNmO1FBRUFSLHdCQUF3Qk0sZUFBZSxHQUFHO0lBQzVDO0lBRUEsSUFBSU4sdUJBQXVCO1FBQ3pCRixRQUFRVyxLQUFLLENBQUMsQUFBQyxvQkFBa0MsT0FBZlIsZ0JBQWUsc0JBQW9CTDtJQUN2RTtJQUVBLE9BQU9JO0FBQ1QifQ==
@@ -18,13 +18,15 @@ _export(exports, {
18
18
  });
19
19
  var _term = /*#__PURE__*/ _interop_require_default(require("../term"));
20
20
  var _term1 = /*#__PURE__*/ _interop_require_default(require("../verifier/nodes/term"));
21
- var _termAsGivenVariable = /*#__PURE__*/ _interop_require_default(require("../verify/termAsGivenVariable"));
21
+ var _givenVariable = /*#__PURE__*/ _interop_require_default(require("../verify/givenVariable"));
22
22
  var _array = require("../utilities/array");
23
+ var _query = require("../utilities/query");
23
24
  function _interop_require_default(obj) {
24
25
  return obj && obj.__esModule ? obj : {
25
26
  default: obj
26
27
  };
27
28
  }
29
+ var variableNodeQuery = (0, _query.nodeQuery)("/term/variable!");
28
30
  function verifyTerm(termNode, terms, context, verifyAhead) {
29
31
  var termVerified;
30
32
  var termString = context.nodeAsString(termNode);
@@ -60,34 +62,40 @@ Object.assign(_term1.default, {
60
62
  });
61
63
  var _default = verifyTerm;
62
64
  function verifyTermAsVariable(termNode, terms, context, verifyAhead) {
63
- var termVerifiedAsVariable;
64
- var termString = context.nodeAsString(termNode);
65
- context.trace("Verifying the '".concat(termString, "' term as a variable..."), termNode);
66
- var variables = [], termVerifiedAsGivenVariable = (0, _termAsGivenVariable.default)(termNode, variables, context, function() {
67
- var verifiedAhead;
68
- var firstVariable = (0, _array.first)(variables), variable = firstVariable, type = variable.getType(), term = _term.default.fromTermNodeAndType(termNode, type);
69
- terms.push(term);
70
- verifiedAhead = verifyAhead();
71
- if (!verifiedAhead) {
72
- terms.pop();
65
+ var termVerifiedAsVariable = false;
66
+ var variableNode = variableNodeQuery(termNode);
67
+ if (variableNode !== null) {
68
+ var termString = context.nodeAsString(termNode);
69
+ context.trace("Verifying the '".concat(termString, "' term as a variable..."), termNode);
70
+ var variables = [], givenVariableVerified = (0, _givenVariable.default)(variableNode, variables, context, function() {
71
+ var verifiedAhead;
72
+ var firstVariable = (0, _array.first)(variables), variable = firstVariable, type = variable.getType(), term = _term.default.fromTermNodeAndType(termNode, type);
73
+ terms.push(term);
74
+ verifiedAhead = verifyAhead();
75
+ if (!verifiedAhead) {
76
+ terms.pop();
77
+ }
78
+ return verifiedAhead;
79
+ });
80
+ termVerifiedAsVariable = givenVariableVerified; ///
81
+ if (termVerifiedAsVariable) {
82
+ context.debug("...verified the '".concat(termString, "' term as a variable."), termNode);
73
83
  }
74
- return verifiedAhead;
75
- });
76
- termVerifiedAsVariable = termVerifiedAsGivenVariable; ///
77
- if (termVerifiedAsVariable) {
78
- context.debug("...verified the '".concat(termString, "' term as a variable."), termNode);
79
84
  }
80
85
  return termVerifiedAsVariable;
81
86
  }
82
87
  function verifyTermAgainstConstructors(termNode, terms, context, verifyAhead) {
83
- var termVerifiedAgainstConstructors;
84
- var constructors = context.getConstructors();
85
- termVerifiedAgainstConstructors = constructors.some(function(constructor) {
86
- var termVerifiedAgainstConstructor = verifyTermAgainstConstructor(termNode, terms, constructor, context, verifyAhead);
87
- if (termVerifiedAgainstConstructor) {
88
- return true;
89
- }
90
- });
88
+ var termVerifiedAgainstConstructors = false;
89
+ var variableNode = variableNodeQuery(termNode);
90
+ if (variableNode === null) {
91
+ var constructors = context.getConstructors();
92
+ termVerifiedAgainstConstructors = constructors.some(function(constructor) {
93
+ var termVerifiedAgainstConstructor = verifyTermAgainstConstructor(termNode, terms, constructor, context, verifyAhead);
94
+ if (termVerifiedAgainstConstructor) {
95
+ return true;
96
+ }
97
+ });
98
+ }
91
99
  return termVerifiedAgainstConstructors;
92
100
  }
93
101
  function verifyTermAgainstConstructor(termNode, terms, constructor, context, verifyAhead) {
@@ -111,4 +119,4 @@ function verifyTermAgainstConstructor(termNode, terms, constructor, context, ver
111
119
  return termVerifiedAgainstConstructor;
112
120
  }
113
121
 
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFRlcm0gZnJvbSBcIi4uL3Rlcm1cIjtcbmltcG9ydCB0ZXJtTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXIvbm9kZXMvdGVybVwiO1xuaW1wb3J0IHZlcmlmeVRlcm1Bc0dpdmVuVmFyaWFibGUgZnJvbSBcIi4uL3ZlcmlmeS90ZXJtQXNHaXZlblZhcmlhYmxlXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuXG5mdW5jdGlvbiB2ZXJpZnlUZXJtKHRlcm1Ob2RlLCB0ZXJtcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IHRlcm1WZXJpZmllZDtcblxuICBjb25zdCB0ZXJtU3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcodGVybU5vZGUpO1xuXG4gIGNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0uLi5gLCB0ZXJtTm9kZSk7XG5cbiAgY29uc3QgdmVyaWZ5VGVybUZ1bmN0aW9ucyA9IFtcbiAgICB2ZXJpZnlUZXJtQXNWYXJpYWJsZSxcbiAgICB2ZXJpZnlUZXJtQWdhaW5zdENvbnN0cnVjdG9yc1xuICBdO1xuXG4gIHRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm1GdW5jdGlvbnMuc29tZSgodmVyaWZ5VGVybUZ1bmN0aW9uKSA9PiB7XG4gICAgY29uc3QgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybUZ1bmN0aW9uKHRlcm1Ob2RlLCB0ZXJtcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgaWYgKHRlcm1WZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICBpZiAodGVybVZlcmlmaWVkKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtLmAsIHRlcm1Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiB0ZXJtVmVyaWZpZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCBzdGFuZGFsb25lVGVybVZlcmlmaWVkO1xuXG4gIGNvbnN0IHRlcm1TdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcodGVybU5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3Rlcm1TdHJpbmd9JyBzdGFuZGFsb25lIHRlcm0uLi5gLCB0ZXJtTm9kZSk7XG5cbiAgY29uc3QgdGVybXMgPSBbXSxcbiAgICAgICAgY29udGV4dCA9IGZpbGVDb250ZXh0LCAgLy8vXG4gICAgICAgIHRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm0odGVybU5vZGUsIHRlcm1zLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgc3RhbmRhbG9uZVRlcm1WZXJpZmllZCA9IHRlcm1WZXJpZmllZDsgIC8vL1xuXG4gIGlmIChzdGFuZGFsb25lVGVybVZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0ZXJtU3RyaW5nfScgc3RhbmRhbG9uZSB0ZXJtLmAsIHRlcm1Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBzdGFuZGFsb25lVGVybVZlcmlmaWVkO1xufVxuXG5PYmplY3QuYXNzaWduKHRlcm1Ob2Rlc1ZlcmlmaWVyLCB7XG4gIHZlcmlmeVRlcm1cbn0pO1xuXG5leHBvcnQgZGVmYXVsdCB2ZXJpZnlUZXJtO1xuXG5mdW5jdGlvbiB2ZXJpZnlUZXJtQXNWYXJpYWJsZSh0ZXJtTm9kZSwgdGVybXMsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCB0ZXJtVmVyaWZpZWRBc1ZhcmlhYmxlO1xuXG4gIGNvbnN0IHRlcm1TdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyh0ZXJtTm9kZSk7XG5cbiAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSBhcyBhIHZhcmlhYmxlLi4uYCwgdGVybU5vZGUpO1xuXG4gIGNvbnN0IHZhcmlhYmxlcyA9IFtdLFxuICAgICAgICB0ZXJtVmVyaWZpZWRBc0dpdmVuVmFyaWFibGUgPSB2ZXJpZnlUZXJtQXNHaXZlblZhcmlhYmxlKHRlcm1Ob2RlLCB2YXJpYWJsZXMsIGNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICBsZXQgdmVyaWZpZWRBaGVhZDtcblxuICAgICAgICAgIGNvbnN0IGZpcnN0VmFyaWFibGUgPSBmaXJzdCh2YXJpYWJsZXMpLFxuICAgICAgICAgICAgICAgIHZhcmlhYmxlID0gZmlyc3RWYXJpYWJsZSwgLy8vXG4gICAgICAgICAgICAgICAgdHlwZSA9IHZhcmlhYmxlLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgICB0ZXJtID0gVGVybS5mcm9tVGVybU5vZGVBbmRUeXBlKHRlcm1Ob2RlLCB0eXBlKTtcblxuICAgICAgICAgIHRlcm1zLnB1c2godGVybSk7XG5cbiAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgICAgIGlmICghdmVyaWZpZWRBaGVhZCkge1xuICAgICAgICAgICAgdGVybXMucG9wKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgIH0pO1xuXG4gIHRlcm1WZXJpZmllZEFzVmFyaWFibGUgPSB0ZXJtVmVyaWZpZWRBc0dpdmVuVmFyaWFibGU7ICAvLy9cblxuICBpZiAodGVybVZlcmlmaWVkQXNWYXJpYWJsZSkge1xuICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSBhcyBhIHZhcmlhYmxlLmAsIHRlcm1Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiB0ZXJtVmVyaWZpZWRBc1ZhcmlhYmxlO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlUZXJtQWdhaW5zdENvbnN0cnVjdG9ycyh0ZXJtTm9kZSwgdGVybXMsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCB0ZXJtVmVyaWZpZWRBZ2FpbnN0Q29uc3RydWN0b3JzO1xuXG4gIGNvbnN0IGNvbnN0cnVjdG9ycyA9IGNvbnRleHQuZ2V0Q29uc3RydWN0b3JzKCk7XG5cbiAgdGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9ycyA9IGNvbnN0cnVjdG9ycy5zb21lKChjb25zdHJ1Y3RvcikgPT4ge1xuICAgIGNvbnN0IHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvciA9IHZlcmlmeVRlcm1BZ2FpbnN0Q29uc3RydWN0b3IodGVybU5vZGUsIHRlcm1zLCBjb25zdHJ1Y3RvciwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgaWYgKHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3Rvcikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gdGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9ycztcbn1cblxuZnVuY3Rpb24gdmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3Rvcih0ZXJtTm9kZSwgdGVybXMsIGNvbnN0cnVjdG9yLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9yO1xuXG4gIGNvbnN0IHRlcm1TdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyh0ZXJtTm9kZSksXG4gICAgICAgIGNvbnN0cnVjdG9yU3RyaW5nID0gY29uc3RydWN0b3IuZ2V0U3RyaW5nKCk7XG5cbiAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSBhZ2FpbnN0IHRoZSAnJHtjb25zdHJ1Y3RvclN0cmluZ30nIGNvbnN0cnVjdG9yLi4uYCwgdGVybU5vZGUpO1xuXG4gIGNvbnN0IGNvbnN0cnVjdG9yVGVybU5vZGUgPSBjb25zdHJ1Y3Rvci5nZXRUZXJtTm9kZSgpLFxuICAgICAgICBub25UZXJtaW5hbE5OZGVBID0gdGVybU5vZGUsICAvLy9cbiAgICAgICAgbm9uVGVybWluYWxOb2RlQiA9IGNvbnN0cnVjdG9yVGVybU5vZGUsICAvLy9cbiAgICAgICAgbm9kZVZlcmlmaWVkID0gdGVybU5vZGVzVmVyaWZpZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTk5kZUEsIG5vblRlcm1pbmFsTm9kZUIsIGNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICBsZXQgdmVyaWZpZWRBaGVhZDtcblxuICAgICAgICAgIGNvbnN0IHR5cGUgPSBjb25zdHJ1Y3Rvci5nZXRUeXBlKCksXG4gICAgICAgICAgICAgICAgdGVybSA9IFRlcm0uZnJvbVRlcm1Ob2RlQW5kVHlwZSh0ZXJtTm9kZSwgdHlwZSk7XG5cbiAgICAgICAgICB0ZXJtcy5wdXNoKHRlcm0pO1xuXG4gICAgICAgICAgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG5cbiAgICAgICAgICBpZiAoIXZlcmlmaWVkQWhlYWQpIHtcbiAgICAgICAgICAgIHRlcm1zLnBvcCgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICB9KTtcblxuICB0ZXJtVmVyaWZpZWRBZ2FpbnN0Q29uc3RydWN0b3IgPSBub2RlVmVyaWZpZWQ7ICAvLy9cblxuICBpZiAodGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9yKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIGFnYWluc3QgdGhlICcke2NvbnN0cnVjdG9yU3RyaW5nfScgY29uc3RydWN0b3IuYCwgdGVybU5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3Rvcjtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGFuZGFsb25lVGVybSIsInZlcmlmeVRlcm0iLCJ0ZXJtTm9kZSIsInRlcm1zIiwiY29udGV4dCIsInZlcmlmeUFoZWFkIiwidGVybVZlcmlmaWVkIiwidGVybVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidmVyaWZ5VGVybUZ1bmN0aW9ucyIsInZlcmlmeVRlcm1Bc1ZhcmlhYmxlIiwidmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3RvcnMiLCJzb21lIiwidmVyaWZ5VGVybUZ1bmN0aW9uIiwiZGVidWciLCJmaWxlQ29udGV4dCIsInN0YW5kYWxvbmVUZXJtVmVyaWZpZWQiLCJPYmplY3QiLCJhc3NpZ24iLCJ0ZXJtTm9kZXNWZXJpZmllciIsInRlcm1WZXJpZmllZEFzVmFyaWFibGUiLCJ2YXJpYWJsZXMiLCJ0ZXJtVmVyaWZpZWRBc0dpdmVuVmFyaWFibGUiLCJ2ZXJpZnlUZXJtQXNHaXZlblZhcmlhYmxlIiwidmVyaWZpZWRBaGVhZCIsImZpcnN0VmFyaWFibGUiLCJmaXJzdCIsInZhcmlhYmxlIiwidHlwZSIsImdldFR5cGUiLCJ0ZXJtIiwiVGVybSIsImZyb21UZXJtTm9kZUFuZFR5cGUiLCJwdXNoIiwicG9wIiwidGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9ycyIsImNvbnN0cnVjdG9ycyIsImdldENvbnN0cnVjdG9ycyIsImNvbnN0cnVjdG9yIiwidGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9yIiwidmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3RvciIsImNvbnN0cnVjdG9yU3RyaW5nIiwiZ2V0U3RyaW5nIiwiY29uc3RydWN0b3JUZXJtTm9kZSIsImdldFRlcm1Ob2RlIiwibm9uVGVybWluYWxOTmRlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJub2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQTJEQSxPQUEwQjtlQUExQjs7SUF4QmdCQSxvQkFBb0I7ZUFBcEJBOzs7MkRBakNDOzREQUNhOzBFQUNRO3FCQUVoQjs7Ozs7O0FBRXRCLFNBQVNDLFdB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
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFRlcm0gZnJvbSBcIi4uL3Rlcm1cIjtcbmltcG9ydCB0ZXJtTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXIvbm9kZXMvdGVybVwiO1xuaW1wb3J0IHZlcmlmeUdpdmVuVmFyaWFibGUgZnJvbSBcIi4uL3ZlcmlmeS9naXZlblZhcmlhYmxlXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtL3ZhcmlhYmxlIVwiKTtcblxuZnVuY3Rpb24gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdGVybXMsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCB0ZXJtVmVyaWZpZWQ7XG5cbiAgY29uc3QgdGVybVN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICBjb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtLi4uYCwgdGVybU5vZGUpO1xuXG4gIGNvbnN0IHZlcmlmeVRlcm1GdW5jdGlvbnMgPSBbXG4gICAgdmVyaWZ5VGVybUFzVmFyaWFibGUsXG4gICAgdmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3RvcnNcbiAgXTtcblxuICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtRnVuY3Rpb25zLnNvbWUoKHZlcmlmeVRlcm1GdW5jdGlvbikgPT4ge1xuICAgIGNvbnN0IHRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm1GdW5jdGlvbih0ZXJtTm9kZSwgdGVybXMsIGNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgIGlmICh0ZXJtVmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgaWYgKHRlcm1WZXJpZmllZCkge1xuICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybS5gLCB0ZXJtTm9kZSk7XG4gIH1cblxuICByZXR1cm4gdGVybVZlcmlmaWVkO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5U3RhbmRhbG9uZVRlcm0odGVybU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgc3RhbmRhbG9uZVRlcm1WZXJpZmllZDtcblxuICBjb25zdCB0ZXJtU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHt0ZXJtU3RyaW5nfScgc3RhbmRhbG9uZSB0ZXJtLi4uYCwgdGVybU5vZGUpO1xuXG4gIGNvbnN0IHRlcm1zID0gW10sXG4gICAgICAgIGNvbnRleHQgPSBmaWxlQ29udGV4dCwgIC8vL1xuICAgICAgICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHRlcm1Ob2RlLCB0ZXJtcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB0ZXJtVmVyaWZpZWQ7ICAvLy9cblxuICBpZiAoc3RhbmRhbG9uZVRlcm1WZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7dGVybVN0cmluZ30nIHN0YW5kYWxvbmUgdGVybS5gLCB0ZXJtTm9kZSk7XG4gIH1cblxuICByZXR1cm4gc3RhbmRhbG9uZVRlcm1WZXJpZmllZDtcbn1cblxuT2JqZWN0LmFzc2lnbih0ZXJtTm9kZXNWZXJpZmllciwge1xuICB2ZXJpZnlUZXJtXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgdmVyaWZ5VGVybTtcblxuZnVuY3Rpb24gdmVyaWZ5VGVybUFzVmFyaWFibGUodGVybU5vZGUsIHRlcm1zLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IGZhbHNlO1xuXG4gIGNvbnN0IHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHRlcm1Ob2RlKTtcblxuICBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdGVybVN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgIGNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gYXMgYSB2YXJpYWJsZS4uLmAsIHRlcm1Ob2RlKTtcblxuICAgIGNvbnN0IHZhcmlhYmxlcyA9IFtdLFxuICAgICAgICAgIGdpdmVuVmFyaWFibGVWZXJpZmllZCA9IHZlcmlmeUdpdmVuVmFyaWFibGUodmFyaWFibGVOb2RlLCB2YXJpYWJsZXMsIGNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgIGxldCB2ZXJpZmllZEFoZWFkO1xuXG4gICAgICAgICAgICBjb25zdCBmaXJzdFZhcmlhYmxlID0gZmlyc3QodmFyaWFibGVzKSxcbiAgICAgICAgICAgICAgICAgIHZhcmlhYmxlID0gZmlyc3RWYXJpYWJsZSwgLy8vXG4gICAgICAgICAgICAgICAgICB0eXBlID0gdmFyaWFibGUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgICAgICAgdGVybSA9IFRlcm0uZnJvbVRlcm1Ob2RlQW5kVHlwZSh0ZXJtTm9kZSwgdHlwZSk7XG5cbiAgICAgICAgICAgIHRlcm1zLnB1c2godGVybSk7XG5cbiAgICAgICAgICAgIHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICAgICAgICBpZiAoIXZlcmlmaWVkQWhlYWQpIHtcbiAgICAgICAgICAgICAgdGVybXMucG9wKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgIH0pO1xuXG4gICAgdGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IGdpdmVuVmFyaWFibGVWZXJpZmllZDsgIC8vL1xuXG4gICAgaWYgKHRlcm1WZXJpZmllZEFzVmFyaWFibGUpIHtcbiAgICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSBhcyBhIHZhcmlhYmxlLmAsIHRlcm1Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdGVybVZlcmlmaWVkQXNWYXJpYWJsZTtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3RvcnModGVybU5vZGUsIHRlcm1zLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9ycyA9IGZhbHNlO1xuXG4gIGNvbnN0IHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHRlcm1Ob2RlKTtcblxuICBpZiAodmFyaWFibGVOb2RlID09PSBudWxsKSB7XG4gICAgY29uc3QgY29uc3RydWN0b3JzID0gY29udGV4dC5nZXRDb25zdHJ1Y3RvcnMoKTtcblxuICAgIHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvcnMgPSBjb25zdHJ1Y3RvcnMuc29tZSgoY29uc3RydWN0b3IpID0+IHtcbiAgICAgIGNvbnN0IHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvciA9IHZlcmlmeVRlcm1BZ2FpbnN0Q29uc3RydWN0b3IodGVybU5vZGUsIHRlcm1zLCBjb25zdHJ1Y3RvciwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICBpZiAodGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9yKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvcnM7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVRlcm1BZ2FpbnN0Q29uc3RydWN0b3IodGVybU5vZGUsIHRlcm1zLCBjb25zdHJ1Y3RvciwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvcjtcblxuICBjb25zdCB0ZXJtU3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcodGVybU5vZGUpLFxuICAgICAgICBjb25zdHJ1Y3RvclN0cmluZyA9IGNvbnN0cnVjdG9yLmdldFN0cmluZygpO1xuXG4gIGNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gYWdhaW5zdCB0aGUgJyR7Y29uc3RydWN0b3JTdHJpbmd9JyBjb25zdHJ1Y3Rvci4uLmAsIHRlcm1Ob2RlKTtcblxuICBjb25zdCBjb25zdHJ1Y3RvclRlcm1Ob2RlID0gY29uc3RydWN0b3IuZ2V0VGVybU5vZGUoKSxcbiAgICAgICAgbm9uVGVybWluYWxOTmRlQSA9IHRlcm1Ob2RlLCAgLy8vXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZUIgPSBjb25zdHJ1Y3RvclRlcm1Ob2RlLCAgLy8vXG4gICAgICAgIG5vZGVWZXJpZmllZCA9IHRlcm1Ob2Rlc1ZlcmlmaWVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5OZGVBLCBub25UZXJtaW5hbE5vZGVCLCBjb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgbGV0IHZlcmlmaWVkQWhlYWQ7XG5cbiAgICAgICAgICBjb25zdCB0eXBlID0gY29uc3RydWN0b3IuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgICAgIHRlcm0gPSBUZXJtLmZyb21UZXJtTm9kZUFuZFR5cGUodGVybU5vZGUsIHR5cGUpO1xuXG4gICAgICAgICAgdGVybXMucHVzaCh0ZXJtKTtcblxuICAgICAgICAgIHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICAgICAgaWYgKCF2ZXJpZmllZEFoZWFkKSB7XG4gICAgICAgICAgICB0ZXJtcy5wb3AoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgfSk7XG5cbiAgdGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9yID0gbm9kZVZlcmlmaWVkOyAgLy8vXG5cbiAgaWYgKHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3Rvcikge1xuICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSBhZ2FpbnN0IHRoZSAnJHtjb25zdHJ1Y3RvclN0cmluZ30nIGNvbnN0cnVjdG9yLmAsIHRlcm1Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiB0ZXJtVmVyaWZpZWRBZ2FpbnN0Q29uc3RydWN0b3I7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5U3RhbmRhbG9uZVRlcm0iLCJ2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInZlcmlmeVRlcm0iLCJ0ZXJtTm9kZSIsInRlcm1zIiwiY29udGV4dCIsInZlcmlmeUFoZWFkIiwidGVybVZlcmlmaWVkIiwidGVybVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidmVyaWZ5VGVybUZ1bmN0aW9ucyIsInZlcmlmeVRlcm1Bc1ZhcmlhYmxlIiwidmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3RvcnMiLCJzb21lIiwidmVyaWZ5VGVybUZ1bmN0aW9uIiwiZGVidWciLCJmaWxlQ29udGV4dCIsInN0YW5kYWxvbmVUZXJtVmVyaWZpZWQiLCJPYmplY3QiLCJhc3NpZ24iLCJ0ZXJtTm9kZXNWZXJpZmllciIsInRlcm1WZXJpZmllZEFzVmFyaWFibGUiLCJ2YXJpYWJsZU5vZGUiLCJ2YXJpYWJsZXMiLCJnaXZlblZhcmlhYmxlVmVyaWZpZWQiLCJ2ZXJpZnlHaXZlblZhcmlhYmxlIiwidmVyaWZpZWRBaGVhZCIsImZpcnN0VmFyaWFibGUiLCJmaXJzdCIsInZhcmlhYmxlIiwidHlwZSIsImdldFR5cGUiLCJ0ZXJtIiwiVGVybSIsImZyb21UZXJtTm9kZUFuZFR5cGUiLCJwdXNoIiwicG9wIiwidGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9ycyIsImNvbnN0cnVjdG9ycyIsImdldENvbnN0cnVjdG9ycyIsImNvbnN0cnVjdG9yIiwidGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9yIiwidmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3RvciIsImNvbnN0cnVjdG9yU3RyaW5nIiwiZ2V0U3RyaW5nIiwiY29uc3RydWN0b3JUZXJtTm9kZSIsImdldFRlcm1Ob2RlIiwibm9uVGVybWluYWxOTmRlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJub2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQThEQSxPQUEwQjtlQUExQjs7SUF4QmdCQSxvQkFBb0I7ZUFBcEJBOzs7MkRBcENDOzREQUNhO29FQUNFO3FCQUVWO3FCQUNJOzs7Ozs7QUFFMUIsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXBDLFNBQVNDLFdBQVdDLFFBQVEsRUFBRUMsS0FBSyxFQUFFQyxPQUFPLEVBQUVDLFdBQVc7SUFDdkQsSUFBSUM7SUFFSixJQUFNQyxhQUFhSCxRQUFRSSxZQUFZLENBQUNOO0lBRXhDRSxRQUFRSyxLQUFLLENBQUMsQUFBQyxrQkFBNEIsT0FBWEYsWUFBVyxjQUFZTDtJQUV2RCxJQUFNUSxzQkFBc0I7UUFDMUJDO1FBQ0FDO0tBQ0Q7SUFFRE4sZUFBZUksb0JBQW9CRyxJQUFJLENBQUMsU0FBQ0M7UUFDdkMsSUFBTVIsZUFBZVEsbUJBQW1CWixVQUFVQyxPQUFPQyxTQUFTQztRQUVsRSxJQUFJQyxjQUFjO1lBQ2hCLE9BQU87UUFDVDtJQUNGO0lBRUEsSUFBSUEsY0FBYztRQUNoQkYsUUFBUVcsS0FBSyxDQUFDLEFBQUMsb0JBQThCLE9BQVhSLFlBQVcsWUFBVUw7SUFDekQ7SUFFQSxPQUFPSTtBQUNUO0FBRU8sU0FBU1IscUJBQXFCSSxRQUFRLEVBQUVjLFdBQVcsRUFBRVgsV0FBVztJQUNyRSxJQUFJWTtJQUVKLElBQU1WLGFBQWFTLFlBQVlSLFlBQVksQ0FBQ047SUFFNUNj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
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-verify-cli",
3
3
  "author": "James Smith",
4
- "version": "0.0.705",
4
+ "version": "0.0.706",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-verify-cli",
7
7
  "description": "Occam's Verifier",
package/src/ruleNames.js CHANGED
@@ -3,11 +3,9 @@
3
3
  export const TERM_RULE_NAME = "term";
4
4
  export const TYPE_RULE_NAME = "type";
5
5
  export const LABEL_RULE_NAME = "label";
6
- export const VARIABLE_RULE_NAME = "variable";
7
6
  export const ARGUMENT_RULE_NAME = "argument";
8
7
  export const SUBPROOF_RULE_NAME = "subproof";
9
8
  export const STATEMENT_RULE_NAME = "statement";
10
- export const META_TYPE_RULE_NAME = "meta-type";
11
9
  export const METAVARIABLE_RULE_NAME = "metavariable";
12
10
  export const METASTATEMENT_RULE_NAME = "metastatement";
13
11
  export const RULE_SUBPROOF_RULE_NAME = "ruleSubproof";
@@ -17,5 +15,4 @@ export const VARIABLE_DECLARATION_RULE_NAME = "variableDeclaration";
17
15
  export const UNQUALIFIED_STATEMENT_RULE_NAME = "unqualifiedStatement";
18
16
  export const CONSTRUCTOR_DECLARATION_RULE_NAME = "constructorDeclaration";
19
17
  export const QUALIFIED_METASTATEMENT_RULE_NAME = "qualifiedMetastatement";
20
- export const METAVARIABLE_DECLARATION_RULE_NAME = "metavariableDeclaration";
21
18
  export const UNQUALIFIED_METASTATEMENT_RULE_NAME = "unqualifiedMetastatement";
@@ -73,3 +73,31 @@ export function rightDifference(arrayA, arrayB) {
73
73
  }
74
74
  });
75
75
  }
76
+
77
+ export function areArraysEqual(arrayA, arrayB, callback) {
78
+ if (callback === undefined) {
79
+ callback = (elementA, elementB) => {
80
+ if (elementA === elementB) {
81
+ return true;
82
+ }
83
+ };
84
+ }
85
+
86
+ let arraysEqual = false;
87
+
88
+ const arrayALength = arrayA.length,
89
+ arrayBLength = arrayB.length;
90
+
91
+ if (arrayALength === arrayBLength) {
92
+ arraysEqual = arrayA.every((elementA, index) => {
93
+ const elementB = arrayB[index],
94
+ result = callback(elementA, elementB);
95
+
96
+ if (result) {
97
+ return true;
98
+ }
99
+ })
100
+ }
101
+
102
+ return arraysEqual;
103
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ import { areArraysEqual } from "../utilities/array";
4
+
5
+ export function terminalNodeMapFromNodes(nodes) {
6
+ const terminalNodeMap = {};
7
+
8
+ nodes.forEach((node, index) => {
9
+ const nodeTerminalNode = node.isTerminalNode();
10
+
11
+ if (nodeTerminalNode) {
12
+ const terminalNode = node; //
13
+
14
+ terminalNodeMap[index] = terminalNode;
15
+ }
16
+ });
17
+
18
+ return terminalNodeMap;
19
+ }
20
+
21
+ export function areTerminalNodeMapsEqual(terminalNodeMapA, terminalNodeMapB) {
22
+ let terminalNodeMapsEqual = false;
23
+
24
+ const indexesA = Object.keys(terminalNodeMapA), ///
25
+ indexesB = Object.keys(terminalNodeMapB), ///
26
+ terminalNodeMapKeysEqual = areArraysEqual(indexesA, indexesB);
27
+
28
+ if (terminalNodeMapKeysEqual) {
29
+ const terminalNodesA = Object.keys(terminalNodeMapA), ///
30
+ terminalNodesB = Object.keys(terminalNodeMapB), ///
31
+ terminalNodeMapValuesEqual = areArraysEqual(terminalNodesA, terminalNodesB, (terminalNodeA, terminalNodeB) => {
32
+ const matches = terminalNodeA.match(terminalNodeB);
33
+
34
+ if (matches) {
35
+ return true;
36
+ }
37
+ });
38
+
39
+ terminalNodeMapsEqual = terminalNodeMapValuesEqual; ///
40
+ }
41
+
42
+ return terminalNodeMapsEqual;
43
+ }
@@ -32,6 +32,28 @@ export default class NodeVerifier {
32
32
  return childNodesVerify;
33
33
  }
34
34
 
35
+ verifyTerminalNode(terminalNode, ...remainingArguments) {
36
+ let terminalNodeVerified;
37
+
38
+ const verifyAhead = remainingArguments.pop(), ///
39
+ verifiedAhead = verifyAhead(); ///
40
+
41
+ terminalNodeVerified = verifiedAhead; ///
42
+
43
+ return terminalNodeVerified;
44
+ }
45
+
46
+ verifyNonTerminalNode(nonTerminalNode, ...remainingArguments) {
47
+ let nonTerminalNodeVerified;
48
+
49
+ const childNodes = nonTerminalNode.getChildNodes(), ///
50
+ childNodesVerify = this.verifyChildNodes(childNodes, ...remainingArguments);
51
+
52
+ nonTerminalNodeVerified = childNodesVerify; ///
53
+
54
+ return nonTerminalNodeVerified;
55
+ }
56
+
35
57
  verifyChildNodesAhead(index, childNodes, ...remainingArguments) {
36
58
  let childNodesVerify;
37
59
 
@@ -46,11 +68,10 @@ export default class NodeVerifier {
46
68
  const childNode = childNodes[index],
47
69
  node = childNode, ///
48
70
  nodeVerified = this.verifyNode(node, ...remainingArguments, () => {
49
- index++;
50
-
51
71
  remainingArguments.push(verifyAhead);
52
72
 
53
- const childNodesVerifyAhead = this.verifyChildNodesAhead(index, childNodes, ...remainingArguments);
73
+ const aheadIndex = index + 1,
74
+ childNodesVerifyAhead = this.verifyChildNodesAhead(aheadIndex, childNodes, ...remainingArguments);
54
75
 
55
76
  return childNodesVerifyAhead;
56
77
  });
@@ -60,26 +81,4 @@ export default class NodeVerifier {
60
81
 
61
82
  return childNodesVerify;
62
83
  }
63
-
64
- verifyTerminalNode(terminalNode, ...remainingArguments) {
65
- let terminalNodeVerified;
66
-
67
- const verifyAhead = remainingArguments.pop(), ///
68
- verifiedAhead = verifyAhead(); ///
69
-
70
- terminalNodeVerified = verifiedAhead; ///
71
-
72
- return terminalNodeVerified;
73
- }
74
-
75
- verifyNonTerminalNode(nonTerminalNode, ...remainingArguments) {
76
- let nonTerminalNodeVerified;
77
-
78
- const childNodes = nonTerminalNode.getChildNodes(), ///
79
- childNodesVerify = this.verifyChildNodes(childNodes, ...remainingArguments);
80
-
81
- nonTerminalNodeVerified = childNodesVerify; ///
82
-
83
- return nonTerminalNodeVerified;
84
- }
85
84
  }
@@ -98,3 +98,4 @@ class TermNodesVerifier extends NodesVerifier {
98
98
  const termNodesVerifier = new TermNodesVerifier();
99
99
 
100
100
  export default termNodesVerifier;
101
+
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ import { terminalNodeMapFromNodes, areTerminalNodeMapsEqual } from "../utilities/terminalNodes";
4
+
3
5
  export default class NodesVerifier {
4
6
  verifyNode(nodeA, nodeB, ...remainingArguments) {
5
7
  let nodeVerified = false;
@@ -35,15 +37,51 @@ export default class NodesVerifier {
35
37
  childNodesBLength = childNodesB.length;
36
38
 
37
39
  if (childNodesALength === childNodesBLength) {
38
- const index = 0,
39
- childNodesVerifyAhead = this.verifyChildNodesAhead(index, childNodesA, childNodesB, ...remainingArguments);
40
+ const childTerminalNodeMapA = terminalNodeMapFromNodes(childNodesA),
41
+ childTerminalNodeMapB = terminalNodeMapFromNodes(childNodesB),
42
+ terminalNodeMapsEqual = areTerminalNodeMapsEqual(childTerminalNodeMapA, childTerminalNodeMapB);
43
+
44
+ if (terminalNodeMapsEqual) {
45
+ const index = 0,
46
+ childNodesVerifyAhead = this.verifyChildNodesAhead(index, childNodesA, childNodesB, ...remainingArguments);
40
47
 
41
- childNodesVerify = childNodesVerifyAhead; ///
48
+ childNodesVerify = childNodesVerifyAhead; ///
49
+ }
42
50
  }
43
51
 
44
52
  return childNodesVerify;
45
53
  }
46
54
 
55
+ verifyTerminalNode(terminalNodeA, terminalNodeB, ...remainingArguments) { ///
56
+ let terminalNodeVerified;
57
+
58
+ const verifyAhead = remainingArguments.pop(),
59
+ verifiedAhead = verifyAhead();
60
+
61
+ terminalNodeVerified = verifiedAhead; ///
62
+
63
+ return terminalNodeVerified;
64
+ }
65
+
66
+ verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, ...remainingArguments) {
67
+ let nonTerminalNodeVerified = false;
68
+
69
+ const nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), ///
70
+ nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName(); ///
71
+
72
+ if (nonTerminalNodeARuleName === nonTerminalNodeBRuleName) {
73
+ const nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(),
74
+ nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(),
75
+ childNodesA = nonTerminalNodeAChildNodes, ///
76
+ childNodesB = nonTerminalNodeBChildNodes, ///
77
+ childNodesVerify = this.verifyChildNodes(childNodesA, childNodesB, ...remainingArguments);
78
+
79
+ nonTerminalNodeVerified = childNodesVerify; ///
80
+ }
81
+
82
+ return nonTerminalNodeVerified;
83
+ }
84
+
47
85
  verifyChildNodesAhead(index, childNodesA, childNodesB, ...remainingArguments) {
48
86
  let childNodesVerify;
49
87
 
@@ -60,11 +98,10 @@ export default class NodesVerifier {
60
98
  nodeA = childNodeA, ///
61
99
  nodeB = childNodeB, ///
62
100
  nodeVerified = this.verifyNode(nodeA, nodeB, ...remainingArguments, () => {
63
- index++;
64
-
65
101
  remainingArguments.push(verifyAhead); ///
66
102
 
67
- const childNodesVerifyAhead = this.verifyChildNodesAhead(index, childNodesA, childNodesB, ...remainingArguments);
103
+ const aheadIndex = index + 1,
104
+ childNodesVerifyAhead = this.verifyChildNodesAhead(aheadIndex, childNodesA, childNodesB, ...remainingArguments);
68
105
 
69
106
  return childNodesVerifyAhead;
70
107
  });
@@ -74,38 +111,4 @@ export default class NodesVerifier {
74
111
 
75
112
  return childNodesVerify;
76
113
  }
77
-
78
- verifyTerminalNode(terminalNodeA, terminalNodeB, ...remainingArguments) {
79
- let terminalNodeVerified = false;
80
-
81
- const matches = terminalNodeA.match(terminalNodeB);
82
-
83
- if (matches) {
84
- const verifyAhead = remainingArguments.pop(),
85
- verifiedAhead = verifyAhead();
86
-
87
- terminalNodeVerified = verifiedAhead; ///
88
- }
89
-
90
- return terminalNodeVerified;
91
- }
92
-
93
- verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, ...remainingArguments) {
94
- let nonTerminalNodeVerified = false;
95
-
96
- const nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), ///
97
- nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName(); ///
98
-
99
- if (nonTerminalNodeARuleName === nonTerminalNodeBRuleName) {
100
- const nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(),
101
- nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(),
102
- childNodesA = nonTerminalNodeAChildNodes, ///
103
- childNodesB = nonTerminalNodeBChildNodes, ///
104
- childNodesVerify = this.verifyChildNodes(childNodesA, childNodesB, ...remainingArguments);
105
-
106
- nonTerminalNodeVerified = childNodesVerify; ///
107
- }
108
-
109
- return nonTerminalNodeVerified;
110
- }
111
114
  }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ export default function verifyGivenVariable(variableNode, variables, context, verifyAhead) {
4
+ let givenVariableVerified = false;
5
+
6
+ const variableString = context.nodeAsString(variableNode);
7
+
8
+ context.trace(`Verifying the '${variableString}' given variable...`, variableNode);
9
+
10
+ const variable = context.findVariableByVariableNode(variableNode);
11
+
12
+ if (variable !== null) {
13
+ let verifiedAhead;
14
+
15
+ variables.push(variable);
16
+
17
+ verifiedAhead = verifyAhead();
18
+
19
+ if (!verifiedAhead) {
20
+ variables.pop();
21
+ }
22
+
23
+ givenVariableVerified = verifiedAhead; ///
24
+ }
25
+
26
+ if (givenVariableVerified) {
27
+ context.debug(`...verified the '${variableString}' given variable.`, variableNode);
28
+ }
29
+
30
+ return givenVariableVerified;
31
+ }
@@ -2,9 +2,12 @@
2
2
 
3
3
  import Term from "../term";
4
4
  import termNodesVerifier from "../verifier/nodes/term";
5
- import verifyTermAsGivenVariable from "../verify/termAsGivenVariable";
5
+ import verifyGivenVariable from "../verify/givenVariable";
6
6
 
7
7
  import { first } from "../utilities/array";
8
+ import { nodeQuery } from "../utilities/query";
9
+
10
+ const variableNodeQuery = nodeQuery("/term/variable!");
8
11
 
9
12
  function verifyTerm(termNode, terms, context, verifyAhead) {
10
13
  let termVerified;
@@ -60,53 +63,61 @@ Object.assign(termNodesVerifier, {
60
63
  export default verifyTerm;
61
64
 
62
65
  function verifyTermAsVariable(termNode, terms, context, verifyAhead) {
63
- let termVerifiedAsVariable;
66
+ let termVerifiedAsVariable = false;
64
67
 
65
- const termString = context.nodeAsString(termNode);
68
+ const variableNode = variableNodeQuery(termNode);
66
69
 
67
- context.trace(`Verifying the '${termString}' term as a variable...`, termNode);
70
+ if (variableNode !== null) {
71
+ const termString = context.nodeAsString(termNode);
68
72
 
69
- const variables = [],
70
- termVerifiedAsGivenVariable = verifyTermAsGivenVariable(termNode, variables, context, () => {
71
- let verifiedAhead;
73
+ context.trace(`Verifying the '${termString}' term as a variable...`, termNode);
72
74
 
73
- const firstVariable = first(variables),
74
- variable = firstVariable, ///
75
- type = variable.getType(),
76
- term = Term.fromTermNodeAndType(termNode, type);
75
+ const variables = [],
76
+ givenVariableVerified = verifyGivenVariable(variableNode, variables, context, () => {
77
+ let verifiedAhead;
77
78
 
78
- terms.push(term);
79
+ const firstVariable = first(variables),
80
+ variable = firstVariable, ///
81
+ type = variable.getType(),
82
+ term = Term.fromTermNodeAndType(termNode, type);
79
83
 
80
- verifiedAhead = verifyAhead();
84
+ terms.push(term);
81
85
 
82
- if (!verifiedAhead) {
83
- terms.pop();
84
- }
86
+ verifiedAhead = verifyAhead();
85
87
 
86
- return verifiedAhead;
87
- });
88
+ if (!verifiedAhead) {
89
+ terms.pop();
90
+ }
91
+
92
+ return verifiedAhead;
93
+ });
88
94
 
89
- termVerifiedAsVariable = termVerifiedAsGivenVariable; ///
95
+ termVerifiedAsVariable = givenVariableVerified; ///
90
96
 
91
- if (termVerifiedAsVariable) {
92
- context.debug(`...verified the '${termString}' term as a variable.`, termNode);
97
+ if (termVerifiedAsVariable) {
98
+ context.debug(`...verified the '${termString}' term as a variable.`, termNode);
99
+ }
93
100
  }
94
101
 
95
102
  return termVerifiedAsVariable;
96
103
  }
97
104
 
98
105
  function verifyTermAgainstConstructors(termNode, terms, context, verifyAhead) {
99
- let termVerifiedAgainstConstructors;
106
+ let termVerifiedAgainstConstructors = false;
100
107
 
101
- const constructors = context.getConstructors();
108
+ const variableNode = variableNodeQuery(termNode);
102
109
 
103
- termVerifiedAgainstConstructors = constructors.some((constructor) => {
104
- const termVerifiedAgainstConstructor = verifyTermAgainstConstructor(termNode, terms, constructor, context, verifyAhead);
110
+ if (variableNode === null) {
111
+ const constructors = context.getConstructors();
105
112
 
106
- if (termVerifiedAgainstConstructor) {
107
- return true;
108
- }
109
- });
113
+ termVerifiedAgainstConstructors = constructors.some((constructor) => {
114
+ const termVerifiedAgainstConstructor = verifyTermAgainstConstructor(termNode, terms, constructor, context, verifyAhead);
115
+
116
+ if (termVerifiedAgainstConstructor) {
117
+ return true;
118
+ }
119
+ });
120
+ }
110
121
 
111
122
  return termVerifiedAgainstConstructors;
112
123
  }
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return verifyTermAsGivenVariable;
9
- }
10
- });
11
- var _query = require("../utilities/query");
12
- var variableNodeQuery = (0, _query.nodeQuery)("/term/variable!");
13
- function verifyTermAsGivenVariable(termNode, variables, context, verifyAhead) {
14
- var termVerifiedAsVariable = false;
15
- var variableNode = variableNodeQuery(termNode);
16
- if (variableNode !== null) {
17
- var termString = context.nodeAsString(termNode);
18
- context.trace("Verifying the '".concat(termString, "' term as a given variable..."), termNode);
19
- var variable = context.findVariableByVariableNode(variableNode);
20
- if (variable !== null) {
21
- var verifiedAhead;
22
- variables.push(variable);
23
- verifiedAhead = verifyAhead();
24
- if (!verifiedAhead) {
25
- variables.pop();
26
- }
27
- termVerifiedAsVariable = verifiedAhead; ///
28
- }
29
- if (termVerifiedAsVariable) {
30
- context.debug("...verified the '".concat(termString, "' term as a given variable."), termNode);
31
- }
32
- }
33
- return termVerifiedAsVariable;
34
- }
35
-
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybUFzR2l2ZW5WYXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtL3ZhcmlhYmxlIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5VGVybUFzR2l2ZW5WYXJpYWJsZSh0ZXJtTm9kZSwgdmFyaWFibGVzLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IGZhbHNlO1xuXG4gIGNvbnN0IHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHRlcm1Ob2RlKTtcblxuICBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdGVybVN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgIGNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gYXMgYSBnaXZlbiB2YXJpYWJsZS4uLmAsIHRlcm1Ob2RlKTtcblxuICAgIGNvbnN0IHZhcmlhYmxlID0gY29udGV4dC5maW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpO1xuXG4gICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICBsZXQgdmVyaWZpZWRBaGVhZDtcblxuICAgICAgdmFyaWFibGVzLnB1c2godmFyaWFibGUpO1xuXG4gICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgaWYgKCF2ZXJpZmllZEFoZWFkKSB7XG4gICAgICAgIHZhcmlhYmxlcy5wb3AoKTtcbiAgICAgIH1cblxuICAgICAgdGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICAgIH1cblxuICAgIGlmICh0ZXJtVmVyaWZpZWRBc1ZhcmlhYmxlKSB7XG4gICAgICBjb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gYXMgYSBnaXZlbiB2YXJpYWJsZS5gLCB0ZXJtTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRlcm1WZXJpZmllZEFzVmFyaWFibGU7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VGVybUFzR2l2ZW5WYXJpYWJsZSIsInZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidGVybU5vZGUiLCJ2YXJpYWJsZXMiLCJjb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJ0ZXJtVmVyaWZpZWRBc1ZhcmlhYmxlIiwidmFyaWFibGVOb2RlIiwidGVybVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidmFyaWFibGUiLCJmaW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSIsInZlcmlmaWVkQWhlYWQiLCJwdXNoIiwicG9wIiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBd0JBOzs7cUJBSkU7QUFFMUIsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXJCLFNBQVNGLDBCQUEwQkcsUUFBUSxFQUFFQyxTQUFTLEVBQUVDLE9BQU8sRUFBRUMsV0FBVztJQUN6RixJQUFJQyx5QkFBeUI7SUFFN0IsSUFBTUMsZUFBZVAsa0JBQWtCRTtJQUV2QyxJQUFJSyxpQkFBaUIsTUFBTTtRQUN6QixJQUFNQyxhQUFhSixRQUFRSyxZQUFZLENBQUNQO1FBRXhDRSxRQUFRTSxLQUFLLENBQUMsQUFBQyxrQkFBNEIsT0FBWEYsWUFBVyxrQ0FBZ0NOO1FBRTNFLElBQU1TLFdBQVdQLFFBQVFRLDBCQUEwQixDQUFDTDtRQUVwRCxJQUFJSSxhQUFhLE1BQU07WUFDckIsSUFBSUU7WUFFSlYsVUFBVVcsSUFBSSxDQUFDSDtZQUVmRSxnQkFBZ0JSO1lBRWhCLElBQUksQ0FBQ1EsZUFBZTtnQkFDbEJWLFVBQVVZLEdBQUc7WUFDZjtZQUVBVCx5QkFBeUJPLGVBQWUsR0FBRztRQUM3QztRQUVBLElBQUlQLHdCQUF3QjtZQUMxQkYsUUFBUVksS0FBSyxDQUFDLEFBQUMsb0JBQThCLE9BQVhSLFlBQVcsZ0NBQThCTjtRQUM3RTtJQUNGO0lBRUEsT0FBT0k7QUFDVCJ9
@@ -1,39 +0,0 @@
1
- "use strict";
2
-
3
- import { nodeQuery } from "../utilities/query";
4
-
5
- const variableNodeQuery = nodeQuery("/term/variable!");
6
-
7
- export default function verifyTermAsGivenVariable(termNode, variables, context, verifyAhead) {
8
- let termVerifiedAsVariable = false;
9
-
10
- const variableNode = variableNodeQuery(termNode);
11
-
12
- if (variableNode !== null) {
13
- const termString = context.nodeAsString(termNode);
14
-
15
- context.trace(`Verifying the '${termString}' term as a given variable...`, termNode);
16
-
17
- const variable = context.findVariableByVariableNode(variableNode);
18
-
19
- if (variable !== null) {
20
- let verifiedAhead;
21
-
22
- variables.push(variable);
23
-
24
- verifiedAhead = verifyAhead();
25
-
26
- if (!verifiedAhead) {
27
- variables.pop();
28
- }
29
-
30
- termVerifiedAsVariable = verifiedAhead; ///
31
- }
32
-
33
- if (termVerifiedAsVariable) {
34
- context.debug(`...verified the '${termString}' term as a given variable.`, termNode);
35
- }
36
- }
37
-
38
- return termVerifiedAsVariable;
39
- }