occam-verify-cli 0.0.490 → 0.0.491

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.
@@ -18,16 +18,11 @@ function verifyUnqualifiedStatement(unqualifiedStatementNode, proofContext) {
18
18
  if (statementNode !== null) {
19
19
  var statementString = (0, _string.nodeAsString)(statementNode);
20
20
  proofContext.debug("Verifying the ".concat(statementString, " unqualified statement..."));
21
- var derived = proofContext.isDerived();
22
- if (derived) {
23
- var assertionMatches = proofContext.matchStatement(statementNode);
24
- unqualifiedStatementVerified = assertionMatches; ///
25
- } else {
26
- unqualifiedStatementVerified = true;
27
- }
21
+ var assertionMatches = proofContext.matchStatement(statementNode);
22
+ unqualifiedStatementVerified = assertionMatches; ///
28
23
  }
29
24
  unqualifiedStatementVerified ? proofContext.complete(unqualifiedStatementNode) : proofContext.halt(unqualifiedStatementNode);
30
25
  return unqualifiedStatementVerified;
31
26
  }
32
27
 
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50L3VucXVhbGlmaWVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5jb25zdCBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBwcm9vZkNvbnRleHQpIHtcbiAgbGV0IHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBwcm9vZkNvbnRleHQuYmVnaW4odW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKHN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBzdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBwcm9vZkNvbnRleHQuZGVidWcoYFZlcmlmeWluZyB0aGUgJHtzdGF0ZW1lbnRTdHJpbmd9IHVucXVhbGlmaWVkIHN0YXRlbWVudC4uLmApO1xuXG4gICAgY29uc3QgZGVyaXZlZCA9IHByb29mQ29udGV4dC5pc0Rlcml2ZWQoKTtcblxuICAgIGlmIChkZXJpdmVkKSB7XG4gICAgICBjb25zdCBhc3NlcnRpb25NYXRjaGVzID0gcHJvb2ZDb250ZXh0Lm1hdGNoU3RhdGVtZW50KHN0YXRlbWVudE5vZGUpO1xuXG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gYXNzZXJ0aW9uTWF0Y2hlczsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID9cbiAgICBwcm9vZkNvbnRleHQuY29tcGxldGUodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSA6XG4gICAgICBwcm9vZkNvbnRleHQuaGFsdCh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwicHJvb2ZDb250ZXh0IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCIsImJlZ2luIiwic3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsImRlYnVnIiwiZGVyaXZlZCIsImlzRGVyaXZlZCIsImFzc2VydGlvbk1hdGNoZXMiLCJtYXRjaFN0YXRlbWVudCIsImNvbXBsZXRlIiwiaGFsdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUF3QkE7OztxQkFMRTtzQkFDRztBQUU3QixJQUFNQyxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUM7QUFFdEIsU0FBU0YsMkJBQTJCRyx3QkFBd0IsRUFBRUMsWUFBWSxFQUFFO0lBQ3pGLElBQUlDLCtCQUErQixLQUFLO0lBRXhDRCxhQUFhRSxLQUFLLENBQUNIO0lBRW5CLElBQU1JLGdCQUFnQk4sbUJBQW1CRTtJQUV6QyxJQUFJSSxrQkFBa0IsSUFBSSxFQUFFO1FBQzFCLElBQU1DLGtCQUFrQkMsSUFBQUEsb0JBQVksRUFBQ0Y7UUFFckNILGFBQWFNLEtBQUssQ0FBQyxBQUFDLGlCQUFnQyxPQUFoQkYsaUJBQWdCO1FBRXBELElBQU1HLFVBQVVQLGFBQWFRLFNBQVM7UUFFdEMsSUFBSUQsU0FBUztZQUNYLElBQU1FLG1CQUFtQlQsYUFBYVUsY0FBYyxDQUFDUDtZQUVyREYsK0JBQStCUSxrQkFBbUIsR0FBRztRQUN2RCxPQUFPO1lBQ0xSLCtCQUErQixJQUFJO1FBQ3JDLENBQUM7SUFDSCxDQUFDO0lBRURBLCtCQUNFRCxhQUFhVyxRQUFRLENBQUNaLDRCQUNwQkMsYUFBYVksSUFBSSxDQUFDYix5QkFBeUI7SUFFL0MsT0FBT0U7QUFDVCJ9
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50L3VucXVhbGlmaWVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5jb25zdCBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBwcm9vZkNvbnRleHQpIHtcbiAgbGV0IHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBwcm9vZkNvbnRleHQuYmVnaW4odW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKHN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBzdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBwcm9vZkNvbnRleHQuZGVidWcoYFZlcmlmeWluZyB0aGUgJHtzdGF0ZW1lbnRTdHJpbmd9IHVucXVhbGlmaWVkIHN0YXRlbWVudC4uLmApO1xuXG4gICAgY29uc3QgYXNzZXJ0aW9uTWF0Y2hlcyA9IHByb29mQ29udGV4dC5tYXRjaFN0YXRlbWVudChzdGF0ZW1lbnROb2RlKTtcblxuICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSBhc3NlcnRpb25NYXRjaGVzOyAgLy8vXG4gIH1cblxuICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID9cbiAgICBwcm9vZkNvbnRleHQuY29tcGxldGUodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSA6XG4gICAgICBwcm9vZkNvbnRleHQuaGFsdCh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwicHJvb2ZDb250ZXh0IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCIsImJlZ2luIiwic3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsImRlYnVnIiwiYXNzZXJ0aW9uTWF0Y2hlcyIsIm1hdGNoU3RhdGVtZW50IiwiY29tcGxldGUiLCJoYWx0Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFPQTs7O2VBQXdCQTs7O3FCQUxFO3NCQUNHO0FBRTdCLElBQU1DLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQztBQUV0QixTQUFTRiwyQkFBMkJHLHdCQUF3QixFQUFFQyxZQUFZLEVBQUU7SUFDekYsSUFBSUMsK0JBQStCLEtBQUs7SUFFeENELGFBQWFFLEtBQUssQ0FBQ0g7SUFFbkIsSUFBTUksZ0JBQWdCTixtQkFBbUJFO0lBRXpDLElBQUlJLGtCQUFrQixJQUFJLEVBQUU7UUFDMUIsSUFBTUMsa0JBQWtCQyxJQUFBQSxvQkFBWSxFQUFDRjtRQUVyQ0gsYUFBYU0sS0FBSyxDQUFDLEFBQUMsaUJBQWdDLE9BQWhCRixpQkFBZ0I7UUFFcEQsSUFBTUcsbUJBQW1CUCxhQUFhUSxjQUFjLENBQUNMO1FBRXJERiwrQkFBK0JNLGtCQUFtQixHQUFHO0lBQ3ZELENBQUM7SUFFRE4sK0JBQ0VELGFBQWFTLFFBQVEsQ0FBQ1YsNEJBQ3BCQyxhQUFhVSxJQUFJLENBQUNYLHlCQUF5QjtJQUUvQyxPQUFPRTtBQUNUIn0=
@@ -15,19 +15,19 @@ function _interopRequireDefault(obj) {
15
15
  default: obj
16
16
  };
17
17
  }
18
- function verifyStatement(statementNode, proofContext) {
18
+ function verifyStatement(statementNode, qualified, proofContext) {
19
19
  var statementVerified = false;
20
20
  proofContext.begin(statementNode);
21
21
  if (!statementVerified) {
22
- var equalityVerifiedAsEquality = (0, _statementAsEquality.default)(statementNode, proofContext);
22
+ var equalityVerifiedAsEquality = (0, _statementAsEquality.default)(statementNode, qualified, proofContext);
23
23
  statementVerified = equalityVerifiedAsEquality; ///
24
24
  }
25
25
  if (!statementVerified) {
26
- var statementTypeAssertionVerified = (0, _statementTypeAssertion.default)(statementNode, proofContext);
26
+ var statementTypeAssertionVerified = (0, _statementTypeAssertion.default)(statementNode, qualified, proofContext);
27
27
  statementVerified = statementTypeAssertionVerified; ///
28
28
  }
29
29
  statementVerified ? proofContext.complete(statementNode) : proofContext.halt(statementNode);
30
30
  return statementVerified;
31
31
  }
32
32
 
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5U3RhdGVtZW50QXNFcXVhbGl0eSBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudEFzRXF1YWxpdHlcIjtcbmltcG9ydCB2ZXJpZnlTdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uIGZyb20gXCIuLi92ZXJpZnkvc3RhdGVtZW50VHlwZUFzc2VydGlvblwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgcHJvb2ZDb250ZXh0KSB7XG4gIGxldCBzdGF0ZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIHByb29mQ29udGV4dC5iZWdpbihzdGF0ZW1lbnROb2RlKTtcblxuICBpZiAoIXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3QgZXF1YWxpdHlWZXJpZmllZEFzRXF1YWxpdHkgPSB2ZXJpZnlTdGF0ZW1lbnRBc0VxdWFsaXR5KHN0YXRlbWVudE5vZGUsIHByb29mQ29udGV4dCk7XG5cbiAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IGVxdWFsaXR5VmVyaWZpZWRBc0VxdWFsaXR5OyAvLy9cbiAgfVxuXG4gIGlmICghc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBjb25zdCBzdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlTdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uKHN0YXRlbWVudE5vZGUsIHByb29mQ29udGV4dCk7XG5cbiAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZDsgLy8vXG4gIH1cblxuICBzdGF0ZW1lbnRWZXJpZmllZCA/XG4gICAgcHJvb2ZDb250ZXh0LmNvbXBsZXRlKHN0YXRlbWVudE5vZGUpIDpcbiAgICAgIHByb29mQ29udGV4dC5oYWx0KHN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlIiwicHJvb2ZDb250ZXh0Iiwic3RhdGVtZW50VmVyaWZpZWQiLCJiZWdpbiIsImVxdWFsaXR5VmVyaWZpZWRBc0VxdWFsaXR5IiwidmVyaWZ5U3RhdGVtZW50QXNFcXVhbGl0eSIsInN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZCIsInZlcmlmeVN0YXRlbWVudFR5cGVBc3NlcnRpb24iLCJjb21wbGV0ZSIsImhhbHQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUtBOzs7ZUFBd0JBOzs7d0VBSGM7MkVBQ0c7Ozs7OztBQUUxQixTQUFTQSxnQkFBZ0JDLGFBQWEsRUFBRUMsWUFBWSxFQUFFO0lBQ25FLElBQUlDLG9CQUFvQixLQUFLO0lBRTdCRCxhQUFhRSxLQUFLLENBQUNIO0lBRW5CLElBQUksQ0FBQ0UsbUJBQW1CO1FBQ3RCLElBQU1FLDZCQUE2QkMsSUFBQUEsNEJBQXlCLEVBQUNMLGVBQWVDO1FBRTVFQyxvQkFBb0JFLDRCQUE0QixHQUFHO0lBQ3JELENBQUM7SUFFRCxJQUFJLENBQUNGLG1CQUFtQjtRQUN0QixJQUFNSSxpQ0FBaUNDLElBQUFBLCtCQUE0QixFQUFDUCxlQUFlQztRQUVuRkMsb0JBQW9CSSxnQ0FBZ0MsR0FBRztJQUN6RCxDQUFDO0lBRURKLG9CQUNFRCxhQUFhTyxRQUFRLENBQUNSLGlCQUNwQkMsYUFBYVEsSUFBSSxDQUFDVCxjQUFjO0lBRXBDLE9BQU9FO0FBQ1QifQ==
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5U3RhdGVtZW50QXNFcXVhbGl0eSBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudEFzRXF1YWxpdHlcIjtcbmltcG9ydCB2ZXJpZnlTdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uIGZyb20gXCIuLi92ZXJpZnkvc3RhdGVtZW50VHlwZUFzc2VydGlvblwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgcXVhbGlmaWVkLCBwcm9vZkNvbnRleHQpIHtcbiAgbGV0IHN0YXRlbWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgcHJvb2ZDb250ZXh0LmJlZ2luKHN0YXRlbWVudE5vZGUpO1xuXG4gIGlmICghc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBjb25zdCBlcXVhbGl0eVZlcmlmaWVkQXNFcXVhbGl0eSA9IHZlcmlmeVN0YXRlbWVudEFzRXF1YWxpdHkoc3RhdGVtZW50Tm9kZSwgcXVhbGlmaWVkLCBwcm9vZkNvbnRleHQpO1xuXG4gICAgc3RhdGVtZW50VmVyaWZpZWQgPSBlcXVhbGl0eVZlcmlmaWVkQXNFcXVhbGl0eTsgLy8vXG4gIH1cblxuICBpZiAoIXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50VHlwZUFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50VHlwZUFzc2VydGlvbihzdGF0ZW1lbnROb2RlLCBxdWFsaWZpZWQsIHByb29mQ29udGV4dCk7XG5cbiAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZDsgLy8vXG4gIH1cblxuICBzdGF0ZW1lbnRWZXJpZmllZCA/XG4gICAgcHJvb2ZDb250ZXh0LmNvbXBsZXRlKHN0YXRlbWVudE5vZGUpIDpcbiAgICAgIHByb29mQ29udGV4dC5oYWx0KHN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlIiwicXVhbGlmaWVkIiwicHJvb2ZDb250ZXh0Iiwic3RhdGVtZW50VmVyaWZpZWQiLCJiZWdpbiIsImVxdWFsaXR5VmVyaWZpZWRBc0VxdWFsaXR5IiwidmVyaWZ5U3RhdGVtZW50QXNFcXVhbGl0eSIsInN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZCIsInZlcmlmeVN0YXRlbWVudFR5cGVBc3NlcnRpb24iLCJjb21wbGV0ZSIsImhhbHQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUtBOzs7ZUFBd0JBOzs7d0VBSGM7MkVBQ0c7Ozs7OztBQUUxQixTQUFTQSxnQkFBZ0JDLGFBQWEsRUFBRUMsU0FBUyxFQUFFQyxZQUFZLEVBQUU7SUFDOUUsSUFBSUMsb0JBQW9CLEtBQUs7SUFFN0JELGFBQWFFLEtBQUssQ0FBQ0o7SUFFbkIsSUFBSSxDQUFDRyxtQkFBbUI7UUFDdEIsSUFBTUUsNkJBQTZCQyxJQUFBQSw0QkFBeUIsRUFBQ04sZUFBZUMsV0FBV0M7UUFFdkZDLG9CQUFvQkUsNEJBQTRCLEdBQUc7SUFDckQsQ0FBQztJQUVELElBQUksQ0FBQ0YsbUJBQW1CO1FBQ3RCLElBQU1JLGlDQUFpQ0MsSUFBQUEsK0JBQTRCLEVBQUNSLGVBQWVDLFdBQVdDO1FBRTlGQyxvQkFBb0JJLGdDQUFnQyxHQUFHO0lBQ3pELENBQUM7SUFFREosb0JBQ0VELGFBQWFPLFFBQVEsQ0FBQ1QsaUJBQ3BCRSxhQUFhUSxJQUFJLENBQUNWLGNBQWM7SUFFcEMsT0FBT0c7QUFDVCJ9
@@ -9,8 +9,7 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _equality = /*#__PURE__*/ _interopRequireDefault(require("../equality"));
12
- var _variable = /*#__PURE__*/ _interopRequireDefault(require("../variable"));
13
- var _term = /*#__PURE__*/ _interopRequireWildcard(require("../verify/term"));
12
+ var _term = /*#__PURE__*/ _interopRequireDefault(require("../verify/term"));
14
13
  var _query = require("../utilities/query");
15
14
  var _string = require("../utilities/string");
16
15
  var _array = require("../utilities/array");
@@ -20,47 +19,8 @@ function _interopRequireDefault(obj) {
20
19
  default: obj
21
20
  };
22
21
  }
