occam-verify-cli 0.0.617 → 0.0.618

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/equality.js CHANGED
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "default", {
8
8
  return Equality;
9
9
  }
10
10
  });
11
- var _matcher = /*#__PURE__*/ _interop_require_default(require("./matcher"));
12
11
  var _verifier = /*#__PURE__*/ _interop_require_default(require("./verifier"));
13
12
  var _term = /*#__PURE__*/ _interop_require_wildcard(require("./verify/term"));
14
13
  var _equality = /*#__PURE__*/ _interop_require_default(require("./node/statement/equality"));
@@ -211,8 +210,8 @@ var Equality = /*#__PURE__*/ function() {
211
210
  var equality = null;
212
211
  var statementNode = proofStep.getStatementNode();
213
212
  if (statementNode !== null) {
214
- var nodeA = statementNode, nodeB = _equality.default, depth = _constants.EQUALITY_DEPTH, nodeMatches = _matcher.default.matchNode(nodeA, nodeB, depth);
215
- if (nodeMatches) {
213
+ var depth = _constants.EQUALITY_DEPTH, statementNodeMatchesEqualityStatementNode = statementNode.match(_equality.default, depth);
214
+ if (statementNodeMatchesEqualityStatementNode) {
216
215
  var leftTermNode = leftTermNodeQuery(statementNode), rightTermNode = rightTermNodeQuery(statementNode);
217
216
  equality = new Equality(leftTermNode, rightTermNode);
218
217
  }
@@ -325,4 +324,4 @@ function filterEqualities(equalities, equality) {
325
324
  return equalities;
326
325
  }
327
326
 
328
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lcXVhbGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IG1hdGNoZXIgZnJvbSBcIi4vbWF0Y2hlclwiO1xuaW1wb3J0IFZlcmlmaWVyIGZyb20gXCIuL3ZlcmlmaWVyXCI7XG5pbXBvcnQgdmVyaWZ5VGVybSBmcm9tIFwiLi92ZXJpZnkvdGVybVwiO1xuaW1wb3J0IGVxdWFsaXR5U3RhdGVtZW50Tm9kZSBmcm9tIFwiLi9ub2RlL3N0YXRlbWVudC9lcXVhbGl0eVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGZpcnN0LCBzZWNvbmQgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FIH0gZnJvbSBcIi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBFUVVBTElUWV9ERVBUSCB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgdmVyaWZ5VGVybUFzVmFyaWFibGUgfSBmcm9tIFwiLi92ZXJpZnkvdGVybVwiO1xuXG5jb25zdCBsZWZ0VGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvYXJndW1lbnRbMF0vdGVybSFcIiksXG4gICAgICByaWdodFRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L2FyZ3VtZW50WzFdL3Rlcm0hXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFcXVhbGl0eSB7XG4gIGNvbnN0cnVjdG9yKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSkge1xuICAgIHRoaXMubGVmdFRlcm1Ob2RlID0gbGVmdFRlcm1Ob2RlO1xuICAgIHRoaXMucmlnaHRUZXJtTm9kZSA9IHJpZ2h0VGVybU5vZGU7XG4gIH1cblxuICBnZXRMZWZ0VGVybU5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubGVmdFRlcm1Ob2RlO1xuICB9XG5cbiAgZ2V0UmlnaHRUZXJtTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yaWdodFRlcm1Ob2RlO1xuICB9XG5cbiAgbWF0Y2hUZXJtTm9kZXMobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCByZXZlcnNlZCwgZXF1YWxpdGllcywgY29udGV4dCkge1xuICAgIGxldCBsZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlTWF0Y2ggPSB0cnVlO1xuXG4gICAgaWYgKGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaCkge1xuICAgICAgY29uc3QgbGVmdE5vblRlcm1pbmFsTm9kZSA9IHJldmVyc2VkID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmlnaHRUZXJtTm9kZSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGVmdFRlcm1Ob2RlLCAgLy8vXG4gICAgICAgICAgICByaWdodE5vblRlcm1pbmFsTm9kZSA9IGxlZnRUZXJtTm9kZSwgIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBlcXVhbGl0eVZlcmlmaWVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShsZWZ0Tm9uVGVybWluYWxOb2RlLCByaWdodE5vblRlcm1pbmFsTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCk7XG5cbiAgICAgIGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAobGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoKSB7XG4gICAgICBjb25zdCBsZWZ0Tm9uVGVybWluYWxOb2RlID0gcmV2ZXJzZWQgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sZWZ0VGVybU5vZGUgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJpZ2h0VGVybU5vZGUsICAvLy9cbiAgICAgICAgICAgIHJpZ2h0Tm9uVGVybWluYWxOb2RlID0gcmlnaHRUZXJtTm9kZSwgIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBlcXVhbGl0eVZlcmlmaWVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShsZWZ0Tm9uVGVybWluYWxOb2RlLCByaWdodE5vblRlcm1pbmFsTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCk7XG5cbiAgICAgIGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoO1xuICB9XG5cbiAgbWF0Y2goZXF1YWxpdHksIGVxdWFsaXRpZXMsIGNvbnRleHQpIHtcbiAgICBsZXQgbWF0Y2hlcyA9IGZhbHNlO1xuXG4gICAgY29uc3QgbGVmdFRlcm1Ob2RlID0gZXF1YWxpdHkuZ2V0TGVmdFRlcm1Ob2RlKCksXG4gICAgICAgICAgcmlnaHRUZXJtTm9kZSA9IGVxdWFsaXR5LmdldFJpZ2h0VGVybU5vZGUoKTtcblxuICAgIGVxdWFsaXRpZXMgPSBmaWx0ZXJFcXVhbGl0aWVzKGVxdWFsaXRpZXMsIGVxdWFsaXR5KTsgIC8vL1xuXG4gICAgaWYgKCFtYXRjaGVzKSB7XG4gICAgICBjb25zdCByZXZlcnNlZCA9IGZhbHNlLFxuICAgICAgICAgICAgbGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoID0gdGhpcy5tYXRjaFRlcm1Ob2RlcyhsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIHJldmVyc2VkLCBlcXVhbGl0aWVzLCBjb250ZXh0KTtcblxuICAgICAgbWF0Y2hlcyA9IGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaDsgIC8vL1xuICAgIH1cblxuICAgIGlmICghbWF0Y2hlcykge1xuICAgICAgY29uc3QgcmV2ZXJzZWQgPSB0cnVlLFxuICAgICAgICAgICAgbGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoID0gdGhpcy5tYXRjaFRlcm1Ob2RlcyhsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIHJldmVyc2VkLCBlcXVhbGl0aWVzLCBjb250ZXh0KTtcblxuICAgICAgbWF0Y2hlcyA9IGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaDsgIC8vL1xuICAgIH1cblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgdmVyaWZ5KGVxdWFsaXRpZXMsIGNvbnRleHQpIHtcbiAgICBjb25zdCBsZWZ0Tm9uVGVybWluYWxOb2RlID0gdGhpcy5sZWZ0VGVybU5vZGUsICAvLy9cbiAgICAgICAgICByaWdodE5vblRlcm1pbmFsTm9kZSA9IHRoaXMucmlnaHRUZXJtTm9kZSwgIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZXF1YWxpdHlWZXJpZmllci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobGVmdE5vblRlcm1pbmFsTm9kZSwgcmlnaHROb25UZXJtaW5hbE5vZGUsIGVxdWFsaXRpZXMsIGNvbnRleHQpLFxuICAgICAgICAgIHZlcmlmaWVkID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgcmV0dXJuIHZlcmlmaWVkO1xuICB9XG5cbiAgc3RhdGljIGZyb21Qcm9vZlN0ZXAocHJvb2ZTdGVwKSB7XG4gICAgbGV0IGVxdWFsaXR5ID0gbnVsbDtcblxuICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBwcm9vZlN0ZXAuZ2V0U3RhdGVtZW50Tm9kZSgpO1xuXG4gICAgaWYgKHN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vZGVBID0gc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgICAgbm9kZUIgPSBlcXVhbGl0eVN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICAgIGRlcHRoID0gRVFVQUxJVFlfREVQVEgsXG4gICAgICAgICAgICBub2RlTWF0Y2hlcyA9IG1hdGNoZXIubWF0Y2hOb2RlKG5vZGVBLCBub2RlQiwgZGVwdGgpO1xuXG4gICAgICBpZiAobm9kZU1hdGNoZXMpIHtcbiAgICAgICAgY29uc3QgbGVmdFRlcm1Ob2RlID0gbGVmdFRlcm1Ob2RlUXVlcnkoc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICAgIHJpZ2h0VGVybU5vZGUgPSByaWdodFRlcm1Ob2RlUXVlcnkoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgICAgZXF1YWxpdHkgPSBuZXcgRXF1YWxpdHkobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXF1YWxpdHk7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSkge1xuICAgIGNvbnN0IGxlZnRUZXJtTm9kZSA9IGxlZnRUZXJtTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHJpZ2h0VGVybU5vZGUgPSByaWdodFRlcm1Ob2RlUXVlcnkoc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgZXF1YWxpdHkgPSBuZXcgRXF1YWxpdHkobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlKTtcblxuICAgIHJldHVybiBlcXVhbGl0eTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpIHtcbiAgICBjb25zdCBlcXVhbGl0eSA9IG5ldyBFcXVhbGl0eShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpO1xuXG4gICAgcmV0dXJuIGVxdWFsaXR5O1xuICB9XG59XG5cbmNsYXNzIEVxdWFsaXR5VmVyaWZpZXIgZXh0ZW5kcyBWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShsZWZ0Tm9uVGVybWluYWxOb2RlLCByaWdodE5vblRlcm1pbmFsTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCkge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgbGVmdE5vblRlcm1pbmFsTm9kZVJ1bGVOYW1lID0gbGVmdE5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICAgIHJpZ2h0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWUgPSByaWdodE5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpO1xuXG4gICAgaWYgKGxlZnROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSA9PT0gcmlnaHROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSkge1xuICAgICAgY29uc3QgcnVsZU5hbWUgPSBsZWZ0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWUsIC8vL1xuICAgICAgICAgICAgcnVsZU5hbWVUZXJtUnVsZU5hbWUgPSAocnVsZU5hbWUgPT09IFRFUk1fUlVMRV9OQU1FKTtcblxuICAgICAgaWYgKHJ1bGVOYW1lVGVybVJ1bGVOYW1lKSB7XG4gICAgICAgIGNvbnN0IGxlZnRUZXJtTm9kZSA9IGxlZnROb25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICByaWdodFRlcm1Ob2RlID0gcmlnaHROb25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICB0ZXJtTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlUZXJtTm9kZShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIGVxdWFsaXRpZXMsIGNvbnRleHQpO1xuXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGVybU5vZGVWZXJpZmllZDsgIC8vL1xuICAgICAgfVxuXG4gICAgICBpZiAoIW5vblRlcm1pbmFsTm9kZVZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IGxlZnROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzID0gbGVmdE5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICAgIHJpZ2h0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcyA9IHJpZ2h0Tm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgbGVmdE5vZGVzID0gbGVmdE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICByaWdodE5vZGVzID0gcmlnaHROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgICAgbm9kZXNWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9kZXMobGVmdE5vZGVzLCByaWdodE5vZGVzLCBlcXVhbGl0aWVzLCBjb250ZXh0KTtcblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG5vZGVzVmVyaWZpZWQ7IC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeVRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCkge1xuICAgIGxldCB0ZXJtTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXSxcbiAgICAgICAgICBsZWZ0VGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IHZlcmlmeVRlcm1Bc1ZhcmlhYmxlKGxlZnRUZXJtTm9kZSwgdmFyaWFibGVzLCBjb250ZXh0KSxcbiAgICAgICAgICByaWdodFRlcm1WZXJpZmllZEFzVmFyaWFibGUgPSB2ZXJpZnlUZXJtQXNWYXJpYWJsZShyaWdodFRlcm1Ob2RlLCB2YXJpYWJsZXMsIGNvbnRleHQpO1xuXG4gICAgbGV0IGVxdWFsaXR5ID0gbnVsbDtcblxuICAgIGlmIChsZWZ0VGVybVZlcmlmaWVkQXNWYXJpYWJsZSAmJiByaWdodFRlcm1WZXJpZmllZEFzVmFyaWFibGUpIHtcbiAgICAgIGNvbnN0IGZpcnN0VmFyaWFibGUgPSBmaXJzdCh2YXJpYWJsZXMpLFxuICAgICAgICAgICAgc2Vjb25kVmFyaWFibGUgPSBzZWNvbmQodmFyaWFibGVzKSxcbiAgICAgICAgICAgIGxlZnRWYXJpYWJsZSA9IGZpcnN0VmFyaWFibGUsIC8vL1xuICAgICAgICAgICAgcmlnaHRWYXJpYWJsZSA9IHNlY29uZFZhcmlhYmxlLCAvLy9cbiAgICAgICAgICAgIGxlZnRWYXJpYWJsZVR5cGUgPSBsZWZ0VmFyaWFibGUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgcmlnaHRWYXJpYWJsZVR5cGUgPSByaWdodFZhcmlhYmxlLmdldFR5cGUoKSxcbiAgICAgICAgICAgIGxlZnRWYXJpYWJsZVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mUmlnaHRWYXJpYWJsZVR5cGUgPSBsZWZ0VmFyaWFibGVUeXBlLmlzRXF1YWxUb09yU3ViVHlwZU9mT2ZTdXBlclR5cGVPZihyaWdodFZhcmlhYmxlVHlwZSk7XG5cbiAgICAgIGlmIChsZWZ0VmFyaWFibGVUeXBlRXF1YWxUb09yU3ViVHlwZU9mT2ZTdXBlclR5cGVPZlJpZ2h0VmFyaWFibGVUeXBlKSB7XG4gICAgICAgIGVxdWFsaXR5ID0gRXF1YWxpdHkuZnJvbUxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGUobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGxlZnRUZXJtVmVyaWZpZWRBc1ZhcmlhYmxlKSB7XG4gICAgICBjb25zdCB0eXBlcyA9IFtdO1xuXG4gICAgICB2ZXJpZnlUZXJtKHJpZ2h0VGVybU5vZGUsIHR5cGVzLCBjb250ZXh0KTtcblxuICAgICAgY29uc3QgZmlyc3RUeXBlID0gZmlyc3QodHlwZXMpLFxuICAgICAgICAgICAgZmlyc3RWYXJpYWJsZSA9IGZpcnN0KHZhcmlhYmxlcyksXG4gICAgICAgICAgICBsZWZ0VmFyaWFibGUgPSBmaXJzdFZhcmlhYmxlLCAvLy9cbiAgICAgICAgICAgIHJpZ2h0VGVybVR5cGUgPSBmaXJzdFR5cGUsICAvLy9cbiAgICAgICAgICAgIGxlZnRWYXJpYWJsZVR5cGUgPSBsZWZ0VmFyaWFibGUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgbGVmdFZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSA9IGxlZnRWYXJpYWJsZVR5cGUuaXNFcXVhbFRvT3JTdXBlclR5cGVPZihyaWdodFRlcm1UeXBlKTtcblxuICAgICAgaWYgKGxlZnRWYXJpYWJsZVR5cGVFcXVhbFRvT3JTdXBlclR5cGVPZlJpZ2h0VGVybVR5cGUpIHtcbiAgICAgICAgZXF1YWxpdHkgPSBFcXVhbGl0eS5mcm9tTGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocmlnaHRUZXJtVmVyaWZpZWRBc1ZhcmlhYmxlKSB7XG4gICAgICBjb25zdCB0eXBlcyA9IFtdO1xuXG4gICAgICB2ZXJpZnlUZXJtKGxlZnRUZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpO1xuXG4gICAgICBjb25zdCBmaXJzdFR5cGUgPSBmaXJzdCh0eXBlcyksXG4gICAgICAgICAgICBmaXJzdFZhcmlhYmxlID0gZmlyc3QodmFyaWFibGVzKSxcbiAgICAgICAgICAgIGxlZnRUZXJtVHlwZSA9IGZpcnN0VHlwZSwgIC8vL1xuICAgICAgICAgICAgcmlnaHRWYXJpYWJsZSA9IGZpcnN0VmFyaWFibGUsIC8vL1xuICAgICAgICAgICAgcmlnaHRWYXJpYWJsZVR5cGUgPSByaWdodFZhcmlhYmxlLmdldFR5cGUoKSxcbiAgICAgICAgICAgIHJpZ2h0VmFyaWFibGVUeXBlRXF1YWxUb09yU3VwZXJUeXBlT2ZSaWdodFRlcm1UeXBlID0gcmlnaHRWYXJpYWJsZVR5cGUuaXNFcXVhbFRvT3JTdXBlclR5cGVPZihsZWZ0VGVybVR5cGUpO1xuXG4gICAgICBpZiAocmlnaHRWYXJpYWJsZVR5cGVFcXVhbFRvT3JTdXBlclR5cGVPZlJpZ2h0VGVybVR5cGUpIHtcbiAgICAgICAgZXF1YWxpdHkgPSBFcXVhbGl0eS5mcm9tTGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0eXBlcyA9IFtdO1xuXG4gICAgICB2ZXJpZnlUZXJtKGxlZnRUZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpO1xuXG4gICAgICB2ZXJpZnlUZXJtKHJpZ2h0VGVybU5vZGUsIHR5cGVzLCBjb250ZXh0KTtcblxuICAgICAgY29uc3QgZmlyc3RUeXBlID0gZmlyc3QodHlwZXMpLFxuICAgICAgICAgICAgc2Vjb25kVHlwZSA9IHNlY29uZCh0eXBlcyksXG4gICAgICAgICAgICBsZWZ0VGVybVR5cGUgPSBmaXJzdFR5cGUsIC8vL1xuICAgICAgICAgICAgcmlnaHRUZXJtVHlwZSA9IHNlY29uZFR5cGUsIC8vL1xuICAgICAgICAgICAgbGVmdFRlcm1UeXBlRXF1YWxUb09yU3ViVHlwZU9mT2ZTdXBlclR5cGVPZlJpZ2h0VGVybVR5cGUgPSBsZWZ0VGVybVR5cGUuaXNFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mKHJpZ2h0VGVybVR5cGUpO1xuXG4gICAgICBpZiAobGVmdFRlcm1UeXBlRXF1YWxUb09yU3ViVHlwZU9mT2ZTdXBlclR5cGVPZlJpZ2h0VGVybVR5cGUpIHtcbiAgICAgICAgZXF1YWxpdHkgPSBFcXVhbGl0eS5mcm9tTGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChlcXVhbGl0eSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgZXF1YWxpdHlBID0gZXF1YWxpdHksIC8vL1xuICAgICAgICAgICAgZXF1YWxpdGllc0IgPSBlcXVhbGl0aWVzLCAvLy9cbiAgICAgICAgICAgIGVxdWFsaXR5TWF0Y2hlcyA9IGVxdWFsaXRpZXNCLnNvbWUoKGVxdWFsaXR5QikgPT4geyAvLy9cbiAgICAgICAgICAgICAgY29uc3QgZXF1YWxpdHlBTWF0Y2hlc0VxdWFsaXR5QiA9IGVxdWFsaXR5QS5tYXRjaChlcXVhbGl0eUIsIGVxdWFsaXRpZXNCLCBjb250ZXh0KTtcblxuICAgICAgICAgICAgICBpZiAoZXF1YWxpdHlBTWF0Y2hlc0VxdWFsaXR5Qikge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgdGVybU5vZGVWZXJpZmllZCA9IGVxdWFsaXR5TWF0Y2hlczsgIC8vL1xuICAgIH1cblxuICAgIHJldHVybiB0ZXJtTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IGVxdWFsaXR5VmVyaWZpZXIgPSBuZXcgRXF1YWxpdHlWZXJpZmllcigpO1xuXG5mdW5jdGlvbiBmaWx0ZXJFcXVhbGl0aWVzKGVxdWFsaXRpZXMsIGVxdWFsaXR5KSB7XG4gIGNvbnN0IGVxdWFsaXR5QSA9IGVxdWFsaXR5OyAvLy9cblxuICBlcXVhbGl0aWVzID0gZXF1YWxpdGllcy5maWx0ZXIoKGVxdWFsaXR5KSA9PiB7XG4gICAgY29uc3QgZXF1YWxpdHlCID0gZXF1YWxpdHk7IC8vL1xuXG4gICAgaWYgKGVxdWFsaXR5QSAhPT0gZXF1YWxpdHlCKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBlcXVhbGl0aWVzO1xufVxuIl0sIm5hbWVzIjpbIkVxdWFsaXR5IiwibGVmdFRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJyaWdodFRlcm1Ob2RlUXVlcnkiLCJsZWZ0VGVybU5vZGUiLCJyaWdodFRlcm1Ob2RlIiwiZ2V0TGVmdFRlcm1Ob2RlIiwiZ2V0UmlnaHRUZXJtTm9kZSIsIm1hdGNoVGVybU5vZGVzIiwicmV2ZXJzZWQiLCJlcXVhbGl0aWVzIiwiY29udGV4dCIsImxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaCIsImxlZnROb25UZXJtaW5hbE5vZGUiLCJyaWdodE5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwiZXF1YWxpdHlWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIm1hdGNoIiwiZXF1YWxpdHkiLCJtYXRjaGVzIiwiZmlsdGVyRXF1YWxpdGllcyIsInZlcmlmeSIsInZlcmlmaWVkIiwiZnJvbVByb29mU3RlcCIsInByb29mU3RlcCIsInN0YXRlbWVudE5vZGUiLCJnZXRTdGF0ZW1lbnROb2RlIiwibm9kZUEiLCJub2RlQiIsImVxdWFsaXR5U3RhdGVtZW50Tm9kZSIsImRlcHRoIiwiRVFVQUxJVFlfREVQVEgiLCJub2RlTWF0Y2hlcyIsIm1hdGNoZXIiLCJtYXRjaE5vZGUiLCJmcm9tU3RhdGVtZW50Tm9kZSIsImZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlIiwiRXF1YWxpdHlWZXJpZmllciIsImxlZnROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSIsImdldFJ1bGVOYW1lIiwicmlnaHROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSIsInJ1bGVOYW1lIiwicnVsZU5hbWVUZXJtUnVsZU5hbWUiLCJURVJNX1JVTEVfTkFNRSIsInRlcm1Ob2RlVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtTm9kZSIsImxlZnROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsInJpZ2h0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcyIsImxlZnROb2RlcyIsInJpZ2h0Tm9kZXMiLCJub2Rlc1ZlcmlmaWVkIiwidmVyaWZ5Tm9kZXMiLCJ2YXJpYWJsZXMiLCJsZWZ0VGVybVZlcmlmaWVkQXNWYXJpYWJsZSIsInZlcmlmeVRlcm1Bc1ZhcmlhYmxlIiwicmlnaHRUZXJtVmVyaWZpZWRBc1ZhcmlhYmxlIiwiZmlyc3RWYXJpYWJsZSIsImZpcnN0Iiwic2Vjb25kVmFyaWFibGUiLCJzZWNvbmQiLCJsZWZ0VmFyaWFibGUiLCJyaWdodFZhcmlhYmxlIiwibGVmdFZhcmlhYmxlVHlwZSIsImdldFR5cGUiLCJyaWdodFZhcmlhYmxlVHlwZSIsImxlZnRWYXJpYWJsZVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mUmlnaHRWYXJpYWJsZVR5cGUiLCJpc0VxdWFsVG9PclN1YlR5cGVPZk9mU3VwZXJUeXBlT2YiLCJ0eXBlcyIsInZlcmlmeVRlcm0iLCJmaXJzdFR5cGUiLCJyaWdodFRlcm1UeXBlIiwibGVmdFZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSIsImlzRXF1YWxUb09yU3VwZXJUeXBlT2YiLCJsZWZ0VGVybVR5cGUiLCJyaWdodFZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSIsInNlY29uZFR5cGUiLCJsZWZ0VGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSIsImVxdWFsaXR5QSIsImVxdWFsaXRpZXNCIiwiZXF1YWxpdHlNYXRjaGVzIiwic29tZSIsImVxdWFsaXR5QiIsImVxdWFsaXR5QU1hdGNoZXNFcXVhbGl0eUIiLCJWZXJpZmllciIsImZpbHRlciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFnQnFCQTs7OzhEQWREOytEQUNDOzREQUNFOytEQUNXO3FCQUVSO3FCQUNJO3lCQUNDO3lCQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRy9CLElBQU1DLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyxpQ0FDOUJDLHFCQUFxQkQsSUFBQUEsZ0JBQVMsRUFBQztBQUV0QixJQUFBLEFBQU1GLHlCQStHbEIsQUEvR1k7YUFBTUEsU0FDUEksWUFBWSxFQUFFQyxhQUFhO2dDQURwQkw7UUFFakIsSUFBSSxDQUFDSSxZQUFZLEdBQUdBO1FBQ3BCLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTs7a0JBSEpMOztZQU1uQk0sS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQjtnQkFDaEIsT0FBTyxJQUFJLENBQUNGLFlBQVk7WUFDMUI7OztZ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
327
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lcXVhbGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFZlcmlmaWVyIGZyb20gXCIuL3ZlcmlmaWVyXCI7XG5pbXBvcnQgdmVyaWZ5VGVybSBmcm9tIFwiLi92ZXJpZnkvdGVybVwiO1xuaW1wb3J0IGVxdWFsaXR5U3RhdGVtZW50Tm9kZSBmcm9tIFwiLi9ub2RlL3N0YXRlbWVudC9lcXVhbGl0eVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGZpcnN0LCBzZWNvbmQgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FIH0gZnJvbSBcIi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBFUVVBTElUWV9ERVBUSCB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgdmVyaWZ5VGVybUFzVmFyaWFibGUgfSBmcm9tIFwiLi92ZXJpZnkvdGVybVwiO1xuXG5jb25zdCBsZWZ0VGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvYXJndW1lbnRbMF0vdGVybSFcIiksXG4gICAgICByaWdodFRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L2FyZ3VtZW50WzFdL3Rlcm0hXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFcXVhbGl0eSB7XG4gIGNvbnN0cnVjdG9yKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSkge1xuICAgIHRoaXMubGVmdFRlcm1Ob2RlID0gbGVmdFRlcm1Ob2RlO1xuICAgIHRoaXMucmlnaHRUZXJtTm9kZSA9IHJpZ2h0VGVybU5vZGU7XG4gIH1cblxuICBnZXRMZWZ0VGVybU5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubGVmdFRlcm1Ob2RlO1xuICB9XG5cbiAgZ2V0UmlnaHRUZXJtTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yaWdodFRlcm1Ob2RlO1xuICB9XG5cbiAgbWF0Y2hUZXJtTm9kZXMobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCByZXZlcnNlZCwgZXF1YWxpdGllcywgY29udGV4dCkge1xuICAgIGxldCBsZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlTWF0Y2ggPSB0cnVlO1xuXG4gICAgaWYgKGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaCkge1xuICAgICAgY29uc3QgbGVmdE5vblRlcm1pbmFsTm9kZSA9IHJldmVyc2VkID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmlnaHRUZXJtTm9kZSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGVmdFRlcm1Ob2RlLCAgLy8vXG4gICAgICAgICAgICByaWdodE5vblRlcm1pbmFsTm9kZSA9IGxlZnRUZXJtTm9kZSwgIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBlcXVhbGl0eVZlcmlmaWVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShsZWZ0Tm9uVGVybWluYWxOb2RlLCByaWdodE5vblRlcm1pbmFsTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCk7XG5cbiAgICAgIGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAobGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoKSB7XG4gICAgICBjb25zdCBsZWZ0Tm9uVGVybWluYWxOb2RlID0gcmV2ZXJzZWQgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sZWZ0VGVybU5vZGUgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJpZ2h0VGVybU5vZGUsICAvLy9cbiAgICAgICAgICAgIHJpZ2h0Tm9uVGVybWluYWxOb2RlID0gcmlnaHRUZXJtTm9kZSwgIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBlcXVhbGl0eVZlcmlmaWVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShsZWZ0Tm9uVGVybWluYWxOb2RlLCByaWdodE5vblRlcm1pbmFsTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCk7XG5cbiAgICAgIGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoO1xuICB9XG5cbiAgbWF0Y2goZXF1YWxpdHksIGVxdWFsaXRpZXMsIGNvbnRleHQpIHtcbiAgICBsZXQgbWF0Y2hlcyA9IGZhbHNlO1xuXG4gICAgY29uc3QgbGVmdFRlcm1Ob2RlID0gZXF1YWxpdHkuZ2V0TGVmdFRlcm1Ob2RlKCksXG4gICAgICAgICAgcmlnaHRUZXJtTm9kZSA9IGVxdWFsaXR5LmdldFJpZ2h0VGVybU5vZGUoKTtcblxuICAgIGVxdWFsaXRpZXMgPSBmaWx0ZXJFcXVhbGl0aWVzKGVxdWFsaXRpZXMsIGVxdWFsaXR5KTsgIC8vL1xuXG4gICAgaWYgKCFtYXRjaGVzKSB7XG4gICAgICBjb25zdCByZXZlcnNlZCA9IGZhbHNlLFxuICAgICAgICAgICAgbGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoID0gdGhpcy5tYXRjaFRlcm1Ob2RlcyhsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIHJldmVyc2VkLCBlcXVhbGl0aWVzLCBjb250ZXh0KTtcblxuICAgICAgbWF0Y2hlcyA9IGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaDsgIC8vL1xuICAgIH1cblxuICAgIGlmICghbWF0Y2hlcykge1xuICAgICAgY29uc3QgcmV2ZXJzZWQgPSB0cnVlLFxuICAgICAgICAgICAgbGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoID0gdGhpcy5tYXRjaFRlcm1Ob2RlcyhsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIHJldmVyc2VkLCBlcXVhbGl0aWVzLCBjb250ZXh0KTtcblxuICAgICAgbWF0Y2hlcyA9IGxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGVNYXRjaDsgIC8vL1xuICAgIH1cblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgdmVyaWZ5KGVxdWFsaXRpZXMsIGNvbnRleHQpIHtcbiAgICBjb25zdCBsZWZ0Tm9uVGVybWluYWxOb2RlID0gdGhpcy5sZWZ0VGVybU5vZGUsICAvLy9cbiAgICAgICAgICByaWdodE5vblRlcm1pbmFsTm9kZSA9IHRoaXMucmlnaHRUZXJtTm9kZSwgIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZXF1YWxpdHlWZXJpZmllci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobGVmdE5vblRlcm1pbmFsTm9kZSwgcmlnaHROb25UZXJtaW5hbE5vZGUsIGVxdWFsaXRpZXMsIGNvbnRleHQpLFxuICAgICAgICAgIHZlcmlmaWVkID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgcmV0dXJuIHZlcmlmaWVkO1xuICB9XG5cbiAgc3RhdGljIGZyb21Qcm9vZlN0ZXAocHJvb2ZTdGVwKSB7XG4gICAgbGV0IGVxdWFsaXR5ID0gbnVsbDtcblxuICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBwcm9vZlN0ZXAuZ2V0U3RhdGVtZW50Tm9kZSgpO1xuXG4gICAgaWYgKHN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGRlcHRoID0gRVFVQUxJVFlfREVQVEgsXG4gICAgICAgICAgICBzdGF0ZW1lbnROb2RlTWF0Y2hlc0VxdWFsaXR5U3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGUubWF0Y2goZXF1YWxpdHlTdGF0ZW1lbnROb2RlLCBkZXB0aCk7XG5cbiAgICAgIGlmIChzdGF0ZW1lbnROb2RlTWF0Y2hlc0VxdWFsaXR5U3RhdGVtZW50Tm9kZSkge1xuICAgICAgICBjb25zdCBsZWZ0VGVybU5vZGUgPSBsZWZ0VGVybU5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICAgICAgcmlnaHRUZXJtTm9kZSA9IHJpZ2h0VGVybU5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBlcXVhbGl0eSA9IG5ldyBFcXVhbGl0eShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBlcXVhbGl0eTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKSB7XG4gICAgY29uc3QgbGVmdFRlcm1Ob2RlID0gbGVmdFRlcm1Ob2RlUXVlcnkoc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgcmlnaHRUZXJtTm9kZSA9IHJpZ2h0VGVybU5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBlcXVhbGl0eSA9IG5ldyBFcXVhbGl0eShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpO1xuXG4gICAgcmV0dXJuIGVxdWFsaXR5O1xuICB9XG5cbiAgc3RhdGljIGZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSkge1xuICAgIGNvbnN0IGVxdWFsaXR5ID0gbmV3IEVxdWFsaXR5KGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSk7XG5cbiAgICByZXR1cm4gZXF1YWxpdHk7XG4gIH1cbn1cblxuY2xhc3MgRXF1YWxpdHlWZXJpZmllciBleHRlbmRzIFZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKGxlZnROb25UZXJtaW5hbE5vZGUsIHJpZ2h0Tm9uVGVybWluYWxOb2RlLCBlcXVhbGl0aWVzLCBjb250ZXh0KSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBsZWZ0Tm9uVGVybWluYWxOb2RlUnVsZU5hbWUgPSBsZWZ0Tm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCksXG4gICAgICAgICAgcmlnaHROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSA9IHJpZ2h0Tm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCk7XG5cbiAgICBpZiAobGVmdE5vblRlcm1pbmFsTm9kZVJ1bGVOYW1lID09PSByaWdodE5vblRlcm1pbmFsTm9kZVJ1bGVOYW1lKSB7XG4gICAgICBjb25zdCBydWxlTmFtZSA9IGxlZnROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSwgLy8vXG4gICAgICAgICAgICBydWxlTmFtZVRlcm1SdWxlTmFtZSA9IChydWxlTmFtZSA9PT0gVEVSTV9SVUxFX05BTUUpO1xuXG4gICAgICBpZiAocnVsZU5hbWVUZXJtUnVsZU5hbWUpIHtcbiAgICAgICAgY29uc3QgbGVmdFRlcm1Ob2RlID0gbGVmdE5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHJpZ2h0VGVybU5vZGUgPSByaWdodE5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHRlcm1Ob2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeVRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgZXF1YWxpdGllcywgY29udGV4dCk7XG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0ZXJtTm9kZVZlcmlmaWVkOyAgLy8vXG4gICAgICB9XG5cbiAgICAgIGlmICghbm9uVGVybWluYWxOb2RlVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgbGVmdE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMgPSBsZWZ0Tm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgcmlnaHROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzID0gcmlnaHROb25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgICBsZWZ0Tm9kZXMgPSBsZWZ0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgICAgIHJpZ2h0Tm9kZXMgPSByaWdodE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICBub2Rlc1ZlcmlmaWVkID0gdGhpcy52ZXJpZnlOb2RlcyhsZWZ0Tm9kZXMsIHJpZ2h0Tm9kZXMsIGVxdWFsaXRpZXMsIGNvbnRleHQpO1xuXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbm9kZXNWZXJpZmllZDsgLy8vXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5VGVybU5vZGUobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCBlcXVhbGl0aWVzLCBjb250ZXh0KSB7XG4gICAgbGV0IHRlcm1Ob2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IHZhcmlhYmxlcyA9IFtdLFxuICAgICAgICAgIGxlZnRUZXJtVmVyaWZpZWRBc1ZhcmlhYmxlID0gdmVyaWZ5VGVybUFzVmFyaWFibGUobGVmdFRlcm1Ob2RlLCB2YXJpYWJsZXMsIGNvbnRleHQpLFxuICAgICAgICAgIHJpZ2h0VGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IHZlcmlmeVRlcm1Bc1ZhcmlhYmxlKHJpZ2h0VGVybU5vZGUsIHZhcmlhYmxlcywgY29udGV4dCk7XG5cbiAgICBsZXQgZXF1YWxpdHkgPSBudWxsO1xuXG4gICAgaWYgKGxlZnRUZXJtVmVyaWZpZWRBc1ZhcmlhYmxlICYmIHJpZ2h0VGVybVZlcmlmaWVkQXNWYXJpYWJsZSkge1xuICAgICAgY29uc3QgZmlyc3RWYXJpYWJsZSA9IGZpcnN0KHZhcmlhYmxlcyksXG4gICAgICAgICAgICBzZWNvbmRWYXJpYWJsZSA9IHNlY29uZCh2YXJpYWJsZXMpLFxuICAgICAgICAgICAgbGVmdFZhcmlhYmxlID0gZmlyc3RWYXJpYWJsZSwgLy8vXG4gICAgICAgICAgICByaWdodFZhcmlhYmxlID0gc2Vjb25kVmFyaWFibGUsIC8vL1xuICAgICAgICAgICAgbGVmdFZhcmlhYmxlVHlwZSA9IGxlZnRWYXJpYWJsZS5nZXRUeXBlKCksXG4gICAgICAgICAgICByaWdodFZhcmlhYmxlVHlwZSA9IHJpZ2h0VmFyaWFibGUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgbGVmdFZhcmlhYmxlVHlwZUVxdWFsVG9PclN1YlR5cGVPZk9mU3VwZXJUeXBlT2ZSaWdodFZhcmlhYmxlVHlwZSA9IGxlZnRWYXJpYWJsZVR5cGUuaXNFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mKHJpZ2h0VmFyaWFibGVUeXBlKTtcblxuICAgICAgaWYgKGxlZnRWYXJpYWJsZVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mUmlnaHRWYXJpYWJsZVR5cGUpIHtcbiAgICAgICAgZXF1YWxpdHkgPSBFcXVhbGl0eS5mcm9tTGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAobGVmdFRlcm1WZXJpZmllZEFzVmFyaWFibGUpIHtcbiAgICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICAgIHZlcmlmeVRlcm0ocmlnaHRUZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpO1xuXG4gICAgICBjb25zdCBmaXJzdFR5cGUgPSBmaXJzdCh0eXBlcyksXG4gICAgICAgICAgICBmaXJzdFZhcmlhYmxlID0gZmlyc3QodmFyaWFibGVzKSxcbiAgICAgICAgICAgIGxlZnRWYXJpYWJsZSA9IGZpcnN0VmFyaWFibGUsIC8vL1xuICAgICAgICAgICAgcmlnaHRUZXJtVHlwZSA9IGZpcnN0VHlwZSwgIC8vL1xuICAgICAgICAgICAgbGVmdFZhcmlhYmxlVHlwZSA9IGxlZnRWYXJpYWJsZS5nZXRUeXBlKCksXG4gICAgICAgICAgICBsZWZ0VmFyaWFibGVUeXBlRXF1YWxUb09yU3VwZXJUeXBlT2ZSaWdodFRlcm1UeXBlID0gbGVmdFZhcmlhYmxlVHlwZS5pc0VxdWFsVG9PclN1cGVyVHlwZU9mKHJpZ2h0VGVybVR5cGUpO1xuXG4gICAgICBpZiAobGVmdFZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSkge1xuICAgICAgICBlcXVhbGl0eSA9IEVxdWFsaXR5LmZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChyaWdodFRlcm1WZXJpZmllZEFzVmFyaWFibGUpIHtcbiAgICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICAgIHZlcmlmeVRlcm0obGVmdFRlcm1Ob2RlLCB0eXBlcywgY29udGV4dCk7XG5cbiAgICAgIGNvbnN0IGZpcnN0VHlwZSA9IGZpcnN0KHR5cGVzKSxcbiAgICAgICAgICAgIGZpcnN0VmFyaWFibGUgPSBmaXJzdCh2YXJpYWJsZXMpLFxuICAgICAgICAgICAgbGVmdFRlcm1UeXBlID0gZmlyc3RUeXBlLCAgLy8vXG4gICAgICAgICAgICByaWdodFZhcmlhYmxlID0gZmlyc3RWYXJpYWJsZSwgLy8vXG4gICAgICAgICAgICByaWdodFZhcmlhYmxlVHlwZSA9IHJpZ2h0VmFyaWFibGUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgcmlnaHRWYXJpYWJsZVR5cGVFcXVhbFRvT3JTdXBlclR5cGVPZlJpZ2h0VGVybVR5cGUgPSByaWdodFZhcmlhYmxlVHlwZS5pc0VxdWFsVG9PclN1cGVyVHlwZU9mKGxlZnRUZXJtVHlwZSk7XG5cbiAgICAgIGlmIChyaWdodFZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSkge1xuICAgICAgICBlcXVhbGl0eSA9IEVxdWFsaXR5LmZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICAgIHZlcmlmeVRlcm0obGVmdFRlcm1Ob2RlLCB0eXBlcywgY29udGV4dCk7XG5cbiAgICAgIHZlcmlmeVRlcm0ocmlnaHRUZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpO1xuXG4gICAgICBjb25zdCBmaXJzdFR5cGUgPSBmaXJzdCh0eXBlcyksXG4gICAgICAgICAgICBzZWNvbmRUeXBlID0gc2Vjb25kKHR5cGVzKSxcbiAgICAgICAgICAgIGxlZnRUZXJtVHlwZSA9IGZpcnN0VHlwZSwgLy8vXG4gICAgICAgICAgICByaWdodFRlcm1UeXBlID0gc2Vjb25kVHlwZSwgLy8vXG4gICAgICAgICAgICBsZWZ0VGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSA9IGxlZnRUZXJtVHlwZS5pc0VxdWFsVG9PclN1YlR5cGVPZk9mU3VwZXJUeXBlT2YocmlnaHRUZXJtVHlwZSk7XG5cbiAgICAgIGlmIChsZWZ0VGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSkge1xuICAgICAgICBlcXVhbGl0eSA9IEVxdWFsaXR5LmZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGVxdWFsaXR5ICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBlcXVhbGl0eUEgPSBlcXVhbGl0eSwgLy8vXG4gICAgICAgICAgICBlcXVhbGl0aWVzQiA9IGVxdWFsaXRpZXMsIC8vL1xuICAgICAgICAgICAgZXF1YWxpdHlNYXRjaGVzID0gZXF1YWxpdGllc0Iuc29tZSgoZXF1YWxpdHlCKSA9PiB7IC8vL1xuICAgICAgICAgICAgICBjb25zdCBlcXVhbGl0eUFNYXRjaGVzRXF1YWxpdHlCID0gZXF1YWxpdHlBLm1hdGNoKGVxdWFsaXR5QiwgZXF1YWxpdGllc0IsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICAgIGlmIChlcXVhbGl0eUFNYXRjaGVzRXF1YWxpdHlCKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICB0ZXJtTm9kZVZlcmlmaWVkID0gZXF1YWxpdHlNYXRjaGVzOyAgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIHRlcm1Ob2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3QgZXF1YWxpdHlWZXJpZmllciA9IG5ldyBFcXVhbGl0eVZlcmlmaWVyKCk7XG5cbmZ1bmN0aW9uIGZpbHRlckVxdWFsaXRpZXMoZXF1YWxpdGllcywgZXF1YWxpdHkpIHtcbiAgY29uc3QgZXF1YWxpdHlBID0gZXF1YWxpdHk7IC8vL1xuXG4gIGVxdWFsaXRpZXMgPSBlcXVhbGl0aWVzLmZpbHRlcigoZXF1YWxpdHkpID0+IHtcbiAgICBjb25zdCBlcXVhbGl0eUIgPSBlcXVhbGl0eTsgLy8vXG5cbiAgICBpZiAoZXF1YWxpdHlBICE9PSBlcXVhbGl0eUIpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGVxdWFsaXRpZXM7XG59XG4iXSwibmFtZXMiOlsiRXF1YWxpdHkiLCJsZWZ0VGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInJpZ2h0VGVybU5vZGVRdWVyeSIsImxlZnRUZXJtTm9kZSIsInJpZ2h0VGVybU5vZGUiLCJnZXRMZWZ0VGVybU5vZGUiLCJnZXRSaWdodFRlcm1Ob2RlIiwibWF0Y2hUZXJtTm9kZXMiLCJyZXZlcnNlZCIsImVxdWFsaXRpZXMiLCJjb250ZXh0IiwibGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZU1hdGNoIiwibGVmdE5vblRlcm1pbmFsTm9kZSIsInJpZ2h0Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJlcXVhbGl0eVZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibWF0Y2giLCJlcXVhbGl0eSIsIm1hdGNoZXMiLCJmaWx0ZXJFcXVhbGl0aWVzIiwidmVyaWZ5IiwidmVyaWZpZWQiLCJmcm9tUHJvb2ZTdGVwIiwicHJvb2ZTdGVwIiwic3RhdGVtZW50Tm9kZSIsImdldFN0YXRlbWVudE5vZGUiLCJkZXB0aCIsIkVRVUFMSVRZX0RFUFRIIiwic3RhdGVtZW50Tm9kZU1hdGNoZXNFcXVhbGl0eVN0YXRlbWVudE5vZGUiLCJlcXVhbGl0eVN0YXRlbWVudE5vZGUiLCJmcm9tU3RhdGVtZW50Tm9kZSIsImZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlIiwiRXF1YWxpdHlWZXJpZmllciIsImxlZnROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSIsImdldFJ1bGVOYW1lIiwicmlnaHROb25UZXJtaW5hbE5vZGVSdWxlTmFtZSIsInJ1bGVOYW1lIiwicnVsZU5hbWVUZXJtUnVsZU5hbWUiLCJURVJNX1JVTEVfTkFNRSIsInRlcm1Ob2RlVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtTm9kZSIsImxlZnROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsInJpZ2h0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcyIsImxlZnROb2RlcyIsInJpZ2h0Tm9kZXMiLCJub2Rlc1ZlcmlmaWVkIiwidmVyaWZ5Tm9kZXMiLCJ2YXJpYWJsZXMiLCJsZWZ0VGVybVZlcmlmaWVkQXNWYXJpYWJsZSIsInZlcmlmeVRlcm1Bc1ZhcmlhYmxlIiwicmlnaHRUZXJtVmVyaWZpZWRBc1ZhcmlhYmxlIiwiZmlyc3RWYXJpYWJsZSIsImZpcnN0Iiwic2Vjb25kVmFyaWFibGUiLCJzZWNvbmQiLCJsZWZ0VmFyaWFibGUiLCJyaWdodFZhcmlhYmxlIiwibGVmdFZhcmlhYmxlVHlwZSIsImdldFR5cGUiLCJyaWdodFZhcmlhYmxlVHlwZSIsImxlZnRWYXJpYWJsZVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mUmlnaHRWYXJpYWJsZVR5cGUiLCJpc0VxdWFsVG9PclN1YlR5cGVPZk9mU3VwZXJUeXBlT2YiLCJ0eXBlcyIsInZlcmlmeVRlcm0iLCJmaXJzdFR5cGUiLCJyaWdodFRlcm1UeXBlIiwibGVmdFZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSIsImlzRXF1YWxUb09yU3VwZXJUeXBlT2YiLCJsZWZ0VGVybVR5cGUiLCJyaWdodFZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSIsInNlY29uZFR5cGUiLCJsZWZ0VGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZPZlN1cGVyVHlwZU9mUmlnaHRUZXJtVHlwZSIsImVxdWFsaXR5QSIsImVxdWFsaXRpZXNCIiwiZXF1YWxpdHlNYXRjaGVzIiwic29tZSIsImVxdWFsaXR5QiIsImVxdWFsaXR5QU1hdGNoZXNFcXVhbGl0eUIiLCJWZXJpZmllciIsImZpbHRlciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFlcUJBOzs7K0RBYkE7NERBQ0U7K0RBQ1c7cUJBRVI7cUJBQ0k7eUJBQ0M7eUJBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHL0IsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDLGlDQUM5QkMscUJBQXFCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRXRCLElBQUEsQUFBTUYseUJBNkdsQixBQTdHWTthQUFNQSxTQUNQSSxZQUFZLEVBQUVDLGFBQWE7Z0NBRHBCTDtRQUVqQixJQUFJLENBQUNJLFlBQVksR0FBR0E7UUFDcEIsSUFBSSxDQUFDQyxhQUFhLEdBQUdBOztrQkFISkw7O1lBTW5CTSxLQUFBQTttQkFBQUEsU0FBQUEsa0JBQWtCO2dCQUNoQixPQUFPLElBQUksQ0FBQ0YsWUFBWTtZQUMxQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxtQkFBbUI7Z0JBQ2pCLE9BQU8sSUFBSSxDQUFDRixhQUFhO1lBQzNCOzs7WUFF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
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "default", {
8
8
  return MetastatementForMetavariableSubstitution;
9
9
  }
10
10
  });
11
- var _matcher = /*#__PURE__*/ _interop_require_default(require("../matcher"));
12
11
  var _metaproof = require("../utilities/metaproof");
13
12
  function _class_call_check(instance, Constructor) {
14
13
  if (!(instance instanceof Constructor)) {
@@ -29,11 +28,6 @@ function _create_class(Constructor, protoProps, staticProps) {
29
28
  if (staticProps) _defineProperties(Constructor, staticProps);
30
29
  return Constructor;
31
30
  }
32
- function _interop_require_default(obj) {
33
- return obj && obj.__esModule ? obj : {
34
- default: obj
35
- };
36
- }
37
31
  var MetastatementForMetavariableSubstitution = /*#__PURE__*/ function() {
38
32
  function MetastatementForMetavariableSubstitution(metavariableName, metastatementNode) {
39
33
  _class_call_check(this, MetastatementForMetavariableSubstitution);
@@ -57,13 +51,12 @@ var MetastatementForMetavariableSubstitution = /*#__PURE__*/ function() {
57
51
  key: "matchMetastatementNode",
58
52
  value: function matchMetastatementNode(metastatementNode) {
59
53
  var metastatementNodeMatches;
60
- var nodeA = this.metastatementNode, nodeB = metastatementNode, nodeMatches = _matcher.default.matchNode(nodeA, nodeB);
61
- metastatementNodeMatches = nodeMatches; ///
54
+ metastatementNodeMatches = this.metastatementNode.match(metastatementNode);
62
55
  if (!metastatementNodeMatches) {
63
56
  var bracketedMetastatementChildNode = (0, _metaproof.bracketedMetastatementChildNodeFromMetastatementNode)(metastatementNode);
64
57
  if (bracketedMetastatementChildNode !== null) {
65
- var _$metastatementNode = bracketedMetastatementChildNode, nodeA1 = this.metastatementNode, nodeB1 = _$metastatementNode, nodeMatches1 = _matcher.default.matchNode(nodeA1, nodeB1);
66
- metastatementNodeMatches = nodeMatches1; ///
58
+ var _$metastatementNode = bracketedMetastatementChildNode; ///
59
+ metastatementNodeMatches = this.metastatementNode.match(_$metastatementNode);
67
60
  }
68
61
  }
69
62
  return metastatementNodeMatches;
@@ -86,4 +79,4 @@ var MetastatementForMetavariableSubstitution = /*#__PURE__*/ function() {
86
79
  return MetastatementForMetavariableSubstitution;
87
80
  }();
88
81
 
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IG1hdGNoZXIgZnJvbSBcIi4uL21hdGNoZXJcIjtcblxuaW1wb3J0IHsgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21NZXRhc3RhdGVtZW50Tm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvbWV0YXByb29mXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3RvcihtZXRhdmFyaWFibGVOYW1lLCBtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy5tZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOYW1lO1xuICB9XG5cbiAgZ2V0TWV0YXN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBtYXRjaE1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcztcblxuICAgIGNvbnN0IG5vZGVBID0gdGhpcy5tZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgIG5vZGVCID0gbWV0YXN0YXRlbWVudE5vZGUsXG4gICAgICAgICAgbm9kZU1hdGNoZXMgPSBtYXRjaGVyLm1hdGNoTm9kZShub2RlQSwgbm9kZUIpO1xuXG4gICAgbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzID0gbm9kZU1hdGNoZXM7ICAvLy9cblxuICAgIGlmICghbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzKSB7XG4gICAgICBjb25zdCBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIGlmIChicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSwgLy8vXG4gICAgICAgICAgICAgIG5vZGVBID0gdGhpcy5tZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgICAgICBub2RlQiA9IG1ldGFzdGF0ZW1lbnROb2RlLFxuICAgICAgICAgICAgICBub2RlTWF0Y2hlcyA9IG1hdGNoZXIubWF0Y2hOb2RlKG5vZGVBLCBub2RlQik7XG5cbiAgICAgICAgbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzID0gbm9kZU1hdGNoZXM7ICAvLy9cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21NZXRhdmFyaWFibGVOYW1lQW5kTWV0YXN0YXRlbWVudE5vZGUobWV0YXZhcmlhYmxlTmFtZSwgbWV0YXN0YXRlbWVudE5vZGUpIHtcbiAgICBsZXQgbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IG5ldyBNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uKG1ldGF2YXJpYWJsZU5hbWUsIG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmIChicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGU7IC8vL1xuXG4gICAgICBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gbmV3IE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTmFtZSwgbWV0YXN0YXRlbWVudE5vZGUpO1xuICAgIH1cblxuICAgIHJldHVybiBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIk1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJtZXRhdmFyaWFibGVOYW1lIiwibWV0YXN0YXRlbWVudE5vZGUiLCJnZXRNZXRhdmFyaWFibGVOYW1lIiwiZ2V0TWV0YXN0YXRlbWVudE5vZGUiLCJtYXRjaE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzIiwibm9kZUEiLCJub2RlQiIsIm5vZGVNYXRjaGVzIiwibWF0Y2hlciIsIm1hdGNoTm9kZSIsImJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUiLCJicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwiZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7OzhEQUpEO3lCQUVpRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV0RCxJQUFBLEFBQU1BLHlEQUFOO2FBQU1BLHlDQUNQQyxnQkFBZ0IsRUFBRUMsaUJBQWlCO2dDQUQ1QkY7UUFFakIsSUFBSSxDQUFDQyxnQkFBZ0IsR0FBR0E7UUFDeEIsSUFBSSxDQUFDQyxpQkFBaUIsR0FBR0E7O2tCQUhSRjs7WUFNbkJHLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0I7Z0JBQ3BCLE9BQU8sSUFBSSxDQUFDRixnQkFBZ0I7WUFDOUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsdUJBQXVCO2dCQUNyQixPQUFPLElBQUksQ0FBQ0YsaUJBQWlCO1lBQy9COzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLHVCQUF1QkgsaUJBQWlCLEVBQUU7Z0JBQ3hDLElBQUlJO2dCQUVKLElBQU1DLFFBQVEsSUFBSSxDQUFDTCxpQkFBaUIsRUFDOUJNLFFBQVFOLG1CQUNSTyxjQUFjQyxnQkFBTyxDQUFDQyxTQUFTLENBQUNKLE9BQU9DO2dCQUU3Q0YsMkJBQTJCRyxhQUFjLEdBQUc7Z0JBRTVDLElBQUksQ0FBQ0gsMEJBQTBCO29CQUM3QixJQUFNTSxrQ0FBa0NDLElBQUFBLCtEQUFvRCxFQUFDWDtvQkFFN0YsSUFBSVUsb0NBQW9DLElBQUksRUFBRTt3QkFDNUMsSUFBTVYsc0JBQW9CVSxpQ0FDcEJMLFNBQVEsSUFBSSxDQUFDTCxpQkFBaUIsRUFDOUJNLFNBQVFOLHFCQUNSTyxlQUFjQyxnQkFBTyxDQUFDQyxTQUFTLENBQUNKLFFBQU9DO3dCQUU3Q0YsMkJBQTJCRyxjQUFjLEdBQUc7b0JBQzlDLENBQUM7Z0JBQ0gsQ0FBQztnQkFFRCxPQUFPSDtZQUNUOzs7O1lBRU9RLEtBQUFBO21CQUFQLFNBQU9BLHlDQUF5Q2IsZ0JBQWdCLEVBQUVDLGlCQUFpQixFQUFFO2dCQUNuRixJQUFJYSwyQ0FBMkMsSUF4QzlCZix5Q0F3QzJFQyxrQkFBa0JDO2dCQUU5RyxJQUFNVSxrQ0FBa0NDLElBQUFBLCtEQUFvRCxFQUFDWDtnQkFFN0YsSUFBSVUsb0NBQW9DLElBQUksRUFBRTtvQkFDNUMsSUFBTVYsc0JBQW9CVSxpQ0FBaUMsR0FBRztvQkFFOURHLDJDQUEyQyxJQS9DNUJmLHlDQStDeUVDLGtCQUFrQkM7Z0JBQzVHLENBQUM7Z0JBRUQsT0FBT2E7WUFDVDs7O1dBbkRtQmYifQ==
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21NZXRhc3RhdGVtZW50Tm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvbWV0YXByb29mXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3RvcihtZXRhdmFyaWFibGVOYW1lLCBtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy5tZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOYW1lO1xuICB9XG5cbiAgZ2V0TWV0YXN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBtYXRjaE1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcztcblxuICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMubWV0YXN0YXRlbWVudE5vZGUubWF0Y2gobWV0YXN0YXRlbWVudE5vZGUpXG5cbiAgICBpZiAoIW1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcykge1xuICAgICAgY29uc3QgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgICBpZiAoYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGU7IC8vL1xuXG4gICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMubWV0YXN0YXRlbWVudE5vZGUubWF0Y2gobWV0YXN0YXRlbWVudE5vZGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRNZXRhc3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOYW1lLCBtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gbmV3IE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTmFtZSwgbWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3QgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZTsgLy8vXG5cbiAgICAgIG1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24gPSBuZXcgTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbihtZXRhdmFyaWFibGVOYW1lLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb247XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsIm1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImdldE1ldGF2YXJpYWJsZU5hbWUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsIm1hdGNoTWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJtYXRjaCIsImJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUiLCJicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwiZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O3lCQUZnRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdEQsSUFBQSxBQUFNQSx5REFBTjthQUFNQSx5Q0FDUEMsZ0JBQWdCLEVBQUVDLGlCQUFpQjtnQ0FENUJGO1FBRWpCLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUksQ0FBQ0MsaUJBQWlCLEdBQUdBOztrQkFIUkY7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCO2dCQUNwQixPQUFPLElBQUksQ0FBQ0YsZ0JBQWdCO1lBQzlCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLHVCQUF1QjtnQkFDckIsT0FBTyxJQUFJLENBQUNGLGlCQUFpQjtZQUMvQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSx1QkFBdUJILGlCQUFpQixFQUFFO2dCQUN4QyxJQUFJSTtnQkFFSkEsMkJBQTJCLElBQUksQ0FBQ0osaUJBQWlCLENBQUNLLEtBQUssQ0FBQ0w7Z0JBRXhELElBQUksQ0FBQ0ksMEJBQTBCO29CQUM3QixJQUFNRSxrQ0FBa0NDLElBQUFBLCtEQUFvRCxFQUFDUDtvQkFFN0YsSUFBSU0sb0NBQW9DLElBQUksRUFBRTt3QkFDNUMsSUFBTU4sc0JBQW9CTSxpQ0FBaUMsR0FBRzt3QkFFOURGLDJCQUEyQixJQUFJLENBQUNKLGlCQUFpQixDQUFDSyxLQUFLLENBQUNMO29CQUMxRCxDQUFDO2dCQUNILENBQUM7Z0JBRUQsT0FBT0k7WUFDVDs7OztZQUVPSSxLQUFBQTttQkFBUCxTQUFPQSx5Q0FBeUNULGdCQUFnQixFQUFFQyxpQkFBaUIsRUFBRTtnQkFDbkYsSUFBSVMsMkNBQTJDLElBakM5QlgseUNBaUMyRUMsa0JBQWtCQztnQkFFOUcsSUFBTU0sa0NBQWtDQyxJQUFBQSwrREFBb0QsRUFBQ1A7Z0JBRTdGLElBQUlNLG9DQUFvQyxJQUFJLEVBQUU7b0JBQzVDLElBQU1OLHNCQUFvQk0saUNBQWlDLEdBQUc7b0JBRTlERywyQ0FBMkMsSUF4QzVCWCx5Q0F3Q3lFQyxrQkFBa0JDO2dCQUM1RyxDQUFDO2dCQUVELE9BQU9TO1lBQ1Q7OztXQTVDbUJYIn0=
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "default", {
8
8
  return StatementForMetavariableSubstitution;
9
9
  }
10
10
  });
11
- var _matcher = /*#__PURE__*/ _interop_require_default(require("../matcher"));
12
11
  var _proof = require("../utilities/proof");
13
12
  function _class_call_check(instance, Constructor) {
14
13
  if (!(instance instanceof Constructor)) {
@@ -29,11 +28,6 @@ function _create_class(Constructor, protoProps, staticProps) {
29
28
  if (staticProps) _defineProperties(Constructor, staticProps);
30
29
  return Constructor;
31
30
  }
32
- function _interop_require_default(obj) {
33
- return obj && obj.__esModule ? obj : {
34
- default: obj
35
- };
36
- }
37
31
  var StatementForMetavariableSubstitution = /*#__PURE__*/ function() {
38
32
  function StatementForMetavariableSubstitution(metavariableName, statementNode) {
39
33
  _class_call_check(this, StatementForMetavariableSubstitution);
@@ -57,13 +51,12 @@ var StatementForMetavariableSubstitution = /*#__PURE__*/ function() {
57
51
  key: "matchStatementNode",
58
52
  value: function matchStatementNode(statementNode) {
59
53
  var statementNodeMatches;
60
- var nodeA = this.statementNode, nodeB = statementNode, nodeMatches = _matcher.default.matchNode(nodeA, nodeB);
61
- statementNodeMatches = nodeMatches; ///
54
+ statementNodeMatches = this.statementNode.match(statementNode);
62
55
  if (!statementNodeMatches) {
63
56
  var bracketedStatementChildNode = (0, _proof.bracketedStatementChildNodeFromStatementNode)(statementNode);
64
57
  if (bracketedStatementChildNode !== null) {
65
- var _$statementNode = bracketedStatementChildNode, nodeA1 = this.statementNode, nodeB1 = _$statementNode, nodeMatches1 = _matcher.default.matchNode(nodeA1, nodeB1);
66
- statementNodeMatches = nodeMatches1; ///
58
+ var _$statementNode = bracketedStatementChildNode; ///
59
+ statementNodeMatches = this.statementNode.match(_$statementNode);
67
60
  }
68
61
  }
69
62
  return statementNodeMatches;
@@ -86,4 +79,4 @@ var StatementForMetavariableSubstitution = /*#__PURE__*/ function() {
86
79
  return StatementForMetavariableSubstitution;
87
80
  }();
88
81
 
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWF0Y2hlciBmcm9tIFwiLi4vbWF0Y2hlclwiO1xuXG5pbXBvcnQgeyBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcHJvb2ZcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3IobWV0YXZhcmlhYmxlTmFtZSwgc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy5zdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldE1ldGF2YXJpYWJsZU5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXZhcmlhYmxlTmFtZTtcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IHN0YXRlbWVudE5vZGVNYXRjaGVzO1xuXG4gICAgY29uc3Qgbm9kZUEgPSB0aGlzLnN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICBub2RlQiA9IHN0YXRlbWVudE5vZGUsXG4gICAgICAgICAgbm9kZU1hdGNoZXMgPSBtYXRjaGVyLm1hdGNoTm9kZShub2RlQSwgbm9kZUIpO1xuXG4gICAgc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBub2RlTWF0Y2hlczsgIC8vL1xuXG4gICAgaWYgKCFzdGF0ZW1lbnROb2RlTWF0Y2hlcykge1xuICAgICAgY29uc3QgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlRnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIGlmIChicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSwgLy8vXG4gICAgICAgICAgICAgIG5vZGVBID0gdGhpcy5zdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgICAgICAgIG5vZGVCID0gc3RhdGVtZW50Tm9kZSxcbiAgICAgICAgICAgICAgbm9kZU1hdGNoZXMgPSBtYXRjaGVyLm1hdGNoTm9kZShub2RlQSwgbm9kZUIpO1xuXG4gICAgICAgIHN0YXRlbWVudE5vZGVNYXRjaGVzID0gbm9kZU1hdGNoZXM7ICAvLy9cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRTdGF0ZW1lbnROb2RlKG1ldGF2YXJpYWJsZU5hbWUsIHN0YXRlbWVudE5vZGUpIHtcbiAgICBsZXQgc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gbmV3IFN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbihtZXRhdmFyaWFibGVOYW1lLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZTsgLy8vXG5cbiAgICAgIHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IG5ldyBTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTmFtZSwgc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbjtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJtZXRhdmFyaWFibGVOYW1lIiwic3RhdGVtZW50Tm9kZSIsImdldE1ldGF2YXJpYWJsZU5hbWUiLCJnZXRTdGF0ZW1lbnROb2RlIiwibWF0Y2hTdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJub2RlQSIsIm5vZGVCIiwibm9kZU1hdGNoZXMiLCJtYXRjaGVyIiwibWF0Y2hOb2RlIiwiYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlIiwiYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlRnJvbVN0YXRlbWVudE5vZGUiLCJmcm9tTWV0YXZhcmlhYmxlTmFtZUFuZFN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7OzhEQUpEO3FCQUV5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU5QyxJQUFBLEFBQU1BLHFEQUFOO2FBQU1BLHFDQUNQQyxnQkFBZ0IsRUFBRUMsYUFBYTtnQ0FEeEJGO1FBRWpCLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTs7a0JBSEpGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQjtnQkFDcEIsT0FBTyxJQUFJLENBQUNGLGdCQUFnQjtZQUM5Qjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxtQkFBbUI7Z0JBQ2pCLE9BQU8sSUFBSSxDQUFDRixhQUFhO1lBQzNCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLG1CQUFtQkgsYUFBYSxFQUFFO2dCQUNoQyxJQUFJSTtnQkFFSixJQUFNQyxRQUFRLElBQUksQ0FBQ0wsYUFBYSxFQUMxQk0sUUFBUU4sZUFDUk8sY0FBY0MsZ0JBQU8sQ0FBQ0MsU0FBUyxDQUFDSixPQUFPQztnQkFFN0NGLHVCQUF1QkcsYUFBYyxHQUFHO2dCQUV4QyxJQUFJLENBQUNILHNCQUFzQjtvQkFDekIsSUFBTU0sOEJBQThCQyxJQUFBQSxtREFBNEMsRUFBQ1g7b0JBRWpGLElBQUlVLGdDQUFnQyxJQUFJLEVBQUU7d0JBQ3hDLElBQU1WLGtCQUFnQlUsNkJBQ2hCTCxTQUFRLElBQUksQ0FBQ0wsYUFBYSxFQUMxQk0sU0FBUU4saUJBQ1JPLGVBQWNDLGdCQUFPLENBQUNDLFNBQVMsQ0FBQ0osUUFBT0M7d0JBRTdDRix1QkFBdUJHLGNBQWMsR0FBRztvQkFDMUMsQ0FBQztnQkFDSCxDQUFDO2dCQUVELE9BQU9IO1lBQ1Q7Ozs7WUFFT1EsS0FBQUE7bUJBQVAsU0FBT0EscUNBQXFDYixnQkFBZ0IsRUFBRUMsYUFBYSxFQUFFO2dCQUMzRSxJQUFJYSx1Q0FBdUMsSUF4QzFCZixxQ0F3Q21FQyxrQkFBa0JDO2dCQUV0RyxJQUFNVSw4QkFBOEJDLElBQUFBLG1EQUE0QyxFQUFDWDtnQkFFakYsSUFBSVUsZ0NBQWdDLElBQUksRUFBRTtvQkFDeEMsSUFBTVYsa0JBQWdCVSw2QkFBNkIsR0FBRztvQkFFdERHLHVDQUF1QyxJQS9DeEJmLHFDQStDaUVDLGtCQUFrQkM7Z0JBQ3BHLENBQUM7Z0JBRUQsT0FBT2E7WUFDVDs7O1dBbkRtQmYifQ==
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcHJvb2ZcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3IobWV0YXZhcmlhYmxlTmFtZSwgc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy5zdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldE1ldGF2YXJpYWJsZU5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXZhcmlhYmxlTmFtZTtcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IHN0YXRlbWVudE5vZGVNYXRjaGVzO1xuXG4gICAgc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSB0aGlzLnN0YXRlbWVudE5vZGUubWF0Y2goc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBpZiAoIXN0YXRlbWVudE5vZGVNYXRjaGVzKSB7XG4gICAgICBjb25zdCBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBzdGF0ZW1lbnROb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlOyAvLy9cblxuICAgICAgICBzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMuc3RhdGVtZW50Tm9kZS5tYXRjaChzdGF0ZW1lbnROb2RlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRTdGF0ZW1lbnROb2RlKG1ldGF2YXJpYWJsZU5hbWUsIHN0YXRlbWVudE5vZGUpIHtcbiAgICBsZXQgc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gbmV3IFN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbihtZXRhdmFyaWFibGVOYW1lLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZTsgLy8vXG5cbiAgICAgIHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IG5ldyBTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTmFtZSwgc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbjtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJtZXRhdmFyaWFibGVOYW1lIiwic3RhdGVtZW50Tm9kZSIsImdldE1ldGF2YXJpYWJsZU5hbWUiLCJnZXRTdGF0ZW1lbnROb2RlIiwibWF0Y2hTdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJtYXRjaCIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlIiwiZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRTdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUlxQkE7OztxQkFGd0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTlDLElBQUEsQUFBTUEscURBQU47YUFBTUEscUNBQ1BDLGdCQUFnQixFQUFFQyxhQUFhO2dDQUR4QkY7UUFFakIsSUFBSSxDQUFDQyxnQkFBZ0IsR0FBR0E7UUFDeEIsSUFBSSxDQUFDQyxhQUFhLEdBQUdBOztrQkFISkY7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCO2dCQUNwQixPQUFPLElBQUksQ0FBQ0YsZ0JBQWdCO1lBQzlCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLG1CQUFtQjtnQkFDakIsT0FBTyxJQUFJLENBQUNGLGFBQWE7WUFDM0I7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsbUJBQW1CSCxhQUFhLEVBQUU7Z0JBQ2hDLElBQUlJO2dCQUVKQSx1QkFBdUIsSUFBSSxDQUFDSixhQUFhLENBQUNLLEtBQUssQ0FBQ0w7Z0JBRWhELElBQUksQ0FBQ0ksc0JBQXNCO29CQUN6QixJQUFNRSw4QkFBOEJDLElBQUFBLG1EQUE0QyxFQUFDUDtvQkFFakYsSUFBSU0sZ0NBQWdDLElBQUksRUFBRTt3QkFDeEMsSUFBTU4sa0JBQWdCTSw2QkFBNkIsR0FBRzt3QkFFdERGLHVCQUF1QixJQUFJLENBQUNKLGFBQWEsQ0FBQ0ssS0FBSyxDQUFDTDtvQkFDbEQsQ0FBQztnQkFDSCxDQUFDO2dCQUVELE9BQU9JO1lBQ1Q7Ozs7WUFFT0ksS0FBQUE7bUJBQVAsU0FBT0EscUNBQXFDVCxnQkFBZ0IsRUFBRUMsYUFBYSxFQUFFO2dCQUMzRSxJQUFJUyx1Q0FBdUMsSUFqQzFCWCxxQ0FpQ21FQyxrQkFBa0JDO2dCQUV0RyxJQUFNTSw4QkFBOEJDLElBQUFBLG1EQUE0QyxFQUFDUDtnQkFFakYsSUFBSU0sZ0NBQWdDLElBQUksRUFBRTtvQkFDeEMsSUFBTU4sa0JBQWdCTSw2QkFBNkIsR0FBRztvQkFFdERHLHVDQUF1QyxJQXhDeEJYLHFDQXdDaUVDLGtCQUFrQkM7Z0JBQ3BHLENBQUM7Z0JBRUQsT0FBT1M7WUFDVDs7O1dBNUNtQlgifQ==
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "default", {
8
8
  return TermForVariableSubstitution;
9
9
  }
10
10
  });
11
- var _matcher = /*#__PURE__*/ _interop_require_default(require("../matcher"));
12
11
  function _class_call_check(instance, Constructor) {
13
12
  if (!(instance instanceof Constructor)) {
14
13
  throw new TypeError("Cannot call a class as a function");
@@ -28,11 +27,6 @@ function _create_class(Constructor, protoProps, staticProps) {
28
27
  if (staticProps) _defineProperties(Constructor, staticProps);
29
28
  return Constructor;
30
29
  }
31
- function _interop_require_default(obj) {
32
- return obj && obj.__esModule ? obj : {
33
- default: obj
34
- };
35
- }
36
30
  var TermForVariableSubstitution = /*#__PURE__*/ function() {
37
31
  function TermForVariableSubstitution(variableName, termNode) {
38
32
  _class_call_check(this, TermForVariableSubstitution);
@@ -56,8 +50,7 @@ var TermForVariableSubstitution = /*#__PURE__*/ function() {
56
50
  key: "matchTermNode",
57
51
  value: function matchTermNode(termNode) {
58
52
  var termNodeMatches;
59
- var nodeA = this.termNode, nodeB = termNode, nodeMatches = _matcher.default.matchNode(nodeA, nodeB);
60
- termNodeMatches = nodeMatches; ///
53
+ termNodeMatches = this.termNode.match(termNode);
61
54
  return termNodeMatches;
62
55
  }
63
56
  }
@@ -73,4 +66,4 @@ var TermForVariableSubstitution = /*#__PURE__*/ function() {
73
66
  return TermForVariableSubstitution;
74
67
  }();
75
68
 
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vdGVybUZvclZhcmlhYmxlLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWF0Y2hlciBmcm9tIFwiLi4vbWF0Y2hlclwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3Rvcih2YXJpYWJsZU5hbWUsIHRlcm1Ob2RlKSB7XG4gICAgdGhpcy52YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy50ZXJtTm9kZSA9IHRlcm1Ob2RlO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlTmFtZTtcbiAgfVxuXG4gIGdldFRlcm1Ob2RlKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm1Ob2RlO1xuICB9XG5cbiAgbWF0Y2hUZXJtTm9kZSh0ZXJtTm9kZSkge1xuICAgIGxldCB0ZXJtTm9kZU1hdGNoZXM7XG5cbiAgICBjb25zdCBub2RlQSA9IHRoaXMudGVybU5vZGUsICAvLy9cbiAgICAgICAgICBub2RlQiA9IHRlcm1Ob2RlLFxuICAgICAgICAgIG5vZGVNYXRjaGVzID0gbWF0Y2hlci5tYXRjaE5vZGUobm9kZUEsIG5vZGVCKTtcblxuICAgIHRlcm1Ob2RlTWF0Y2hlcyA9IG5vZGVNYXRjaGVzOyAgLy8vXG5cbiAgICByZXR1cm4gdGVybU5vZGVNYXRjaGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21WYXJpYWJsZU5hbWVBbmRUZXJtTm9kZSh2YXJpYWJsZU5hbWUsIHRlcm1Ob2RlKSB7XG4gICAgY29uc3QgdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uID0gbmV3IFRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbih2YXJpYWJsZU5hbWUsIHRlcm1Ob2RlKTtcblxuICAgIHJldHVybiB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb247XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwidmFyaWFibGVOYW1lIiwidGVybU5vZGUiLCJnZXRWYXJpYWJsZU5hbWUiLCJnZXRUZXJtTm9kZSIsIm1hdGNoVGVybU5vZGUiLCJ0ZXJtTm9kZU1hdGNoZXMiLCJub2RlQSIsIm5vZGVCIiwibm9kZU1hdGNoZXMiLCJtYXRjaGVyIiwibWF0Y2hOb2RlIiwiZnJvbVZhcmlhYmxlTmFtZUFuZFRlcm1Ob2RlIiwidGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUlxQkE7Ozs4REFGRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVMLElBQUEsQUFBTUEsNENBQU47YUFBTUEsNEJBQ1BDLFlBQVksRUFBRUMsUUFBUTtnQ0FEZkY7UUFFakIsSUFBSSxDQUFDQyxZQUFZLEdBQUdBO1FBQ3BCLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTs7a0JBSENGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQjtnQkFDaEIsT0FBTyxJQUFJLENBQUNGLFlBQVk7WUFDMUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBYztnQkFDWixPQUFPLElBQUksQ0FBQ0YsUUFBUTtZQUN0Qjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxjQUFjSCxRQUFRLEVBQUU7Z0JBQ3RCLElBQUlJO2dCQUVKLElBQU1DLFFBQVEsSUFBSSxDQUFDTCxRQUFRLEVBQ3JCTSxRQUFRTixVQUNSTyxjQUFjQyxnQkFBTyxDQUFDQyxTQUFTLENBQUNKLE9BQU9DO2dCQUU3Q0Ysa0JBQWtCRyxhQUFjLEdBQUc7Z0JBRW5DLE9BQU9IO1lBQ1Q7Ozs7WUFFT00sS0FBQUE7bUJBQVAsU0FBT0EsNEJBQTRCWCxZQUFZLEVBQUVDLFFBQVEsRUFBRTtnQkFDekQsSUFBTVcsOEJBQThCLElBM0JuQmIsNEJBMkJtREMsY0FBY0M7Z0JBRWxGLE9BQU9XO1lBQ1Q7OztXQTlCbUJiIn0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vdGVybUZvclZhcmlhYmxlLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3Rvcih2YXJpYWJsZU5hbWUsIHRlcm1Ob2RlKSB7XG4gICAgdGhpcy52YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy50ZXJtTm9kZSA9IHRlcm1Ob2RlO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlTmFtZTtcbiAgfVxuXG4gIGdldFRlcm1Ob2RlKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm1Ob2RlO1xuICB9XG5cbiAgbWF0Y2hUZXJtTm9kZSh0ZXJtTm9kZSkge1xuICAgIGxldCB0ZXJtTm9kZU1hdGNoZXM7XG5cbiAgICB0ZXJtTm9kZU1hdGNoZXMgPSB0aGlzLnRlcm1Ob2RlLm1hdGNoKHRlcm1Ob2RlKTtcblxuICAgIHJldHVybiB0ZXJtTm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlTmFtZUFuZFRlcm1Ob2RlKHZhcmlhYmxlTmFtZSwgdGVybU5vZGUpIHtcbiAgICBjb25zdCB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24gPSBuZXcgVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uKHZhcmlhYmxlTmFtZSwgdGVybU5vZGUpO1xuXG4gICAgcmV0dXJuIHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbjtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24iLCJ2YXJpYWJsZU5hbWUiLCJ0ZXJtTm9kZSIsImdldFZhcmlhYmxlTmFtZSIsImdldFRlcm1Ob2RlIiwibWF0Y2hUZXJtTm9kZSIsInRlcm1Ob2RlTWF0Y2hlcyIsIm1hdGNoIiwiZnJvbVZhcmlhYmxlTmFtZUFuZFRlcm1Ob2RlIiwidGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDRDQUFOO2FBQU1BLDRCQUNQQyxZQUFZLEVBQUVDLFFBQVE7Z0NBRGZGO1FBRWpCLElBQUksQ0FBQ0MsWUFBWSxHQUFHQTtRQUNwQixJQUFJLENBQUNDLFFBQVEsR0FBR0E7O2tCQUhDRjs7WUFNbkJHLEtBQUFBO21CQUFBQSxTQUFBQSxrQkFBa0I7Z0JBQ2hCLE9BQU8sSUFBSSxDQUFDRixZQUFZO1lBQzFCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWM7Z0JBQ1osT0FBTyxJQUFJLENBQUNGLFFBQVE7WUFDdEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBY0gsUUFBUSxFQUFFO2dCQUN0QixJQUFJSTtnQkFFSkEsa0JBQWtCLElBQUksQ0FBQ0osUUFBUSxDQUFDSyxLQUFLLENBQUNMO2dCQUV0QyxPQUFPSTtZQUNUOzs7O1lBRU9FLEtBQUFBO21CQUFQLFNBQU9BLDRCQUE0QlAsWUFBWSxFQUFFQyxRQUFRLEVBQUU7Z0JBQ3pELElBQU1PLDhCQUE4QixJQXZCbkJULDRCQXVCbURDLGNBQWNDO2dCQUVsRixPQUFPTztZQUNUOzs7V0ExQm1CVCJ9
@@ -16,7 +16,6 @@ _export(exports, {
16
16
  return bracketedMetastatementChildNodeFromMetastatementNode;
17
17
  }
18
18
  });
19
- var _matcher = /*#__PURE__*/ _interop_require_default(require("../matcher"));
20
19
  var _bracketed = /*#__PURE__*/ _interop_require_default(require("../node/metastatement/bracketed"));
21
20
  var _query = require("../utilities/query");
22
21
  var _constants = require("../constants");
@@ -29,32 +28,32 @@ var bracketedMetastatementChildNodeQuery = (0, _query.nodeQuery)("/metastatement
29
28
  function matchMetastatementModuloBrackets(metastatementNodeA, metastatementNodeB) {
30
29
  var metastatementMatchesModuloBrackets = false;
31
30
  if (!metastatementMatchesModuloBrackets) {
32
- var nodeA = metastatementNodeA, nodeB = metastatementNodeB, nodeMatches = _matcher.default.matchNode(nodeA, nodeB);
33
- metastatementMatchesModuloBrackets = nodeMatches; ///
31
+ var metastatementNodeMatches = metastatementNodeA.match(metastatementNodeB);
32
+ metastatementMatchesModuloBrackets = metastatementNodeMatches; ///
34
33
  }
35
34
  if (!metastatementMatchesModuloBrackets) {
36
35
  var bracketedMetastatementChildNodeA = bracketedMetastatementChildNodeFromMetastatementNode(metastatementNodeA);
37
36
  if (bracketedMetastatementChildNodeA !== null) {
38
- var nodeA1 = bracketedMetastatementChildNodeA, nodeB1 = metastatementNodeB, nodeMatches1 = _matcher.default.matchNode(nodeA1, nodeB1);
39
- metastatementMatchesModuloBrackets = nodeMatches1; ///
37
+ var bracketedMetastatementChildNodeAMatchesMetastatementNodeB = bracketedMetastatementChildNodeA.match(metastatementNodeB);
38
+ metastatementMatchesModuloBrackets = bracketedMetastatementChildNodeAMatchesMetastatementNodeB; ///
40
39
  }
41
40
  }
42
41
  if (!metastatementMatchesModuloBrackets) {
43
42
  var bracketedMetastatementChildNodeB = bracketedMetastatementChildNodeFromMetastatementNode(metastatementNodeB);
44
43
  if (bracketedMetastatementChildNodeB !== null) {
45
- var nodeA2 = metastatementNodeA, nodeB2 = bracketedMetastatementChildNodeB, nodeMatches2 = _matcher.default.matchNode(nodeA2, nodeB2);
46
- metastatementMatchesModuloBrackets = nodeMatches2; ///
44
+ var metastatementNodeAMatchesBracketedMetastatementChildNodeB = metastatementNodeA.match(bracketedMetastatementChildNodeB);
45
+ metastatementMatchesModuloBrackets = metastatementNodeAMatchesBracketedMetastatementChildNodeB; ///
47
46
  }
48
47
  }
49
48
  return metastatementMatchesModuloBrackets;
50
49
  }
51
50
  function bracketedMetastatementChildNodeFromMetastatementNode(metastatementNode) {
52
51
  var bracketedMetastatementChildNode = null;
53
- var nodeA = metastatementNode, nodeB = _bracketed.default, depth = _constants.BRACKETED_METASTATEMENT_DEPTH, nonTerminalNodeMatches = _matcher.default.matchNode(nodeA, nodeB, depth);
54
- if (nonTerminalNodeMatches) {
52
+ var depth = _constants.BRACKETED_METASTATEMENT_DEPTH, metastatementNodeMatchesBracketedMetastatementNode = metastatementNode.match(_bracketed.default, depth);
53
+ if (metastatementNodeMatchesBracketedMetastatementNode) {
55
54
  bracketedMetastatementChildNode = bracketedMetastatementChildNodeQuery(metastatementNode);
56
55
  }
57
56
  return bracketedMetastatementChildNode;
58
57
  }
59
58
 
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbWV0YXByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWF0Y2hlciBmcm9tIFwiLi4vbWF0Y2hlclwiO1xuaW1wb3J0IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnROb2RlIGZyb20gXCIuLi9ub2RlL21ldGFzdGF0ZW1lbnQvYnJhY2tldGVkXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IEJSQUNLRVRFRF9NRVRBU1RBVEVNRU5UX0RFUFRIIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuXG5jb25zdCBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlUXVlcnkgPSBub2RlUXVlcnkoJy9tZXRhc3RhdGVtZW50L21ldGFzdGF0ZW1lbnQhJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXRjaE1ldGFzdGF0ZW1lbnRNb2R1bG9CcmFja2V0cyhtZXRhc3RhdGVtZW50Tm9kZUEsIG1ldGFzdGF0ZW1lbnROb2RlQikge1xuICBsZXQgbWV0YXN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyA9IGZhbHNlO1xuXG4gIGlmICghbWV0YXN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cykge1xuICAgIGNvbnN0IG5vZGVBID0gbWV0YXN0YXRlbWVudE5vZGVBLCAgLy8vXG4gICAgICAgICAgbm9kZUIgPSBtZXRhc3RhdGVtZW50Tm9kZUIsICAvLy9cbiAgICAgICAgICBub2RlTWF0Y2hlcyA9IG1hdGNoZXIubWF0Y2hOb2RlKG5vZGVBLCBub2RlQik7XG5cbiAgICBtZXRhc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzID0gbm9kZU1hdGNoZXM7ICAvLy9cbiAgfVxuXG4gIGlmICghbWV0YXN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cykge1xuICAgIGNvbnN0IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVBID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZUEpO1xuXG4gICAgaWYgKGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVBICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBub2RlQSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVBLCAgLy8vXG4gICAgICAgICAgICBub2RlQiA9IG1ldGFzdGF0ZW1lbnROb2RlQiwgLy8vXG4gICAgICAgICAgICBub2RlTWF0Y2hlcyA9IG1hdGNoZXIubWF0Y2hOb2RlKG5vZGVBLCBub2RlQik7XG5cbiAgICAgIG1ldGFzdGF0ZW1lbnRNYXRjaGVzTW9kdWxvQnJhY2tldHMgPSBub2RlTWF0Y2hlczsgLy8vXG4gICAgfVxuICB9XG5cbiAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzKSB7XG4gICAgY29uc3QgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUIgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlQik7XG5cbiAgICBpZiAoYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUIgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vZGVBID0gbWV0YXN0YXRlbWVudE5vZGVBLCAvLy9cbiAgICAgICAgICAgIG5vZGVCID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUIsICAvLy9cbiAgICAgICAgICAgIG5vZGVNYXRjaGVzID0gbWF0Y2hlci5tYXRjaE5vZGUobm9kZUEsIG5vZGVCKTtcblxuICAgICAgbWV0YXN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyA9IG5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YXN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpIHtcbiAgbGV0IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgPSBudWxsO1xuXG4gIGNvbnN0IG5vZGVBID0gbWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgbm9kZUIgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICBkZXB0aCA9IEJSQUNLRVRFRF9NRVRBU1RBVEVNRU5UX0RFUFRILFxuICAgICAgICBub25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hlci5tYXRjaE5vZGUobm9kZUEsIG5vZGVCLCBkZXB0aCk7XG5cbiAgaWYgKG5vblRlcm1pbmFsTm9kZU1hdGNoZXMpIHtcbiAgICBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlO1xufVxuIl0sIm5hbWVzIjpbIm1hdGNoTWV0YXN0YXRlbWVudE1vZHVsb0JyYWNrZXRzIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21NZXRhc3RhdGVtZW50Tm9kZSIsImJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFzdGF0ZW1lbnROb2RlQSIsIm1ldGFzdGF0ZW1lbnROb2RlQiIsIm1ldGFzdGF0ZW1lbnRNYXRjaGVzTW9kdWxvQnJhY2tldHMiLCJub2RlQSIsIm5vZGVCIiwibm9kZU1hdGNoZXMiLCJtYXRjaGVyIiwibWF0Y2hOb2RlIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUEiLCJicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlQiIsIm1ldGFzdGF0ZW1lbnROb2RlIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSIsImJyYWNrZXRlZE1ldGFzdGF0ZW1lbnROb2RlIiwiZGVwdGgiLCJCUkFDS0VURURfTUVUQVNUQVRFTUVOVF9ERVBUSCIsIm5vblRlcm1pbmFsTm9kZU1hdGNoZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQVVnQkEsZ0NBQWdDO2VBQWhDQTs7SUFzQ0FDLG9EQUFvRDtlQUFwREE7Ozs4REE5Q0k7Z0VBQ21CO3FCQUViO3lCQUNvQjs7Ozs7O0FBRTlDLElBQU1DLHVDQUF1Q0MsSUFBQUEsZ0JBQVMsRUFBQztBQUVoRCxTQUFTSCxpQ0FBaUNJLGtCQUFrQixFQUFFQyxrQkFBa0IsRUFBRTtJQUN2RixJQUFJQyxxQ0FBcUMsS0FBSztJQUU5QyxJQUFJLENBQUNBLG9DQUFvQztRQUN2QyxJQUFNQyxRQUFRSCxvQkFDUkksUUFBUUgsb0JBQ1JJLGNBQWNDLGdCQUFPLENBQUNDLFNBQVMsQ0FBQ0osT0FBT0M7UUFFN0NGLHFDQUFxQ0csYUFBYyxHQUFHO0lBQ3hELENBQUM7SUFFRCxJQUFJLENBQUNILG9DQUFvQztRQUN2QyxJQUFNTSxtQ0FBbUNYLHFEQUFxREc7UUFFOUYsSUFBSVEscUNBQXFDLElBQUksRUFBRTtZQUM3QyxJQUFNTCxTQUFRSyxrQ0FDUkosU0FBUUgsb0JBQ1JJLGVBQWNDLGdCQUFPLENBQUNDLFNBQVMsQ0FBQ0osUUFBT0M7WUFFN0NGLHFDQUFxQ0csY0FBYSxHQUFHO1FBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxDQUFDSCxvQ0FBb0M7UUFDdkMsSUFBTU8sbUNBQW1DWixxREFBcURJO1FBRTlGLElBQUlRLHFDQUFxQyxJQUFJLEVBQUU7WUFDN0MsSUFBTU4sU0FBUUgsb0JBQ1JJLFNBQVFLLGtDQUNSSixlQUFjQyxnQkFBTyxDQUFDQyxTQUFTLENBQUNKLFFBQU9DO1lBRTdDRixxQ0FBcUNHLGNBQWEsR0FBRztRQUN2RCxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU9IO0FBQ1Q7QUFFTyxTQUFTTCxxREFBcURhLGlCQUFpQixFQUFFO0lBQ3RGLElBQUlDLGtDQUFrQyxJQUFJO0lBRTFDLElBQU1SLFFBQVFPLG1CQUNSTixRQUFRUSxrQkFBMEIsRUFDbENDLFFBQVFDLHdDQUE2QixFQUNyQ0MseUJBQXlCVCxnQkFBTyxDQUFDQyxTQUFTLENBQUNKLE9BQU9DLE9BQU9TO0lBRS9ELElBQUlFLHdCQUF3QjtRQUMxQkosa0NBQWtDYixxQ0FBcUNZO0lBQ3pFLENBQUM7SUFFRCxPQUFPQztBQUNUIn0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbWV0YXByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgYnJhY2tldGVkTWV0YXN0YXRlbWVudE5vZGUgZnJvbSBcIi4uL25vZGUvbWV0YXN0YXRlbWVudC9icmFja2V0ZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgQlJBQ0tFVEVEX01FVEFTVEFURU1FTlRfREVQVEggfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmNvbnN0IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVRdWVyeSA9IG5vZGVRdWVyeSgnL21ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCEnKTtcblxuZXhwb3J0IGZ1bmN0aW9uIG1hdGNoTWV0YXN0YXRlbWVudE1vZHVsb0JyYWNrZXRzKG1ldGFzdGF0ZW1lbnROb2RlQSwgbWV0YXN0YXRlbWVudE5vZGVCKSB7XG4gIGxldCBtZXRhc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzID0gZmFsc2U7XG5cbiAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzID0gbWV0YXN0YXRlbWVudE5vZGVBLm1hdGNoKG1ldGFzdGF0ZW1lbnROb2RlQik7XG5cbiAgICBtZXRhc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzID0gbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzOyAgLy8vXG4gIH1cblxuICBpZiAoIW1ldGFzdGF0ZW1lbnRNYXRjaGVzTW9kdWxvQnJhY2tldHMpIHtcbiAgICBjb25zdCBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlQSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGVBKTtcblxuICAgIGlmIChicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlQSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUFNYXRjaGVzTWV0YXN0YXRlbWVudE5vZGVCID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUEubWF0Y2gobWV0YXN0YXRlbWVudE5vZGVCKTtcblxuICAgICAgbWV0YXN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVBTWF0Y2hlc01ldGFzdGF0ZW1lbnROb2RlQjsgLy8vXG4gICAgfVxuICB9XG5cbiAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzKSB7XG4gICAgY29uc3QgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUIgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlQik7XG5cbiAgICBpZiAoYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUIgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlQU1hdGNoZXNCcmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlQiA9IG1ldGFzdGF0ZW1lbnROb2RlQS5tYXRjaChicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlQik7XG5cbiAgICAgIG1ldGFzdGF0ZW1lbnRNYXRjaGVzTW9kdWxvQnJhY2tldHMgPSBtZXRhc3RhdGVtZW50Tm9kZUFNYXRjaGVzQnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUI7IC8vL1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSkge1xuICBsZXQgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSA9IG51bGw7XG5cbiAgY29uc3QgZGVwdGggPSBCUkFDS0VURURfTUVUQVNUQVRFTUVOVF9ERVBUSCxcbiAgICAgICAgbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzQnJhY2tldGVkTWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZS5tYXRjaChicmFja2V0ZWRNZXRhc3RhdGVtZW50Tm9kZSwgZGVwdGgpO1xuXG4gIGlmIChtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXNCcmFja2V0ZWRNZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlUXVlcnkobWV0YXN0YXRlbWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGU7XG59XG4iXSwibmFtZXMiOlsibWF0Y2hNZXRhc3RhdGVtZW50TW9kdWxvQnJhY2tldHMiLCJicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXN0YXRlbWVudE5vZGVBIiwibWV0YXN0YXRlbWVudE5vZGVCIiwibWV0YXN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyIsIm1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUEiLCJicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlQU1hdGNoZXNNZXRhc3RhdGVtZW50Tm9kZUIiLCJicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlQiIsIm1ldGFzdGF0ZW1lbnROb2RlQU1hdGNoZXNCcmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlQiIsIm1ldGFzdGF0ZW1lbnROb2RlIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSIsImRlcHRoIiwiQlJBQ0tFVEVEX01FVEFTVEFURU1FTlRfREVQVEgiLCJtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXNCcmFja2V0ZWRNZXRhc3RhdGVtZW50Tm9kZSIsImJyYWNrZXRlZE1ldGFzdGF0ZW1lbnROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFTZ0JBLGdDQUFnQztlQUFoQ0E7O0lBZ0NBQyxvREFBb0Q7ZUFBcERBOzs7Z0VBdkN1QjtxQkFFYjt5QkFDb0I7Ozs7OztBQUU5QyxJQUFNQyx1Q0FBdUNDLElBQUFBLGdCQUFTLEVBQUM7QUFFaEQsU0FBU0gsaUNBQWlDSSxrQkFBa0IsRUFBRUMsa0JBQWtCLEVBQUU7SUFDdkYsSUFBSUMscUNBQXFDLEtBQUs7SUFFOUMsSUFBSSxDQUFDQSxvQ0FBb0M7UUFDdkMsSUFBTUMsMkJBQTJCSCxtQkFBbUJJLEtBQUssQ0FBQ0g7UUFFMURDLHFDQUFxQ0MsMEJBQTJCLEdBQUc7SUFDckUsQ0FBQztJQUVELElBQUksQ0FBQ0Qsb0NBQW9DO1FBQ3ZDLElBQU1HLG1DQUFtQ1IscURBQXFERztRQUU5RixJQUFJSyxxQ0FBcUMsSUFBSSxFQUFFO1lBQzdDLElBQU1DLDREQUE0REQsaUNBQWlDRCxLQUFLLENBQUNIO1lBRXpHQyxxQ0FBcUNJLDJEQUEyRCxHQUFHO1FBQ3JHLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxDQUFDSixvQ0FBb0M7UUFDdkMsSUFBTUssbUNBQW1DVixxREFBcURJO1FBRTlGLElBQUlNLHFDQUFxQyxJQUFJLEVBQUU7WUFDN0MsSUFBTUMsNERBQTREUixtQkFBbUJJLEtBQUssQ0FBQ0c7WUFFM0ZMLHFDQUFxQ00sMkRBQTJELEdBQUc7UUFDckcsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPTjtBQUNUO0FBRU8sU0FBU0wscURBQXFEWSxpQkFBaUIsRUFBRTtJQUN0RixJQUFJQyxrQ0FBa0MsSUFBSTtJQUUxQyxJQUFNQyxRQUFRQyx3Q0FBNkIsRUFDckNDLHFEQUFxREosa0JBQWtCTCxLQUFLLENBQUNVLGtCQUEwQixFQUFFSDtJQUUvRyxJQUFJRSxvREFBb0Q7UUFDdERILGtDQUFrQ1oscUNBQXFDVztJQUN6RSxDQUFDO0lBRUQsT0FBT0M7QUFDVCJ9
@@ -16,7 +16,6 @@ _export(exports, {
16
16
  return bracketedStatementChildNodeFromStatementNode;
17
17
  }
18
18
  });
19
- var _matcher = /*#__PURE__*/ _interop_require_default(require("../matcher"));
20
19
  var _bracketed = /*#__PURE__*/ _interop_require_default(require("../node/statement/bracketed"));
21
20
  var _query = require("../utilities/query");
22
21
  var _constants = require("../constants");
@@ -29,32 +28,32 @@ var bracketedStatementChildNodeQuery = (0, _query.nodeQuery)("/statement/metaArg
29
28
  function matchStatementModuloBrackets(statementNodeA, statementNodeB) {
30
29
  var statementMatchesModuloBrackets = false;
31
30
  if (!statementMatchesModuloBrackets) {
32
- var nodeA = statementNodeA, nodeB = statementNodeB, nonTerminalNodeMatches = _matcher.default.matchNode(nodeA, nodeB);
33
- statementMatchesModuloBrackets = nonTerminalNodeMatches; ///
31
+ var statementNodeMatches = statementNodeA.match(statementNodeB);
32
+ statementMatchesModuloBrackets = statementNodeMatches; ///
34
33
  }
35
34
  if (!statementMatchesModuloBrackets) {
36
35
  var bracketedStatementChildNodeA = bracketedStatementChildNodeFromStatementNode(statementNodeA);
37
36
  if (bracketedStatementChildNodeA !== null) {
38
- var nodeA1 = bracketedStatementChildNodeA, nodeB1 = statementNodeB, nodeMatches = _matcher.default.matchNode(nodeA1, nodeB1);
39
- statementMatchesModuloBrackets = nodeMatches; ///
37
+ var bracketedStatementChildNodeAMatchStatementNodeB = bracketedStatementChildNodeA.match(statementNodeB);
38
+ statementMatchesModuloBrackets = bracketedStatementChildNodeAMatchStatementNodeB; ///
40
39
  }
41
40
  }
42
41
  if (!statementMatchesModuloBrackets) {
43
42
  var bracketedStatementChildNodeB = bracketedStatementChildNodeFromStatementNode(statementNodeB);
44
43
  if (bracketedStatementChildNodeB !== null) {
45
- var nodeA2 = statementNodeA, nodeB2 = bracketedStatementChildNodeB, nodeMatches1 = _matcher.default.matchNode(nodeA2, nodeB2);
46
- statementMatchesModuloBrackets = nodeMatches1; ///
44
+ var statementNodeAMatchBracketedStatementChildNodeB = statementNodeA.match(bracketedStatementChildNodeB);
45
+ statementMatchesModuloBrackets = statementNodeAMatchBracketedStatementChildNodeB; ///
47
46
  }
48
47
  }
49
48
  return statementMatchesModuloBrackets;
50
49
  }
51
50
  function bracketedStatementChildNodeFromStatementNode(statementNode) {
52
51
  var bracketedStatementChildNode = null;
53
- var nodeA = statementNode, nodeB = _bracketed.default, depth = _constants.BRACKETED_STATEMENT_DEPTH, nonTerminalNodeMatches = _matcher.default.matchNode(nodeA, nodeB, depth);
54
- if (nonTerminalNodeMatches) {
52
+ var depth = _constants.BRACKETED_STATEMENT_DEPTH, statementNodeMatchBracketedStatementNode = statementNode.match(_bracketed.default, depth);
53
+ if (statementNodeMatchBracketedStatementNode) {
55
54
  bracketedStatementChildNode = bracketedStatementChildNodeQuery(statementNode);
56
55
  }
57
56
  return bracketedStatementChildNode;
58
57
  }
59
58
 
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcHJvb2YuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBtYXRjaGVyIGZyb20gXCIuLi9tYXRjaGVyXCI7XG5pbXBvcnQgYnJhY2tldGVkU3RhdGVtZW50Tm9kZSBmcm9tIFwiLi4vbm9kZS9zdGF0ZW1lbnQvYnJhY2tldGVkXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IEJSQUNLRVRFRF9TVEFURU1FTlRfREVQVEggfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmNvbnN0IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KCcvc3RhdGVtZW50L21ldGFBcmd1bWVudCEvc3RhdGVtZW50IScpO1xuXG5leHBvcnQgZnVuY3Rpb24gbWF0Y2hTdGF0ZW1lbnRNb2R1bG9CcmFja2V0cyhzdGF0ZW1lbnROb2RlQSwgc3RhdGVtZW50Tm9kZUIpIHtcbiAgbGV0IHN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyA9IGZhbHNlO1xuXG4gIGlmICghc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzKSB7XG4gICAgY29uc3Qgbm9kZUEgPSBzdGF0ZW1lbnROb2RlQSwgIC8vL1xuICAgICAgICAgIG5vZGVCID0gc3RhdGVtZW50Tm9kZUIsICAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hlci5tYXRjaE5vZGUobm9kZUEsIG5vZGVCKTtcblxuICAgIHN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyA9IG5vblRlcm1pbmFsTm9kZU1hdGNoZXM7ICAvLy9cbiAgfVxuXG4gIGlmICghc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzKSB7XG4gICAgY29uc3QgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlQSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGVBKTtcblxuICAgIGlmIChicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVBICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBub2RlQSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUEsICAvLy9cbiAgICAgICAgICAgIG5vZGVCID0gc3RhdGVtZW50Tm9kZUIsIC8vL1xuICAgICAgICAgICAgbm9kZU1hdGNoZXMgPSBtYXRjaGVyLm1hdGNoTm9kZShub2RlQSwgbm9kZUIpO1xuXG4gICAgICBzdGF0ZW1lbnRNYXRjaGVzTW9kdWxvQnJhY2tldHMgPSBub2RlTWF0Y2hlczsgLy8vXG4gICAgfVxuICB9XG5cbiAgaWYgKCFzdGF0ZW1lbnRNYXRjaGVzTW9kdWxvQnJhY2tldHMpIHtcbiAgICBjb25zdCBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVCID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlRnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZUIpO1xuXG4gICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUIgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vZGVBID0gc3RhdGVtZW50Tm9kZUEsIC8vL1xuICAgICAgICAgICAgbm9kZUIgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVCLCAgLy8vXG4gICAgICAgICAgICBub2RlTWF0Y2hlcyA9IG1hdGNoZXIubWF0Y2hOb2RlKG5vZGVBLCBub2RlQik7XG5cbiAgICAgIHN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyA9IG5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlRnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSkge1xuICBsZXQgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlID0gbnVsbDtcblxuICBjb25zdCBub2RlQSA9IHN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgbm9kZUIgPSBicmFja2V0ZWRTdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgIGRlcHRoID0gQlJBQ0tFVEVEX1NUQVRFTUVOVF9ERVBUSCxcbiAgICAgICAgbm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoZXIubWF0Y2hOb2RlKG5vZGVBLCBub2RlQiwgZGVwdGgpO1xuXG4gIGlmIChub25UZXJtaW5hbE5vZGVNYXRjaGVzKSB7XG4gICAgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlUXVlcnkoc3RhdGVtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlO1xufVxuIl0sIm5hbWVzIjpbIm1hdGNoU3RhdGVtZW50TW9kdWxvQnJhY2tldHMiLCJicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZSIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZUEiLCJzdGF0ZW1lbnROb2RlQiIsInN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyIsIm5vZGVBIiwibm9kZUIiLCJub25UZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hlciIsIm1hdGNoTm9kZSIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUEiLCJub2RlTWF0Y2hlcyIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUIiLCJzdGF0ZW1lbnROb2RlIiwiYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlIiwiYnJhY2tldGVkU3RhdGVtZW50Tm9kZSIsImRlcHRoIiwiQlJBQ0tFVEVEX1NUQVRFTUVOVF9ERVBUSCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBVWdCQSw0QkFBNEI7ZUFBNUJBOztJQXNDQUMsNENBQTRDO2VBQTVDQTs7OzhEQTlDSTtnRUFDZTtxQkFFVDt5QkFDZ0I7Ozs7OztBQUUxQyxJQUFNQyxtQ0FBbUNDLElBQUFBLGdCQUFTLEVBQUM7QUFFNUMsU0FBU0gsNkJBQTZCSSxjQUFjLEVBQUVDLGNBQWMsRUFBRTtJQUMzRSxJQUFJQyxpQ0FBaUMsS0FBSztJQUUxQyxJQUFJLENBQUNBLGdDQUFnQztRQUNuQyxJQUFNQyxRQUFRSCxnQkFDUkksUUFBUUgsZ0JBQ1JJLHlCQUF5QkMsZ0JBQU8sQ0FBQ0MsU0FBUyxDQUFDSixPQUFPQztRQUV4REYsaUNBQWlDRyx3QkFBeUIsR0FBRztJQUMvRCxDQUFDO0lBRUQsSUFBSSxDQUFDSCxnQ0FBZ0M7UUFDbkMsSUFBTU0sK0JBQStCWCw2Q0FBNkNHO1FBRWxGLElBQUlRLGlDQUFpQyxJQUFJLEVBQUU7WUFDekMsSUFBTUwsU0FBUUssOEJBQ1JKLFNBQVFILGdCQUNSUSxjQUFjSCxnQkFBTyxDQUFDQyxTQUFTLENBQUNKLFFBQU9DO1lBRTdDRixpQ0FBaUNPLGFBQWEsR0FBRztRQUNuRCxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBQ1AsZ0NBQWdDO1FBQ25DLElBQU1RLCtCQUErQmIsNkNBQTZDSTtRQUVsRixJQUFJUyxpQ0FBaUMsSUFBSSxFQUFFO1lBQ3pDLElBQU1QLFNBQVFILGdCQUNSSSxTQUFRTSw4QkFDUkQsZUFBY0gsZ0JBQU8sQ0FBQ0MsU0FBUyxDQUFDSixRQUFPQztZQUU3Q0YsaUNBQWlDTyxjQUFhLEdBQUc7UUFDbkQsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPUDtBQUNUO0FBRU8sU0FBU0wsNkNBQTZDYyxhQUFhLEVBQUU7SUFDMUUsSUFBSUMsOEJBQThCLElBQUk7SUFFdEMsSUFBTVQsUUFBUVEsZUFDUlAsUUFBUVMsa0JBQXNCLEVBQzlCQyxRQUFRQyxvQ0FBeUIsRUFDakNWLHlCQUF5QkMsZ0JBQU8sQ0FBQ0MsU0FBUyxDQUFDSixPQUFPQyxPQUFPVTtJQUUvRCxJQUFJVCx3QkFBd0I7UUFDMUJPLDhCQUE4QmQsaUNBQWlDYTtJQUNqRSxDQUFDO0lBRUQsT0FBT0M7QUFDVCJ9
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcHJvb2YuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBicmFja2V0ZWRTdGF0ZW1lbnROb2RlIGZyb20gXCIuLi9ub2RlL3N0YXRlbWVudC9icmFja2V0ZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgQlJBQ0tFVEVEX1NUQVRFTUVOVF9ERVBUSCB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcblxuY29uc3QgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlUXVlcnkgPSBub2RlUXVlcnkoJy9zdGF0ZW1lbnQvbWV0YUFyZ3VtZW50IS9zdGF0ZW1lbnQhJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXRjaFN0YXRlbWVudE1vZHVsb0JyYWNrZXRzKHN0YXRlbWVudE5vZGVBLCBzdGF0ZW1lbnROb2RlQikge1xuICBsZXQgc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzID0gZmFsc2U7XG5cbiAgaWYgKCFzdGF0ZW1lbnRNYXRjaGVzTW9kdWxvQnJhY2tldHMpIHtcbiAgICBjb25zdCBzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHN0YXRlbWVudE5vZGVBLm1hdGNoKHN0YXRlbWVudE5vZGVCKTtcblxuICAgIHN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cyA9IHN0YXRlbWVudE5vZGVNYXRjaGVzOyAgLy8vXG4gIH1cblxuICBpZiAoIXN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cykge1xuICAgIGNvbnN0IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUEgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlQSk7XG5cbiAgICBpZiAoYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlQSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlQU1hdGNoU3RhdGVtZW50Tm9kZUIgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVBLm1hdGNoKHN0YXRlbWVudE5vZGVCKTtcblxuICAgICAgc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlQU1hdGNoU3RhdGVtZW50Tm9kZUI7IC8vL1xuICAgIH1cbiAgfVxuXG4gIGlmICghc3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzKSB7XG4gICAgY29uc3QgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlQiA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGVCKTtcblxuICAgIGlmIChicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVCICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnROb2RlQU1hdGNoQnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlQiA9IHN0YXRlbWVudE5vZGVBLm1hdGNoKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUIpO1xuXG4gICAgICBzdGF0ZW1lbnRNYXRjaGVzTW9kdWxvQnJhY2tldHMgPSBzdGF0ZW1lbnROb2RlQU1hdGNoQnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlQjsgLy8vXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN0YXRlbWVudE1hdGNoZXNNb2R1bG9CcmFja2V0cztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUpIHtcbiAgbGV0IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSA9IG51bGw7XG5cbiAgY29uc3QgZGVwdGggPSBCUkFDS0VURURfU1RBVEVNRU5UX0RFUFRILFxuICAgICAgICBzdGF0ZW1lbnROb2RlTWF0Y2hCcmFja2V0ZWRTdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZS5tYXRjaChicmFja2V0ZWRTdGF0ZW1lbnROb2RlLCBkZXB0aCk7XG5cbiAgaWYgKHN0YXRlbWVudE5vZGVNYXRjaEJyYWNrZXRlZFN0YXRlbWVudE5vZGUpIHtcbiAgICBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGU7XG59XG4iXSwibmFtZXMiOlsibWF0Y2hTdGF0ZW1lbnRNb2R1bG9CcmFja2V0cyIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlIiwiYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlQSIsInN0YXRlbWVudE5vZGVCIiwic3RhdGVtZW50TWF0Y2hlc01vZHVsb0JyYWNrZXRzIiwic3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJtYXRjaCIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUEiLCJicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVBTWF0Y2hTdGF0ZW1lbnROb2RlQiIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUIiLCJzdGF0ZW1lbnROb2RlQU1hdGNoQnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlQiIsInN0YXRlbWVudE5vZGUiLCJicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUiLCJkZXB0aCIsIkJSQUNLRVRFRF9TVEFURU1FTlRfREVQVEgiLCJzdGF0ZW1lbnROb2RlTWF0Y2hCcmFja2V0ZWRTdGF0ZW1lbnROb2RlIiwiYnJhY2tldGVkU3RhdGVtZW50Tm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBU2dCQSw0QkFBNEI7ZUFBNUJBOztJQWdDQUMsNENBQTRDO2VBQTVDQTs7O2dFQXZDbUI7cUJBRVQ7eUJBQ2dCOzs7Ozs7QUFFMUMsSUFBTUMsbUNBQW1DQyxJQUFBQSxnQkFBUyxFQUFDO0FBRTVDLFNBQVNILDZCQUE2QkksY0FBYyxFQUFFQyxjQUFjLEVBQUU7SUFDM0UsSUFBSUMsaUNBQWlDLEtBQUs7SUFFMUMsSUFBSSxDQUFDQSxnQ0FBZ0M7UUFDbkMsSUFBTUMsdUJBQXVCSCxlQUFlSSxLQUFLLENBQUNIO1FBRWxEQyxpQ0FBaUNDLHNCQUF1QixHQUFHO0lBQzdELENBQUM7SUFFRCxJQUFJLENBQUNELGdDQUFnQztRQUNuQyxJQUFNRywrQkFBK0JSLDZDQUE2Q0c7UUFFbEYsSUFBSUssaUNBQWlDLElBQUksRUFBRTtZQUN6QyxJQUFNQyxrREFBa0RELDZCQUE2QkQsS0FBSyxDQUFDSDtZQUUzRkMsaUNBQWlDSSxpREFBaUQsR0FBRztRQUN2RixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBQ0osZ0NBQWdDO1FBQ25DLElBQU1LLCtCQUErQlYsNkNBQTZDSTtRQUVsRixJQUFJTSxpQ0FBaUMsSUFBSSxFQUFFO1lBQ3pDLElBQU1DLGtEQUFrRFIsZUFBZUksS0FBSyxDQUFDRztZQUU3RUwsaUNBQWlDTSxpREFBaUQsR0FBRztRQUN2RixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU9OO0FBQ1Q7QUFFTyxTQUFTTCw2Q0FBNkNZLGFBQWEsRUFBRTtJQUMxRSxJQUFJQyw4QkFBOEIsSUFBSTtJQUV0QyxJQUFNQyxRQUFRQyxvQ0FBeUIsRUFDakNDLDJDQUEyQ0osY0FBY0wsS0FBSyxDQUFDVSxrQkFBc0IsRUFBRUg7SUFFN0YsSUFBSUUsMENBQTBDO1FBQzVDSCw4QkFBOEJaLGlDQUFpQ1c7SUFDakUsQ0FBQztJQUVELE9BQU9DO0FBQ1QifQ==
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "default", {
8
8
  return verifyProof;
9
9
  }
10
10
  });
11
- var _matcher = /*#__PURE__*/ _interop_require_default(require("../matcher"));
12
11
  var _proof = /*#__PURE__*/ _interop_require_default(require("../context/proof"));
13
12
  var _derivation = /*#__PURE__*/ _interop_require_default(require("../verify/derivation"));
14
13
  var _query = require("../utilities/query");
@@ -23,10 +22,10 @@ function verifyProof(proofNode, conclusion, proofContext) {
23
22
  proofContext = _proof.default.fromProofContext(proofContext); ///
24
23
  var derivationNode = derivationNodeQuery(proofNode), derivationVerified = (0, _derivation.default)(derivationNode, proofContext);
25
24
  if (derivationVerified) {
26
- var lastProofStep = proofContext.getLastProofStep(), proofStep = lastProofStep, statementNode = proofStep.getStatementNode(), conclusionStatementNode = conclusion.getStatementNode(), nodeA = statementNode, nodeB = conclusionStatementNode, nodeMatches = _matcher.default.matchNode(nodeA, nodeB);
27
- proofVerified = nodeMatches; ///
25
+ var lastProofStep = proofContext.getLastProofStep(), proofStep = lastProofStep, statementNode = proofStep.getStatementNode(), conclusionStatementNode = conclusion.getStatementNode(), statementNodeMatchConclusionStatementNode = statementNode.match(conclusionStatementNode);
26
+ proofVerified = statementNodeMatchConclusionStatementNode; ///
28
27
  }
29
28
  return proofVerified;
30
29
  }
31
30
 
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJvb2YuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBtYXRjaGVyIGZyb20gXCIuLi9tYXRjaGVyXCI7XG5pbXBvcnQgUHJvb2ZDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L3Byb29mXCI7XG5pbXBvcnQgdmVyaWZ5RGVyaXZhdGlvbiBmcm9tIFwiLi4vdmVyaWZ5L2Rlcml2YXRpb25cIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBkZXJpdmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb29mL2Rlcml2YXRpb24hXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlQcm9vZihwcm9vZk5vZGUsIGNvbmNsdXNpb24sIHByb29mQ29udGV4dCkge1xuICBsZXQgcHJvb2ZWZXJpZmllZCA9IGZhbHNlO1xuXG4gIHByb29mQ29udGV4dCA9IFByb29mQ29udGV4dC5mcm9tUHJvb2ZDb250ZXh0KHByb29mQ29udGV4dCk7IC8vL1xuXG4gIGNvbnN0IGRlcml2YXRpb25Ob2RlID0gZGVyaXZhdGlvbk5vZGVRdWVyeShwcm9vZk5vZGUpLFxuICAgICAgICBkZXJpdmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZXJpdmF0aW9uKGRlcml2YXRpb25Ob2RlLCBwcm9vZkNvbnRleHQpO1xuXG4gIGlmIChkZXJpdmF0aW9uVmVyaWZpZWQpIHtcbiAgICBjb25zdCBsYXN0UHJvb2ZTdGVwID0gcHJvb2ZDb250ZXh0LmdldExhc3RQcm9vZlN0ZXAoKSxcbiAgICAgICAgICBwcm9vZlN0ZXAgPSBsYXN0UHJvb2ZTdGVwLCAvLy9cbiAgICAgICAgICBzdGF0ZW1lbnROb2RlID0gcHJvb2ZTdGVwLmdldFN0YXRlbWVudE5vZGUoKSxcbiAgICAgICAgICBjb25jbHVzaW9uU3RhdGVtZW50Tm9kZSA9IGNvbmNsdXNpb24uZ2V0U3RhdGVtZW50Tm9kZSgpLFxuICAgICAgICAgIG5vZGVBID0gc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgIG5vZGVCID0gY29uY2x1c2lvblN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICBub2RlTWF0Y2hlcyA9IG1hdGNoZXIubWF0Y2hOb2RlKG5vZGVBLCBub2RlQik7XG5cbiAgICBwcm9vZlZlcmlmaWVkID0gbm9kZU1hdGNoZXM7ICAvLy9cbiAgfVxuXG4gIHJldHVybiBwcm9vZlZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVByb29mIiwiZGVyaXZhdGlvbk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInByb29mTm9kZSIsImNvbmNsdXNpb24iLCJwcm9vZkNvbnRleHQiLCJwcm9vZlZlcmlmaWVkIiwiUHJvb2ZDb250ZXh0IiwiZnJvbVByb29mQ29udGV4dCIsImRlcml2YXRpb25Ob2RlIiwiZGVyaXZhdGlvblZlcmlmaWVkIiwidmVyaWZ5RGVyaXZhdGlvbiIsImxhc3RQcm9vZlN0ZXAiLCJnZXRMYXN0UHJvb2ZTdGVwIiwicHJvb2ZTdGVwIiwic3RhdGVtZW50Tm9kZSIsImdldFN0YXRlbWVudE5vZGUiLCJjb25jbHVzaW9uU3RhdGVtZW50Tm9kZSIsIm5vZGVBIiwibm9kZUIiLCJub2RlTWF0Y2hlcyIsIm1hdGNoZXIiLCJtYXRjaE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7OERBUko7NERBQ0s7aUVBQ0k7cUJBRUg7Ozs7OztBQUUxQixJQUFNQyxzQkFBc0JDLElBQUFBLGdCQUFTLEVBQUM7QUFFdkIsU0FBU0YsWUFBWUcsU0FBUyxFQUFFQyxVQUFVLEVBQUVDLFlBQVksRUFBRTtJQUN2RSxJQUFJQyxnQkFBZ0IsS0FBSztJQUV6QkQsZUFBZUUsY0FBWSxDQUFDQyxnQkFBZ0IsQ0FBQ0gsZUFBZSxHQUFHO0lBRS9ELElBQU1JLGlCQUFpQlIsb0JBQW9CRSxZQUNyQ08scUJBQXFCQyxJQUFBQSxtQkFBZ0IsRUFBQ0YsZ0JBQWdCSjtJQUU1RCxJQUFJSyxvQkFBb0I7UUFDdEIsSUFBTUUsZ0JBQWdCUCxhQUFhUSxnQkFBZ0IsSUFDN0NDLFlBQVlGLGVBQ1pHLGdCQUFnQkQsVUFBVUUsZ0JBQWdCLElBQzFDQywwQkFBMEJiLFdBQVdZLGdCQUFnQixJQUNyREUsUUFBUUgsZUFDUkksUUFBUUYseUJBQ1JHLGNBQWNDLGdCQUFPLENBQUNDLFNBQVMsQ0FBQ0osT0FBT0M7UUFFN0NiLGdCQUFnQmMsYUFBYyxHQUFHO0lBQ25DLENBQUM7SUFFRCxPQUFPZDtBQUNUIn0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJvb2YuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBQcm9vZkNvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlEZXJpdmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvZGVyaXZhdGlvblwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGRlcml2YXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJvb2YvZGVyaXZhdGlvbiFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVByb29mKHByb29mTm9kZSwgY29uY2x1c2lvbiwgcHJvb2ZDb250ZXh0KSB7XG4gIGxldCBwcm9vZlZlcmlmaWVkID0gZmFsc2U7XG5cbiAgcHJvb2ZDb250ZXh0ID0gUHJvb2ZDb250ZXh0LmZyb21Qcm9vZkNvbnRleHQocHJvb2ZDb250ZXh0KTsgLy8vXG5cbiAgY29uc3QgZGVyaXZhdGlvbk5vZGUgPSBkZXJpdmF0aW9uTm9kZVF1ZXJ5KHByb29mTm9kZSksXG4gICAgICAgIGRlcml2YXRpb25WZXJpZmllZCA9IHZlcmlmeURlcml2YXRpb24oZGVyaXZhdGlvbk5vZGUsIHByb29mQ29udGV4dCk7XG5cbiAgaWYgKGRlcml2YXRpb25WZXJpZmllZCkge1xuICAgIGNvbnN0IGxhc3RQcm9vZlN0ZXAgPSBwcm9vZkNvbnRleHQuZ2V0TGFzdFByb29mU3RlcCgpLFxuICAgICAgICAgIHByb29mU3RlcCA9IGxhc3RQcm9vZlN0ZXAsIC8vL1xuICAgICAgICAgIHN0YXRlbWVudE5vZGUgPSBwcm9vZlN0ZXAuZ2V0U3RhdGVtZW50Tm9kZSgpLFxuICAgICAgICAgIGNvbmNsdXNpb25TdGF0ZW1lbnROb2RlID0gY29uY2x1c2lvbi5nZXRTdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgc3RhdGVtZW50Tm9kZU1hdGNoQ29uY2x1c2lvblN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlLm1hdGNoKGNvbmNsdXNpb25TdGF0ZW1lbnROb2RlKTtcblxuICAgIHByb29mVmVyaWZpZWQgPSBzdGF0ZW1lbnROb2RlTWF0Y2hDb25jbHVzaW9uU3RhdGVtZW50Tm9kZTsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIHByb29mVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UHJvb2YiLCJkZXJpdmF0aW9uTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwicHJvb2ZOb2RlIiwiY29uY2x1c2lvbiIsInByb29mQ29udGV4dCIsInByb29mVmVyaWZpZWQiLCJQcm9vZkNvbnRleHQiLCJmcm9tUHJvb2ZDb250ZXh0IiwiZGVyaXZhdGlvbk5vZGUiLCJkZXJpdmF0aW9uVmVyaWZpZWQiLCJ2ZXJpZnlEZXJpdmF0aW9uIiwibGFzdFByb29mU3RlcCIsImdldExhc3RQcm9vZlN0ZXAiLCJwcm9vZlN0ZXAiLCJzdGF0ZW1lbnROb2RlIiwiZ2V0U3RhdGVtZW50Tm9kZSIsImNvbmNsdXNpb25TdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50Tm9kZU1hdGNoQ29uY2x1c2lvblN0YXRlbWVudE5vZGUiLCJtYXRjaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBU0E7OztlQUF3QkE7Ozs0REFQQztpRUFDSTtxQkFFSDs7Ozs7O0FBRTFCLElBQU1DLHNCQUFzQkMsSUFBQUEsZ0JBQVMsRUFBQztBQUV2QixTQUFTRixZQUFZRyxTQUFTLEVBQUVDLFVBQVUsRUFBRUMsWUFBWSxFQUFFO0lBQ3ZFLElBQUlDLGdCQUFnQixLQUFLO0lBRXpCRCxlQUFlRSxjQUFZLENBQUNDLGdCQUFnQixDQUFDSCxlQUFlLEdBQUc7SUFFL0QsSUFBTUksaUJBQWlCUixvQkFBb0JFLFlBQ3JDTyxxQkFBcUJDLElBQUFBLG1CQUFnQixFQUFDRixnQkFBZ0JKO0lBRTVELElBQUlLLG9CQUFvQjtRQUN0QixJQUFNRSxnQkFBZ0JQLGFBQWFRLGdCQUFnQixJQUM3Q0MsWUFBWUYsZUFDWkcsZ0JBQWdCRCxVQUFVRSxnQkFBZ0IsSUFDMUNDLDBCQUEwQmIsV0FBV1ksZ0JBQWdCLElBQ3JERSw0Q0FBNENILGNBQWNJLEtBQUssQ0FBQ0Y7UUFFdEVYLGdCQUFnQlksMkNBQTRDLEdBQUc7SUFDakUsQ0FBQztJQUVELE9BQU9aO0FBQ1QifQ==
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "default", {
8
8
  return verifyRuleProof;
9
9
  }
10
10
  });
11
- var _matcher = /*#__PURE__*/ _interop_require_default(require("../matcher"));
12
11
  var _metaproof = /*#__PURE__*/ _interop_require_default(require("../context/metaproof"));
13
12
  var _ruleDerivation = /*#__PURE__*/ _interop_require_default(require("../verify/ruleDerivation"));
14
13
  var _query = require("../utilities/query");
@@ -23,10 +22,10 @@ function verifyRuleProof(ruleProofNode, conclusion, metaproofContext) {
23
22
  metaproofContext = _metaproof.default.fromMetaproofContext(metaproofContext); ///
24
23
  var ruleDerivationNode = ruleDerivationNodeQuery(ruleProofNode), ruleDerivationVerified = (0, _ruleDerivation.default)(ruleDerivationNode, metaproofContext);
25
24
  if (ruleDerivationVerified) {
26
- var lastMetaproofStep = metaproofContext.getLastMetaproofStep(), metaproofStep = lastMetaproofStep, metastatementNode = metaproofStep.getMetastatementNode(), conclusionMetastatementNode = conclusion.getMetastatementNode(), nodeA = metastatementNode, nodeB = conclusionMetastatementNode, nodeMatches = _matcher.default.matchNode(nodeA, nodeB);
27
- ruleProofVerified = nodeMatches; ///
25
+ var lastMetaproofStep = metaproofContext.getLastMetaproofStep(), metaproofStep = lastMetaproofStep, metastatementNode = metaproofStep.getMetastatementNode(), conclusionMetastatementNode = conclusion.getMetastatementNode(), metastatementNodeMatchConclusionMetastatementNode = metastatementNode.match(conclusionMetastatementNode);
26
+ ruleProofVerified = metastatementNodeMatchConclusionMetastatementNode; ///
28
27
  }
29
28
  return ruleProofVerified;
30
29
  }
31
30
 
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcnVsZVByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWF0Y2hlciBmcm9tIFwiLi4vbWF0Y2hlclwiO1xuaW1wb3J0IE1ldGFwcm9vZkNvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvbWV0YXByb29mXCI7XG5pbXBvcnQgdmVyaWZ5UnVsZURlcml2YXRpb24gZnJvbSBcIi4uL3ZlcmlmeS9ydWxlRGVyaXZhdGlvblwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHJ1bGVEZXJpdmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3J1bGVQcm9vZi9ydWxlRGVyaXZhdGlvbiFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVJ1bGVQcm9vZihydWxlUHJvb2ZOb2RlLCBjb25jbHVzaW9uLCBtZXRhcHJvb2ZDb250ZXh0KSB7XG4gIGxldCBydWxlUHJvb2ZWZXJpZmllZCA9IGZhbHNlO1xuXG4gIG1ldGFwcm9vZkNvbnRleHQgPSBNZXRhcHJvb2ZDb250ZXh0LmZyb21NZXRhcHJvb2ZDb250ZXh0KG1ldGFwcm9vZkNvbnRleHQpOyAvLy9cblxuICBjb25zdCBydWxlRGVyaXZhdGlvbk5vZGUgPSBydWxlRGVyaXZhdGlvbk5vZGVRdWVyeShydWxlUHJvb2ZOb2RlKSxcbiAgICAgICAgcnVsZURlcml2YXRpb25WZXJpZmllZCA9IHZlcmlmeVJ1bGVEZXJpdmF0aW9uKHJ1bGVEZXJpdmF0aW9uTm9kZSwgbWV0YXByb29mQ29udGV4dCk7XG5cbiAgaWYgKHJ1bGVEZXJpdmF0aW9uVmVyaWZpZWQpIHtcbiAgICBjb25zdCBsYXN0TWV0YXByb29mU3RlcCA9IG1ldGFwcm9vZkNvbnRleHQuZ2V0TGFzdE1ldGFwcm9vZlN0ZXAoKSxcbiAgICAgICAgICBtZXRhcHJvb2ZTdGVwID0gbGFzdE1ldGFwcm9vZlN0ZXAsIC8vL1xuICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXByb29mU3RlcC5nZXRNZXRhc3RhdGVtZW50Tm9kZSgpLFxuICAgICAgICAgIGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSA9IGNvbmNsdXNpb24uZ2V0TWV0YXN0YXRlbWVudE5vZGUoKSxcbiAgICAgICAgICBub2RlQSA9IG1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgICAgbm9kZUIgPSBjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICBub2RlTWF0Y2hlcyA9IG1hdGNoZXIubWF0Y2hOb2RlKG5vZGVBLCBub2RlQik7XG5cbiAgICBydWxlUHJvb2ZWZXJpZmllZCA9IG5vZGVNYXRjaGVzOyAgLy8vXG4gIH1cblxuICByZXR1cm4gcnVsZVByb29mVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UnVsZVByb29mIiwicnVsZURlcml2YXRpb25Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJydWxlUHJvb2ZOb2RlIiwiY29uY2x1c2lvbiIsIm1ldGFwcm9vZkNvbnRleHQiLCJydWxlUHJvb2ZWZXJpZmllZCIsIk1ldGFwcm9vZkNvbnRleHQiLCJmcm9tTWV0YXByb29mQ29udGV4dCIsInJ1bGVEZXJpdmF0aW9uTm9kZSIsInJ1bGVEZXJpdmF0aW9uVmVyaWZpZWQiLCJ2ZXJpZnlSdWxlRGVyaXZhdGlvbiIsImxhc3RNZXRhcHJvb2ZTdGVwIiwiZ2V0TGFzdE1ldGFwcm9vZlN0ZXAiLCJtZXRhcHJvb2ZTdGVwIiwibWV0YXN0YXRlbWVudE5vZGUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsImNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSIsIm5vZGVBIiwibm9kZUIiLCJub2RlTWF0Y2hlcyIsIm1hdGNoZXIiLCJtYXRjaE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7OERBUko7Z0VBQ1M7cUVBQ0k7cUJBRVA7Ozs7OztBQUUxQixJQUFNQywwQkFBMEJDLElBQUFBLGdCQUFTLEVBQUM7QUFFM0IsU0FBU0YsZ0JBQWdCRyxhQUFhLEVBQUVDLFVBQVUsRUFBRUMsZ0JBQWdCLEVBQUU7SUFDbkYsSUFBSUMsb0JBQW9CLEtBQUs7SUFFN0JELG1CQUFtQkUsa0JBQWdCLENBQUNDLG9CQUFvQixDQUFDSCxtQkFBbUIsR0FBRztJQUUvRSxJQUFNSSxxQkFBcUJSLHdCQUF3QkUsZ0JBQzdDTyx5QkFBeUJDLElBQUFBLHVCQUFvQixFQUFDRixvQkFBb0JKO0lBRXhFLElBQUlLLHdCQUF3QjtRQUMxQixJQUFNRSxvQkFBb0JQLGlCQUFpQlEsb0JBQW9CLElBQ3pEQyxnQkFBZ0JGLG1CQUNoQkcsb0JBQW9CRCxjQUFjRSxvQkFBb0IsSUFDdERDLDhCQUE4QmIsV0FBV1ksb0JBQW9CLElBQzdERSxRQUFRSCxtQkFDUkksUUFBUUYsNkJBQ1JHLGNBQWNDLGdCQUFPLENBQUNDLFNBQVMsQ0FBQ0osT0FBT0M7UUFFN0NiLG9CQUFvQmMsYUFBYyxHQUFHO0lBQ3ZDLENBQUM7SUFFRCxPQUFPZDtBQUNUIn0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcnVsZVByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWV0YXByb29mQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9tZXRhcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlSdWxlRGVyaXZhdGlvbiBmcm9tIFwiLi4vdmVyaWZ5L3J1bGVEZXJpdmF0aW9uXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgcnVsZURlcml2YXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcnVsZVByb29mL3J1bGVEZXJpdmF0aW9uIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UnVsZVByb29mKHJ1bGVQcm9vZk5vZGUsIGNvbmNsdXNpb24sIG1ldGFwcm9vZkNvbnRleHQpIHtcbiAgbGV0IHJ1bGVQcm9vZlZlcmlmaWVkID0gZmFsc2U7XG5cbiAgbWV0YXByb29mQ29udGV4dCA9IE1ldGFwcm9vZkNvbnRleHQuZnJvbU1ldGFwcm9vZkNvbnRleHQobWV0YXByb29mQ29udGV4dCk7IC8vL1xuXG4gIGNvbnN0IHJ1bGVEZXJpdmF0aW9uTm9kZSA9IHJ1bGVEZXJpdmF0aW9uTm9kZVF1ZXJ5KHJ1bGVQcm9vZk5vZGUpLFxuICAgICAgICBydWxlRGVyaXZhdGlvblZlcmlmaWVkID0gdmVyaWZ5UnVsZURlcml2YXRpb24ocnVsZURlcml2YXRpb25Ob2RlLCBtZXRhcHJvb2ZDb250ZXh0KTtcblxuICBpZiAocnVsZURlcml2YXRpb25WZXJpZmllZCkge1xuICAgIGNvbnN0IGxhc3RNZXRhcHJvb2ZTdGVwID0gbWV0YXByb29mQ29udGV4dC5nZXRMYXN0TWV0YXByb29mU3RlcCgpLFxuICAgICAgICAgIG1ldGFwcm9vZlN0ZXAgPSBsYXN0TWV0YXByb29mU3RlcCwgLy8vXG4gICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhcHJvb2ZTdGVwLmdldE1ldGFzdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlID0gY29uY2x1c2lvbi5nZXRNZXRhc3RhdGVtZW50Tm9kZSgpLFxuICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hDb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZS5tYXRjaChjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgcnVsZVByb29mVmVyaWZpZWQgPSBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoQ29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlOyAgLy8vXG4gIH1cblxuICByZXR1cm4gcnVsZVByb29mVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UnVsZVByb29mIiwicnVsZURlcml2YXRpb25Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJydWxlUHJvb2ZOb2RlIiwiY29uY2x1c2lvbiIsIm1ldGFwcm9vZkNvbnRleHQiLCJydWxlUHJvb2ZWZXJpZmllZCIsIk1ldGFwcm9vZkNvbnRleHQiLCJmcm9tTWV0YXByb29mQ29udGV4dCIsInJ1bGVEZXJpdmF0aW9uTm9kZSIsInJ1bGVEZXJpdmF0aW9uVmVyaWZpZWQiLCJ2ZXJpZnlSdWxlRGVyaXZhdGlvbiIsImxhc3RNZXRhcHJvb2ZTdGVwIiwiZ2V0TGFzdE1ldGFwcm9vZlN0ZXAiLCJtZXRhcHJvb2ZTdGVwIiwibWV0YXN0YXRlbWVudE5vZGUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsImNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hDb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUiLCJtYXRjaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBU0E7OztlQUF3QkE7OztnRUFQSztxRUFDSTtxQkFFUDs7Ozs7O0FBRTFCLElBQU1DLDBCQUEwQkMsSUFBQUEsZ0JBQVMsRUFBQztBQUUzQixTQUFTRixnQkFBZ0JHLGFBQWEsRUFBRUMsVUFBVSxFQUFFQyxnQkFBZ0IsRUFBRTtJQUNuRixJQUFJQyxvQkFBb0IsS0FBSztJQUU3QkQsbUJBQW1CRSxrQkFBZ0IsQ0FBQ0Msb0JBQW9CLENBQUNILG1CQUFtQixHQUFHO0lBRS9FLElBQU1JLHFCQUFxQlIsd0JBQXdCRSxnQkFDN0NPLHlCQUF5QkMsSUFBQUEsdUJBQW9CLEVBQUNGLG9CQUFvQko7SUFFeEUsSUFBSUssd0JBQXdCO1FBQzFCLElBQU1FLG9CQUFvQlAsaUJBQWlCUSxvQkFBb0IsSUFDekRDLGdCQUFnQkYsbUJBQ2hCRyxvQkFBb0JELGNBQWNFLG9CQUFvQixJQUN0REMsOEJBQThCYixXQUFXWSxvQkFBb0IsSUFDN0RFLG9EQUFvREgsa0JBQWtCSSxLQUFLLENBQUNGO1FBRWxGWCxvQkFBb0JZLG1EQUFvRCxHQUFHO0lBQzdFLENBQUM7SUFFRCxPQUFPWjtBQUNUIn0=
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-verify-cli",
3
3
  "author": "James Smith",
4
- "version": "0.0.617",
4
+ "version": "0.0.618",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-verify-cli",
7
7
  "description": "Occam's Verifier",
package/src/equality.js CHANGED
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import matcher from "./matcher";
4
3
  import Verifier from "./verifier";
5
4
  import verifyTerm from "./verify/term";
6
5
  import equalityStatementNode from "./node/statement/equality";
@@ -94,12 +93,10 @@ export default class Equality {
94
93
  const statementNode = proofStep.getStatementNode();
95
94
 
96
95
  if (statementNode !== null) {
97
- const nodeA = statementNode, ///
98
- nodeB = equalityStatementNode, ///
99
- depth = EQUALITY_DEPTH,
100
- nodeMatches = matcher.matchNode(nodeA, nodeB, depth);
96
+ const depth = EQUALITY_DEPTH,
97
+ statementNodeMatchesEqualityStatementNode = statementNode.match(equalityStatementNode, depth);
101
98
 
102
- if (nodeMatches) {
99
+ if (statementNodeMatchesEqualityStatementNode) {
103
100
  const leftTermNode = leftTermNodeQuery(statementNode),
104
101
  rightTermNode = rightTermNodeQuery(statementNode);
105
102
 
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import matcher from "../matcher";
4
-
5
3
  import { bracketedMetastatementChildNodeFromMetastatementNode } from "../utilities/metaproof";
6
4
 
7
5
  export default class MetastatementForMetavariableSubstitution {
@@ -21,22 +19,15 @@ export default class MetastatementForMetavariableSubstitution {
21
19
  matchMetastatementNode(metastatementNode) {
22
20
  let metastatementNodeMatches;
23
21
 
24
- const nodeA = this.metastatementNode, ///
25
- nodeB = metastatementNode,
26
- nodeMatches = matcher.matchNode(nodeA, nodeB);
27
-
28
- metastatementNodeMatches = nodeMatches; ///
22
+ metastatementNodeMatches = this.metastatementNode.match(metastatementNode)
29
23
 
30
24
  if (!metastatementNodeMatches) {
31
25
  const bracketedMetastatementChildNode = bracketedMetastatementChildNodeFromMetastatementNode(metastatementNode);
32
26
 
33
27
  if (bracketedMetastatementChildNode !== null) {
34
- const metastatementNode = bracketedMetastatementChildNode, ///
35
- nodeA = this.metastatementNode, ///
36
- nodeB = metastatementNode,
37
- nodeMatches = matcher.matchNode(nodeA, nodeB);
28
+ const metastatementNode = bracketedMetastatementChildNode; ///
38
29
 
39
- metastatementNodeMatches = nodeMatches; ///
30
+ metastatementNodeMatches = this.metastatementNode.match(metastatementNode);
40
31
  }
41
32
  }
42
33
 
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import matcher from "../matcher";
4
-
5
3
  import { bracketedStatementChildNodeFromStatementNode } from "../utilities/proof";
6
4
 
7
5
  export default class StatementForMetavariableSubstitution {
@@ -21,22 +19,15 @@ export default class StatementForMetavariableSubstitution {
21
19
  matchStatementNode(statementNode) {
22
20
  let statementNodeMatches;
23
21
 
24
- const nodeA = this.statementNode, ///
25
- nodeB = statementNode,
26
- nodeMatches = matcher.matchNode(nodeA, nodeB);
27
-
28
- statementNodeMatches = nodeMatches; ///
22
+ statementNodeMatches = this.statementNode.match(statementNode);
29
23
 
30
24
  if (!statementNodeMatches) {
31
25
  const bracketedStatementChildNode = bracketedStatementChildNodeFromStatementNode(statementNode);
32
26
 
33
27
  if (bracketedStatementChildNode !== null) {
34
- const statementNode = bracketedStatementChildNode, ///
35
- nodeA = this.statementNode, ///
36
- nodeB = statementNode,
37
- nodeMatches = matcher.matchNode(nodeA, nodeB);
28
+ const statementNode = bracketedStatementChildNode; ///
38
29
 
39
- statementNodeMatches = nodeMatches; ///
30
+ statementNodeMatches = this.statementNode.match(statementNode);
40
31
  }
41
32
  }
42
33
 
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import matcher from "../matcher";
4
-
5
3
  export default class TermForVariableSubstitution {
6
4
  constructor(variableName, termNode) {
7
5
  this.variableName = variableName;
@@ -19,11 +17,7 @@ export default class TermForVariableSubstitution {
19
17
  matchTermNode(termNode) {
20
18
  let termNodeMatches;
21
19
 
22
- const nodeA = this.termNode, ///
23
- nodeB = termNode,
24
- nodeMatches = matcher.matchNode(nodeA, nodeB);
25
-
26
- termNodeMatches = nodeMatches; ///
20
+ termNodeMatches = this.termNode.match(termNode);
27
21
 
28
22
  return termNodeMatches;
29
23
  }
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import matcher from "../matcher";
4
3
  import bracketedMetastatementNode from "../node/metastatement/bracketed";
5
4
 
6
5
  import { nodeQuery } from "../utilities/query";
@@ -12,22 +11,18 @@ export function matchMetastatementModuloBrackets(metastatementNodeA, metastateme
12
11
  let metastatementMatchesModuloBrackets = false;
13
12
 
14
13
  if (!metastatementMatchesModuloBrackets) {
15
- const nodeA = metastatementNodeA, ///
16
- nodeB = metastatementNodeB, ///
17
- nodeMatches = matcher.matchNode(nodeA, nodeB);
14
+ const metastatementNodeMatches = metastatementNodeA.match(metastatementNodeB);
18
15
 
19
- metastatementMatchesModuloBrackets = nodeMatches; ///
16
+ metastatementMatchesModuloBrackets = metastatementNodeMatches; ///
20
17
  }
21
18
 
22
19
  if (!metastatementMatchesModuloBrackets) {
23
20
  const bracketedMetastatementChildNodeA = bracketedMetastatementChildNodeFromMetastatementNode(metastatementNodeA);
24
21
 
25
22
  if (bracketedMetastatementChildNodeA !== null) {
26
- const nodeA = bracketedMetastatementChildNodeA, ///
27
- nodeB = metastatementNodeB, ///
28
- nodeMatches = matcher.matchNode(nodeA, nodeB);
23
+ const bracketedMetastatementChildNodeAMatchesMetastatementNodeB = bracketedMetastatementChildNodeA.match(metastatementNodeB);
29
24
 
30
- metastatementMatchesModuloBrackets = nodeMatches; ///
25
+ metastatementMatchesModuloBrackets = bracketedMetastatementChildNodeAMatchesMetastatementNodeB; ///
31
26
  }
32
27
  }
33
28
 
@@ -35,11 +30,9 @@ export function matchMetastatementModuloBrackets(metastatementNodeA, metastateme
35
30
  const bracketedMetastatementChildNodeB = bracketedMetastatementChildNodeFromMetastatementNode(metastatementNodeB);
36
31
 
37
32
  if (bracketedMetastatementChildNodeB !== null) {
38
- const nodeA = metastatementNodeA, ///
39
- nodeB = bracketedMetastatementChildNodeB, ///
40
- nodeMatches = matcher.matchNode(nodeA, nodeB);
33
+ const metastatementNodeAMatchesBracketedMetastatementChildNodeB = metastatementNodeA.match(bracketedMetastatementChildNodeB);
41
34
 
42
- metastatementMatchesModuloBrackets = nodeMatches; ///
35
+ metastatementMatchesModuloBrackets = metastatementNodeAMatchesBracketedMetastatementChildNodeB; ///
43
36
  }
44
37
  }
45
38
 
@@ -49,12 +42,10 @@ export function matchMetastatementModuloBrackets(metastatementNodeA, metastateme
49
42
  export function bracketedMetastatementChildNodeFromMetastatementNode(metastatementNode) {
50
43
  let bracketedMetastatementChildNode = null;
51
44
 
52
- const nodeA = metastatementNode, ///
53
- nodeB = bracketedMetastatementNode, ///
54
- depth = BRACKETED_METASTATEMENT_DEPTH,
55
- nonTerminalNodeMatches = matcher.matchNode(nodeA, nodeB, depth);
45
+ const depth = BRACKETED_METASTATEMENT_DEPTH,
46
+ metastatementNodeMatchesBracketedMetastatementNode = metastatementNode.match(bracketedMetastatementNode, depth);
56
47
 
57
- if (nonTerminalNodeMatches) {
48
+ if (metastatementNodeMatchesBracketedMetastatementNode) {
58
49
  bracketedMetastatementChildNode = bracketedMetastatementChildNodeQuery(metastatementNode);
59
50
  }
60
51
 
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import matcher from "../matcher";
4
3
  import bracketedStatementNode from "../node/statement/bracketed";
5
4
 
6
5
  import { nodeQuery } from "../utilities/query";
@@ -12,22 +11,18 @@ export function matchStatementModuloBrackets(statementNodeA, statementNodeB) {
12
11
  let statementMatchesModuloBrackets = false;
13
12
 
14
13
  if (!statementMatchesModuloBrackets) {
15
- const nodeA = statementNodeA, ///
16
- nodeB = statementNodeB, ///
17
- nonTerminalNodeMatches = matcher.matchNode(nodeA, nodeB);
14
+ const statementNodeMatches = statementNodeA.match(statementNodeB);
18
15
 
19
- statementMatchesModuloBrackets = nonTerminalNodeMatches; ///
16
+ statementMatchesModuloBrackets = statementNodeMatches; ///
20
17
  }
21
18
 
22
19
  if (!statementMatchesModuloBrackets) {
23
20
  const bracketedStatementChildNodeA = bracketedStatementChildNodeFromStatementNode(statementNodeA);
24
21
 
25
22
  if (bracketedStatementChildNodeA !== null) {
26
- const nodeA = bracketedStatementChildNodeA, ///
27
- nodeB = statementNodeB, ///
28
- nodeMatches = matcher.matchNode(nodeA, nodeB);
23
+ const bracketedStatementChildNodeAMatchStatementNodeB = bracketedStatementChildNodeA.match(statementNodeB);
29
24
 
30
- statementMatchesModuloBrackets = nodeMatches; ///
25
+ statementMatchesModuloBrackets = bracketedStatementChildNodeAMatchStatementNodeB; ///
31
26
  }
32
27
  }
33
28
 
@@ -35,11 +30,9 @@ export function matchStatementModuloBrackets(statementNodeA, statementNodeB) {
35
30
  const bracketedStatementChildNodeB = bracketedStatementChildNodeFromStatementNode(statementNodeB);
36
31
 
37
32
  if (bracketedStatementChildNodeB !== null) {
38
- const nodeA = statementNodeA, ///
39
- nodeB = bracketedStatementChildNodeB, ///
40
- nodeMatches = matcher.matchNode(nodeA, nodeB);
33
+ const statementNodeAMatchBracketedStatementChildNodeB = statementNodeA.match(bracketedStatementChildNodeB);
41
34
 
42
- statementMatchesModuloBrackets = nodeMatches; ///
35
+ statementMatchesModuloBrackets = statementNodeAMatchBracketedStatementChildNodeB; ///
43
36
  }
44
37
  }
45
38
 
@@ -49,12 +42,10 @@ export function matchStatementModuloBrackets(statementNodeA, statementNodeB) {
49
42
  export function bracketedStatementChildNodeFromStatementNode(statementNode) {
50
43
  let bracketedStatementChildNode = null;
51
44
 
52
- const nodeA = statementNode, ///
53
- nodeB = bracketedStatementNode, ///
54
- depth = BRACKETED_STATEMENT_DEPTH,
55
- nonTerminalNodeMatches = matcher.matchNode(nodeA, nodeB, depth);
45
+ const depth = BRACKETED_STATEMENT_DEPTH,
46
+ statementNodeMatchBracketedStatementNode = statementNode.match(bracketedStatementNode, depth);
56
47
 
57
- if (nonTerminalNodeMatches) {
48
+ if (statementNodeMatchBracketedStatementNode) {
58
49
  bracketedStatementChildNode = bracketedStatementChildNodeQuery(statementNode);
59
50
  }
60
51
 
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import matcher from "../matcher";
4
3
  import ProofContext from "../context/proof";
5
4
  import verifyDerivation from "../verify/derivation";
6
5
 
@@ -21,11 +20,9 @@ export default function verifyProof(proofNode, conclusion, proofContext) {
21
20
  proofStep = lastProofStep, ///
22
21
  statementNode = proofStep.getStatementNode(),
23
22
  conclusionStatementNode = conclusion.getStatementNode(),
24
- nodeA = statementNode, ///
25
- nodeB = conclusionStatementNode, ///
26
- nodeMatches = matcher.matchNode(nodeA, nodeB);
23
+ statementNodeMatchConclusionStatementNode = statementNode.match(conclusionStatementNode);
27
24
 
28
- proofVerified = nodeMatches; ///
25
+ proofVerified = statementNodeMatchConclusionStatementNode; ///
29
26
  }
30
27
 
31
28
  return proofVerified;
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import matcher from "../matcher";
4
3
  import MetaproofContext from "../context/metaproof";
5
4
  import verifyRuleDerivation from "../verify/ruleDerivation";
6
5
 
@@ -21,11 +20,9 @@ export default function verifyRuleProof(ruleProofNode, conclusion, metaproofCont
21
20
  metaproofStep = lastMetaproofStep, ///
22
21
  metastatementNode = metaproofStep.getMetastatementNode(),
23
22
  conclusionMetastatementNode = conclusion.getMetastatementNode(),
24
- nodeA = metastatementNode, ///
25
- nodeB = conclusionMetastatementNode, ///
26
- nodeMatches = matcher.matchNode(nodeA, nodeB);
23
+ metastatementNodeMatchConclusionMetastatementNode = metastatementNode.match(conclusionMetastatementNode);
27
24
 
28
- ruleProofVerified = nodeMatches; ///
25
+ ruleProofVerified = metastatementNodeMatchConclusionMetastatementNode; ///
29
26
  }
30
27
 
31
28
  return ruleProofVerified;
package/lib/matcher.js DELETED
@@ -1,100 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return _default;
9
- }
10
- });
11
- function _class_call_check(instance, Constructor) {
12
- if (!(instance instanceof Constructor)) {
13
- throw new TypeError("Cannot call a class as a function");
14
- }
15
- }
16
- function _defineProperties(target, props) {
17
- for(var i = 0; i < props.length; i++){
18
- var descriptor = props[i];
19
- descriptor.enumerable = descriptor.enumerable || false;
20
- descriptor.configurable = true;
21
- if ("value" in descriptor) descriptor.writable = true;
22
- Object.defineProperty(target, descriptor.key, descriptor);
23
- }
24
- }
25
- function _create_class(Constructor, protoProps, staticProps) {
26
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
27
- if (staticProps) _defineProperties(Constructor, staticProps);
28
- return Constructor;
29
- }
30
- var Matcher = /*#__PURE__*/ function() {
31
- function Matcher() {
32
- _class_call_check(this, Matcher);
33
- }
34
- _create_class(Matcher, [
35
- {
36
- key: "matchNode",
37
- value: function matchNode(nodeA, nodeB) {
38
- var depth = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Infinity;
39
- var nodeMatches = false;
40
- if (depth === 0) {
41
- nodeMatches = true;
42
- } else {
43
- var nodeATerminalNode = nodeA.isTerminalNode(), nodeBTerminalNode = nodeB.isTerminalNode();
44
- if (nodeATerminalNode === nodeBTerminalNode) {
45
- if (nodeATerminalNode) {
46
- var terminalNodeA = nodeA, terminalNodeB = nodeB, terminalNodeMatches = this.matchTerminalNode(terminalNodeA, terminalNodeB);
47
- nodeMatches = terminalNodeMatches; ///
48
- } else {
49
- var nonTerminalNodeA = nodeA, nonTerminalNodeB = nodeB, nonTerminalNodeMatches = this.matchNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, depth);
50
- nodeMatches = nonTerminalNodeMatches; ///
51
- }
52
- }
53
- }
54
- return nodeMatches;
55
- }
56
- },
57
- {
58
- key: "matchNodes",
59
- value: function matchNodes(nodesA, nodesB, depth) {
60
- var _this = this;
61
- var nodesMatch = false;
62
- var nodesALength = nodesA.length, nodesBLength = nodesB.length;
63
- if (nodesALength === nodesBLength) {
64
- depth--;
65
- nodesMatch = nodesA.every(function(nodeA, index) {
66
- var nodeB = nodesB[index], nodeMatches = _this.matchNode(nodeA, nodeB, depth);
67
- if (nodeMatches) {
68
- return true;
69
- }
70
- });
71
- }
72
- return nodesMatch;
73
- }
74
- },
75
- {
76
- key: "matchTerminalNode",
77
- value: function matchTerminalNode(terminalNodeA, terminalNodeB, depth) {
78
- var matches = terminalNodeA.match(terminalNodeB), terminalNodeMatches = matches; ///
79
- return terminalNodeMatches;
80
- }
81
- },
82
- {
83
- key: "matchNonTerminalNode",
84
- value: function matchNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, depth) {
85
- var nonTerminalNodeMatches = false;
86
- var nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName(); ///
87
- if (nonTerminalNodeARuleName === nonTerminalNodeBRuleName) {
88
- var nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(), nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(), nodesA = nonTerminalNodeAChildNodes, nodesB = nonTerminalNodeBChildNodes, nodesMatch = this.matchNodes(nodesA, nodesB, depth);
89
- nonTerminalNodeMatches = nodesMatch; ///
90
- }
91
- return nonTerminalNodeMatches;
92
- }
93
- }
94
- ]);
95
- return Matcher;
96
- }();
97
- var matcher = new Matcher();
98
- var _default = matcher;
99
-
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYXRjaGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5jbGFzcyBNYXRjaGVyIHtcbiAgbWF0Y2hOb2RlKG5vZGVBLCBub2RlQiwgZGVwdGggPSBJbmZpbml0eSkge1xuICAgIGxldCBub2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gICAgaWYgKGRlcHRoID09PSAwKSB7XG4gICAgICBub2RlTWF0Y2hlcyA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5vZGVBVGVybWluYWxOb2RlID0gbm9kZUEuaXNUZXJtaW5hbE5vZGUoKSxcbiAgICAgICAgICAgIG5vZGVCVGVybWluYWxOb2RlID0gbm9kZUIuaXNUZXJtaW5hbE5vZGUoKTtcblxuICAgICAgaWYgKG5vZGVBVGVybWluYWxOb2RlID09PSBub2RlQlRlcm1pbmFsTm9kZSkge1xuICAgICAgICBpZiAobm9kZUFUZXJtaW5hbE5vZGUpIHtcbiAgICAgICAgICBjb25zdCB0ZXJtaW5hbE5vZGVBID0gbm9kZUEsICAvLy9cbiAgICAgICAgICAgICAgICB0ZXJtaW5hbE5vZGVCID0gbm9kZUIsICAvLy9cbiAgICAgICAgICAgICAgICB0ZXJtaW5hbE5vZGVNYXRjaGVzID0gdGhpcy5tYXRjaFRlcm1pbmFsTm9kZSh0ZXJtaW5hbE5vZGVBLCB0ZXJtaW5hbE5vZGVCKTtcblxuICAgICAgICAgIG5vZGVNYXRjaGVzID0gdGVybWluYWxOb2RlTWF0Y2hlczsgIC8vL1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSBub2RlQSwgIC8vL1xuICAgICAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUIgPSBub2RlQiwgLy8vXG4gICAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IHRoaXMubWF0Y2hOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgZGVwdGgpO1xuXG4gICAgICAgICAgbm9kZU1hdGNoZXMgPSBub25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub2RlTWF0Y2hlcztcbiAgfVxuXG4gIG1hdGNoTm9kZXMobm9kZXNBLCBub2Rlc0IsIGRlcHRoKSB7XG4gICAgbGV0IG5vZGVzTWF0Y2ggPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vZGVzQUxlbmd0aCA9IG5vZGVzQS5sZW5ndGgsXG4gICAgICAgICAgbm9kZXNCTGVuZ3RoID0gbm9kZXNCLmxlbmd0aDtcblxuICAgIGlmIChub2Rlc0FMZW5ndGggPT09IG5vZGVzQkxlbmd0aCkge1xuICAgICAgZGVwdGgtLTtcblxuICAgICAgbm9kZXNNYXRjaCA9IG5vZGVzQS5ldmVyeSgobm9kZUEsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbnN0IG5vZGVCID0gbm9kZXNCW2luZGV4XSxcbiAgICAgICAgICAgICAgbm9kZU1hdGNoZXMgPSB0aGlzLm1hdGNoTm9kZShub2RlQSwgbm9kZUIsIGRlcHRoKTtcblxuICAgICAgICBpZiAobm9kZU1hdGNoZXMpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gbm9kZXNNYXRjaDtcbiAgfVxuXG4gIG1hdGNoVGVybWluYWxOb2RlKHRlcm1pbmFsTm9kZUEsIHRlcm1pbmFsTm9kZUIsIGRlcHRoKSB7XG4gICAgY29uc3QgbWF0Y2hlcyA9IHRlcm1pbmFsTm9kZUEubWF0Y2godGVybWluYWxOb2RlQiksXG4gICAgICAgICAgdGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoZXM7ICAvLy9cblxuICAgIHJldHVybiB0ZXJtaW5hbE5vZGVNYXRjaGVzO1xuICB9XG5cbiAgbWF0Y2hOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgZGVwdGgpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVCLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gICAgaWYgKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9PT0gbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lKSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZUEuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGVCLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgIG5vZGVzQSA9IG5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgIG5vZGVzQiA9IG5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgIG5vZGVzTWF0Y2ggPSB0aGlzLm1hdGNoTm9kZXMobm9kZXNBLCBub2Rlc0IsIGRlcHRoKTtcblxuICAgICAgbm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG5vZGVzTWF0Y2g7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVNYXRjaGVzO1xuICB9XG59XG5cbmNvbnN0IG1hdGNoZXIgPSBuZXcgTWF0Y2hlcigpO1xuXG5leHBvcnQgZGVmYXVsdCBtYXRjaGVyO1xuIl0sIm5hbWVzIjpbIk1hdGNoZXIiLCJtYXRjaE5vZGUiLCJub2RlQSIsIm5vZGVCIiwiZGVwdGgiLCJJbmZpbml0eSIsIm5vZGVNYXRjaGVzIiwibm9kZUFUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsIm5vZGVCVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlQSIsInRlcm1pbmFsTm9kZUIiLCJ0ZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hUZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsIm5vblRlcm1pbmFsTm9kZU1hdGNoZXMiLCJtYXRjaE5vblRlcm1pbmFsTm9kZSIsIm1hdGNoTm9kZXMiLCJub2Rlc0EiLCJub2Rlc0IiLCJub2Rlc01hdGNoIiwibm9kZXNBTGVuZ3RoIiwibGVuZ3RoIiwibm9kZXNCTGVuZ3RoIiwiZXZlcnkiLCJpbmRleCIsIm1hdGNoZXMiLCJtYXRjaCIsIm5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSIsImdldFJ1bGVOYW1lIiwibm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lIiwibm9uVGVybWluYWxOb2RlQUNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwibm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMiLCJtYXRjaGVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFtRkE7OztlQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBakZBLElBQUEsQUFBTUEsd0JBK0VILEFBL0VIO2FBQU1BO2dDQUFBQTs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVUMsS0FBSyxFQUFFQyxLQUFLLEVBQW9CO29CQUFsQkMsUUFBQUEsaUVBQVFDLFFBQVE7Z0JBQ3RDLElBQUlDLGNBQWMsS0FBSztnQkFFdkIsSUFBSUYsVUFBVSxHQUFHO29CQUNmRSxjQUFjLElBQUk7Z0JBQ3BCLE9BQU87b0JBQ0wsSUFBTUMsb0JBQW9CTCxNQUFNTSxjQUFjLElBQ3hDQyxvQkFBb0JOLE1BQU1LLGNBQWM7b0JBRTlDLElBQUlELHNCQUFzQkUsbUJBQW1CO3dCQUMzQyxJQUFJRixtQkFBbUI7NEJBQ3JCLElBQU1HLGdCQUFnQlIsT0FDaEJTLGdCQUFnQlIsT0FDaEJTLHNCQUFzQixJQUFJLENBQUNDLGlCQUFpQixDQUFDSCxlQUFlQzs0QkFFbEVMLGNBQWNNLHFCQUFzQixHQUFHO3dCQUN6QyxPQUFPOzRCQUNMLElBQU1FLG1CQUFtQlosT0FDbkJhLG1CQUFtQlosT0FDbkJhLHlCQUF5QixJQUFJLENBQUNDLG9CQUFvQixDQUFDSCxrQkFBa0JDLGtCQUFrQlg7NEJBRTdGRSxjQUFjVSx3QkFBd0IsR0FBRzt3QkFDM0MsQ0FBQztvQkFDSCxDQUFDO2dCQUNILENBQUM7Z0JBRUQsT0FBT1Y7WUFDVDs7O1lBRUFZLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXQyxNQUFNLEVBQUVDLE1BQU0sRUFBRWhCLEtBQUssRUFBRTs7Z0JBQ2hDLElBQUlpQixhQUFhLEtBQUs7Z0JBRXRCLElBQU1DLGVBQWVILE9BQU9JLE1BQU0sRUFDNUJDLGVBQWVKLE9BQU9HLE1BQU07Z0JBRWxDLElBQUlELGlCQUFpQkUsY0FBYztvQkFDakNwQjtvQkFFQWlCLGFBQWFGLE9BQU9NLEtBQUssQ0FBQyxTQUFDdkIsT0FBT3dCLE9BQVU7d0JBQzFDLElBQU12QixRQUFRaUIsTUFBTSxDQUFDTSxNQUFNLEVBQ3JCcEIsY0FBYyxNQUFLTCxTQUFTLENBQUNDLE9BQU9DLE9BQU9DO3dCQUVqRCxJQUFJRSxhQUFhOzRCQUNmLE9BQU8sSUFBSTt3QkFDYixDQUFDO29CQUNIO2dCQUNGLENBQUM7Z0JBRUQsT0FBT2U7WUFDVDs7O1lBRUFSLEtBQUFBO21CQUFBQSxTQUFBQSxrQkFBa0JILGFBQWEsRUFBRUMsYUFBYSxFQUFFUCxLQUFLLEVBQUU7Z0JBQ3JELElBQU11QixVQUFVakIsY0FBY2tCLEtBQUssQ0FBQ2pCLGdCQUM5QkMsc0JBQXNCZSxTQUFVLEdBQUc7Z0JBRXpDLE9BQU9mO1lBQ1Q7OztZQUVBSyxLQUFBQTttQkFBQUEsU0FBQUEscUJBQXFCSCxnQkFBZ0IsRUFBRUMsZ0JBQWdCLEVBQUVYLEtBQUssRUFBRTtnQkFDOUQsSUFBSVkseUJBQXlCLEtBQUs7Z0JBRWxDLElBQU1hLDJCQUEyQmYsaUJBQWlCZ0IsV0FBVyxJQUN2REMsMkJBQTJCaEIsaUJBQWlCZSxXQUFXLElBQUksR0FBRztnQkFFcEUsSUFBSUQsNkJBQTZCRSwwQkFBMEI7b0JBQ3pELElBQU1DLDZCQUE2QmxCLGlCQUFpQm1CLGFBQWEsSUFDM0RDLDZCQUE2Qm5CLGlCQUFpQmtCLGFBQWEsSUFDM0RkLFNBQVNhLDRCQUNUWixTQUFTYyw0QkFDVGIsYUFBYSxJQUFJLENBQUNILFVBQVUsQ0FBQ0MsUUFBUUMsUUFBUWhCO29CQUVuRFkseUJBQXlCSyxZQUFZLEdBQUc7Z0JBQzFDLENBQUM7Z0JBRUQsT0FBT0w7WUFDVDs7O1dBNUVJaEI7O0FBK0VOLElBQU1tQyxVQUFVLElBQUluQztJQUVwQixXQUFlbUMifQ==
package/src/matcher.js DELETED
@@ -1,84 +0,0 @@
1
- "use strict";
2
-
3
- class Matcher {
4
- matchNode(nodeA, nodeB, depth = Infinity) {
5
- let nodeMatches = false;
6
-
7
- if (depth === 0) {
8
- nodeMatches = true;
9
- } else {
10
- const nodeATerminalNode = nodeA.isTerminalNode(),
11
- nodeBTerminalNode = nodeB.isTerminalNode();
12
-
13
- if (nodeATerminalNode === nodeBTerminalNode) {
14
- if (nodeATerminalNode) {
15
- const terminalNodeA = nodeA, ///
16
- terminalNodeB = nodeB, ///
17
- terminalNodeMatches = this.matchTerminalNode(terminalNodeA, terminalNodeB);
18
-
19
- nodeMatches = terminalNodeMatches; ///
20
- } else {
21
- const nonTerminalNodeA = nodeA, ///
22
- nonTerminalNodeB = nodeB, ///
23
- nonTerminalNodeMatches = this.matchNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, depth);
24
-
25
- nodeMatches = nonTerminalNodeMatches; ///
26
- }
27
- }
28
- }
29
-
30
- return nodeMatches;
31
- }
32
-
33
- matchNodes(nodesA, nodesB, depth) {
34
- let nodesMatch = false;
35
-
36
- const nodesALength = nodesA.length,
37
- nodesBLength = nodesB.length;
38
-
39
- if (nodesALength === nodesBLength) {
40
- depth--;
41
-
42
- nodesMatch = nodesA.every((nodeA, index) => {
43
- const nodeB = nodesB[index],
44
- nodeMatches = this.matchNode(nodeA, nodeB, depth);
45
-
46
- if (nodeMatches) {
47
- return true;
48
- }
49
- })
50
- }
51
-
52
- return nodesMatch;
53
- }
54
-
55
- matchTerminalNode(terminalNodeA, terminalNodeB, depth) {
56
- const matches = terminalNodeA.match(terminalNodeB),
57
- terminalNodeMatches = matches; ///
58
-
59
- return terminalNodeMatches;
60
- }
61
-
62
- matchNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, depth) {
63
- let nonTerminalNodeMatches = false;
64
-
65
- const nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), ///
66
- nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName(); ///
67
-
68
- if (nonTerminalNodeARuleName === nonTerminalNodeBRuleName) {
69
- const nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(),
70
- nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(),
71
- nodesA = nonTerminalNodeAChildNodes, ///
72
- nodesB = nonTerminalNodeBChildNodes, ///
73
- nodesMatch = this.matchNodes(nodesA, nodesB, depth);
74
-
75
- nonTerminalNodeMatches = nodesMatch; ///
76
- }
77
-
78
- return nonTerminalNodeMatches;
79
- }
80
- }
81
-
82
- const matcher = new Matcher();
83
-
84
- export default matcher;