occam-verify-cli 0.0.700 → 0.0.704

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.
Files changed (86) hide show
  1. package/lib/assignment/equality.js +2 -2
  2. package/lib/assignment/metavariable.js +2 -2
  3. package/lib/assignment/variable.js +2 -2
  4. package/lib/collection.js +44 -6
  5. package/lib/conclusion.js +6 -6
  6. package/lib/consequent.js +4 -4
  7. package/lib/context/file.js +9 -2
  8. package/lib/context/local.js +27 -64
  9. package/lib/context/localMeta.js +8 -1
  10. package/lib/equality.js +20 -4
  11. package/lib/premise.js +9 -9
  12. package/lib/supposition.js +4 -4
  13. package/lib/utilities/collection.js +27 -13
  14. package/lib/verifier/node/statementAsCombinator.js +7 -17
  15. package/lib/verifier/node/termAsConstructor.js +10 -45
  16. package/lib/verifier/nodes/equality.js +169 -0
  17. package/lib/verifier/nodes/metastatementForMetavariable.js +6 -7
  18. package/lib/verifier/nodes/statement.js +12 -4
  19. package/lib/verifier/nodes/statementForMetavariable.js +6 -7
  20. package/lib/verifier/nodes/termForVariable.js +19 -20
  21. package/lib/verify/consequent.js +3 -3
  22. package/lib/verify/derivation.js +28 -6
  23. package/lib/verify/equality.js +9 -4
  24. package/lib/verify/givenType.js +32 -0
  25. package/lib/verify/metastatement.js +7 -25
  26. package/lib/verify/statement/qualified.js +135 -37
  27. package/lib/verify/statement.js +44 -33
  28. package/lib/verify/supposition.js +13 -8
  29. package/lib/verify/suppositions.js +2 -11
  30. package/lib/verify/term.js +35 -50
  31. package/lib/verify/termAndGivenType.js +39 -0
  32. package/lib/verify/termAsGivenVariable.js +36 -0
  33. package/lib/verify/type.js +28 -4
  34. package/lib/verify/typeAssertion.js +35 -22
  35. package/package.json +1 -1
  36. package/src/assignment/equality.js +2 -2
  37. package/src/assignment/metavariable.js +2 -2
  38. package/src/assignment/variable.js +2 -2
  39. package/src/collection.js +55 -5
  40. package/src/conclusion.js +6 -6
  41. package/src/consequent.js +4 -4
  42. package/src/context/file.js +7 -1
  43. package/src/context/local.js +33 -78
  44. package/src/context/localMeta.js +6 -0
  45. package/src/equality.js +23 -2
  46. package/src/premise.js +10 -10
  47. package/src/supposition.js +3 -3
  48. package/src/utilities/collection.js +31 -11
  49. package/src/verifier/node/statementAsCombinator.js +5 -24
  50. package/src/verifier/node/termAsConstructor.js +6 -47
  51. package/src/verifier/nodes/equality.js +47 -0
  52. package/src/verifier/nodes/metastatementForMetavariable.js +10 -10
  53. package/src/verifier/nodes/statement.js +1 -1
  54. package/src/verifier/nodes/statementForMetavariable.js +10 -10
  55. package/src/verifier/nodes/termForVariable.js +30 -30
  56. package/src/verify/consequent.js +4 -4
  57. package/src/verify/derivation.js +37 -8
  58. package/src/verify/equality.js +12 -3
  59. package/src/verify/{standaloneType.js → givenType.js} +7 -7
  60. package/src/verify/metastatement.js +8 -35
  61. package/src/verify/statement/qualified.js +194 -39
  62. package/src/verify/statement.js +65 -44
  63. package/src/verify/supposition.js +15 -8
  64. package/src/verify/suppositions.js +1 -13
  65. package/src/verify/term.js +42 -58
  66. package/src/verify/termAndGivenType.js +37 -0
  67. package/src/verify/termAsGivenVariable.js +39 -0
  68. package/src/verify/type.js +26 -0
  69. package/src/verify/typeAssertion.js +50 -28
  70. package/lib/verifier/nodes/metastatementForMetavariable/conclusion.js +0 -114
  71. package/lib/verifier/nodes/metastatementForMetavariable/premise.js +0 -114
  72. package/lib/verifier/nodes/statementForMetavariable/conclusion.js +0 -114
  73. package/lib/verifier/nodes/statementForMetavariable/premise.js +0 -114
  74. package/lib/verifier/nodes/termForVariable/consequent.js +0 -114
  75. package/lib/verifier/nodes/termForVariable/supposition.js +0 -114
  76. package/lib/verify/standaloneType.js +0 -32
  77. package/lib/verify/termAndStandaloneType.js +0 -39
  78. package/lib/verify/termAsVariableAndStandaloneType.js +0 -39
  79. package/src/verifier/nodes/metastatementForMetavariable/conclusion.js +0 -11
  80. package/src/verifier/nodes/metastatementForMetavariable/premise.js +0 -11
  81. package/src/verifier/nodes/statementForMetavariable/conclusion.js +0 -11
  82. package/src/verifier/nodes/statementForMetavariable/premise.js +0 -11
  83. package/src/verifier/nodes/termForVariable/consequent.js +0 -11
  84. package/src/verifier/nodes/termForVariable/supposition.js +0 -11
  85. package/src/verify/termAndStandaloneType.js +0 -37
  86. package/src/verify/termAsVariableAndStandaloneType.js +0 -38
@@ -9,12 +9,12 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
+ areTermNodesEqual: function() {
13
+ return areTermNodesEqual;
14
+ },
12
15
  findCollectionByTerm: function() {
13
16
  return findCollectionByTerm;
14
17
  },
15
- findCollectionByTerms: function() {
16
- return findCollectionByTerms;
17
- },
18
18
  findCollectionByType: function() {
19
19
  return findCollectionByType;
20
20
  },
@@ -48,8 +48,22 @@ function _unsupported_iterable_to_array(o, minLen) {
48
48
  if (n === "Map" || n === "Set") return Array.from(n);
49
49
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
50
50
  }