23
- function _getRequireWildcardCache(nodeInterop) {
24
- if (typeof WeakMap !== "function") return null;
25
- var cacheBabelInterop = new WeakMap();
26
- var cacheNodeInterop = new WeakMap();
27
- return (_getRequireWildcardCache = function(nodeInterop) {
28
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
29
- })(nodeInterop);
30
- }
31
- function _interopRequireWildcard(obj, nodeInterop) {
32
- if (!nodeInterop && obj && obj.__esModule) {
33
- return obj;
34
- }
35
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
36
- return {
37
- default: obj
38
- };
39
- }
40
- var cache = _getRequireWildcardCache(nodeInterop);
41
- if (cache && cache.has(obj)) {
42
- return cache.get(obj);
43
- }
44
- var newObj = {};
45
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
46
- for(var key in obj){
47
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
48
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
49
- if (desc && (desc.get || desc.set)) {
50
- Object.defineProperty(newObj, key, desc);
51
- } else {
52
- newObj[key] = obj[key];
53
- }
54
- }
55
- }
56
- newObj.default = obj;
57
- if (cache) {
58
- cache.set(obj, newObj);
59
- }
60
- return newObj;
61
- }
62
22
  var specialNodeQuery = (0, _query.nodeQuery)("/statement/@special!"), leftTermNodeQuery = (0, _query.nodeQuery)("/statement/term[0]"), rightTermNodeQuery = (0, _query.nodeQuery)("/statement/term[1]");
