occam-verify-cli 0.0.679 → 0.0.680

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 (63) hide show
  1. package/lib/axiomLemmaTheoremConjecture.js +3 -3
  2. package/lib/conclusion.js +9 -3
  3. package/lib/consequent.js +5 -2
  4. package/lib/context/file.js +2 -2
  5. package/lib/equality.js +13 -199
  6. package/lib/premise.js +17 -5
  7. package/lib/supposition.js +9 -3
  8. package/lib/utilities/array.js +5 -2
  9. package/lib/verifier/node/metastatement.js +9 -6
  10. package/lib/verifier/node/termAsConstructor.js +2 -2
  11. package/lib/verifier/nodes/equality.js +155 -0
  12. package/lib/verifier/nodes/metastatementForMetavariable.js +8 -8
  13. package/lib/verifier/nodes/statement.js +6 -5
  14. package/lib/verifier/nodes/term.js +3 -5
  15. package/lib/verifier/nodes/termForVariable.js +24 -16
  16. package/lib/verify/file.js +2 -2
  17. package/lib/verify/label.js +2 -2
  18. package/lib/verify/metastatement.js +8 -5
  19. package/lib/verify/metavariable.js +2 -2
  20. package/lib/verify/statement.js +39 -80
  21. package/lib/verify/term.js +16 -8
  22. package/lib/verify/termAsConstructor.js +2 -2
  23. package/lib/verify/terms.js +45 -0
  24. package/lib/verify/type.js +3 -3
  25. package/lib/verify/typeAssertion.js +124 -0
  26. package/lib/verify/variable.js +3 -3
  27. package/package.json +2 -2
  28. package/src/axiomLemmaTheoremConjecture.js +2 -2
  29. package/src/conclusion.js +10 -2
  30. package/src/consequent.js +7 -1
  31. package/src/context/file.js +2 -2
  32. package/src/equality.js +15 -141
  33. package/src/premise.js +20 -4
  34. package/src/supposition.js +10 -2
  35. package/src/utilities/array.js +1 -1
  36. package/src/verifier/node/metastatement.js +9 -5
  37. package/src/verifier/node/termAsConstructor.js +1 -1
  38. package/src/verifier/nodes/equality.js +68 -0
  39. package/src/verifier/nodes/metastatementForMetavariable.js +7 -7
  40. package/src/verifier/nodes/statement.js +6 -4
  41. package/src/verifier/nodes/term.js +1 -6
  42. package/src/verifier/nodes/termForVariable.js +34 -22
  43. package/src/verify/file.js +1 -1
  44. package/src/verify/label.js +1 -1
  45. package/src/verify/metastatement.js +8 -4
  46. package/src/verify/metavariable.js +1 -1
  47. package/src/verify/statement.js +50 -119
  48. package/src/verify/term.js +20 -12
  49. package/src/verify/termAsConstructor.js +1 -1
  50. package/src/verify/terms.js +54 -0
  51. package/src/verify/type.js +2 -2
  52. package/src/verify/typeAssertion.js +164 -0
  53. package/src/verify/variable.js +2 -2
  54. package/lib/node/statement/combinator/equality.js +0 -21
  55. package/lib/ocmbinator/equality.js +0 -126
  56. package/lib/tokens/statement/combinator/equality.js +0 -17
  57. package/lib/verify/assertion/type.js +0 -125
  58. package/lib/verify/typeInference.js +0 -132
  59. package/src/node/statement/combinator/equality.js +0 -9
  60. package/src/ocmbinator/equality.js +0 -23
  61. package/src/tokens/statement/combinator/equality.js +0 -10
  62. package/src/verify/assertion/type.js +0 -169
  63. package/src/verify/typeInference.js +0 -146