51
- function mergeCollections(collectionsA, collectionsB) {
52
- var typesA = typesFromCollections(collectionsA), typesB = typesFromCollections(collectionsB), types = _to_consumable_array(typesA).concat(_to_consumable_array(typesB));
51
+ function areTermNodesEqual(leftTermNode, rightTermNode, collections) {
52
+ var termNodesEqual;
53
+ var leftTermNodeMatchesRightTermNode = leftTermNode.match(rightTermNode);
54
+ if (leftTermNodeMatchesRightTermNode) {
55
+ termNodesEqual = true;
56
+ } else {
57
+ var termNodes = [
58
+ leftTermNode,
59
+ rightTermNode
60
+ ], collection = findCollectionByTermNodes(collections, termNodes);
61
+ termNodesEqual = collection !== null;
62
+ }
63
+ return termNodesEqual;
64
+ }
65
+ function mergeCollections(collectionsA, collectionsB, localContext) {
66
+ var typesA = typesFromCollections(collectionsA, localContext), typesB = typesFromCollections(collectionsB, localContext), types = _to_consumable_array(typesA).concat(_to_consumable_array(typesB));
53
67
  (0, _array.compress)(types, function(typeA, typeB) {
54
68
  if (typeA === typeB) {
55
69
  return true;
@@ -57,7 +71,7 @@ function mergeCollections(collectionsA, collectionsB) {
57
71
  });
58
72
  var collections = types.map(function(type) {
59
73
  var collection;
60
- var collectionA = findCollectionByType(collectionsA, type), collectionB = findCollectionByType(collectionsB, type);
74
+ var collectionA = findCollectionByType(collectionsA, type, localContext), collectionB = findCollectionByType(collectionsB, type, localContext);
61
75
  if (collectionA !== null && collectionB !== null) {
62
76
  collection = Collection.fromCollections(collectionA, collectionB);
63
77
  } else if (collectionA !== null) {
@@ -69,9 +83,9 @@ function mergeCollections(collectionsA, collectionsB) {
69
83
  });
70
84
  return collections;
71
85
  }
72
- function findCollectionByType(collections, type) {
86
+ function findCollectionByType(collections, type, localContext) {
73
87
  var collection = collections.find(function(collection) {
74
- var collectionMatchesType = collection.matchType(type);
88
+ var collectionMatchesType = collection.matchType(type, localContext);
75
89
  if (collectionMatchesType) {
76
90
  return true;
77
91
  }
@@ -87,21 +101,21 @@ function findCollectionByTerm(collections, term) {
87
101
  }) || null;
88
102
  return collection;
89
103
  }
90
- function findCollectionByTerms(collections, terms) {
104
+ function findCollectionByTermNodes(collections, termNodes) {
91
105
  var collection = collections.find(function(collection) {
92
- var collectionMatchesTerms = collection.matchTerms(terms);
106
+ var collectionMatchesTerms = collection.matchTermNodes(termNodes);
93
107
  if (collectionMatchesTerms) {
94
108
  return true;
95
109
  }
96
110
  }) || null;
97
111
  return collection;
98
112
  }
99
- function typesFromCollections(collections) {
113
+ function typesFromCollections(collections, localContext) {
100
114
  var types = collections.map(function(collection) {
101
- var type = collection.getType();
115
+ var type = collection.getType(localContext);
102
116
  return type;
103
117
  });
104
118
  return types;
105
119
  }
106
120
 
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29sbGVjdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgY29tcHJlc3MgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXJnZUNvbGxlY3Rpb25zKGNvbGxlY3Rpb25zQSwgY29sbGVjdGlvbnNCKSB7XG4gIGNvbnN0IHR5cGVzQSA9IHR5cGVzRnJvbUNvbGxlY3Rpb25zKGNvbGxlY3Rpb25zQSksXG4gICAgICAgIHR5cGVzQiA9IHR5cGVzRnJvbUNvbGxlY3Rpb25zKGNvbGxlY3Rpb25zQiksXG4gICAgICAgIHR5cGVzID0gW1xuICAgICAgICAgIC4uLnR5cGVzQSxcbiAgICAgICAgICAuLi50eXBlc0JcbiAgICAgICAgXTtcblxuICBjb21wcmVzcyh0eXBlcywgKHR5cGVBLCB0eXBlQikgPT4ge1xuICAgIGlmICh0eXBlQSA9PT0gdHlwZUIpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgY29uc3QgY29sbGVjdGlvbnMgPSB0eXBlcy5tYXAoKHR5cGUpID0+IHtcbiAgICBsZXQgY29sbGVjdGlvbjtcblxuICAgIGNvbnN0IGNvbGxlY3Rpb25BID0gZmluZENvbGxlY3Rpb25CeVR5cGUoY29sbGVjdGlvbnNBLCB0eXBlKSxcbiAgICAgICAgICBjb2xsZWN0aW9uQiA9IGZpbmRDb2xsZWN0aW9uQnlUeXBlKGNvbGxlY3Rpb25zQiwgdHlwZSk7XG5cbiAgICBpZiAoKGNvbGxlY3Rpb25BICE9PSBudWxsKSAmJiAoY29sbGVjdGlvbkIgIT09IG51bGwpKSB7XG4gICAgICBjb2xsZWN0aW9uID0gQ29sbGVjdGlvbi5mcm9tQ29sbGVjdGlvbnMoY29sbGVjdGlvbkEsIGNvbGxlY3Rpb25CKTtcbiAgICB9IGVsc2UgaWYgKGNvbGxlY3Rpb25BICE9PSBudWxsKSB7XG4gICAgICBjb2xsZWN0aW9uID0gY29sbGVjdGlvbkE7IC8vL1xuICAgIH0gZWxzZSBpZiAoY29sbGVjdGlvbkIgIT09IG51bGwpIHtcbiAgICAgIGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9uQjsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbGxlY3Rpb247XG4gIH0pO1xuXG4gIHJldHVybiBjb2xsZWN0aW9ucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRDb2xsZWN0aW9uQnlUeXBlKGNvbGxlY3Rpb25zLCB0eXBlKSB7XG4gIGNvbnN0IGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9ucy5maW5kKChjb2xsZWN0aW9uKSA9PiB7XG4gICAgY29uc3QgY29sbGVjdGlvbk1hdGNoZXNUeXBlID0gY29sbGVjdGlvbi5tYXRjaFR5cGUodHlwZSk7XG5cbiAgICBpZiAoY29sbGVjdGlvbk1hdGNoZXNUeXBlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pIHx8IG51bGw7XG5cbiAgcmV0dXJuIGNvbGxlY3Rpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kQ29sbGVjdGlvbkJ5VGVybShjb2xsZWN0aW9ucywgdGVybSkge1xuICBjb25zdCBjb2xsZWN0aW9uID0gY29sbGVjdGlvbnMuZmluZCgoY29sbGVjdGlvbikgPT4ge1xuICAgIGNvbnN0IGNvbGxlY3Rpb25NYXRjaGVzVGVybSA9IGNvbGxlY3Rpb24ubWF0Y2hUZXJtKHRlcm0pO1xuXG4gICAgaWYgKGNvbGxlY3Rpb25NYXRjaGVzVGVybSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KSB8fCBudWxsO1xuXG4gIHJldHVybiBjb2xsZWN0aW9uO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmluZENvbGxlY3Rpb25CeVRlcm1zKGNvbGxlY3Rpb25zLCB0ZXJtcykge1xuICBjb25zdCBjb2xsZWN0aW9uID0gY29sbGVjdGlvbnMuZmluZCgoY29sbGVjdGlvbikgPT4ge1xuICAgIGNvbnN0IGNvbGxlY3Rpb25NYXRjaGVzVGVybXMgPSBjb2xsZWN0aW9uLm1hdGNoVGVybXModGVybXMpO1xuXG4gICAgaWYgKGNvbGxlY3Rpb25NYXRjaGVzVGVybXMpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICByZXR1cm4gY29sbGVjdGlvbjtcbn1cblxuZnVuY3Rpb24gdHlwZXNGcm9tQ29sbGVjdGlvbnMoY29sbGVjdGlvbnMpIHtcbiAgY29uc3QgdHlwZXMgPSBjb2xsZWN0aW9ucy5tYXAoKGNvbGxlY3Rpb24pID0+IHtcbiAgICBjb25zdCB0eXBlID0gY29sbGVjdGlvbi5nZXRUeXBlKCk7XG5cbiAgICByZXR1cm4gdHlwZTtcbiAgfSk7XG5cbiAgcmV0dXJuIHR5cGVzO1xufVxuIl0sIm5hbWVzIjpbImZpbmRDb2xsZWN0aW9uQnlUZXJtIiwiZmluZENvbGxlY3Rpb25CeVRlcm1zIiwiZmluZENvbGxlY3Rpb25CeVR5cGUiLCJtZXJnZUNvbGxlY3Rpb25zIiwiY29sbGVjdGlvbnNBIiwiY29sbGVjdGlvbnNCIiwidHlwZXNBIiwidHlwZXNGcm9tQ29sbGVjdGlvbnMiLCJ0eXBlc0IiLCJ0eXBlcyIsImNvbXByZXNzIiwidHlwZUEiLCJ0eXBlQiIsImNvbGxlY3Rpb25zIiwibWFwIiwidHlwZSIsImNvbGxlY3Rpb24iLCJjb2xsZWN0aW9uQSIsImNvbGxlY3Rpb25CIiwiQ29sbGVjdGlvbiIsImZyb21Db2xsZWN0aW9ucyIsImZpbmQiLCJjb2xsZWN0aW9uTWF0Y2hlc1R5cGUiLCJtYXRjaFR5cGUiLCJ0ZXJtIiwiY29sbGVjdGlvbk1hdGNoZXNUZXJtIiwibWF0Y2hUZXJtIiwidGVybXMiLCJjb2xsZWN0aW9uTWF0Y2hlc1Rlcm1zIiwibWF0Y2hUZXJtcyIsImdldFR5cGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQWtEZ0JBLG9CQUFvQjtlQUFwQkE7O0lBWUFDLHFCQUFxQjtlQUFyQkE7O0lBeEJBQyxvQkFBb0I7ZUFBcEJBOztJQWxDQUMsZ0JBQWdCO2VBQWhCQTs7O3FCQUZTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsQixTQUFTQSxpQkFBaUJDLFlBQVksRUFBRUMsWUFBWTtJQUN6RCxJQUFNQyxTQUFTQyxxQkFBcUJILGVBQzlCSSxTQUFTRCxxQkFBcUJGLGVBQzlCSSxRQUFRLEFBQ04scUJBQUdILGVBQ0gscUJBQUdFO0lBR1hFLElBQUFBLGVBQVEsRUFBQ0QsT0FBTyxTQUFDRSxPQUFPQztRQUN0QixJQUFJRCxVQUFVQyxPQUFPO1lBQ25CLE9BQU87UUFDVDtJQUNGO0lBRUEsSUFBTUMsY0FBY0osTUFBTUssR0FBRyxDQUFDLFNBQUNDO1FBQzdCLElBQUlDO1FBRUosSUFBTUMsY0FBY2YscUJBQXFCRSxjQUFjVyxPQUNqREcsY0FBY2hCLHFCQUFxQkcsY0FBY1U7UUFFdkQsSUFBSSxBQUFDRSxnQkFBZ0IsUUFBVUMsZ0JBQWdCLE1BQU87WUFDcERGLGFBQWFHLFdBQVdDLGVBQWUsQ0FBQ0gsYUFBYUM7UUFDdkQsT0FBTyxJQUFJRCxnQkFBZ0IsTUFBTTtZQUMvQkQsYUFBYUMsYUFBYSxHQUFHO1FBQy9CLE9BQU8sSUFBSUMsZ0JBQWdCLE1BQU07WUFDL0JGLGFBQWFFLGFBQWEsR0FBRztRQUMvQjtRQUVBLE9BQU9GO0lBQ1Q7SUFFQSxPQUFPSDtBQUNUO0FBRU8sU0FBU1gscUJBQXFCVyxXQUFXLEVBQUVFLElBQUk7SUFDcEQsSUFBTUMsYUFBYUgsWUFBWVEsSUFBSSxDQUFDLFNBQUNMO1FBQ25DLElBQU1NLHdCQUF3Qk4sV0FBV08sU0FBUyxDQUFDUjtRQUVuRCxJQUFJTyx1QkFBdUI7WUFDekIsT0FBTztRQUNUO0lBQ0YsTUFBTTtJQUVOLE9BQU9OO0FBQ1Q7QUFFTyxTQUFTaEIscUJBQXFCYSxXQUFXLEVBQUVXLElBQUk7SUFDcEQsSUFBTVIsYUFBYUgsWUFBWVEsSUFBSSxDQUFDLFNBQUNMO1FBQ25DLElBQU1TLHdCQUF3QlQsV0FBV1UsU0FBUyxDQUFDRjtRQUVuRCxJQUFJQyx1QkFBdUI7WUFDekIsT0FBTztRQUNUO0lBQ0YsTUFBTTtJQUVOLE9BQU9UO0FBQ1Q7QUFFTyxTQUFTZixzQkFBc0JZLFdBQVcsRUFBRWMsS0FBSztJQUN0RCxJQUFNWCxhQUFhSCxZQUFZUSxJQUFJLENBQUMsU0FBQ0w7UUFDbkMsSUFBTVkseUJBQXlCWixXQUFXYSxVQUFVLENBQUNGO1FBRXJELElBQUlDLHdCQUF3QjtZQUMxQixPQUFPO1FBQ1Q7SUFDRixNQUFNO0lBRU4sT0FBT1o7QUFDVDtBQUVBLFNBQVNULHFCQUFxQk0sV0FBVztJQUN2QyxJQUFNSixRQUFRSSxZQUFZQyxHQUFHLENBQUMsU0FBQ0U7UUFDN0IsSUFBTUQsT0FBT0MsV0FBV2MsT0FBTztRQUUvQixPQUFPZjtJQUNUO0lBRUEsT0FBT047QUFDVCJ9
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29sbGVjdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgY29tcHJlc3MgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBhcmVUZXJtTm9kZXNFcXVhbChsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIGNvbGxlY3Rpb25zKSB7XG4gIGxldCB0ZXJtTm9kZXNFcXVhbDtcblxuICBjb25zdCBsZWZ0VGVybU5vZGVNYXRjaGVzUmlnaHRUZXJtTm9kZSA9IGxlZnRUZXJtTm9kZS5tYXRjaChyaWdodFRlcm1Ob2RlKTtcblxuICBpZiAobGVmdFRlcm1Ob2RlTWF0Y2hlc1JpZ2h0VGVybU5vZGUpIHtcbiAgICB0ZXJtTm9kZXNFcXVhbCA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdGVybU5vZGVzID0gW1xuICAgICAgICAgICAgbGVmdFRlcm1Ob2RlLFxuICAgICAgICAgICAgcmlnaHRUZXJtTm9kZVxuICAgICAgICAgIF0sXG4gICAgICAgICAgY29sbGVjdGlvbiA9IGZpbmRDb2xsZWN0aW9uQnlUZXJtTm9kZXMoY29sbGVjdGlvbnMsIHRlcm1Ob2Rlcyk7XG5cbiAgICB0ZXJtTm9kZXNFcXVhbCA9IChjb2xsZWN0aW9uICE9PSBudWxsKTtcbiAgfVxuXG4gIHJldHVybiB0ZXJtTm9kZXNFcXVhbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlQ29sbGVjdGlvbnMoY29sbGVjdGlvbnNBLCBjb2xsZWN0aW9uc0IsIGxvY2FsQ29udGV4dCkge1xuICBjb25zdCB0eXBlc0EgPSB0eXBlc0Zyb21Db2xsZWN0aW9ucyhjb2xsZWN0aW9uc0EsIGxvY2FsQ29udGV4dCksXG4gICAgICAgIHR5cGVzQiA9IHR5cGVzRnJvbUNvbGxlY3Rpb25zKGNvbGxlY3Rpb25zQiwgbG9jYWxDb250ZXh0KSxcbiAgICAgICAgdHlwZXMgPSBbXG4gICAgICAgICAgLi4udHlwZXNBLFxuICAgICAgICAgIC4uLnR5cGVzQlxuICAgICAgICBdO1xuXG4gIGNvbXByZXNzKHR5cGVzLCAodHlwZUEsIHR5cGVCKSA9PiB7XG4gICAgaWYgKHR5cGVBID09PSB0eXBlQikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICBjb25zdCBjb2xsZWN0aW9ucyA9IHR5cGVzLm1hcCgodHlwZSkgPT4ge1xuICAgIGxldCBjb2xsZWN0aW9uO1xuXG4gICAgY29uc3QgY29sbGVjdGlvbkEgPSBmaW5kQ29sbGVjdGlvbkJ5VHlwZShjb2xsZWN0aW9uc0EsIHR5cGUsIGxvY2FsQ29udGV4dCksXG4gICAgICAgICAgY29sbGVjdGlvbkIgPSBmaW5kQ29sbGVjdGlvbkJ5VHlwZShjb2xsZWN0aW9uc0IsIHR5cGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoKGNvbGxlY3Rpb25BICE9PSBudWxsKSAmJiAoY29sbGVjdGlvbkIgIT09IG51bGwpKSB7XG4gICAgICBjb2xsZWN0aW9uID0gQ29sbGVjdGlvbi5mcm9tQ29sbGVjdGlvbnMoY29sbGVjdGlvbkEsIGNvbGxlY3Rpb25CKTtcbiAgICB9IGVsc2UgaWYgKGNvbGxlY3Rpb25BICE9PSBudWxsKSB7XG4gICAgICBjb2xsZWN0aW9uID0gY29sbGVjdGlvbkE7IC8vL1xuICAgIH0gZWxzZSBpZiAoY29sbGVjdGlvbkIgIT09IG51bGwpIHtcbiAgICAgIGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9uQjsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbGxlY3Rpb247XG4gIH0pO1xuXG4gIHJldHVybiBjb2xsZWN0aW9ucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRDb2xsZWN0aW9uQnlUeXBlKGNvbGxlY3Rpb25zLCB0eXBlLCBsb2NhbENvbnRleHQpIHtcbiAgY29uc3QgY29sbGVjdGlvbiA9IGNvbGxlY3Rpb25zLmZpbmQoKGNvbGxlY3Rpb24pID0+IHtcbiAgICBjb25zdCBjb2xsZWN0aW9uTWF0Y2hlc1R5cGUgPSBjb2xsZWN0aW9uLm1hdGNoVHlwZSh0eXBlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKGNvbGxlY3Rpb25NYXRjaGVzVHlwZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KSB8fCBudWxsO1xuXG4gIHJldHVybiBjb2xsZWN0aW9uO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmluZENvbGxlY3Rpb25CeVRlcm0oY29sbGVjdGlvbnMsIHRlcm0pIHtcbiAgY29uc3QgY29sbGVjdGlvbiA9IGNvbGxlY3Rpb25zLmZpbmQoKGNvbGxlY3Rpb24pID0+IHtcbiAgICBjb25zdCBjb2xsZWN0aW9uTWF0Y2hlc1Rlcm0gPSBjb2xsZWN0aW9uLm1hdGNoVGVybSh0ZXJtKTtcblxuICAgIGlmIChjb2xsZWN0aW9uTWF0Y2hlc1Rlcm0pIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICByZXR1cm4gY29sbGVjdGlvbjtcbn1cblxuZnVuY3Rpb24gZmluZENvbGxlY3Rpb25CeVRlcm1Ob2Rlcyhjb2xsZWN0aW9ucywgdGVybU5vZGVzKSB7XG4gIGNvbnN0IGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9ucy5maW5kKChjb2xsZWN0aW9uKSA9PiB7XG4gICAgY29uc3QgY29sbGVjdGlvbk1hdGNoZXNUZXJtcyA9IGNvbGxlY3Rpb24ubWF0Y2hUZXJtTm9kZXModGVybU5vZGVzKTtcblxuICAgIGlmIChjb2xsZWN0aW9uTWF0Y2hlc1Rlcm1zKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pIHx8IG51bGw7XG5cbiAgcmV0dXJuIGNvbGxlY3Rpb247XG59XG5cbmZ1bmN0aW9uIHR5cGVzRnJvbUNvbGxlY3Rpb25zKGNvbGxlY3Rpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgY29uc3QgdHlwZXMgPSBjb2xsZWN0aW9ucy5tYXAoKGNvbGxlY3Rpb24pID0+IHtcbiAgICBjb25zdCB0eXBlID0gY29sbGVjdGlvbi5nZXRUeXBlKGxvY2FsQ29udGV4dCk7XG5cbiAgICByZXR1cm4gdHlwZTtcbiAgfSk7XG5cbiAgcmV0dXJuIHR5cGVzO1xufVxuIl0sIm5hbWVzIjpbImFyZVRlcm1Ob2Rlc0VxdWFsIiwiZmluZENvbGxlY3Rpb25CeVRlcm0iLCJmaW5kQ29sbGVjdGlvbkJ5VHlwZSIsIm1lcmdlQ29sbGVjdGlvbnMiLCJsZWZ0VGVybU5vZGUiLCJyaWdodFRlcm1Ob2RlIiwiY29sbGVjdGlvbnMiLCJ0ZXJtTm9kZXNFcXVhbCIsImxlZnRUZXJtTm9kZU1hdGNoZXNSaWdodFRlcm1Ob2RlIiwibWF0Y2giLCJ0ZXJtTm9kZXMiLCJjb2xsZWN0aW9uIiwiZmluZENvbGxlY3Rpb25CeVRlcm1Ob2RlcyIsImNvbGxlY3Rpb25zQSIsImNvbGxlY3Rpb25zQiIsImxvY2FsQ29udGV4dCIsInR5cGVzQSIsInR5cGVzRnJvbUNvbGxlY3Rpb25zIiwidHlwZXNCIiwidHlwZXMiLCJjb21wcmVzcyIsInR5cGVBIiwidHlwZUIiLCJtYXAiLCJ0eXBlIiwiY29sbGVjdGlvbkEiLCJjb2xsZWN0aW9uQiIsIkNvbGxlY3Rpb24iLCJmcm9tQ29sbGVjdGlvbnMiLCJmaW5kIiwiY29sbGVjdGlvbk1hdGNoZXNUeXBlIiwibWF0Y2hUeXBlIiwidGVybSIsImNvbGxlY3Rpb25NYXRjaGVzVGVybSIsIm1hdGNoVGVybSIsImNvbGxlY3Rpb25NYXRjaGVzVGVybXMiLCJtYXRjaFRlcm1Ob2RlcyIsImdldFR5cGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUlnQkEsaUJBQWlCO2VBQWpCQTs7SUFrRUFDLG9CQUFvQjtlQUFwQkE7O0lBWkFDLG9CQUFvQjtlQUFwQkE7O0lBbENBQyxnQkFBZ0I7ZUFBaEJBOzs7cUJBdEJTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsQixTQUFTSCxrQkFBa0JJLFlBQVksRUFBRUMsYUFBYSxFQUFFQyxXQUFXO0lBQ3hFLElBQUlDO0lBRUosSUFBTUMsbUNBQW1DSixhQUFhSyxLQUFLLENBQUNKO0lBRTVELElBQUlHLGtDQUFrQztRQUNwQ0QsaUJBQWlCO0lBQ25CLE9BQU87UUFDTCxJQUFNRyxZQUFZO1lBQ1ZOO1lBQ0FDO1NBQ0QsRUFDRE0sYUFBYUMsMEJBQTBCTixhQUFhSTtRQUUxREgsaUJBQWtCSSxlQUFlO0lBQ25DO0lBRUEsT0FBT0o7QUFDVDtBQUVPLFNBQVNKLGlCQUFpQlUsWUFBWSxFQUFFQyxZQUFZLEVBQUVDLFlBQVk7SUFDdkUsSUFBTUMsU0FBU0MscUJBQXFCSixjQUFjRSxlQUM1Q0csU0FBU0QscUJBQXFCSCxjQUFjQyxlQUM1Q0ksUUFBUSxBQUNOLHFCQUFHSCxlQUNILHFCQUFHRTtJQUdYRSxJQUFBQSxlQUFRLEVBQUNELE9BQU8sU0FBQ0UsT0FBT0M7UUFDdEIsSUFBSUQsVUFBVUMsT0FBTztZQUNuQixPQUFPO1FBQ1Q7SUFDRjtJQUVBLElBQU1oQixjQUFjYSxNQUFNSSxHQUFHLENBQUMsU0FBQ0M7UUFDN0IsSUFBSWI7UUFFSixJQUFNYyxjQUFjdkIscUJBQXFCVyxjQUFjVyxNQUFNVCxlQUN2RFcsY0FBY3hCLHFCQUFxQlksY0FBY1UsTUFBTVQ7UUFFN0QsSUFBSSxBQUFDVSxnQkFBZ0IsUUFBVUMsZ0JBQWdCLE1BQU87WUFDcERmLGFBQWFnQixXQUFXQyxlQUFlLENBQUNILGFBQWFDO1FBQ3ZELE9BQU8sSUFBSUQsZ0JBQWdCLE1BQU07WUFDL0JkLGFBQWFjLGFBQWEsR0FBRztRQUMvQixPQUFPLElBQUlDLGdCQUFnQixNQUFNO1lBQy9CZixhQUFhZSxhQUFhLEdBQUc7UUFDL0I7UUFFQSxPQUFPZjtJQUNUO0lBRUEsT0FBT0w7QUFDVDtBQUVPLFNBQVNKLHFCQUFxQkksV0FBVyxFQUFFa0IsSUFBSSxFQUFFVCxZQUFZO0lBQ2xFLElBQU1KLGFBQWFMLFlBQVl1QixJQUFJLENBQUMsU0FBQ2xCO1FBQ25DLElBQU1tQix3QkFBd0JuQixXQUFXb0IsU0FBUyxDQUFDUCxNQUFNVDtRQUV6RCxJQUFJZSx1QkFBdUI7WUFDekIsT0FBTztRQUNUO0lBQ0YsTUFBTTtJQUVOLE9BQU9uQjtBQUNUO0FBRU8sU0FBU1YscUJBQXFCSyxXQUFXLEVBQUUwQixJQUFJO0lBQ3BELElBQU1yQixhQUFhTCxZQUFZdUIsSUFBSSxDQUFDLFNBQUNsQjtRQUNuQyxJQUFNc0Isd0JBQXdCdEIsV0FBV3VCLFNBQVMsQ0FBQ0Y7UUFFbkQsSUFBSUMsdUJBQXVCO1lBQ3pCLE9BQU87UUFDVDtJQUNGLE1BQU07SUFFTixPQUFPdEI7QUFDVDtBQUVBLFNBQVNDLDBCQUEwQk4sV0FBVyxFQUFFSSxTQUFTO0lBQ3ZELElBQU1DLGFBQWFMLFlBQVl1QixJQUFJLENBQUMsU0FBQ2xCO1FBQ25DLElBQU13Qix5QkFBeUJ4QixXQUFXeUIsY0FBYyxDQUFDMUI7UUFFekQsSUFBSXlCLHdCQUF3QjtZQUMxQixPQUFPO1FBQ1Q7SUFDRixNQUFNO0lBRU4sT0FBT3hCO0FBQ1Q7QUFFQSxTQUFTTSxxQkFBcUJYLFdBQVcsRUFBRVMsWUFBWTtJQUNyRCxJQUFNSSxRQUFRYixZQUFZaUIsR0FBRyxDQUFDLFNBQUNaO1FBQzdCLElBQU1hLE9BQU9iLFdBQVcwQixPQUFPLENBQUN0QjtRQUVoQyxPQUFPUztJQUNUO0lBRUEsT0FBT0w7QUFDVCJ9
@@ -9,8 +9,9 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _node = /*#__PURE__*/ _interop_require_default(require("../../verifier/node"));
12
- var _statement = /*#__PURE__*/ _interop_require_default(require("../../verify/statement"));
13
- var _termAsConstructor = require("./../../verifier/node/termAsConstructor");
12
+ var _type = require("./../../verify/type");
13
+ var _term = require("./../../verify/term");
14
+ var _statement = require("../../verify/statement");
14
15
  var _ruleNames = require("../../ruleNames");
15
16
  function _assert_this_initialized(self) {
16
17
  if (self === void 0) {
@@ -141,19 +142,19 @@ var StatementAsCombinatorNodeVerifier = /*#__PURE__*/ function(NodeVerifier) {
141
142
  switch(ruleName){
142
143
  case _ruleNames.TYPE_RULE_NAME:
143
144
  {
144
- var typeNode = nonTerminalNode, typeVerified = (0, _termAsConstructor.verifyType)(typeNode, fileContext, verifyAhead), typeNodeVerified = typeVerified; ///
145
+ var typeNode = nonTerminalNode, standaloneTypeVerified = (0, _type.verifyStandaloneType)(typeNode, fileContext, verifyAhead), typeNodeVerified = standaloneTypeVerified; ///
145
146
  nonTerminalNodeVerified = typeNodeVerified; ///
146
147
  break;
147
148
  }
148
149
  case _ruleNames.TERM_RULE_NAME:
149
150
  {
150
- var termNode = nonTerminalNode, standaloneTermVerified = (0, _termAsConstructor.verifyStandaloneTerm)(termNode, fileContext, verifyAhead), termNodeVerified = standaloneTermVerified; ///
151
+ var termNode = nonTerminalNode, standaloneTermVerified = (0, _term.verifyStandaloneTerm)(termNode, fileContext, verifyAhead), termNodeVerified = standaloneTermVerified; ///
151
152
  nonTerminalNodeVerified = termNodeVerified; ///
152
153
  break;
153
154
  }
154
155
  case _ruleNames.STATEMENT_RULE_NAME:
155
156
  {
156
- var statementNode = nonTerminalNode, standaloneStatementVerified = verifyStandaloneStatement(statementNode, fileContext, verifyAhead), statementNodeVerified = standaloneStatementVerified; ///
157
+ var statementNode = nonTerminalNode, standaloneStatementVerified = (0, _statement.verifyStandaloneStatement)(statementNode, fileContext, verifyAhead), statementNodeVerified = standaloneStatementVerified; ///
157
158
  nonTerminalNodeVerified = statementNodeVerified; ///
158
159
  break;
159
160
  }
@@ -171,16 +172,5 @@ var StatementAsCombinatorNodeVerifier = /*#__PURE__*/ function(NodeVerifier) {
171
172
  }(_node.default);
172
173
  var statementAsCombinatorNodeVerifier = new StatementAsCombinatorNodeVerifier();
173
174
  var _default = statementAsCombinatorNodeVerifier;
174
- function verifyStandaloneStatement(statementNode, fileContext, verifyAhead) {
175
- var standaloneStatementVerified;
176
- var statementString = fileContext.nodeAsString(statementNode);
177
- fileContext.trace("Verifying the '".concat(statementString, "' standalone statement..."), statementNode);
178
- var context = fileContext, derived = false, assignments = [], statementVerified = (0, _statement.default)(statementNode, assignments, derived, context, verifyAhead);
179
- standaloneStatementVerified = statementVerified; ///
180
- if (standaloneStatementVerified) {
181
- fileContext.debug("...verified the '".concat(statementString, "' standalone statement."), statementNode);
182
- }
183
- return standaloneStatementVerified;
184
- }
185
175
 
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL3N0YXRlbWVudEFzQ29tYmluYXRvci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE5vZGVWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZVwiO1xuaW1wb3J0IHZlcmlmeVN0YXRlbWVudCBmcm9tIFwiLi4vLi4vdmVyaWZ5L3N0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyB2ZXJpZnlUeXBlLCB2ZXJpZnlTdGFuZGFsb25lVGVybSB9IGZyb20gXCIuLy4uLy4uL3ZlcmlmaWVyL25vZGUvdGVybUFzQ29uc3RydWN0b3JcIjtcbmltcG9ydCB7IFRZUEVfUlVMRV9OQU1FLCBURVJNX1JVTEVfTkFNRSwgU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY2xhc3MgU3RhdGVtZW50QXNDb21iaW5hdG9yTm9kZVZlcmlmaWVyIGV4dGVuZHMgTm9kZVZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3QgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTtcblxuICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgIGNhc2UgVFlQRV9SVUxFX05BTUU6IHtcbiAgICAgICAgY29uc3QgdHlwZU5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICB0eXBlVmVyaWZpZWQgPSB2ZXJpZnlUeXBlKHR5cGVOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpLFxuICAgICAgICAgICAgICB0eXBlTm9kZVZlcmlmaWVkID0gdHlwZVZlcmlmaWVkOyAgLy8vXG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0eXBlTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgY2FzZSBURVJNX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCB0ZXJtTm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgdGVybU5vZGVWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRlcm1Ob2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIFNUQVRFTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHN0YW5kYWxvbmVTdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YW5kYWxvbmVTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gc3RhbmRhbG9uZVN0YXRlbWVudFZlcmlmaWVkOyAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN0YXRlbWVudE5vZGVWZXJpZmllZDsgLy8vXG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3Qgc3RhdGVtZW50QXNDb21iaW5hdG9yTm9kZVZlcmlmaWVyID0gbmV3IFN0YXRlbWVudEFzQ29tYmluYXRvck5vZGVWZXJpZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCBzdGF0ZW1lbnRBc0NvbWJpbmF0b3JOb2RlVmVyaWZpZXI7XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YW5kYWxvbmVTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCBzdGFuZGFsb25lU3RhdGVtZW50VmVyaWZpZWQ7XG5cbiAgY29uc3Qgc3RhdGVtZW50U3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKHN0YXRlbWVudE5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3N0YXRlbWVudFN0cmluZ30nIHN0YW5kYWxvbmUgc3RhdGVtZW50Li4uYCwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgY29uc3QgY29udGV4dCA9IGZpbGVDb250ZXh0LCAgLy8vXG4gICAgICAgIGRlcml2ZWQgPSBmYWxzZSxcbiAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICBzdGFuZGFsb25lU3RhdGVtZW50VmVyaWZpZWQgPSBzdGF0ZW1lbnRWZXJpZmllZDsgIC8vL1xuXG4gIGlmIChzdGFuZGFsb25lU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3N0YXRlbWVudFN0cmluZ30nIHN0YW5kYWxvbmUgc3RhdGVtZW50LmAsIHN0YXRlbWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIHN0YW5kYWxvbmVTdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJTdGF0ZW1lbnRBc0NvbWJpbmF0b3JOb2RlVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJmaWxlQ29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiVFlQRV9SVUxFX05BTUUiLCJ0eXBlTm9kZSIsInR5cGVWZXJpZmllZCIsInZlcmlmeVR5cGUiLCJ0eXBlTm9kZVZlcmlmaWVkIiwiVEVSTV9SVUxFX05BTUUiLCJ0ZXJtTm9kZSIsInN0YW5kYWxvbmVUZXJtVmVyaWZpZWQiLCJ2ZXJpZnlTdGFuZGFsb25lVGVybSIsInRlcm1Ob2RlVmVyaWZpZWQiLCJTVEFURU1FTlRfUlVMRV9OQU1FIiwic3RhdGVtZW50Tm9kZSIsInN0YW5kYWxvbmVTdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVN0YW5kYWxvbmVTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlVmVyaWZpZWQiLCJOb2RlVmVyaWZpZXIiLCJzdGF0ZW1lbnRBc0NvbWJpbmF0b3JOb2RlVmVyaWZpZXIiLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsImNvbnRleHQiLCJkZXJpdmVkIiwiYXNzaWdubWVudHMiLCJzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVN0YXRlbWVudCIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkEwREE7OztlQUFBOzs7MkRBeER5QjtnRUFDRztpQ0FFcUI7eUJBQ21COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFcEUsSUFBQSxBQUFNQSxrREFBRCxBQUFMO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JDLGVBQWUsRUFBRUMsV0FBVyxFQUFFQyxXQUFXO2dCQUM3RCxJQUFJQztnQkFFSixJQUFNQyxXQUFXSixnQkFBZ0JLLFdBQVc7Z0JBRTVDLE9BQVFEO29CQUNOLEtBQUtFLHlCQUFjO3dCQUFFOzRCQUNuQixJQUFNQyxXQUFXUCxpQkFDWFEsZUFBZUMsSUFBQUEsNkJBQVUsRUFBQ0YsVUFBVU4sYUFBYUMsY0FDakRRLG1CQUFtQkYsY0FBZSxHQUFHOzRCQUUzQ0wsMEJBQTBCTyxrQkFBa0IsR0FBRzs0QkFFL0M7d0JBQ0Y7b0JBRUEsS0FBS0MseUJBQWM7d0JBQUU7NEJBQ25CLElBQU1DLFdBQVdaLGlCQUNYYSx5QkFBeUJDLElBQUFBLHVDQUFvQixFQUFDRixVQUFVWCxhQUFhQyxjQUNyRWEsbUJBQW1CRix3QkFBeUIsR0FBRzs0QkFFckRWLDBCQUEwQlksa0JBQWtCLEdBQUc7NEJBRS9DO3dCQUNGO29CQUVBLEtBQUtDLDhCQUFtQjt3QkFBRTs0QkFDeEIsSUFBTUMsZ0JBQWdCakIsaUJBQ2hCa0IsOEJBQThCQywwQkFBMEJGLGVBQWVoQixhQUFhQyxjQUNwRmtCLHdCQUF3QkYsNkJBQTZCLEdBQUc7NEJBRTlEZiwwQkFBMEJpQix1QkFBdUIsR0FBRzs0QkFFcEQ7d0JBQ0Y7b0JBRUE7d0JBQVM7NEJBQ1BqQiwwQkFBMEIsdUJBdEM1QkwsOENBc0NrQ0MseUJBQU4sSUFBSyxhQUF1QkMsaUJBQWlCQyxhQUFhQyxjQUFjLEdBQUc7NEJBRXJHO3dCQUNGO2dCQUNGO2dCQUVBLE9BQU9DO1lBQ1Q7OztXQTdDSUw7RUFBMEN1QixhQUFZO0FBZ0Q1RCxJQUFNQyxvQ0FBb0MsSUFBSXhCO0lBRTlDLFdBQWV3QjtBQUVmLFNBQVNILDBCQUEwQkYsYUFBYSxFQUFFaEIsV0FBVyxFQUFFQyxXQUFXO0lBQ3hFLElBQUlnQjtJQUVKLElBQU1LLGtCQUFrQnRCLFlBQVl1QixZQUFZLENBQUNQO0lBRWpEaEIsWUFBWXdCLEtBQUssQ0FBQyxBQUFDLGtCQUFpQyxPQUFoQkYsaUJBQWdCLDhCQUE0Qk47SUFFaEYsSUFBTVMsVUFBVXpCLGFBQ1YwQixVQUFVLE9BQ1ZDLGNBQWMsRUFBRSxFQUNoQkMsb0JBQW9CQyxJQUFBQSxrQkFBZSxFQUFDYixlQUFlVyxhQUFhRCxTQUFTRCxTQUFTeEI7SUFFeEZnQiw4QkFBOEJXLG1CQUFvQixHQUFHO0lBRXJELElBQUlYLDZCQUE2QjtRQUMvQmpCLFlBQVk4QixLQUFLLENBQUMsQUFBQyxvQkFBbUMsT0FBaEJSLGlCQUFnQiw0QkFBMEJOO0lBQ2xGO0lBRUEsT0FBT0M7QUFDVCJ9
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL3N0YXRlbWVudEFzQ29tYmluYXRvci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE5vZGVWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZVwiO1xuXG5pbXBvcnQgeyB2ZXJpZnlTdGFuZGFsb25lVHlwZSB9IGZyb20gXCIuLy4uLy4uL3ZlcmlmeS90eXBlXCI7XG5pbXBvcnQgeyB2ZXJpZnlTdGFuZGFsb25lVGVybSB9IGZyb20gXCIuLy4uLy4uL3ZlcmlmeS90ZXJtXCI7XG5pbXBvcnQgeyB2ZXJpZnlTdGFuZGFsb25lU3RhdGVtZW50IH0gZnJvbSBcIi4uLy4uL3ZlcmlmeS9zdGF0ZW1lbnRcIjtcbmltcG9ydCB7IFRZUEVfUlVMRV9OQU1FLCBURVJNX1JVTEVfTkFNRSwgU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY2xhc3MgU3RhdGVtZW50QXNDb21iaW5hdG9yTm9kZVZlcmlmaWVyIGV4dGVuZHMgTm9kZVZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3QgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTtcblxuICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgIGNhc2UgVFlQRV9SVUxFX05BTUU6IHtcbiAgICAgICAgY29uc3QgdHlwZU5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICBzdGFuZGFsb25lVHlwZVZlcmlmaWVkID0gdmVyaWZ5U3RhbmRhbG9uZVR5cGUodHlwZU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCksXG4gICAgICAgICAgICAgIHR5cGVOb2RlVmVyaWZpZWQgPSBzdGFuZGFsb25lVHlwZVZlcmlmaWVkOyAgLy8vXG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0eXBlTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgY2FzZSBURVJNX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCB0ZXJtTm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgdGVybU5vZGVWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRlcm1Ob2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIFNUQVRFTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHN0YW5kYWxvbmVTdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YW5kYWxvbmVTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gc3RhbmRhbG9uZVN0YXRlbWVudFZlcmlmaWVkOyAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN0YXRlbWVudE5vZGVWZXJpZmllZDsgLy8vXG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3Qgc3RhdGVtZW50QXNDb21iaW5hdG9yTm9kZVZlcmlmaWVyID0gbmV3IFN0YXRlbWVudEFzQ29tYmluYXRvck5vZGVWZXJpZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCBzdGF0ZW1lbnRBc0NvbWJpbmF0b3JOb2RlVmVyaWZpZXI7XG5cbiJdLCJuYW1lcyI6WyJTdGF0ZW1lbnRBc0NvbWJpbmF0b3JOb2RlVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJmaWxlQ29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiVFlQRV9SVUxFX05BTUUiLCJ0eXBlTm9kZSIsInN0YW5kYWxvbmVUeXBlVmVyaWZpZWQiLCJ2ZXJpZnlTdGFuZGFsb25lVHlwZSIsInR5cGVOb2RlVmVyaWZpZWQiLCJURVJNX1JVTEVfTkFNRSIsInRlcm1Ob2RlIiwic3RhbmRhbG9uZVRlcm1WZXJpZmllZCIsInZlcmlmeVN0YW5kYWxvbmVUZXJtIiwidGVybU5vZGVWZXJpZmllZCIsIlNUQVRFTUVOVF9SVUxFX05BTUUiLCJzdGF0ZW1lbnROb2RlIiwic3RhbmRhbG9uZVN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5U3RhbmRhbG9uZVN0YXRlbWVudCIsInN0YXRlbWVudE5vZGVWZXJpZmllZCIsIk5vZGVWZXJpZmllciIsInN0YXRlbWVudEFzQ29tYmluYXRvck5vZGVWZXJpZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMkRBOzs7ZUFBQTs7OzJEQXpEeUI7b0JBRVk7b0JBQ0E7eUJBQ0s7eUJBQzBCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFcEUsSUFBQSxBQUFNQSxrREFBRCxBQUFMO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JDLGVBQWUsRUFBRUMsV0FBVyxFQUFFQyxXQUFXO2dCQUM3RCxJQUFJQztnQkFFSixJQUFNQyxXQUFXSixnQkFBZ0JLLFdBQVc7Z0JBRTVDLE9BQVFEO29CQUNOLEtBQUtFLHlCQUFjO3dCQUFFOzRCQUNuQixJQUFNQyxXQUFXUCxpQkFDWFEseUJBQXlCQyxJQUFBQSwwQkFBb0IsRUFBQ0YsVUFBVU4sYUFBYUMsY0FDckVRLG1CQUFtQkYsd0JBQXlCLEdBQUc7NEJBRXJETCwwQkFBMEJPLGtCQUFrQixHQUFHOzRCQUUvQzt3QkFDRjtvQkFFQSxLQUFLQyx5QkFBYzt3QkFBRTs0QkFDbkIsSUFBTUMsV0FBV1osaUJBQ1hhLHlCQUF5QkMsSUFBQUEsMEJBQW9CLEVBQUNGLFVBQVVYLGFBQWFDLGNBQ3JFYSxtQkFBbUJGLHdCQUF5QixHQUFHOzRCQUVyRFYsMEJBQTBCWSxrQkFBa0IsR0FBRzs0QkFFL0M7d0JBQ0Y7b0JBRUEsS0FBS0MsOEJBQW1CO3dCQUFFOzRCQUN4QixJQUFNQyxnQkFBZ0JqQixpQkFDaEJrQiw4QkFBOEJDLElBQUFBLG9DQUF5QixFQUFDRixlQUFlaEIsYUFBYUMsY0FDcEZrQix3QkFBd0JGLDZCQUE2QixHQUFHOzRCQUU5RGYsMEJBQTBCaUIsdUJBQXVCLEdBQUc7NEJBRXBEO3dCQUNGO29CQUVBO3dCQUFTOzRCQUNQakIsMEJBQTBCLHVCQXRDNUJMLDhDQXNDa0NDLHlCQUFOLElBQUssYUFBdUJDLGlCQUFpQkMsYUFBYUMsY0FBYyxHQUFHOzRCQUVyRzt3QkFDRjtnQkFDRjtnQkFFQSxPQUFPQztZQUNUOzs7V0E3Q0lMO0VBQTBDdUIsYUFBWTtBQWdENUQsSUFBTUMsb0NBQW9DLElBQUl4QjtJQUU5QyxXQUFld0IifQ==
@@ -2,26 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
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
- default: function() {
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
13
8
  return _default;
14
- },
15
- verifyStandaloneTerm: function() {
16
- return verifyStandaloneTerm;
17
- },
18
- verifyType: function() {
19
- return verifyType;
20
9
  }
21
10
  });
22
- var _term = /*#__PURE__*/ _interop_require_default(require("../../verify/term"));
23
11
  var _node = /*#__PURE__*/ _interop_require_default(require("../../verifier/node"));
12
+ var _givenType = /*#__PURE__*/ _interop_require_default(require("../../verify/givenType"));
24
13
  var _query = require("../../utilities/query");
14
+ var _term = require("../../verify/term");
25
15
  var _ruleNames = require("../../ruleNames");
26
16
  function _assert_this_initialized(self) {
27
17
  if (self === void 0) {
@@ -153,7 +143,7 @@ var TermAsConstructorNodeVerifier = /*#__PURE__*/ function(NodeVerifier) {
153
143
  switch(ruleName){
154
144
  case _ruleNames.TERM_RULE_NAME:
155
145
  {
156
- var termNode = nonTerminalNode, standaloneTermVerified = verifyStandaloneTerm(termNode, fileContext, verifyAhead), termNodeVerified = standaloneTermVerified; ///
146
+ var termNode = nonTerminalNode, standaloneTermVerified = (0, _term.verifyStandaloneTerm)(termNode, fileContext, verifyAhead), termNodeVerified = standaloneTermVerified; ///
157
147
  nonTerminalNodeVerified = termNodeVerified; ///
158
148
  break;
159
149
  }
@@ -177,42 +167,17 @@ var TermAsConstructorNodeVerifier = /*#__PURE__*/ function(NodeVerifier) {
177
167
  }(_node.default);
178
168
  var termAsConstructorNodeVerifier = new TermAsConstructorNodeVerifier();
179
169
  var _default = termAsConstructorNodeVerifier;
180
- function verifyStandaloneTerm(termNode, fileContext, verifyAhead) {
181
- var standaloneTermVerified;
182
- var termString = fileContext.nodeAsString(termNode);
183
- fileContext.trace("Verifying the '".concat(termString, "' standalone term..."), termNode);
184
- var terms = [], context = fileContext, termVerified = (0, _term.default)(termNode, terms, context, verifyAhead);
185
- standaloneTermVerified = termVerified; ///
186
- if (standaloneTermVerified) {
187
- fileContext.debug("...verified the '".concat(termString, "' standalone term."), termNode);
188
- }
189
- return standaloneTermVerified;
190
- }
191
- function verifyType(typeNode, fileContext, verifyAhead) {
192
- var typeVerified = false;
193
- var typeString = fileContext.nodeAsString(typeNode);
194
- fileContext.trace("Verifying the '".concat(typeString, "' type..."), typeNode);
195
- var typeName = (0, _query.typeNameFromTypeNode)(typeNode), typePresent = fileContext.isTypePresentByTypeName(typeName);
196
- if (!typePresent) {
197
- fileContext.debug("The type '".concat(typeName, "' is not present."), typeNode);
198
- } else {
199
- fileContext.debug("...verified the '".concat(typeString, "' type."), typeNode);
200
- var verifiedAhead = verifyAhead();
201
- typeVerified = verifiedAhead; ///
202
- }
203
- return typeVerified;
204
- }
205
170
  function verifyArgument(argumentNode, fileContext, verifyAhead) {
206
171
  var argumentVerified;
207
172
  var argumentString = fileContext.nodeAsString(argumentNode);
208
173
  fileContext.trace("Verifying the '".concat(argumentString, "' argument..."), argumentNode);
209
174
  var typeNode = typeNodeQuery(argumentNode), termNode = termNodeQuery(argumentNode);
210
175
  if (typeNode !== null) {
211
- var typeVerified = verifyType(typeNode, fileContext, verifyAhead);
212
- argumentVerified = typeVerified; ///
176
+ var types = [], givenTypeVerified = (0, _givenType.default)(typeNode, types, fileContext, verifyAhead);
177
+ argumentVerified = givenTypeVerified; ///
213
178
  }
214
179
  if (termNode !== null) {
215
- var standaloneTermVerified = verifyStandaloneTerm(termNode, fileContext, verifyAhead);
180
+ var standaloneTermVerified = (0, _term.verifyStandaloneTerm)(termNode, fileContext, verifyAhead);
216
181
  argumentVerified = standaloneTermVerified; ///
217
182
  }
218
183
  if (argumentVerified) {
@@ -221,4 +186,4 @@ function verifyArgument(argumentNode, fileContext, verifyAhead) {
221
186
  return argumentVerified;
222
187
  }
223
188
 
224
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL3Rlcm1Bc0NvbnN0cnVjdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5VGVybSBmcm9tIFwiLi4vLi4vdmVyaWZ5L3Rlcm1cIjtcbmltcG9ydCBOb2RlVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL25vZGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5LCB0eXBlTmFtZUZyb21UeXBlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FLCBBUkdVTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzXCI7XG5cbmNvbnN0IHR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJndW1lbnQvdHlwZVwiKSxcbiAgICAgIHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJndW1lbnQvdGVybVwiKTtcblxuY2xhc3MgVGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIgZXh0ZW5kcyBOb2RlVmVyaWZpZXIge1xuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG5cbiAgICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpO1xuXG4gICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgY2FzZSBURVJNX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCB0ZXJtTm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgdGVybU5vZGVWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRlcm1Ob2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIEFSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCBhcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpLFxuICAgICAgICAgICAgICBhcmd1bWVudE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50VmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50Tm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN1cGVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IHRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyID0gbmV3IFRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyO1xuXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5U3RhbmRhbG9uZVRlcm0odGVybU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgc3RhbmRhbG9uZVRlcm1WZXJpZmllZDtcblxuICBjb25zdCB0ZXJtU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHt0ZXJtU3RyaW5nfScgc3RhbmRhbG9uZSB0ZXJtLi4uYCwgdGVybU5vZGUpO1xuXG4gIGNvbnN0IHRlcm1zID0gW10sXG4gICAgICAgIGNvbnRleHQgPSBmaWxlQ29udGV4dCwgIC8vL1xuICAgICAgICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHRlcm1Ob2RlLCB0ZXJtcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB0ZXJtVmVyaWZpZWQ7ICAvLy9cblxuICBpZiAoc3RhbmRhbG9uZVRlcm1WZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7dGVybVN0cmluZ30nIHN0YW5kYWxvbmUgdGVybS5gLCB0ZXJtTm9kZSk7XG4gIH1cblxuICByZXR1cm4gc3RhbmRhbG9uZVRlcm1WZXJpZmllZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZlcmlmeVR5cGUodHlwZU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdHlwZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgdHlwZVN0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVBc1N0cmluZyh0eXBlTm9kZSk7XG5cbiAgZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dHlwZVN0cmluZ30nIHR5cGUuLi5gLCB0eXBlTm9kZSk7XG5cbiAgY29uc3QgdHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZSh0eXBlTm9kZSksXG4gICAgICAgIHR5cGVQcmVzZW50ID0gZmlsZUNvbnRleHQuaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gIGlmICghdHlwZVByZXNlbnQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlIHR5cGUgJyR7dHlwZU5hbWV9JyBpcyBub3QgcHJlc2VudC5gLCB0eXBlTm9kZSk7XG4gIH0gZWxzZSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0eXBlU3RyaW5nfScgdHlwZS5gLCB0eXBlTm9kZSk7XG5cbiAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgIHR5cGVWZXJpZmllZCA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICB9XG5cbiAgcmV0dXJuIHR5cGVWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IGFyZ3VtZW50VmVyaWZpZWQ7XG5cbiAgY29uc3QgYXJndW1lbnRTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcoYXJndW1lbnROb2RlKTtcblxuICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50Li4uYCwgYXJndW1lbnROb2RlKTtcblxuICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkoYXJndW1lbnROb2RlKSxcbiAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgaWYgKHR5cGVOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdHlwZVZlcmlmaWVkID0gdmVyaWZ5VHlwZSh0eXBlTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgIGFyZ3VtZW50VmVyaWZpZWQgPSB0eXBlVmVyaWZpZWQ7IC8vL1xuICB9XG5cbiAgaWYgKHRlcm1Ob2RlICE9PSBudWxsKSB7XG4gICAgY29uc3Qgc3RhbmRhbG9uZVRlcm1WZXJpZmllZCA9IHZlcmlmeVN0YW5kYWxvbmVUZXJtKHRlcm1Ob2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgYXJndW1lbnRWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cbiAgfVxuXG4gIGlmIChhcmd1bWVudFZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50LmAsIGFyZ3VtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gYXJndW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGFuZGFsb25lVGVybSIsInZlcmlmeVR5cGUiLCJ0eXBlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidGVybU5vZGVRdWVyeSIsIlRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwiZmlsZUNvbnRleHQiLCJ2ZXJpZnlBaGVhZCIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIlRFUk1fUlVMRV9OQU1FIiwidGVybU5vZGUiLCJzdGFuZGFsb25lVGVybVZlcmlmaWVkIiwidGVybU5vZGVWZXJpZmllZCIsIkFSR1VNRU5UX1JVTEVfTkFNRSIsImFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50VmVyaWZpZWQiLCJ2ZXJpZnlBcmd1bWVudCIsImFyZ3VtZW50Tm9kZVZlcmlmaWVkIiwiTm9kZVZlcmlmaWVyIiwidGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIiLCJ0ZXJtU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJ0ZXJtcyIsImNvbnRleHQiLCJ0ZXJtVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtIiwiZGVidWciLCJ0eXBlTm9kZSIsInR5cGVWZXJpZmllZCIsInR5cGVTdHJpbmciLCJ0eXBlTmFtZSIsInR5cGVOYW1lRnJvbVR5cGVOb2RlIiwidHlwZVByZXNlbnQiLCJpc1R5cGVQcmVzZW50QnlUeXBlTmFtZSIsInZlcmlmaWVkQWhlYWQiLCJhcmd1bWVu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
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL3Rlcm1Bc0NvbnN0cnVjdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZVZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2RlXCI7XG5pbXBvcnQgdmVyaWZ5R2l2ZW5UeXBlIGZyb20gXCIuLi8uLi92ZXJpZnkvZ2l2ZW5UeXBlXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IHZlcmlmeVN0YW5kYWxvbmVUZXJtIH0gZnJvbSBcIi4uLy4uL3ZlcmlmeS90ZXJtXCI7XG5pbXBvcnQgeyBURVJNX1JVTEVfTkFNRSwgQVJHVU1FTlRfUlVMRV9OQU1FIH0gZnJvbSBcIi4uLy4uL3J1bGVOYW1lc1wiO1xuXG5jb25zdCB0eXBlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3R5cGVcIiksXG4gICAgICB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3Rlcm1cIik7XG5cbmNsYXNzIFRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyIGV4dGVuZHMgTm9kZVZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3QgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTtcblxuICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgIGNhc2UgVEVSTV9SVUxFX05BTUU6IHtcbiAgICAgICAgY29uc3QgdGVybU5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICBzdGFuZGFsb25lVGVybVZlcmlmaWVkID0gdmVyaWZ5U3RhbmRhbG9uZVRlcm0odGVybU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCksXG4gICAgICAgICAgICAgIHRlcm1Ob2RlVmVyaWZpZWQgPSBzdGFuZGFsb25lVGVybVZlcmlmaWVkOyAgLy8vXG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0ZXJtTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgY2FzZSBBUkdVTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgICAgY29uc3QgYXJndW1lbnROb2RlID0gbm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgYXJndW1lbnRWZXJpZmllZCA9IHZlcmlmeUFyZ3VtZW50KGFyZ3VtZW50Tm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgYXJndW1lbnROb2RlVmVyaWZpZWQgPSBhcmd1bWVudFZlcmlmaWVkOyAgLy8vXG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBhcmd1bWVudE5vZGVWZXJpZmllZDsgLy8vXG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxufVxuXG5jb25zdCB0ZXJtQXNDb25zdHJ1Y3Rvck5vZGVWZXJpZmllciA9IG5ldyBUZXJtQXNDb25zdHJ1Y3Rvck5vZGVWZXJpZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCB0ZXJtQXNDb25zdHJ1Y3Rvck5vZGVWZXJpZmllcjtcblxuZnVuY3Rpb24gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IGFyZ3VtZW50VmVyaWZpZWQ7XG5cbiAgY29uc3QgYXJndW1lbnRTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcoYXJndW1lbnROb2RlKTtcblxuICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50Li4uYCwgYXJndW1lbnROb2RlKTtcblxuICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkoYXJndW1lbnROb2RlKSxcbiAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgaWYgKHR5cGVOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdHlwZXMgPSBbXSwgLy8vXG4gICAgICAgICAgZ2l2ZW5UeXBlVmVyaWZpZWQgPSB2ZXJpZnlHaXZlblR5cGUodHlwZU5vZGUsIHR5cGVzLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgYXJndW1lbnRWZXJpZmllZCA9IGdpdmVuVHlwZVZlcmlmaWVkOyAvLy9cbiAgfVxuXG4gIGlmICh0ZXJtTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgIGFyZ3VtZW50VmVyaWZpZWQgPSBzdGFuZGFsb25lVGVybVZlcmlmaWVkOyAgLy8vXG4gIH1cblxuICBpZiAoYXJndW1lbnRWZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7YXJndW1lbnRTdHJpbmd9JyBhcmd1bWVudC5gLCBhcmd1bWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGFyZ3VtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidHlwZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInRlcm1Ob2RlUXVlcnkiLCJUZXJtQXNDb25zdHJ1Y3Rvck5vZGVWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsImZpbGVDb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsInJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJURVJNX1JVTEVfTkFNRSIsInRlcm1Ob2RlIiwic3RhbmRhbG9uZVRlcm1WZXJpZmllZCIsInZlcmlmeVN0YW5kYWxvbmVUZXJtIiwidGVybU5vZGVWZXJpZmllZCIsIkFSR1VNRU5UX1JVTEVfTkFNRSIsImFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50VmVyaWZpZWQiLCJ2ZXJpZnlBcmd1bWVudCIsImFyZ3VtZW50Tm9kZVZlcmlmaWVkIiwiTm9kZVZlcmlmaWVyIiwidGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIiLCJhcmd1bWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidHlwZU5vZGUiLCJ0eXBlcyIsImdpdmVuVHlwZVZlcmlmaWVkIiwidmVyaWZ5R2l2ZW5UeXBlIiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQW9EQTs7O2VBQUE7OzsyREFsRHlCO2dFQUNHO3FCQUVGO29CQUNXO3lCQUNjOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFbkQsSUFBTUEsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLG1CQUMxQkMsZ0JBQWdCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRWhDLElBQUEsQUFBTUUsOENBQUQsQUFBTDtjQUFNQTsrQkFBQUE7YUFBQUE7Z0NBQUFBOzs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxlQUFlLEVBQUVDLFdBQVcsRUFBRUMsV0FBVztnQkFDN0QsSUFBSUM7Z0JBRUosSUFBTUMsV0FBV0osZ0JBQWdCSyxXQUFXO2dCQUU1QyxPQUFRRDtvQkFDTixLQUFLRSx5QkFBYzt3QkFBRTs0QkFDbkIsSUFBTUMsV0FBV1AsaUJBQ1hRLHlCQUF5QkMsSUFBQUEsMEJBQW9CLEVBQUNGLFVBQVVOLGFBQWFDLGNBQ3JFUSxtQkFBbUJGLHdCQUF5QixHQUFHOzRCQUVyREwsMEJBQTBCTyxrQkFBa0IsR0FBRzs0QkFFL0M7d0JBQ0Y7b0JBRUEsS0FBS0MsNkJBQWtCO3dCQUFFOzRCQUN2QixJQUFNQyxlQUFlWixpQkFDZmEsbUJBQW1CQyxlQUFlRixjQUFjWCxhQUFhQyxjQUM3RGEsdUJBQXVCRixrQkFBbUIsR0FBRzs0QkFFbkRWLDBCQUEwQlksc0JBQXNCLEdBQUc7NEJBRW5EO3dCQUNGO29CQUVBO3dCQUFTOzRCQUNQWiwwQkFBMEIsdUJBNUI1QkwsMENBNEJrQ0MseUJBQU4sSUFBSyxhQUF1QkMsaUJBQWlCQyxhQUFhQzs0QkFFcEY7d0JBQ0Y7Z0JBQ0Y7Z0JBRUEsT0FBT0M7WUFDVDs7O1dBbkNJTDtFQUFzQ2tCLGFBQVk7QUFzQ3hELElBQU1DLGdDQUFnQyxJQUFJbkI7SUFFMUMsV0FBZW1CO0FBRWYsU0FBU0gsZUFBZUYsWUFBWSxFQUFFWCxXQUFXLEVBQUVDLFdBQVc7SUFDNUQsSUFBSVc7SUFFSixJQUFNSyxpQkFBaUJqQixZQUFZa0IsWUFBWSxDQUFDUDtJQUVoRFgsWUFBWW1CLEtBQUssQ0FBQyxBQUFDLGtCQUFnQyxPQUFmRixnQkFBZSxrQkFBZ0JOO0lBRW5FLElBQU1TLFdBQVcxQixjQUFjaUIsZUFDekJMLFdBQVdWLGNBQWNlO0lBRS9CLElBQUlTLGFBQWEsTUFBTTtRQUNyQixJQUFNQyxRQUFRLEVBQUUsRUFDVkMsb0JBQW9CQyxJQUFBQSxrQkFBZSxFQUFDSCxVQUFVQyxPQUFPckIsYUFBYUM7UUFFeEVXLG1CQUFtQlUsbUJBQW1CLEdBQUc7SUFDM0M7SUFFQSxJQUFJaEIsYUFBYSxNQUFNO1FBQ3JCLElBQU1DLHlCQUF5QkMsSUFBQUEsMEJBQW9CLEVBQUNGLFVBQVVOLGFBQWFDO1FBRTNFVyxtQkFBbUJMLHdCQUF5QixHQUFHO0lBQ2pEO0lBRUEsSUFBSUssa0JBQWtCO1FBQ3BCWixZQUFZd0IsS0FBSyxDQUFDLEFBQUMsb0JBQWtDLE9BQWZQLGdCQUFlLGdCQUFjTjtJQUNyRTtJQUVBLE9BQU9DO0FBQ1QifQ==
@@ -0,0 +1,169 @@
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 _default;
9
+ }
10
+ });
11
+ var _nodes = /*#__PURE__*/ _interop_require_default(require("../../verifier/nodes"));
12
+ var _ruleNames = require("../../ruleNames");
13
+ var _collection = require("../../utilities/collection");
14
+ function _assert_this_initialized(self) {
15
+ if (self === void 0) {
16
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
17
+ }
18
+ return self;
19
+ }
20
+ function _class_call_check(instance, Constructor) {
21
+ if (!(instance instanceof Constructor)) {
22
+ throw new TypeError("Cannot call a class as a function");
23
+ }
24
+ }
25
+ function _defineProperties(target, props) {
26
+ for(var i = 0; i < props.length; i++){
27
+ var descriptor = props[i];
28
+ descriptor.enumerable = descriptor.enumerable || false;
29
+ descriptor.configurable = true;
30
+ if ("value" in descriptor) descriptor.writable = true;
31
+ Object.defineProperty(target, descriptor.key, descriptor);
32
+ }
33
+ }
34
+ function _create_class(Constructor, protoProps, staticProps) {
35
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
36
+ if (staticProps) _defineProperties(Constructor, staticProps);
37
+ return Constructor;
38
+ }
39
+ function _get(target, property, receiver) {
40
+ if (typeof Reflect !== "undefined" && Reflect.get) {
41
+ _get = Reflect.get;
42
+ } else {
43
+ _get = function get(target, property, receiver) {
44
+ var base = _super_prop_base(target, property);
45
+ if (!base) return;
46
+ var desc = Object.getOwnPropertyDescriptor(base, property);
47
+ if (desc.get) {
48
+ return desc.get.call(receiver || target);
49
+ }
50
+ return desc.value;
51
+ };
52
+ }
53
+ return _get(target, property, receiver || target);
54
+ }
55
+ function _get_prototype_of(o) {
56
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
57
+ return o.__proto__ || Object.getPrototypeOf(o);
58
+ };
59
+ return _get_prototype_of(o);
60
+ }
61
+ function _inherits(subClass, superClass) {
62
+ if (typeof superClass !== "function" && superClass !== null) {
63
+ throw new TypeError("Super expression must either be null or a function");
64
+ }
65
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
66
+ constructor: {
67
+ value: subClass,
68
+ writable: true,
69
+ configurable: true
70
+ }
71
+ });
72
+ if (superClass) _set_prototype_of(subClass, superClass);
73
+ }
74
+ function _interop_require_default(obj) {
75
+ return obj && obj.__esModule ? obj : {
76
+ default: obj
77
+ };
78
+ }
79
+ function _possible_constructor_return(self, call) {
80
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
81
+ return call;
82
+ }
83
+ return _assert_this_initialized(self);
84
+ }
85
+ function _set_prototype_of(o, p) {
86
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
87
+ o.__proto__ = p;
88
+ return o;
89
+ };
90
+ return _set_prototype_of(o, p);
91
+ }
92
+ function _super_prop_base(object, property) {
93
+ while(!Object.prototype.hasOwnProperty.call(object, property)){
94
+ object = _get_prototype_of(object);
95
+ if (object === null) break;
96
+ }
97
+ return object;
98
+ }
99
+ function _type_of(obj) {
100
+ "@swc/helpers - typeof";
101
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
102
+ }
103
+ function _is_native_reflect_construct() {
104
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
105
+ if (Reflect.construct.sham) return false;
106
+ if (typeof Proxy === "function") return true;
107
+ try {
108
+ Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
109
+ return true;
110
+ } catch (e) {
111
+ return false;
112
+ }
113
+ }
114
+ function _create_super(Derived) {
115
+ var hasNativeReflectConstruct = _is_native_reflect_construct();
116
+ return function _createSuperInternal() {
117
+ var Super = _get_prototype_of(Derived), result;
118
+ if (hasNativeReflectConstruct) {
119
+ var NewTarget = _get_prototype_of(this).constructor;
120
+ result = Reflect.construct(Super, arguments, NewTarget);
121
+ } else {
122
+ result = Super.apply(this, arguments);
123
+ }
124
+ return _possible_constructor_return(this, result);
125
+ };
126
+ }
127
+ var EqualityNodesVerifier = /*#__PURE__*/ function(NodesVerifier) {
128
+ _inherits(EqualityNodesVerifier, NodesVerifier);
129
+ var _super = _create_super(EqualityNodesVerifier);
130
+ function EqualityNodesVerifier() {
131
+ _class_call_check(this, EqualityNodesVerifier);
132
+ return _super.apply(this, arguments);
133
+ }
134
+ _create_class(EqualityNodesVerifier, [
135
+ {
136
+ key: "verifyNonTerminalNode",
137
+ value: function verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, collections, localContext, verifyAhead) {
138
+ var nonTerminalNodeVerified = false;
139
+ var ruleNameA = nonTerminalNodeA.getRuleName(), ruleNameB = nonTerminalNodeB.getRuleName(); ///
140
+ if (ruleNameA === ruleNameB) {
141
+ switch(ruleNameA){
142
+ case _ruleNames.TERM_RULE_NAME:
143
+ {
144
+ var leftTermNode = nonTerminalNodeA, rightTermNode = nonTerminalNodeB, termNodesEqual = (0, _collection.areTermNodesEqual)(leftTermNode, rightTermNode, collections);
145
+ if (termNodesEqual) {
146
+ var verifiedAhead = verifyAhead();
147
+ nonTerminalNodeVerified = verifiedAhead; ///
148
+ } else {
149
+ nonTerminalNodeVerified = _get(_get_prototype_of(EqualityNodesVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNodeA, nonTerminalNodeB, collections, localContext, verifyAhead);
150
+ }
151
+ break;
152
+ }
153
+ default:
154
+ {
155
+ nonTerminalNodeVerified = _get(_get_prototype_of(EqualityNodesVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNodeA, nonTerminalNodeB, collections, localContext, verifyAhead);
156
+ break;
157
+ }
158
+ }
159
+ }
160
+ return nonTerminalNodeVerified;
161
+ }
162
+ }
163
+ ]);
164
+ return EqualityNodesVerifier;
165
+ }(_nodes.default);
166
+ var equalityNodesVerifier = new EqualityNodesVerifier();
167
+ var _default = equalityNodesVerifier;
168
+
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9lcXVhbGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE5vZGVzVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL25vZGVzXCI7XG5cbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FIH0gZnJvbSBcIi4uLy4uL3J1bGVOYW1lc1wiO1xuaW1wb3J0IHsgYXJlVGVybU5vZGVzRXF1YWwgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2NvbGxlY3Rpb25cIjtcblxuY2xhc3MgRXF1YWxpdHlOb2Rlc1ZlcmlmaWVyIGV4dGVuZHMgTm9kZXNWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBjb2xsZWN0aW9ucywgbG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgcnVsZU5hbWVBID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBydWxlTmFtZUIgPSBub25UZXJtaW5hbE5vZGVCLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gICAgaWYgKHJ1bGVOYW1lQSA9PT0gcnVsZU5hbWVCKSB7XG4gICAgICBzd2l0Y2ggKHJ1bGVOYW1lQSkge1xuICAgICAgICBjYXNlIFRFUk1fUlVMRV9OQU1FOiB7XG4gICAgICAgICAgY29uc3QgbGVmdFRlcm1Ob2RlID0gbm9uVGVybWluYWxOb2RlQSwgLy8vXG4gICAgICAgICAgICAgICAgcmlnaHRUZXJtTm9kZSA9IG5vblRlcm1pbmFsTm9kZUIsIC8vL1xuICAgICAgICAgICAgICAgIHRlcm1Ob2Rlc0VxdWFsID0gYXJlVGVybU5vZGVzRXF1YWwobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCBjb2xsZWN0aW9ucyk7XG5cbiAgICAgICAgICBpZiAodGVybU5vZGVzRXF1YWwpIHtcbiAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHZlcmlmaWVkQWhlYWQ7ICAvLy9cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29sbGVjdGlvbnMsIGxvY2FsQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIGNvbGxlY3Rpb25zLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IGVxdWFsaXR5Tm9kZXNWZXJpZmllciA9IG5ldyBFcXVhbGl0eU5vZGVzVmVyaWZpZXIoKTtcblxuZXhwb3J0IGRlZmF1bHQgZXF1YWxpdHlOb2Rlc1ZlcmlmaWVyO1xuIl0sIm5hbWVzIjpbIkVxdWFsaXR5Tm9kZXNWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZUEiLCJub25UZXJtaW5hbE5vZGVCIiwiY29sbGVjdGlvbnMiLCJsb2NhbENvbnRleHQiLCJ2ZXJpZnlBaGVhZCIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwicnVsZU5hbWVBIiwiZ2V0UnVsZU5hbWUiLCJydWxlTmFtZUIiLCJURVJNX1JVTEVfTkFNRSIsImxlZnRUZXJtTm9kZSIsInJpZ2h0VGVybU5vZGUiLCJ0ZXJtTm9kZXNFcXVhbCIsImFyZVRlcm1Ob2Rlc0VxdWFsIiwidmVyaWZpZWRBaGVhZCIsIk5vZGVzVmVyaWZpZXIiLCJlcXVhbGl0eU5vZGVzVmVyaWZpZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQThDQTs7O2VBQUE7Ozs0REE1QzBCO3lCQUVLOzBCQUNHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFbEMsSUFBQSxBQUFNQSxzQ0FBRCxBQUFMO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JDLGdCQUFnQixFQUFFQyxnQkFBZ0IsRUFBRUMsV0FBVyxFQUFFQyxZQUFZLEVBQUVDLFdBQVc7Z0JBQzlGLElBQUlDLDBCQUEwQjtnQkFFOUIsSUFBTUMsWUFBWU4saUJBQWlCTyxXQUFXLElBQ3hDQyxZQUFZUCxpQkFBaUJNLFdBQVcsSUFBSSxHQUFHO2dCQUVyRCxJQUFJRCxjQUFjRSxXQUFXO29CQUMzQixPQUFRRjt3QkFDTixLQUFLRyx5QkFBYzs0QkFBRTtnQ0FDbkIsSUFBTUMsZUFBZVYsa0JBQ2ZXLGdCQUFnQlYsa0JBQ2hCVyxpQkFBaUJDLElBQUFBLDZCQUFpQixFQUFDSCxjQUFjQyxlQUFlVDtnQ0FFdEUsSUFBSVUsZ0JBQWdCO29DQUNsQixJQUFNRSxnQkFBZ0JWO29DQUV0QkMsMEJBQTBCUyxlQUFnQixHQUFHO2dDQUMvQyxPQUFPO29DQUNMVCwwQkFBMEIsdUJBbkJoQ1Asa0NBbUJzQ0MseUJBQU4sSUFBSyxhQUF1QkMsa0JBQWtCQyxrQkFBa0JDLGFBQWFDLGNBQWNDO2dDQUN2SDtnQ0FFQTs0QkFDRjt3QkFFQTs0QkFBUztnQ0FDUEMsMEJBQTBCLHVCQTFCOUJQLGtDQTBCb0NDLHlCQUFOLElBQUssYUFBdUJDLGtCQUFrQkMsa0JBQWtCQyxhQUFhQyxjQUFjQztnQ0FFckg7NEJBQ0Y7b0JBQ0Y7Z0JBQ0Y7Z0JBRUEsT0FBT0M7WUFDVDs7O1dBbENJUDtFQUE4QmlCLGNBQWE7QUFxQ2pELElBQU1DLHdCQUF3QixJQUFJbEI7SUFFbEMsV0FBZWtCIn0=
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  Object.defineProperty(exports, "default", {
6
6
  enumerable: true,
7
7
  get: function() {
8
- return MetastatementForMetavariableNodesVerifier;
8
+ return _default;
9
9
  }
10
10
  });
11
11
  var _nodes = /*#__PURE__*/ _interop_require_default(require("../../verifier/nodes"));
@@ -181,11 +181,8 @@ var MetastatementForMetavariableNodesVerifier = /*#__PURE__*/ function(NodesVeri
181
181
  var metastatementNode = metastatementNodeB, metastatementNodeMatches = substitution.matchMetastatementNode(metastatementNode);
182
182
  metavariableNodeVerified = metastatementNodeMatches; ///
183
183
  } else {
184
- var createSubstitutions = this.constructor.createSubstitutions;
185
- if (createSubstitutions) {
186
- var metavariableNode = metavariableNodeA, metastatementNode1 = metastatementNodeB, metastatementForMetavariableSubstitution = _metastatementForMetavariable.default.fromMetavariableNodeAndMetastatementNode(metavariableNode, metastatementNode1), substitution1 = metastatementForMetavariableSubstitution; ///
187
- substitutions.push(substitution1);
188
- }
184
+ var metavariableNode = metavariableNodeA, metastatementNode1 = metastatementNodeB, metastatementForMetavariableSubstitution = _metastatementForMetavariable.default.fromMetavariableNodeAndMetastatementNode(metavariableNode, metastatementNode1), substitution1 = metastatementForMetavariableSubstitution; ///
185
+ substitutions.push(substitution1);
189
186
  metavariableNodeVerified = true;
190
187
  }
191
188
  return metavariableNodeVerified;
@@ -194,5 +191,7 @@ var MetastatementForMetavariableNodesVerifier = /*#__PURE__*/ function(NodesVeri
194
191
  ]);
195
192
  return MetastatementForMetavariableNodesVerifier;
196
193
  }(_nodes.default);
194
+ var metastatementForMetavariableNodesVerifier = new MetastatementForMetavariableNodesVerifier();
195
+ var _default = metastatementForMetavariableNodesVerifier;
197
196
 
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9tZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZXNcIjtcbmltcG9ydCBNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi8uLi9zdWJzdGl0dXRpb24vbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KCcvbWV0YXN0YXRlbWVudC9tZXRhdmFyaWFibGUhJyk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVOb2Rlc1ZlcmlmaWVyIGV4dGVuZHMgTm9kZXNWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dEEsIGxvY2FsTWV0YUNvbnRleHRCLCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZUIuZ2V0UnVsZU5hbWUoKTtcblxuICAgIGlmIChub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPT09IG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lID0gKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9PT0gTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUpLFxuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lID0gKG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9PT0gTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUpO1xuXG4gICAgICBpZiAobm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lICYmIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSkge1xuICAgICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZUEgPSBub25UZXJtaW5hbE5vZGVBLCAgLy8vXG4gICAgICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlQiA9IG5vblRlcm1pbmFsTm9kZUIsICAvLy9cbiAgICAgICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5TWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGVBLCBtZXRhc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0QSwgbG9jYWxNZXRhQ29udGV4dEIsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICBpZiAobWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCkge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdHJ1ZTsgIC8vL1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0QSwgbG9jYWxNZXRhQ29udGV4dEIsIHZlcmlmeUFoZWFkKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbE1ldGFDb250ZXh0QiwgdmVyaWZ5QWhlYWQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlQSwgbWV0YXN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dEEsIGxvY2FsTWV0YUNvbnRleHRCLCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlQSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShtZXRhc3RhdGVtZW50Tm9kZUEpO1xuXG4gICAgaWYgKG1ldGF2YXJpYWJsZU5vZGVBICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhVmFyaWFibGVOb2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbE1ldGFDb250ZXh0QiwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gbWV0YVZhcmlhYmxlTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbE1ldGFDb250ZXh0QiwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uID0gc3Vic3RpdHV0aW9ucy5maW5kKChzdWJzdGl0dXRpb24pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN1YnN0aXR1dGlvbk1hdGNoZXNNZXRhdmFyaWFibGVOb2RlQSA9IHN1YnN0aXR1dGlvbi5tYXRjaE1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEpO1xuXG4gICAgICAgICAgICBpZiAoc3Vic3RpdHV0aW9uTWF0Y2hlc01ldGF2YXJpYWJsZU5vZGVBKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICBpZiAoc3Vic3RpdHV0aW9uICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlQiwgLy8vXG4gICAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb24ubWF0Y2hNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlczsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB7IGNyZWF0ZVN1YnN0aXR1dGlvbnMgfSA9IHRoaXMuY29uc3RydWN0b3I7XG5cbiAgICAgIGlmIChjcmVhdGVTdWJzdGl0dXRpb25zKSB7XG4gICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlQSwgLy8vXG4gICAgICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVCLCAvLy9cbiAgICAgICAgICAgICAgbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24uZnJvbU1ldGF2YXJpYWJsZU5vZGVBbmRNZXRhc3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICAgIHN1YnN0aXR1dGlvbiA9IG1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb247ICAvLy9cblxuICAgICAgICBzdWJzdGl0dXRpb25zLnB1c2goc3Vic3RpdHV0aW9uKTtcbiAgICAgIH1cblxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkO1xuICB9XG59XG4iXSwibmFtZXMiOlsiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZU5vZGVzVmVyaWZpZXIiLCJtZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsInN1YnN0aXR1dGlvbnMiLCJmaWxlQ29udGV4dEEiLCJsb2NhbE1ldGFDb250ZXh0QiIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSIsIk1FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwibm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lIiwibWV0YXN0YXRlbWVudE5vZGVBIiwibWV0YXN0YXRlbWVudE5vZGVCIiwibWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCIsInZlcmlmeU1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXZhcmlhYmxlTm9kZUEiLCJtZXRhVmFyaWFibGVOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkIiwic3Vic3RpdHV0aW9uIiwiZmluZCIsInN1YnN0aXR1dGlvbk1hdGNoZXNNZXRhdmFyaWFibGVOb2RlQSIsIm1hdGNoTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzIiwibWF0Y2hNZXRhc3RhdGVtZW50Tm9kZSIsImNyZWF0ZVN1YnN0aXR1dGlvbnMiLCJjb25zdHJ1Y3RvciIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsImZyb21NZXRhdmFyaWFibGVOb2RlQW5kTWV0YXN0YXRlbWVudE5vZGUiLCJwdXNoIiwiTm9kZXNWZXJpZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFVcUJBOzs7NERBUks7bUZBQzJCO3FCQUUzQjt5QkFDYzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXhDLElBQU1DLHdCQUF3QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUV6QixJQUFBLEFBQU1GLDBEQUFELEFBQUw7Y0FBTUE7K0JBQUFBO2FBQUFBO2dDQUFBQTs7O2tCQUFBQTs7WUFDbkJHLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JDLGdCQUFnQixFQUFFQyxnQkFBZ0IsRUFBRUMsYUFBYSxFQUFFQyxZQUFZLEVBQUVDLGlCQUFpQixFQUFF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
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9tZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZXNcIjtcbmltcG9ydCBNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi8uLi9zdWJzdGl0dXRpb24vbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KCcvbWV0YXN0YXRlbWVudC9tZXRhdmFyaWFibGUhJyk7XG5cbmNsYXNzIE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVOb2Rlc1ZlcmlmaWVyIGV4dGVuZHMgTm9kZXNWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dEEsIGxvY2FsTWV0YUNvbnRleHRCLCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZUIuZ2V0UnVsZU5hbWUoKTtcblxuICAgIGlmIChub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPT09IG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lID0gKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9PT0gTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUpLFxuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lID0gKG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9PT0gTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUpO1xuXG4gICAgICBpZiAobm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lICYmIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSkge1xuICAgICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZUEgPSBub25UZXJtaW5hbE5vZGVBLCAgLy8vXG4gICAgICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlQiA9IG5vblRlcm1pbmFsTm9kZUIsICAvLy9cbiAgICAgICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5TWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGVBLCBtZXRhc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0QSwgbG9jYWxNZXRhQ29udGV4dEIsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICBpZiAobWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCkge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdHJ1ZTsgIC8vL1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0QSwgbG9jYWxNZXRhQ29udGV4dEIsIHZlcmlmeUFoZWFkKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbE1ldGFDb250ZXh0QiwgdmVyaWZ5QWhlYWQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlQSwgbWV0YXN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dEEsIGxvY2FsTWV0YUNvbnRleHRCLCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlQSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShtZXRhc3RhdGVtZW50Tm9kZUEpO1xuXG4gICAgaWYgKG1ldGF2YXJpYWJsZU5vZGVBICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhVmFyaWFibGVOb2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbE1ldGFDb250ZXh0QiwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gbWV0YVZhcmlhYmxlTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbE1ldGFDb250ZXh0QiwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uID0gc3Vic3RpdHV0aW9ucy5maW5kKChzdWJzdGl0dXRpb24pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN1YnN0aXR1dGlvbk1hdGNoZXNNZXRhdmFyaWFibGVOb2RlQSA9IHN1YnN0aXR1dGlvbi5tYXRjaE1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEpO1xuXG4gICAgICAgICAgICBpZiAoc3Vic3RpdHV0aW9uTWF0Y2hlc01ldGF2YXJpYWJsZU5vZGVBKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICBpZiAoc3Vic3RpdHV0aW9uICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlQiwgLy8vXG4gICAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb24ubWF0Y2hNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlczsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZUEsIC8vL1xuICAgICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZUIsIC8vL1xuICAgICAgICAgICAgbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24uZnJvbU1ldGF2YXJpYWJsZU5vZGVBbmRNZXRhc3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICBzdWJzdGl0dXRpb24gPSBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uOyAgLy8vXG5cbiAgICAgIHN1YnN0aXR1dGlvbnMucHVzaChzdWJzdGl0dXRpb24pO1xuXG4gICAgICBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3QgbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZU5vZGVzVmVyaWZpZXIgPSBuZXcgTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZU5vZGVzVmVyaWZpZXIoKTtcblxuZXhwb3J0IGRlZmF1bHQgbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZU5vZGVzVmVyaWZpZXI7XG4iXSwibmFtZXMiOlsibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZU5vZGVzVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsInN1YnN0aXR1dGlvbnMiLCJmaWxlQ29udGV4dEEiLCJsb2NhbE1ldGFDb250ZXh0QiIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSIsIk1FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwibm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lIiwibWV0YXN0YXRlbWVudE5vZGVBIiwibWV0YXN0YXRlbWVudE5vZGVCIiwibWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCIsInZlcmlmeU1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXZhcmlhYmxlTm9kZUEiLCJtZXRhVmFyaWFibGVOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkIiwic3Vic3RpdHV0aW9uIiwiZmluZCIsInN1YnN0aXR1dGlvbk1hdGNoZXNNZXRhdmFyaWFibGVOb2RlQSIsIm1hdGNoTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzIiwibWF0Y2hNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsImZyb21NZXRhdmFyaWFibGVOb2RlQW5kTWV0YXN0YXRlbWVudE5vZGUiLCJwdXNoIiwiTm9kZXNWZXJpZmllciIsIm1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVOb2Rlc1ZlcmlmaWVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFzRkE7OztlQUFBOzs7NERBcEYwQjttRkFDMkI7cUJBRTNCO3lCQUNjOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFeEMsSUFBTUEsd0JBQXdCQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXhDLElBQUEsQUFBTUMsMERBQUQsQUFBTDtjQUFNQTsrQkFBQUE7YUFBQUE7Z0NBQUFBOzs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxnQkFBZ0IsRUFB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
@@ -2,10 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
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
+ default: function() {
8
13
  return _default;
14
+ },
15
+ verifyMetaargument: function() {
16
+ return verifyMetaargument;
9
17
  }
10
18
  });
11
19
  var _nodes = /*#__PURE__*/ _interop_require_default(require("../../verifier/nodes"));
@@ -197,4 +205,4 @@ function verifyMetaargument(metaArgumentNode, combinatorMetaargumentNode, contex
197
205
  return metaArgumentVerified;
198
206
  }
199
207
 
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9zdGF0ZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBOb2Rlc1ZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlc1wiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB2ZXJpZnlBcmd1bWVudCB9IGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlcy90ZXJtXCI7XG5pbXBvcnQgeyBTVEFURU1FTlRfTUVUQV9UWVBFIH0gZnJvbSBcIi4uLy4uL21ldGFUeXBlc1wiO1xuaW1wb3J0IHsgQVJHVU1FTlRfUlVMRV9OQU1FLCBNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgbWV0YVR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YUFyZ3VtZW50L21ldGFUeXBlIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhQXJndW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVR5cGUvQG1ldGEtdHlwZVwiKTtcblxuY2xhc3MgU3RhdGVtZW50Tm9kZXNWZXJpZmllciBleHRlbmRzIE5vZGVzVmVyaWZpZXIge1xuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vblRlcm1pbmFsTm9kZUEsIC8vL1xuICAgICAgICAgIGNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUgPSBub25UZXJtaW5hbE5vZGVCOyAvLy9cblxuICAgIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCksIC8vL1xuICAgICAgICAgIGNvbWJpbmF0b3JSdWxlTmFtZSA9IGNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAocnVsZU5hbWUgPT09IGNvbWJpbmF0b3JSdWxlTmFtZSkge1xuICAgICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgICBjYXNlIEFSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IGFyZ3VtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgY29uc3RydWN0b3JBcmd1bWVudE5vZGUgPSBjb21iaW5hdG9yTm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBhcmd1bWVudFZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IG1ldGFBcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGNvbWJpbmF0b3JNZXRhYXJndW1lbnROb2RlID0gY29tYmluYXRvck5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgbWV0YUFyZ3VtZW50VmVyaWZpZWQgPSB2ZXJpZnlNZXRhYXJndW1lbnQobWV0YUFyZ3VtZW50Tm9kZSwgY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgICBtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQgPSBtZXRhQXJndW1lbnRWZXJpZmllZDsgIC8vL1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3Qgc3RhdGVtZW50Tm9kZXNWZXJpZmllciA9IG5ldyBTdGF0ZW1lbnROb2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHN0YXRlbWVudE5vZGVzVmVyaWZpZXI7XG5cbmZ1bmN0aW9uIHZlcmlmeU1ldGFhcmd1bWVudChtZXRhQXJndW1lbnROb2RlLCBjb21iaW5hdG9yTWV0YWFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IG1ldGFBcmd1bWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YUFyZ3VtZW50U3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcobWV0YUFyZ3VtZW50Tm9kZSk7XG5cbiAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhQXJndW1lbnRTdHJpbmd9JyBtZXRhYXJndW1lbnQuLi5gLCBtZXRhQXJndW1lbnROb2RlKTtcblxuICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KG1ldGFBcmd1bWVudE5vZGUpLFxuICAgICAgICBjb21iaW5hdG9yTWV0YVRZcGVOb2RlID0gbWV0YVR5cGVOb2RlUXVlcnkoY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUpO1xuXG4gIGlmIChzdGF0ZW1lbnROb2RlID09PSBudWxsKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgRXhwZWN0ZWQgYSBzdGF0ZW1lbnQgYnV0IGdvdCBhICcke21ldGFBcmd1bWVudFN0cmluZ30nIG1ldGEtdHlwZS5gLCBtZXRhQXJndW1lbnROb2RlKTtcbiAgfSBlbHNlIHtcbiAgICBpZiAoY29tYmluYXRvck1ldGFUWXBlTm9kZSA9PT0gbnVsbCkge1xuICAgICAgY29uc3QgY29tYmluYXRvck1ldGFhcmd1bWVudFN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKGNvbWJpbmF0b3JNZXRhYXJndW1lbnROb2RlKTtcblxuICAgICAgY29udGV4dC5kZWJ1ZyhgRXhwZWN0ZWQgYSBtZXRhLXR5cGUgYnV0IGdvdCBhICcke2NvbWJpbmF0b3JNZXRhYXJndW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnQuYCwgbWV0YUFyZ3VtZW50Tm9kZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNvbWJpbmF0b3JNZXRhVHlwZVRlcm1pbmFsTm9kZSA9IG1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkoY29tYmluYXRvck1ldGFUWXBlTm9kZSksXG4gICAgICAgICAgICBjb250ZW50ID0gY29tYmluYXRvck1ldGFUeXBlVGVybWluYWxOb2RlLmdldENvbnRlbnQoKSxcbiAgICAgICAgICAgIGNvbnRlbnRTdGF0ZW1lbnRNZXRhVHlwZSA9IChjb250ZW50ID09PSBTVEFURU1FTlRfTUVUQV9UWVBFKTtcblxuICAgICAgaWYgKCFjb250ZW50U3RhdGVtZW50TWV0YVR5cGUpIHtcbiAgICAgICAgY29udGV4dC5kZWJ1ZyhgRXhwZWN0ZWQgdGhlIG1ldGEtdHlwZSBvZiB0aGUgY29tYmluYXRvciB0byBiZSAnJHtTVEFURU1FTlRfTUVUQV9UWVBFfScgYnV0IGdvdCAnJHtjb250ZW50fScgaW5zdGVhZC5gLCBtZXRhQXJndW1lbnROb2RlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICAgIG1ldGFBcmd1bWVudFZlcmlmaWVkID0gdmVyaWZpZWRBaGVhZDsgLy8vXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKG1ldGFBcmd1bWVudFZlcmlmaWVkKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGFBcmd1bWVudFN0cmluZ30nIG1ldGFhcmd1bWVudC5gLCBtZXRhQXJndW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhQXJndW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJtZXRhVHlwZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkiLCJTdGF0ZW1lbnROb2Rlc1ZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJjb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsIm5vblRlcm1pbmFsTm9kZSIsImNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiY29tYmluYXRvclJ1bGVOYW1lIiwiQVJHVU1FTlRfUlVMRV9OQU1FIiwiYXJndW1lbnROb2RlIiwiY29uc3RydWN0b3JBcmd1bWVudE5vZGUiLCJhcmd1bWVudFZlcmlmaWVkIiwidmVyaWZ5QXJndW1lbnQiLCJNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRSIsIm1ldGFBcmd1bWVudE5vZGUiLCJjb21iaW5hdG9yTWV0YWFyZ3VtZW50Tm9kZSIsIm1ldGFBcmd1bWVudFZlcmlmaWVkIiwidmVyaWZ5TWV0YWFyZ3VtZW50IiwibWV0YUFyZ3VtZW50Tm9kZVZlcmlmaWVkIiwiTm9kZXNWZXJpZmllciIsInN0YXRlbWVudE5vZGVzVmVyaWZpZXIiLCJtZXRhQXJndW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInN0YXRlbWVudE5vZGUiLCJjb21iaW5hdG9yTWV0YVRZcGVOb2RlIiwiZGVidWciLCJjb21iaW5hdG9yTWV0YWFyZ3VtZW50U3RyaW5nIiwiY29tYmluYXRvck1ldGFUeXBlVGVybWluYWxOb2RlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJjb250ZW50U3RhdGVtZW50TWV0YVR5cGUiLCJTVEFURU1FTlRfTUVUQV9UWVBFIiwidmVyaWZpZWRBaGVhZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBNERBOzs7ZUFBQTs7OzREQTFEMEI7cUJBRUE7b0JBQ0s7eUJBQ0s7eUJBQ3dCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFNUQsSUFBTUEsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDLDRCQUM5QkMscUJBQXFCRCxJQUFBQSxnQkFBUyxFQUFDLDZCQUMvQkUsNEJBQTRCRixJQUFBQSxnQkFBUyxFQUFDO0FBRTVDLElBQUEsQUFBTUcsdUNBQUQsQUFBTDtjQUFNQTsrQkFBQUE7YUFBQUE7Z0NBQUFBOzs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxnQkFBZ0IsRUFBRUMsZ0JBQWdCLEVBQUVDLE9BQU8sRUFBRUMsV0FBVztnQkFDNUUsSUFBSUMsMEJBQTBCO2dCQUU5QixJQUFNQyxrQkFBa0JMLGtCQUNsQk0sNEJBQTRCTCxrQkFBa0IsR0FBRztnQkFFdkQsSUFBTU0sV0FBV0YsZ0JBQWdCRyxXQUFXLElBQ3RDQyxxQkFBcUJILDBCQUEwQkUsV0FBVyxJQUFJLEdBQUc7Z0JBRXZFLElBQUlELGFBQWFFLG9CQUFvQjtvQkFDbkMsT0FBUUY7d0JBQ04sS0FBS0csNkJBQWtCOzRCQUFFO2dDQUN2QixJQUFNQyxlQUFlTixpQkFDZk8sMEJBQTBCTiwyQkFDMUJPLG1CQUFtQkMsSUFBQUEsb0JBQWMsRUFBQ0gsY0FBY0MseUJBQXlCVixTQUFTQztnQ0FFeEZDLDBCQUEwQlMsa0JBQWtCLEdBQUc7Z0NBRS9DOzRCQUNGO3dCQUVBLEtBQUtFLGtDQUF1Qjs0QkFBRTtnQ0FDNUIsSUFBTUMsbUJBQW1CWCxpQkFDbkJZLDZCQUE2QlgsMkJBQzdCWSx1QkFBdUJDLG1CQUFtQkgsa0JBQWtCQyw0QkFBNEJmLFNBQVNDLGNBQ2pHaUIsMkJBQTJCRixzQkFBdUIsR0FBRztnQ0FFM0RkLDBCQUEwQmdCLDBCQUEwQixHQUFHO2dDQUV2RDs0QkFDRjt3QkFFQTs0QkFBUztnQ0FDUGhCLDBCQUEwQix1QkFsQzlCTixtQ0FrQ29DQyx5QkFBTixJQUFLLGFBQXVCQyxrQkFBa0JDLGtCQUFrQkMsU0FBU0M7Z0NBRW5HOzRCQUNGO29CQUNGO2dCQUNGO2dCQUVBLE9BQU9DO1lBQ1Q7OztXQTFDSU47RUFBK0J1QixjQUFhO0FBNkNsRCxJQUFNQyx5QkFBeUIsSUFBSXhCO0lBRW5DLFdBQWV3QjtBQUVmLFNBQVNILG1CQUFtQkgsZ0JBQWdCLEVBQUVDLDBCQUEwQixFQUFFZixPQUFPLEVBQUVDLFdBQVc7SUFDNUYsSUFBSWUsdUJBQXVCO0lBRTNCLElBQU1LLHFCQUFxQnJCLFFBQVFzQixZQUFZLENBQUNSO0lBRWhEZCxRQUFRdUIsS0FBSyxDQUFDLEFBQUMsa0JBQW9DLE9BQW5CRixvQkFBbUIsc0JBQW9CUDtJQUV2RSxJQUFNVSxnQkFBZ0I5QixtQkFBbUJvQixtQkFDbkNXLHlCQUF5QmpDLGtCQUFrQnVCO0lBRWpELElBQUlTLGtCQUFrQixNQUFNO1FBQzFCeEIsUUFBUTBCLEtBQUssQ0FBQyxBQUFDLG1DQUFxRCxPQUFuQkwsb0JBQW1CLGlCQUFlUDtJQUNyRixPQUFPO1FBQ0wsSUFBSVcsMkJBQTJCLE1BQU07WUFDbkMsSUFBTUUsK0JBQStCM0IsUUFBUXNCLFlBQVksQ0FBQ1A7WUFFMURmLFFBQVEwQixLQUFLLENBQUMsQUFBQyxtQ0FBK0QsT0FBN0JDLDhCQUE2QixpQkFBZWI7UUFDL0YsT0FBTztZQUNMLElBQU1jLGlDQUFpQ2pDLDBCQUEwQjhCLHlCQUMzREksVUFBVUQsK0JBQStCRSxVQUFVLElBQ25EQywyQkFBNEJGLFlBQVlHLDhCQUFtQjtZQUVqRSxJQUFJLENBQUNELDBCQUEwQjtnQkFDN0IvQixRQUFRMEIsS0FBSyxDQUFDLEFBQUMsbURBQW1GRyxPQUFqQ0csOEJBQW1CLEVBQUMsZUFBcUIsT0FBUkgsU0FBUSxlQUFhZjtZQUN6SCxPQUFPO2dCQUNMLElBQU1tQixnQkFBZ0JoQztnQkFFdEJlLHVCQUF1QmlCLGVBQWUsR0FBRztZQUMzQztRQUNGO0lBQ0Y7SUFFQSxJQUFJakIsc0JBQXNCO1FBQ3hCaEIsUUFBUTBCLEtBQUssQ0FBQyxBQUFDLG9CQUFzQyxPQUFuQkwsb0JBQW1CLG9CQUFrQlA7SUFDekU7SUFFQSxPQUFPRTtBQUNUIn0=
208
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9zdGF0ZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBOb2Rlc1ZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlc1wiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB2ZXJpZnlBcmd1bWVudCB9IGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlcy90ZXJtXCI7XG5pbXBvcnQgeyBTVEFURU1FTlRfTUVUQV9UWVBFIH0gZnJvbSBcIi4uLy4uL21ldGFUeXBlc1wiO1xuaW1wb3J0IHsgQVJHVU1FTlRfUlVMRV9OQU1FLCBNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgbWV0YVR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YUFyZ3VtZW50L21ldGFUeXBlIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhQXJndW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVR5cGUvQG1ldGEtdHlwZVwiKTtcblxuY2xhc3MgU3RhdGVtZW50Tm9kZXNWZXJpZmllciBleHRlbmRzIE5vZGVzVmVyaWZpZXIge1xuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vblRlcm1pbmFsTm9kZUEsIC8vL1xuICAgICAgICAgIGNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUgPSBub25UZXJtaW5hbE5vZGVCOyAvLy9cblxuICAgIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCksIC8vL1xuICAgICAgICAgIGNvbWJpbmF0b3JSdWxlTmFtZSA9IGNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAocnVsZU5hbWUgPT09IGNvbWJpbmF0b3JSdWxlTmFtZSkge1xuICAgICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgICBjYXNlIEFSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IGFyZ3VtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgY29uc3RydWN0b3JBcmd1bWVudE5vZGUgPSBjb21iaW5hdG9yTm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBhcmd1bWVudFZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IG1ldGFBcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGNvbWJpbmF0b3JNZXRhYXJndW1lbnROb2RlID0gY29tYmluYXRvck5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgbWV0YUFyZ3VtZW50VmVyaWZpZWQgPSB2ZXJpZnlNZXRhYXJndW1lbnQobWV0YUFyZ3VtZW50Tm9kZSwgY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgICBtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQgPSBtZXRhQXJndW1lbnRWZXJpZmllZDsgIC8vL1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3Qgc3RhdGVtZW50Tm9kZXNWZXJpZmllciA9IG5ldyBTdGF0ZW1lbnROb2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHN0YXRlbWVudE5vZGVzVmVyaWZpZXI7XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlNZXRhYXJndW1lbnQobWV0YUFyZ3VtZW50Tm9kZSwgY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCBtZXRhQXJndW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFBcmd1bWVudFN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFBcmd1bWVudE5vZGUpO1xuXG4gIGNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YUFyZ3VtZW50U3RyaW5nfScgbWV0YWFyZ3VtZW50Li4uYCwgbWV0YUFyZ3VtZW50Tm9kZSk7XG5cbiAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeShtZXRhQXJndW1lbnROb2RlKSxcbiAgICAgICAgY29tYmluYXRvck1ldGFUWXBlTm9kZSA9IG1ldGFUeXBlTm9kZVF1ZXJ5KGNvbWJpbmF0b3JNZXRhYXJndW1lbnROb2RlKTtcblxuICBpZiAoc3RhdGVtZW50Tm9kZSA9PT0gbnVsbCkge1xuICAgIGNvbnRleHQuZGVidWcoYEV4cGVjdGVkIGEgc3RhdGVtZW50IGJ1dCBnb3QgYSAnJHttZXRhQXJndW1lbnRTdHJpbmd9JyBtZXRhLXR5cGUuYCwgbWV0YUFyZ3VtZW50Tm9kZSk7XG4gIH0gZWxzZSB7XG4gICAgaWYgKGNvbWJpbmF0b3JNZXRhVFlwZU5vZGUgPT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGNvbWJpbmF0b3JNZXRhYXJndW1lbnRTdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyhjb21iaW5hdG9yTWV0YWFyZ3VtZW50Tm9kZSk7XG5cbiAgICAgIGNvbnRleHQuZGVidWcoYEV4cGVjdGVkIGEgbWV0YS10eXBlIGJ1dCBnb3QgYSAnJHtjb21iaW5hdG9yTWV0YWFyZ3VtZW50U3RyaW5nfScgc3RhdGVtZW50LmAsIG1ldGFBcmd1bWVudE5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBjb21iaW5hdG9yTWV0YVR5cGVUZXJtaW5hbE5vZGUgPSBtZXRhVHlwZVRlcm1pbmFsTm9kZVF1ZXJ5KGNvbWJpbmF0b3JNZXRhVFlwZU5vZGUpLFxuICAgICAgICAgICAgY29udGVudCA9IGNvbWJpbmF0b3JNZXRhVHlwZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgICAgICBjb250ZW50U3RhdGVtZW50TWV0YVR5cGUgPSAoY29udGVudCA9PT0gU1RBVEVNRU5UX01FVEFfVFlQRSk7XG5cbiAgICAgIGlmICghY29udGVudFN0YXRlbWVudE1ldGFUeXBlKSB7XG4gICAgICAgIGNvbnRleHQuZGVidWcoYEV4cGVjdGVkIHRoZSBtZXRhLXR5cGUgb2YgdGhlIGNvbWJpbmF0b3IgdG8gYmUgJyR7U1RBVEVNRU5UX01FVEFfVFlQRX0nIGJ1dCBnb3QgJyR7Y29udGVudH0nIGluc3RlYWQuYCwgbWV0YUFyZ3VtZW50Tm9kZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgICBtZXRhQXJndW1lbnRWZXJpZmllZCA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmIChtZXRhQXJndW1lbnRWZXJpZmllZCkge1xuICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhQXJndW1lbnRTdHJpbmd9JyBtZXRhYXJndW1lbnQuYCwgbWV0YUFyZ3VtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gbWV0YUFyZ3VtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5TWV0YWFyZ3VtZW50IiwibWV0YVR5cGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJtZXRhVHlwZVRlcm1pbmFsTm9kZVF1ZXJ5IiwiU3RhdGVtZW50Tm9kZXNWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZUEiLCJub25UZXJtaW5hbE5vZGVCIiwiY29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJub25UZXJtaW5hbE5vZGUiLCJjb21iaW5hdG9yTm9uVGVybWluYWxOb2RlIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsImNvbWJpbmF0b3JSdWxlTmFtZSIsIkFSR1VNRU5UX1JVTEVfTkFNRSIsImFyZ3VtZW50Tm9kZSIsImNvbnN0cnVjdG9yQXJndW1lbnROb2RlIiwiYXJndW1lbnRWZXJpZmllZCIsInZlcmlmeUFyZ3VtZW50IiwiTUVUQV9BUkdVTUVOVF9SVUxFX05BTUUiLCJtZXRhQXJndW1lbnROb2RlIiwiY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUiLCJtZXRhQXJndW1lbnRWZXJpZmllZCIsIm1ldGFBcmd1bWVudE5vZGVWZXJpZmllZCIsIk5vZGVzVmVyaWZpZXIiLCJzdGF0ZW1lbnROb2Rlc1ZlcmlmaWVyIiwibWV0YUFyZ3VtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJzdGF0ZW1lbnROb2RlIiwiY29tYmluYXRvck1ldGFUWXBlTm9kZSIsImRlYnVnIiwiY29tYmluYXRvck1ldGFhcmd1bWVudFN0cmluZyIsImNvbWJpbmF0b3JNZXRhVHlwZVRlcm1pbmFsTm9kZSIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwiY29udGVudFN0YXRlbWVudE1ldGFUeXBlIiwiU1RBVEVNRU5UX01FVEFfVFlQRSIsInZlcmlmaWVkQWhlYWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQTREQSxPQUFzQztlQUF0Qzs7SUFFZ0JBLGtCQUFrQjtlQUFsQkE7Ozs0REE1RFU7cUJBRUE7b0JBQ0s7eUJBQ0s7eUJBQ3dCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFNUQsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDLDRCQUM5QkMscUJBQXFCRCxJQUFBQSxnQkFBUyxFQUFDLDZCQUMvQkUsNEJBQTRCRixJQUFBQSxnQkFBUyxFQUFDO0FBRTVDLElBQUEsQUFBTUcsdUNBQUQsQUFBTDtjQUFNQTsrQkFBQUE7YUFBQUE7Z0NBQUFBOzs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxnQkFBZ0IsRUFBRUMsZ0JBQWdCLEVBQUVDLE9BQU8sRUFBRUMsV0FBVztnQkFDNUUsSUFBSUMsMEJBQTBCO2dCQUU5QixJQUFNQyxrQkFBa0JMLGtCQUNsQk0sNEJBQTRCTCxrQkFBa0IsR0FBRztnQkFFdkQsSUFBTU0sV0FBV0YsZ0JBQWdCRyxXQUFXLElBQ3RDQyxxQkFBcUJILDBCQUEwQkUsV0FBVyxJQUFJLEdBQUc7Z0JBRXZFLElBQUlELGFBQWFFLG9CQUFvQjtvQkFDbkMsT0FBUUY7d0JBQ04sS0FBS0csNkJBQWtCOzRCQUFFO2dDQUN2QixJQUFNQyxlQUFlTixpQkFDZk8sMEJBQTBCTiwyQkFDMUJPLG1CQUFtQkMsSUFBQUEsb0JBQWMsRUFBQ0gsY0FBY0MseUJBQXlCVixTQUFTQztnQ0FFeEZDLDBCQUEwQlMsa0JBQWtCLEdBQUc7Z0NBRS9DOzRCQUNGO3dCQUVBLEtBQUtFLGtDQUF1Qjs0QkFBRTtnQ0FDNUIsSUFBTUMsbUJBQW1CWCxpQkFDbkJZLDZCQUE2QlgsMkJBQzdCWSx1QkFBdUJ6QixtQkFBbUJ1QixrQkFBa0JDLDRCQUE0QmYsU0FBU0MsY0FDakdnQiwyQkFBMkJELHNCQUF1QixHQUFHO2dDQUUzRGQsMEJBQTBCZSwwQkFBMEIsR0FBRztnQ0FFdkQ7NEJBQ0Y7d0JBRUE7NEJBQVM7Z0NBQ1BmLDBCQUEwQix1QkFsQzlCTixtQ0FrQ29DQyx5QkFBTixJQUFLLGFBQXVCQyxrQkFBa0JDLGtCQUFrQkMsU0FBU0M7Z0NBRW5HOzRCQUNGO29CQUNGO2dCQUNGO2dCQUVBLE9BQU9DO1lBQ1Q7OztXQTFDSU47RUFBK0JzQixjQUFhO0FBNkNsRCxJQUFNQyx5QkFBeUIsSUFBSXZCO0lBRW5DLFdBQWV1QjtBQUVSLFNBQVM1QixtQkFBbUJ1QixnQkFBZ0IsRUFBRUMsMEJBQTBCLEVBQUVmLE9BQU8sRUFBRUMsV0FBVztJQUNuRyxJQUFJZSx1QkFBdUI7SUFFM0IsSUFBTUkscUJBQXFCcEIsUUFBUXFCLFlBQVksQ0FBQ1A7SUFFaERkLFFBQVFzQixLQUFLLENBQUMsQUFBQyxrQkFBb0MsT0FBbkJGLG9CQUFtQixzQkFBb0JOO0lBRXZFLElBQU1TLGdCQUFnQjdCLG1CQUFtQm9CLG1CQUNuQ1UseUJBQXlCaEMsa0JBQWtCdUI7SUFFakQsSUFBSVEsa0JBQWtCLE1BQU07UUFDMUJ2QixRQUFReUIsS0FBSyxDQUFDLEFBQUMsbUNBQXFELE9BQW5CTCxvQkFBbUIsaUJBQWVOO0lBQ3JGLE9BQU87UUFDTCxJQUFJVSwyQkFBMkIsTUFBTTtZQUNuQyxJQUFNRSwrQkFBK0IxQixRQUFRcUIsWUFBWSxDQUFDTjtZQUUxRGYsUUFBUXlCLEtBQUssQ0FBQyxBQUFDLG1DQUErRCxPQUE3QkMsOEJBQTZCLGlCQUFlWjtRQUMvRixPQUFPO1lBQ0wsSUFBTWEsaUNBQWlDaEMsMEJBQTBCNkIseUJBQzNESSxVQUFVRCwrQkFBK0JFLFVBQVUsSUFDbkRDLDJCQUE0QkYsWUFBWUcsOEJBQW1CO1lBRWpFLElBQUksQ0FBQ0QsMEJBQTBCO2dCQUM3QjlCLFFBQVF5QixLQUFLLENBQUMsQUFBQyxtREFBbUZHLE9BQWpDRyw4QkFBbUIsRUFBQyxlQUFxQixPQUFSSCxTQUFRLGVBQWFkO1lBQ3pILE9BQU87Z0JBQ0wsSUFBTWtCLGdCQUFnQi9CO2dCQUV0QmUsdUJBQXVCZ0IsZUFBZSxHQUFHO1lBQzNDO1FBQ0Y7SUFDRjtJQUVBLElBQUloQixzQkFBc0I7UUFDeEJoQixRQUFReUIsS0FBSyxDQUFDLEFBQUMsb0JBQXNDLE9BQW5CTCxvQkFBbUIsb0JBQWtCTjtJQUN6RTtJQUVBLE9BQU9FO0FBQ1QifQ==