63
- function verifyStatementAsEquality(statementNode, proofContext) {
23
+ function verifyStatementAsEquality(statementNode, qualified, proofContext) {
64
24
  var statementVerifiedAsEquality = false;
65
25
  proofContext.begin(statementNode);
66
26
  var statementString = (0, _string.nodeAsString)(statementNode);
@@ -75,26 +35,15 @@ function verifyStatementAsEquality(statementNode, proofContext) {
75
35
  if (leftType === null && rightType === null) {
76
36
  proofContext.error("The types of the '".concat(leftTermString, "' and '").concat(rightTermString, "' terms are both undefined and therefore the terms cannot be equated."));
77
37
  } else if (rightType === null) {
78
- var type = leftType, termNode = rightTermNode, variable = addVariable(type, termNode, proofContext);
79
- if (variable !== null) {
80
- var leftTypeName = leftType.getName();
81
- proofContext.info("The '".concat(rightTermString, "' variable has been given the '").concat(leftTypeName, "' type."));
82
- statementVerifiedAsEquality = true;
83
- }
38
+ proofContext.info("The type of the right '".concat(rightTermString, "' term is undefined and therefore the types cannot be equated."));
84
39
  } else if (leftType === null) {
85
- var type1 = rightType, termNode1 = leftType, variable1 = addVariable(type1, termNode1, proofContext);
86
- if (variable1 !== null) {
87
- var rightTypeName = rightType.getName();
88
- proofContext.info("The '".concat(rightTermString, "' variable has been given the '").concat(rightTypeName, "' type."));
89
- statementVerifiedAsEquality = true;
90
- }
40
+ proofContext.info("The type of the left '".concat(leftTermString, "' term is undefined and therefore the types cannot be equated."));
91
41
  } else {
92
42
  var leftTypeMatchesRightType = leftType.match(rightType);
93
43
  if (!leftTypeMatchesRightType) {
94
44
  proofContext.error("The types of the '".concat(leftTermString, "' and '").concat(rightTermString, "' terms do not match and therefore the terms cannot be equated."));
95
45
  } else {
96
- var derived = proofContext.isDerived();
97
- if (!derived) {
46
+ if (!qualified) {
98
47
  statementVerifiedAsEquality = true;
99
48
  } else {
100
49
  var equality = _equality.default.fromLeftTermNodeAndRightTermNode(leftTermNode, rightTermNode), proofSteps = proofContext.getProofSteps(), equalities = equalitiesFromProofSteps(proofSteps), equalityEquates = equality.equate(equalities, proofContext);
@@ -123,17 +72,5 @@ function equalitiesFromProofSteps(proofSteps) {
123
72
  }, []);
124
73
  return equalities;
125
74
  }
126
- function addVariable(type, termNode, proofContext) {
127
- var variable = null;
128
- var variables = [], termVerifiedAsVariable = (0, _term.verifyTermAsVariable)(termNode, variables, proofContext);
129
- if (termVerifiedAsVariable) {
130
- var firstVariable = (0, _array.first)(variables);
131
- variable = firstVariable; ///
132
- var name = variable.getName();
133
- variable = _variable.default.fromTypeAndName(type, name); ///
134
- proofContext.addVariable(variable);
135
- }
136
- return variable;
137
- }
138
75
 
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50QXNFcXVhbGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEVxdWFsaXR5IGZyb20gXCIuLi9lcXVhbGl0eVwiO1xuaW1wb3J0IFZhcmlhYmxlIGZyb20gXCIuLi92YXJpYWJsZVwiO1xuaW1wb3J0IHZlcmlmeVRlcm0gZnJvbSBcIi4uL3ZlcmlmeS90ZXJtXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBmaXJzdCwgc2Vjb25kIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgdmVyaWZ5VGVybUFzVmFyaWFibGUgfSBmcm9tIFwiLi4vdmVyaWZ5L3Rlcm1cIjtcbmltcG9ydCB7IEVRVUFMU19DSEFSQUNURVIsIE1BWElNVU1fSU5ERVhFU19MRU5HVEggfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmNvbnN0IHNwZWNpYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L0BzcGVjaWFsIVwiKSxcbiAgICAgIGxlZnRUZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC90ZXJtWzBdXCIpLFxuICAgICAgcmlnaHRUZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC90ZXJtWzFdXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnRBc0VxdWFsaXR5KHN0YXRlbWVudE5vZGUsIHByb29mQ29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50VmVyaWZpZWRBc0VxdWFsaXR5ID0gZmFsc2U7XG5cbiAgcHJvb2ZDb250ZXh0LmJlZ2luKHN0YXRlbWVudE5vZGUpO1xuXG4gIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhzdGF0ZW1lbnROb2RlKTtcblxuICBwcm9vZkNvbnRleHQuZGVidWcoYFZlcmlmeWluZyB0aGUgJyR7c3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50IGFzIGFuIGVxdWFsaXR5Li4uYCk7XG5cbiAgY29uc3Qgc3BlY2lhbE5vZGUgPSBzcGVjaWFsTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpO1xuXG4gIGlmIChzcGVjaWFsTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IHNwZWNpYWxOb2RlLCAvLy9cbiAgICAgICAgICB0ZXJtaW5hbE5vZGVDb250ZW50ID0gdGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgIGlmICh0ZXJtaW5hbE5vZGVDb250ZW50ID09PSBFUVVBTFNfQ0hBUkFDVEVSKSB7XG4gICAgICBjb25zdCB0eXBlcyA9IFtdLFxuICAgICAgICAgICAgY29udGV4dCA9IHByb29mQ29udGV4dCwgIC8vL1xuICAgICAgICAgICAgbGVmdFRlcm1Ob2RlID0gbGVmdFRlcm1Ob2RlUXVlcnkoc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICByaWdodFRlcm1Ob2RlID0gcmlnaHRUZXJtTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgICAgbGVmdFRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm0obGVmdFRlcm1Ob2RlLCB0eXBlcywgY29udGV4dCksXG4gICAgICAgICAgICByaWdodFRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm0ocmlnaHRUZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpO1xuXG4gICAgICBpZiAobGVmdFRlcm1WZXJpZmllZCAmJiByaWdodFRlcm1WZXJpZmllZCkge1xuICAgICAgICBjb25zdCBmaXJzdFR5cGUgPSBmaXJzdCh0eXBlcyksXG4gICAgICAgICAgICAgIHNlY29uZFR5cGUgPSBzZWNvbmQodHlwZXMpLFxuICAgICAgICAgICAgICBsZWZ0VHlwZSA9IGZpcnN0VHlwZSwgLy8vXG4gICAgICAgICAgICAgIHJpZ2h0VHlwZSA9IHNlY29uZFR5cGUsIC8vL1xuICAgICAgICAgICAgICBsZWZ0VGVybVN0cmluZyA9IG5vZGVBc1N0cmluZyhsZWZ0VGVybU5vZGUpLFxuICAgICAgICAgICAgICByaWdodFRlcm1TdHJpbmcgPSBub2RlQXNTdHJpbmcocmlnaHRUZXJtTm9kZSk7XG5cbiAgICAgICAgaWYgKChsZWZ0VHlwZSA9PT0gbnVsbCkgJiYgKHJpZ2h0VHlwZSA9PT0gbnVsbCkpIHtcbiAgICAgICAgICBwcm9vZkNvbnRleHQuZXJyb3IoYFRoZSB0eXBlcyBvZiB0aGUgJyR7bGVmdFRlcm1TdHJpbmd9JyBhbmQgJyR7cmlnaHRUZXJtU3RyaW5nfScgdGVybXMgYXJlIGJvdGggdW5kZWZpbmVkIGFuZCB0aGVyZWZvcmUgdGhlIHRlcm1zIGNhbm5vdCBiZSBlcXVhdGVkLmApO1xuICAgICAgICB9IGVsc2UgaWYgKHJpZ2h0VHlwZSA9PT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IHR5cGUgPSBsZWZ0VHlwZSwgIC8vL1xuICAgICAgICAgICAgICAgIHRlcm1Ob2RlID0gcmlnaHRUZXJtTm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgdmFyaWFibGUgPSBhZGRWYXJpYWJsZSh0eXBlLCB0ZXJtTm9kZSwgcHJvb2ZDb250ZXh0KTtcblxuICAgICAgICAgIGlmICh2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc3QgbGVmdFR5cGVOYW1lID0gbGVmdFR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgICAgICAgICBwcm9vZkNvbnRleHQuaW5mbyhgVGhlICcke3JpZ2h0VGVybVN0cmluZ30nIHZhcmlhYmxlIGhhcyBiZWVuIGdpdmVuIHRoZSAnJHtsZWZ0VHlwZU5hbWV9JyB0eXBlLmApO1xuXG4gICAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZEFzRXF1YWxpdHkgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChsZWZ0VHlwZSA9PT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IHR5cGUgPSByaWdodFR5cGUsICAvLy9cbiAgICAgICAgICAgICAgICB0ZXJtTm9kZSA9IGxlZnRUeXBlLCAvLy9cbiAgICAgICAgICAgICAgICB2YXJpYWJsZSA9IGFkZFZhcmlhYmxlKHR5cGUsIHRlcm1Ob2RlLCBwcm9vZkNvbnRleHQpO1xuXG4gICAgICAgICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCByaWdodFR5cGVOYW1lID0gcmlnaHRUeXBlLmdldE5hbWUoKTtcblxuICAgICAgICAgICAgcHJvb2ZDb250ZXh0LmluZm8oYFRoZSAnJHtyaWdodFRlcm1TdHJpbmd9JyB2YXJpYWJsZSBoYXMgYmVlbiBnaXZlbiB0aGUgJyR7cmlnaHRUeXBlTmFtZX0nIHR5cGUuYCk7XG5cbiAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkQXNFcXVhbGl0eSA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGxlZnRUeXBlTWF0Y2hlc1JpZ2h0VHlwZSA9IGxlZnRUeXBlLm1hdGNoKHJpZ2h0VHlwZSk7XG5cbiAgICAgICAgICBpZiAoIWxlZnRUeXBlTWF0Y2hlc1JpZ2h0VHlwZSkge1xuICAgICAgICAgICAgcHJvb2ZDb250ZXh0LmVycm9yKGBUaGUgdHlwZXMgb2YgdGhlICcke2xlZnRUZXJtU3RyaW5nfScgYW5kICcke3JpZ2h0VGVybVN0cmluZ30nIHRlcm1zIGRvIG5vdCBtYXRjaCBhbmQgdGhlcmVmb3JlIHRoZSB0ZXJtcyBjYW5ub3QgYmUgZXF1YXRlZC5gKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgZGVyaXZlZCA9IHByb29mQ29udGV4dC5pc0Rlcml2ZWQoKTtcblxuICAgICAgICAgICAgaWYgKCFkZXJpdmVkKSB7XG4gICAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkQXNFcXVhbGl0eSA9IHRydWU7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBjb25zdCBlcXVhbGl0eSA9IEVxdWFsaXR5LmZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSksXG4gICAgICAgICAgICAgICAgICAgIHByb29mU3RlcHMgPSBwcm9vZkNvbnRleHQuZ2V0UHJvb2ZTdGVwcygpLFxuICAgICAgICAgICAgICAgICAgICBlcXVhbGl0aWVzID0gZXF1YWxpdGllc0Zyb21Qcm9vZlN0ZXBzKHByb29mU3RlcHMpLFxuICAgICAgICAgICAgICAgICAgICBlcXVhbGl0eUVxdWF0ZXMgPSBlcXVhbGl0eS5lcXVhdGUoZXF1YWxpdGllcywgcHJvb2ZDb250ZXh0KTtcblxuICAgICAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZEFzRXF1YWxpdHkgPSBlcXVhbGl0eUVxdWF0ZXM7ICAvLy9cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAoc3RhdGVtZW50VmVyaWZpZWRBc0VxdWFsaXR5KSB7XG4gICAgcHJvb2ZDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHtzdGF0ZW1lbnRTdHJpbmd9JyBlcXVhbGl0eS5gKTtcbiAgfVxuXG4gIHN0YXRlbWVudFZlcmlmaWVkQXNFcXVhbGl0eSA/XG4gICAgcHJvb2ZDb250ZXh0LmNvbXBsZXRlKHN0YXRlbWVudE5vZGUpIDpcbiAgICAgIHByb29mQ29udGV4dC5oYWx0KHN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZEFzRXF1YWxpdHk7XG59XG5cbmZ1bmN0aW9uIGVxdWFsaXRpZXNGcm9tUHJvb2ZTdGVwcyhwcm9vZlN0ZXBzKSB7XG4gIGNvbnN0IHN0YXJ0ID0gLU1BWElNVU1fSU5ERVhFU19MRU5HVEg7ICAvLy9cblxuICBwcm9vZlN0ZXBzID0gcHJvb2ZTdGVwcy5zbGljZShzdGFydCk7IC8vL1xuXG4gIGNvbnN0IGVxdWFsaXRpZXMgPSBwcm9vZlN0ZXBzLnJlZHVjZSgoZXF1YWxpdGllcywgcHJvb2ZTdGVwLCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IGVxdWFsaXR5ID0gRXF1YWxpdHkuZnJvbVByb29mU3RlcChwcm9vZlN0ZXApO1xuXG4gICAgaWYgKGVxdWFsaXR5ICE9PSBudWxsKSB7XG4gICAgICBlcXVhbGl0aWVzLnB1c2goZXF1YWxpdHkpO1xuICAgIH1cblxuICAgIHJldHVybiBlcXVhbGl0aWVzO1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIGVxdWFsaXRpZXM7XG59XG5cbmZ1bmN0aW9uIGFkZFZhcmlhYmxlKHR5cGUsIHRlcm1Ob2RlLCBwcm9vZkNvbnRleHQpIHtcbiAgbGV0IHZhcmlhYmxlID0gbnVsbDtcblxuICBjb25zdCB2YXJpYWJsZXMgPSBbXSxcbiAgICAgICAgdGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IHZlcmlmeVRlcm1Bc1ZhcmlhYmxlKHRlcm1Ob2RlLCB2YXJpYWJsZXMsIHByb29mQ29udGV4dCk7XG5cbiAgaWYgKHRlcm1WZXJpZmllZEFzVmFyaWFibGUpIHtcbiAgICBjb25zdCBmaXJzdFZhcmlhYmxlID0gZmlyc3QodmFyaWFibGVzKTtcblxuICAgIHZhcmlhYmxlID0gZmlyc3RWYXJpYWJsZTsgIC8vL1xuXG4gICAgY29uc3QgbmFtZSA9IHZhcmlhYmxlLmdldE5hbWUoKTtcblxuICAgIHZhcmlhYmxlID0gVmFyaWFibGUuZnJvbVR5cGVBbmROYW1lKHR5cGUsIG5hbWUpOyAgLy8vXG5cbiAgICBwcm9vZkNvbnRleHQuYWRkVmFyaWFibGUodmFyaWFibGUpO1xuICB9XG5cbiAgcmV0dXJuIHZhcmlhYmxlO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVN0YXRlbWVudEFzRXF1YWxpdHkiLCJzcGVjaWFsTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibGVmdFRlcm1Ob2RlUXVlcnkiLCJyaWdodFRlcm1Ob2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlIiwicHJvb2ZDb250ZXh0Iiwic3RhdGVtZW50VmVyaWZpZWRBc0VxdWFsaXR5IiwiYmVnaW4iLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJkZWJ1ZyIsInNwZWNpYWxOb2RlIiwidGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlQ29udGVudCIsImdldENvbnRlbnQiLCJFUVVBTFNfQ0hBUkFDVEVSIiwidHlwZXMiLCJjb250ZXh0IiwibGVmdFRlcm1Ob2RlIiwicmlnaHRUZXJtTm9kZSIsImxlZnRUZXJtVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtIiwicmlnaHRUZXJtVmVyaWZpZWQiLCJmaXJzdFR5cGUiLCJmaXJzdCIsInNlY29uZFR5cGUiLCJzZWNvbmQiLCJsZWZ0VHlwZSIsInJpZ2h0VHlwZSIsImxlZnRUZXJtU3RyaW5nIiwicmlnaHRUZXJtU3RyaW5nIiwiZXJyb3IiLCJ0eXBlIiwidGVybU5vZGUiLCJ2YXJpYWJsZSIsImFkZFZhcmlhYmxlIiwibGVmdFR5cGVOYW1lIiwiZ2V0TmFtZSIsImluZm8iLCJyaWdodFR5cGVOYW1lIiwibGVmdFR5cGVNYXRjaGVzUmlnaHRUeXBlIiwibWF0Y2giLCJkZXJpdmVkIiwiaXNEZXJpdmVkIiwiZXF1YWxpdHkiLCJFcXVhbGl0eSIsImZyb21MZWZ0VGVybU5vZGVBbmRSaWdodFRlcm1Ob2RlIiwicHJvb2ZTdGVwcyIsImdldFByb29mU3RlcHMiLCJlcXVhbGl0aWVzIiwiZXF1YWxpdGllc0Zyb21Qcm9vZlN0ZXBzIiwiZXF1YWxpdHlFcXVhdGVzIiwiZXF1YXRlIiwiY29tcGxldGUiLCJoYWx0Iiwic3RhcnQiLCJNQVhJTVVNX0lOREVYRVNfTEVOR1RIIiwic2xpY2UiLCJyZWR1Y2UiLCJwcm9vZlN0ZXAiLCJpbmRleCIsImZyb21Qcm9vZlN0ZXAiLCJwdXNoIiwidmFyaWFibGVzIiwidGVybVZlcmlmaWVkQXNWYXJpYWJsZSIsInZlcmlmeVRlcm1Bc1ZhcmlhYmxlIiwiZmlyc3RWYXJpYWJsZSIsIm5hbWUiLCJWYXJpYWJsZSIsImZyb21UeXBlQW5kTmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7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
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50QXNFcXVhbGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEVxdWFsaXR5IGZyb20gXCIuLi9lcXVhbGl0eVwiO1xuaW1wb3J0IHZlcmlmeVRlcm0gZnJvbSBcIi4uL3ZlcmlmeS90ZXJtXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBmaXJzdCwgc2Vjb25kIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgRVFVQUxTX0NIQVJBQ1RFUiwgTUFYSU1VTV9JTkRFWEVTX0xFTkdUSCB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcblxuY29uc3Qgc3BlY2lhbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvQHNwZWNpYWwhXCIpLFxuICAgICAgbGVmdFRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L3Rlcm1bMF1cIiksXG4gICAgICByaWdodFRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L3Rlcm1bMV1cIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVN0YXRlbWVudEFzRXF1YWxpdHkoc3RhdGVtZW50Tm9kZSwgcXVhbGlmaWVkLCBwcm9vZkNvbnRleHQpIHtcbiAgbGV0IHN0YXRlbWVudFZlcmlmaWVkQXNFcXVhbGl0eSA9IGZhbHNlO1xuXG4gIHByb29mQ29udGV4dC5iZWdpbihzdGF0ZW1lbnROb2RlKTtcblxuICBjb25zdCBzdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgcHJvb2ZDb250ZXh0LmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke3N0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudCBhcyBhbiBlcXVhbGl0eS4uLmApO1xuXG4gIGNvbnN0IHNwZWNpYWxOb2RlID0gc3BlY2lhbE5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKTtcblxuICBpZiAoc3BlY2lhbE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBzcGVjaWFsTm9kZSwgLy8vXG4gICAgICAgICAgdGVybWluYWxOb2RlQ29udGVudCA9IHRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCk7XG5cbiAgICBpZiAodGVybWluYWxOb2RlQ29udGVudCA9PT0gRVFVQUxTX0NIQVJBQ1RFUikge1xuICAgICAgY29uc3QgdHlwZXMgPSBbXSxcbiAgICAgICAgICAgIGNvbnRleHQgPSBwcm9vZkNvbnRleHQsICAvLy9cbiAgICAgICAgICAgIGxlZnRUZXJtTm9kZSA9IGxlZnRUZXJtTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgICAgcmlnaHRUZXJtTm9kZSA9IHJpZ2h0VGVybU5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICAgIGxlZnRUZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKGxlZnRUZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpLFxuICAgICAgICAgICAgcmlnaHRUZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHJpZ2h0VGVybU5vZGUsIHR5cGVzLCBjb250ZXh0KTtcblxuICAgICAgaWYgKGxlZnRUZXJtVmVyaWZpZWQgJiYgcmlnaHRUZXJtVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgZmlyc3RUeXBlID0gZmlyc3QodHlwZXMpLFxuICAgICAgICAgICAgICBzZWNvbmRUeXBlID0gc2Vjb25kKHR5cGVzKSxcbiAgICAgICAgICAgICAgbGVmdFR5cGUgPSBmaXJzdFR5cGUsIC8vL1xuICAgICAgICAgICAgICByaWdodFR5cGUgPSBzZWNvbmRUeXBlLCAvLy9cbiAgICAgICAgICAgICAgbGVmdFRlcm1TdHJpbmcgPSBub2RlQXNTdHJpbmcobGVmdFRlcm1Ob2RlKSxcbiAgICAgICAgICAgICAgcmlnaHRUZXJtU3RyaW5nID0gbm9kZUFzU3RyaW5nKHJpZ2h0VGVybU5vZGUpO1xuXG4gICAgICAgIGlmICgobGVmdFR5cGUgPT09IG51bGwpICYmIChyaWdodFR5cGUgPT09IG51bGwpKSB7XG4gICAgICAgICAgcHJvb2ZDb250ZXh0LmVycm9yKGBUaGUgdHlwZXMgb2YgdGhlICcke2xlZnRUZXJtU3RyaW5nfScgYW5kICcke3JpZ2h0VGVybVN0cmluZ30nIHRlcm1zIGFyZSBib3RoIHVuZGVmaW5lZCBhbmQgdGhlcmVmb3JlIHRoZSB0ZXJtcyBjYW5ub3QgYmUgZXF1YXRlZC5gKTtcbiAgICAgICAgfSBlbHNlIGlmIChyaWdodFR5cGUgPT09IG51bGwpIHtcbiAgICAgICAgICBwcm9vZkNvbnRleHQuaW5mbyhgVGhlIHR5cGUgb2YgdGhlIHJpZ2h0ICcke3JpZ2h0VGVybVN0cmluZ30nIHRlcm0gaXMgdW5kZWZpbmVkIGFuZCB0aGVyZWZvcmUgdGhlIHR5cGVzIGNhbm5vdCBiZSBlcXVhdGVkLmApO1xuICAgICAgICB9IGVsc2UgaWYgKGxlZnRUeXBlID09PSBudWxsKSB7XG4gICAgICAgICAgcHJvb2ZDb250ZXh0LmluZm8oYFRoZSB0eXBlIG9mIHRoZSBsZWZ0ICcke2xlZnRUZXJtU3RyaW5nfScgdGVybSBpcyB1bmRlZmluZWQgYW5kIHRoZXJlZm9yZSB0aGUgdHlwZXMgY2Fubm90IGJlIGVxdWF0ZWQuYCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgbGVmdFR5cGVNYXRjaGVzUmlnaHRUeXBlID0gbGVmdFR5cGUubWF0Y2gocmlnaHRUeXBlKTtcblxuICAgICAgICAgIGlmICghbGVmdFR5cGVNYXRjaGVzUmlnaHRUeXBlKSB7XG4gICAgICAgICAgICBwcm9vZkNvbnRleHQuZXJyb3IoYFRoZSB0eXBlcyBvZiB0aGUgJyR7bGVmdFRlcm1TdHJpbmd9JyBhbmQgJyR7cmlnaHRUZXJtU3RyaW5nfScgdGVybXMgZG8gbm90IG1hdGNoIGFuZCB0aGVyZWZvcmUgdGhlIHRlcm1zIGNhbm5vdCBiZSBlcXVhdGVkLmApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXF1YWxpZmllZCkge1xuICAgICAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZEFzRXF1YWxpdHkgPSB0cnVlO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgY29uc3QgZXF1YWxpdHkgPSBFcXVhbGl0eS5mcm9tTGVmdFRlcm1Ob2RlQW5kUmlnaHRUZXJtTm9kZShsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUpLFxuICAgICAgICAgICAgICAgICAgICBwcm9vZlN0ZXBzID0gcHJvb2ZDb250ZXh0LmdldFByb29mU3RlcHMoKSxcbiAgICAgICAgICAgICAgICAgICAgZXF1YWxpdGllcyA9IGVxdWFsaXRpZXNGcm9tUHJvb2ZTdGVwcyhwcm9vZlN0ZXBzKSxcbiAgICAgICAgICAgICAgICAgICAgZXF1YWxpdHlFcXVhdGVzID0gZXF1YWxpdHkuZXF1YXRlKGVxdWFsaXRpZXMsIHByb29mQ29udGV4dCk7XG5cbiAgICAgICAgICAgICAgc3RhdGVtZW50VmVyaWZpZWRBc0VxdWFsaXR5ID0gZXF1YWxpdHlFcXVhdGVzOyAgLy8vXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHN0YXRlbWVudFZlcmlmaWVkQXNFcXVhbGl0eSkge1xuICAgIHByb29mQ29udGV4dC5pbmZvKGBWZXJpZmllZCB0aGUgJyR7c3RhdGVtZW50U3RyaW5nfScgZXF1YWxpdHkuYCk7XG4gIH1cblxuICBzdGF0ZW1lbnRWZXJpZmllZEFzRXF1YWxpdHkgP1xuICAgIHByb29mQ29udGV4dC5jb21wbGV0ZShzdGF0ZW1lbnROb2RlKSA6XG4gICAgICBwcm9vZkNvbnRleHQuaGFsdChzdGF0ZW1lbnROb2RlKTtcblxuICByZXR1cm4gc3RhdGVtZW50VmVyaWZpZWRBc0VxdWFsaXR5O1xufVxuXG5mdW5jdGlvbiBlcXVhbGl0aWVzRnJvbVByb29mU3RlcHMocHJvb2ZTdGVwcykge1xuICBjb25zdCBzdGFydCA9IC1NQVhJTVVNX0lOREVYRVNfTEVOR1RIOyAgLy8vXG5cbiAgcHJvb2ZTdGVwcyA9IHByb29mU3RlcHMuc2xpY2Uoc3RhcnQpOyAvLy9cblxuICBjb25zdCBlcXVhbGl0aWVzID0gcHJvb2ZTdGVwcy5yZWR1Y2UoKGVxdWFsaXRpZXMsIHByb29mU3RlcCwgaW5kZXgpID0+IHtcbiAgICBjb25zdCBlcXVhbGl0eSA9IEVxdWFsaXR5LmZyb21Qcm9vZlN0ZXAocHJvb2ZTdGVwKTtcblxuICAgIGlmIChlcXVhbGl0eSAhPT0gbnVsbCkge1xuICAgICAgZXF1YWxpdGllcy5wdXNoKGVxdWFsaXR5KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZXF1YWxpdGllcztcbiAgfSwgW10pO1xuXG4gIHJldHVybiBlcXVhbGl0aWVzO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVN0YXRlbWVudEFzRXF1YWxpdHkiLCJzcGVjaWFsTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibGVmdFRlcm1Ob2RlUXVlcnkiLCJyaWdodFRlcm1Ob2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlIiwicXVhbGlmaWVkIiwicHJvb2ZDb250ZXh0Iiwic3RhdGVtZW50VmVyaWZpZWRBc0VxdWFsaXR5IiwiYmVnaW4iLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJkZWJ1ZyIsInNwZWNpYWxOb2RlIiwidGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlQ29udGVudCIsImdldENvbnRlbnQiLCJFUVVBTFNfQ0hBUkFDVEVSIiwidHlwZXMiLCJjb250ZXh0IiwibGVmdFRlcm1Ob2RlIiwicmlnaHRUZXJtTm9kZSIsImxlZnRUZXJtVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtIiwicmlnaHRUZXJtVmVyaWZpZWQiLCJmaXJzdFR5cGUiLCJmaXJzdCIsInNlY29uZFR5cGUiLCJzZWNvbmQiLCJsZWZ0VHlwZSIsInJpZ2h0VHlwZSIsImxlZnRUZXJtU3RyaW5nIiwicmlnaHRUZXJtU3RyaW5nIiwiZXJyb3IiLCJpbmZvIiwibGVmdFR5cGVNYXRjaGVzUmlnaHRUeXBlIiwibWF0Y2giLCJlcXVhbGl0eSIsIkVxdWFsaXR5IiwiZnJvbUxlZnRUZXJtTm9kZUFuZFJpZ2h0VGVybU5vZGUiLCJwcm9vZlN0ZXBzIiwiZ2V0UHJvb2ZTdGVwcyIsImVxdWFsaXRpZXMiLCJlcXVhbGl0aWVzRnJvbVByb29mU3RlcHMiLCJlcXVhbGl0eUVxdWF0ZXMiLCJlcXVhdGUiLCJjb21wbGV0ZSIsImhhbHQiLCJzdGFydCIsIk1BWElNVU1fSU5ERVhFU19MRU5HVEgiLCJzbGljZSIsInJlZHVjZSIsInByb29mU3RlcCIsImluZGV4IiwiZnJvbVByb29mU3RlcCIsInB1c2giXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWNBOzs7ZUFBd0JBOzs7NkRBWkg7eURBQ0U7cUJBRUc7c0JBQ0c7cUJBQ0M7eUJBQzJCOzs7Ozs7QUFFekQsSUFBTUMsbUJBQW1CQyxJQUFBQSxnQkFBUyxFQUFDLHlCQUM3QkMsb0JBQW9CRCxJQUFBQSxnQkFBUyxFQUFDLHVCQUM5QkUscUJBQXFCRixJQUFBQSxnQkFBUyxFQUFDO0FBRXRCLFNBQVNGLDBCQUEwQkssYUFBYSxFQUFFQyxTQUFTLEVBQUVDLFlBQVksRUFBRTtJQUN4RixJQUFJQyw4QkFBOEIsS0FBSztJQUV2Q0QsYUFBYUUsS0FBSyxDQUFDSjtJQUVuQixJQUFNSyxrQkFBa0JDLElBQUFBLG9CQUFZLEVBQUNOO0lBRXJDRSxhQUFhSyxLQUFLLENBQUMsQUFBQyxrQkFBaUMsT0FBaEJGLGlCQUFnQjtJQUVyRCxJQUFNRyxjQUFjWixpQkFBaUJJO0lBRXJDLElBQUlRLGdCQUFnQixJQUFJLEVBQUU7UUFDeEIsSUFBTUMsZUFBZUQsYUFDZkUsc0JBQXNCRCxhQUFhRSxVQUFVO1FBRW5ELElBQUlELHdCQUF3QkUsMkJBQWdCLEVBQUU7WUFDNUMsSUFBTUMsUUFBUSxFQUFFLEVBQ1ZDLFVBQVVaLGNBQ1Zh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
@@ -19,7 +19,7 @@ function _interopRequireDefault(obj) {
19
19
  };
20
20
  }
21
21
  var termNodeQuery = (0, _query.nodeQuery)("/typeAssertion/term"), typeNodeQuery = (0, _query.nodeQuery)("/typeAssertion/type"), typeAssertionNodeQuery = (0, _query.nodeQuery)("/statement/typeAssertion!");
22
- function verifyStatementTypeAssertion(statementNode, proofContext) {
22
+ function verifyStatementTypeAssertion(statementNode, qualified, proofContext) {
23
23
  var statementTypeAssertionVerified = false;
24
24
  proofContext.begin(statementNode);
25
25
  var statementString = (0, _string.nodeAsString)(statementNode);
@@ -30,12 +30,12 @@ function verifyStatementTypeAssertion(statementNode, proofContext) {
30
30
  if (!typePresent) {
31
31
  proofContext.error("The ".concat(typeName, " type is not present."));
32
32
  } else {
33
- var context = proofContext, termNode = termNodeQuery(typeAssertionNode), variables = [], termVerifiedAsVariable = (0, _term.verifyTermAsVariable)(termNode, variables, context);
34
- if (termVerifiedAsVariable) {
35
- var variableTypeAssertionVerified = verifyVariableTypeAssertion(typeAssertionNode, proofContext);
33
+ if (!statementTypeAssertionVerified) {
34
+ var variableTypeAssertionVerified = verifyVariableTypeAssertion(typeAssertionNode, qualified, proofContext);
36
35
  statementTypeAssertionVerified = variableTypeAssertionVerified; ///
37
- } else {
38
- var termTypeAssertionVerified = verifyTermTypeAssertion(typeAssertionNode, proofContext);
36
+ }
37
+ if (!statementTypeAssertionVerified) {
38
+ var termTypeAssertionVerified = verifyTermTypeAssertion(typeAssertionNode, qualified, proofContext);
39
39
  statementTypeAssertionVerified = termTypeAssertionVerified; ///
40
40
  }
41
41
  }
@@ -46,37 +46,39 @@ function verifyStatementTypeAssertion(statementNode, proofContext) {
46
46
  statementTypeAssertionVerified ? proofContext.complete(statementNode) : proofContext.halt(statementNode);
47
47
  return statementTypeAssertionVerified;
48
48
  }
49
- function verifyTermTypeAssertion(typeAssertionNode, proofContext) {
49
+ function verifyVariableTypeAssertion(typeAssertionNode, qualified, proofContext) {
50
+ var variableTypeAssertionVerified = false;
51
+ var context = proofContext, variables = [], termNode = termNodeQuery(typeAssertionNode), termVerifiedAsVariable = (0, _term.verifyTermAsVariable)(termNode, variables, context);
52
+ if (termVerifiedAsVariable) {
53
+ var typeNode = typeNodeQuery(typeAssertionNode), typeName = (0, _query.typeNameFromTypeNode)(typeNode), assertedTypeName = typeName, assertedType = proofContext.findTypeByTypeName(assertedTypeName), firstVariable = (0, _array.first)(variables), variable = firstVariable, variableName = variable.getName(), variableType = variable.getType();
54
+ var assertedTypeEqualToOrSubTypeOfVariableType = variableType === null ? true : assertedType.isEqualToOrSubTypeOf(variableType);
55
+ if (!assertedTypeEqualToOrSubTypeOfVariableType) {
56
+ proofContext.error("The asserted type is not equal to or a sub-type of the '".concat(variableName, "' variable type."));
57
+ } else {
58
+ if (!qualified) {
59
+ var type = assertedType, name = variableName, variable1 = _variable.default.fromTypeAndName(type, name);
60
+ proofContext.addVariable(variable1);
61
+ }
62
+ variableTypeAssertionVerified = true;
63
+ }
64
+ }
65
+ return variableTypeAssertionVerified;
66
+ }
67
+ function verifyTermTypeAssertion(typeAssertionNode, qualified, proofContext) {
50
68
  var termTypeAssertionVerified = false;
51
69
  var types = [], context = proofContext, termNode = termNodeQuery(typeAssertionNode), termVerifiedAgainstConstructors = (0, _term.verifyTermAgainstConstructors)(termNode, types, context);
52
70
  if (termVerifiedAgainstConstructors) {
53
- var typeNode = typeNodeQuery(typeAssertionNode), typeName = (0, _query.typeNameFromTypeNode)(typeNode), assertedTypeName = typeName, assertedType = proofContext.findTypeByTypeName(assertedTypeName), firstType = (0, _array.first)(types), termType = firstType, assertedTypeEqualToOrSubTypeOfTermType = assertedType.isEqualToOrSubTypeOf(termType);
71
+ var typeNode = typeNodeQuery(typeAssertionNode), typeName = (0, _query.typeNameFromTypeNode)(typeNode), assertedTypeName = typeName, assertedType = proofContext.findTypeByTypeName(assertedTypeName), firstType = (0, _array.first)(types), termType = firstType, termString = (0, _string.nodeAsString)(termNode), assertedTypeEqualToOrSubTypeOfTermType = termType === null ? true : assertedType.isEqualToOrSubTypeOf(termType);
54
72
  if (!assertedTypeEqualToOrSubTypeOfTermType) {
55
- var termString = (0, _string.nodeAsString)(termNode);
56
73
  proofContext.error("The asserted type is not equal to or a sub-type of the '".concat(termString, "' term type."));
57
74
  } else {
75
+ if (!qualified) {
76
+ debugger;
77
+ }
58
78
  termTypeAssertionVerified = true;
59
79
  }
60
80
  }
61
81
  return termTypeAssertionVerified;
62
82
  }
63
- function verifyVariableTypeAssertion(typeAssertionNode, proofContext) {
64
- var variableTypeAssertionVerified = false;
65
- var context = proofContext, variables = [], termNode = termNodeQuery(typeAssertionNode);
66
- (0, _term.verifyTermAsVariable)(termNode, variables, context);
67
- var typeNode = typeNodeQuery(typeAssertionNode), typeName = (0, _query.typeNameFromTypeNode)(typeNode), assertedTypeName = typeName, assertedType = proofContext.findTypeByTypeName(assertedTypeName), firstVariable = (0, _array.first)(variables), variable = firstVariable, variableName = variable.getName(), variableType = variable.getType();
68
- var assertedTypeEqualToOrSubTypeOfVariableType = variableType === null ? true : assertedType.isEqualToOrSubTypeOf(variableType);
69
- if (!assertedTypeEqualToOrSubTypeOfVariableType) {
70
- proofContext.error("The asserted type is not equal to or a sub-type of the '".concat(variableName, "' variable type."));
71
- } else {
72
- var derived = proofContext.isDerived();
73
- if (!derived) {
74
- var type = assertedType, name = variableName, variable1 = _variable.default.fromTypeAndName(type, name);
75
- proofContext.addVariable(variable1);
76
- }
77
- variableTypeAssertionVerified = true;
78
- }
79
- return variableTypeAssertionVerified;
80
- }
81
83
 
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50VHlwZUFzc2VydGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFZhcmlhYmxlIGZyb20gXCIuLi92YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgdmVyaWZ5VGVybUFzVmFyaWFibGUsIHZlcmlmeVRlcm1BZ2FpbnN0Q29uc3RydWN0b3JzIH0gZnJvbSBcIi4uL3ZlcmlmeS90ZXJtXCI7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdHlwZUFzc2VydGlvbi90ZXJtXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90eXBlQXNzZXJ0aW9uL3R5cGVcIiksXG4gICAgICB0eXBlQXNzZXJ0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC90eXBlQXNzZXJ0aW9uIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5U3RhdGVtZW50VHlwZUFzc2VydGlvbihzdGF0ZW1lbnROb2RlLCBwcm9vZkNvbnRleHQpIHtcbiAgbGV0IHN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIHByb29mQ29udGV4dC5iZWdpbihzdGF0ZW1lbnROb2RlKTtcblxuICBjb25zdCBzdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgcHJvb2ZDb250ZXh0LmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke3N0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudCB0eXBlIGFzc2VydGlvbi4uLmApO1xuXG4gIGNvbnN0IHR5cGVBc3NlcnRpb25Ob2RlID0gdHlwZUFzc2VydGlvbk5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKTtcblxuICBpZiAodHlwZUFzc2VydGlvbk5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkodHlwZUFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIHR5cGVOYW1lID0gdHlwZU5hbWVGcm9tVHlwZU5vZGUodHlwZU5vZGUpLFxuICAgICAgICAgIHR5cGVQcmVzZW50ID0gcHJvb2ZDb250ZXh0LmlzVHlwZVByZXNlbnRCeVR5cGVOYW1lKHR5cGVOYW1lKTtcblxuICAgIGlmICghdHlwZVByZXNlbnQpIHtcbiAgICAgIHByb29mQ29udGV4dC5lcnJvcihgVGhlICR7dHlwZU5hbWV9IHR5cGUgaXMgbm90IHByZXNlbnQuYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNvbnRleHQgPSBwcm9vZkNvbnRleHQsIC8vL1xuICAgICAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KHR5cGVBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICAgIHZhcmlhYmxlcyA9IFtdLFxuICAgICAgICAgICAgdGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IHZlcmlmeVRlcm1Bc1ZhcmlhYmxlKHRlcm1Ob2RlLCB2YXJpYWJsZXMsIGNvbnRleHQpO1xuXG4gICAgICBpZiAodGVybVZlcmlmaWVkQXNWYXJpYWJsZSkge1xuICAgICAgICBjb25zdCB2YXJpYWJsZVR5cGVBc3NlcnRpb25WZXJpZmllZCA9IHZlcmlmeVZhcmlhYmxlVHlwZUFzc2VydGlvbih0eXBlQXNzZXJ0aW9uTm9kZSwgcHJvb2ZDb250ZXh0KTtcblxuICAgICAgICBzdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uVmVyaWZpZWQgPSB2YXJpYWJsZVR5cGVBc3NlcnRpb25WZXJpZmllZDsgIC8vL1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgdGVybVR5cGVBc3NlcnRpb25WZXJpZmllZCA9IHZlcmlmeVRlcm1UeXBlQXNzZXJ0aW9uKHR5cGVBc3NlcnRpb25Ob2RlLCBwcm9vZkNvbnRleHQpO1xuXG4gICAgICAgIHN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZCA9IHRlcm1UeXBlQXNzZXJ0aW9uVmVyaWZpZWQ7ICAvLy9cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAoc3RhdGVtZW50VHlwZUFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgcHJvb2ZDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHtzdGF0ZW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnQgdHlwZSBhc3NlcnRpb24uYCk7XG4gIH1cblxuICBzdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uVmVyaWZpZWQgP1xuICAgIHByb29mQ29udGV4dC5jb21wbGV0ZShzdGF0ZW1lbnROb2RlKSA6XG4gICAgICBwcm9vZkNvbnRleHQuaGFsdChzdGF0ZW1lbnROb2RlKTtcblxuICByZXR1cm4gc3RhdGVtZW50VHlwZUFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlUZXJtVHlwZUFzc2VydGlvbih0eXBlQXNzZXJ0aW9uTm9kZSwgcHJvb2ZDb250ZXh0KSB7XG4gIGxldCB0ZXJtVHlwZUFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgdHlwZXMgPSBbXSxcbiAgICAgICAgY29udGV4dCA9IHByb29mQ29udGV4dCwgLy8vXG4gICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeSh0eXBlQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgIHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvcnMgPSB2ZXJpZnlUZXJtQWdhaW5zdENvbnN0cnVjdG9ycyh0ZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpO1xuXG4gIGlmICh0ZXJtVmVyaWZpZWRBZ2FpbnN0Q29uc3RydWN0b3JzKSB7XG4gICAgY29uc3QgdHlwZU5vZGUgPSB0eXBlTm9kZVF1ZXJ5KHR5cGVBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICB0eXBlTmFtZSA9IHR5cGVOYW1lRnJvbVR5cGVOb2RlKHR5cGVOb2RlKSxcbiAgICAgICAgICBhc3NlcnRlZFR5cGVOYW1lID0gdHlwZU5hbWUsICAvLy9cbiAgICAgICAgICBhc3NlcnRlZFR5cGUgPSBwcm9vZkNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKGFzc2VydGVkVHlwZU5hbWUpLFxuICAgICAgICAgIGZpcnN0VHlwZSA9IGZpcnN0KHR5cGVzKSxcbiAgICAgICAgICB0ZXJtVHlwZSA9IGZpcnN0VHlwZSxcbiAgICAgICAgICBhc3NlcnRlZFR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUZXJtVHlwZSA9IGFzc2VydGVkVHlwZS5pc0VxdWFsVG9PclN1YlR5cGVPZih0ZXJtVHlwZSk7XG5cbiAgICBpZiAoIWFzc2VydGVkVHlwZUVxdWFsVG9PclN1YlR5cGVPZlRlcm1UeXBlKSB7XG4gICAgICBjb25zdCB0ZXJtU3RyaW5nID0gbm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgICAgcHJvb2ZDb250ZXh0LmVycm9yKGBUaGUgYXNzZXJ0ZWQgdHlwZSBpcyBub3QgZXF1YWwgdG8gb3IgYSBzdWItdHlwZSBvZiB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gdHlwZS5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGVybVR5cGVBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRlcm1UeXBlQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVZhcmlhYmxlVHlwZUFzc2VydGlvbih0eXBlQXNzZXJ0aW9uTm9kZSwgcHJvb2ZDb250ZXh0KSB7XG4gIGxldCB2YXJpYWJsZVR5cGVBc3NlcnRpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGNvbnRleHQgPSBwcm9vZkNvbnRleHQsIC8vL1xuICAgICAgICB2YXJpYWJsZXMgPSBbXSxcbiAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KHR5cGVBc3NlcnRpb25Ob2RlKTtcblxuICB2ZXJpZnlUZXJtQXNWYXJpYWJsZSh0ZXJtTm9kZSwgdmFyaWFibGVzLCBjb250ZXh0KTtcblxuICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkodHlwZUFzc2VydGlvbk5vZGUpLFxuICAgICAgICB0eXBlTmFtZSA9IHR5cGVOYW1lRnJvbVR5cGVOb2RlKHR5cGVOb2RlKSxcbiAgICAgICAgYXNzZXJ0ZWRUeXBlTmFtZSA9IHR5cGVOYW1lLCAgLy8vXG4gICAgICAgIGFzc2VydGVkVHlwZSA9IHByb29mQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUoYXNzZXJ0ZWRUeXBlTmFtZSksXG4gICAgICAgIGZpcnN0VmFyaWFibGUgPSBmaXJzdCh2YXJpYWJsZXMpLFxuICAgICAgICB2YXJpYWJsZSA9IGZpcnN0VmFyaWFibGUsIC8vL1xuICAgICAgICB2YXJpYWJsZU5hbWUgPSB2YXJpYWJsZS5nZXROYW1lKCksXG4gICAgICAgIHZhcmlhYmxlVHlwZSA9IHZhcmlhYmxlLmdldFR5cGUoKTtcblxuICBjb25zdCBhc3NlcnRlZFR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZWYXJpYWJsZVR5cGUgPSAodmFyaWFibGVUeXBlID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgOiAgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0ZWRUeXBlLmlzRXF1YWxUb09yU3ViVHlwZU9mKHZhcmlhYmxlVHlwZSk7XG5cbiAgaWYgKCFhc3NlcnRlZFR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZWYXJpYWJsZVR5cGUpIHtcbiAgICBwcm9vZkNvbnRleHQuZXJyb3IoYFRoZSBhc3NlcnRlZCB0eXBlIGlzIG5vdCBlcXVhbCB0byBvciBhIHN1Yi10eXBlIG9mIHRoZSAnJHt2YXJpYWJsZU5hbWV9JyB2YXJpYWJsZSB0eXBlLmApO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGRlcml2ZWQgPSBwcm9vZkNvbnRleHQuaXNEZXJpdmVkKCk7XG5cbiAgICBpZiAoIWRlcml2ZWQpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBhc3NlcnRlZFR5cGUsICAvLy9cbiAgICAgICAgICAgIG5hbWUgPSB2YXJpYWJsZU5hbWUsICAvLy9cbiAgICAgICAgICAgIHZhcmlhYmxlID0gVmFyaWFibGUuZnJvbVR5cGVBbmROYW1lKHR5cGUsIG5hbWUpO1xuXG4gICAgICBwcm9vZkNvbnRleHQuYWRkVmFyaWFibGUodmFyaWFibGUpO1xuICAgIH1cblxuICAgIHZhcmlhYmxlVHlwZUFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiB2YXJpYWJsZVR5cGVBc3NlcnRpb25WZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uIiwidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVOb2RlUXVlcnkiLCJ0eXBlQXNzZXJ0aW9uTm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZSIsInByb29mQ29udGV4dCIsInN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZCIsImJlZ2luIiwic3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiZGVidWciLCJ0eXBlQXNzZXJ0aW9uTm9kZSIsInR5cGVOb2RlIiwidHlwZU5hbWUiLCJ0eXBlTmFtZUZyb21UeXBlTm9kZSIsInR5cGVQcmVzZW50IiwiaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUiLCJlcnJvciIsImNvbnRleHQiLCJ0ZXJtTm9kZSIsInZhcmlhYmxlcyIsInRlcm1WZXJpZmllZEFzVmFyaWFibGUiLCJ2ZXJpZnlUZXJtQXNWYXJpYWJsZSIsInZhcmlhYmxlVHlwZUFzc2VydGlvblZlcmlmaWVkIiwidmVyaWZ5VmFyaWFibGVUeXBlQXNzZXJ0aW9uIiwidGVybVR5cGVBc3NlcnRpb25WZXJpZmllZCIsInZlcmlmeVRlcm1UeXBlQXNzZXJ0aW9uIiwiaW5mbyIsImNvbXBsZXRlIiwiaGFsdCIsInR5cGVzIiwidGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9ycyIsInZlcmlmeVRlcm1BZ2FpbnN0Q29uc3RydWN0b3JzIiwiYXNzZXJ0ZWRUeXBlTmFtZSIsImFzc2VydGVkVHlwZSIsImZpbmRUeXBlQnlUeXBlTmFtZSIsImZpcnN0VHlwZSIsImZpcnN0IiwidGVybVR5cGUiLCJhc3NlcnRlZFR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUZXJtVHlwZSIsImlzRXF1YWxUb09yU3ViVHlwZU9mIiwidGVybVN0cmluZyIsImZpcnN0VmFyaWFibGUiLCJ2YXJpYWJsZSIsInZhcmlhYmxlTmFtZSIsImdldE5hbWUiLCJ2YXJpYWJsZVR5cGUiLCJnZXRUeXBlIiwiYXNzZXJ0ZWRUeXBlRXF1YWxUb09yU3ViVHlwZU9mVmFyaWFibGVUeXBlIiwiZGVyaXZlZCIsImlzRGVyaXZlZCIsInR5cGUiLCJuYW1lIiwiVmFyaWFibGUiLCJmcm9tVHlwZUFuZE5hbWUiLCJhZGRWYXJpYWJsZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBYUE7OztlQUF3QkE7Ozs2REFYSDtxQkFFQztzQkFDTztxQkFDbUI7b0JBQ29COzs7Ozs7QUFFcEUsSUFBTUMsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLHdCQUMxQkMsZ0JBQWdCRCxJQUFBQSxnQkFBUyxFQUFDLHdCQUMxQkUseUJBQXlCRixJQUFBQSxnQkFBUyxFQUFDO0FBRTFCLFNBQVNGLDZCQUE2QkssYUFBYSxFQUFFQyxZQUFZLEVBQUU7SUFDaEYsSUFBSUMsaUNBQWlDLEtBQUs7SUFFMUNELGFBQWFFLEtBQUssQ0FBQ0g7SUFFbkIsSUFBTUksa0JBQWtCQyxJQUFBQSxvQkFBWSxFQUFDTDtJQUVyQ0MsYUFBYUssS0FBSyxDQUFDLEFBQUMsa0JBQWlDLE9BQWhCRixpQkFBZ0I7SUFFckQsSUFBTUcsb0JBQW9CUix1QkFBdUJDO0lBRWpELElBQUlPLHNCQUFzQixJQUFJLEVBQUU7UUFDOUIs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
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50VHlwZUFzc2VydGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFZhcmlhYmxlIGZyb20gXCIuLi92YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgdmVyaWZ5VGVybUFzVmFyaWFibGUsIHZlcmlmeVRlcm1BZ2FpbnN0Q29uc3RydWN0b3JzIH0gZnJvbSBcIi4uL3ZlcmlmeS90ZXJtXCI7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdHlwZUFzc2VydGlvbi90ZXJtXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90eXBlQXNzZXJ0aW9uL3R5cGVcIiksXG4gICAgICB0eXBlQXNzZXJ0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC90eXBlQXNzZXJ0aW9uIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5U3RhdGVtZW50VHlwZUFzc2VydGlvbihzdGF0ZW1lbnROb2RlLCBxdWFsaWZpZWQsIHByb29mQ29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50VHlwZUFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgcHJvb2ZDb250ZXh0LmJlZ2luKHN0YXRlbWVudE5vZGUpO1xuXG4gIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhzdGF0ZW1lbnROb2RlKTtcblxuICBwcm9vZkNvbnRleHQuZGVidWcoYFZlcmlmeWluZyB0aGUgJyR7c3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50IHR5cGUgYXNzZXJ0aW9uLi4uYCk7XG5cbiAgY29uc3QgdHlwZUFzc2VydGlvbk5vZGUgPSB0eXBlQXNzZXJ0aW9uTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpO1xuXG4gIGlmICh0eXBlQXNzZXJ0aW9uTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeSh0eXBlQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZSh0eXBlTm9kZSksXG4gICAgICAgICAgdHlwZVByZXNlbnQgPSBwcm9vZkNvbnRleHQuaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gICAgaWYgKCF0eXBlUHJlc2VudCkge1xuICAgICAgcHJvb2ZDb250ZXh0LmVycm9yKGBUaGUgJHt0eXBlTmFtZX0gdHlwZSBpcyBub3QgcHJlc2VudC5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFzdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgdmFyaWFibGVUeXBlQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlWYXJpYWJsZVR5cGVBc3NlcnRpb24odHlwZUFzc2VydGlvbk5vZGUsIHF1YWxpZmllZCwgcHJvb2ZDb250ZXh0KTtcblxuICAgICAgICBzdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uVmVyaWZpZWQgPSB2YXJpYWJsZVR5cGVBc3NlcnRpb25WZXJpZmllZDsgIC8vL1xuICAgICAgfVxuXG4gICAgICBpZiAoIXN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgICBjb25zdCB0ZXJtVHlwZUFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5VGVybVR5cGVBc3NlcnRpb24odHlwZUFzc2VydGlvbk5vZGUsIHF1YWxpZmllZCwgcHJvb2ZDb250ZXh0KTtcblxuICAgICAgICBzdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uVmVyaWZpZWQgPSB0ZXJtVHlwZUFzc2VydGlvblZlcmlmaWVkOyAgLy8vXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZCkge1xuICAgIHByb29mQ29udGV4dC5pbmZvKGBWZXJpZmllZCB0aGUgJyR7c3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50IHR5cGUgYXNzZXJ0aW9uLmApO1xuICB9XG5cbiAgc3RhdGVtZW50VHlwZUFzc2VydGlvblZlcmlmaWVkID9cbiAgICBwcm9vZkNvbnRleHQuY29tcGxldGUoc3RhdGVtZW50Tm9kZSkgOlxuICAgICAgcHJvb2ZDb250ZXh0LmhhbHQoc3RhdGVtZW50Tm9kZSk7XG5cbiAgcmV0dXJuIHN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5VmFyaWFibGVUeXBlQXNzZXJ0aW9uKHR5cGVBc3NlcnRpb25Ob2RlLCBxdWFsaWZpZWQsIHByb29mQ29udGV4dCkge1xuICBsZXQgdmFyaWFibGVUeXBlQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBjb250ZXh0ID0gcHJvb2ZDb250ZXh0LCAvLy9cbiAgICAgICAgdmFyaWFibGVzID0gW10sXG4gICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeSh0eXBlQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgIHRlcm1WZXJpZmllZEFzVmFyaWFibGUgPSB2ZXJpZnlUZXJtQXNWYXJpYWJsZSh0ZXJtTm9kZSwgdmFyaWFibGVzLCBjb250ZXh0KTtcblxuICBpZiAodGVybVZlcmlmaWVkQXNWYXJpYWJsZSkge1xuICAgIGNvbnN0IHR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeSh0eXBlQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZSh0eXBlTm9kZSksXG4gICAgICAgICAgYXNzZXJ0ZWRUeXBlTmFtZSA9IHR5cGVOYW1lLCAgLy8vXG4gICAgICAgICAgYXNzZXJ0ZWRUeXBlID0gcHJvb2ZDb250ZXh0LmZpbmRUeXBlQnlUeXBlTmFtZShhc3NlcnRlZFR5cGVOYW1lKSxcbiAgICAgICAgICBmaXJzdFZhcmlhYmxlID0gZmlyc3QodmFyaWFibGVzKSxcbiAgICAgICAgICB2YXJpYWJsZSA9IGZpcnN0VmFyaWFibGUsIC8vL1xuICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHZhcmlhYmxlLmdldE5hbWUoKSxcbiAgICAgICAgICB2YXJpYWJsZVR5cGUgPSB2YXJpYWJsZS5nZXRUeXBlKCk7XG5cbiAgICBjb25zdCBhc3NlcnRlZFR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZWYXJpYWJsZVR5cGUgPSAodmFyaWFibGVUeXBlID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlIDogLy8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydGVkVHlwZS5pc0VxdWFsVG9PclN1YlR5cGVPZih2YXJpYWJsZVR5cGUpO1xuXG4gICAgaWYgKCFhc3NlcnRlZFR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZWYXJpYWJsZVR5cGUpIHtcbiAgICAgIHByb29mQ29udGV4dC5lcnJvcihgVGhlIGFzc2VydGVkIHR5cGUgaXMgbm90IGVxdWFsIHRvIG9yIGEgc3ViLXR5cGUgb2YgdGhlICcke3ZhcmlhYmxlTmFtZX0nIHZhcmlhYmxlIHR5cGUuYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghcXVhbGlmaWVkKSB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBhc3NlcnRlZFR5cGUsICAvLy9cbiAgICAgICAgICAgICAgbmFtZSA9IHZhcmlhYmxlTmFtZSwgIC8vL1xuICAgICAgICAgICAgICB2YXJpYWJsZSA9IFZhcmlhYmxlLmZyb21UeXBlQW5kTmFtZSh0eXBlLCBuYW1lKTtcblxuICAgICAgICBwcm9vZkNvbnRleHQuYWRkVmFyaWFibGUodmFyaWFibGUpO1xuICAgICAgfVxuXG4gICAgICB2YXJpYWJsZVR5cGVBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHZhcmlhYmxlVHlwZUFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlUZXJtVHlwZUFzc2VydGlvbih0eXBlQXNzZXJ0aW9uTm9kZSwgcXVhbGlmaWVkLCBwcm9vZkNvbnRleHQpIHtcbiAgbGV0IHRlcm1UeXBlQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCB0eXBlcyA9IFtdLFxuICAgICAgICBjb250ZXh0ID0gcHJvb2ZDb250ZXh0LCAvLy9cbiAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KHR5cGVBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgdGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9ycyA9IHZlcmlmeVRlcm1BZ2FpbnN0Q29uc3RydWN0b3JzKHRlcm1Ob2RlLCB0eXBlcywgY29udGV4dCk7XG5cbiAgaWYgKHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvcnMpIHtcbiAgICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkodHlwZUFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIHR5cGVOYW1lID0gdHlwZU5hbWVGcm9tVHlwZU5vZGUodHlwZU5vZGUpLFxuICAgICAgICAgIGFzc2VydGVkVHlwZU5hbWUgPSB0eXBlTmFtZSwgIC8vL1xuICAgICAgICAgIGFzc2VydGVkVHlwZSA9IHByb29mQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUoYXNzZXJ0ZWRUeXBlTmFtZSksXG4gICAgICAgICAgZmlyc3RUeXBlID0gZmlyc3QodHlwZXMpLFxuICAgICAgICAgIHRlcm1UeXBlID0gZmlyc3RUeXBlLFxuICAgICAgICAgIHRlcm1TdHJpbmcgPSBub2RlQXNTdHJpbmcodGVybU5vZGUpLFxuICAgICAgICAgIGFzc2VydGVkVHlwZUVxdWFsVG9PclN1YlR5cGVPZlRlcm1UeXBlID0gKHRlcm1UeXBlID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgOiAvLy9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRlZFR5cGUuaXNFcXVhbFRvT3JTdWJUeXBlT2YodGVybVR5cGUpO1xuXG4gICAgaWYgKCFhc3NlcnRlZFR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUZXJtVHlwZSkge1xuICAgICAgcHJvb2ZDb250ZXh0LmVycm9yKGBUaGUgYXNzZXJ0ZWQgdHlwZSBpcyBub3QgZXF1YWwgdG8gb3IgYSBzdWItdHlwZSBvZiB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gdHlwZS5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFxdWFsaWZpZWQpIHtcbiAgICAgICAgZGVidWdnZXJcbiAgICAgIH1cblxuICAgICAgdGVybVR5cGVBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRlcm1UeXBlQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnRUeXBlQXNzZXJ0aW9uIiwidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVOb2RlUXVlcnkiLCJ0eXBlQXNzZXJ0aW9uTm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZSIsInF1YWxpZmllZCIsInByb29mQ29udGV4dCIsInN0YXRlbWVudFR5cGVBc3NlcnRpb25WZXJpZmllZCIsImJlZ2luIiwic3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiZGVidWciLCJ0eXBlQXNzZXJ0aW9uTm9kZSIsInR5cGVOb2RlIiwidHlwZU5hbWUiLCJ0eXBlTmFtZUZyb21UeXBlTm9kZSIsInR5cGVQcmVzZW50IiwiaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUiLCJlcnJvciIsInZhcmlhYmxlVHlwZUFzc2VydGlvblZlcmlmaWVkIiwidmVyaWZ5VmFyaWFibGVUeXBlQXNzZXJ0aW9uIiwidGVybVR5cGVBc3NlcnRpb25WZXJpZmllZCIsInZlcmlmeVRlcm1UeXBlQXNzZXJ0aW9uIiwiaW5mbyIsImNvbXBsZXRlIiwiaGFsdCIsImNvbnRleHQiLCJ2YXJpYWJsZXMiLCJ0ZXJtTm9kZSIsInRlcm1WZXJpZmllZEFzVmFyaWFibGUiLCJ2ZXJpZnlUZXJtQXNWYXJpYWJsZSIsImFzc2VydGVkVHlwZU5hbWUiLCJhc3NlcnRlZFR5cGUiLCJmaW5kVHlwZUJ5VHlwZU5hbWUiLCJmaXJzdFZhcmlhYmxlIiwiZmlyc3QiLCJ2YXJpYWJsZSIsInZhcmlhYmxlTmFtZSIsImdldE5hbWUiLCJ2YXJpYWJsZVR5cGUiLCJnZXRUeXBlIiwiYXNzZXJ0ZWRUeXBlRXF1YWxUb09yU3ViVHlwZU9mVmFyaWFibGVUeXBlIiwiaXNFcXVhbFRvT3JTdWJUeXBlT2YiLCJ0eXBlIiwibmFtZSIsIlZhcmlhYmxlIiwiZnJvbVR5cGVBbmROYW1lIiwiYWRkVmFyaWFibGUiLCJ0eXBlcyIsInRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvcnMiLCJ2ZXJpZnlUZXJtQWdhaW5zdENvbnN0cnVjdG9ycyIsImZpcnN0VHlwZSIsInRlcm1UeXBlIiwidGVybVN0cmluZyIsImFzc2VydGVkVHlwZUVxdWFsVG9PclN1YlR5cGVPZlRlcm1UeXBlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFhQTs7O2VBQXdCQTs7OzZEQVhIO3FCQUVDO3NCQUNPO3FCQUNtQjtvQkFDb0I7Ozs7OztBQUVwRSxJQUFNQyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsd0JBQzFCQyxnQkFBZ0JELElBQUFBLGdCQUFTLEVBQUMsd0JBQzFCRSx5QkFBeUJGLElBQUFBLGdCQUFTLEVBQUM7QUFFMUIsU0FBU0YsNkJBQTZCSyxhQUFhLEVBQUVDLFNBQVMsRUFBRUMsWUFBWSxFQUFFO0lBQzNGLElBQUlDLGlDQUFpQyxLQUFLO0lBRTFDRCxhQUFhRSxLQUFLLENBQUNKO0lBRW5CLElB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
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-verify-cli",
3
3
  "author": "James Smith",
4
- "version": "0.0.490",
4
+ "version": "0.0.491",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-verify-cli",
7
7
  "description": "Occam's Verifier",
@@ -12,9 +12,9 @@
12
12
  "dependencies": {
13
13
  "argumentative": "^2.0.21",
14
14
  "necessary": "^11.2.1",
15
- "occam-custom-grammars": "^5.0.379",
15
+ "occam-custom-grammars": "^5.0.380",
16
16
  "occam-dom": "^3.1.1",
17
- "occam-file-system": "^5.0.138",
17
+ "occam-file-system": "^5.0.139",
18
18
  "occam-grammar-utilities": "^7.0.66"
19
19
  },
20
20
  "devDependencies": {
@@ -7,9 +7,8 @@ import callbacksMixins from "../mixins/callbacks";
7
7
  import { last } from "../utilities/array";
8
8
 
9
9
  class MetaproofContext {
10
- constructor(context, derived, metaproofSteps) {
10
+ constructor(context, metaproofSteps) {
11
11
  this.context = context;
12
- this.derived = derived;
13
12
  this.metaproofSteps = metaproofSteps;
14
13
  }
15
14
 
@@ -17,10 +16,6 @@ class MetaproofContext {
17
16
  return this.context;
18
17
  }
19
18
 
20
- isDerived() {
21
- return this.derived;
22
- }
23
-
24
19
  getMetaproofSteps() {
25
20
  let metaproofSteps = this.context.getMetaproofSteps();
26
21
 
@@ -44,14 +39,6 @@ class MetaproofContext {
44
39
  return lastMetaproofStep;
45
40
  }
46
41
 
47
- setDerived(derived = true) {
48
- this.derived = derived;
49
- }
50
-
51
- resetDerived() {
52
- this.derived = false;
53
- }
54
-
55
42
  addMetaproofStep(metaproofStep) {
56
43
  this.metaproofSteps.push(metaproofStep);
57
44
  }
@@ -76,19 +63,17 @@ class MetaproofContext {
76
63
 
77
64
  static fromFileContext(fileContext) {
78
65
  const context = fileContext, ///
79
- derived = false,
80
66
  metaproofSteps = [],
81
- metaproofContext = new MetaproofContext(context, derived, metaproofSteps);
67
+ metaproofContext = new MetaproofContext(context, metaproofSteps);
82
68
 
83
69
  return metaproofContext;
84
70
  }
85
71
 
86
72
  static fromMetaproofContext(metaproofContext) {
87
73
  const context = metaproofContext, ///
88
- derived = false,
89
74
  metaproofSteps = [];
90
75
 
91
- metaproofContext = new MetaproofContext(context, derived, metaproofSteps); ///
76
+ metaproofContext = new MetaproofContext(context, metaproofSteps); ///
92
77
 
93
78
  return metaproofContext;
94
79
  }
@@ -7,9 +7,8 @@ import callbacksMixins from "../mixins/callbacks";
7
7
  import { push, last } from "../utilities/array";
8
8
 
9
9
  class ProofContext {
10
- constructor(context, derived, variables, proofSteps) {
10
+ constructor(context, variables, proofSteps) {
11
11
  this.context = context;
12
- this.derived = derived;
13
12
  this.variables = variables;
14
13
  this.proofSteps = proofSteps;
15
14
  }
@@ -18,10 +17,6 @@ class ProofContext {
18
17
  return this.context;
19
18
  }
20
19
 
21
- isDerived() {
22
- return this.derived;
23
- }
24
-
25
20
  getProofSteps() {
26
21
  let proofSteps = this.context.getProofSteps();
27
22
 
@@ -63,14 +58,6 @@ class ProofContext {
63
58
  return lastProofStep;
64
59
  }
65
60
 
66
- setDerived(derived = true) {
67
- this.derived = derived;
68
- }
69
-
70
- resetDerived() {
71
- this.derived = false;
72
- }
73
-
74
61
  addVariable(variable) {
75
62
  this.variables.push(variable);
76
63
  }
@@ -136,21 +123,19 @@ class ProofContext {
136
123
 
137
124
  static fromFileContext(fileContext) {
138
125
  const context = fileContext, ///
139
- derived = false,
140
126
  variables = [],
141
127
  proofSteps = [],
142
- proofContext = new ProofContext(context, derived, variables, proofSteps);
128
+ proofContext = new ProofContext(context, variables, proofSteps);
143
129
 
144
130
  return proofContext;
145
131
  }
146
132
 
147
133
  static fromProofContext(proofContext) {
148
134
  const context = proofContext, ///
149
- derived = false,
150
135
  variables = [],
151
136
  proofSteps = [];
152
137
 
153
- proofContext = new ProofContext(context, derived, variables, proofSteps);
138
+ proofContext = new ProofContext(context, variables, proofSteps);
154
139
 
155
140
  return proofContext;
156
141
  }
@@ -5,6 +5,7 @@ import Antecedent from "../antecedent";
5
5
 
6
6
  import { nodeQuery } from "../utilities/query";
7
7
  import { nodeAsString } from "../utilities/string";
8
+ import verifyStatement from "./statement";
8
9
 
9
10
  const statementNodeQuery = nodeQuery("/antecedent/unqualifiedStatement!/statement!");
10
11
 
@@ -20,12 +21,17 @@ export default function verifyAntecedent(antecedentNode, antecedents, proofConte
20
21
  const statementNode = statementNodeQuery(antecedentNode);
21
22
 
22
23
  if (statementNode !== null) {
23
- const proofStep = ProofStep.fromStatementNode(statementNode),
24
- antecedent = Antecedent.fromStatementNode(statementNode);
24
+ const qualified = false,
25
+ statementVerified = verifyStatement(statementNode, qualified, proofContext);
25
26
 
26
- antecedents.push(antecedent);
27
+ if (statementVerified) {
28
+ const proofStep = ProofStep.fromStatementNode(statementNode),
29
+ antecedent = Antecedent.fromStatementNode(statementNode);
27
30
 
28
- proofContext.addProofStep(proofStep);
31
+ antecedents.push(antecedent);
32
+
33
+ proofContext.addProofStep(proofStep);
34
+ }
29
35
 
30
36
  antecedentVerified = true;
31
37
  }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ import verifyPremise from "../verify/premise";
3
4
  import verifyConclusion from "../verify/conclusion";
4
- import verifyPrmise from "../verify/premise";
5
5
 
6
6
  import { nodeQuery, nodesQuery } from "../utilities/query";
7
7
 
@@ -16,7 +16,7 @@ export default function verifyConditionalInference(conditionalInferenceNode, pre
16
16
  const conclusionNode = conclusionNodeQuery(conditionalInferenceNode),
17
17
  premiseNodes = premisesNodeQuery(conditionalInferenceNode),
18
18
  premisesVerified = premiseNodes.every((premiseNode) => {
19
- const premiseVerified = verifyPrmise(premiseNode, premises, metaproofContext);
19
+ const premiseVerified = verifyPremise(premiseNode, premises, metaproofContext);
20
20
 
21
21
  if (premiseVerified) {
22
22
  return true;
@@ -18,8 +18,6 @@ export default function verifyDerivation(derivationNode, proofContext) {
18
18
 
19
19
  proofContext.begin(derivationNode);
20
20
 
21
- proofContext.setDerived();
22
-
23
21
  const childNodes = childNodesQuery(derivationNode);
24
22
 
25
23
  derivationVerified = childNodes.every((childNode) => { ///
@@ -30,8 +28,6 @@ export default function verifyDerivation(derivationNode, proofContext) {
30
28
  }
31
29
  });
32
30
 
33
- proofContext.resetDerived();
34
-
35
31
  derivationVerified ?
36
32
  proofContext.complete(derivationNode) :
37
33
  proofContext.halt(derivationNode);
@@ -44,8 +40,6 @@ function verifySubDerivation(subDerivationNode, proofContext) {
44
40
 
45
41
  proofContext.begin(subDerivationNode);
46
42
 
47
- proofContext.setDerived();
48
-
49
43
  const childNodes = childNodesQuery(subDerivationNode);
50
44
 
51
45
  derivationVerified = childNodes.every((childNode) => { ///
@@ -56,8 +50,6 @@ function verifySubDerivation(subDerivationNode, proofContext) {
56
50
  }
57
51
  });
58
52
 
59
- proofContext.resetDerived();
60
-
61
53
  derivationVerified ?
62
54
  proofContext.complete(subDerivationNode) :
63
55
  proofContext.halt(subDerivationNode);
@@ -18,8 +18,6 @@ export default function verifyMetaDerivation(metaDerivationNode, metaproofContex
18
18
 
19
19
  metaproofContext.begin(metaDerivationNode);
20
20
 
21
- metaproofContext.setDerived();
22
-
23
21
  const childNodes = childNodesQuery(metaDerivationNode);
24
22
 
25
23
  metaDerivationVerified = childNodes.every((childNode) => { ///
@@ -30,8 +28,6 @@ export default function verifyMetaDerivation(metaDerivationNode, metaproofContex
30
28
  }
31
29
  });
32
30
 
33
- metaproofContext.resetDerived();
34
-
35
31
  metaDerivationVerified ?
36
32
  metaproofContext.complete(metaDerivationNode) :
37
33
  metaproofContext.halt(metaDerivationNode);
@@ -44,8 +40,6 @@ function verifyMetaSubDerivation(metaSubDerivationNode, metaproofContext) {
44
40
 
45
41
  metaproofContext.begin(metaSubDerivationNode);
46
42
 
47
- metaproofContext.setDerived();
48
-
49
43
  const childNodes = childNodesQuery(metaSubDerivationNode);
50
44
 
51
45
  metaDerivationVerified = childNodes.every((childNode) => { ///
@@ -56,8 +50,6 @@ function verifyMetaSubDerivation(metaSubDerivationNode, metaproofContext) {
56
50
  }
57
51
  });
58
52
 
59
- metaproofContext.resetDerived();
60
-
61
53
  metaDerivationVerified ?
62
54
  metaproofContext.complete(metaSubDerivationNode) :
63
55
  metaproofContext.halt(metaSubDerivationNode);
@@ -72,17 +64,17 @@ function verifyMetaSubproof(metaSubproofNode, metaproofContext) {
72
64
 
73
65
  const unqualifiedMetastatementNodes = unqualifiedMetastatementNodesQuery(metaSubproofNode),
74
66
  unqualifiedMetastatementsVerified = unqualifiedMetastatementNodes.every((unqualifiedMetastatementNode) => {
75
- const unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, metaproofContext);
67
+ const unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, metaproofContext);
76
68
 
77
- if (unqualifiedMetastatementVerified) {
78
- return true;
79
- }
80
- });
69
+ if (unqualifiedMetastatementVerified) {
70
+ return true;
71
+ }
72
+ });
81
73
 
82
74
  if (unqualifiedMetastatementsVerified) {
83
75
  unqualifiedMetastatementNodes.forEach((unqualifiedMetastatementNode) => {
84
76
  const metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode),
85
- metaproofStep = MetaproofStep.fromMetastatementNode(metastatementNode);
77
+ metaproofStep = MetaproofStep.fromMetastatementNode(metastatementNode);
86
78
 
87
79
  metaproofContext.addMetaproofStep(metaproofStep);
88
80
  });