occam-verify-cli 0.0.919 → 0.0.921

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/lib/utilities/verify.js +22 -6
  2. package/lib/verifier/nodes/metaLevel.js +22 -2
  3. package/lib/verify/metaLemma.js +2 -2
  4. package/lib/verify/metaSubproof.js +3 -3
  5. package/lib/verify/metaSupposition.js +2 -2
  6. package/lib/verify/metaproof.js +4 -4
  7. package/lib/verify/metastatement.js +5 -1
  8. package/lib/verify/metastatementAsContainedAssertion.js +109 -0
  9. package/lib/verify/metastatementAsDefinedAssertion.js +132 -0
  10. package/lib/verify/metatheorem.js +2 -2
  11. package/lib/verify/premise.js +2 -2
  12. package/lib/verify/rule.js +9 -8
  13. package/lib/verify/statementAsContainedAssertion.js +15 -20
  14. package/package.json +4 -4
  15. package/src/utilities/verify.js +20 -4
  16. package/src/verifier/nodes/metaLevel.js +32 -1
  17. package/src/verify/metaLemma.js +2 -1
  18. package/src/verify/metaSubproof.js +3 -3
  19. package/src/verify/metaSupposition.js +1 -2
  20. package/src/verify/metaproof.js +5 -6
  21. package/src/verify/metastatement.js +4 -0
  22. package/src/verify/metastatementAsContainedAssertion.js +127 -0
  23. package/src/verify/metastatementAsDefinedAssertion.js +156 -0
  24. package/src/verify/metatheorem.js +2 -1
  25. package/src/verify/premise.js +1 -2
  26. package/src/verify/rule.js +11 -8
  27. package/src/verify/statementAsContainedAssertion.js +21 -26
  28. package/lib/verify/ruleDerivation.js +0 -31
  29. package/lib/verify/ruleProof.js +0 -32
  30. package/lib/verify/ruleProofStep.js +0 -98
  31. package/lib/verify/ruleSubDerivation.js +0 -25
  32. package/lib/verify/ruleSubproof.js +0 -35
  33. package/src/verify/ruleDerivation.js +0 -23
  34. package/src/verify/ruleProof.js +0 -31
  35. package/src/verify/ruleProofStep.js +0 -139
  36. package/src/verify/ruleSubDerivation.js +0 -22
  37. package/src/verify/ruleSubproof.js +0 -34
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ default: function() {
13
+ return verifyMetastatementAsDefinedAssertion;
14
+ },
15
+ isMetastatementDefinedAssertion: function() {
16
+ return isMetastatementDefinedAssertion;
17
+ }
18
+ });
19
+ var _term = /*#__PURE__*/ _interop_require_default(require("./term"));
20
+ var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../verifier/node/metaLevel"));
21
+ var _array = require("../utilities/array");
22
+ var _constants = require("../constants");
23
+ var _query = require("../utilities/query");
24
+ var _verify = require("../utilities/verify");
25
+ function _interop_require_default(obj) {
26
+ return obj && obj.__esModule ? obj : {
27
+ default: obj
28
+ };
29
+ }
30
+ var termNodeQuery = (0, _query.nodeQuery)("/metastatement/term!"), variableNodeQuery = (0, _query.nodeQuery)("/metastatement/term/variable!"), operatorTerminalNodesQuery = (0, _query.nodesQuery)("/metastatement/@operator");
31
+ function verifyMetastatementAsDefinedAssertion(metastatementNode, assignments, derived, localContext) {
32
+ var metastatementVerifiedAsDefinedAssertion = false;
33
+ var metastatementDefinedAssertion = isMetastatementDefinedAssertion(metastatementNode);
34
+ if (metastatementDefinedAssertion) {
35
+ var metastatementString = localContext.nodeAsString(metastatementNode);
36
+ localContext.trace("Verifying the '".concat(metastatementString, "' metastatement as a defined assertion..."), metastatementNode);
37
+ var definedAssertionFunctions = [
38
+ verifyDerivedMetastatementAsDefinedAssertion,
39
+ verifyStatedMetastatementAsDefinedAssertion
40
+ ];
41
+ metastatementVerifiedAsDefinedAssertion = definedAssertionFunctions.some(function(definedAssertionFunction) {
42
+ var metastatementVerifiedAsDefinedAssertion = definedAssertionFunction(metastatementNode, assignments, derived, localContext);
43
+ if (metastatementVerifiedAsDefinedAssertion) {
44
+ return true;
45
+ }
46
+ });
47
+ if (metastatementVerifiedAsDefinedAssertion) {
48
+ localContext.debug("...verified the '".concat(metastatementString, "' metastatement as a defined assertion."), metastatementNode);
49
+ }
50
+ }
51
+ return metastatementVerifiedAsDefinedAssertion;
52
+ }
53
+ function verifyDerivedMetastatementAsDefinedAssertion(metastatementNode, assignments, derived, localContext) {
54
+ var derivedMetastatementVerifiedAsDefeindAssertion = false;
55
+ if (derived) {
56
+ var metastatementString = localContext.nodeAsString(metastatementNode);
57
+ localContext.trace("Verifying the derived '".concat(metastatementString, "' metastatement as a defined assertion..."), metastatementNode);
58
+ var metastatementNegated = (0, _verify.isMetastatementNegated)(metastatementNode), variableNode = variableNodeQuery(metastatementNode), termNode = termNodeQuery(metastatementNode);
59
+ if (false) {
60
+ ///
61
+ } else if (variableNode !== null) {
62
+ var variable = localContext.findVariableByVariableNode(variableNode);
63
+ if (variable !== null) {
64
+ var variableDefined = localContext.isVariableDefined(variable);
65
+ if (!metastatementNegated) {
66
+ if (variableDefined) {
67
+ derivedMetastatementVerifiedAsDefeindAssertion = true;
68
+ }
69
+ }
70
+ if (metastatementNegated) {
71
+ if (!variableDefined) {
72
+ derivedMetastatementVerifiedAsDefeindAssertion = true;
73
+ }
74
+ }
75
+ }
76
+ } else if (termNode !== null) {
77
+ var terms = [], termVerified = (0, _term.default)(termNode, terms, localContext, function() {
78
+ var verifiedAhead = true;
79
+ return verifiedAhead;
80
+ });
81
+ if (termVerified) {
82
+ var firstTerm = (0, _array.first)(terms), term = firstTerm, termGrounded = localContext.isTermGrounded(term);
83
+ if (!metastatementNegated) {
84
+ if (termGrounded) {
85
+ derivedMetastatementVerifiedAsDefeindAssertion = true;
86
+ }
87
+ }
88
+ if (metastatementNegated) {
89
+ if (!termGrounded) {
90
+ derivedMetastatementVerifiedAsDefeindAssertion = true;
91
+ }
92
+ }
93
+ }
94
+ }
95
+ if (derivedMetastatementVerifiedAsDefeindAssertion) {
96
+ localContext.debug("...verified the derived '".concat(metastatementString, "' metastatement as a defined assertion."), metastatementNode);
97
+ }
98
+ }
99
+ return derivedMetastatementVerifiedAsDefeindAssertion;
100
+ }
101
+ function verifyStatedMetastatementAsDefinedAssertion(metastatementNode, assignments, derived, localContext) {
102
+ var statedMetastatementVerifiedAsDefinedAssertion = false;
103
+ if (!derived) {
104
+ var metastatementString = localContext.nodeAsString(metastatementNode);
105
+ localContext.trace("Verifying the stated '".concat(metastatementString, "' metastatement as a defined assertion..."), metastatementNode);
106
+ var intrinsicLevel = localContext.isIntrinsicLevel();
107
+ if (intrinsicLevel) {
108
+ localContext.debug("The stated '".concat(metastatementString, "' metastatement as a defined assertion cannot be verified at intrinsic level."), metastatementNode);
109
+ } else {
110
+ var nonTerminalNode = metastatementNode, nonTerminalNodeVerified = _metaLevel.default.verifyNonTerminalNode(nonTerminalNode, localContext, function() {
111
+ var verifiedAhead = true;
112
+ return verifiedAhead;
113
+ });
114
+ statedMetastatementVerifiedAsDefinedAssertion = nonTerminalNodeVerified; ///
115
+ }
116
+ if (statedMetastatementVerifiedAsDefinedAssertion) {
117
+ localContext.debug("...verified the stated '".concat(metastatementString, "' metastatement as a defined assertion."), metastatementNode);
118
+ }
119
+ }
120
+ return statedMetastatementVerifiedAsDefinedAssertion;
121
+ }
122
+ function isMetastatementDefinedAssertion(metastatementNode) {
123
+ var operatorTerminalNodes = operatorTerminalNodesQuery(metastatementNode), metastatementDefinedAssertion = operatorTerminalNodes.some(function(operatorTerminalNode) {
124
+ var content = operatorTerminalNode.getContent(), contentDefined = content === _constants.DEFINED;
125
+ if (contentDefined) {
126
+ return true;
127
+ }
128
+ });
129
+ return metastatementDefinedAssertion;
130
+ }
131
+
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudEFzRGVmaW5lZEFzc2VydGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVRlcm0gZnJvbSBcIi4vdGVybVwiO1xuaW1wb3J0IG1ldGFMZXZlbE5vZGVWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXIvbm9kZS9tZXRhTGV2ZWxcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBERUZJTkVEIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgaXNNZXRhc3RhdGVtZW50TmVnYXRlZCB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmVyaWZ5XCI7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXN0YXRlbWVudC90ZXJtIVwiKSxcbiAgICAgIHZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFzdGF0ZW1lbnQvdGVybS92YXJpYWJsZSFcIiksXG4gICAgICBvcGVyYXRvclRlcm1pbmFsTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvbWV0YXN0YXRlbWVudC9Ab3BlcmF0b3JcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeU1ldGFzdGF0ZW1lbnRBc0RlZmluZWRBc3NlcnRpb24obWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZEFzc2VydGlvbiA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFzdGF0ZW1lbnREZWZpbmVkQXNzZXJ0aW9uID0gaXNNZXRhc3RhdGVtZW50RGVmaW5lZEFzc2VydGlvbihtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnREZWZpbmVkQXNzZXJ0aW9uKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGEgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zID0gW1xuICAgICAgdmVyaWZ5RGVyaXZlZE1ldGFzdGF0ZW1lbnRBc0RlZmluZWRBc3NlcnRpb24sXG4gICAgICB2ZXJpZnlTdGF0ZWRNZXRhc3RhdGVtZW50QXNEZWZpbmVkQXNzZXJ0aW9uXG4gICAgXTtcblxuICAgIG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZEFzc2VydGlvbiA9IGRlZmluZWRBc3NlcnRpb25GdW5jdGlvbnMuc29tZSgoZGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9uKSA9PiB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24gPSBkZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24obWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZEFzc2VydGlvbikge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIG1ldGFzdGF0ZW1lbnQgYXMgYSBkZWZpbmVkIGFzc2VydGlvbi5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZEFzc2VydGlvbjtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZE1ldGFzdGF0ZW1lbnRBc0RlZmluZWRBc3NlcnRpb24obWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc0RlZmVpbmRBc3NlcnRpb24gPSBmYWxzZTtcblxuICBpZiAoZGVyaXZlZCkge1xuICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSBkZXJpdmVkICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGEgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBtZXRhc3RhdGVtZW50TmVnYXRlZCA9IGlzTWV0YXN0YXRlbWVudE5lZ2F0ZWQobWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKHZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKTtcblxuICAgICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHZhcmlhYmxlRGVmaW5lZCA9IGxvY2FsQ29udGV4dC5pc1ZhcmlhYmxlRGVmaW5lZCh2YXJpYWJsZSk7XG5cbiAgICAgICAgaWYgKCFtZXRhc3RhdGVtZW50TmVnYXRlZCkge1xuICAgICAgICAgIGlmICh2YXJpYWJsZURlZmluZWQpIHtcbiAgICAgICAgICAgIGRlcml2ZWRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc0RlZmVpbmRBc3NlcnRpb24gPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtZXRhc3RhdGVtZW50TmVnYXRlZCkge1xuICAgICAgICAgIGlmICghdmFyaWFibGVEZWZpbmVkKSB7XG4gICAgICAgICAgICBkZXJpdmVkTWV0YXN0YXRlbWVudFZlcmlmaWVkQXNEZWZlaW5kQXNzZXJ0aW9uID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRlcm1Ob2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB0ZXJtcyA9IFtdLFxuICAgICAgICAgICAgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdGVybXMsIGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBpZiAodGVybVZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IGZpcnN0VGVybSA9IGZpcnN0KHRlcm1zKSxcbiAgICAgICAgICAgICAgdGVybSA9IGZpcnN0VGVybSwgLy8vXG4gICAgICAgICAgICAgIHRlcm1Hcm91bmRlZCA9IGxvY2FsQ29udGV4dC5pc1Rlcm1Hcm91bmRlZCh0ZXJtKTtcblxuICAgICAgICBpZiAoIW1ldGFzdGF0ZW1lbnROZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKHRlcm1Hcm91bmRlZCkge1xuICAgICAgICAgICAgZGVyaXZlZE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzRGVmZWluZEFzc2VydGlvbiA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG1ldGFzdGF0ZW1lbnROZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKCF0ZXJtR3JvdW5kZWQpIHtcbiAgICAgICAgICAgIGRlcml2ZWRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc0RlZmVpbmRBc3NlcnRpb24gPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChkZXJpdmVkTWV0YXN0YXRlbWVudFZlcmlmaWVkQXNEZWZlaW5kQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSBkZXJpdmVkICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGEgZGVmaW5lZCBhc3NlcnRpb24uYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkTWV0YXN0YXRlbWVudFZlcmlmaWVkQXNEZWZlaW5kQXNzZXJ0aW9uO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWRNZXRhc3RhdGVtZW50QXNEZWZpbmVkQXNzZXJ0aW9uKG1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24gPSBmYWxzZTtcblxuICBpZiAoIWRlcml2ZWQpIHtcbiAgICBjb25zdCBtZXRhc3RhdGVtZW50U3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgc3RhdGVkICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGEgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBpbnRyaW5zaWNMZXZlbCA9IGxvY2FsQ29udGV4dC5pc0ludHJpbnNpY0xldmVsKCk7XG5cbiAgICBpZiAoaW50cmluc2ljTGV2ZWwpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgVGhlIHN0YXRlZCAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIGRlZmluZWQgYXNzZXJ0aW9uIGNhbm5vdCBiZSB2ZXJpZmllZCBhdCBpbnRyaW5zaWMgbGV2ZWwuYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG1ldGFMZXZlbE5vZGVWZXJpZmllci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBsb2NhbENvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgc3RhdGVkTWV0YXN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQXNzZXJ0aW9uID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICAgIH1cblxuICAgIGlmIChzdGF0ZWRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24pIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlIHN0YXRlZCAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIGRlZmluZWQgYXNzZXJ0aW9uLmAsIG1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkTWV0YXN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQXNzZXJ0aW9uO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNNZXRhc3RhdGVtZW50RGVmaW5lZEFzc2VydGlvbihtZXRhc3RhdGVtZW50Tm9kZSkge1xuICBjb25zdCBvcGVyYXRvclRlcm1pbmFsTm9kZXMgPSBvcGVyYXRvclRlcm1pbmFsTm9kZXNRdWVyeShtZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgIG1ldGFzdGF0ZW1lbnREZWZpbmVkQXNzZXJ0aW9uID0gb3BlcmF0b3JUZXJtaW5hbE5vZGVzLnNvbWUoKG9wZXJhdG9yVGVybWluYWxOb2RlKSA9PiB7XG4gICAgICAgICAgY29uc3QgY29udGVudCA9IG9wZXJhdG9yVGVybWluYWxOb2RlLmdldENvbnRlbnQoKSxcbiAgICAgICAgICAgICAgICBjb250ZW50RGVmaW5lZCA9IChjb250ZW50ID09PSBERUZJTkVEKTtcblxuICAgICAgICAgIGlmIChjb250ZW50RGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICByZXR1cm4gbWV0YXN0YXRlbWVudERlZmluZWRBc3NlcnRpb247XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5TWV0YXN0YXRlbWVudEFzRGVmaW5lZEFzc2VydGlvbiIsImlzTWV0YXN0YXRlbWVudERlZmluZWRBc3NlcnRpb24iLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidmFyaWFibGVOb2RlUXVlcnkiLCJvcGVyYXRvclRlcm1pbmFsTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsIm1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZEFzc2VydGlvbiIsIm1ldGFzdGF0ZW1lbnREZWZpbmVkQXNzZXJ0aW9uIiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwiZGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyIsInZlcmlmeURlcml2ZWRNZXRhc3RhdGVtZW50QXNEZWZpbmVkQXNzZXJ0aW9uIiwidmVyaWZ5U3RhdGVkTWV0YXN0YXRlbWVudEFzRGVmaW5lZEFzc2VydGlvbiIsInNvbWUiLCJkZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24iLCJkZWJ1ZyIsImRlcml2ZWRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc0RlZmVpbmRBc3NlcnRpb24iLCJtZXRhc3RhdGVtZW50TmVnYXRlZCIsImlzTWV0YXN0YXRlbWVudE5lZ2F0ZWQiLCJ2YXJpYWJsZU5vZGUiLCJ0ZXJtTm9kZSIsInZhcmlhYmxlIiwiZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUiLCJ2YXJpYWJsZURlZmluZWQiLCJpc1ZhcmlhYmxlRGVmaW5lZCIsInRlcm1zIiwidGVybVZlcmlmaWVkIiwidmVyaWZ5VGVybSIsInZlcmlmaWVkQWhlYWQiLCJmaXJzdFRlcm0iLCJmaXJzdCIsInRlcm0iLCJ0ZXJtR3JvdW5kZWQiLCJpc1Rlcm1Hcm91bmRlZCIsInN0YXRlZE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZEFzc2VydGlvbiIsImludHJpbnNpY0xldmVsIiwiaXNJbnRyaW5zaWNMZXZlbCIsIm5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwibWV0YUxldmVsTm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwib3BlcmF0b3JUZXJtaW5hbE5vZGVzIiwib3BlcmF0b3JUZXJtaW5hbE5vZGUiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsImNvbnRlbnREZWZpbmVkIiwiREVGSU5FRCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBY0EsT0E2QkM7ZUE3QnVCQTs7SUFpSVJDLCtCQUErQjtlQUEvQkE7OzsyREE3SU87Z0VBQ1c7cUJBRVo7eUJBQ0U7cUJBQ2M7c0JBQ0M7Ozs7OztBQUV2QyxJQUFNQyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMseUJBQzFCQyxvQkFBb0JELElBQUFBLGdCQUFTLEVBQUMsa0NBQzlCRSw2QkFBNkJDLElBQUFBLGlCQUFVLEVBQUM7QUFFL0IsU0FBU04sc0NBQXNDTyxpQkFBaUIsRUFBRUMsV0FBVyxFQUFFQyxPQUFPLEVBQUVDLFlBQVk7SUFDakgsSUFBSUMsMENBQTBDO0lBRTlDLElBQU1DLGdDQUFnQ1gsZ0NBQWdDTTtJQUV0RSxJQUFJSywrQkFBK0I7UUFDakMsSUFBTUMsc0JBQXNCSCxhQUFhSSxZQUFZLENBQUNQO1FBRXRERyxhQUFhSyxLQUFLLENBQUMsQUFBQyxrQkFBcUMsT0FBcEJGLHFCQUFvQiw4Q0FBNENOO1FBRXJHLElBQU1TLDRCQUE0QjtZQUNoQ0M7WUFDQUM7U0FDRDtRQUVEUCwwQ0FBMENLLDBCQUEwQkcsSUFBSSxDQUFDLFNBQUNDO1lBQ3hFLElBQU1ULDBDQUEwQ1MseUJBQXlCYixtQkFBbUJDLGFBQWFDLFNBQVNDO1lBRWxILElBQUlDLHlDQUF5QztnQkFDM0MsT0FBTztZQUNUO1FBQ0Y7UUFFQSxJQUFJQSx5Q0FBeUM7WUFDM0NELGFBQWFXLEtBQUssQ0FBQyxBQUFDLG9CQUF1QyxPQUFwQlIscUJBQW9CLDRDQUEwQ047UUFDdkc7SUFDRjtJQUVBLE9BQU9JO0FBQ1Q7QUFFQSxTQUFTTSw2Q0FBNkNWLGlCQUFpQixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsWUFBWTtJQUN6RyxJQUFJWSxpREFBaUQ7SUFFckQsSUFBSWIsU0FBUztRQUNYLElBQU1JLHNCQUFzQkgsYUFBYUksWUFBWSxDQUFDUDtRQUV0REcsYUFBYUssS0FBSyxDQUFDLEFBQUMsMEJBQTZDLE9BQXBCRixxQkFBb0IsOENBQTRDTjtRQUU3RyxJQUFNZ0IsdUJBQXVCQyxJQUFBQSw4QkFBc0IsRUFBQ2pCLG9CQUM5Q2tCLGVBQWVyQixrQkFBa0JHLG9CQUNqQ21CLFdBQVd4QixjQUFjSztRQUUvQixJQUFJLE9BQU87UUFDVCxHQUFHO1FBQ0wsT0FBTyxJQUFJa0IsaUJBQWlCLE1BQU07WUFDaEMsSUFBTUUsV0FBV2pCLGFBQWFrQiwwQkFBMEIsQ0FBQ0g7WUFFekQsSUFBSUUsYUFBYSxNQUFNO2dCQUNyQixJQUFNRSxrQkFBa0JuQixhQUFhb0IsaUJBQWlCLENBQUNIO2dCQUV2RCxJQUFJLENBQUNKLHNCQUFzQjtvQkFDekIsSUFBSU0saUJBQWlCO3dCQUNuQlAsaURBQWlEO29CQUNuRDtnQkFDRjtnQkFFQSxJQUFJQyxzQkFBc0I7b0JBQ3hCLElBQUksQ0FBQ00saUJBQWlCO3dCQUNwQlAsaURBQWlEO29CQUNuRDtnQkFDRjtZQUNGO1FBQ0YsT0FBTyxJQUFJSSxhQUFhLE1BQU07WUFDNUIsSUFBTUssUUFBUSxFQUFFLEVBQ1ZDLGVBQWVDLElBQUFBLGFBQVUsRUFBQ1AsVUFBVUssT0FBT3JCLGNBQWM7Z0JBQ3ZELElBQU13QixnQkFBZ0I7Z0JBRXRCLE9BQU9BO1lBQ1Q7WUFFTixJQUFJRixjQUFjO2dCQUNoQixJQUFNRyxZQUFZQyxJQUFBQSxZQUFLLEVBQUNMLFFBQ2xCTSxPQUFPRixXQUNQRyxlQUFlNUIsYUFBYTZCLGNBQWMsQ0FBQ0Y7Z0JBRWpELElBQUksQ0FBQ2Qsc0JBQXNCO29CQUN6QixJQUFJZSxjQUFjO3dCQUNoQmhCLGlEQUFpRDtvQkFDbkQ7Z0JBQ0Y7Z0JBRUEsSUFBSUMsc0JBQXNCO29CQUN4QixJQUFJLENBQUNlLGNBQWM7d0JBQ2pCaEIsaURBQWlEO29CQUNuRDtnQkFDRjtZQUNGO1FBQ0Y7UUFFQSxJQUFJQSxnREFBZ0Q7WUFDbERaLGFBQWFXLEtBQUssQ0FBQyxBQUFDLDRCQUErQyxPQUFwQlIscUJBQW9CLDRDQUEwQ047UUFDL0c7SUFDRjtJQUVBLE9BQU9lO0FBQ1Q7QUFFQSxTQUFTSiw0Q0FBNENYLGlCQUFpQixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsWUFBWTtJQUN4RyxJQUFJOEIsZ0RBQWdEO0lBRXBELElBQUksQ0FBQy9CLFNBQVM7UUFDWixJQUFNSSxzQkFBc0JILGFBQWFJLFlBQVksQ0FBQ1A7UUFFdERHLGFBQWFLLEtBQUssQ0FBQyxBQUFDLHlCQUE0QyxPQUFwQkYscUJBQW9CLDhDQUE0Q047UUFFNUcsSUFBTWtDLGlCQUFpQi9CLGFBQWFnQyxnQkFBZ0I7UUFFcEQsSUFBSUQsZ0JBQWdCO1lBQ2xCL0IsYUFBYVcsS0FBSyxDQUFDLEFBQUMsZUFBa0MsT0FBcEJSLHFCQUFvQixrRkFBZ0ZOO1FBQ3hJLE9BQU87WUFDTCxJQUFNb0Msa0JBQWtCcEMsbUJBQ2xCcUMsMEJBQTBCQyxrQkFBcUIsQ0FBQ0MscUJBQXFCLENBQUNILGlCQUFpQmpDLGNBQWM7Z0JBQ25HLElBQU13QixnQkFBZ0I7Z0JBRXRCLE9BQU9BO1lBQ1Q7WUFFTk0sZ0RBQWdESSx5QkFBeUIsR0FBRztRQUM5RTtRQUVBLElBQUlKLCtDQUErQztZQUNqRDlCLGFBQWFXLEtBQUssQ0FBQyxBQUFDLDJCQUE4QyxPQUFwQlIscUJBQW9CLDRDQUEwQ047UUFDOUc7SUFDRjtJQUVBLE9BQU9pQztBQUNUO0FBRU8sU0FBU3ZDLGdDQUFnQ00saUJBQWlCO0lBQy9ELElBQU13Qyx3QkFBd0IxQywyQkFBMkJFLG9CQUNuREssZ0NBQWdDbUMsc0JBQXNCNUIsSUFBSSxDQUFDLFNBQUM2QjtRQUMxRCxJQUFNQyxVQUFVRCxxQkFBcUJFLFVBQVUsSUFDekNDLGlCQUFrQkYsWUFBWUcsa0JBQU87UUFFM0MsSUFBSUQsZ0JBQWdCO1lBQ2xCLE9BQU87UUFDVDtJQUNGO0lBRU4sT0FBT3ZDO0FBQ1QifQ==
@@ -32,7 +32,7 @@ function verifyMetatheorem(metatheoremNode, fileContext) {
32
32
  if (metaSuppositionsVerified) {
33
33
  var metaConsequents = [], metaConsequentNode = metaConsequentNodeQuery(metatheoremNode), metaConsequentVerified = (0, _metaConsequent.default)(metaConsequentNode, metaConsequents, substitutions, localContext);
34
34
  if (metaConsequentVerified) {
35
- var metaproofNode = metaproofNodeQuery(metatheoremNode), firstMetaConsequent = (0, _array.first)(metaConsequents), metaConsequent = firstMetaConsequent, metaproofVerified = (0, _metaproof.default)(metaproofNode, metaConsequent, substitutions, localContext);
35
+ var metaproofNode = metaproofNodeQuery(metatheoremNode), firstMetaConsequent = (0, _array.first)(metaConsequents), metaConsequent = firstMetaConsequent, metastatementNode = metaConsequent.getMetastatementNode(), metaproofVerified = (0, _metaproof.default)(metaproofNode, metastatementNode, substitutions, localContext);
36
36
  if (metaproofVerified) {
37
37
  var metatheorem = _metatheorem.default.fromLabelsMetaSuppositionsMetaConsequentSubstitutionsAndFileContext(labels, metaSuppositions, metaConsequent, substitutions, fileContext);
38
38
  fileContext.addMetatheorem(metatheorem);
@@ -47,4 +47,4 @@ function verifyMetatheorem(metatheoremNode, fileContext) {
47
47
  return metatheoremVerified;
48
48
  }
49
49
 
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXRoZW9yZW0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhdGhlb3JlbSBmcm9tIFwiLi4vbWV0YXRoZW9yZW1cIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCB2ZXJpZnlNZXRhcHJvb2YgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlNZXRhQ29uc2VxdWVudCBmcm9tIFwiLi4vdmVyaWZ5L21ldGFDb25zZXF1ZW50XCI7XG5pbXBvcnQgTWV0YUxldmVsTG9jYWxDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L2xvY2FsL21ldGFMZXZlbFwiO1xuaW1wb3J0IHZlcmlmeU1ldGFTdXBwb3NpdGlvbnMgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhU3VwcG9zaXRpb25zXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBsYWJlbE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL21ldGF0aGVvcmVtL2xhYmVsXCIpLFxuICAgICAgbWV0YXByb29mTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGF0aGVvcmVtL21ldGFwcm9vZiFcIiksXG4gICAgICBtZXRhQ29uc2VxdWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdGhlb3JlbS9tZXRhQ29uc2VxdWVudCFcIiksXG4gICAgICBtZXRhU3VwcG9zaXRpb25zTm9kZVF1ZXJ5ID0gbm9kZXNRdWVyeShcIi9tZXRhdGhlb3JlbS9tZXRhU3VwcG9zaXRpb25cIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeU1ldGF0aGVvcmVtKG1ldGF0aGVvcmVtTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IG1ldGF0aGVvcmVtVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBsYWJlbE5vZGVzID0gbGFiZWxOb2Rlc1F1ZXJ5KG1ldGF0aGVvcmVtTm9kZSksXG4gICAgICAgIGxhYmVsc1N0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVzQXNTdHJpbmcobGFiZWxOb2Rlcyk7XG5cbiAgZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bGFiZWxzU3RyaW5nfScgbWV0YXRoZW9yZW0uLi5gLCBtZXRhdGhlb3JlbU5vZGUpO1xuXG4gIGNvbnN0IGxhYmVscyA9IFtdLFxuICAgICAgICBsYWJlbHNWZXJpZmllZCA9IHZlcmlmeUxhYmVscyhsYWJlbE5vZGVzLCBsYWJlbHMsIGZpbGVDb250ZXh0KTtcblxuICBpZiAobGFiZWxzVmVyaWZpZWQpIHtcbiAgICBjb25zdCBtZXRhTGV2ZWxMb2NhbENvbnRleHQgPSBNZXRhTGV2ZWxMb2NhbENvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KSxcbiAgICAgICAgICBsb2NhbENvbnRleHQgPSBtZXRhTGV2ZWxMb2NhbENvbnRleHQsIC8vL1xuICAgICAgICAgIHN1YnN0aXR1dGlvbnMgPSBbXSxcbiAgICAgICAgICBtZXRhU3VwcG9zaXRpb25zID0gW10sXG4gICAgICAgICAgbWV0YVN1cHBvc2l0aW9uTm9kZXMgPSBtZXRhU3VwcG9zaXRpb25zTm9kZVF1ZXJ5KG1ldGF0aGVvcmVtTm9kZSksXG4gICAgICAgICAgbWV0YVN1cHBvc2l0aW9uc1ZlcmlmaWVkID0gdmVyaWZ5TWV0YVN1cHBvc2l0aW9ucyhtZXRhU3VwcG9zaXRpb25Ob2RlcywgbWV0YVN1cHBvc2l0aW9ucywgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChtZXRhU3VwcG9zaXRpb25zVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IG1ldGFDb25zZXF1ZW50cyA9IFtdLFxuICAgICAgICAgICAgbWV0YUNvbnNlcXVlbnROb2RlID0gbWV0YUNvbnNlcXVlbnROb2RlUXVlcnkobWV0YXRoZW9yZW1Ob2RlKSxcbiAgICAgICAgICAgIG1ldGFDb25zZXF1ZW50VmVyaWZpZWQgPSB2ZXJpZnlNZXRhQ29uc2VxdWVudChtZXRhQ29uc2VxdWVudE5vZGUsIG1ldGFDb25zZXF1ZW50cywgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKG1ldGFDb25zZXF1ZW50VmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgbWV0YXByb29mTm9kZSA9IG1ldGFwcm9vZk5vZGVRdWVyeShtZXRhdGhlb3JlbU5vZGUpLFxuICAgICAgICAgICAgICBmaXJzdE1ldGFDb25zZXF1ZW50ID0gZmlyc3QobWV0YUNvbnNlcXVlbnRzKSxcbiAgICAgICAgICAgICAgbWV0YUNvbnNlcXVlbnQgPSBmaXJzdE1ldGFDb25zZXF1ZW50LCAvLy9cbiAgICAgICAgICAgICAgbWV0YXByb29mVmVyaWZpZWQgPSB2ZXJpZnlNZXRhcHJvb2YobWV0YXByb29mTm9kZSwgbWV0YUNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgaWYgKG1ldGFwcm9vZlZlcmlmaWVkKSB7XG4gICAgICAgICAgY29uc3QgbWV0YXRoZW9yZW0gPSBNZXRhdGhlb3JlbS5mcm9tTGFiZWxzTWV0YVN1cHBvc2l0aW9uc01ldGFDb25zZXF1ZW50U3Vic3RpdHV0aW9uc0FuZEZpbGVDb250ZXh0KGxhYmVscywgbWV0YVN1cHBvc2l0aW9ucywgbWV0YUNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICAgIGZpbGVDb250ZXh0LmFkZE1ldGF0aGVvcmVtKG1ldGF0aGVvcmVtKTtcblxuICAgICAgICAgIG1ldGF0aGVvcmVtVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKG1ldGF0aGVvcmVtVmVyaWZpZWQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2xhYmVsc1N0cmluZ30nIG1ldGF0aGVvcmVtLmAsIG1ldGF0aGVvcmVtTm9kZSk7XG4gIH1cblxuICByZXR1cm4gbWV0YXRoZW9yZW1WZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlNZXRhdGhlb3JlbSIsImxhYmVsTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJtZXRhcHJvb2ZOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhQ29uc2VxdWVudE5vZGVRdWVyeSIsIm1ldGFTdXBwb3NpdGlvbnNOb2RlUXVlcnkiLCJtZXRhdGhlb3JlbU5vZGUiLCJmaWxlQ29udGV4dCIsIm1ldGF0aGVvcmVtVmVyaWZpZWQiLCJsYWJlbE5vZGVzIiwibGFiZWxzU3RyaW5nIiwibm9kZXNBc1N0cmluZyIsInRyYWNlIiwibGFiZWxzIiwibGFiZWxzVmVyaWZpZWQiLCJ2ZXJpZnlMYWJlbHMiLCJtZXRhTGV2ZWxMb2NhbENvbnRleHQiLCJNZXRhTGV2ZWxMb2NhbENvbnRleHQiLCJmcm9tRmlsZUNvbnRleHQiLCJsb2NhbENvbnRleHQiLCJzdWJzdGl0dXRpb25zIiwibWV0YVN1cHBvc2l0aW9ucyIsIm1ldGFTdXBwb3NpdGlvbk5vZGVzIiwibWV0YVN1cHBvc2l0aW9uc1ZlcmlmaWVkIiwidmVyaWZ5TWV0YVN1cHBvc2l0aW9ucyIsIm1ldGFDb25zZXF1ZW50cyIsIm1ldGFDb25zZXF1ZW50Tm9kZSIsIm1ldGFDb25zZXF1ZW50VmVyaWZpZWQiLCJ2ZXJpZnlNZXRhQ29uc2VxdWVudCIsIm1ldGFwcm9vZk5vZGUiLCJmaXJzdE1ldGFDb25zZXF1ZW50IiwiZmlyc3QiLCJtZXRhQ29uc2VxdWVudCIsIm1ldGFwcm9vZlZlcmlmaWVkIiwidmVyaWZ5TWV0YXByb29mIiwibWV0YXRoZW9yZW0iLCJNZXRhdGhlb3JlbSIsImZyb21MYWJlbHNNZXRhU3VwcG9zaXRpb25zTWV0YUNvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQiLCJhZGRNZXRhdGhlb3JlbSIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUF3QkE7OztrRUFmQTs2REFDQztnRUFDRztxRUFDSztnRUFDQzt1RUFDQztxQkFFYjtxQkFDZ0I7Ozs7OztBQUV0QyxJQUFNQyxrQkFBa0JDLElBQUFBLGlCQUFVLEVBQUMsdUJBQzdCQyxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMsNEJBQy9CQywwQkFBMEJELElBQUFBLGdCQUFTLEVBQUMsaUNBQ3BDRSw0QkFBNEJKLElBQUFBLGlCQUFVLEVBQUM7QUFFOUIsU0FBU0Ysa0JBQWtCTyxlQUFlLEVBQUVDLFdBQVc7SUFDcEUsSUFBSUMsc0JBQXNCO0lBRTFCLElBQU1DLGFBQWFULGdCQUFnQk0sa0JBQzdCSSxlQUFlSCxZQUFZSSxhQUFhLENBQUNGO0lBRS9DRixZQUFZSyxLQUFLLENBQUMsQUFBQyxrQkFBOEIsT0FBYkYsY0FBYSxxQkFBbUJKO0lBRXBFLElBQU1PLFNBQVMsRUFBRSxFQUNYQyxpQkFBaUJDLElBQUFBLGVBQVksRUFBQ04sWUFBWUksUUFBUU47SUFFeEQsSUFBSU8sZ0JBQWdCO1FBQ2xCLElBQU1FLHdCQUF3QkMsa0JBQXFCLENBQUNDLGVBQWUsQ0FBQ1gsY0FDOURZLGVBQWVILHVCQUNmSSxnQkFBZ0IsRUFBRSxFQUNsQkMsbUJBQW1CLEVBQUUsRUFDckJDLHVCQUF1QmpCLDBCQUEwQkMsa0JBQ2pEaUIsMkJBQTJCQyxJQUFBQSx5QkFBc0IsRUFBQ0Ysc0JBQXNCRCxrQkFBa0JELGVBQWVEO1FBRS9HLElBQUlJLDBCQUEwQjtZQUM1QixJQUFNRSxrQkFBa0IsRUFBRSxFQUNwQkMscUJBQXFCdEIsd0JBQXdCRSxrQkFDN0NxQix5QkFBeUJDLElBQUFBLHVCQUFvQixFQUFDRixvQkFBb0JELGlCQUFpQkwsZUFBZUQ7WUFFeEcsSUFBSVEsd0JBQXdCO2dCQUMxQixJQUFNRSxnQkFBZ0IzQixtQkFBbUJJLGtCQUNuQ3dCLHNCQUFzQkMsSUFBQUEsWUFBSyxFQUFDTixrQkFDNUJPLGlCQUFpQkYscUJBQ2pCRyxvQkFBb0JDLElBQUFBLGtCQUFlLEVBQUNMLGVBQWVHLGdCQUFnQlosZUFBZUQ7Z0JBRXhGLElBQUljLG1CQUFtQjtvQkFDckIsSUFBTUUsY0FBY0Msb0JBQVcsQ0FBQ0MsbUVBQW1FLENBQUN4QixRQUFRUSxrQkFBa0JXLGdCQUFnQlosZUFBZWI7b0JBRTdKQSxZQUFZK0IsY0FBYyxDQUFDSDtvQkFFM0IzQixzQkFBc0I7Z0JBQ3hCO1lBQ0Y7UUFDRjtJQUNGO0lBRUEsSUFBSUEscUJBQXFCO1FBQ3ZCRCxZQUFZZ0MsS0FBSyxDQUFDLEFBQUMsb0JBQWdDLE9BQWI3QixjQUFhLG1CQUFpQko7SUFDdEU7SUFFQSxPQUFPRTtBQUNUIn0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXRoZW9yZW0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhdGhlb3JlbSBmcm9tIFwiLi4vbWV0YXRoZW9yZW1cIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCB2ZXJpZnlNZXRhcHJvb2YgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlNZXRhQ29uc2VxdWVudCBmcm9tIFwiLi4vdmVyaWZ5L21ldGFDb25zZXF1ZW50XCI7XG5pbXBvcnQgTWV0YUxldmVsTG9jYWxDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L2xvY2FsL21ldGFMZXZlbFwiO1xuaW1wb3J0IHZlcmlmeU1ldGFTdXBwb3NpdGlvbnMgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhU3VwcG9zaXRpb25zXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBsYWJlbE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL21ldGF0aGVvcmVtL2xhYmVsXCIpLFxuICAgICAgbWV0YXByb29mTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGF0aGVvcmVtL21ldGFwcm9vZiFcIiksXG4gICAgICBtZXRhQ29uc2VxdWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdGhlb3JlbS9tZXRhQ29uc2VxdWVudCFcIiksXG4gICAgICBtZXRhU3VwcG9zaXRpb25zTm9kZVF1ZXJ5ID0gbm9kZXNRdWVyeShcIi9tZXRhdGhlb3JlbS9tZXRhU3VwcG9zaXRpb25cIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeU1ldGF0aGVvcmVtKG1ldGF0aGVvcmVtTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IG1ldGF0aGVvcmVtVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBsYWJlbE5vZGVzID0gbGFiZWxOb2Rlc1F1ZXJ5KG1ldGF0aGVvcmVtTm9kZSksXG4gICAgICAgIGxhYmVsc1N0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVzQXNTdHJpbmcobGFiZWxOb2Rlcyk7XG5cbiAgZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bGFiZWxzU3RyaW5nfScgbWV0YXRoZW9yZW0uLi5gLCBtZXRhdGhlb3JlbU5vZGUpO1xuXG4gIGNvbnN0IGxhYmVscyA9IFtdLFxuICAgICAgICBsYWJlbHNWZXJpZmllZCA9IHZlcmlmeUxhYmVscyhsYWJlbE5vZGVzLCBsYWJlbHMsIGZpbGVDb250ZXh0KTtcblxuICBpZiAobGFiZWxzVmVyaWZpZWQpIHtcbiAgICBjb25zdCBtZXRhTGV2ZWxMb2NhbENvbnRleHQgPSBNZXRhTGV2ZWxMb2NhbENvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KSxcbiAgICAgICAgICBsb2NhbENvbnRleHQgPSBtZXRhTGV2ZWxMb2NhbENvbnRleHQsIC8vL1xuICAgICAgICAgIHN1YnN0aXR1dGlvbnMgPSBbXSxcbiAgICAgICAgICBtZXRhU3VwcG9zaXRpb25zID0gW10sXG4gICAgICAgICAgbWV0YVN1cHBvc2l0aW9uTm9kZXMgPSBtZXRhU3VwcG9zaXRpb25zTm9kZVF1ZXJ5KG1ldGF0aGVvcmVtTm9kZSksXG4gICAgICAgICAgbWV0YVN1cHBvc2l0aW9uc1ZlcmlmaWVkID0gdmVyaWZ5TWV0YVN1cHBvc2l0aW9ucyhtZXRhU3VwcG9zaXRpb25Ob2RlcywgbWV0YVN1cHBvc2l0aW9ucywgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChtZXRhU3VwcG9zaXRpb25zVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IG1ldGFDb25zZXF1ZW50cyA9IFtdLFxuICAgICAgICAgICAgbWV0YUNvbnNlcXVlbnROb2RlID0gbWV0YUNvbnNlcXVlbnROb2RlUXVlcnkobWV0YXRoZW9yZW1Ob2RlKSxcbiAgICAgICAgICAgIG1ldGFDb25zZXF1ZW50VmVyaWZpZWQgPSB2ZXJpZnlNZXRhQ29uc2VxdWVudChtZXRhQ29uc2VxdWVudE5vZGUsIG1ldGFDb25zZXF1ZW50cywgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKG1ldGFDb25zZXF1ZW50VmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgbWV0YXByb29mTm9kZSA9IG1ldGFwcm9vZk5vZGVRdWVyeShtZXRhdGhlb3JlbU5vZGUpLFxuICAgICAgICAgICAgICBmaXJzdE1ldGFDb25zZXF1ZW50ID0gZmlyc3QobWV0YUNvbnNlcXVlbnRzKSxcbiAgICAgICAgICAgICAgbWV0YUNvbnNlcXVlbnQgPSBmaXJzdE1ldGFDb25zZXF1ZW50LCAvLy9cbiAgICAgICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhQ29uc2VxdWVudC5nZXRNZXRhc3RhdGVtZW50Tm9kZSgpLFxuICAgICAgICAgICAgICBtZXRhcHJvb2ZWZXJpZmllZCA9IHZlcmlmeU1ldGFwcm9vZihtZXRhcHJvb2ZOb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgICBpZiAobWV0YXByb29mVmVyaWZpZWQpIHtcbiAgICAgICAgICBjb25zdCBtZXRhdGhlb3JlbSA9IE1ldGF0aGVvcmVtLmZyb21MYWJlbHNNZXRhU3VwcG9zaXRpb25zTWV0YUNvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQobGFiZWxzLCBtZXRhU3VwcG9zaXRpb25zLCBtZXRhQ29uc2VxdWVudCwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQpO1xuXG4gICAgICAgICAgZmlsZUNvbnRleHQuYWRkTWV0YXRoZW9yZW0obWV0YXRoZW9yZW0pO1xuXG4gICAgICAgICAgbWV0YXRoZW9yZW1WZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAobWV0YXRoZW9yZW1WZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bGFiZWxzU3RyaW5nfScgbWV0YXRoZW9yZW0uYCwgbWV0YXRoZW9yZW1Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhdGhlb3JlbVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeU1ldGF0aGVvcmVtIiwibGFiZWxOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsIm1ldGFwcm9vZk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFDb25zZXF1ZW50Tm9kZVF1ZXJ5IiwibWV0YVN1cHBvc2l0aW9uc05vZGVRdWVyeSIsIm1ldGF0aGVvcmVtTm9kZSIsImZpbGVDb250ZXh0IiwibWV0YXRoZW9yZW1WZXJpZmllZCIsImxhYmVsTm9kZXMiLCJsYWJlbHNTdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwidHJhY2UiLCJsYWJlbHMiLCJsYWJlbHNWZXJpZmllZCIsInZlcmlmeUxhYmVscyIsIm1ldGFMZXZlbExvY2FsQ29udGV4dCIsIk1ldGFMZXZlbExvY2FsQ29udGV4dCIsImZyb21GaWxlQ29udGV4dCIsImxvY2FsQ29udGV4dCIsInN1YnN0aXR1dGlvbnMiLCJtZXRhU3VwcG9zaXRpb25zIiwibWV0YVN1cHBvc2l0aW9uTm9kZXMiLCJtZXRhU3VwcG9zaXRpb25zVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhU3VwcG9zaXRpb25zIiwibWV0YUNvbnNlcXVlbnRzIiwibWV0YUNvbnNlcXVlbnROb2RlIiwibWV0YUNvbnNlcXVlbnRWZXJpZmllZCIsInZlcmlmeU1ldGFDb25zZXF1ZW50IiwibWV0YXByb29mTm9kZSIsImZpcnN0TWV0YUNvbnNlcXVlbnQiLCJmaXJzdCIsIm1ldGFDb25zZXF1ZW50IiwibWV0YXN0YXRlbWVudE5vZGUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFwcm9vZlZlcmlmaWVkIiwidmVyaWZ5TWV0YXByb29mIiwibWV0YXRoZW9yZW0iLCJNZXRhdGhlb3JlbSIsImZyb21MYWJlbHNNZXRhU3VwcG9zaXRpb25zTWV0YUNvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQiLCJhZGRNZXRhdGhlb3JlbSIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUF3QkE7OztrRUFmQTs2REFDQztnRUFDRztxRUFDSztnRUFDQzt1RUFDQztxQkFFYjtxQkFDZ0I7Ozs7OztBQUV0QyxJQUFNQyxrQkFBa0JDLElBQUFBLGlCQUFVLEVBQUMsdUJBQzdCQyxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMsNEJBQy9CQywwQkFBMEJELElBQUFBLGdCQUFTLEVBQUMsaUNBQ3BDRSw0QkFBNEJKLElBQUFBLGlCQUFVLEVBQUM7QUFFOUIsU0FBU0Ysa0JBQWtCTyxlQUFlLEVBQUVDLFdBQVc7SUFDcEUsSUFBSUMsc0JBQXNCO0lBRTFCLElBQU1DLGFBQWFULGdCQUFnQk0sa0JBQzdCSSxlQUFlSCxZQUFZSSxhQUFhLENBQUNGO0lBRS9DRixZQUFZSyxLQUFLLENBQUMsQUFBQyxrQkFBOEIsT0FBYkYsY0FBYSxxQkFBbUJKO0lBRXBFLElBQU1PLFNBQVMsRUFBRSxFQUNYQyxpQkFBaUJDLElBQUFBLGVBQVksRUFBQ04sWUFBWUksUUFBUU47SUFFeEQsSUFBSU8sZ0JBQWdCO1FBQ2xCLElBQU1FLHdCQUF3QkMsa0JBQXFCLENBQUNDLGVBQWUsQ0FBQ1gsY0FDOURZLGVBQWVILHVCQUNmSSxnQkFBZ0IsRUFBRSxFQUNsQkMsbUJBQW1CLEVBQUUsRUFDckJDLHVCQUF1QmpCLDBCQUEwQkMsa0JBQ2pEaUIsMkJBQTJCQyxJQUFBQSx5QkFBc0IsRUFBQ0Ysc0JBQXNCRCxrQkFBa0JELGVBQWVEO1FBRS9HLElBQUlJLDBCQUEwQjtZQUM1QixJQUFNRSxrQkFBa0IsRUFBRSxFQUNwQkMscUJBQXFCdEIsd0JBQXdCRSxrQkFDN0NxQix5QkFBeUJDLElBQUFBLHVCQUFvQixFQUFDRixvQkFBb0JELGlCQUFpQkwsZUFBZUQ7WUFFeEcsSUFBSVEsd0JBQXdCO2dCQUMxQixJQUFNRSxnQkFBZ0IzQixtQkFBbUJJLGtCQUNuQ3dCLHNCQUFzQkMsSUFBQUEsWUFBSyxFQUFDTixrQkFDNUJPLGlCQUFpQkYscUJBQ2pCRyxvQkFBb0JELGVBQWVFLG9CQUFvQixJQUN2REMsb0JBQW9CQyxJQUFBQSxrQkFBZSxFQUFDUCxlQUFlSSxtQkFBbUJiLGVBQWVEO2dCQUUzRixJQUFJZ0IsbUJBQW1CO29CQUNyQixJQUFNRSxjQUFjQyxvQkFBVyxDQUFDQyxtRUFBbUUsQ0FBQzFCLFFBQVFRLGtCQUFrQlcsZ0JBQWdCWixlQUFlYjtvQkFFN0pBLFlBQVlpQyxjQUFjLENBQUNIO29CQUUzQjdCLHNCQUFzQjtnQkFDeEI7WUFDRjtRQUNGO0lBQ0Y7SUFFQSxJQUFJQSxxQkFBcUI7UUFDdkJELFlBQVlrQyxLQUFLLENBQUMsQUFBQyxvQkFBZ0MsT0FBYi9CLGNBQWEsbUJBQWlCSjtJQUN0RTtJQUVBLE9BQU9FO0FBQ1QifQ==
@@ -35,7 +35,7 @@ function verifyPremise(premiseNode, premises, localContext) {
35
35
  if (unqualifiedMetastatementNode !== null) {
36
36
  var derived1 = false, assignments1 = [], unqualifiedMetastatementVerified = (0, _unqualified1.default)(unqualifiedMetastatementNode, assignments1, derived1, localContext);
37
37
  if (unqualifiedMetastatementVerified) {
38
- var _$localContext = _$localContext, assignmentAssigned1 = (0, _assignments.assignAssignment)(assignments1, _$localContext);
38
+ var assignmentAssigned1 = (0, _assignments.assignAssignment)(assignments1, localContext);
39
39
  premiseVerified = assignmentAssigned1; ///
40
40
  }
41
41
  }
@@ -58,4 +58,4 @@ function verifyPremise(premiseNode, premises, localContext) {
58
58
  return premiseVerified;
59
59
  }
60
60
 
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJlbWlzZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFByZW1pc2UgZnJvbSBcIi4uL3ByZW1pc2VcIjtcbmltcG9ydCBNZXRhcHJvb2ZTdGVwIGZyb20gXCIuLi9zdGVwL21ldGFwcm9vZlwiO1xuaW1wb3J0IHZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50IGZyb20gXCIuLi92ZXJpZnkvc3RhdGVtZW50L3VucXVhbGlmaWVkXCI7XG5pbXBvcnQgdmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50IGZyb20gXCIuLi92ZXJpZnkvbWV0YXN0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBhc3NpZ25Bc3NpZ25tZW50IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hc3NpZ25tZW50c1wiO1xuXG5jb25zdCBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50L21ldGFzdGF0ZW1lbnQhXCIpLFxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJlbWlzZS91bnF1YWxpZmllZFN0YXRlbWVudCFcIiksXG4gICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJlbWlzZS91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlQcmVtaXNlKHByZW1pc2VOb2RlLCBwcmVtaXNlcywgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBwcmVtaXNlVmVyaWZpZWQ7XG5cbiAgY29uc3QgcHJlbWlzZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcocHJlbWlzZU5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtwcmVtaXNlU3RyaW5nfScgcHJlbWlzZS4uLmAsIHByZW1pc2VOb2RlKTtcblxuICBjb25zdCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeShwcmVtaXNlTm9kZSksXG4gICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkocHJlbWlzZU5vZGUpO1xuXG4gIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBhc3NpZ25tZW50QXNzaWduZWQgPSBhc3NpZ25Bc3NpZ25tZW50KGFzc2lnbm1lbnRzLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBwcmVtaXNlVmVyaWZpZWQgPSBhc3NpZ25tZW50QXNzaWduZWQ7IC8vL1xuICAgIH1cbiAgfVxuXG4gIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgZGVyaXZlZCA9IGZhbHNlLFxuICAgICAgICAgIGFzc2lnbm1lbnRzID0gW10sXG4gICAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGxvY2FsQ29udGV4dCA9IGxvY2FsQ29udGV4dCwgIC8vL1xuICAgICAgICAgICAgYXNzaWdubWVudEFzc2lnbmVkID0gYXNzaWduQXNzaWdubWVudChhc3NpZ25tZW50cywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgcHJlbWlzZVZlcmlmaWVkID0gYXNzaWdubWVudEFzc2lnbmVkOyAvLy9cbiAgICB9XG4gIH1cblxuICBpZiAocHJlbWlzZVZlcmlmaWVkKSB7XG4gICAgbGV0IHByZW1pc2UsXG4gICAgICAgIG1ldGFwcm9vZlN0ZXA7XG5cbiAgICBpZiAodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIG1ldGFwcm9vZlN0ZXAgPSBNZXRhcHJvb2ZTdGVwLmZyb21NZXRhc3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgcHJlbWlzZSA9IFByZW1pc2UuZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgaWYgKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgbWV0YXByb29mU3RlcCA9IE1ldGFwcm9vZlN0ZXAuZnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgcHJlbWlzZSA9IFByZW1pc2UuZnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG5cbiAgICBwcmVtaXNlcy5wdXNoKHByZW1pc2UpO1xuXG4gICAgbG9jYWxDb250ZXh0LmFkZE1ldGFwcm9vZlN0ZXAobWV0YXByb29mU3RlcCk7XG5cbiAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtwcmVtaXNlU3RyaW5nfScgcHJlbWlzZS5gLCBwcmVtaXNlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gcHJlbWlzZVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVByZW1pc2UiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJwcmVtaXNlTm9kZSIsInByZW1pc2VzIiwibG9jYWxDb250ZXh0IiwicHJlbWlzZVZlcmlmaWVkIiwicHJlbWlzZVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsImRlcml2ZWQiLCJhc3NpZ25tZW50cyIsInVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQiLCJ2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCIsImFzc2lnbm1lbnRBc3NpZ25lZCIsImFzc2lnbkFzc2lnbm1lbnQiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsInByZW1pc2UiLCJtZXRhcHJvb2ZTdGVwIiwic3RhdGVtZW50Tm9kZSIsIk1ldGFwcm9vZlN0ZXAiLCJmcm9tTWV0YXN0YXRlbWVudE5vZGUiLCJQcmVtaXNlIiwiZnJvbVN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50Tm9kZSIsInB1c2giLCJhZGRNZXRhcHJvb2ZTdGVwIiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWVBOzs7ZUFBd0JBOzs7OERBYko7Z0VBQ007a0VBQ2E7bUVBQ0k7cUJBRWpCOzJCQUNPOzs7Ozs7QUFFakMsSUFBTUMscUJBQXFCQyxJQUFBQSxnQkFBUyxFQUFDLHFDQUMvQkMseUJBQXlCRCxJQUFBQSxnQkFBUyxFQUFDLDZDQUNuQ0UsZ0NBQWdDRixJQUFBQSxnQkFBUyxFQUFDLG1DQUMxQ0csb0NBQW9DSCxJQUFBQSxnQkFBUyxFQUFDO0FBRXJDLFNBQVNGLGNBQWNNLFdBQVcsRUFBRUMsUUFBUSxFQUFFQyxZQUFZO0lBQ3ZFLElBQUlDO0lBRUosSUFBTUMsZ0JBQWdCRixhQUFhRyxZQUFZLENBQUNMO0lBRWhERSxhQUFhSSxLQUFLLENBQUMsQUFBQyxrQkFBK0IsT0FBZEYsZUFBYyxpQkFBZUo7SUFFbEUsSUFBTU8sMkJBQTJCVCw4QkFBOEJFLGNBQ3pEUSwrQkFBK0JULGtDQUFrQ0M7SUFFdkUsSUFBSU8sNkJBQTZCLE1BQU07UUFDckMsSUFBTUUsVUFBVSxPQUNWQyxjQUFjLEVBQUUsRUFDaEJDLCtCQUErQkMsSUFBQUEsb0JBQTBCLEVBQUNMLDBCQUEwQkcsYUFBYUQsU0FBU1A7UUFFaEgsSUFBSVMsOEJBQThCO1lBQ2hDLElBQU1FLHFCQUFxQkMsSUFBQUEsNkJBQWdCLEVBQUNKLGFBQWFSO1lBRXpEQyxrQkFBa0JVLG9CQUFvQixHQUFHO1FBQzNDO0lBQ0Y7SUFFQSxJQUFJTCxpQ0FBaUMsTUFBTTtRQUN6QyxJQUFNQyxXQUFVLE9BQ1ZDLGVBQWMsRUFBRSxFQUNoQkssbUNBQW1DQyxJQUFBQSxxQkFBOEIsRUFBQ1IsOEJBQThCRSxjQUFhRCxVQUFTUDtRQUU1SCxJQUFJYSxrQ0FBa0M7WUFDcEMsSUFBTWIsaUJBQWVBLGdCQUNmVyxzQkFBcUJDLElBQUFBLDZCQUFnQixFQUFDSixjQUFhUjtZQUV6REMsa0JBQWtCVSxxQkFBb0IsR0FBRztRQUMzQztJQUNGO0lBRUEsSUFBSVYsaUJBQWlCO1FBQ25CLElBQUljLFNBQ0FDO1FBRUosSUFBSVgsNkJBQTZCLE1BQU07WUFDckMsSUFBTVksZ0JBQWdCeEIsbUJBQW1CWTtZQUV6Q1csZ0JBQWdCRSxrQkFBYSxDQUFDQyxxQkFBcUIsQ0FBQ0Y7WUFFcERGLFVBQVVLLGdCQUFPLENBQUNDLGlCQUFpQixDQUFDSjtRQUN0QztRQUVBLElBQUlYLGlDQUFpQyxNQUFNO1lBQ3pDLElBQU1nQixvQkFBb0IzQix1QkFBdUJXO1lBRWpEVSxnQkFBZ0JFLGtCQUFhLENBQUNDLHFCQUFxQixDQUFDRztZQUVwRFAsVUFBVUssZ0JBQU8sQ0FBQ0QscUJBQXFCLENBQUNHO1FBQzFDO1FBRUF2QixTQUFTd0IsSUFBSSxDQUFDUjtRQUVkZixhQUFhd0IsZ0JBQWdCLENBQUNSO1FBRTlCaEIsYUFBYXlCLEtBQUssQ0FBQyxBQUFDLG9CQUFpQyxPQUFkdkIsZUFBYyxlQUFhSjtJQUNwRTtJQUVBLE9BQU9HO0FBQ1QifQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJlbWlzZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFByZW1pc2UgZnJvbSBcIi4uL3ByZW1pc2VcIjtcbmltcG9ydCBNZXRhcHJvb2ZTdGVwIGZyb20gXCIuLi9zdGVwL21ldGFwcm9vZlwiO1xuaW1wb3J0IHZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50IGZyb20gXCIuLi92ZXJpZnkvc3RhdGVtZW50L3VucXVhbGlmaWVkXCI7XG5pbXBvcnQgdmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50IGZyb20gXCIuLi92ZXJpZnkvbWV0YXN0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBhc3NpZ25Bc3NpZ25tZW50IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hc3NpZ25tZW50c1wiO1xuXG5jb25zdCBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50L21ldGFzdGF0ZW1lbnQhXCIpLFxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJlbWlzZS91bnF1YWxpZmllZFN0YXRlbWVudCFcIiksXG4gICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJlbWlzZS91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlQcmVtaXNlKHByZW1pc2VOb2RlLCBwcmVtaXNlcywgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBwcmVtaXNlVmVyaWZpZWQ7XG5cbiAgY29uc3QgcHJlbWlzZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcocHJlbWlzZU5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtwcmVtaXNlU3RyaW5nfScgcHJlbWlzZS4uLmAsIHByZW1pc2VOb2RlKTtcblxuICBjb25zdCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeShwcmVtaXNlTm9kZSksXG4gICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkocHJlbWlzZU5vZGUpO1xuXG4gIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBhc3NpZ25tZW50QXNzaWduZWQgPSBhc3NpZ25Bc3NpZ25tZW50KGFzc2lnbm1lbnRzLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBwcmVtaXNlVmVyaWZpZWQgPSBhc3NpZ25tZW50QXNzaWduZWQ7IC8vL1xuICAgIH1cbiAgfVxuXG4gIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgZGVyaXZlZCA9IGZhbHNlLFxuICAgICAgICAgIGFzc2lnbm1lbnRzID0gW10sXG4gICAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGFzc2lnbm1lbnRBc3NpZ25lZCA9IGFzc2lnbkFzc2lnbm1lbnQoYXNzaWdubWVudHMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIHByZW1pc2VWZXJpZmllZCA9IGFzc2lnbm1lbnRBc3NpZ25lZDsgLy8vXG4gICAgfVxuICB9XG5cbiAgaWYgKHByZW1pc2VWZXJpZmllZCkge1xuICAgIGxldCBwcmVtaXNlLFxuICAgICAgICBtZXRhcHJvb2ZTdGVwO1xuXG4gICAgaWYgKHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gICAgICBtZXRhcHJvb2ZTdGVwID0gTWV0YXByb29mU3RlcC5mcm9tTWV0YXN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIHByZW1pc2UgPSBQcmVtaXNlLmZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUpO1xuICAgIH1cblxuICAgIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIG1ldGFwcm9vZlN0ZXAgPSBNZXRhcHJvb2ZTdGVwLmZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIHByZW1pc2UgPSBQcmVtaXNlLmZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgcHJlbWlzZXMucHVzaChwcmVtaXNlKTtcblxuICAgIGxvY2FsQ29udGV4dC5hZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7cHJlbWlzZVN0cmluZ30nIHByZW1pc2UuYCwgcHJlbWlzZU5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIHByZW1pc2VWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlQcmVtaXNlIiwic3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5IiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwicHJlbWlzZU5vZGUiLCJwcmVtaXNlcyIsImxvY2FsQ29udGV4dCIsInByZW1pc2VWZXJpZmllZCIsInByZW1pc2VTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJkZXJpdmVkIiwiYXNzaWdubWVudHMiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQiLCJhc3NpZ25tZW50QXNzaWduZWQiLCJhc3NpZ25Bc3NpZ25tZW50IiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJ2ZXJpZnlVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQiLCJwcmVtaXNlIiwibWV0YXByb29mU3RlcCIsInN0YXRlbWVudE5vZGUiLCJNZXRhcHJvb2ZTdGVwIiwiZnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwiUHJlbWlzZSIsImZyb21TdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE5vZGUiLCJwdXNoIiwiYWRkTWV0YXByb29mU3RlcCIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFlQTs7O2VBQXdCQTs7OzhEQWJKO2dFQUNNO2tFQUNhO21FQUNJO3FCQUVqQjsyQkFDTzs7Ozs7O0FBRWpDLElBQU1DLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQyxxQ0FDL0JDLHlCQUF5QkQsSUFBQUEsZ0JBQVMsRUFBQyw2Q0FDbkNFLGdDQUFnQ0YsSUFBQUEsZ0JBQVMsRUFBQyxtQ0FDMUNHLG9DQUFvQ0gsSUFBQUEsZ0JBQVMsRUFBQztBQUVyQyxTQUFTRixjQUFjTSxXQUFXLEVBQUVDLFFBQVEsRUFBRUMsWUFBWTtJQUN2RSxJQUFJQztJQUVKLElBQU1DLGdCQUFnQkYsYUFBYUcsWUFBWSxDQUFDTDtJQUVoREUsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQStCLE9BQWRGLGVBQWMsaUJBQWVKO0lBRWxFLElBQU1PLDJCQUEyQlQsOEJBQThCRSxjQUN6RFEsK0JBQStCVCxrQ0FBa0NDO0lBRXZFLElBQUlPLDZCQUE2QixNQUFNO1FBQ3JDLElBQU1FLFVBQVUsT0FDVkMsY0FBYyxFQUFFLEVBQ2hCQywrQkFBK0JDLElBQUFBLG9CQUEwQixFQUFDTCwwQkFBMEJHLGFBQWFELFNBQVNQO1FBRWhILElBQUlTLDhCQUE4QjtZQUNoQyxJQUFNRSxxQkFBcUJDLElBQUFBLDZCQUFnQixFQUFDSixhQUFhUjtZQUV6REMsa0JBQWtCVSxvQkFBb0IsR0FBRztRQUMzQztJQUNGO0lBRUEsSUFBSUwsaUNBQWlDLE1BQU07UUFDekMsSUFBTUMsV0FBVSxPQUNWQyxlQUFjLEVBQUUsRUFDaEJLLG1DQUFtQ0MsSUFBQUEscUJBQThCLEVBQUNSLDhCQUE4QkUsY0FBYUQsVUFBU1A7UUFFNUgsSUFBSWEsa0NBQWtDO1lBQ3BDLElBQU1GLHNCQUFxQkMsSUFBQUEsNkJBQWdCLEVBQUNKLGNBQWFSO1lBRXpEQyxrQkFBa0JVLHFCQUFvQixHQUFHO1FBQzNDO0lBQ0Y7SUFFQSxJQUFJVixpQkFBaUI7UUFDbkIsSUFBSWMsU0FDQUM7UUFFSixJQUFJWCw2QkFBNkIsTUFBTTtZQUNyQyxJQUFNWSxnQkFBZ0J4QixtQkFBbUJZO1lBRXpDVyxnQkFBZ0JFLGtCQUFhLENBQUNDLHFCQUFxQixDQUFDRjtZQUVwREYsVUFBVUssZ0JBQU8sQ0FBQ0MsaUJBQWlCLENBQUNKO1FBQ3RDO1FBRUEsSUFBSVgsaUNBQWlDLE1BQU07WUFDekMsSUFBTWdCLG9CQUFvQjNCLHVCQUF1Qlc7WUFFakRVLGdCQUFnQkUsa0JBQWEsQ0FBQ0MscUJBQXFCLENBQUNHO1lBRXBEUCxVQUFVSyxnQkFBTyxDQUFDRCxxQkFBcUIsQ0FBQ0c7UUFDMUM7UUFFQXZCLFNBQVN3QixJQUFJLENBQUNSO1FBRWRmLGFBQWF3QixnQkFBZ0IsQ0FBQ1I7UUFFOUJoQixhQUFheUIsS0FBSyxDQUFDLEFBQUMsb0JBQWlDLE9BQWR2QixlQUFjLGVBQWFKO0lBQ3BFO0lBRUEsT0FBT0c7QUFDVCJ9
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "default", {
11
11
  var _rule = /*#__PURE__*/ _interop_require_default(require("../rule"));
12
12
  var _labels = /*#__PURE__*/ _interop_require_default(require("../verify/labels"));
13
13
  var _premises = /*#__PURE__*/ _interop_require_default(require("../verify/premises"));
14
- var _ruleProof = /*#__PURE__*/ _interop_require_default(require("../verify/ruleProof"));
14
+ var _metaproof = /*#__PURE__*/ _interop_require_default(require("../verify/metaproof"));
15
15
  var _conclusion = /*#__PURE__*/ _interop_require_default(require("../verify/conclusion"));
16
16
  var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../context/local/metaLevel"));
17
17
  var _array = require("../utilities/array");
@@ -21,7 +21,7 @@ function _interop_require_default(obj) {
21
21
  default: obj
22
22
  };
23
23
  }
24
- var labelNodesQuery = (0, _query.nodesQuery)("/rule/label"), premisesNodeQuery = (0, _query.nodesQuery)("/rule/premise"), ruleProofNodeQuery = (0, _query.nodeQuery)("/rule/ruleProof!"), conclusionNodeQuery = (0, _query.nodeQuery)("/rule/conclusion!");
24
+ var labelNodesQuery = (0, _query.nodesQuery)("/rule/label"), premisesNodeQuery = (0, _query.nodesQuery)("/rule/premise"), metaproofNodeQuery = (0, _query.nodeQuery)("/rule/metaproof!"), conclusionNodeQuery = (0, _query.nodeQuery)("/rule/conclusion!");
25
25
  function verifyRule(ruleNode, fileContext) {
26
26
  var ruleVerified = false;
27
27
  var labelNodes = labelNodesQuery(ruleNode), labelsString = fileContext.nodesAsString(labelNodes);
@@ -32,12 +32,13 @@ function verifyRule(ruleNode, fileContext) {
32
32
  if (premisesVerified) {
33
33
  var conclusions = [], conclusionNode = conclusionNodeQuery(ruleNode), conclusionVerified = (0, _conclusion.default)(conclusionNode, conclusions, localContext);
34
34
  if (conclusionVerified) {
35
- var ruleProofNode = ruleProofNodeQuery(ruleNode), firstConclusion = (0, _array.first)(conclusions), conclusion = firstConclusion; ///
36
- var ruleProofVerified = true; ///
37
- if (ruleProofNode !== null) {
38
- ruleProofVerified = (0, _ruleProof.default)(ruleProofNode, conclusion, localContext);
35
+ var metaproofVerified = true; ///
36
+ var firstConclusion = (0, _array.first)(conclusions), metaproofNode = metaproofNodeQuery(ruleNode), conclusion = firstConclusion; ///
37
+ if (metaproofNode !== null) {
38
+ var substitutions = [], metastatementNode = conclusion.getMetastatementNode();
39
+ metaproofVerified = (0, _metaproof.default)(metaproofNode, metastatementNode, substitutions, localContext);
39
40
  }
40
- if (ruleProofVerified) {
41
+ if (metaproofVerified) {
41
42
  var rule = _rule.default.fromLabelsPremisesConclusionAndFileContext(labels, premises, conclusion, fileContext);
42
43
  fileContext.addRule(rule);
43
44
  ruleVerified = true;
@@ -51,4 +52,4 @@ function verifyRule(ruleNode, fileContext) {
51
52
  return ruleVerified;
52
53
  }
53
54
 
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcnVsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFJ1bGUgZnJvbSBcIi4uL3J1bGVcIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCB2ZXJpZnlQcmVtaXNlcyBmcm9tIFwiLi4vdmVyaWZ5L3ByZW1pc2VzXCI7XG5pbXBvcnQgdmVyaWZ5UnVsZVByb29mIGZyb20gXCIuLi92ZXJpZnkvcnVsZVByb29mXCI7XG5pbXBvcnQgdmVyaWZ5Q29uY2x1c2lvbiBmcm9tIFwiLi4vdmVyaWZ5L2NvbmNsdXNpb25cIjtcbmltcG9ydCBNZXRhTGV2ZWxMb2NhbENvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvbG9jYWwvbWV0YUxldmVsXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBsYWJlbE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL3J1bGUvbGFiZWxcIiksXG4gICAgICBwcmVtaXNlc05vZGVRdWVyeSA9IG5vZGVzUXVlcnkoXCIvcnVsZS9wcmVtaXNlXCIpLFxuICAgICAgcnVsZVByb29mTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3J1bGUvcnVsZVByb29mIVwiKSxcbiAgICAgIGNvbmNsdXNpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcnVsZS9jb25jbHVzaW9uIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UnVsZShydWxlTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IHJ1bGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGxhYmVsTm9kZXMgPSBsYWJlbE5vZGVzUXVlcnkocnVsZU5vZGUpLFxuICAgICAgICBsYWJlbHNTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2Rlc0FzU3RyaW5nKGxhYmVsTm9kZXMpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2xhYmVsc1N0cmluZ30nIHJ1bGUuLi5gLCBydWxlTm9kZSk7XG5cbiAgY29uc3QgbGFiZWxzID0gW10sXG4gICAgICAgIGxhYmVsc1ZlcmlmaWVkID0gdmVyaWZ5TGFiZWxzKGxhYmVsTm9kZXMsIGxhYmVscywgZmlsZUNvbnRleHQpO1xuXG4gIGlmIChsYWJlbHNWZXJpZmllZCkge1xuICAgIGNvbnN0IG1ldGFMZXZlbExvY2FsQ29udGV4dCA9IE1ldGFMZXZlbExvY2FsQ29udGV4dC5mcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpLFxuICAgICAgICAgIHByZW1pc2VzID0gW10sXG4gICAgICAgICAgbG9jYWxDb250ZXh0ID0gbWV0YUxldmVsTG9jYWxDb250ZXh0LCAvLy9cbiAgICAgICAgICBwcmVtaXNlTm9kZXMgPSBwcmVtaXNlc05vZGVRdWVyeShydWxlTm9kZSksXG4gICAgICAgICAgcHJlbWlzZXNWZXJpZmllZCA9IHZlcmlmeVByZW1pc2VzKHByZW1pc2VOb2RlcywgcHJlbWlzZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAocHJlbWlzZXNWZXJpZmllZCkge1xuICAgICAgY29uc3QgY29uY2x1c2lvbnMgPSBbXSxcbiAgICAgICAgICAgIGNvbmNsdXNpb25Ob2RlID0gY29uY2x1c2lvbk5vZGVRdWVyeShydWxlTm9kZSksXG4gICAgICAgICAgICBjb25jbHVzaW9uVmVyaWZpZWQgPSB2ZXJpZnlDb25jbHVzaW9uKGNvbmNsdXNpb25Ob2RlLCBjb25jbHVzaW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGNvbmNsdXNpb25WZXJpZmllZCkge1xuICAgICAgICBjb25zdCBydWxlUHJvb2ZOb2RlID0gcnVsZVByb29mTm9kZVF1ZXJ5KHJ1bGVOb2RlKSxcbiAgICAgICAgICAgICAgZmlyc3RDb25jbHVzaW9uID0gZmlyc3QoY29uY2x1c2lvbnMpLFxuICAgICAgICAgICAgICBjb25jbHVzaW9uID0gZmlyc3RDb25jbHVzaW9uOyAvLy9cblxuICAgICAgICBsZXQgcnVsZVByb29mVmVyaWZpZWQgPSB0cnVlOyAvLy9cblxuICAgICAgICBpZiAocnVsZVByb29mTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICAgIHJ1bGVQcm9vZlZlcmlmaWVkID0gdmVyaWZ5UnVsZVByb29mKHJ1bGVQcm9vZk5vZGUsIGNvbmNsdXNpb24sIGxvY2FsQ29udGV4dCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocnVsZVByb29mVmVyaWZpZWQpIHtcbiAgICAgICAgICBjb25zdCBydWxlID0gUnVsZS5mcm9tTGFiZWxzUHJlbWlzZXNDb25jbHVzaW9uQW5kRmlsZUNvbnRleHQobGFiZWxzLCBwcmVtaXNlcywgY29uY2x1c2lvbiwgZmlsZUNvbnRleHQpO1xuXG4gICAgICAgICAgZmlsZUNvbnRleHQuYWRkUnVsZShydWxlKTtcblxuICAgICAgICAgIHJ1bGVWZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAocnVsZVZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtsYWJlbHNTdHJpbmd9JyBydWxlLmAsIHJ1bGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBydWxlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UnVsZSIsImxhYmVsTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJwcmVtaXNlc05vZGVRdWVyeSIsInJ1bGVQcm9vZk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsImNvbmNsdXNpb25Ob2RlUXVlcnkiLCJydWxlTm9kZSIsImZpbGVDb250ZXh0IiwicnVsZVZlcmlmaWVkIiwibGFiZWxOb2RlcyIsImxhYmVsc1N0cmluZyIsIm5vZGVzQXNTdHJpbmciLCJ0cmFjZSIsImxhYmVscyIsImxhYmVsc1ZlcmlmaWVkIiwidmVyaWZ5TGFiZWxzIiwibWV0YUxldmVsTG9jYWxDb250ZXh0IiwiTWV0YUxldmVsTG9jYWxDb250ZXh0IiwiZnJvbUZpbGVDb250ZXh0IiwicHJlbWlzZXMiLCJsb2NhbENvbnRleHQiLCJwcmVtaXNlTm9kZXMiLCJwcmVtaXNlc1ZlcmlmaWVkIiwidmVyaWZ5UHJlbWlzZXMiLCJjb25jbHVzaW9ucyIsImNvbmNsdXNpb25Ob2RlIiwiY29uY2x1c2lvblZlcmlmaWVkIiwidmVyaWZ5Q29uY2x1c2lvbiIsInJ1bGVQcm9vZk5vZGUiLCJmaXJzdENvbmNsdXNpb24iLCJmaXJzdCIsImNvbmNsdXNpb24iLCJydWxlUHJvb2ZWZXJpZmllZCIsInZlcmlmeVJ1bGVQcm9vZiIsInJ1bGUiLCJSdWxlIiwiZnJvbUxhYmVsc1ByZW1pc2VzQ29uY2x1c2lvbkFuZEZpbGVDb250ZXh0IiwiYWRkUnVsZSIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUF3QkE7OzsyREFmUDs2REFDUTsrREFDRTtnRUFDQztpRUFDQztnRUFDSztxQkFFWjtxQkFDZ0I7Ozs7OztBQUV0QyxJQUFNQyxrQkFBa0JDLElBQUFBLGlCQUFVLEVBQUMsZ0JBQzdCQyxvQkFBb0JELElBQUFBLGlCQUFVLEVBQUMsa0JBQy9CRSxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMscUJBQy9CQyxzQkFBc0JELElBQUFBLGdCQUFTLEVBQUM7QUFFdkIsU0FBU0wsV0FBV08sUUFBUSxFQUFFQyxXQUFXO0lBQ3RELElBQUlDLGVBQWU7SUFFbkIsSUFBTUMsYUFBYVQsZ0JBQWdCTSxXQUM3QkksZUFBZUgsWUFBWUksYUFBYSxDQUFDRjtJQUUvQ0YsWUFBWUssS0FBSyxDQUFDLEFBQUMsa0JBQThCLE9BQWJGLGNBQWEsY0FBWUo7SUFFN0QsSUFBTU8sU0FBUyxFQUFFLEVBQ1hDLGlCQUFpQkMsSUFBQUEsZUFBWSxFQUFDTixZQUFZSSxRQUFRTjtJQUV4RCxJQUFJTyxnQkFBZ0I7UUFDbEIsSUFBTUUsd0JBQXdCQyxrQkFBcUIsQ0FBQ0MsZUFBZSxDQUFDWCxjQUM5RFksV0FBVyxFQUFFLEVBQ2JDLGVBQWVKLHVCQUNmSyxlQUFlbkIsa0JBQWtCSSxXQUNqQ2dCLG1CQUFtQkMsSUFBQUEsaUJBQWMsRUFBQ0YsY0FBY0YsVUFBVUM7UUFFaEUsSUFBSUUsa0JBQWtCO1lBQ3BCLElBQU1FLGNBQWMsRUFBRSxFQUNoQkMsaUJBQWlCcEIsb0JBQW9CQyxXQUNyQ29CLHFCQUFxQkMsSUFBQUEsbUJBQWdCLEVBQUNGLGdCQUFnQkQsYUFBYUo7WUFFekUsSUFBSU0sb0JBQW9CO2dCQUN0QixJQUFNRSxnQkFBZ0J6QixtQkFBbUJHLFdBQ25DdUIsa0JBQWtCQyxJQUFBQSxZQUFLLEVBQUNOLGNBQ3hCTyxhQUFhRixpQkFBaUIsR0FBRztnQkFFdkMsSUFBSUcsb0JBQW9CLE1BQU0sR0FBRztnQkFFakMsSUFBSUosa0JBQWtCLE1BQU07b0JBQzFCSSxvQkFBb0JDLElBQUFBLGtCQUFlLEVBQUNMLGVBQWVHLFlBQVlYO2dCQUNqRTtnQkFFQSxJQUFJWSxtQkFBbUI7b0JBQ3JCLElBQU1FLE9BQU9DLGFBQUksQ0FBQ0MsMENBQTBDLENBQUN2QixRQUFRTSxVQUFVWSxZQUFZeEI7b0JBRTNGQSxZQUFZOEIsT0FBTyxDQUFDSDtvQkFFcEIxQixlQUFlO2dCQUNqQjtZQUNGO1FBQ0Y7SUFDRjtJQUVBLElBQUlBLGNBQWM7UUFDaEJELFlBQVkrQixLQUFLLENBQUMsQUFBQyxvQkFBZ0MsT0FBYjVCLGNBQWEsWUFBVUo7SUFDL0Q7SUFFQSxPQUFPRTtBQUNUIn0=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcnVsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFJ1bGUgZnJvbSBcIi4uL3J1bGVcIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCB2ZXJpZnlQcmVtaXNlcyBmcm9tIFwiLi4vdmVyaWZ5L3ByZW1pc2VzXCI7XG5pbXBvcnQgdmVyaWZ5TWV0YXByb29mIGZyb20gXCIuLi92ZXJpZnkvbWV0YXByb29mXCI7XG5pbXBvcnQgdmVyaWZ5Q29uY2x1c2lvbiBmcm9tIFwiLi4vdmVyaWZ5L2NvbmNsdXNpb25cIjtcbmltcG9ydCBNZXRhTGV2ZWxMb2NhbENvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvbG9jYWwvbWV0YUxldmVsXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBsYWJlbE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL3J1bGUvbGFiZWxcIiksXG4gICAgICBwcmVtaXNlc05vZGVRdWVyeSA9IG5vZGVzUXVlcnkoXCIvcnVsZS9wcmVtaXNlXCIpLFxuICAgICAgbWV0YXByb29mTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3J1bGUvbWV0YXByb29mIVwiKSxcbiAgICAgIGNvbmNsdXNpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcnVsZS9jb25jbHVzaW9uIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UnVsZShydWxlTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IHJ1bGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGxhYmVsTm9kZXMgPSBsYWJlbE5vZGVzUXVlcnkocnVsZU5vZGUpLFxuICAgICAgICBsYWJlbHNTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2Rlc0FzU3RyaW5nKGxhYmVsTm9kZXMpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2xhYmVsc1N0cmluZ30nIHJ1bGUuLi5gLCBydWxlTm9kZSk7XG5cbiAgY29uc3QgbGFiZWxzID0gW10sXG4gICAgICAgIGxhYmVsc1ZlcmlmaWVkID0gdmVyaWZ5TGFiZWxzKGxhYmVsTm9kZXMsIGxhYmVscywgZmlsZUNvbnRleHQpO1xuXG4gIGlmIChsYWJlbHNWZXJpZmllZCkge1xuICAgIGNvbnN0IG1ldGFMZXZlbExvY2FsQ29udGV4dCA9IE1ldGFMZXZlbExvY2FsQ29udGV4dC5mcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpLFxuICAgICAgICAgIHByZW1pc2VzID0gW10sXG4gICAgICAgICAgbG9jYWxDb250ZXh0ID0gbWV0YUxldmVsTG9jYWxDb250ZXh0LCAvLy9cbiAgICAgICAgICBwcmVtaXNlTm9kZXMgPSBwcmVtaXNlc05vZGVRdWVyeShydWxlTm9kZSksXG4gICAgICAgICAgcHJlbWlzZXNWZXJpZmllZCA9IHZlcmlmeVByZW1pc2VzKHByZW1pc2VOb2RlcywgcHJlbWlzZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAocHJlbWlzZXNWZXJpZmllZCkge1xuICAgICAgY29uc3QgY29uY2x1c2lvbnMgPSBbXSxcbiAgICAgICAgICAgIGNvbmNsdXNpb25Ob2RlID0gY29uY2x1c2lvbk5vZGVRdWVyeShydWxlTm9kZSksXG4gICAgICAgICAgICBjb25jbHVzaW9uVmVyaWZpZWQgPSB2ZXJpZnlDb25jbHVzaW9uKGNvbmNsdXNpb25Ob2RlLCBjb25jbHVzaW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGNvbmNsdXNpb25WZXJpZmllZCkge1xuICAgICAgICBsZXQgbWV0YXByb29mVmVyaWZpZWQgPSB0cnVlOyAvLy9cblxuICAgICAgICBjb25zdCBmaXJzdENvbmNsdXNpb24gPSBmaXJzdChjb25jbHVzaW9ucyksXG4gICAgICAgICAgICAgIG1ldGFwcm9vZk5vZGUgPSBtZXRhcHJvb2ZOb2RlUXVlcnkocnVsZU5vZGUpLFxuICAgICAgICAgICAgICBjb25jbHVzaW9uID0gZmlyc3RDb25jbHVzaW9uOyAvLy9cblxuICAgICAgICBpZiAobWV0YXByb29mTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IHN1YnN0aXR1dGlvbnMgPSBbXSxcbiAgICAgICAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZSA9IGNvbmNsdXNpb24uZ2V0TWV0YXN0YXRlbWVudE5vZGUoKTtcblxuICAgICAgICAgIG1ldGFwcm9vZlZlcmlmaWVkID0gdmVyaWZ5TWV0YXByb29mKG1ldGFwcm9vZk5vZGUsIG1ldGFzdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG1ldGFwcm9vZlZlcmlmaWVkKSB7XG4gICAgICAgICAgY29uc3QgcnVsZSA9IFJ1bGUuZnJvbUxhYmVsc1ByZW1pc2VzQ29uY2x1c2lvbkFuZEZpbGVDb250ZXh0KGxhYmVscywgcHJlbWlzZXMsIGNvbmNsdXNpb24sIGZpbGVDb250ZXh0KTtcblxuICAgICAgICAgIGZpbGVDb250ZXh0LmFkZFJ1bGUocnVsZSk7XG5cbiAgICAgICAgICBydWxlVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHJ1bGVWZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bGFiZWxzU3RyaW5nfScgcnVsZS5gLCBydWxlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gcnVsZVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVJ1bGUiLCJsYWJlbE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwicHJlbWlzZXNOb2RlUXVlcnkiLCJtZXRhcHJvb2ZOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJjb25jbHVzaW9uTm9kZVF1ZXJ5IiwicnVsZU5vZGUiLCJmaWxlQ29udGV4dCIsInJ1bGVWZXJpZmllZCIsImxhYmVsTm9kZXMiLCJsYWJlbHNTdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwidHJhY2UiLCJsYWJlbHMiLCJsYWJlbHNWZXJpZmllZCIsInZlcmlmeUxhYmVscyIsIm1ldGFMZXZlbExvY2FsQ29udGV4dCIsIk1ldGFMZXZlbExvY2FsQ29udGV4dCIsImZyb21GaWxlQ29udGV4dCIsInByZW1pc2VzIiwibG9jYWxDb250ZXh0IiwicHJlbWlzZU5vZGVzIiwicHJlbWlzZXNWZXJpZmllZCIsInZlcmlmeVByZW1pc2VzIiwiY29uY2x1c2lvbnMiLCJjb25jbHVzaW9uTm9kZSIsImNvbmNsdXNpb25WZXJpZmllZCIsInZlcmlmeUNvbmNsdXNpb24iLCJtZXRhcHJvb2ZWZXJpZmllZCIsImZpcnN0Q29uY2x1c2lvbiIsImZpcnN0IiwibWV0YXByb29mTm9kZSIsImNvbmNsdXNpb24iLCJzdWJzdGl0dXRpb25zIiwibWV0YXN0YXRlbWVudE5vZGUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsInZlcmlmeU1ldGFwcm9vZiIsInJ1bGUiLCJSdWxlIiwiZnJvbUxhYmVsc1ByZW1pc2VzQ29uY2x1c2lvbkFuZEZpbGVDb250ZXh0IiwiYWRkUnVsZSIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUF3QkE7OzsyREFmUDs2REFDUTsrREFDRTtnRUFDQztpRUFDQztnRUFDSztxQkFFWjtxQkFDZ0I7Ozs7OztBQUV0QyxJQUFNQyxrQkFBa0JDLElBQUFBLGlCQUFVLEVBQUMsZ0JBQzdCQyxvQkFBb0JELElBQUFBLGlCQUFVLEVBQUMsa0JBQy9CRSxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMscUJBQy9CQyxzQkFBc0JELElBQUFBLGdCQUFTLEVBQUM7QUFFdkIsU0FBU0wsV0FBV08sUUFBUSxFQUFFQyxXQUFXO0lBQ3RELElBQUlDLGVBQWU7SUFFbkIsSUFBTUMsYUFBYVQsZ0JBQWdCTSxXQUM3QkksZUFBZUgsWUFBWUksYUFBYSxDQUFDRjtJQUUvQ0YsWUFBWUssS0FBSyxDQUFDLEFBQUMsa0JBQThCLE9BQWJGLGNBQWEsY0FBWUo7SUFFN0QsSUFBTU8sU0FBUyxFQUFFLEVBQ1hDLGlCQUFpQkMsSUFBQUEsZUFBWSxFQUFDTixZQUFZSSxRQUFRTjtJQUV4RCxJQUFJTyxnQkFBZ0I7UUFDbEIsSUFBTUUsd0JBQXdCQyxrQkFBcUIsQ0FBQ0MsZUFBZSxDQUFDWCxjQUM5RFksV0FBVyxFQUFFLEVBQ2JDLGVBQWVKLHVCQUNmSyxlQUFlbkIsa0JBQWtCSSxXQUNqQ2dCLG1CQUFtQkMsSUFBQUEsaUJBQWMsRUFBQ0YsY0FBY0YsVUFBVUM7UUFFaEUsSUFBSUUsa0JBQWtCO1lBQ3BCLElBQU1FLGNBQWMsRUFBRSxFQUNoQkMsaUJBQWlCcEIsb0JBQW9CQyxXQUNyQ29CLHFCQUFxQkMsSUFBQUEsbUJBQWdCLEVBQUNGLGdCQUFnQkQsYUFBYUo7WUFFekUsSUFBSU0sb0JBQW9CO2dCQUN0QixJQUFJRSxvQkFBb0IsTUFBTSxHQUFHO2dCQUVqQyxJQUFNQyxrQkFBa0JDLElBQUFBLFlBQUssRUFBQ04sY0FDeEJPLGdCQUFnQjVCLG1CQUFtQkcsV0FDbkMwQixhQUFhSCxpQkFBaUIsR0FBRztnQkFFdkMsSUFBSUUsa0JBQWtCLE1BQU07b0JBQzFCLElBQU1FLGdCQUFnQixFQUFFLEVBQ2xCQyxvQkFBb0JGLFdBQVdHLG9CQUFvQjtvQkFFekRQLG9CQUFvQlEsSUFBQUEsa0JBQWUsRUFBQ0wsZUFBZUcsbUJBQW1CRCxlQUFlYjtnQkFDdkY7Z0JBRUEsSUFBSVEsbUJBQW1CO29CQUNyQixJQUFNUyxPQUFPQyxhQUFJLENBQUNDLDBDQUEwQyxDQUFDMUIsUUFBUU0sVUFBVWEsWUFBWXpCO29CQUUzRkEsWUFBWWlDLE9BQU8sQ0FBQ0g7b0JBRXBCN0IsZUFBZTtnQkFDakI7WUFDRjtRQUNGO0lBQ0Y7SUFFQSxJQUFJQSxjQUFjO1FBQ2hCRCxZQUFZa0MsS0FBSyxDQUFDLEFBQUMsb0JBQWdDLE9BQWIvQixjQUFhLFlBQVVKO0lBQy9EO0lBRUEsT0FBT0U7QUFDVCJ9
@@ -25,7 +25,7 @@ function _interop_require_default(obj) {
25
25
  default: obj
26
26
  };
27
27
  }
28
- var variableNodeQuery = (0, _query.nodeQuery)("/statement/term/variable!"), operatorTerminalNodesQuery = (0, _query.nodesQuery)("/statement/@operator"), statementVariableNodesQuery = (0, _query.nodesQuery)("/statement/metaArgument/statement//variable");
28
+ var termNodeQuery = (0, _query.nodeQuery)("/statement/term!"), statementTermNodesQuery = (0, _query.nodesQuery)("/statement/metaArgument/statement//term"), operatorTerminalNodesQuery = (0, _query.nodesQuery)("/statement/@operator");
29
29
  function verifyStatementAsContainedAssertion(statementNode, assignments, derived, localContext) {
30
30
  var statementVerifiedAsContainedAssertion;
31
31
  var statementContainedAssertion = isStatementContainedAssertion(statementNode);
@@ -53,25 +53,20 @@ function verifyStatementAsDerivedContainedAssertion(statementNode, assignments,
53
53
  if (derived) {
54
54
  var statementString = localContext.nodeAsString(statementNode);
55
55
  localContext.trace("Verifying the derived '".concat(statementString, "' statement as a contained assertion..."), statementNode);
56
- var statementNegated = (0, _verify.isStatementNegated)(statementNode), variableNode = variableNodeQuery(statementNode), negated = statementNegated; ///
57
- if (false) {
58
- ///
59
- } else if (variableNode !== null) {
60
- var statementVariableNodes = statementVariableNodesQuery(statementNode), variableNodeMatchesMetaArgumentVariableNode = statementVariableNodes.some(function(statementVariableNode) {
61
- var variableNodeMatchesMetaArgumentVariableNode = variableNode.match(statementVariableNode);
62
- if (variableNodeMatchesMetaArgumentVariableNode) {
63
- return true;
64
- }
65
- });
66
- if (!negated) {
67
- if (variableNodeMatchesMetaArgumentVariableNode) {
68
- statementVerifiedAsDefinedContainedAssertion = true;
69
- }
56
+ var statementNegated = (0, _verify.isStatementNegated)(statementNode), termNode = termNodeQuery(statementNode), negated = statementNegated, statementTermNodes = statementTermNodesQuery(statementNode), termNodeMatchesMetaArgumentVariableNode = statementTermNodes.some(function(statementTermNode) {
57
+ var termNodeMatchesMetaArgumentVariableNode = termNode.match(statementTermNode);
58
+ if (termNodeMatchesMetaArgumentVariableNode) {
59
+ return true;
70
60
  }
71
- if (negated) {
72
- if (!variableNodeMatchesMetaArgumentVariableNode) {
73
- statementVerifiedAsDefinedContainedAssertion = true;
74
- }
61
+ });
62
+ if (!negated) {
63
+ if (termNodeMatchesMetaArgumentVariableNode) {
64
+ statementVerifiedAsDefinedContainedAssertion = true;
65
+ }
66
+ }
67
+ if (negated) {
68
+ if (!termNodeMatchesMetaArgumentVariableNode) {
69
+ statementVerifiedAsDefinedContainedAssertion = true;
75
70
  }
76
71
  }
77
72
  if (statementVerifiedAsDefinedContainedAssertion) {
@@ -111,4 +106,4 @@ function isStatementContainedAssertion(statementNode) {
111
106
  return statementContainedAssertion;
112
107
  }
113
108
 
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50QXNDb250YWluZWRBc3NlcnRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBtZXRhTGV2ZWxOb2RlVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyL25vZGUvbWV0YUxldmVsXCI7XG5cbmltcG9ydCB7IENPTlRBSU5FRCB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGlzU3RhdGVtZW50TmVnYXRlZCB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmVyaWZ5XCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC90ZXJtL3ZhcmlhYmxlIVwiKSxcbiAgICAgIG9wZXJhdG9yVGVybWluYWxOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9zdGF0ZW1lbnQvQG9wZXJhdG9yXCIpLFxuICAgICAgc3RhdGVtZW50VmFyaWFibGVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9zdGF0ZW1lbnQvbWV0YUFyZ3VtZW50L3N0YXRlbWVudC8vdmFyaWFibGVcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVN0YXRlbWVudEFzQ29udGFpbmVkQXNzZXJ0aW9uKHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlbWVudFZlcmlmaWVkQXNDb250YWluZWRBc3NlcnRpb247XG5cbiAgY29uc3Qgc3RhdGVtZW50Q29udGFpbmVkQXNzZXJ0aW9uID0gaXNTdGF0ZW1lbnRDb250YWluZWRBc3NlcnRpb24oc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKHN0YXRlbWVudENvbnRhaW5lZEFzc2VydGlvbikge1xuICAgIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7c3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIHN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50RnVuY3Rpb25zID0gW1xuICAgICAgdmVyaWZ5U3RhdGVtZW50QXNEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uLFxuICAgICAgdmVyaWZ5U3RhdGVtZW50QXNTdGF0ZWRDb250YWluZWRBc3NlcnRpb25cbiAgICBdO1xuXG4gICAgc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbiA9IHN0YXRlbWVudEZ1bmN0aW9ucy5zb21lKChzdGF0ZW1lbnRGdW5jdGlvbikgPT4ge1xuICAgICAgY29uc3Qgc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbiA9IHN0YXRlbWVudEZ1bmN0aW9uKHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbikge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZEFzQ29udGFpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtzdGF0ZW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnQgYXMgYSBjb250YWluZWQgYXNzZXJ0aW9uLmAsIHN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZEFzQ29udGFpbmVkQXNzZXJ0aW9uO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnRBc0Rlcml2ZWRDb250YWluZWRBc3NlcnRpb24oc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRDb250YWluZWRBc3NlcnRpb24gPSBmYWxzZTtcblxuICBpZiAoZGVyaXZlZCkge1xuICAgIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgZGVyaXZlZCAnJHtzdGF0ZW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnQgYXMgYSBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBzdGF0ZW1lbnROZWdhdGVkID0gaXNTdGF0ZW1lbnROZWdhdGVkKHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIG5lZ2F0ZWQgPSBzdGF0ZW1lbnROZWdhdGVkOyAgLy8vXG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzID0gc3RhdGVtZW50VmFyaWFibGVOb2Rlc1F1ZXJ5KHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgICAgdmFyaWFibGVOb2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSA9IHN0YXRlbWVudFZhcmlhYmxlTm9kZXMuc29tZSgoc3RhdGVtZW50VmFyaWFibGVOb2RlKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHZhcmlhYmxlTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUgPSB2YXJpYWJsZU5vZGUubWF0Y2goc3RhdGVtZW50VmFyaWFibGVOb2RlKTtcblxuICAgICAgICAgICAgICBpZiAodmFyaWFibGVOb2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgaWYgKCFuZWdhdGVkKSB7XG4gICAgICAgIGlmICh2YXJpYWJsZU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRDb250YWluZWRBc3NlcnRpb24gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChuZWdhdGVkKSB7XG4gICAgICAgIGlmICghdmFyaWFibGVOb2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSkge1xuICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQ29udGFpbmVkQXNzZXJ0aW9uID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZENvbnRhaW5lZEFzc2VydGlvbikge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgZGVyaXZlZCAnJHtzdGF0ZW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnQgYXMgYSBjb250YWluZWQgYXNzZXJ0aW9uLmAsIHN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZENvbnRhaW5lZEFzc2VydGlvbjtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5U3RhdGVtZW50QXNTdGF0ZWRDb250YWluZWRBc3NlcnRpb24oc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50VmVyaWZpZWRBc1N0YXRlZENvbnRhaW5lZEFzc2VydGlvbiA9IGZhbHNlO1xuXG4gIGlmICghZGVyaXZlZCkge1xuICAgIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgc3RhdGVkICcke3N0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudCBhcyBhIGNvbnRhaW5lZCBhc3NlcnRpb24uLi5gLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IGludHJpbnNpY0xldmVsID0gbG9jYWxDb250ZXh0LmlzSW50cmluc2ljTGV2ZWwoKTtcblxuICAgIGlmIChpbnRyaW5zaWNMZXZlbCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgc3RhdGVkICcke3N0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudCBhcyBhIGNvbnRhaW5lZCBhc3NlcnRpb24gY2Fubm90IGJlIHZlcmlmaWVkIGF0IGludHJpbnNpYyBsZXZlbC5gLCBzdGF0ZW1lbnROb2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gc3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG1ldGFMZXZlbE5vZGVWZXJpZmllci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBsb2NhbENvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgc3RhdGVtZW50VmVyaWZpZWRBc1N0YXRlZENvbnRhaW5lZEFzc2VydGlvbiA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWRBc1N0YXRlZENvbnRhaW5lZEFzc2VydGlvbikge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgc3RhdGVkICcke3N0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudCBhcyBhIGNvbnRhaW5lZCBhc3NlcnRpb24uYCwgc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN0YXRlbWVudFZlcmlmaWVkQXNTdGF0ZWRDb250YWluZWRBc3NlcnRpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1N0YXRlbWVudENvbnRhaW5lZEFzc2VydGlvbihzdGF0ZW1lbnROb2RlKSB7XG4gIGNvbnN0IG9wZXJhdG9yVGVybWluYWxOb2RlcyA9IG9wZXJhdG9yVGVybWluYWxOb2Rlc1F1ZXJ5KHN0YXRlbWVudE5vZGUpLFxuICAgICAgICBzdGF0ZW1lbnRDb250YWluZWRBc3NlcnRpb24gPSBvcGVyYXRvclRlcm1pbmFsTm9kZXMuc29tZSgob3BlcmF0b3JUZXJtaW5hbE5vZGUpID0+IHtcbiAgICAgICAgICBjb25zdCBjb250ZW50ID0gb3BlcmF0b3JUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICAgICAgICAgIGNvbnRlbnRDb250YWluZWQgPSAoY29udGVudCA9PT0gQ09OVEFJTkVEKTtcblxuICAgICAgICAgIGlmIChjb250ZW50Q29udGFpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gIHJldHVybiBzdGF0ZW1lbnRDb250YWluZWRBc3NlcnRpb247XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5U3RhdGVtZW50QXNDb250YWluZWRBc3NlcnRpb24iLCJpc1N0YXRlbWVudENvbnRhaW5lZEFzc2VydGlvbiIsInZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwib3BlcmF0b3JUZXJtaW5hbE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5Iiwic3RhdGVtZW50VmFyaWFibGVOb2Rlc1F1ZXJ5Iiwic3RhdGVtZW50Tm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsInN0YXRlbWVudFZlcmlmaWVkQXNDb250YWluZWRBc3NlcnRpb24iLCJzdGF0ZW1lbnRDb250YWluZWRBc3NlcnRpb24iLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInN0YXRlbWVudEZ1bmN0aW9ucyIsInZlcmlmeVN0YXRlbWVudEFzRGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlbWVudEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uIiwic29tZSIsInN0YXRlbWVudEZ1bmN0aW9uIiwiZGVidWciLCJzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZENvbnRhaW5lZEFzc2VydGlvbiIsInN0YXRlbWVudE5lZ2F0ZWQiLCJpc1N0YXRlbWVudE5lZ2F0ZWQiLCJ2YXJpYWJsZU5vZGUiLCJuZWdhdGVkIiwic3RhdGVtZW50VmFyaWFibGVOb2RlcyIsInZhcmlhYmxlTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnRWYXJpYWJsZU5vZGUiLCJtYXRjaCIsInN0YXRlbWVudFZlcmlmaWVkQXNTdGF0ZWRDb250YWluZWRBc3NlcnRpb24iLCJpbnRyaW5zaWNMZXZlbCIsImlzSW50cmluc2ljTGV2ZWwiLCJub25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsIm1ldGFMZXZlbE5vZGVWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsInZlcmlmaWVkQWhlYWQiLCJvcGVyYXRvclRlcm1pbmFsTm9kZXMiLCJvcGVyYXRvclRlcm1pbmFsTm9kZSIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwiY29udGVudENvbnRhaW5lZCIsIkNPTlRBSU5FRCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBWUEsT0E2QkM7ZUE3QnVCQTs7SUEyR1JDLDZCQUE2QjtlQUE3QkE7OztnRUFySGtCO3lCQUVSO3NCQUNTO3FCQUNHOzs7Ozs7QUFFdEMs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
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50QXNDb250YWluZWRBc3NlcnRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBtZXRhTGV2ZWxOb2RlVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyL25vZGUvbWV0YUxldmVsXCI7XG5cbmltcG9ydCB7IENPTlRBSU5FRCB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGlzU3RhdGVtZW50TmVnYXRlZCB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmVyaWZ5XCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L3Rlcm0hXCIpLFxuICAgICAgc3RhdGVtZW50VGVybU5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL3N0YXRlbWVudC9tZXRhQXJndW1lbnQvc3RhdGVtZW50Ly90ZXJtXCIpLFxuICAgICAgb3BlcmF0b3JUZXJtaW5hbE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL3N0YXRlbWVudC9Ab3BlcmF0b3JcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVN0YXRlbWVudEFzQ29udGFpbmVkQXNzZXJ0aW9uKHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlbWVudFZlcmlmaWVkQXNDb250YWluZWRBc3NlcnRpb247XG5cbiAgY29uc3Qgc3RhdGVtZW50Q29udGFpbmVkQXNzZXJ0aW9uID0gaXNTdGF0ZW1lbnRDb250YWluZWRBc3NlcnRpb24oc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKHN0YXRlbWVudENvbnRhaW5lZEFzc2VydGlvbikge1xuICAgIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7c3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIHN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50RnVuY3Rpb25zID0gW1xuICAgICAgdmVyaWZ5U3RhdGVtZW50QXNEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uLFxuICAgICAgdmVyaWZ5U3RhdGVtZW50QXNTdGF0ZWRDb250YWluZWRBc3NlcnRpb25cbiAgICBdO1xuXG4gICAgc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbiA9IHN0YXRlbWVudEZ1bmN0aW9ucy5zb21lKChzdGF0ZW1lbnRGdW5jdGlvbikgPT4ge1xuICAgICAgY29uc3Qgc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbiA9IHN0YXRlbWVudEZ1bmN0aW9uKHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbikge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZEFzQ29udGFpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtzdGF0ZW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnQgYXMgYSBjb250YWluZWQgYXNzZXJ0aW9uLmAsIHN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZEFzQ29udGFpbmVkQXNzZXJ0aW9uO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnRBc0Rlcml2ZWRDb250YWluZWRBc3NlcnRpb24oc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRDb250YWluZWRBc3NlcnRpb24gPSBmYWxzZTtcblxuICBpZiAoZGVyaXZlZCkge1xuICAgIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgZGVyaXZlZCAnJHtzdGF0ZW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnQgYXMgYSBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBzdGF0ZW1lbnROZWdhdGVkID0gaXNTdGF0ZW1lbnROZWdhdGVkKHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBuZWdhdGVkID0gc3RhdGVtZW50TmVnYXRlZCwgLy8vXG4gICAgICAgICAgc3RhdGVtZW50VGVybU5vZGVzID0gc3RhdGVtZW50VGVybU5vZGVzUXVlcnkoc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgdGVybU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlID0gc3RhdGVtZW50VGVybU5vZGVzLnNvbWUoKHN0YXRlbWVudFRlcm1Ob2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0ZXJtTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUgPSB0ZXJtTm9kZS5tYXRjaChzdGF0ZW1lbnRUZXJtTm9kZSk7XG5cbiAgICAgICAgICAgIGlmICh0ZXJtTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG5cbiAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgIGlmICh0ZXJtTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRDb250YWluZWRBc3NlcnRpb24gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChuZWdhdGVkKSB7XG4gICAgICBpZiAoIXRlcm1Ob2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSkge1xuICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZENvbnRhaW5lZEFzc2VydGlvbiA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQ29udGFpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSBkZXJpdmVkICcke3N0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudCBhcyBhIGNvbnRhaW5lZCBhc3NlcnRpb24uYCwgc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQ29udGFpbmVkQXNzZXJ0aW9uO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnRBc1N0YXRlZENvbnRhaW5lZEFzc2VydGlvbihzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZW1lbnRWZXJpZmllZEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uID0gZmFsc2U7XG5cbiAgaWYgKCFkZXJpdmVkKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50U3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhzdGF0ZW1lbnROb2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSBzdGF0ZWQgJyR7c3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIHN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3QgaW50cmluc2ljTGV2ZWwgPSBsb2NhbENvbnRleHQuaXNJbnRyaW5zaWNMZXZlbCgpO1xuXG4gICAgaWYgKGludHJpbnNpY0xldmVsKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZSBzdGF0ZWQgJyR7c3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbiBjYW5ub3QgYmUgdmVyaWZpZWQgYXQgaW50cmluc2ljIGxldmVsLmAsIHN0YXRlbWVudE5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbWV0YUxldmVsTm9kZVZlcmlmaWVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBzdGF0ZW1lbnRWZXJpZmllZEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICAgIH1cblxuICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSBzdGF0ZWQgJyR7c3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbi5gLCBzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVtZW50VmVyaWZpZWRBc1N0YXRlZENvbnRhaW5lZEFzc2VydGlvbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzU3RhdGVtZW50Q29udGFpbmVkQXNzZXJ0aW9uKHN0YXRlbWVudE5vZGUpIHtcbiAgY29uc3Qgb3BlcmF0b3JUZXJtaW5hbE5vZGVzID0gb3BlcmF0b3JUZXJtaW5hbE5vZGVzUXVlcnkoc3RhdGVtZW50Tm9kZSksXG4gICAgICAgIHN0YXRlbWVudENvbnRhaW5lZEFzc2VydGlvbiA9IG9wZXJhdG9yVGVybWluYWxOb2Rlcy5zb21lKChvcGVyYXRvclRlcm1pbmFsTm9kZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBvcGVyYXRvclRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgICAgICAgICAgY29udGVudENvbnRhaW5lZCA9IChjb250ZW50ID09PSBDT05UQUlORUQpO1xuXG4gICAgICAgICAgaWYgKGNvbnRlbnRDb250YWluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgcmV0dXJuIHN0YXRlbWVudENvbnRhaW5lZEFzc2VydGlvbjtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnRBc0NvbnRhaW5lZEFzc2VydGlvbiIsImlzU3RhdGVtZW50Q29udGFpbmVkQXNzZXJ0aW9uIiwidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInN0YXRlbWVudFRlcm1Ob2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsIm9wZXJhdG9yVGVybWluYWxOb2Rlc1F1ZXJ5Iiwic3RhdGVtZW50Tm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsInN0YXRlbWVudFZlcmlmaWVkQXNDb250YWluZWRBc3NlcnRpb24iLCJzdGF0ZW1lbnRDb250YWluZWRBc3NlcnRpb24iLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInN0YXRlbWVudEZ1bmN0aW9ucyIsInZlcmlmeVN0YXRlbWVudEFzRGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlbWVudEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uIiwic29tZSIsInN0YXRlbWVudEZ1bmN0aW9uIiwiZGVidWciLCJzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZENvbnRhaW5lZEFzc2VydGlvbiIsInN0YXRlbWVudE5lZ2F0ZWQiLCJpc1N0YXRlbWVudE5lZ2F0ZWQiLCJ0ZXJtTm9kZSIsIm5lZ2F0ZWQiLCJzdGF0ZW1lbnRUZXJtTm9kZXMiLCJ0ZXJtTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnRUZXJtTm9kZSIsIm1hdGNoIiwic3RhdGVtZW50VmVyaWZpZWRBc1N0YXRlZENvbnRhaW5lZEFzc2VydGlvbiIsImludHJpbnNpY0xldmVsIiwiaXNJbnRyaW5zaWNMZXZlbCIsIm5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwibWV0YUxldmVsTm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwidmVyaWZpZWRBaGVhZCIsIm9wZXJhdG9yVGVybWluYWxOb2RlcyIsIm9wZXJhdG9yVGVybWluYWxOb2RlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJjb250ZW50Q29udGFpbmVkIiwiQ09OVEFJTkVEIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFZQSxPQTZCQztlQTdCdUJBOztJQXNHUkMsNkJBQTZCO2VBQTdCQTs7O2dFQWhIa0I7eUJBRVI7c0JBQ1M7cUJBQ0c7Ozs7OztBQUV0QyxJQUFNQyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMscUJBQzFCQywwQkFBMEJDLElBQUFBLGlCQUFVLEVBQUMsNENBQ3JDQyw2QkFBNkJELElBQUFBLGlCQUFVLEVBQUM7QUFFL0IsU0FBU0wsb0NBQW9DTyxhQUFhLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQzNHLElBQUlDO0lBRUosSUFBTUMsOEJBQThCWCw4QkFBOEJNO0lBRWxFLElBQUlLLDZCQUE2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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.919",
4
+ "version": "0.0.921",
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.28",
14
14
  "necessary": "^14.0.1",
15
- "occam-custom-grammars": "^5.0.822",
16
- "occam-entities": "^1.0.147",
17
- "occam-file-system": "^6.0.188",
15
+ "occam-custom-grammars": "^5.0.823",
16
+ "occam-entities": "^1.0.148",
17
+ "occam-file-system": "^6.0.189",
18
18
  "occam-grammar-utilities": "^8.0.207",
19
19
  "occam-query": "^3.1.174"
20
20
  },
@@ -3,12 +3,28 @@
3
3
  import { NOT } from "../constants";
4
4
  import { nodeQuery } from "../utilities/query";
5
5
 
6
- const secondOperatorTerminalNodeQuery = nodeQuery("/statement/@operator[1]");
6
+ const secondOperatorTerminalNodeQuery = nodeQuery("/*/@operator[1]");
7
7
 
8
8
  export function isStatementNegated(statementNode) {
9
- const secondOperatorTerminalNode = secondOperatorTerminalNodeQuery(statementNode),
10
- content = secondOperatorTerminalNode.getContent(),
11
- statementNegated = (content === NOT);
9
+ const node = statementNode, ///
10
+ negated = isNegated(node),
11
+ statementNegated = negated; ///
12
+
13
+ return statementNegated;
14
+ }
15
+
16
+ export function isMetastatementNegated(metastatementNode) {
17
+ const node = metastatementNode, ///
18
+ negated = isNegated(node),
19
+ statementNegated = negated; ///
12
20
 
13
21
  return statementNegated;
14
22
  }
23
+
24
+ function isNegated(node) {
25
+ const secondOperatorTerminalNode = secondOperatorTerminalNodeQuery(node),
26
+ content = secondOperatorTerminalNode.getContent(),
27
+ negated = (content === NOT);
28
+
29
+ return negated;
30
+ }
@@ -1,12 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  import NodesVerifier from "../../verifier/nodes";
4
+ import verifyVariableAgainstTerm from "../../verify/variableAgainstTerm";
4
5
  import verifyMetavariableAgainstMetastatement from "../../verify/metavariableAgainstMetastatement";
5
6
 
6
7
  import { nodeQuery } from "../../utilities/query";
7
8
  import { verifyNodes } from "../../utilities/verifier";
8
9
 
9
- const nonTerminalNodeQuery = nodeQuery("/*"),
10
+ const termNodeQuery = nodeQuery("/term!"),
11
+ nonTerminalNodeQuery = nodeQuery("/*"),
12
+ termVariableNodeQuery = nodeQuery("/term/variable!"),
10
13
  metastatementNodeQuery = nodeQuery("/metastatement!"),
11
14
  metastatementMetavariableNodeQuery = nodeQuery("/metastatement/metavariable!");
12
15
 
@@ -32,6 +35,23 @@ class MetaLevelNodesVerifier extends NodesVerifier {
32
35
  return nonTerminalNodeVerified;
33
36
  }
34
37
  },
38
+ {
39
+ nodeQueryA: termVariableNodeQuery,
40
+ nodeQueryB: termNodeQuery,
41
+ verifyNodes: (nodeA, nodeB, substitutions, localContextA, localContextB, verifyAhead) => {
42
+ let nonTerminalNodeVerified;
43
+
44
+ const termNodeB = nodeB, ///
45
+ termVariableNodeA = nodeA, ///
46
+ termVariableNodeVerifiedAgainstTermNode =
47
+
48
+ this.verifyTermVariableNodeAgainstTermNode(termVariableNodeA, termNodeB, substitutions, localContextA, localContextB, verifyAhead);
49
+
50
+ nonTerminalNodeVerified = termVariableNodeVerifiedAgainstTermNode; ///
51
+
52
+ return nonTerminalNodeVerified;
53
+ }
54
+ },
35
55
  {
36
56
  nodeQueryA: nonTerminalNodeQuery,
37
57
  nodeQueryB: nonTerminalNodeQuery,
@@ -68,6 +88,17 @@ class MetaLevelNodesVerifier extends NodesVerifier {
68
88
 
69
89
  return metastatementMetavariableNodeVerifiedAgainstMetastatementNode;
70
90
  }
91
+
92
+ verifyTermVariableNodeAgainstTermNode(termVariableNodeA, termNodeB, substitutions, localContextA, localContextB, verifyAhead) {
93
+ let termVariableNodeVerifiedAgainstTermNode;
94
+
95
+ const variableNodeA = termVariableNodeA, ///
96
+ termVerifiedAgainstVariable = verifyVariableAgainstTerm(variableNodeA, termNodeB, substitutions, localContextA, localContextB, verifyAhead);
97
+
98
+ termVariableNodeVerifiedAgainstTermNode = termVerifiedAgainstVariable; ///
99
+
100
+ return termVariableNodeVerifiedAgainstTermNode;
101
+ }
71
102
  }
72
103
 
73
104
  const metaLevelNodesVerifier = new MetaLevelNodesVerifier();
@@ -46,7 +46,8 @@ export default function verifyMetaLemma(metaLemmaNode, fileContext) {
46
46
  const metaproofNode = metaproofNodeQuery(metaLemmaNode),
47
47
  firstMetaConsequent = first(metaConsequents),
48
48
  metaConsequent = firstMetaConsequent, ///
49
- metaproofVerified = verifyMetaproof(metaproofNode, metaConsequent, substitutions, localContext);
49
+ metastatementNode = metaConsequent.getMetastatementNode(),
50
+ metaproofVerified = verifyMetaproof(metaproofNode, metastatementNode, substitutions, localContext);
50
51
 
51
52
  if (metaproofVerified) {
52
53
  const metaLemma = MetaLemma.fromLabelsMetaSuppositionsMetaConsequentSubstitutionsAndFileContext(labels, metaSuppositions, metaConsequent, substitutions, fileContext);
@@ -6,7 +6,7 @@ import verifyMetaSubDerivation from "../verify/metaSubDerivation";
6
6
 
7
7
  import { nodeQuery, nodesQuery } from "../utilities/query";
8
8
 
9
- const suppositionNodesQuery = nodesQuery("/metaSubproof/supposition"),
9
+ const metaSuppositionNodesQuery = nodesQuery("/metaSubproof/metaSupposition"),
10
10
  metaSubDerivationNodeQuery = nodeQuery("/metaSubproof/metaSubDerivation");
11
11
 
12
12
  export default function verifyMetaSubproof(metaSubproofNode, substitutions, localContext) {
@@ -17,8 +17,8 @@ export default function verifyMetaSubproof(metaSubproofNode, substitutions, loca
17
17
  localContext = metaLevelLocalContext; ///
18
18
 
19
19
  const metaSuppositions = [],
20
- suppositionNodes = suppositionNodesQuery(metaSubproofNode),
21
- metaSuppositionsVerified = verifyMetaSuppositions(suppositionNodes, metaSuppositions, localContext);
20
+ metaSuppositionNodes = metaSuppositionNodesQuery(metaSubproofNode),
21
+ metaSuppositionsVerified = verifyMetaSuppositions(metaSuppositionNodes, metaSuppositions, substitutions, localContext);
22
22
 
23
23
  if (metaSuppositionsVerified) {
24
24
  const metaSubDerivationNode = metaSubDerivationNodeQuery(metaSubproofNode),
@@ -41,8 +41,7 @@ export default function verifyMetaSupposition(metaSuppositionNode, metaSuppositi
41
41
  unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, assignments, derived, localContext);
42
42
 
43
43
  if (unqualifiedMetastatementVerified) {
44
- const localContext = localContext, ///
45
- assignmentAssigned = assignAssignment(assignments, localContext);
44
+ const assignmentAssigned = assignAssignment(assignments, localContext);
46
45
 
47
46
  metaSuppositionVerified = assignmentAssigned; ///
48
47
  }
@@ -7,7 +7,7 @@ import { nodeQuery } from "../utilities/query";
7
7
 
8
8
  const metaDerivationNodeQuery = nodeQuery("/metaproof/metaDerivation!");
9
9
 
10
- export default function verifyMetaproof(metaproofNode, conclusion, substitutions, localContext) {
10
+ export default function verifyMetaproof(metaproofNode, metastatementNode, substitutions, localContext) {
11
11
  let metaproofVerified = false;
12
12
 
13
13
  const metaLevelLocalContext = MetaLevelLocalContext.fromLocalContext(localContext);
@@ -19,12 +19,11 @@ export default function verifyMetaproof(metaproofNode, conclusion, substitutions
19
19
 
20
20
  if (metaDerivationVerified) {
21
21
  const lastMetaproofStep = localContext.getLastMetaproofStep(),
22
- metaproofStep = lastMetaproofStep, ///
23
- metastatementNode = metaproofStep.getMetastatementNode(),
24
- conclusionMetastatementNode = conclusion.getMetastatementNode(),
25
- metastatementNodeMatchesConclusionMetastatementNode = metastatementNode.match(conclusionMetastatementNode);
22
+ lastMetaproofStepMetastatementNode = lastMetaproofStep.getMetastatementNode(),
23
+ lastMetastatementNode = lastMetaproofStepMetastatementNode, ///
24
+ lastMetastatementNodeMatchesMetastatementNode = lastMetastatementNode.match(metastatementNode);
26
25
 
27
- metaproofVerified = metastatementNodeMatchesConclusionMetastatementNode; ///
26
+ metaproofVerified = lastMetastatementNodeMatchesMetastatementNode; ///
28
27
  }
29
28
 
30
29
  return metaproofVerified;
@@ -2,6 +2,8 @@
2
2
 
3
3
  import verifyJudgement from "../verify/judgement";
4
4
  import metaLevelNodeVerifier from "../verifier/node/metaLevel";
5
+ import verifyMetastatementAsDefinedAssertion from "./metastatementAsDefinedAssertion";
6
+ import verifyMetastatementAsContainedAssertion from "./metastatementAsContainedAssertion";
5
7
 
6
8
  import { nodeQuery } from "../utilities/query";
7
9
 
@@ -16,6 +18,8 @@ function verifyMetastatement(metastatementNode, assignments, derived, localConte
16
18
 
17
19
  const verifyMetaStatementFunctions = [
18
20
  verifyMetastatementAsJudgement,
21
+ verifyMetastatementAsDefinedAssertion,
22
+ verifyMetastatementAsContainedAssertion,
19
23
  verifyMetastatementAsIs
20
24
  ];
21
25