@@ -134,19 +134,19 @@ var MetastatementNodeVerifier = /*#__PURE__*/ function(NodeVerifier) {
134
134
  _create_class(MetastatementNodeVerifier, [
135
135
  {
136
136
  key: "verifyNonTerminalNode",
137
- value: function verifyNonTerminalNode(nonTerminalNode, metaproofContext) {
137
+ value: function verifyNonTerminalNode(nonTerminalNode, metaproofContext, verifyAhead) {
138
138
  var nonTerminalNodeVerified;
139
139
  var ruleName = nonTerminalNode.getRuleName(); ///
140
140
  switch(ruleName){
141
141
  case _ruleNames.METAVARIABLE_RULE_NAME:
142
142
  {
143
- var metavariableNode = nonTerminalNode, metavariableVerified = verifyMetavariable(metavariableNode, metaproofContext), metavariableNodeVerified = metavariableVerified; ///
143
+ var metavariableNode = nonTerminalNode, metavariableVerified = verifyMetavariable(metavariableNode, metaproofContext, verifyAhead), metavariableNodeVerified = metavariableVerified; ///
144
144
  nonTerminalNodeVerified = metavariableNodeVerified; ///
145
145
  break;
146
146
  }
147
147
  default:
148
148
  {
149
- nonTerminalNodeVerified = _get(_get_prototype_of(MetastatementNodeVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNode, metaproofContext);
149
+ nonTerminalNodeVerified = _get(_get_prototype_of(MetastatementNodeVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNode, metaproofContext, verifyAhead);
150
150
  break;
151
151
  }
152
152
  }
@@ -158,16 +158,19 @@ var MetastatementNodeVerifier = /*#__PURE__*/ function(NodeVerifier) {
158
158
  }(_node.default);
159
159
  var metastatementNodeVerifier = new MetastatementNodeVerifier();
160
160
  var _default = metastatementNodeVerifier;
161
- function verifyMetavariable(metavariableNode, metaproofContext) {
161
+ function verifyMetavariable(metavariableNode, metaproofContext, verifyAhead) {
162
162
  var metavariableVerified;
163
163
  var metavariableString = metaproofContext.nodeAsString(metavariableNode);
164
164
  metaproofContext.trace("Verifying the '".concat(metavariableString, "' metavariable..."), metavariableNode);
165
165
  var metavariableName = (0, _query.metavariableNameFromMetavariableNode)(metavariableNode), metavariablePresent = metaproofContext.isMetavariablePresentByMetavariableName(metavariableName);
166
- metavariableVerified = metavariablePresent;
166
+ if (metavariablePresent) {
167
+ var verifiedAhead = verifyAhead();
168
+ metavariableVerified = verifiedAhead; ///
169
+ }
167
170
  if (metavariableVerified) {
168
171
  metaproofContext.debug("...verified the '".concat(metavariableString, "' metavariable."), metavariableNode);
169
172
  }
170
173
  return metavariableVerified;
171
174
  }
172
175
 
173
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL21ldGFzdGF0ZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBOb2RlVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL25vZGVcIjtcblxuaW1wb3J0IHsgTUVUQVZBUklBQkxFX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcbmltcG9ydCB7IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY2xhc3MgTWV0YXN0YXRlbWVudE5vZGVWZXJpZmllciBleHRlbmRzIE5vZGVWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIG1ldGFwcm9vZkNvbnRleHQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG5cbiAgICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpOyAvLy9cblxuICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgIGNhc2UgTUVUQVZBUklBQkxFX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YXByb29mQ29udGV4dCksXG4gICAgICAgICAgICAgIG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCA9IG1ldGF2YXJpYWJsZVZlcmlmaWVkOyAgLy8vXG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgbWV0YXByb29mQ29udGV4dCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIgPSBuZXcgTWV0YXN0YXRlbWVudE5vZGVWZXJpZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVyO1xuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YXByb29mQ29udGV4dCkge1xuICBsZXQgbWV0YXZhcmlhYmxlVmVyaWZpZWQ7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlU3RyaW5nID0gbWV0YXByb29mQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgbWV0YXByb29mQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUuLi5gLCBtZXRhdmFyaWFibGVOb2RlKTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVOYW1lID0gbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICBtZXRhdmFyaWFibGVQcmVzZW50ID0gbWV0YXByb29mQ29udGV4dC5pc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5hbWUobWV0YXZhcmlhYmxlTmFtZSk7XG5cbiAgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSBtZXRhdmFyaWFibGVQcmVzZW50O1xuXG4gIGlmIChtZXRhdmFyaWFibGVWZXJpZmllZCkge1xuICAgIG1ldGFwcm9vZkNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUuYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gbWV0YXZhcmlhYmxlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsiTWV0YXN0YXRlbWVudE5vZGVWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsIm1ldGFwcm9vZkNvbnRleHQiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsInJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwibWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZVZlcmlmaWVkIiwidmVyaWZ5TWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkIiwiTm9kZVZlcmlmaWVyIiwibWV0YXN0YXRlbWVudE5vZGVWZXJpZmllciIsIm1ldGF2YXJpYWJsZVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwibWV0YXZhcmlhYmxlTmFtZSIsIm1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZVByZXNlbnQiLCJpc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5hbWUiLCJkZWJ1ZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBcUNBOzs7ZUFBQTs7OzJEQW5DeUI7eUJBRWM7cUJBQ2M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVyRCxJQUFBLEFBQU1BLDBDQTRCSCxBQTVCSDtjQUFNQTsrQkFBQUE7YUFBQUE7Z0NBQUFBOzs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxlQUFlLEVBQUVDLGdCQUFnQjtnQkFDckQsSUFBSUM7Z0JBRUosSUFBTUMsV0FBV0gsZ0JBQWdCSSxXQUFXLElBQUksR0FBRztnQkFFbkQsT0FBUUQ7b0JBQ04sS0FBS0UsaUNBQXNCO3dCQUFFOzRCQUMzQixJQUFNQyxtQkFBbUJOLGlCQUNuQk8sdUJBQXVCQyxtQkFBbUJGLGtCQUFrQkwsbUJBQzVEUSwyQkFBMkJGLHNCQUF1QixHQUFHOzRCQUUzREwsMEJBQTBCTywwQkFBMEIsR0FBRzs0QkFFdkQ7d0JBQ0Y7b0JBRUE7d0JBQVM7NEJBQ1BQLDBCQUEwQix1QkFsQjVCSixzQ0FrQmtDQyx5QkFBTixJQUFLLGFBQXVCQyxpQkFBaUJDOzRCQUV2RTt3QkFDRjtnQkFDRjtnQkFFQSxPQUFPQztZQUNUOzs7V0F6QklKO0VBQWtDWSxhQUFZO0FBNEJwRCxJQUFNQyw0QkFBNEIsSUFBSWI7SUFFdEMsV0FBZWE7QUFFZixTQUFTSCxtQkFBbUJGLGdCQUFnQixFQUFFTCxnQkFBZ0I7SUFDNUQsSUFBSU07SUFFSixJQUFNSyxxQkFBcUJYLGlCQUFpQlksWUFBWSxDQUFDUDtJQUV6REwsaUJBQWlCYSxLQUFLLENBQUMsQUFBQyxrQkFBb0MsT0FBbkJGLG9CQUFtQixzQkFBb0JOO0lBRWhGLElBQU1TLG1CQUFtQkMsSUFBQUEsMkNBQW9DLEVBQUNWLG1CQUN4RFcsc0JBQXNCaEIsaUJBQWlCaUIsdUNBQXVDLENBQUNIO0lBRXJGUix1QkFBdUJVO0lBRXZCLElBQUlWLHNCQUFzQjtRQUN4Qk4saUJBQWlCa0IsS0FBSyxDQUFDLEFBQUMsb0JBQXNDLE9BQW5CUCxvQkFBbUIsb0JBQWtCTjtJQUNsRjtJQUVBLE9BQU9DO0FBQ1QifQ==
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL21ldGFzdGF0ZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBOb2RlVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL25vZGVcIjtcblxuaW1wb3J0IHsgTUVUQVZBUklBQkxFX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcbmltcG9ydCB7IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY2xhc3MgTWV0YXN0YXRlbWVudE5vZGVWZXJpZmllciBleHRlbmRzIE5vZGVWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIG1ldGFwcm9vZkNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3QgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBzd2l0Y2ggKHJ1bGVOYW1lKSB7XG4gICAgICBjYXNlIE1FVEFWQVJJQUJMRV9SVUxFX05BTUU6IHtcbiAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gdmVyaWZ5TWV0YXZhcmlhYmxlKG1ldGF2YXJpYWJsZU5vZGUsIG1ldGFwcm9vZkNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkID0gbWV0YXZhcmlhYmxlVmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZDsgLy8vXG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBtZXRhcHJvb2ZDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIgPSBuZXcgTWV0YXN0YXRlbWVudE5vZGVWZXJpZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVyO1xuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YXByb29mQ29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IG1ldGF2YXJpYWJsZVZlcmlmaWVkO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IG1ldGFwcm9vZkNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIG1ldGFwcm9vZkNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlLi4uYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgbWV0YXZhcmlhYmxlUHJlc2VudCA9IG1ldGFwcm9vZkNvbnRleHQuaXNNZXRhdmFyaWFibGVQcmVzZW50QnlNZXRhdmFyaWFibGVOYW1lKG1ldGF2YXJpYWJsZU5hbWUpO1xuXG4gIGlmIChtZXRhdmFyaWFibGVQcmVzZW50KSB7XG4gICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG5cbiAgICBtZXRhdmFyaWFibGVWZXJpZmllZCA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICB9XG5cbiAgaWYgKG1ldGF2YXJpYWJsZVZlcmlmaWVkKSB7XG4gICAgbWV0YXByb29mQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhdmFyaWFibGVWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJNZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwibWV0YXByb29mQ29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiTUVUQVZBUklBQkxFX1JVTEVfTkFNRSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVWZXJpZmllZCIsInZlcmlmeU1ldGF2YXJpYWJsZSIsIm1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCIsIk5vZGVWZXJpZmllciIsIm1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIiLCJtZXRhdmFyaWFibGVTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsIm1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVQcmVzZW50IiwiaXNNZXRhdmFyaWFibGVQcmVzZW50QnlNZXRhdmFyaWFibGVOYW1lIiwidmVyaWZpZWRBaGVhZCIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFxQ0E7OztlQUFBOzs7MkRBbkN5Qjt5QkFFYztxQkFDYzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXJELElBQUEsQUFBTUEsMENBNEJILEFBNUJIO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JDLGVBQWUsRUFBRUMsZ0JBQWdCLEVBQUVDLFdBQVc7Z0JBQ2xFLElBQUlDO2dCQUVKLElBQU1DLFdBQVdKLGdCQUFnQkssV0FBVyxJQUFJLEdBQUc7Z0JBRW5ELE9BQVFEO29CQUNOLEtBQUtFLGlDQUFzQjt3QkFBRTs0QkFDM0IsSUFBTUMsbUJBQW1CUCxpQkFDbkJRLHVCQUF1QkMsbUJBQW1CRixrQkFBa0JOLGtCQUFrQkMsY0FDOUVRLDJCQUEyQkYsc0JBQXVCLEdBQUc7NEJBRTNETCwwQkFBMEJPLDBCQUEwQixHQUFHOzRCQUV2RDt3QkFDRjtvQkFFQTt3QkFBUzs0QkFDUFAsMEJBQTBCLHVCQWxCNUJMLHNDQWtCa0NDLHlCQUFOLElBQUssYUFBdUJDLGlCQUFpQkMsa0JBQWtCQzs0QkFFekY7d0JBQ0Y7Z0JBQ0Y7Z0JBRUEsT0FBT0M7WUFDVDs7O1dBekJJTDtFQUFrQ2EsYUFBWTtBQTRCcEQsSUFBTUMsNEJBQTRCLElBQUlkO0lBRXRDLFdBQWVjO0FBRWYsU0FBU0gsbUJBQW1CRixnQkFBZ0IsRUFBRU4sZ0JBQWdCLEVBQUVDLFdBQVc7SUFDekUsSUFBSU07SUFFSixJQUFNSyxxQkFBcUJaLGlCQUFpQmEsWUFBWSxDQUFDUDtJQUV6RE4saUJBQWlCYyxLQUFLLENBQUMsQUFBQyxrQkFBb0MsT0FBbkJGLG9CQUFtQixzQkFBb0JOO0lBRWhGLElBQU1TLG1CQUFtQkMsSUFBQUEsMkNBQW9DLEVBQUNWLG1CQUN4RFcsc0JBQXNCakIsaUJBQWlCa0IsdUNBQXVDLENBQUNIO0lBRXJGLElBQUlFLHFCQUFxQjtRQUN2QixJQUFNRSxnQkFBZ0JsQjtRQUV0Qk0sdUJBQXVCWSxlQUFlLEdBQUc7SUFDM0M7SUFFQSxJQUFJWixzQkFBc0I7UUFDeEJQLGlCQUFpQm9CLEtBQUssQ0FBQyxBQUFDLG9CQUFzQyxPQUFuQlIsb0JBQW1CLG9CQUFrQk47SUFDbEY7SUFFQSxPQUFPQztBQUNUIn0=
@@ -194,7 +194,7 @@ function verifyType(typeNode, fileContext, verifyAhead) {
194
194
  fileContext.trace("Verifying the '".concat(typeString, "' type..."), typeNode);
195
195
  var typeName = (0, _query.typeNameFromTypeNode)(typeNode), typePresent = fileContext.isTypePresentByTypeName(typeName);
196
196
  if (!typePresent) {
197
- fileContext.info("The type '".concat(typeName, "' is not present."), typeNode);
197
+ fileContext.debug("The type '".concat(typeName, "' is not present."), typeNode);
198
198
  } else {
199
199
  fileContext.debug("...verified the '".concat(typeString, "' type."), typeNode);
200
200
  var verifiedAhead = verifyAhead();
@@ -221,4 +221,4 @@ function verifyArgument(argumentNode, fileContext, verifyAhead) {
221
221
  return argumentVerified;
222
222
  }
223
223
 
224
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL3Rlcm1Bc0NvbnN0cnVjdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5VGVybSBmcm9tIFwiLi4vLi4vdmVyaWZ5L3Rlcm1cIjtcbmltcG9ydCBOb2RlVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL25vZGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5LCB0eXBlTmFtZUZyb21UeXBlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FLCBBUkdVTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzXCI7XG5cbmNvbnN0IHR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJndW1lbnQvdHlwZVwiKSxcbiAgICAgIHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJndW1lbnQvdGVybVwiKTtcblxuY2xhc3MgVGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIgZXh0ZW5kcyBOb2RlVmVyaWZpZXIge1xuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG5cbiAgICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpO1xuXG4gICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgY2FzZSBURVJNX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCB0ZXJtTm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgdGVybU5vZGVWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRlcm1Ob2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIEFSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCBhcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpLFxuICAgICAgICAgICAgICBhcmd1bWVudE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50VmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50Tm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN1cGVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IHRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyID0gbmV3IFRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyO1xuXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5U3RhbmRhbG9uZVRlcm0odGVybU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgc3RhbmRhbG9uZVRlcm1WZXJpZmllZDtcblxuICBjb25zdCB0ZXJtU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHt0ZXJtU3RyaW5nfScgc3RhbmRhbG9uZSB0ZXJtLi4uYCwgdGVybU5vZGUpO1xuXG4gIGNvbnN0IHR5cGVzID0gW10sXG4gICAgICAgIGNvbnRleHQgPSBmaWxlQ29udGV4dCwgIC8vL1xuICAgICAgICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHRlcm1Ob2RlLCB0eXBlcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB0ZXJtVmVyaWZpZWQ7ICAvLy9cblxuICBpZiAoc3RhbmRhbG9uZVRlcm1WZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7dGVybVN0cmluZ30nIHN0YW5kYWxvbmUgdGVybS5gLCB0ZXJtTm9kZSk7XG4gIH1cblxuICByZXR1cm4gc3RhbmRhbG9uZVRlcm1WZXJpZmllZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZlcmlmeVR5cGUodHlwZU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdHlwZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgdHlwZVN0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVBc1N0cmluZyh0eXBlTm9kZSk7XG5cbiAgZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dHlwZVN0cmluZ30nIHR5cGUuLi5gLCB0eXBlTm9kZSk7XG5cbiAgY29uc3QgdHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZSh0eXBlTm9kZSksXG4gICAgICAgIHR5cGVQcmVzZW50ID0gZmlsZUNvbnRleHQuaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gIGlmICghdHlwZVByZXNlbnQpIHtcbiAgICBmaWxlQ29udGV4dC5pbmZvKGBUaGUgdHlwZSAnJHt0eXBlTmFtZX0nIGlzIG5vdCBwcmVzZW50LmAsIHR5cGVOb2RlKTtcbiAgfSBlbHNlIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3R5cGVTdHJpbmd9JyB0eXBlLmAsIHR5cGVOb2RlKTtcblxuICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgdHlwZVZlcmlmaWVkID0gdmVyaWZpZWRBaGVhZDsgLy8vXG4gIH1cblxuICByZXR1cm4gdHlwZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlBcmd1bWVudChhcmd1bWVudE5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgYXJndW1lbnRWZXJpZmllZDtcblxuICBjb25zdCBhcmd1bWVudFN0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVBc1N0cmluZyhhcmd1bWVudE5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2FyZ3VtZW50U3RyaW5nfScgYXJndW1lbnQuLi5gLCBhcmd1bWVudE5vZGUpO1xuXG4gIGNvbnN0IHR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeShhcmd1bWVudE5vZGUpLFxuICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoYXJndW1lbnROb2RlKTtcblxuICBpZiAodHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCB0eXBlVmVyaWZpZWQgPSB2ZXJpZnlUeXBlKHR5cGVOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgYXJndW1lbnRWZXJpZmllZCA9IHR5cGVWZXJpZmllZDsgLy8vXG4gIH1cblxuICBpZiAodGVybU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBzdGFuZGFsb25lVGVybVZlcmlmaWVkID0gdmVyaWZ5U3RhbmRhbG9uZVRlcm0odGVybU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICBhcmd1bWVudFZlcmlmaWVkID0gc3RhbmRhbG9uZVRlcm1WZXJpZmllZDsgIC8vL1xuICB9XG5cbiAgaWYgKGFyZ3VtZW50VmVyaWZpZWQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2FyZ3VtZW50U3RyaW5nfScgYXJndW1lbnQuYCwgYXJndW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBhcmd1bWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVN0YW5kYWxvbmVUZXJtIiwidmVyaWZ5VHlwZSIsInR5cGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ0ZXJtTm9kZVF1ZXJ5IiwiVGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJmaWxlQ29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiVEVSTV9SVUxFX05BTUUiLCJ0ZXJtTm9kZSIsInN0YW5kYWxvbmVUZXJtVmVyaWZpZWQiLCJ0ZXJtTm9kZVZlcmlmaWVkIiwiQVJHVU1FTlRfUlVMRV9OQU1FIiwiYXJndW1lbnROb2RlIiwiYXJndW1lbnRWZXJpZmllZCIsInZlcmlmeUFyZ3VtZW50IiwiYXJndW1lbnROb2RlVmVyaWZpZWQiLCJOb2RlVmVyaWZpZXIiLCJ0ZXJtQXNDb25zdHJ1Y3Rvck5vZGVWZXJpZmllciIsInRlcm1TdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInR5cGVzIiwiY29udGV4dCIsInRlcm1WZXJpZmllZCIsInZlcmlmeVRlcm0iLCJkZWJ1ZyIsInR5cGVOb2RlIiwidHlwZVZlcmlmaWVkIiwidHlwZVN0cmluZyIsInR5cGVOYW1lIiwidHlwZU5hbWVGcm9tVHlwZU5vZGUiLCJ0eXBlUHJlc2VudCIsImlzVHlwZVByZXNlbnRCeVR5cGVOYW1lIiwiaW5mbyIsInZlcmlmaWVkQWhlYWQiLCJh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
224
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL3Rlcm1Bc0NvbnN0cnVjdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5VGVybSBmcm9tIFwiLi4vLi4vdmVyaWZ5L3Rlcm1cIjtcbmltcG9ydCBOb2RlVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL25vZGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5LCB0eXBlTmFtZUZyb21UeXBlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FLCBBUkdVTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzXCI7XG5cbmNvbnN0IHR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJndW1lbnQvdHlwZVwiKSxcbiAgICAgIHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJndW1lbnQvdGVybVwiKTtcblxuY2xhc3MgVGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIgZXh0ZW5kcyBOb2RlVmVyaWZpZXIge1xuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG5cbiAgICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpO1xuXG4gICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgY2FzZSBURVJNX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCB0ZXJtTm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgdGVybU5vZGVWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRlcm1Ob2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIEFSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCBhcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpLFxuICAgICAgICAgICAgICBhcmd1bWVudE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50VmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50Tm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN1cGVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IHRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyID0gbmV3IFRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyO1xuXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5U3RhbmRhbG9uZVRlcm0odGVybU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgc3RhbmRhbG9uZVRlcm1WZXJpZmllZDtcblxuICBjb25zdCB0ZXJtU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHt0ZXJtU3RyaW5nfScgc3RhbmRhbG9uZSB0ZXJtLi4uYCwgdGVybU5vZGUpO1xuXG4gIGNvbnN0IHR5cGVzID0gW10sXG4gICAgICAgIGNvbnRleHQgPSBmaWxlQ29udGV4dCwgIC8vL1xuICAgICAgICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHRlcm1Ob2RlLCB0eXBlcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gIHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB0ZXJtVmVyaWZpZWQ7ICAvLy9cblxuICBpZiAoc3RhbmRhbG9uZVRlcm1WZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7dGVybVN0cmluZ30nIHN0YW5kYWxvbmUgdGVybS5gLCB0ZXJtTm9kZSk7XG4gIH1cblxuICByZXR1cm4gc3RhbmRhbG9uZVRlcm1WZXJpZmllZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZlcmlmeVR5cGUodHlwZU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdHlwZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgdHlwZVN0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVBc1N0cmluZyh0eXBlTm9kZSk7XG5cbiAgZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dHlwZVN0cmluZ30nIHR5cGUuLi5gLCB0eXBlTm9kZSk7XG5cbiAgY29uc3QgdHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZSh0eXBlTm9kZSksXG4gICAgICAgIHR5cGVQcmVzZW50ID0gZmlsZUNvbnRleHQuaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gIGlmICghdHlwZVByZXNlbnQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlIHR5cGUgJyR7dHlwZU5hbWV9JyBpcyBub3QgcHJlc2VudC5gLCB0eXBlTm9kZSk7XG4gIH0gZWxzZSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0eXBlU3RyaW5nfScgdHlwZS5gLCB0eXBlTm9kZSk7XG5cbiAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgIHR5cGVWZXJpZmllZCA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICB9XG5cbiAgcmV0dXJuIHR5cGVWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IGFyZ3VtZW50VmVyaWZpZWQ7XG5cbiAgY29uc3QgYXJndW1lbnRTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcoYXJndW1lbnROb2RlKTtcblxuICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50Li4uYCwgYXJndW1lbnROb2RlKTtcblxuICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkoYXJndW1lbnROb2RlKSxcbiAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgaWYgKHR5cGVOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdHlwZVZlcmlmaWVkID0gdmVyaWZ5VHlwZSh0eXBlTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgIGFyZ3VtZW50VmVyaWZpZWQgPSB0eXBlVmVyaWZpZWQ7IC8vL1xuICB9XG5cbiAgaWYgKHRlcm1Ob2RlICE9PSBudWxsKSB7XG4gICAgY29uc3Qgc3RhbmRhbG9uZVRlcm1WZXJpZmllZCA9IHZlcmlmeVN0YW5kYWxvbmVUZXJtKHRlcm1Ob2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgYXJndW1lbnRWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cbiAgfVxuXG4gIGlmIChhcmd1bWVudFZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50LmAsIGFyZ3VtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gYXJndW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGFuZGFsb25lVGVybSIsInZlcmlmeVR5cGUiLCJ0eXBlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidGVybU5vZGVRdWVyeSIsIlRlcm1Bc0NvbnN0cnVjdG9yTm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwiZmlsZUNvbnRleHQiLCJ2ZXJpZnlBaGVhZCIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIlRFUk1fUlVMRV9OQU1FIiwidGVybU5vZGUiLCJzdGFuZGFsb25lVGVybVZlcmlmaWVkIiwidGVybU5vZGVWZXJpZmllZCIsIkFSR1VNRU5UX1JVTEVfTkFNRSIsImFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50VmVyaWZpZWQiLCJ2ZXJpZnlBcmd1bWVudCIsImFyZ3VtZW50Tm9kZVZlcmlmaWVkIiwiTm9kZVZlcmlmaWVyIiwidGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIiLCJ0ZXJtU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJ0eXBlcyIsImNvbnRleHQiLCJ0ZXJtVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtIiwiZGVidWciLCJ0eXBlTm9kZSIsInR5cGVWZXJpZmllZCIsInR5cGVTdHJpbmciLCJ0eXBlTmFtZSIsInR5cGVOYW1lRnJvbVR5cGVOb2RlIiwidHlwZVByZXNlbnQiLCJpc1R5cGVQcmVzZW50QnlUeXBlTmFtZSIsInZlcmlmaWVkQWhlYWQiLCJhcmd1bWVu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
@@ -0,0 +1,155 @@
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 _equality = /*#__PURE__*/ _interop_require_default(require("../../equality"));
12
+ var _terms = /*#__PURE__*/ _interop_require_default(require("../../verify/terms"));
13
+ var _nodes = /*#__PURE__*/ _interop_require_default(require("../../verifier/nodes"));
14
+ var _ruleNames = require("../../ruleNames");
15
+ function _assert_this_initialized(self) {
16
+ if (self === void 0) {
17
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
18
+ }
19
+ return self;
20
+ }
21
+ function _class_call_check(instance, Constructor) {
22
+ if (!(instance instanceof Constructor)) {
23
+ throw new TypeError("Cannot call a class as a function");
24
+ }
25
+ }
26
+ function _defineProperties(target, props) {
27
+ for(var i = 0; i < props.length; i++){
28
+ var descriptor = props[i];
29
+ descriptor.enumerable = descriptor.enumerable || false;
30
+ descriptor.configurable = true;
31
+ if ("value" in descriptor) descriptor.writable = true;
32
+ Object.defineProperty(target, descriptor.key, descriptor);
33
+ }
34
+ }
35
+ function _create_class(Constructor, protoProps, staticProps) {
36
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
37
+ if (staticProps) _defineProperties(Constructor, staticProps);
38
+ return Constructor;
39
+ }
40
+ function _get_prototype_of(o) {
41
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
42
+ return o.__proto__ || Object.getPrototypeOf(o);
43
+ };
44
+ return _get_prototype_of(o);
45
+ }
46
+ function _inherits(subClass, superClass) {
47
+ if (typeof superClass !== "function" && superClass !== null) {
48
+ throw new TypeError("Super expression must either be null or a function");
49
+ }
50
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
51
+ constructor: {
52
+ value: subClass,
53
+ writable: true,
54
+ configurable: true
55
+ }
56
+ });
57
+ if (superClass) _set_prototype_of(subClass, superClass);
58
+ }
59
+ function _interop_require_default(obj) {
60
+ return obj && obj.__esModule ? obj : {
61
+ default: obj
62
+ };
63
+ }
64
+ function _possible_constructor_return(self, call) {
65
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
66
+ return call;
67
+ }
68
+ return _assert_this_initialized(self);
69
+ }
70
+ function _set_prototype_of(o, p) {
71
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
72
+ o.__proto__ = p;
73
+ return o;
74
+ };
75
+ return _set_prototype_of(o, p);
76
+ }
77
+ function _type_of(obj) {
78
+ "@swc/helpers - typeof";
79
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
80
+ }
81
+ function _is_native_reflect_construct() {
82
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
83
+ if (Reflect.construct.sham) return false;
84
+ if (typeof Proxy === "function") return true;
85
+ try {
86
+ Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
87
+ return true;
88
+ } catch (e) {
89
+ return false;
90
+ }
91
+ }
92
+ function _create_super(Derived) {
93
+ var hasNativeReflectConstruct = _is_native_reflect_construct();
94
+ return function _createSuperInternal() {
95
+ var Super = _get_prototype_of(Derived), result;
96
+ if (hasNativeReflectConstruct) {
97
+ var NewTarget = _get_prototype_of(this).constructor;
98
+ result = Reflect.construct(Super, arguments, NewTarget);
99
+ } else {
100
+ result = Super.apply(this, arguments);
101
+ }
102
+ return _possible_constructor_return(this, result);
103
+ };
104
+ }
105
+ var EqualityNodesVerifier = /*#__PURE__*/ function(NodesVerifier) {
106
+ _inherits(EqualityNodesVerifier, NodesVerifier);
107
+ var _super = _create_super(EqualityNodesVerifier);
108
+ function EqualityNodesVerifier() {
109
+ _class_call_check(this, EqualityNodesVerifier);
110
+ return _super.apply(this, arguments);
111
+ }
112
+ _create_class(EqualityNodesVerifier, [
113
+ {
114
+ key: "verifyNonTerminalNode",
115
+ value: function verifyNonTerminalNode(leftNonTerminalNode, rightNonTerminalNode, equalities, context, verifyAhead) {
116
+ var nonTerminalNodeVerified = false;
117
+ var leftNonTerminalNodeRuleName = leftNonTerminalNode.getRuleName(), rightNonTerminalNodeRuleName = rightNonTerminalNode.getRuleName();
118
+ if (leftNonTerminalNodeRuleName === rightNonTerminalNodeRuleName) {
119
+ var leftNonTerminalNodeRuleNameTermRuleName = leftNonTerminalNodeRuleName === _ruleNames.TERM_RULE_NAME, rightNonTerminalNodeRuleNameTermRuleName = rightNonTerminalNodeRuleName === _ruleNames.TERM_RULE_NAME;
120
+ if (leftNonTerminalNodeRuleNameTermRuleName && rightNonTerminalNodeRuleNameTermRuleName) {
121
+ var leftTermNode = leftNonTerminalNode, rightTermNode = rightNonTerminalNode, termNodeVerified = this.verifyTermNode(leftTermNode, rightTermNode, equalities, context, verifyAhead);
122
+ nonTerminalNodeVerified = termNodeVerified; ///
123
+ }
124
+ if (!nonTerminalNodeVerified) {
125
+ var leftNonTerminalNodeChildNodes = leftNonTerminalNode.getChildNodes(), rightNonTerminalNodeChildNodes = rightNonTerminalNode.getChildNodes(), leftChildNodes = leftNonTerminalNodeChildNodes, rightChildNodes = rightNonTerminalNodeChildNodes, childNodesVerified = this.verifyChildNodes(leftChildNodes, rightChildNodes, equalities, context, verifyAhead);
126
+ nonTerminalNodeVerified = childNodesVerified; ///
127
+ }
128
+ }
129
+ return nonTerminalNodeVerified;
130
+ }
131
+ },
132
+ {
133
+ key: "verifyTermNode",
134
+ value: function verifyTermNode(leftTermNode, rightTermNode, equalities, context, verifyAhead) {
135
+ var termNodeVerified = false;
136
+ var termsVerified = (0, _terms.default)(leftTermNode, rightTermNode, context, verifyAhead);
137
+ if (termsVerified) {
138
+ var equality = _equality.default.fromLeftTermNodeAndRightTermNode(leftTermNode, rightTermNode), equalityA = equality, equalitiesB = equalities, equalityMatches = equalitiesB.some(function(equalityB) {
139
+ var equalityAMatchesEqualityB = equalityA.match(equalityB, equalitiesB, context);
140
+ if (equalityAMatchesEqualityB) {
141
+ return true;
142
+ }
143
+ });
144
+ termNodeVerified = equalityMatches; ///
145
+ }
146
+ return termNodeVerified;
147
+ }
148
+ }
149
+ ]);
150
+ return EqualityNodesVerifier;
151
+ }(_nodes.default);
152
+ var equalityNodesVerifier = new EqualityNodesVerifier();
153
+ var _default = equalityNodesVerifier;
154
+
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9lcXVhbGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEVxdWFsaXR5IGZyb20gXCIuLi8uLi9lcXVhbGl0eVwiO1xuaW1wb3J0IHZlcmlmeVRlcm1zIGZyb20gXCIuLi8uLi92ZXJpZnkvdGVybXNcIjtcbmltcG9ydCBOb2Rlc1ZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlc1wiO1xuXG5pbXBvcnQgeyBURVJNX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY2xhc3MgRXF1YWxpdHlOb2Rlc1ZlcmlmaWVyIGV4dGVuZHMgTm9kZXNWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShsZWZ0Tm9uVGVybWluYWxOb2RlLCByaWdodE5vblRlcm1pbmFsTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IGxlZnROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSA9IGxlZnROb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgICByaWdodE5vblRlcm1pbmFsTm9kZVJ1bGVOYW1lID0gcmlnaHROb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTtcblxuICAgIGlmIChsZWZ0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWUgPT09IHJpZ2h0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWUpIHtcbiAgICAgIGNvbnN0IGxlZnROb25UZXJtaW5hbE5vZGVSdWxlTmFtZVRlcm1SdWxlTmFtZSA9IChsZWZ0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWUgPT09IFRFUk1fUlVMRV9OQU1FKSxcbiAgICAgICAgICAgIHJpZ2h0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWVUZXJtUnVsZU5hbWUgPSAocmlnaHROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSA9PT0gVEVSTV9SVUxFX05BTUUpO1xuXG4gICAgICBpZiAobGVmdE5vblRlcm1pbmFsTm9kZVJ1bGVOYW1lVGVybVJ1bGVOYW1lICYmIHJpZ2h0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWVUZXJtUnVsZU5hbWUpIHtcbiAgICAgICAgY29uc3QgbGVmdFRlcm1Ob2RlID0gbGVmdE5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHJpZ2h0VGVybU5vZGUgPSByaWdodE5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHRlcm1Ob2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeVRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGVybU5vZGVWZXJpZmllZDsgIC8vL1xuICAgICAgfVxuXG4gICAgICBpZiAoIW5vblRlcm1pbmFsTm9kZVZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IGxlZnROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzID0gbGVmdE5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICAgIHJpZ2h0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcyA9IHJpZ2h0Tm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgbGVmdENoaWxkTm9kZXMgPSBsZWZ0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgICAgIHJpZ2h0Q2hpbGROb2RlcyA9IHJpZ2h0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgICAgIGNoaWxkTm9kZXNWZXJpZmllZCA9IHRoaXMudmVyaWZ5Q2hpbGROb2RlcyhsZWZ0Q2hpbGROb2RlcywgcmlnaHRDaGlsZE5vZGVzLCBlcXVhbGl0aWVzLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBjaGlsZE5vZGVzVmVyaWZpZWQ7IC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeVRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgdGVybU5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgdGVybXNWZXJpZmllZCA9IHZlcmlmeVRlcm1zKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgaWYgKHRlcm1zVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGVxdWFsaXR5ID0gRXF1YWxpdHkuZnJvbUxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGUobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlKSxcbiAgICAgICAgICAgIGVxdWFsaXR5QSA9IGVxdWFsaXR5LCAvLy9cbiAgICAgICAgICAgIGVxdWFsaXRpZXNCID0gZXF1YWxpdGllcywgLy8vXG4gICAgICAgICAgICBlcXVhbGl0eU1hdGNoZXMgPSBlcXVhbGl0aWVzQi5zb21lKChlcXVhbGl0eUIpID0+IHsgLy8vXG4gICAgICAgICAgICAgIGNvbnN0IGVxdWFsaXR5QU1hdGNoZXNFcXVhbGl0eUIgPSBlcXVhbGl0eUEubWF0Y2goZXF1YWxpdHlCLCBlcXVhbGl0aWVzQiwgY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKGVxdWFsaXR5QU1hdGNoZXNFcXVhbGl0eUIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgIHRlcm1Ob2RlVmVyaWZpZWQgPSBlcXVhbGl0eU1hdGNoZXM7ICAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gdGVybU5vZGVWZXJpZmllZDtcbiAgfVxufVxuXG5jb25zdCBlcXVhbGl0eU5vZGVzVmVyaWZpZXIgPSBuZXcgRXF1YWxpdHlOb2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IGVxdWFsaXR5Tm9kZXNWZXJpZmllcjtcbiJdLCJuYW1lcyI6WyJFcXVhbGl0eU5vZGVzVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJsZWZ0Tm9uVGVybWluYWxOb2RlIiwicmlnaHROb25UZXJtaW5hbE5vZGUiLCJlcXVhbGl0aWVzIiwiY29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJsZWZ0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsInJpZ2h0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWUiLCJsZWZ0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWVUZXJtUnVsZU5hbWUiLCJURVJNX1JVTEVfTkFNRSIsInJpZ2h0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWVUZXJtUnVsZU5hbWUiLCJsZWZ0VGVybU5vZGUiLCJyaWdodFRlcm1Ob2RlIiwidGVybU5vZGVWZXJpZmllZCIsInZlcmlmeVRlcm1Ob2RlIiwibGVmdE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwicmlnaHROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzIiwibGVmdENoaWxkTm9kZXMiLCJyaWdodENoaWxkTm9kZXMiLCJjaGlsZE5vZGVzVmVyaWZpZWQiLCJ2ZXJpZnlDaGlsZE5vZGVzIiwidGVybXNWZXJpZmllZCIsInZlcmlmeVRlcm1zIiwiZXF1YWxpdHkiLCJFcXVhbGl0eSIsImZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlIiwiZXF1YWxpdHlBIiwiZXF1YWxpdGllc0IiLCJlcXVhbGl0eU1hdGNoZXMiLCJzb21lIiwiZXF1YWxpdHlCIiwiZXF1YWxpdHlBTWF0Y2hlc0VxdWFsaXR5QiIsIm1hdGNoIiwiTm9kZXNWZXJpZmllciIsImVxdWFsaXR5Tm9kZXNWZXJpZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBbUVBOzs7ZUFBQTs7OytEQWpFcUI7NERBQ0c7NERBQ0U7eUJBRUs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFL0IsSUFBQSxBQUFNQSxzQ0F5REgsQUF6REg7Y0FBTUE7K0JBQUFBO2FBQUFBO2dDQUFBQTs7O2tCQUFBQTs7WUFDSkMsS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQkMsbUJBQW1CLEVBQUVDLG9CQUFvQixFQUFFQyxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsV0FBVztnQkFDL0YsSUFBSUMsMEJBQTBCO2dCQUU5QixJQUFNQyw4QkFBOEJOLG9CQUFvQk8sV0FBVyxJQUM3REMsK0JBQStCUCxxQkFBcUJNLFdBQVc7Z0JBRXJFLElBQUlELGdDQUFnQ0UsOEJBQThCO29CQUNoRSxJQUFNQywwQ0FBMkNILGdDQUFnQ0kseUJBQWMsRUFDekZDLDJDQUE0Q0gsaUNBQWlDRSx5QkFBYztvQkFFakcsSUFBSUQsMkNBQTJDRSwwQ0FBMEM7d0JBQ3ZGLElBQU1DLGVBQWVaLHFCQUNmYSxnQkFBZ0JaLHNCQUNoQmEsbUJBQW1CLElBQUksQ0FBQ0MsY0FBYyxDQUFDSCxjQUFjQyxlQUFlWCxZQUFZQyxTQUFTQzt3QkFFL0ZDLDBCQUEwQlMsa0JBQW1CLEdBQUc7b0JBQ2xEO29CQUVBLElBQUksQ0FBQ1QseUJBQXlCO3dCQUM1QixJQUFNVyxnQ0FBZ0NoQixvQkFBb0JpQixhQUFhLElBQ2pFQyxpQ0FBaUNqQixxQkFBcUJnQixhQUFhLElBQ25FRSxpQkFBaUJILCtCQUNqQkksa0JBQWtCRixnQ0FDbEJHLHFCQUFxQixJQUFJLENBQUNDLGdCQUFnQixDQUFDSCxnQkFBZ0JDLGlCQUFpQmxCLFlBQVlDLFNBQVNDO3dCQUV2R0MsMEJBQTBCZ0Isb0JBQW9CLEdBQUc7b0JBQ25EO2dCQUNGO2dCQUVBLE9BQU9oQjtZQUNUOzs7WUFFQVUsS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVILFlBQVksRUFBRUMsYUFBYSxFQUFFWCxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsV0FBVztnQkFDMUUsSUFBSVUsbUJBQW1CO2dCQUV2QixJQUFNUyxnQkFBZ0JDLElBQUFBLGNBQVcsRUFBQ1osY0FBY0MsZUFBZVYsU0FBU0M7Z0JBRXhFLElBQUltQixlQUFlO29CQUNqQixJQUFNRSxXQUFXQyxpQkFBUSxDQUFDQyxnQ0FBZ0MsQ0FBQ2YsY0FBY0MsZ0JBQ25FZSxZQUFZSCxVQUNaSSxjQUFjM0IsWUFDZDRCLGtCQUFrQkQsWUFBWUUsSUFBSSxDQUFDLFNBQUNDO3dCQUNsQyxJQUFNQyw0QkFBNEJMLFVBQVVNLEtBQUssQ0FBQ0YsV0FBV0gsYUFBYTFCO3dCQUUxRSxJQUFJOEIsMkJBQTJCOzRCQUM3QixPQUFPO3dCQUNUO29CQUNGO29CQUVObkIsbUJBQW1CZ0IsaUJBQWtCLEdBQUc7Z0JBQzFDO2dCQUVBLE9BQU9oQjtZQUNUOzs7V0F0REloQjtFQUE4QnFDLGNBQWE7QUF5RGpELElBQU1DLHdCQUF3QixJQUFJdEM7SUFFbEMsV0FBZXNDIn0=
@@ -136,20 +136,20 @@ var MetastatementForMetavariableNodesVerifier = /*#__PURE__*/ function(NodesVeri
136
136
  _create_class(MetastatementForMetavariableNodesVerifier, [
137
137
  {
138
138
  key: "verifyNonTerminalNode",
139
- value: function verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, substitutions, fileContextA, metaproofContextB) {
139
+ value: function verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, substitutions, fileContextA, metaproofContextB, verifyAhead) {
140
140
  var nonTerminalNodeVerified = false;
141
141
  var nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName();
142
142
  if (nonTerminalNodeBRuleName === nonTerminalNodeARuleName) {
143
143
  var nonTerminalNodeARuleNameMetastatementRuleName = nonTerminalNodeARuleName === _ruleNames.METASTATEMENT_RULE_NAME, nonTerminalNodeBRuleNameMetastatementRuleName = nonTerminalNodeBRuleName === _ruleNames.METASTATEMENT_RULE_NAME;
144
144
  if (nonTerminalNodeARuleNameMetastatementRuleName && nonTerminalNodeBRuleNameMetastatementRuleName) {
145
- var metastatementNodeA = nonTerminalNodeA, metastatementNodeB = nonTerminalNodeB, metastatementNodeVerified = this.verifyMetastatementNode(metastatementNodeA, metastatementNodeB, substitutions, fileContextA, metaproofContextB);
145
+ var metastatementNodeA = nonTerminalNodeA, metastatementNodeB = nonTerminalNodeB, metastatementNodeVerified = this.verifyMetastatementNode(metastatementNodeA, metastatementNodeB, substitutions, fileContextA, metaproofContextB, verifyAhead);
146
146
  if (metastatementNodeVerified) {
147
147
  nonTerminalNodeVerified = true; ///
148
148
  } else {
149
- nonTerminalNodeVerified = _get(_get_prototype_of(MetastatementForMetavariableNodesVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNodeA, nonTerminalNodeB, substitutions, fileContextA, metaproofContextB);
149
+ nonTerminalNodeVerified = _get(_get_prototype_of(MetastatementForMetavariableNodesVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNodeA, nonTerminalNodeB, substitutions, fileContextA, metaproofContextB, verifyAhead);
150
150
  }
151
151
  } else {
152
- nonTerminalNodeVerified = _get(_get_prototype_of(MetastatementForMetavariableNodesVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNodeA, nonTerminalNodeB, substitutions, fileContextA, metaproofContextB);
152
+ nonTerminalNodeVerified = _get(_get_prototype_of(MetastatementForMetavariableNodesVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNodeA, nonTerminalNodeB, substitutions, fileContextA, metaproofContextB, verifyAhead);
153
153
  }
154
154
  }
155
155
  return nonTerminalNodeVerified;
@@ -157,11 +157,11 @@ var MetastatementForMetavariableNodesVerifier = /*#__PURE__*/ function(NodesVeri
157
157
  },
158
158
  {
159
159
  key: "verifyMetastatementNode",
160
- value: function verifyMetastatementNode(metastatementNodeA, metastatementNodeB, substitutions, fileContextA, metaproofContextB) {
160
+ value: function verifyMetastatementNode(metastatementNodeA, metastatementNodeB, substitutions, fileContextA, metaproofContextB, verifyAhead) {
161
161
  var metastatementNodeVerified = false;
162
162
  var metavariableNodeA = metavariableNodeQuery(metastatementNodeA);
163
163
  if (metavariableNodeA !== null) {
164
- var metaVariableNodeVerified = this.verifyMetavariableNode(metavariableNodeA, metastatementNodeB, substitutions, fileContextA, metaproofContextB);
164
+ var metaVariableNodeVerified = this.verifyMetavariableNode(metavariableNodeA, metastatementNodeB, substitutions, fileContextA, metaproofContextB, verifyAhead);
165
165
  metastatementNodeVerified = metaVariableNodeVerified; ///
166
166
  }
167
167
  return metastatementNodeVerified;
@@ -169,7 +169,7 @@ var MetastatementForMetavariableNodesVerifier = /*#__PURE__*/ function(NodesVeri
169
169
  },
170
170
  {
171
171
  key: "verifyMetavariableNode",
172
- value: function verifyMetavariableNode(metavariableNodeA, metastatementNodeB, substitutions, fileContextA, metaproofContextB) {
172
+ value: function verifyMetavariableNode(metavariableNodeA, metastatementNodeB, substitutions, fileContextA, metaproofContextB, verifyAhead) {
173
173
  var metavariableNodeVerified;
174
174
  var metavariableNameA = (0, _query.metavariableNameFromMetavariableNode)(metavariableNodeA), substitution = substitutions.find(function(substitution) {
175
175
  var metavariableName = substitution.getMetavariableName();
@@ -195,4 +195,4 @@ var MetastatementForMetavariableNodesVerifier = /*#__PURE__*/ function(NodesVeri
195
195
  return MetastatementForMetavariableNodesVerifier;
196
196
  }(_nodes.default);
197
197
 
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9tZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZXNcIjtcbmltcG9ydCBNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi8uLi9zdWJzdGl0dXRpb24vbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcbmltcG9ydCB7IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KCcvbWV0YXN0YXRlbWVudC9tZXRhdmFyaWFibGUhJyk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVOb2Rlc1ZlcmlmaWVyIGV4dGVuZHMgTm9kZXNWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dEEsIG1ldGFwcm9vZkNvbnRleHRCKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVBLmdldFJ1bGVOYW1lKCksXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQi5nZXRSdWxlTmFtZSgpO1xuXG4gICAgaWYgKG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9PT0gbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lKSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBUnVsZU5hbWVNZXRhc3RhdGVtZW50UnVsZU5hbWUgPSAobm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID09PSBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSksXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWVNZXRhc3RhdGVtZW50UnVsZU5hbWUgPSAobm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lID09PSBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSk7XG5cbiAgICAgIGlmIChub25UZXJtaW5hbE5vZGVBUnVsZU5hbWVNZXRhc3RhdGVtZW50UnVsZU5hbWUgJiYgbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lKSB7XG4gICAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlQSA9IG5vblRlcm1pbmFsTm9kZUEsICAvLy9cbiAgICAgICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGVCID0gbm9uVGVybWluYWxOb2RlQiwgIC8vL1xuICAgICAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBtZXRhcHJvb2ZDb250ZXh0Qik7XG5cbiAgICAgICAgaWYgKG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZWQpIHtcbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRydWU7ICAvLy9cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN1cGVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dEEsIG1ldGFwcm9vZkNvbnRleHRCKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBtZXRhcHJvb2ZDb250ZXh0Qik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5TWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGVBLCBtZXRhc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0QSwgbWV0YXByb29mQ29udGV4dEIpIHtcbiAgICBsZXQgbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZUEgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkobWV0YXN0YXRlbWVudE5vZGVBKTtcblxuICAgIGlmIChtZXRhdmFyaWFibGVOb2RlQSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgbWV0YVZhcmlhYmxlTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGVBLCBtZXRhc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0QSwgbWV0YXByb29mQ29udGV4dEIpO1xuXG4gICAgICBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gbWV0YVZhcmlhYmxlTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBtZXRhcHJvb2ZDb250ZXh0Qikge1xuICAgIGxldCBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQ7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOYW1lQSA9IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlQSksXG4gICAgICAgICAgc3Vic3RpdHV0aW9uID0gc3Vic3RpdHV0aW9ucy5maW5kKChzdWJzdGl0dXRpb24pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5hbWUgPSBzdWJzdGl0dXRpb24uZ2V0TWV0YXZhcmlhYmxlTmFtZSgpO1xuXG4gICAgICAgICAgICBpZiAobWV0YXZhcmlhYmxlTmFtZSA9PT0gbWV0YXZhcmlhYmxlTmFtZUEpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSkgfHwgbnVsbDtcblxuICAgIGlmIChzdWJzdGl0dXRpb24gIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVCLCAvLy9cbiAgICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHN1YnN0aXR1dGlvbi5tYXRjaE1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkID0gbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzOyAgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHsgY3JlYXRlU3Vic3RpdHV0aW9ucyB9ID0gdGhpcy5jb25zdHJ1Y3RvcjtcblxuICAgICAgaWYgKGNyZWF0ZVN1YnN0aXR1dGlvbnMpIHtcbiAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWVBLCAvLy9cbiAgICAgICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZUIsIC8vL1xuICAgICAgICAgICAgICBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbi5mcm9tTWV0YXZhcmlhYmxlTmFtZUFuZE1ldGFzdGF0ZW1lbnROb2RlKG1ldGF2YXJpYWJsZU5hbWUsIG1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICAgICAgc3Vic3RpdHV0aW9uID0gbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbjsgIC8vL1xuXG4gICAgICAgIHN1YnN0aXR1dGlvbnMucHVzaChzdWJzdGl0dXRpb24pO1xuICAgICAgfVxuXG4gICAgICBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlTm9kZXNWZXJpZmllciIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZUEiLCJub25UZXJtaW5hbE5vZGVCIiwic3Vic3RpdHV0aW9ucyIsImZpbGVDb250ZXh0QSIsIm1ldGFwcm9vZkNvbnRleHRCIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSIsIk1FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwibm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lIiwibWV0YXN0YXRlbWVudE5vZGVBIiwibWV0YXN0YXRlbWVudE5vZGVCIiwibWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCIsInZlcmlmeU1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXZhcmlhYmxlTm9kZUEiLCJtZXRhVmFyaWFibGVOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkIiwibWV0YXZhcmlhYmxlTmFtZUEiLCJtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJzdWJzdGl0dXRpb24iLCJmaW5kIiwibWV0YXZhcmlhYmxlTmFtZSIsImdldE1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoTWV0YXN0YXRlbWVudE5vZGUiLCJjcmVhdGVTdWJzdGl0dXRpb25zIiwiY29uc3RydWN0b3IiLCJtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsImZyb21NZXRhdmFyaWFibGVOYW1lQW5kTWV0YXN0YXRlbWVudE5vZGUiLCJwdXNoIiwiTm9kZXNWZXJpZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFXcUJBOzs7NERBVEs7bUZBQzJCO3FCQUUzQjt5QkFDYzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR3hDLElBQU1DLHdCQUF3QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUV6QixJQUFBLEFBQU1GLDBEQUFOO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ25CRyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxnQkFBZ0IsRUFBRUMsZ0JBQWdC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
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9tZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZXNcIjtcbmltcG9ydCBNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi8uLi9zdWJzdGl0dXRpb24vbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcbmltcG9ydCB7IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KCcvbWV0YXN0YXRlbWVudC9tZXRhdmFyaWFibGUhJyk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVOb2Rlc1ZlcmlmaWVyIGV4dGVuZHMgTm9kZXNWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dEEsIG1ldGFwcm9vZkNvbnRleHRCLCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZUIuZ2V0UnVsZU5hbWUoKTtcblxuICAgIGlmIChub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPT09IG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lID0gKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9PT0gTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUpLFxuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lID0gKG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9PT0gTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUpO1xuXG4gICAgICBpZiAobm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lICYmIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSkge1xuICAgICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZUEgPSBub25UZXJtaW5hbE5vZGVBLCAgLy8vXG4gICAgICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlQiA9IG5vblRlcm1pbmFsTm9kZUIsICAvLy9cbiAgICAgICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5TWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGVBLCBtZXRhc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0QSwgbWV0YXByb29mQ29udGV4dEIsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICBpZiAobWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCkge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdHJ1ZTsgIC8vL1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0QSwgbWV0YXByb29mQ29udGV4dEIsIHZlcmlmeUFoZWFkKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBtZXRhcHJvb2ZDb250ZXh0QiwgdmVyaWZ5QWhlYWQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlQSwgbWV0YXN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dEEsIG1ldGFwcm9vZkNvbnRleHRCLCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlQSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShtZXRhc3RhdGVtZW50Tm9kZUEpO1xuXG4gICAgaWYgKG1ldGF2YXJpYWJsZU5vZGVBICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhVmFyaWFibGVOb2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBtZXRhcHJvb2ZDb250ZXh0QiwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gbWV0YVZhcmlhYmxlTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBtZXRhcHJvb2ZDb250ZXh0QiwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTmFtZUEgPSBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZUEpLFxuICAgICAgICAgIHN1YnN0aXR1dGlvbiA9IHN1YnN0aXR1dGlvbnMuZmluZCgoc3Vic3RpdHV0aW9uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVOYW1lID0gc3Vic3RpdHV0aW9uLmdldE1ldGF2YXJpYWJsZU5hbWUoKTtcblxuICAgICAgICAgICAgaWYgKG1ldGF2YXJpYWJsZU5hbWUgPT09IG1ldGF2YXJpYWJsZU5hbWVBKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICBpZiAoc3Vic3RpdHV0aW9uICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlQiwgLy8vXG4gICAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb24ubWF0Y2hNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlczsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB7IGNyZWF0ZVN1YnN0aXR1dGlvbnMgfSA9IHRoaXMuY29uc3RydWN0b3I7XG5cbiAgICAgIGlmIChjcmVhdGVTdWJzdGl0dXRpb25zKSB7XG4gICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5hbWUgPSBtZXRhdmFyaWFibGVOYW1lQSwgLy8vXG4gICAgICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVCLCAvLy9cbiAgICAgICAgICAgICAgbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24uZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRNZXRhc3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOYW1lLCBtZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICAgIHN1YnN0aXR1dGlvbiA9IG1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb247ICAvLy9cblxuICAgICAgICBzdWJzdGl0dXRpb25zLnB1c2goc3Vic3RpdHV0aW9uKTtcbiAgICAgIH1cblxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkO1xuICB9XG59XG4iXSwibmFtZXMiOlsiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZU5vZGVzVmVyaWZpZXIiLCJtZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsInN1YnN0aXR1dGlvbnMiLCJmaWxlQ29udGV4dEEiLCJtZXRhcHJvb2ZDb250ZXh0QiIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSIsIk1FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwibm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lIiwibWV0YXN0YXRlbWVudE5vZGVBIiwibWV0YXN0YXRlbWVudE5vZGVCIiwibWV0YXN0YXRlbWVudE5vZGVWZXJpZmllZCIsInZlcmlmeU1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXZhcmlhYmxlTm9kZUEiLCJtZXRhVmFyaWFibGVOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkIiwibWV0YXZhcmlhYmxlTmFtZUEiLCJtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJzdWJzdGl0dXRpb24iLCJmaW5kIiwibWV0YXZhcmlhYmxlTmFtZSIsImdldE1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoTWV0YXN0YXRlbWVudE5vZGUiLCJjcmVhdGVTdWJzdGl0dXRpb25zIiwiY29uc3RydWN0b3IiLCJtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsImZyb21NZXRhdmFyaWFibGVOYW1lQW5kTWV0YXN0YXRlbWVudE5vZGUiLCJwdXNoIiwiTm9kZXNWZXJpZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFXcUJBOzs7NERBVEs7bUZBQzJCO3FCQUUzQjt5QkFDYzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR3hDLElBQU1DLHdCQUF3QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUV6QixJ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
@@ -176,17 +176,18 @@ function verifyMetaargument(metaArgumentNode, combinatorMetaargumentNode, contex
176
176
  context.trace("Verifying the '".concat(metaArgumentString, "' metaargument..."), metaArgumentNode);
177
177
  var statementNode = statementNodeQuery(metaArgumentNode), combinatorMetaTYpeNode = metaTypeNodeQuery(combinatorMetaargumentNode);
178
178
  if (statementNode === null) {
179
- context.info("Expected a statement but got a '".concat(metaArgumentString, "' meta-type."), metaArgumentNode);
179
+ context.debug("Expected a statement but got a '".concat(metaArgumentString, "' meta-type."), metaArgumentNode);
180
180
  } else {
181
181
  if (combinatorMetaTYpeNode === null) {
182
182
  var combinatorMetaargumentString = context.nodeAsString(combinatorMetaargumentNode);
183
- context.info("Expected a meta-type but got a '".concat(combinatorMetaargumentString, "' statement."), metaArgumentNode);
183
+ context.debug("Expected a meta-type but got a '".concat(combinatorMetaargumentString, "' statement."), metaArgumentNode);
184
184
  } else {
185
185
  var combinatorMetaTypeTerminalNode = metaTypeTerminalNodeQuery(combinatorMetaTYpeNode), content = combinatorMetaTypeTerminalNode.getContent(), contentStatementMetaType = content === _metaTypes.STATEMENT_META_TYPE;
186
186
  if (!contentStatementMetaType) {
187
- context.info("Expected the meta-type to be 'Statement' but got '".concat(content, "'."), metaArgumentNode);
187
+ context.debug("Expected the meta-type of the combinator to be '".concat(_metaTypes.STATEMENT_META_TYPE, "' but got '").concat(content, "' instead."), metaArgumentNode);
188
188
  } else {
189
- metaArgumentVerified = true;
189
+ var verifiedAhead = verifyAhead();
190
+ metaArgumentVerified = verifiedAhead; ///
190
191
  }
191
192
  }
192
193
  }
@@ -196,4 +197,4 @@ function verifyMetaargument(metaArgumentNode, combinatorMetaargumentNode, contex
196
197
  return metaArgumentVerified;
197
198
  }
198
199
 
199
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9zdGF0ZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBOb2Rlc1ZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlc1wiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB2ZXJpZnlBcmd1bWVudCB9IGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlcy90ZXJtXCI7XG5pbXBvcnQgeyBTVEFURU1FTlRfTUVUQV9UWVBFIH0gZnJvbSBcIi4uLy4uL21ldGFUeXBlc1wiO1xuaW1wb3J0IHsgQVJHVU1FTlRfUlVMRV9OQU1FLCBNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgbWV0YVR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YUFyZ3VtZW50L21ldGFUeXBlIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhQXJndW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVR5cGUvQG1ldGEtdHlwZVwiKTtcblxuY2xhc3MgU3RhdGVtZW50Tm9kZXNWZXJpZmllciBleHRlbmRzIE5vZGVzVmVyaWZpZXIge1xuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vblRlcm1pbmFsTm9kZUEsIC8vL1xuICAgICAgICAgIGNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUgPSBub25UZXJtaW5hbE5vZGVCOyAvLy9cblxuICAgIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCksIC8vL1xuICAgICAgICAgIGNvbWJpbmF0b3JSdWxlTmFtZSA9IGNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAocnVsZU5hbWUgPT09IGNvbWJpbmF0b3JSdWxlTmFtZSkge1xuICAgICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgICBjYXNlIEFSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IGFyZ3VtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgY29uc3RydWN0b3JBcmd1bWVudE5vZGUgPSBjb21iaW5hdG9yTm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBhcmd1bWVudFZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IG1ldGFBcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGNvbWJpbmF0b3JNZXRhYXJndW1lbnROb2RlID0gY29tYmluYXRvck5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgbWV0YUFyZ3VtZW50VmVyaWZpZWQgPSB2ZXJpZnlNZXRhYXJndW1lbnQobWV0YUFyZ3VtZW50Tm9kZSwgY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgICBtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQgPSBtZXRhQXJndW1lbnRWZXJpZmllZDsgIC8vL1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3Qgc3RhdGVtZW50Tm9kZXNWZXJpZmllciA9IG5ldyBTdGF0ZW1lbnROb2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHN0YXRlbWVudE5vZGVzVmVyaWZpZXI7XG5cbmZ1bmN0aW9uIHZlcmlmeU1ldGFhcmd1bWVudChtZXRhQXJndW1lbnROb2RlLCBjb21iaW5hdG9yTWV0YWFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IG1ldGFBcmd1bWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YUFyZ3VtZW50U3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcobWV0YUFyZ3VtZW50Tm9kZSk7XG5cbiAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhQXJndW1lbnRTdHJpbmd9JyBtZXRhYXJndW1lbnQuLi5gLCBtZXRhQXJndW1lbnROb2RlKTtcblxuICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KG1ldGFBcmd1bWVudE5vZGUpLFxuICAgICAgICBjb21iaW5hdG9yTWV0YVRZcGVOb2RlID0gbWV0YVR5cGVOb2RlUXVlcnkoY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUpO1xuXG4gIGlmIChzdGF0ZW1lbnROb2RlID09PSBudWxsKSB7XG4gICAgY29udGV4dC5pbmZvKGBFeHBlY3RlZCBhIHN0YXRlbWVudCBidXQgZ290IGEgJyR7bWV0YUFyZ3VtZW50U3RyaW5nfScgbWV0YS10eXBlLmAsIG1ldGFBcmd1bWVudE5vZGUpO1xuICB9IGVsc2Uge1xuICAgIGlmIChjb21iaW5hdG9yTWV0YVRZcGVOb2RlID09PSBudWxsKSB7XG4gICAgICBjb25zdCBjb21iaW5hdG9yTWV0YWFyZ3VtZW50U3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcoY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUpO1xuXG4gICAgICBjb250ZXh0LmluZm8oYEV4cGVjdGVkIGEgbWV0YS10eXBlIGJ1dCBnb3QgYSAnJHtjb21iaW5hdG9yTWV0YWFyZ3VtZW50U3RyaW5nfScgc3RhdGVtZW50LmAsIG1ldGFBcmd1bWVudE5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBjb21iaW5hdG9yTWV0YVR5cGVUZXJtaW5hbE5vZGUgPSBtZXRhVHlwZVRlcm1pbmFsTm9kZVF1ZXJ5KGNvbWJpbmF0b3JNZXRhVFlwZU5vZGUpLFxuICAgICAgICAgICAgY29udGVudCA9IGNvbWJpbmF0b3JNZXRhVHlwZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgICAgICBjb250ZW50U3RhdGVtZW50TWV0YVR5cGUgPSAoY29udGVudCA9PT0gU1RBVEVNRU5UX01FVEFfVFlQRSk7XG5cbiAgICAgIGlmICghY29udGVudFN0YXRlbWVudE1ldGFUeXBlKSB7XG4gICAgICAgIGNvbnRleHQuaW5mbyhgRXhwZWN0ZWQgdGhlIG1ldGEtdHlwZSB0byBiZSAnU3RhdGVtZW50JyBidXQgZ290ICcke2NvbnRlbnR9Jy5gLCBtZXRhQXJndW1lbnROb2RlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG1ldGFBcmd1bWVudFZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAobWV0YUFyZ3VtZW50VmVyaWZpZWQpIHtcbiAgICBjb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bWV0YUFyZ3VtZW50U3RyaW5nfScgbWV0YWFyZ3VtZW50LmAsIG1ldGFBcmd1bWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIG1ldGFBcmd1bWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbIm1ldGFUeXBlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5IiwibWV0YVR5cGVUZXJtaW5hbE5vZGVRdWVyeSIsIlN0YXRlbWVudE5vZGVzVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsImNvbnRleHQiLCJ2ZXJpZnlBaGVhZCIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwibm9uVGVybWluYWxOb2RlIiwiY29tYmluYXRvck5vblRlcm1pbmFsTm9kZSIsInJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJjb21iaW5hdG9yUnVsZU5hbWUiLCJBUkdVTUVOVF9SVUxFX05BTUUiLCJhcmd1bWVudE5vZGUiLCJjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50VmVyaWZpZWQiLCJ2ZXJpZnlBcmd1bWVudCIsIk1FVEFfQVJHVU1FTlRfUlVMRV9OQU1FIiwibWV0YUFyZ3VtZW50Tm9kZSIsImNvbWJpbmF0b3JNZXRhYXJndW1lbnROb2RlIiwibWV0YUFyZ3VtZW50VmVyaWZpZWQiLCJ2ZXJpZnlNZXRhYXJndW1lbnQiLCJtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQiLCJOb2Rlc1ZlcmlmaWVyIiwic3RhdGVtZW50Tm9kZXNWZXJpZmllciIsIm1ldGFBcmd1bWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwic3RhdGVtZW50Tm9kZSIsImNvbWJpbmF0b3JNZXRhVFlwZU5vZGUiLCJpbmZvIiwiY29tYmluYXRvck1ldGFhcmd1bWVudFN0cmluZyIsImNvbWJpbmF0b3JNZXRhVHlwZVRlcm1pbmFsTm9kZSIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwiY29udGVudFN0YXRlbWVudE1ldGFUeXBlIiwiU1RBVEVNRU5UX01FVEFfVFlQRSIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkE0REE7OztlQUFBOzs7NERBMUQwQjtxQkFFQTtvQkFDSzt5QkFDSzt5QkFDd0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU1RCxJQUFNQSxvQkFBb0JDLElBQUFBLGdCQUFTLEVBQUMsNEJBQzlCQyxxQkFBcUJELElBQUFBLGdCQUFTLEVBQUMsNkJBQy9CRSw0QkFBNEJGLElBQUFBLGdCQUFTLEVBQUM7QUFFNUMsSUFBQSxBQUFNRyx1Q0E2Q0gsQUE3Q0g7Y0FBTUE7K0JBQUFBO2FBQUFBO2dDQUFBQTs7O2tCQUFBQTs7WUFDSkMsS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQkMsZ0JBQWdCLEVBQUVDLGdCQUFnQixFQUFFQyxPQUFPLEVBQUVDLFdBQVc7Z0JBQzVFLElBQUlDLDBCQUEwQjtnQkFFOUIsSUFBTUMsa0JBQWtCTCxrQkFDbEJNLDRCQUE0Qkwsa0JBQWtCLEdBQUc7Z0JBRXZELElBQU1NLFdBQVdGLGdCQUFnQkcsV0FBVyxJQUN0Q0MscUJBQXFCSCwwQkFBMEJFLFdBQVcsSUFBSSxHQUFHO2dCQUV2RSxJQUFJRCxhQUFhRSxvQkFBb0I7b0JBQ25DLE9BQVFGO3dCQUNOLEtBQUtHLDZCQUFrQjs0QkFBRTtnQ0FDdkIsSUFBTUMsZUFBZU4saUJBQ2ZPLDBCQUEwQk4sMkJBQzFCTyxtQkFBbUJDLElBQUFBLG9CQUFjLEVBQUNILGNBQWNDLHlCQUF5QlYsU0FBU0M7Z0NBRXhGQywwQkFBMEJTLGtCQUFrQixHQUFHO2dDQUUvQzs0QkFDRjt3QkFFQSxLQUFLRSxrQ0FBdUI7NEJBQUU7Z0NBQzVCLElBQU1DLG1CQUFtQlgsaUJBQ25CWSw2QkFBNkJYLDJCQUM3QlksdUJBQXVCQyxtQkFBbUJILGtCQUFrQkMsNEJBQTRCZixTQUFTQyxjQUNqR2lCLDJCQUEyQkYsc0JBQXVCLEdBQUc7Z0NBRTNEZCwwQkFBMEJnQiwwQkFBMEIsR0FBRztnQ0FFdkQ7NEJBQ0Y7d0JBRUE7NEJBQVM7Z0NBQ1BoQiwwQkFBMEIsdUJBbEM5Qk4sbUNBa0NvQ0MseUJBQU4sSUFBSyxhQUF1QkMsa0JBQWtCQyxrQkFBa0JDLFNBQVNDO2dDQUVuRzs0QkFDRjtvQkFDRjtnQkFDRjtnQkFFQSxPQUFPQztZQUNUOzs7V0ExQ0lOO0VBQStCdUIsY0FBYTtBQTZDbEQsSUFBTUMseUJBQXlCLElBQUl4QjtJQUVuQyxXQUFld0I7QUFFZixTQUFTSCxtQkFBbUJILGdCQUFnQixFQUFFQywwQkFBMEIsRUFBRWYsT0FBTyxFQUFFQyxXQUFXO0lBQzVGLElBQUllLHVCQUF1QjtJQUUzQixJQUFNSyxxQkFBcUJyQixRQUFRc0IsWUFBWSxDQUFDUjtJQUVoRGQsUUFBUXVCLEtBQUssQ0FBQyxBQUFDLGtCQUFvQyxPQUFuQkYsb0JBQW1CLHNCQUFvQlA7SUFFdkUsSUFBTVUsZ0JBQWdCOUIsbUJBQW1Cb0IsbUJBQ25DVyx5QkFBeUJqQyxrQkFBa0J1QjtJQUVqRCxJQUFJUyxrQkFBa0IsTUFBTTtRQUMxQnhCLFFBQVEwQixJQUFJLENBQUMsQUFBQyxtQ0FBcUQsT0FBbkJMLG9CQUFtQixpQkFBZVA7SUFDcEYsT0FBTztRQUNMLElBQUlXLDJCQUEyQixNQUFNO1lBQ25DLElBQU1FLCtCQUErQjNCLFFBQVFzQixZQUFZLENBQUNQO1lBRTFEZixRQUFRMEIsSUFBSSxDQUFDLEFBQUMsbUNBQStELE9BQTdCQyw4QkFBNkIsaUJBQWViO1FBQzlGLE9BQU87WUFDTCxJQUFNYyxpQ0FBaUNqQywwQkFBMEI4Qix5QkFDM0RJLFVBQVVELCtCQUErQkUsVUFBVSxJQUNuREMsMkJBQTRCRixZQUFZRyw4QkFBbUI7WUFFakUsSUFBSSxDQUFDRCwwQkFBMEI7Z0JBQzdCL0IsUUFBUTBCLElBQUksQ0FBQyxBQUFDLHFEQUE0RCxPQUFSRyxTQUFRLE9BQUtmO1lBQ2pGLE9BQU87Z0JBQ0xFLHVCQUF1QjtZQUN6QjtRQUNGO0lBQ0Y7SUFFQSxJQUFJQSxzQkFBc0I7UUFDeEJoQixRQUFRaUMsS0FBSyxDQUFDLEFBQUMsb0JBQXNDLE9BQW5CWixvQkFBbUIsb0JBQWtCUDtJQUN6RTtJQUVBLE9BQU9FO0FBQ1QifQ==
200
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy9zdGF0ZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBOb2Rlc1ZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlc1wiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB2ZXJpZnlBcmd1bWVudCB9IGZyb20gXCIuLi8uLi92ZXJpZmllci9ub2Rlcy90ZXJtXCI7XG5pbXBvcnQgeyBTVEFURU1FTlRfTUVUQV9UWVBFIH0gZnJvbSBcIi4uLy4uL21ldGFUeXBlc1wiO1xuaW1wb3J0IHsgQVJHVU1FTlRfUlVMRV9OQU1FLCBNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgbWV0YVR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YUFyZ3VtZW50L21ldGFUeXBlIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhQXJndW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVR5cGUvQG1ldGEtdHlwZVwiKTtcblxuY2xhc3MgU3RhdGVtZW50Tm9kZXNWZXJpZmllciBleHRlbmRzIE5vZGVzVmVyaWZpZXIge1xuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vblRlcm1pbmFsTm9kZUEsIC8vL1xuICAgICAgICAgIGNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUgPSBub25UZXJtaW5hbE5vZGVCOyAvLy9cblxuICAgIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCksIC8vL1xuICAgICAgICAgIGNvbWJpbmF0b3JSdWxlTmFtZSA9IGNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAocnVsZU5hbWUgPT09IGNvbWJpbmF0b3JSdWxlTmFtZSkge1xuICAgICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgICBjYXNlIEFSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IGFyZ3VtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgY29uc3RydWN0b3JBcmd1bWVudE5vZGUgPSBjb21iaW5hdG9yTm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBhcmd1bWVudFZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IG1ldGFBcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGNvbWJpbmF0b3JNZXRhYXJndW1lbnROb2RlID0gY29tYmluYXRvck5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgbWV0YUFyZ3VtZW50VmVyaWZpZWQgPSB2ZXJpZnlNZXRhYXJndW1lbnQobWV0YUFyZ3VtZW50Tm9kZSwgY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgICBtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQgPSBtZXRhQXJndW1lbnRWZXJpZmllZDsgIC8vL1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBtZXRhQXJndW1lbnROb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3Qgc3RhdGVtZW50Tm9kZXNWZXJpZmllciA9IG5ldyBTdGF0ZW1lbnROb2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHN0YXRlbWVudE5vZGVzVmVyaWZpZXI7XG5cbmZ1bmN0aW9uIHZlcmlmeU1ldGFhcmd1bWVudChtZXRhQXJndW1lbnROb2RlLCBjb21iaW5hdG9yTWV0YWFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IG1ldGFBcmd1bWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YUFyZ3VtZW50U3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcobWV0YUFyZ3VtZW50Tm9kZSk7XG5cbiAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhQXJndW1lbnRTdHJpbmd9JyBtZXRhYXJndW1lbnQuLi5gLCBtZXRhQXJndW1lbnROb2RlKTtcblxuICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KG1ldGFBcmd1bWVudE5vZGUpLFxuICAgICAgICBjb21iaW5hdG9yTWV0YVRZcGVOb2RlID0gbWV0YVR5cGVOb2RlUXVlcnkoY29tYmluYXRvck1ldGFhcmd1bWVudE5vZGUpO1xuXG4gIGlmIChzdGF0ZW1lbnROb2RlID09PSBudWxsKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgRXhwZWN0ZWQgYSBzdGF0ZW1lbnQgYnV0IGdvdCBhICcke21ldGFBcmd1bWVudFN0cmluZ30nIG1ldGEtdHlwZS5gLCBtZXRhQXJndW1lbnROb2RlKTtcbiAgfSBlbHNlIHtcbiAgICBpZiAoY29tYmluYXRvck1ldGFUWXBlTm9kZSA9PT0gbnVsbCkge1xuICAgICAgY29uc3QgY29tYmluYXRvck1ldGFhcmd1bWVudFN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKGNvbWJpbmF0b3JNZXRhYXJndW1lbnROb2RlKTtcblxuICAgICAgY29udGV4dC5kZWJ1ZyhgRXhwZWN0ZWQgYSBtZXRhLXR5cGUgYnV0IGdvdCBhICcke2NvbWJpbmF0b3JNZXRhYXJndW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnQuYCwgbWV0YUFyZ3VtZW50Tm9kZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNvbWJpbmF0b3JNZXRhVHlwZVRlcm1pbmFsTm9kZSA9IG1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkoY29tYmluYXRvck1ldGFUWXBlTm9kZSksXG4gICAgICAgICAgICBjb250ZW50ID0gY29tYmluYXRvck1ldGFUeXBlVGVybWluYWxOb2RlLmdldENvbnRlbnQoKSxcbiAgICAgICAgICAgIGNvbnRlbnRTdGF0ZW1lbnRNZXRhVHlwZSA9IChjb250ZW50ID09PSBTVEFURU1FTlRfTUVUQV9UWVBFKTtcblxuICAgICAgaWYgKCFjb250ZW50U3RhdGVtZW50TWV0YVR5cGUpIHtcbiAgICAgICAgY29udGV4dC5kZWJ1ZyhgRXhwZWN0ZWQgdGhlIG1ldGEtdHlwZSBvZiB0aGUgY29tYmluYXRvciB0byBiZSAnJHtTVEFURU1FTlRfTUVUQV9UWVBFfScgYnV0IGdvdCAnJHtjb250ZW50fScgaW5zdGVhZC5gLCBtZXRhQXJndW1lbnROb2RlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICAgIG1ldGFBcmd1bWVudFZlcmlmaWVkID0gdmVyaWZpZWRBaGVhZDsgLy8vXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKG1ldGFBcmd1bWVudFZlcmlmaWVkKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGFBcmd1bWVudFN0cmluZ30nIG1ldGFhcmd1bWVudC5gLCBtZXRhQXJndW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhQXJndW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJtZXRhVHlwZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkiLCJTdGF0ZW1lbnROb2Rlc1ZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJjb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsIm5vblRlcm1pbmFsTm9kZSIsImNvbWJpbmF0b3JOb25UZXJtaW5hbE5vZGUiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiY29tYmluYXRvclJ1bGVOYW1lIiwiQVJHVU1FTlRfUlVMRV9OQU1FIiwiYXJndW1lbnROb2RlIiwiY29uc3RydWN0b3JBcmd1bWVudE5vZGUiLCJhcmd1bWVudFZlcmlmaWVkIiwidmVyaWZ5QXJndW1lbnQiLCJNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRSIsIm1ldGFBcmd1bWVudE5vZGUiLCJjb21iaW5hdG9yTWV0YWFyZ3VtZW50Tm9kZSIsIm1ldGFBcmd1bWVudFZlcmlmaWVkIiwidmVyaWZ5TWV0YWFyZ3VtZW50IiwibWV0YUFyZ3VtZW50Tm9kZVZlcmlmaWVkIiwiTm9kZXNWZXJpZmllciIsInN0YXRlbWVudE5vZGVzVmVyaWZpZXIiLCJtZXRhQXJndW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInN0YXRlbWVudE5vZGUiLCJjb21iaW5hdG9yTWV0YVRZcGVOb2RlIiwiZGVidWciLCJjb21iaW5hdG9yTWV0YWFyZ3VtZW50U3RyaW5nIiwiY29tYmluYXRvck1ldGFUeXBlVGVybWluYWxOb2RlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJjb250ZW50U3RhdGVtZW50TWV0YVR5cGUiLCJTVEFURU1FTlRfTUVUQV9UWVBFIiwidmVyaWZpZWRBaGVhZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBNERBOzs7ZUFBQTs7OzREQTFEMEI7cUJBRUE7b0JBQ0s7eUJBQ0s7eUJBQ3dCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFNUQsSUFBTUEsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDLDRCQUM5QkMscUJBQXFCRCxJQUFBQSxnQkFBUyxFQUFDLDZCQUMvQkUsNEJBQTRCRixJQUFBQSxnQkFBUyxFQUFDO0FBRTVDLElBQUEsQUFBTUcsdUNBNkNILEFBN0NIO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JDLGdCQUFnQixFQUFFQyxnQkFBZ0IsRUFBRUMsT0FBTyxFQUFFQyxXQUFXO2dCQUM1RSxJQUFJQywwQkFBMEI7Z0JBRTlCLElBQU1DLGtCQUFrQkwsa0JBQ2xCTSw0QkFBNEJMLGtCQUFrQixHQUFHO2dCQUV2RCxJQUFNTSxXQUFXRixnQkFBZ0JHLFdBQVcsSUFDdENDLHFCQUFxQkgsMEJBQTBCRSxXQUFXLElBQUksR0FBRztnQkFFdkUsSUFBSUQsYUFBYUUsb0JBQW9CO29CQUNuQyxPQUFRRjt3QkFDTixLQUFLRyw2QkFBa0I7NEJBQUU7Z0NBQ3ZCLElBQU1DLGVBQWVOLGlCQUNmTywwQkFBMEJOLDJCQUMxQk8sbUJBQW1CQyxJQUFBQSxvQkFBYyxFQUFDSCxjQUFjQyx5QkFBeUJWLFNBQVNDO2dDQUV4RkMsMEJBQTBCUyxrQkFBa0IsR0FBRztnQ0FFL0M7NEJBQ0Y7d0JBRUEsS0FBS0Usa0NBQXVCOzRCQUFFO2dDQUM1QixJQUFNQyxtQkFBbUJYLGlCQUNuQlksNkJBQTZCWCwyQkFDN0JZLHVCQUF1QkMsbUJBQW1CSCxrQkFBa0JDLDRCQUE0QmYsU0FBU0MsY0FDakdpQiwyQkFBMkJGLHNCQUF1QixHQUFHO2dDQUUzRGQsMEJBQTBCZ0IsMEJBQTBCLEdBQUc7Z0NBRXZEOzRCQUNGO3dCQUVBOzRCQUFTO2dDQUNQaEIsMEJBQTBCLHVCQWxDOUJOLG1DQWtDb0NDLHlCQUFOLElBQUssYUFBdUJDLGtCQUFrQkMsa0JBQWtCQyxTQUFTQztnQ0FFbkc7NEJBQ0Y7b0JBQ0Y7Z0JBQ0Y7Z0JBRUEsT0FBT0M7WUFDVDs7O1dBMUNJTjtFQUErQnVCLGNBQWE7QUE2Q2xELElBQU1DLHlCQUF5QixJQUFJeEI7SUFFbkMsV0FBZXdCO0FBRWYsU0FBU0gsbUJBQW1CSCxnQkFBZ0IsRUFBRUMsMEJBQTBCLEVBQUVmLE9BQU8sRUFBRUMsV0FBVztJQUM1RixJQUFJZSx1QkFBdUI7SUFFM0IsSUFBTUsscUJBQXFCckIsUUFBUXNCLFlBQVksQ0FBQ1I7SUFFaERkLFFBQVF1QixLQUFLLENBQUMsQUFBQyxrQkFBb0MsT0FBbkJGLG9CQUFtQixzQkFBb0JQO0lBRXZFLElBQU1VLGdCQUFnQjlCLG1CQUFtQm9CLG1CQUNuQ1cseUJBQXlCakMsa0JBQWtCdUI7SUFFakQsSUFBSVMsa0JBQWtCLE1BQU07UUFDMUJ4QixRQUFRMEIsS0FBSyxDQUFDLEFBQUMsbUNBQXFELE9BQW5CTCxvQkFBbUIsaUJBQWVQO0lBQ3JGLE9BQU87UUFDTCxJQUFJVywyQkFBMkIsTUFBTTtZQUNuQyxJQUFNRSwrQkFBK0IzQixRQUFRc0IsWUFBWSxDQUFDUDtZQUUxRGYsUUFBUTBCLEtBQUssQ0FBQyxBQUFDLG1DQUErRCxPQUE3QkMsOEJBQTZCLGlCQUFlYjtRQUMvRixPQUFPO1lBQ0wsSUFBTWMsaUNBQWlDakMsMEJBQTBCOEIseUJBQzNESSxVQUFVRCwrQkFBK0JFLFVBQVUsSUFDbkRDLDJCQUE0QkYsWUFBWUcsOEJBQW1CO1lBRWpFLElBQUksQ0FBQ0QsMEJBQTBCO2dCQUM3Qi9CLFFBQVEwQixLQUFLLENBQUMsQUFBQyxtREFBbUZHLE9BQWpDRyw4QkFBbUIsRUFBQyxlQUFxQixPQUFSSCxTQUFRLGVBQWFmO1lBQ3pILE9BQU87Z0JBQ0wsSUFBTW1CLGdCQUFnQmhDO2dCQUV0QmUsdUJBQXVCaUIsZUFBZSxHQUFHO1lBQzNDO1FBQ0Y7SUFDRjtJQUVBLElBQUlqQixzQkFBc0I7UUFDeEJoQixRQUFRMEIsS0FBSyxDQUFDLEFBQUMsb0JBQXNDLE9BQW5CTCxvQkFBbUIsb0JBQWtCUDtJQUN6RTtJQUVBLE9BQU9FO0FBQ1QifQ==
@@ -176,7 +176,7 @@ function verifyArgument(argumentNode, constructorArgumentNode, context, verifyAh
176
176
  context.trace("Verifying the '".concat(argumentString, "' argument..."), argumentNode);
177
177
  var typeNode = typeNodeQuery(argumentNode);
178
178
  if (typeNode !== null) {
179
- context.info("The '".concat(argumentString, "' argument should be a term, not a type"), argumentNode);
179
+ context.debug("The '".concat(argumentString, "' argument should be a term, not a type."), argumentNode);
180
180
  } else {
181
181
  var termNode = termNodeQuery(argumentNode);
182
182
  if (!argumentVerified) {
@@ -191,10 +191,8 @@ function verifyArgument(argumentNode, constructorArgumentNode, context, verifyAh
191
191
  if (constructorTypeNode !== null) {
192
192
  var verifyTerm = termNodesVerifier.verifyTerm, types = [], termVerified = verifyTerm(termNode, types, context, function() {
193
193
  var verifiedAhead = false;
194
- var constructorTypeName = (0, _query.typeNameFromTypeNode)(constructorTypeNode), firstType = (0, _array.first)(types), termType = firstType, termTypeName = termType.getName(), constructorType = context.findTypeByTypeName(constructorTypeName), termTypeEqualToOrSubTypeOfType = termType.isEqualToOrSubTypeOf(constructorType);
194
+ var constructorTypeName = (0, _query.typeNameFromTypeNode)(constructorTypeNode), firstType = (0, _array.first)(types), termType = firstType, constructorType = context.findTypeByTypeName(constructorTypeName), termTypeEqualToOrSubTypeOfType = termType.isEqualToOrSubTypeOf(constructorType);
195
195
  if (termTypeEqualToOrSubTypeOfType) {
196
- var termString = context.nodeAsString(termNode);
197
- context.trace("The '".concat(termTypeName, "' type of the '").concat(termString, "' term is equal to or a sub-type of the '").concat(constructorTypeName, "' type in the constructor."), argumentNode);
198
196
  verifiedAhead = verifyAhead();
199
197
  }
200
198
  return verifiedAhead;
@@ -209,4 +207,4 @@ function verifyArgument(argumentNode, constructorArgumentNode, context, verifyAh
209
207
  return argumentVerified;
210
208
  }
211
209
 
212
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy90ZXJtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZXNcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBBUkdVTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3Rlcm0hXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90eXBlIVwiKTtcblxuY2xhc3MgVGVybU5vZGVzVmVyaWZpZXIgZXh0ZW5kcyBOb2Rlc1ZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBjb25zdHJ1Y3RvclJ1bGVOYW1lID0gY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAocnVsZU5hbWUgPT09IGNvbnN0cnVjdG9yUnVsZU5hbWUpIHtcbiAgICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgICAgY2FzZSBBUkdVTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCBhcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yQXJndW1lbnROb2RlID0gY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGFyZ3VtZW50VmVyaWZpZWQgPSB2ZXJpZnlBcmd1bWVudChhcmd1bWVudE5vZGUsIGNvbnN0cnVjdG9yQXJndW1lbnROb2RlLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCksXG4gICAgICAgICAgICAgICAgYXJndW1lbnROb2RlVmVyaWZpZWQgPSBhcmd1bWVudFZlcmlmaWVkOyAgLy8vXG5cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50Tm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IHRlcm1Ob2Rlc1ZlcmlmaWVyID0gbmV3IFRlcm1Ob2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRlcm1Ob2Rlc1ZlcmlmaWVyO1xuXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IGFyZ3VtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBhcmd1bWVudFN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKGFyZ3VtZW50Tm9kZSk7XG5cbiAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50Li4uYCwgYXJndW1lbnROb2RlKTtcblxuICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkoYXJndW1lbnROb2RlKTtcblxuICBpZiAodHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICBjb250ZXh0LmluZm8oYFRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50IHNob3VsZCBiZSBhIHRlcm0sIG5vdCBhIHR5cGVgLCBhcmd1bWVudE5vZGUpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeShhcmd1bWVudE5vZGUpO1xuXG4gICAgaWYgKCFhcmd1bWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBjb25zdHJ1Y3RvclRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeShjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSk7XG5cbiAgICAgIGlmIChjb25zdHJ1Y3RvclRlcm1Ob2RlICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IG5vZGUgPSB0ZXJtTm9kZSwgIC8vL1xuICAgICAgICAgICAgICBjb25zdHJ1Y3Rvck5vZGUgPSBjb25zdHJ1Y3RvclRlcm1Ob2RlLCAgLy8vXG4gICAgICAgICAgICAgIG5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9kZShub2RlLCBjb25zdHJ1Y3Rvck5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gbm9kZVZlcmlmaWVkOyAgLy8vXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFhcmd1bWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBjb25zdHJ1Y3RvclR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeShjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSk7XG5cbiAgICAgIGlmIChjb25zdHJ1Y3RvclR5cGVOb2RlICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHsgdmVyaWZ5VGVybSB9ID0gdGVybU5vZGVzVmVyaWZpZXIsXG4gICAgICAgICAgICAgIHR5cGVzID0gW10sXG4gICAgICAgICAgICAgIHRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm0odGVybU5vZGUsIHR5cGVzLCBjb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHZlcmlmaWVkQWhlYWQgPSBmYWxzZTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnN0cnVjdG9yVHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZShjb25zdHJ1Y3RvclR5cGVOb2RlKSxcbiAgICAgICAgICAgICAgICAgICAgICBmaXJzdFR5cGUgPSBmaXJzdCh0eXBlcyksXG4gICAgICAgICAgICAgICAgICAgICAgdGVybVR5cGUgPSBmaXJzdFR5cGUsIC8vL1xuICAgICAgICAgICAgICAgICAgICAgIHRlcm1UeXBlTmFtZSA9IHRlcm1UeXBlLmdldE5hbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgICBjb25zdHJ1Y3RvclR5cGUgPSBjb250ZXh0LmZpbmRUeXBlQnlUeXBlTmFtZShjb25zdHJ1Y3RvclR5cGVOYW1lKSxcbiAgICAgICAgICAgICAgICAgICAgICB0ZXJtVHlwZUVxdWFsVG9PclN1YlR5cGVPZlR5cGUgPSB0ZXJtVHlwZS5pc0VxdWFsVG9PclN1YlR5cGVPZihjb25zdHJ1Y3RvclR5cGUpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRlcm1UeXBlRXF1YWxUb09yU3ViVHlwZU9mVHlwZSkge1xuICAgICAgICAgICAgICAgICAgY29uc3QgdGVybVN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgICAgICAgICAgICAgICAgY29udGV4dC50cmFjZShgVGhlICcke3Rlcm1UeXBlTmFtZX0nIHR5cGUgb2YgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIGlzIGVxdWFsIHRvIG9yIGEgc3ViLXR5cGUgb2YgdGhlICcke2NvbnN0cnVjdG9yVHlwZU5hbWV9JyB0eXBlIGluIHRoZSBjb25zdHJ1Y3Rvci5gLCBhcmd1bWVudE5vZGUpO1xuXG4gICAgICAgICAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgYXJndW1lbnRWZXJpZmllZCA9IHRlcm1WZXJpZmllZDsgIC8vL1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmIChhcmd1bWVudFZlcmlmaWVkKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2FyZ3VtZW50U3RyaW5nfScgYXJndW1lbnQuYCwgYXJndW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBhcmd1bWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUFyZ3VtZW50IiwidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVOb2RlUXVlcnkiLCJUZXJtTm9kZXNWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsImNvbnN0cnVjdG9yTm9uVGVybWluYWxOb2RlIiwiY29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiY29uc3RydWN0b3JSdWxlTmFtZSIsIkFSR1VNRU5UX1JVTEVfTkFNRSIsImFyZ3VtZW50Tm9kZSIsImNvbnN0cnVjdG9yQXJndW1lbnROb2RlIiwiYXJndW1lbnRWZXJpZmllZCIsImFyZ3VtZW50Tm9kZVZlcmlmaWVkIiwiTm9kZXNWZXJpZmllciIsInRlcm1Ob2Rlc1ZlcmlmaWVyIiwiYXJndW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInR5cGVOb2RlIiwiaW5mbyIsInRlcm1Ob2RlIiwiY29uc3RydWN0b3JUZXJtTm9kZSIsIm5vZGUiLCJjb25zdHJ1Y3Rvck5vZGUiLCJub2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb2RlIiwiY29uc3RydWN0b3JUeXBlTm9kZSIsInZlcmlmeVRlcm0iLCJ0eXBlcyIsInRlcm1WZXJpZmllZCIsInZlcmlmaWVkQWhlYWQiLCJjb25zdHJ1Y3RvclR5cGVOYW1lIiwidHlwZU5hbWVGcm9tVHlwZU5vZGUiLCJmaXJzdFR5cGUiLCJmaXJzdCIsInRlcm1UeXBlIiwidGVybVR5cGVOYW1lIiwiZ2V0TmFtZSIsImNvbnN0cnVjdG9yVHlwZSIsImZpbmRUeXBlQnlUeXBlTmFtZSIsInRlcm1UeXBlRXF1YWxUb09yU3ViVHlwZU9mVHlwZSIsImlzRXF1YWxUb09yU3ViVHlwZU9mIiwidGVybVN0cmluZyIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUE2Q0EsT0FBaUM7ZUFBakM7O0lBRWdCQSxjQUFjO2VBQWRBOzs7NERBN0NVO3FCQUVKO3lCQUNhO3FCQUNhOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFaEQsSUFBTUMsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLG9CQUMxQkMsZ0JBQWdCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRWhDLElBQUEsQUFBTUUsa0NBZ0NILEFBaENIO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JDLGVBQWUsRUFBRUMsMEJBQTBCLEVBQUVDLE9BQU8sRUFBRUMsV0FBVztnQkFDckYsSUFBSUMsMEJBQTBCO2dCQUU5QixJQUFNQyxXQUFXTCxnQkFBZ0JNLFdBQVcsSUFDdENDLHNCQUFzQk4sMkJBQTJCSyxXQUFXLElBQUksR0FBRztnQkFFekUsSUFBSUQsYUFBYUUscUJBQXFCO29CQUNwQyxPQUFRRjt3QkFDTixLQUFLRyw2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
210
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2Rlcy90ZXJtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZXNWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZXNcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBBUkdVTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3Rlcm0hXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90eXBlIVwiKTtcblxuY2xhc3MgVGVybU5vZGVzVmVyaWZpZXIgZXh0ZW5kcyBOb2Rlc1ZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBjb25zdHJ1Y3RvclJ1bGVOYW1lID0gY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAocnVsZU5hbWUgPT09IGNvbnN0cnVjdG9yUnVsZU5hbWUpIHtcbiAgICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgICAgY2FzZSBBUkdVTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCBhcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yQXJndW1lbnROb2RlID0gY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIGFyZ3VtZW50VmVyaWZpZWQgPSB2ZXJpZnlBcmd1bWVudChhcmd1bWVudE5vZGUsIGNvbnN0cnVjdG9yQXJndW1lbnROb2RlLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCksXG4gICAgICAgICAgICAgICAgYXJndW1lbnROb2RlVmVyaWZpZWQgPSBhcmd1bWVudFZlcmlmaWVkOyAgLy8vXG5cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50Tm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUsIGNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IHRlcm1Ob2Rlc1ZlcmlmaWVyID0gbmV3IFRlcm1Ob2Rlc1ZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRlcm1Ob2Rlc1ZlcmlmaWVyO1xuXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCBjb25zdHJ1Y3RvckFyZ3VtZW50Tm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IGFyZ3VtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBhcmd1bWVudFN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKGFyZ3VtZW50Tm9kZSk7XG5cbiAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50Li4uYCwgYXJndW1lbnROb2RlKTtcblxuICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkoYXJndW1lbnROb2RlKTtcblxuICBpZiAodHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICBjb250ZXh0LmRlYnVnKGBUaGUgJyR7YXJndW1lbnRTdHJpbmd9JyBhcmd1bWVudCBzaG91bGQgYmUgYSB0ZXJtLCBub3QgYSB0eXBlLmAsIGFyZ3VtZW50Tm9kZSk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgICBpZiAoIWFyZ3VtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGNvbnN0cnVjdG9yVGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGNvbnN0cnVjdG9yQXJndW1lbnROb2RlKTtcblxuICAgICAgaWYgKGNvbnN0cnVjdG9yVGVybU5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHRlcm1Ob2RlLCAgLy8vXG4gICAgICAgICAgICAgIGNvbnN0cnVjdG9yTm9kZSA9IGNvbnN0cnVjdG9yVGVybU5vZGUsICAvLy9cbiAgICAgICAgICAgICAgbm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlOb2RlKG5vZGUsIGNvbnN0cnVjdG9yTm9kZSwgY29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgIGFyZ3VtZW50VmVyaWZpZWQgPSBub2RlVmVyaWZpZWQ7ICAvLy9cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIWFyZ3VtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGNvbnN0cnVjdG9yVHlwZU5vZGUgPSB0eXBlTm9kZVF1ZXJ5KGNvbnN0cnVjdG9yQXJndW1lbnROb2RlKTtcblxuICAgICAgaWYgKGNvbnN0cnVjdG9yVHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgeyB2ZXJpZnlUZXJtIH0gPSB0ZXJtTm9kZXNWZXJpZmllcixcbiAgICAgICAgICAgICAgdHlwZXMgPSBbXSxcbiAgICAgICAgICAgICAgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgdmVyaWZpZWRBaGVhZCA9IGZhbHNlO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY29uc3RydWN0b3JUeXBlTmFtZSA9IHR5cGVOYW1lRnJvbVR5cGVOb2RlKGNvbnN0cnVjdG9yVHlwZU5vZGUpLFxuICAgICAgICAgICAgICAgICAgICAgIGZpcnN0VHlwZSA9IGZpcnN0KHR5cGVzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0ZXJtVHlwZSA9IGZpcnN0VHlwZSwgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgY29uc3RydWN0b3JUeXBlID0gY29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUoY29uc3RydWN0b3JUeXBlTmFtZSksXG4gICAgICAgICAgICAgICAgICAgICAgdGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUeXBlID0gdGVybVR5cGUuaXNFcXVhbFRvT3JTdWJUeXBlT2YoY29uc3RydWN0b3JUeXBlKTtcblxuICAgICAgICAgICAgICAgIGlmICh0ZXJtVHlwZUVxdWFsVG9PclN1YlR5cGVPZlR5cGUpIHtcbiAgICAgICAgICAgICAgICAgIHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgICAgICB9KTtcblxuICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdGVybVZlcmlmaWVkOyAgLy8vXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKGFyZ3VtZW50VmVyaWZpZWQpIHtcbiAgICBjb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7YXJndW1lbnRTdHJpbmd9JyBhcmd1bWVudC5gLCBhcmd1bWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGFyZ3VtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5QXJndW1lbnQiLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidHlwZU5vZGVRdWVyeSIsIlRlcm1Ob2Rlc1ZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwiY29uc3RydWN0b3JOb25UZXJtaW5hbE5vZGUiLCJjb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsInJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJjb25zdHJ1Y3RvclJ1bGVOYW1lIiwiQVJHVU1FTlRfUlVMRV9OQU1FIiwiYXJndW1lbnROb2RlIiwiY29uc3RydWN0b3JBcmd1bWVudE5vZGUiLCJhcmd1bWVudFZlcmlmaWVkIiwiYXJndW1lbnROb2RlVmVyaWZpZWQiLCJOb2Rlc1ZlcmlmaWVyIiwidGVybU5vZGVzVmVyaWZpZXIiLCJhcmd1bWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidHlwZU5vZGUiLCJkZWJ1ZyIsInRlcm1Ob2RlIiwiY29uc3RydWN0b3JUZXJtTm9kZSIsIm5vZGUiLCJjb25zdHJ1Y3Rvck5vZGUiLCJub2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb2RlIiwiY29uc3RydWN0b3JUeXBlTm9kZSIsInZlcmlmeVRlcm0iLCJ0eXBlcyIsInRlcm1WZXJpZmllZCIsInZlcmlmaWVkQWhlYWQiLCJjb25zdHJ1Y3RvclR5cGVOYW1lIiwidHlwZU5hbWVGcm9tVHlwZU5vZGUiLCJmaXJzdFR5cGUiLCJmaXJzdCIsInRlcm1UeXBlIiwiY29uc3RydWN0b3JUeXBlIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwidGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUeXBlIiwiaXNFcXVhbFRvT3JTdWJUeXBlT2YiXSwibWFwcGluZ3MiOiJBQUFBOzs7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