occam-verify-cli 0.0.892 → 0.0.893

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 (51) hide show
  1. package/lib/axiomLemmaTheoremConjecture.js +3 -3
  2. package/lib/conclusion.js +4 -3
  3. package/lib/metaConsequent.js +4 -3
  4. package/lib/metaLemmaMetatheorem.js +13 -13
  5. package/lib/metaSupposition.js +6 -5
  6. package/lib/premise.js +9 -8
  7. package/lib/rule.js +16 -15
  8. package/lib/verifier/nodes/metaLevel.js +7 -7
  9. package/lib/verify/derivation.js +10 -90
  10. package/lib/verify/metaDerivation.js +7 -87
  11. package/lib/verify/metaProofStep.js +76 -0
  12. package/lib/verify/metaSubDerivation.js +25 -0
  13. package/lib/verify/metaSubproof.js +34 -0
  14. package/lib/verify/metaproof.js +7 -8
  15. package/lib/verify/metastatement/qualified.js +53 -34
  16. package/lib/verify/metastatement/unqualified.js +16 -19
  17. package/lib/verify/proofStep.js +70 -0
  18. package/lib/verify/ruleDerivation.js +7 -85
  19. package/lib/verify/ruleProofStep.js +76 -0
  20. package/lib/verify/ruleSubDerivation.js +25 -0
  21. package/lib/verify/ruleSubproof.js +34 -0
  22. package/lib/verify/statement/qualified.js +47 -89
  23. package/lib/verify/statement/unqualified.js +16 -19
  24. package/lib/verify/subDerivation.js +25 -0
  25. package/lib/verify/subproof.js +34 -0
  26. package/package.json +4 -4
  27. package/src/axiomLemmaTheoremConjecture.js +4 -2
  28. package/src/conclusion.js +6 -4
  29. package/src/metaConsequent.js +6 -4
  30. package/src/metaLemmaMetatheorem.js +12 -12
  31. package/src/metaSupposition.js +11 -8
  32. package/src/premise.js +15 -14
  33. package/src/rule.js +16 -14
  34. package/src/verifier/nodes/metaLevel.js +6 -6
  35. package/src/verify/derivation.js +10 -138
  36. package/src/verify/metaDerivation.js +7 -135
  37. package/src/verify/metaProofStep.js +98 -0
  38. package/src/verify/metaSubDerivation.js +22 -0
  39. package/src/verify/metaSubproof.js +32 -0
  40. package/src/verify/metaproof.js +11 -11
  41. package/src/verify/metastatement/qualified.js +67 -31
  42. package/src/verify/metastatement/unqualified.js +16 -19
  43. package/src/verify/proofStep.js +88 -0
  44. package/src/verify/ruleDerivation.js +7 -133
  45. package/src/verify/ruleProofStep.js +99 -0
  46. package/src/verify/ruleSubDerivation.js +22 -0
  47. package/src/verify/ruleSubproof.js +32 -0
  48. package/src/verify/statement/qualified.js +55 -127
  49. package/src/verify/statement/unqualified.js +16 -19
  50. package/src/verify/subDerivation.js +22 -0
  51. package/src/verify/subproof.js +32 -0
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyMetaProofStep;
9
+ }
10
+ });
11
+ var _metaproof = /*#__PURE__*/ _interop_require_default(require("../step/metaproof"));
12
+ var _metaSubproof = /*#__PURE__*/ _interop_require_default(require("../verify/metaSubproof"));
13
+ var _metaSubDerivation = /*#__PURE__*/ _interop_require_default(require("../verify/metaSubDerivation"));
14
+ var _qualified = /*#__PURE__*/ _interop_require_default(require("../verify/statement/qualified"));
15
+ var _unqualified = /*#__PURE__*/ _interop_require_default(require("../verify/statement/unqualified"));
16
+ var _qualified1 = /*#__PURE__*/ _interop_require_default(require("../verify/metastatement/qualified"));
17
+ var _unqualified1 = /*#__PURE__*/ _interop_require_default(require("../verify/metastatement/unqualified"));
18
+ var _query = require("../utilities/query");
19
+ var _assignments = require("../utilities/assignments");
20
+ function _interop_require_default(obj) {
21
+ return obj && obj.__esModule ? obj : {
22
+ default: obj
23
+ };
24
+ }
25
+ var metaSubproofNodeQuery = (0, _query.nodeQuery)("/metaProofStep|lastMetaProofStep/metaSubproof!"), metastatementNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement|unqualifiedMetastatement/metastatement!"), qualifiedStatementNodeQuery = (0, _query.nodeQuery)("/metaProofStep|lastMetaProofStep/qualifiedStatement!"), unqualifiedStatementNodeQuery = (0, _query.nodeQuery)("/metaProofStep|lastMetaProofStep/unqualifiedStatement!"), qualifiedMetastatementNodeQuery = (0, _query.nodeQuery)("/metaProofStep|lastMetaProofStep/qualifiedMetastatement!"), unqualifiedMetastatementNodeQuery = (0, _query.nodeQuery)("/metaProofStep|lastMetaProofStep/unqualifiedMetastatement!");
26
+ function verifyMetaProofStep(metaProofStepNode, substitutions, localMetaContext) {
27
+ var metaProofStepVerified = false;
28
+ var metaSubproofNode = metaSubproofNodeQuery(metaProofStepNode), qualifiedStatementNode = qualifiedStatementNodeQuery(metaProofStepNode), unqualifiedStatementNode = unqualifiedStatementNodeQuery(metaProofStepNode), qualifiedMetastatementNode = qualifiedMetastatementNodeQuery(metaProofStepNode), unqualifiedMetastatementNode = unqualifiedMetastatementNodeQuery(metaProofStepNode);
29
+ if (false) {
30
+ ///
31
+ } else if (metaSubproofNode !== null) {
32
+ var metaSubproofVerified;
33
+ metaSubproofVerified = (0, _metaSubproof.default)(metaSubproofNode, localMetaContext);
34
+ if (metaSubproofVerified) {
35
+ var metaproofStep = _metaproof.default.fromMetaSubproofNode(metaSubproofNode);
36
+ localMetaContext.addMetaproofStep(metaproofStep);
37
+ metaProofStepVerified = true;
38
+ }
39
+ } else if (qualifiedStatementNode !== null) {
40
+ debugger;
41
+ } else if (unqualifiedStatementNode !== null) {
42
+ debugger;
43
+ } else if (qualifiedMetastatementNode !== null) {
44
+ var qualifiedMetastatementVerified;
45
+ var assignments = [];
46
+ qualifiedMetastatementVerified = (0, _qualified1.default)(qualifiedMetastatementNode, substitutions, assignments, localMetaContext);
47
+ if (qualifiedMetastatementVerified) {
48
+ var assignmentAssigned = (0, _assignments.assignAssignment)(assignments, localMetaContext);
49
+ qualifiedMetastatementVerified = assignmentAssigned; ///
50
+ }
51
+ if (qualifiedMetastatementVerified) {
52
+ var metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode), metaproofStep1 = _metaproof.default.fromMetastatementNode(metastatementNode);
53
+ localMetaContext.addMetaproofStep(metaproofStep1);
54
+ metaProofStepVerified = qualifiedMetastatementVerified; ///
55
+ }
56
+ } else if (unqualifiedMetastatementNode !== null) {
57
+ var unqualifiedMetastatementVerified;
58
+ var derived = true, assignments1 = [];
59
+ unqualifiedMetastatementVerified = (0, _unqualified1.default)(unqualifiedMetastatementNode, assignments1, derived, localMetaContext);
60
+ if (unqualifiedMetastatementVerified) {
61
+ var assignmentAssigned1 = (0, _assignments.assignAssignment)(assignments1, localMetaContext);
62
+ unqualifiedMetastatementVerified = assignmentAssigned1; ///
63
+ }
64
+ if (unqualifiedMetastatementVerified) {
65
+ var metastatementNode1 = metastatementNodeQuery(unqualifiedMetastatementNode), metaproofStep2 = _metaproof.default.fromMetastatementNode(metastatementNode1);
66
+ localMetaContext.addMetaproofStep(metaproofStep2);
67
+ metaProofStepVerified = true;
68
+ }
69
+ }
70
+ return metaProofStepVerified;
71
+ }
72
+ Object.assign(_metaSubDerivation.default, {
73
+ verifyMetaProofStep: verifyMetaProofStep
74
+ });
75
+
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YVByb29mU3RlcC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE1ldGFwcm9vZlN0ZXAgZnJvbSBcIi4uL3N0ZXAvbWV0YXByb29mXCI7XG5pbXBvcnQgdmVyaWZ5TWV0YVN1YnByb29mIGZyb20gXCIuLi92ZXJpZnkvbWV0YVN1YnByb29mXCI7XG5pbXBvcnQgdmVyaWZ5TWV0YVN1YkRlcml2YXRpb24gZnJvbSBcIi4uL3ZlcmlmeS9tZXRhU3ViRGVyaXZhdGlvblwiO1xuaW1wb3J0IHZlcmlmeVF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC9xdWFsaWZpZWRcIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhc3RhdGVtZW50L3F1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L21ldGFzdGF0ZW1lbnQvdW5xdWFsaWZpZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgYXNzaWduQXNzaWdubWVudCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXNzaWdubWVudHNcIjtcblxuY29uc3QgbWV0YVN1YnByb29mTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFQcm9vZlN0ZXB8bGFzdE1ldGFQcm9vZlN0ZXAvbWV0YVN1YnByb29mIVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkTWV0YXN0YXRlbWVudHx1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIiksXG4gICAgICBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVByb29mU3RlcHxsYXN0TWV0YVByb29mU3RlcC9xdWFsaWZpZWRTdGF0ZW1lbnQhXCIpLFxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVByb29mU3RlcHxsYXN0TWV0YVByb29mU3RlcC91bnF1YWxpZmllZFN0YXRlbWVudCFcIiksXG4gICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFQcm9vZlN0ZXB8bGFzdE1ldGFQcm9vZlN0ZXAvcXVhbGlmaWVkTWV0YXN0YXRlbWVudCFcIiksXG4gICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVByb29mU3RlcHxsYXN0TWV0YVByb29mU3RlcC91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlNZXRhUHJvb2ZTdGVwKG1ldGFQcm9vZlN0ZXBOb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBtZXRhUHJvb2ZTdGVwVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhU3VicHJvb2ZOb2RlID0gbWV0YVN1YnByb29mTm9kZVF1ZXJ5KG1ldGFQcm9vZlN0ZXBOb2RlKSxcbiAgICAgICAgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IHF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeShtZXRhUHJvb2ZTdGVwTm9kZSksXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5KG1ldGFQcm9vZlN0ZXBOb2RlKSxcbiAgICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5KG1ldGFQcm9vZlN0ZXBOb2RlKSxcbiAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVRdWVyeShtZXRhUHJvb2ZTdGVwTm9kZSk7XG5cbiAgaWYgKGZhbHNlKSB7XG4gICAgLy8vXG4gIH0gZWxzZSBpZiAobWV0YVN1YnByb29mTm9kZSAhPT0gbnVsbCkge1xuICAgIGxldCBtZXRhU3VicHJvb2ZWZXJpZmllZDtcblxuICAgIG1ldGFTdWJwcm9vZlZlcmlmaWVkID0gdmVyaWZ5TWV0YVN1YnByb29mKG1ldGFTdWJwcm9vZk5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgaWYgKG1ldGFTdWJwcm9vZlZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBtZXRhcHJvb2ZTdGVwID0gTWV0YXByb29mU3RlcC5mcm9tTWV0YVN1YnByb29mTm9kZShtZXRhU3VicHJvb2ZOb2RlKTtcblxuICAgICAgbG9jYWxNZXRhQ29udGV4dC5hZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgICBtZXRhUHJvb2ZTdGVwVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfSBlbHNlIGlmIChxdWFsaWZpZWRTdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgZGVidWdnZXJcbiAgfSBlbHNlIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBkZWJ1Z2dlclxuICB9IGVsc2UgaWYgKHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgbGV0IHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZDtcblxuICAgIGNvbnN0IGFzc2lnbm1lbnRzID0gW107XG5cbiAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlRdWFsaWZpZWRNZXRhc3RhdGVtZW50KHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBhc3NpZ25tZW50cywgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBhc3NpZ25tZW50QXNzaWduZWQgPSBhc3NpZ25Bc3NpZ25tZW50KGFzc2lnbm1lbnRzLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gYXNzaWdubWVudEFzc2lnbmVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgICAgbWV0YXByb29mU3RlcCA9IE1ldGFwcm9vZlN0ZXAuZnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgbG9jYWxNZXRhQ29udGV4dC5hZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgICBtZXRhUHJvb2ZTdGVwVmVyaWZpZWQgPSBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7IC8vL1xuICAgIH1cbiAgfSBlbHNlIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgbGV0IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkO1xuXG4gICAgY29uc3QgZGVyaXZlZCA9IHRydWUsXG4gICAgICAgICAgYXNzaWdubWVudHMgPSBbXTtcblxuICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50KHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgY29uc3QgYXNzaWdubWVudEFzc2lnbmVkID0gYXNzaWduQXNzaWdubWVudChhc3NpZ25tZW50cywgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gYXNzaWdubWVudEFzc2lnbmVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICAgIG1ldGFwcm9vZlN0ZXAgPSBNZXRhcHJvb2ZTdGVwLmZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuYWRkTWV0YXByb29mU3RlcChtZXRhcHJvb2ZTdGVwKTtcblxuICAgICAgbWV0YVByb29mU3RlcFZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YVByb29mU3RlcFZlcmlmaWVkO1xufVxuXG5PYmplY3QuYXNzaWduKHZlcmlmeU1ldGFTdWJEZXJpdmF0aW9uLCB7XG4gIHZlcmlmeU1ldGFQcm9vZlN0ZXBcbn0pO1xuIl0sIm5hbWVzIjpbInZlcmlmeU1ldGFQcm9vZlN0ZXAiLCJtZXRhU3VicHJvb2ZOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwicXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwibWV0YVByb29mU3RlcE5vZGUiLCJzdWJzdGl0dXRpb25zIiwibG9jYWxNZXRhQ29udGV4dCIsIm1ldGFQcm9vZlN0ZXBWZXJpZmllZCIsIm1ldGFTdWJwcm9vZk5vZGUiLCJxdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwicXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YVN1YnByb29mVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhU3VicHJvb2YiLCJtZXRhcHJvb2ZTdGVwIiwiTWV0YXByb29mU3RlcCIsImZyb21NZXRhU3VicHJvb2ZOb2RlIiwiYWRkTWV0YXByb29mU3RlcCIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsImFzc2lnbm1lbnRzIiwidmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsImFzc2lnbm1lbnRBc3NpZ25lZCIsImFzc2lnbkFzc2lnbm1lbnQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImZyb21NZXRhc3RhdGVtZW50Tm9kZSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkIiwiZGVyaXZlZCIsInZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsIk9iamVjdCIsImFzc2lnbiIsInZlcmlmeU1ldGFTdWJEZXJpdmF0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFvQkE7OztlQUF3QkE7OztnRUFsQkU7bUVBQ0s7d0VBQ0s7Z0VBQ0M7a0VBQ0U7aUVBQ0U7bUVBQ0U7cUJBRWpCOzJCQUNPOzs7Ozs7QUFFakMsSUFBTUMsd0JBQXdCQyxJQUFBQSxnQkFBUyxFQUFDLG1EQUNsQ0MseUJBQXlCRCxJQUFBQSxnQkFBUyxFQUFDLG9FQUNuQ0UsOEJBQThCRixJQUFBQSxnQkFBUyxFQUFDLHlEQUN4Q0csZ0NBQWdDSCxJQUFBQSxnQkFBUyxFQUFDLDJEQUMxQ0ksa0NBQWtDSixJQUFBQSxnQkFBUyxFQUFDLDZEQUM1Q0ssb0NBQW9DTCxJQUFBQSxnQkFBUyxFQUFDO0FBRXJDLFNBQVNGLG9CQUFvQlEsaUJBQWlCLEVBQUVDLGFBQWEsRUFBRUMsZ0JBQWdCO0lBQzVGLElBQUlDLHdCQUF3QjtJQUU1QixJQUFNQyxtQkFBbUJYLHNCQUFzQk8sb0JBQ3pDSyx5QkFBeUJULDRCQUE0Qkksb0JBQ3JETSwyQkFBMkJULDhCQUE4Qkcsb0JBQ3pETyw2QkFBNkJULGdDQUFnQ0Usb0JBQzdEUSwrQkFBK0JULGtDQUFrQ0M7SUFFdkUsSUFBSSxPQUFPO0lBQ1QsR0FBRztJQUNMLE9BQU8sSUFBSUkscUJBQXFCLE1BQU07UUFDcEMsSUFBSUs7UUFFSkEsdUJBQXVCQyxJQUFBQSxxQkFBa0IsRUFBQ04sa0JBQWtCRjtRQUU1RCxJQUFJTyxzQkFBc0I7WUFDeEIsSUFBTUUsZ0JBQWdCQyxrQkFBYSxDQUFDQyxvQkFBb0IsQ0FBQ1Q7WUFFekRGLGlCQUFpQlksZ0JBQWdCLENBQUNIO1lBRWxDUix3QkFBd0I7UUFDMUI7SUFDRixPQUFPLElBQUlFLDJCQUEyQixNQUFNO1FBQzFDLFFBQVE7SUFDVixPQUFPLElBQUlDLDZCQUE2QixNQUFNO1FBQzVDLFFBQVE7SUFDVixPQUFPLElBQUlDLCtCQUErQixNQUFNO1FBQzlDLElBQUlRO1FBRUosSUFBTUMsY0FBYyxFQUFFO1FBRXRCRCxpQ0FBaUNFLElBQUFBLG1CQUE0QixFQUFDViw0QkFBNEJOLGVBQWVlLGFBQWFkO1FBRXRILElBQUlhLGdDQUFnQztZQUNsQyxJQUFNRyxxQkFBcUJDLElBQUFBLDZCQUFnQixFQUFDSCxhQUFhZDtZQUV6RGEsaUNBQWlDRyxvQkFBb0IsR0FBRztRQUMxRDtRQUVBLElBQUlILGdDQUFnQztZQUNsQyxJQUFNSyxvQkFBb0J6Qix1QkFBdUJZLDZCQUMzQ0ksaUJBQWdCQyxrQkFBYSxDQUFDUyxxQkFBcUIsQ0FBQ0Q7WUFFMURsQixpQkFBaUJZLGdCQUFnQixDQUFDSDtZQUVsQ1Isd0JBQXdCWSxnQ0FBZ0MsR0FBRztRQUM3RDtJQUNGLE9BQU8sSUFBSVAsaUNBQWlDLE1BQU07UUFDaEQsSUFBSWM7UUFFSixJQUFNQyxVQUFVLE1BQ1ZQLGVBQWMsRUFBRTtRQUV0Qk0sbUNBQW1DRSxJQUFBQSxxQkFBOEIsRUFBQ2hCLDhCQUE4QlEsY0FBYU8sU0FBU3JCO1FBRXRILElBQUlvQixrQ0FBa0M7WUFDcEMsSUFBTUosc0JBQXFCQyxJQUFBQSw2QkFBZ0IsRUFBQ0gsY0FBYWQ7WUFFekRvQixtQ0FBbUNKLHFCQUFvQixHQUFHO1FBQzVEO1FBRUEsSUFBSUksa0NBQWtDO1lBQ3BDLElBQU1GLHFCQUFvQnpCLHVCQUF1QmEsK0JBQzNDRyxpQkFBZ0JDLGtCQUFhLENBQUNTLHFCQUFxQixDQUFDRDtZQUUxRGxCLGlCQUFpQlksZ0JBQWdCLENBQUNIO1lBRWxDUix3QkFBd0I7UUFDMUI7SUFDRjtJQUVBLE9BQU9BO0FBQ1Q7QUFFQXNCLE9BQU9DLE1BQU0sQ0FBQ0MsMEJBQXVCLEVBQUU7SUFDckNuQyxxQkFBQUE7QUFDRiJ9
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyMetaSubDerivation;
9
+ }
10
+ });
11
+ var _query = require("../utilities/query");
12
+ var metaProofStepNodesQuery = (0, _query.nodesQuery)("/metaSubDerivation/metaProofStep|lastMetaProofStep");
13
+ function verifyMetaSubDerivation(metaSubDerivationNode, localMetaContext) {
14
+ var metaSubDerivationVerified;
15
+ var metaProofStepNodes = metaProofStepNodesQuery(metaSubDerivationNode);
16
+ metaSubDerivationVerified = metaProofStepNodes.every(function(metaProofStepNode) {
17
+ var verifyMetaProofStep = verifyMetaSubDerivation.verifyMetaProofStep, metaProofStepVerified = verifyMetaProofStep(metaProofStepNode, localMetaContext);
18
+ if (metaProofStepVerified) {
19
+ return true;
20
+ }
21
+ });
22
+ return metaSubDerivationVerified;
23
+ }
24
+
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YVN1YkRlcml2YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG1ldGFQcm9vZlN0ZXBOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9tZXRhU3ViRGVyaXZhdGlvbi9tZXRhUHJvb2ZTdGVwfGxhc3RNZXRhUHJvb2ZTdGVwXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlNZXRhU3ViRGVyaXZhdGlvbihtZXRhU3ViRGVyaXZhdGlvbk5vZGUsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFTdWJEZXJpdmF0aW9uVmVyaWZpZWQ7XG5cbiAgY29uc3QgbWV0YVByb29mU3RlcE5vZGVzID0gbWV0YVByb29mU3RlcE5vZGVzUXVlcnkobWV0YVN1YkRlcml2YXRpb25Ob2RlKTtcblxuICBtZXRhU3ViRGVyaXZhdGlvblZlcmlmaWVkID0gbWV0YVByb29mU3RlcE5vZGVzLmV2ZXJ5KChtZXRhUHJvb2ZTdGVwTm9kZSkgPT4ge1xuICAgIGNvbnN0IHsgdmVyaWZ5TWV0YVByb29mU3RlcCB9ID0gdmVyaWZ5TWV0YVN1YkRlcml2YXRpb24sXG4gICAgICAgICAgbWV0YVByb29mU3RlcFZlcmlmaWVkID0gdmVyaWZ5TWV0YVByb29mU3RlcChtZXRhUHJvb2ZTdGVwTm9kZSwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YVByb29mU3RlcFZlcmlmaWVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBtZXRhU3ViRGVyaXZhdGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeU1ldGFTdWJEZXJpdmF0aW9uIiwibWV0YVByb29mU3RlcE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwibWV0YVN1YkRlcml2YXRpb25Ob2RlIiwibG9jYWxNZXRhQ29udGV4dCIsIm1ldGFTdWJEZXJpdmF0aW9uVmVyaWZpZWQiLCJtZXRhUHJvb2ZTdGVwTm9kZXMiLCJldmVyeSIsIm1ldGFQcm9vZlN0ZXBOb2RlIiwidmVyaWZ5TWV0YVByb29mU3RlcCIsIm1ldGFQcm9vZlN0ZXBWZXJpZmllZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUF3QkE7OztxQkFKRztBQUUzQixJQUFNQywwQkFBMEJDLElBQUFBLGlCQUFVLEVBQUM7QUFFNUIsU0FBU0Ysd0JBQXdCRyxxQkFBcUIsRUFBRUMsZ0JBQWdCO0lBQ3JGLElBQUlDO0lBRUosSUFBTUMscUJBQXFCTCx3QkFBd0JFO0lBRW5ERSw0QkFBNEJDLG1CQUFtQkMsS0FBSyxDQUFDLFNBQUNDO1FBQ3BELElBQU0sQUFBRUMsc0JBQXdCVCx3QkFBeEJTLHFCQUNGQyx3QkFBd0JELG9CQUFvQkQsbUJBQW1CSjtRQUVyRSxJQUFJTSx1QkFBdUI7WUFDekIsT0FBTztRQUNUO0lBQ0Y7SUFFQSxPQUFPTDtBQUNUIn0=
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyMetaSubproof;
9
+ }
10
+ });
11
+ var _localMeta = /*#__PURE__*/ _interop_require_default(require("../context/localMeta"));
12
+ var _metaSuppositions = /*#__PURE__*/ _interop_require_default(require("../verify/metaSuppositions"));
13
+ var _metaSubDerivation = /*#__PURE__*/ _interop_require_default(require("../verify/metaSubDerivation"));
14
+ var _query = require("../utilities/query");
15
+ function _interop_require_default(obj) {
16
+ return obj && obj.__esModule ? obj : {
17
+ default: obj
18
+ };
19
+ }
20
+ var suppositionNodesQuery = (0, _query.nodesQuery)("/metaSubproof/supposition"), metaSubDerivationNodeQuery = (0, _query.nodeQuery)("/metaSubproof/metaSubDerivation");
21
+ function verifyMetaSubproof(metaSubproofNode, localMetaContext) {
22
+ var metaSubproofVerified = false;
23
+ localMetaContext = _localMeta.default.fromLocalMetaContext(localMetaContext); ///
24
+ var metaSuppositions = [], suppositionNodes = suppositionNodesQuery(metaSubproofNode), metaSuppositionsVerified = (0, _metaSuppositions.default)(suppositionNodes, metaSuppositions, localMetaContext);
25
+ if (metaSuppositionsVerified) {
26
+ var metaSubDerivationNode = metaSubDerivationNodeQuery(metaSubproofNode), metaSubDerivationVerified = (0, _metaSubDerivation.default)(metaSubDerivationNode, localMetaContext);
27
+ if (metaSubDerivationVerified) {
28
+ metaSubproofVerified = true;
29
+ }
30
+ }
31
+ return metaSubproofVerified;
32
+ }
33
+
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YVN1YnByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTG9jYWxNZXRhQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9sb2NhbE1ldGFcIjtcbmltcG9ydCB2ZXJpZnlNZXRhU3VwcG9zaXRpb25zIGZyb20gXCIuLi92ZXJpZnkvbWV0YVN1cHBvc2l0aW9uc1wiO1xuaW1wb3J0IHZlcmlmeU1ldGFTdWJEZXJpdmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvbWV0YVN1YkRlcml2YXRpb25cIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBzdXBwb3NpdGlvbk5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL21ldGFTdWJwcm9vZi9zdXBwb3NpdGlvblwiKSxcbiAgICAgIG1ldGFTdWJEZXJpdmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFTdWJwcm9vZi9tZXRhU3ViRGVyaXZhdGlvblwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5TWV0YVN1YnByb29mKG1ldGFTdWJwcm9vZk5vZGUsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFTdWJwcm9vZlZlcmlmaWVkID0gZmFsc2U7XG5cbiAgbG9jYWxNZXRhQ29udGV4dCA9IExvY2FsTWV0YUNvbnRleHQuZnJvbUxvY2FsTWV0YUNvbnRleHQobG9jYWxNZXRhQ29udGV4dCk7IC8vL1xuXG4gIGNvbnN0IG1ldGFTdXBwb3NpdGlvbnMgPSBbXSxcbiAgICAgICAgc3VwcG9zaXRpb25Ob2RlcyA9IHN1cHBvc2l0aW9uTm9kZXNRdWVyeShtZXRhU3VicHJvb2ZOb2RlKSxcbiAgICAgICAgbWV0YVN1cHBvc2l0aW9uc1ZlcmlmaWVkID0gdmVyaWZ5TWV0YVN1cHBvc2l0aW9ucyhzdXBwb3NpdGlvbk5vZGVzLCBtZXRhU3VwcG9zaXRpb25zLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICBpZiAobWV0YVN1cHBvc2l0aW9uc1ZlcmlmaWVkKSB7XG4gICAgY29uc3QgbWV0YVN1YkRlcml2YXRpb25Ob2RlID0gbWV0YVN1YkRlcml2YXRpb25Ob2RlUXVlcnkobWV0YVN1YnByb29mTm9kZSksXG4gICAgICAgICAgbWV0YVN1YkRlcml2YXRpb25WZXJpZmllZCA9IHZlcmlmeU1ldGFTdWJEZXJpdmF0aW9uKG1ldGFTdWJEZXJpdmF0aW9uTm9kZSwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YVN1YkRlcml2YXRpb25WZXJpZmllZCkge1xuICAgICAgbWV0YVN1YnByb29mVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhU3VicHJvb2ZWZXJpZmllZDtcbn1cblxuIl0sIm5hbWVzIjpbInZlcmlmeU1ldGFTdWJwcm9vZiIsInN1cHBvc2l0aW9uTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJtZXRhU3ViRGVyaXZhdGlvbk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFTdWJwcm9vZk5vZGUiLCJsb2NhbE1ldGFDb250ZXh0IiwibWV0YVN1YnByb29mVmVyaWZpZWQiLCJMb2NhbE1ldGFDb250ZXh0IiwiZnJvbUxvY2FsTWV0YUNvbnRleHQiLCJtZXRhU3VwcG9zaXRpb25zIiwic3VwcG9zaXRpb25Ob2RlcyIsIm1ldGFTdXBwb3NpdGlvbnNWZXJpZmllZCIsInZlcmlmeU1ldGFTdXBwb3NpdGlvbnMiLCJtZXRhU3ViRGVyaXZhdGlvbk5vZGUiLCJtZXRhU3ViRGVyaXZhdGlvblZlcmlmaWVkIiwidmVyaWZ5TWV0YVN1YkRlcml2YXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVdBOzs7ZUFBd0JBOzs7Z0VBVEs7dUVBQ007d0VBQ0M7cUJBRUU7Ozs7OztBQUV0QyxJQUFNQyx3QkFBd0JDLElBQUFBLGlCQUFVLEVBQUMsOEJBQ25DQyw2QkFBNkJDLElBQUFBLGdCQUFTLEVBQUM7QUFFOUIsU0FBU0osbUJBQW1CSyxnQkFBZ0IsRUFBRUMsZ0JBQWdCO0lBQzNFLElBQUlDLHVCQUF1QjtJQUUzQkQsbUJBQW1CRSxrQkFBZ0IsQ0FBQ0Msb0JBQW9CLENBQUNILG1CQUFtQixHQUFHO0lBRS9FLElBQU1JLG1CQUFtQixFQUFFLEVBQ3JCQyxtQkFBbUJWLHNCQUFzQkksbUJBQ3pDTywyQkFBMkJDLElBQUFBLHlCQUFzQixFQUFDRixrQkFBa0JELGtCQUFrQko7SUFFNUYsSUFBSU0sMEJBQTBCO1FBQzVCLElBQU1FLHdCQUF3QlgsMkJBQTJCRSxtQkFDbkRVLDRCQUE0QkMsSUFBQUEsMEJBQXVCLEVBQUNGLHVCQUF1QlI7UUFFakYsSUFBSVMsMkJBQTJCO1lBQzdCUix1QkFBdUI7UUFDekI7SUFDRjtJQUVBLE9BQU9BO0FBQ1QifQ==
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "default", {
8
8
  return verifyMetaproof;
9
9
  }
10
10
  });
11
+ var _localMeta = /*#__PURE__*/ _interop_require_default(require("../context/localMeta"));
11
12
  var _metaDerivation = /*#__PURE__*/ _interop_require_default(require("../verify/metaDerivation"));
12
13
  var _query = require("../utilities/query");
13
14
  function _interop_require_default(obj) {
@@ -16,17 +17,15 @@ function _interop_require_default(obj) {
16
17
  };
17
18
  }
18
19
  var metaDerivationNodeQuery = (0, _query.nodeQuery)("/metaproof/metaDerivation!");
19
- function verifyMetaproof(metaproofNode, conclusion, substitutions, localMetaproof) {
20
+ function verifyMetaproof(metaproofNode, conclusion, substitutions, localMetaContext) {
20
21
  var metaproofVerified = false;
21
- var metaDerivationNode = metaDerivationNodeQuery(metaproofNode), metaDerivationVerified = (0, _metaDerivation.default)(metaDerivationNode, substitutions, localMetaproof);
22
+ localMetaContext = _localMeta.default.fromLocalMetaContext(localMetaContext); ///
23
+ var metaDerivationNode = metaDerivationNodeQuery(metaproofNode), metaDerivationVerified = (0, _metaDerivation.default)(metaDerivationNode, substitutions, localMetaContext);
22
24
  if (metaDerivationVerified) {
23
- var lastMetaproofStep = localMetaproof.getLastMetaproofStep();
24
- if (lastMetaproofStep !== null) {
25
- var metaproofStep = lastMetaproofStep, metastatementNode = metaproofStep.getMetastatementNode(), conclusionMetastatementNode = conclusion.getMetastatementNode(), metastatementNodeMatchesConclusionMetastatementNode = metastatementNode.match(conclusionMetastatementNode);
26
- metaproofVerified = metastatementNodeMatchesConclusionMetastatementNode; ///
27
- }
25
+ var lastMetaproofStep = localMetaContext.getLastMetaproofStep(), metaproofStep = lastMetaproofStep, metastatementNode = metaproofStep.getMetastatementNode(), conclusionMetastatementNode = conclusion.getMetastatementNode(), metastatementNodeMatchesConclusionMetastatementNode = metastatementNode.match(conclusionMetastatementNode);
26
+ metaproofVerified = metastatementNodeMatchesConclusionMetastatementNode; ///
28
27
  }
29
28
  return metaproofVerified;
30
29
  }
31
30
 
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5TWV0YURlcml2YXRpb24gZnJvbSBcIi4uL3ZlcmlmeS9tZXRhRGVyaXZhdGlvblwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG1ldGFEZXJpdmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFwcm9vZi9tZXRhRGVyaXZhdGlvbiFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeU1ldGFwcm9vZihtZXRhcHJvb2ZOb2RlLCBjb25jbHVzaW9uLCBzdWJzdGl0dXRpb25zLCBsb2NhbE1ldGFwcm9vZikge1xuICBsZXQgbWV0YXByb29mVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhRGVyaXZhdGlvbk5vZGUgPSBtZXRhRGVyaXZhdGlvbk5vZGVRdWVyeShtZXRhcHJvb2ZOb2RlKSxcbiAgICAgICAgbWV0YURlcml2YXRpb25WZXJpZmllZCA9IHZlcmlmeU1ldGFEZXJpdmF0aW9uKG1ldGFEZXJpdmF0aW9uTm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxNZXRhcHJvb2YpO1xuXG4gIGlmIChtZXRhRGVyaXZhdGlvblZlcmlmaWVkKSB7XG4gICAgY29uc3QgbGFzdE1ldGFwcm9vZlN0ZXAgPSBsb2NhbE1ldGFwcm9vZi5nZXRMYXN0TWV0YXByb29mU3RlcCgpO1xuXG4gICAgaWYgKGxhc3RNZXRhcHJvb2ZTdGVwICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhcHJvb2ZTdGVwID0gbGFzdE1ldGFwcm9vZlN0ZXAsIC8vL1xuICAgICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhcHJvb2ZTdGVwLmdldE1ldGFzdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgICBjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUgPSBjb25jbHVzaW9uLmdldE1ldGFzdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXNDb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZS5tYXRjaChjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgICBtZXRhcHJvb2ZWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlc0NvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZTsgIC8vL1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhcHJvb2ZWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlNZXRhcHJvb2YiLCJtZXRhRGVyaXZhdGlvbk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFwcm9vZk5vZGUiLCJjb25jbHVzaW9uIiwic3Vic3RpdHV0aW9ucyIsImxvY2FsTWV0YXByb29mIiwibWV0YXByb29mVmVyaWZpZWQiLCJtZXRhRGVyaXZhdGlvbk5vZGUiLCJtZXRhRGVyaXZhdGlvblZlcmlmaWVkIiwidmVyaWZ5TWV0YURlcml2YXRpb24iLCJsYXN0TWV0YXByb29mU3RlcCIsImdldExhc3RNZXRhcHJvb2ZTdGVwIiwibWV0YXByb29mU3RlcCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwiZ2V0TWV0YXN0YXRlbWVudE5vZGUiLCJjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXNDb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUiLCJtYXRjaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUF3QkE7OztxRUFOUztxQkFFUDs7Ozs7O0FBRTFCLElBQU1DLDBCQUEwQkMsSUFBQUEsZ0JBQVMsRUFBQztBQUUzQixTQUFTRixnQkFBZ0JHLGFBQWEsRUFBRUMsVUFBVSxFQUFFQyxhQUFhLEVBQUVDLGNBQWM7SUFDOUYsSUFBSUMsb0JBQW9CO0lBRXhCLElBQU1DLHFCQUFxQlAsd0JBQXdCRSxnQkFDN0NNLHlCQUF5QkMsSUFBQUEsdUJBQW9CLEVBQUNGLG9CQUFvQkgsZUFBZUM7SUFFdkYsSUFBSUcsd0JBQXdCO1FBQzFCLElBQU1FLG9CQUFvQkwsZUFBZU0sb0JBQW9CO1FBRTdELElBQUlELHNCQUFzQixNQUFNO1lBQzlCLElBQU1FLGdCQUFnQkYsbUJBQ2hCRyxvQkFBb0JELGNBQWNFLG9CQUFvQixJQUN0REMsOEJBQThCWixXQUFXVyxvQkFBb0IsSUFDN0RFLHNEQUFzREgsa0JBQWtCSSxLQUFLLENBQUNGO1lBRXBGVCxvQkFBb0JVLHFEQUFzRCxHQUFHO1FBQy9FO0lBQ0Y7SUFFQSxPQUFPVjtBQUNUIn0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTG9jYWxNZXRhQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9sb2NhbE1ldGFcIjtcbmltcG9ydCB2ZXJpZnlNZXRhRGVyaXZhdGlvbiBmcm9tIFwiLi4vdmVyaWZ5L21ldGFEZXJpdmF0aW9uXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbWV0YURlcml2YXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXByb29mL21ldGFEZXJpdmF0aW9uIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5TWV0YXByb29mKG1ldGFwcm9vZk5vZGUsIGNvbmNsdXNpb24sIHN1YnN0aXR1dGlvbnMsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFwcm9vZlZlcmlmaWVkID0gZmFsc2U7XG5cbiAgbG9jYWxNZXRhQ29udGV4dCA9IExvY2FsTWV0YUNvbnRleHQuZnJvbUxvY2FsTWV0YUNvbnRleHQobG9jYWxNZXRhQ29udGV4dCk7IC8vL1xuXG4gIGNvbnN0IG1ldGFEZXJpdmF0aW9uTm9kZSA9IG1ldGFEZXJpdmF0aW9uTm9kZVF1ZXJ5KG1ldGFwcm9vZk5vZGUpLFxuICAgICAgICBtZXRhRGVyaXZhdGlvblZlcmlmaWVkID0gdmVyaWZ5TWV0YURlcml2YXRpb24obWV0YURlcml2YXRpb25Ob2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICBpZiAobWV0YURlcml2YXRpb25WZXJpZmllZCkge1xuICAgIGNvbnN0IGxhc3RNZXRhcHJvb2ZTdGVwID0gbG9jYWxNZXRhQ29udGV4dC5nZXRMYXN0TWV0YXByb29mU3RlcCgpLFxuICAgICAgICAgIG1ldGFwcm9vZlN0ZXAgPSBsYXN0TWV0YXByb29mU3RlcCwgLy8vXG4gICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhcHJvb2ZTdGVwLmdldE1ldGFzdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlID0gY29uY2x1c2lvbi5nZXRNZXRhc3RhdGVtZW50Tm9kZSgpLFxuICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlc0NvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlLm1hdGNoKGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBtZXRhcHJvb2ZWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlc0NvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZTsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIG1ldGFwcm9vZlZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeU1ldGFwcm9vZiIsIm1ldGFEZXJpdmF0aW9uTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXByb29mTm9kZSIsImNvbmNsdXNpb24iLCJzdWJzdGl0dXRpb25zIiwibG9jYWxNZXRhQ29udGV4dCIsIm1ldGFwcm9vZlZlcmlmaWVkIiwiTG9jYWxNZXRhQ29udGV4dCIsImZyb21Mb2NhbE1ldGFDb250ZXh0IiwibWV0YURlcml2YXRpb25Ob2RlIiwibWV0YURlcml2YXRpb25WZXJpZmllZCIsInZlcmlmeU1ldGFEZXJpdmF0aW9uIiwibGFzdE1ldGFwcm9vZlN0ZXAiLCJnZXRMYXN0TWV0YXByb29mU3RlcCIsIm1ldGFwcm9vZlN0ZXAiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImdldE1ldGFzdGF0ZW1lbnROb2RlIiwiY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzQ29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlIiwibWF0Y2giXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBd0JBOzs7Z0VBUEs7cUVBQ0k7cUJBRVA7Ozs7OztBQUUxQixJQUFNQywwQkFBMEJDLElBQUFBLGdCQUFTLEVBQUM7QUFFM0IsU0FBU0YsZ0JBQWdCRyxhQUFhLEVBQUVDLFVBQVUsRUFBRUMsYUFBYSxFQUFFQyxnQkFBZ0I7SUFDaEcsSUFBSUMsb0JBQW9CO0lBRXhCRCxtQkFBbUJFLGtCQUFnQixDQUFDQyxvQkFBb0IsQ0FBQ0gsbUJBQW1CLEdBQUc7SUFFL0UsSUFBTUkscUJBQXFCVCx3QkFBd0JFLGdCQUM3Q1EseUJBQXlCQyxJQUFBQSx1QkFBb0IsRUFBQ0Ysb0JBQW9CTCxlQUFlQztJQUV2RixJQUFJSyx3QkFBd0I7UUFDMUIsSUFBTUUsb0JBQW9CUCxpQkFBaUJRLG9CQUFvQixJQUN6REMsZ0JBQWdCRixtQkFDaEJHLG9CQUFvQkQsY0FBY0Usb0JBQW9CLElBQ3REQyw4QkFBOEJkLFdBQVdhLG9CQUFvQixJQUM3REUsc0RBQXNESCxrQkFBa0JJLEtBQUssQ0FBQ0Y7UUFFcEZYLG9CQUFvQlkscURBQXNELEdBQUc7SUFDL0U7SUFFQSxPQUFPWjtBQUNUIn0=
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "default", {
8
8
  return verifyQualifiedMetastatement;
9
9
  }
10
10
  });
11
- var _metastatement = /*#__PURE__*/ _interop_require_default(require("../metastatement"));
11
+ var _metastatement = /*#__PURE__*/ _interop_require_default(require("../../verify/metastatement"));
12
12
  var _metavariableAgainstMetastatement = /*#__PURE__*/ _interop_require_default(require("../../verify/metavariableAgainstMetastatement"));
13
13
  var _query = require("../../utilities/query");
14
14
  function _interop_require_default(obj) {
@@ -17,43 +17,62 @@ function _interop_require_default(obj) {
17
17
  };
18
18
  }
19
19
  var metavariableNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/reference!/metavariable!"), metastatementNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/metastatement!");
20
- function verifyQualifiedMetastatement(qualifiedMetastatementNode, substitutions, assignments, derived, localMetaContext) {
21
- var qualifiedMetastatementVerified = false;
22
- var metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode);
23
- if (metastatementNode !== null) {
24
- var metastatementString = localMetaContext.nodeAsString(metastatementNode), metastatementLocalMetaContext = localMetaContext; ///
25
- localMetaContext.trace("Verifying the '".concat(metastatementString, "' qualified metastatement..."), qualifiedMetastatementNode);
26
- var metavariableNode = metavariableNodeQuery(qualifiedMetastatementNode);
27
- if (!qualifiedMetastatementVerified) {
28
- var rule = localMetaContext.findRuleByMetavariableNode(metavariableNode);
29
- if (rule !== null) {
30
- var ruleMatchesMetastatement = rule.matchMetastatement(metastatementNode, metastatementLocalMetaContext);
31
- qualifiedMetastatementVerified = ruleMatchesMetastatement; ///
20
+ function verifyQualifiedMetastatement(qualifiedMetastatementNode, substitutions, assignments, localMetaContext) {
21
+ var qualifiedMetastatementVerified;
22
+ var qualifiedMetastatementString = localMetaContext.nodeAsString(qualifiedMetastatementNode);
23
+ localMetaContext.trace("Verifying the '".concat(qualifiedMetastatementString, "' qualified metastatement..."), qualifiedMetastatementNode);
24
+ var derived = false, metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode), metastatementVerified = (0, _metastatement.default)(metastatementNode, assignments, derived, localMetaContext, function() {
25
+ var verifiedAhead = true;
26
+ return verifiedAhead;
27
+ });
28
+ if (metastatementVerified) {
29
+ var metavariableNode = metavariableNodeQuery(qualifiedMetastatementNode), verifyQualifiedMetastatementFunctions = [
30
+ verifyQualifiedMetastatementAAgainstRule,
31
+ verifyQualifiedMetastatementAAgainstReference
32
+ ];
33
+ qualifiedMetastatementVerified = verifyQualifiedMetastatementFunctions.some(function(verifyQualifiedMetastatementFunction) {
34
+ var qualifiedMetastatementVerified = verifyQualifiedMetastatementFunction(qualifiedMetastatementNode, metavariableNode, substitutions, localMetaContext);
35
+ if (qualifiedMetastatementVerified) {
36
+ return true;
32
37
  }
38
+ });
39
+ }
40
+ if (qualifiedMetastatementVerified) {
41
+ localMetaContext.debug("...verified the '".concat(qualifiedMetastatementString, "' qualified metastatement."), qualifiedMetastatementNode);
42
+ }
43
+ return qualifiedMetastatementVerified;
44
+ }
45
+ function verifyQualifiedMetastatementAAgainstRule(qualifiedMetastatementNode, metavariableNode, substitutions, localMetaContext) {
46
+ var qualifiedMetastatementVerifiedAgainstRule = false;
47
+ var rule = localMetaContext.findRuleByMetavariableNode(metavariableNode);
48
+ if (rule !== null) {
49
+ var metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode), metavariableString = localMetaContext.nodeAsString(metavariableNode), qualifiedMetastatementString = localMetaContext.nodeAsString(qualifiedMetastatementNode);
50
+ localMetaContext.trace("Verifying the '".concat(qualifiedMetastatementString, "' qualified metastatement against the '").concat(metavariableString, "' rule..."), qualifiedMetastatementNode);
51
+ var ruleMatchesMetastatement = rule.matchMetastatement(metastatementNode, localMetaContext);
52
+ qualifiedMetastatementVerifiedAgainstRule = ruleMatchesMetastatement; ///
53
+ if (qualifiedMetastatementVerifiedAgainstRule) {
54
+ localMetaContext.debug("...verified the '".concat(qualifiedMetastatementString, "' qualified metastatement against the '").concat(metavariableString, "' rule."), qualifiedMetastatementNode);
33
55
  }
34
- if (!qualifiedMetastatementVerified) {
35
- if (substitutions !== null) {
36
- var metavariablePresent = localMetaContext.isMetavariablePresentByMetavariableNode(metavariableNode, localMetaContext);
37
- if (metavariablePresent) {
38
- var metastatementVerified = (0, _metastatement.default)(metastatementNode, assignments, derived, localMetaContext, function() {
39
- var verifiedAhead = true;
40
- return verifiedAhead;
41
- });
42
- if (metastatementVerified) {
43
- var metavariableVerifiedAgainstMetastatement = (0, _metavariableAgainstMetastatement.default)(metavariableNode, metastatementNode, substitutions, function() {
44
- var verifiedAhead = true;
45
- return verifiedAhead;
46
- });
47
- qualifiedMetastatementVerified = metavariableVerifiedAgainstMetastatement; ///
48
- }
49
- }
50
- }
56
+ }
57
+ return qualifiedMetastatementVerifiedAgainstRule;
58
+ }
59
+ function verifyQualifiedMetastatementAAgainstReference(qualifiedMetastatementNode, metavariableNode, substitutions, localMetaContext) {
60
+ var qualifiedMetastatementVerifiedAgainstReference = false;
61
+ if (substitutions !== null) {
62
+ var metavariableString = localMetaContext.nodeAsString(metavariableNode), metavariablePresent = localMetaContext.isMetavariablePresentByMetavariableNode(metavariableNode, localMetaContext), qualifiedMetastatementString = localMetaContext.nodeAsString(qualifiedMetastatementNode);
63
+ localMetaContext.trace("Verifying the '".concat(qualifiedMetastatementString, "' qualified metastatement against the '").concat(metavariableString, "' reference..."), qualifiedMetastatementNode);
64
+ if (metavariablePresent) {
65
+ var metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode), metavariableVerifiedAgainstMetastatement = (0, _metavariableAgainstMetastatement.default)(metavariableNode, metastatementNode, substitutions, function() {
66
+ var verifiedAhead = true;
67
+ return verifiedAhead;
68
+ });
69
+ qualifiedMetastatementVerifiedAgainstReference = metavariableVerifiedAgainstMetastatement; ///
51
70
  }
52
- if (qualifiedMetastatementVerified) {
53
- localMetaContext.debug("...verified the '".concat(metastatementString, "' qualified metastatement."), qualifiedMetastatementNode);
71
+ if (qualifiedMetastatementVerifiedAgainstReference) {
72
+ localMetaContext.debug("...verified the '".concat(qualifiedMetastatementString, "' qualified metastatement against the '").concat(metavariableString, "' reference."), qualifiedMetastatementNode);
54
73
  }
55
74
  }
56
- return qualifiedMetastatementVerified;
75
+ return qualifiedMetastatementVerifiedAgainstReference;
57
76
  }
58
77
 
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC9xdWFsaWZpZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlNZXRhc3RhdGVtZW50IGZyb20gXCIuLi9tZXRhc3RhdGVtZW50XCI7XG5pbXBvcnQgdmVyaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdE1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uLy4uL3ZlcmlmeS9tZXRhdmFyaWFibGVBZ2FpbnN0TWV0YXN0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRNZXRhc3RhdGVtZW50L3JlZmVyZW5jZSEvbWV0YXZhcmlhYmxlIVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhc3RhdGVtZW50TG9jYWxNZXRhQ29udGV4dCA9IGxvY2FsTWV0YUNvbnRleHQ7IC8vL1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQuLi5gLCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmICghcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBydWxlID0gbG9jYWxNZXRhQ29udGV4dC5maW5kUnVsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcblxuICAgICAgaWYgKHJ1bGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgcnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50ID0gcnVsZS5tYXRjaE1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIG1ldGFzdGF0ZW1lbnRMb2NhbE1ldGFDb250ZXh0KTtcblxuICAgICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBydWxlTWF0Y2hlc01ldGFzdGF0ZW1lbnQ7ICAvLy9cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgaWYgKHN1YnN0aXR1dGlvbnMgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlUHJlc2VudCA9IGxvY2FsTWV0YUNvbnRleHQuaXNNZXRhdmFyaWFibGVQcmVzZW50QnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICAgIGlmIChtZXRhdmFyaWFibGVQcmVzZW50KSB7XG4gICAgICAgICAgY29uc3QgbWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5TWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChtZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZVZlcmlmaWVkQWdhaW5zdE1ldGFzdGF0ZW1lbnQgPSB2ZXJpZnlNZXRhdmFyaWFibGVBZ2FpbnN0TWV0YXN0YXRlbWVudChtZXRhdmFyaWFibGVOb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBtZXRhdmFyaWFibGVWZXJpZmllZEFnYWluc3RNZXRhc3RhdGVtZW50OyAvLy9cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIHF1YWxpZmllZCBtZXRhc3RhdGVtZW50LmAsIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQiLCJtZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwicXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJzdWJzdGl0dXRpb25zIiwiYXNzaWdubWVudHMiLCJkZXJpdmVkIiwibG9jYWxNZXRhQ29udGV4dCIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsIm1ldGFzdGF0ZW1lbnRMb2NhbE1ldGFDb250ZXh0IiwidHJhY2UiLCJtZXRhdmFyaWFibGVOb2RlIiwicnVsZSIsImZpbmRSdWxlQnlNZXRhdmFyaWFibGVOb2RlIiwicnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50IiwibWF0Y2hNZXRhc3RhdGVtZW50IiwibWV0YXZhcmlhYmxlUHJlc2VudCIsImlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeU1ldGFzdGF0ZW1lbnQiLCJ2ZXJpZmllZEFoZWFkIiwibWV0YXZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0TWV0YXN0YXRlbWVudCIsInZlcmlmeU1ldGF2YXJpYWJsZUFnYWluc3RNZXRhc3RhdGVtZW50IiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7b0VBUlE7dUZBQ21CO3FCQUV6Qjs7Ozs7O0FBRTFCLElBQU1DLHdCQUF3QkMsSUFBQUEsZ0JBQVMsRUFBQyxxREFDbENDLHlCQUF5QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUUxQixTQUFTRiw2QkFBNkJJLDBCQUEwQixFQUFFQyxhQUFhLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDcEksSUFBSUMsaUNBQWlDO0lBRXJDLElBQU1DLG9CQUFvQlAsdUJBQXVCQztJQUVqRCxJQUFJTSxzQkFBc0IsTUFBTTtRQUM5QixJQUFNQyxzQkFBc0JILGlCQUFpQkksWUFBWSxDQUFDRixvQkFDcERHLGdDQUFnQ0wsa0JBQWtCLEdBQUc7UUFFM0RBLGlCQUFpQk0sS0FBSyxDQUFDLEFBQUMsa0JBQXFDLE9BQXBCSCxxQkFBb0IsaUNBQStCUDtRQUU1RixJQUFNVyxtQkFBbUJkLHNCQUFzQkc7UUFFL0MsSUFBSSxDQUFDSyxnQ0FBZ0M7WUFDbkMsSUFBTU8sT0FBT1IsaUJBQWlCUywwQkFBMEIsQ0FBQ0Y7WUFFekQsSUFBSUMsU0FBUyxNQUFNO2dCQUNqQixJQUFNRSwyQkFBMkJGLEtBQUtHLGtCQUFrQixDQUFDVCxtQkFBbUJHO2dCQUU1RUosaUNBQWlDUywwQkFBMkIsR0FBRztZQUNqRTtRQUNGO1FBRUEsSUFBSSxDQUFDVCxnQ0FBZ0M7WUFDbkMsSUFBSUosa0JBQWtCLE1BQU07Z0JBQzFCLElBQU1lLHNCQUFzQlosaUJBQWlCYSx1Q0FBdUMsQ0FBQ04sa0JBQWtCUDtnQkFFdkcsSUFBSVkscUJBQXFCO29CQUN2QixJQUFNRSx3QkFBd0JDLElBQUFBLHNCQUFtQixFQUFDYixtQkFBbUJKLGFBQWFDLFNBQVNDLGtCQUFrQjt3QkFDM0csSUFBTWdCLGdCQUFnQjt3QkFFdEIsT0FBT0E7b0JBQ1Q7b0JBRUEsSUFBSUYsdUJBQXVCO3dCQUN6QixJQUFNRywyQ0FBMkNDLElBQUFBLHlDQUFzQyxFQUFDWCxrQkFBa0JMLG1CQUFtQkwsZUFBZTs0QkFDMUksSUFBTW1CLGdCQUFnQjs0QkFFdEIsT0FBT0E7d0JBQ1Q7d0JBRUFmLGlDQUFpQ2dCLDBDQUEwQyxHQUFHO29CQUNoRjtnQkFDRjtZQUNGO1FBQ0Y7UUFFQSxJQUFJaEIsZ0NBQWdDO1lBQ2xDRCxpQkFBaUJtQixLQUFLLENBQUMsQUFBQyxvQkFBdUMsT0FBcEJoQixxQkFBb0IsK0JBQTZCUDtRQUM5RjtJQUNGO0lBRUEsT0FBT0s7QUFDVCJ9
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC9xdWFsaWZpZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlNZXRhc3RhdGVtZW50IGZyb20gXCIuLi8uLi92ZXJpZnkvbWV0YXN0YXRlbWVudFwiO1xuaW1wb3J0IHZlcmlmeU1ldGF2YXJpYWJsZUFnYWluc3RNZXRhc3RhdGVtZW50IGZyb20gXCIuLi8uLi92ZXJpZnkvbWV0YXZhcmlhYmxlQWdhaW5zdE1ldGFzdGF0ZW1lbnRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBtZXRhdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkTWV0YXN0YXRlbWVudC9yZWZlcmVuY2UhL21ldGF2YXJpYWJsZSFcIiksXG4gICAgICBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3F1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsIGFzc2lnbm1lbnRzLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG5cbiAgY29uc3QgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3F1YWxpZmllZE1ldGFzdGF0ZW1lbnRTdHJpbmd9JyBxdWFsaWZpZWQgbWV0YXN0YXRlbWVudC4uLmAsIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBjb25zdCBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgIG1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeU1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgfSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnRGdW5jdGlvbnMgPSBbXG4gICAgICAgICAgICB2ZXJpZnlRdWFsaWZpZWRNZXRhc3RhdGVtZW50QUFnYWluc3RSdWxlLFxuICAgICAgICAgICAgdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudEFBZ2FpbnN0UmVmZXJlbmNlXG4gICAgICAgICAgXTtcblxuICAgIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnRGdW5jdGlvbnMuc29tZSgodmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudEZ1bmN0aW9uKSA9PiB7ICAvLy9cbiAgICAgIGNvbnN0IHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnRGdW5jdGlvbihxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgbWV0YXZhcmlhYmxlTm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICAgIGlmIChxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3F1YWxpZmllZE1ldGFzdGF0ZW1lbnRTdHJpbmd9JyBxdWFsaWZpZWQgbWV0YXN0YXRlbWVudC5gLCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlRdWFsaWZpZWRNZXRhc3RhdGVtZW50QUFnYWluc3RSdWxlKHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhdmFyaWFibGVOb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWRBZ2FpbnN0UnVsZSA9IGZhbHNlO1xuXG4gIGNvbnN0IHJ1bGUgPSBsb2NhbE1ldGFDb250ZXh0LmZpbmRSdWxlQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGlmIChydWxlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5KHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50U3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtxdWFsaWZpZWRNZXRhc3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQgYWdhaW5zdCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgcnVsZS4uLmAsIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IHJ1bGVNYXRjaGVzTWV0YXN0YXRlbWVudCA9IHJ1bGUubWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RSdWxlID0gcnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50OyAgLy8vXG5cbiAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdFJ1bGUpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtxdWFsaWZpZWRNZXRhc3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQgYWdhaW5zdCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgcnVsZS5gLCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RSdWxlO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlRdWFsaWZpZWRNZXRhc3RhdGVtZW50QUFnYWluc3RSZWZlcmVuY2UocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUsIG1ldGF2YXJpYWJsZU5vZGUsIHN1YnN0aXR1dGlvbnMsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RSZWZlcmVuY2UgPSBmYWxzZTtcblxuICBpZiAoc3Vic3RpdHV0aW9ucyAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVByZXNlbnQgPSBsb2NhbE1ldGFDb250ZXh0LmlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KSxcbiAgICAgICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50U3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtxdWFsaWZpZWRNZXRhc3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQgYWdhaW5zdCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgcmVmZXJlbmNlLi4uYCwgcXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKG1ldGF2YXJpYWJsZVByZXNlbnQpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICBtZXRhdmFyaWFibGVWZXJpZmllZEFnYWluc3RNZXRhc3RhdGVtZW50ID0gdmVyaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdE1ldGFzdGF0ZW1lbnQobWV0YXZhcmlhYmxlTm9kZSwgbWV0YXN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsICgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdFJlZmVyZW5jZSA9IG1ldGF2YXJpYWJsZVZlcmlmaWVkQWdhaW5zdE1ldGFzdGF0ZW1lbnQ7IC8vL1xuICAgIH1cblxuICAgIGlmIChxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWRBZ2FpbnN0UmVmZXJlbmNlKSB7XG4gICAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7cXVhbGlmaWVkTWV0YXN0YXRlbWVudFN0cmluZ30nIHF1YWxpZmllZCBtZXRhc3RhdGVtZW50IGFnYWluc3QgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIHJlZmVyZW5jZS5gLCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RSZWZlcmVuY2U7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsInN1YnN0aXR1dGlvbnMiLCJhc3NpZ25tZW50cyIsImxvY2FsTWV0YUNvbnRleHQiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJkZXJpdmVkIiwibWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJ2ZXJpZnlNZXRhc3RhdGVtZW50IiwidmVyaWZpZWRBaGVhZCIsIm1ldGF2YXJpYWJsZU5vZGUiLCJ2ZXJpZnlRdWFsaWZpZWRNZXRhc3RhdGVtZW50RnVuY3Rpb25zIiwidmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudEFBZ2FpbnN0UnVsZSIsInZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnRBQWdhaW5zdFJlZmVyZW5jZSIsInNvbWUiLCJ2ZXJpZnlRdWFsaWZpZWRNZXRhc3RhdGVtZW50RnVuY3Rpb24iLCJkZWJ1ZyIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RSdWxlIiwicnVsZSIsImZpbmRSdWxlQnlNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlU3RyaW5nIiwicnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50IiwibWF0Y2hNZXRhc3RhdGVtZW50IiwicXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdFJlZmVyZW5jZSIsIm1ldGF2YXJpYWJsZVByZXNlbnQiLCJpc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVWZXJpZmllZEFnYWluc3RNZXRhc3RhdGVtZW50IiwidmVyaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdE1ldGFzdGF0ZW1lbnQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7b0VBUlE7dUZBQ21CO3FCQUV6Qjs7Ozs7O0FBRTFCLElBQU1DLHdCQUF3QkMsSUFBQUEsZ0JBQVMsRUFBQyxxREFDbENDLHlCQUF5QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUUxQixTQUFTRiw2QkFBNkJJLDBCQUEwQixFQUFFQyxhQUFhLEVBQUVDLFdBQVcsRUFBRUMsZ0JBQWdCO0lBQzNILElBQUlDO0lBRUosSUFBTUMsK0JBQStCRixpQkFBaUJHLFlBQVksQ0FBQ047SUFFbkVHLGlCQUFpQkksS0FBSyxDQUFDLEFBQUMsa0JBQThDLE9BQTdCRiw4QkFBNkIsaUNBQStCTDtJQUVyRyxJQUFNUSxVQUFVLE9BQ1ZDLG9CQUFvQlYsdUJBQXVCQyw2QkFDM0NVLHdCQUF3QkMsSUFBQUEsc0JBQW1CLEVBQUNGLG1CQUFtQlAsYUFBYU0sU0FBU0wsa0JBQWtCO1FBQ3JHLElBQU1TLGdCQUFnQjtRQUV0QixPQUFPQTtJQUNUO0lBRU4sSUFBSUYsdUJBQXVCO1FBQ3pCLElBQU1HLG1CQUFtQmhCLHNCQUFzQkcsNkJBQ3pDYyx3Q0FBd0M7WUFDdENDO1lBQ0FDO1NBQ0Q7UUFFUFosaUNBQWlDVSxzQ0FBc0NHLElBQUksQ0FBQyxTQUFDQztZQUMzRSxJQUFNZCxpQ0FBaUNjLHFDQUFxQ2xCLDRCQUE0QmEsa0JBQWtCWixlQUFlRTtZQUV6SSxJQUFJQyxnQ0FBZ0M7Z0JBQ2xDLE9BQU87WUFDVDtRQUNGO0lBQ0Y7SUFFQSxJQUFJQSxnQ0FBZ0M7UUFDbENELGlCQUFpQmdCLEtBQUssQ0FBQyxBQUFDLG9CQUFnRCxPQUE3QmQsOEJBQTZCLCtCQUE2Qkw7SUFDdkc7SUFFQSxPQUFPSTtBQUNUO0FBRUEsU0FBU1cseUNBQXlDZiwwQkFBMEIsRUFBRWEsZ0JBQWdCLEVBQUVaLGFBQWEsRUFBRUUsZ0JBQWdCO0lBQzdILElBQUlpQiw0Q0FBNEM7SUFFaEQsSUFBTUMsT0FBT2xCLGlCQUFpQm1CLDBCQUEwQixDQUFDVDtJQUV6RCxJQUFJUSxTQUFTLE1BQU07UUFDakIsSUFBTVosb0JBQW9CVix1QkFBdUJDLDZCQUMzQ3VCLHFCQUFxQnBCLGlCQUFpQkcsWUFBWSxDQUFDTyxtQkFDbkRSLCtCQUErQkYsaUJBQWlCRyxZQUFZLENBQUNOO1FBRW5FRyxpQkFBaUJJLEtBQUssQ0FBQyxBQUFDLGtCQUF1RmdCLE9BQXRFbEIsOEJBQTZCLDJDQUE0RCxPQUFuQmtCLG9CQUFtQixjQUFZdkI7UUFFOUksSUFBTXdCLDJCQUEyQkgsS0FBS0ksa0JBQWtCLENBQUNoQixtQkFBbUJOO1FBRTVFaUIsNENBQTRDSSwwQkFBMkIsR0FBRztRQUUxRSxJQUFJSiwyQ0FBMkM7WUFDN0NqQixpQkFBaUJnQixLQUFLLENBQUMsQUFBQyxvQkFBeUZJLE9BQXRFbEIsOEJBQTZCLDJDQUE0RCxPQUFuQmtCLG9CQUFtQixZQUFVdkI7UUFDaEo7SUFDRjtJQUVBLE9BQU9vQjtBQUNUO0FBRUEsU0FBU0osOENBQThDaEIsMEJBQTBCLEVBQUVhLGdCQUFnQixFQUFFWixhQUFhLEVBQUVFLGdCQUFnQjtJQUNsSSxJQUFJdUIsaURBQWlEO0lBRXJELElBQUl6QixrQkFBa0IsTUFBTTtRQUMxQixJQUFNc0IscUJBQXFCcEIsaUJBQWlCRyxZQUFZLENBQUNPLG1CQUNuRGMsc0JBQXNCeEIsaUJBQWlCeUIsdUNBQXVDLENBQUNmLGtCQUFrQlYsbUJBQ2pHRSwrQkFBK0JGLGlCQUFpQkcsWUFBWSxDQUFDTjtRQUVuRUcsaUJBQWlCSSxLQUFLLENBQUMsQUFBQyxrQkFBdUZnQixPQUF0RWxCLDhCQUE2QiwyQ0FBNEQsT0FBbkJrQixvQkFBbUIsbUJBQWlCdkI7UUFFbkosSUFBSTJCLHFCQUFxQjtZQUN2QixJQUFNbEIsb0JBQW9CVix1QkFBdUJDLDZCQUMzQzZCLDJDQUEyQ0MsSUFBQUEseUNBQXNDLEVBQUNqQixrQkFBa0JKLG1CQUFtQlIsZUFBZTtnQkFDcEksSUFBTVcsZ0JBQWdCO2dCQUV0QixPQUFPQTtZQUNUO1lBRU5jLGlEQUFpREcsMENBQTBDLEdBQUc7UUFDaEc7UUFFQSxJQUFJSCxnREFBZ0Q7WUFDbER2QixpQkFBaUJnQixLQUFLLENBQUMsQUFBQyxvQkFBeUZJLE9BQXRFbEIsOEJBQTZCLDJDQUE0RCxPQUFuQmtCLG9CQUFtQixpQkFBZXZCO1FBQ3JKO0lBQ0Y7SUFFQSxPQUFPMEI7QUFDVCJ9
@@ -18,26 +18,23 @@ function _interop_require_default(obj) {
18
18
  var metastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement/metastatement!");
19
19
  function verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, assignments, derived, localMetaContext) {
20
20
  var unqualifiedMetastatementVerified = false;
21
- var metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode);
22
- if (metastatementNode !== null) {
23
- var metastatementString = localMetaContext.nodeAsString(metastatementNode);
24
- localMetaContext.trace("Verifying the '".concat(metastatementString, "' unqualified metastatement..."), unqualifiedMetastatementNode);
25
- if (derived) {
26
- var metastatementMatches = localMetaContext.matchMetastatement(metastatementNode);
27
- unqualifiedMetastatementVerified = metastatementMatches; ///
28
- }
29
- if (!unqualifiedMetastatementVerified) {
30
- var metastatementVerified = (0, _metastatement.default)(metastatementNode, assignments, derived, localMetaContext, function() {
31
- var verifiedAhead = true;
32
- return verifiedAhead;
33
- });
34
- unqualifiedMetastatementVerified = metastatementVerified; ///
35
- }
36
- if (unqualifiedMetastatementVerified) {
37
- localMetaContext.debug("...verified the '".concat(metastatementString, "' unqualified metastatement."), unqualifiedMetastatementNode);
38
- }
21
+ var metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode), unqualifiedMetastatementString = localMetaContext.nodeAsString(unqualifiedMetastatementNode);
22
+ localMetaContext.trace("Verifying the '".concat(unqualifiedMetastatementString, "' unqualified metastatement..."), unqualifiedMetastatementNode);
23
+ if (derived) {
24
+ var metastatementMatches = localMetaContext.matchMetastatement(metastatementNode);
25
+ unqualifiedMetastatementVerified = metastatementMatches; ///
26
+ }
27
+ if (!unqualifiedMetastatementVerified) {
28
+ var metastatementVerified = (0, _metastatement.default)(metastatementNode, assignments, derived, localMetaContext, function() {
29
+ var verifiedAhead = true;
30
+ return verifiedAhead;
31
+ });
32
+ unqualifiedMetastatementVerified = metastatementVerified; ///
33
+ }
34
+ if (unqualifiedMetastatementVerified) {
35
+ localMetaContext.debug("...verified the '".concat(unqualifiedMetastatementString, "' unqualified metastatement."), unqualifiedMetastatementNode);
39
36
  }
40
37
  return unqualifiedMetastatementVerified;
41
38
  }
42
39
 
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC91bnF1YWxpZmllZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeU1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uLy4uL3ZlcmlmeS9tZXRhc3RhdGVtZW50XCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIHVucXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQuLi5gLCB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmIChkZXJpdmVkKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50TWF0Y2hlcyA9IGxvY2FsTWV0YUNvbnRleHQubWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBtZXRhc3RhdGVtZW50TWF0Y2hlczsgIC8vL1xuICAgIH1cblxuICAgIGlmICghdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeU1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gbWV0YXN0YXRlbWVudFZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgdW5xdWFsaWZpZWQgbWV0YXN0YXRlbWVudC5gLCB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJhc3NpZ25tZW50cyIsImRlcml2ZWQiLCJsb2NhbE1ldGFDb250ZXh0IiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsIm1ldGFzdGF0ZW1lbnRNYXRjaGVzIiwibWF0Y2hNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5TWV0YXN0YXRlbWVudCIsInZlcmlmaWVkQWhlYWQiLCJkZWJ1ZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUF3QkE7OztvRUFOUTtxQkFFTjs7Ozs7O0FBRTFCLElBQU1DLHlCQUF5QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUUxQixTQUFTRiwrQkFBK0JHLDRCQUE0QixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsZ0JBQWdCO0lBQ3pILElBQUlDLG1DQUFtQztJQUV2QyxJQUFNQyxvQkFBb0JQLHVCQUF1QkU7SUFFakQsSUFBSUssc0JBQXNCLE1BQU07UUFDOUIsSUFBTUMsc0JBQXNCSCxpQkFBaUJJLFlBQVksQ0FBQ0Y7UUFFMURGLGlCQUFpQkssS0FBSyxDQUFDLEFBQUMsa0JBQXFDLE9BQXBCRixxQkFBb0IsbUNBQWlDTjtRQUU5RixJQUFJRSxTQUFTO1lBQ1gsSUFBTU8sdUJBQXVCTixpQkFBaUJPLGtCQUFrQixDQUFDTDtZQUVqRUQsbUNBQW1DSyxzQkFBdUIsR0FBRztRQUMvRDtRQUVBLElBQUksQ0FBQ0wsa0NBQWtDO1lBQ3JDLElBQU1PLHdCQUF3QkMsSUFBQUEsc0JBQW1CLEVBQUNQLG1CQUFtQkosYUFBYUMsU0FBU0Msa0JBQWtCO2dCQUNyRyxJQUFNVSxnQkFBZ0I7Z0JBRXRCLE9BQU9BO1lBQ1Q7WUFFTlQsbUNBQW1DTyx1QkFBdUIsR0FBRztRQUMvRDtRQUVBLElBQUlQLGtDQUFrQztZQUNwQ0QsaUJBQWlCVyxLQUFLLENBQUMsQUFBQyxvQkFBdUMsT0FBcEJSLHFCQUFvQixpQ0FBK0JOO1FBQ2hHO0lBQ0Y7SUFFQSxPQUFPSTtBQUNUIn0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC91bnF1YWxpZmllZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeU1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uLy4uL3ZlcmlmeS9tZXRhc3RhdGVtZW50XCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50U3RyaW5nfScgdW5xdWFsaWZpZWQgbWV0YXN0YXRlbWVudC4uLmAsIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gIGlmIChkZXJpdmVkKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudE1hdGNoZXMgPSBsb2NhbE1ldGFDb250ZXh0Lm1hdGNoTWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnRNYXRjaGVzOyAgLy8vXG4gIH1cblxuICBpZiAoIXVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5TWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICB9KTtcblxuICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gbWV0YXN0YXRlbWVudFZlcmlmaWVkOyAvLy9cbiAgfVxuXG4gIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRTdHJpbmd9JyB1bnF1YWxpZmllZCBtZXRhc3RhdGVtZW50LmAsIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsIm1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwiYXNzaWdubWVudHMiLCJkZXJpdmVkIiwibG9jYWxNZXRhQ29udGV4dCIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkIiwibWV0YXN0YXRlbWVudE5vZGUiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsIm1ldGFzdGF0ZW1lbnRNYXRjaGVzIiwibWF0Y2hNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5TWV0YXN0YXRlbWVudCIsInZlcmlmaWVkQWhlYWQiLCJkZWJ1ZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUF3QkE7OztvRUFOUTtxQkFFTjs7Ozs7O0FBRTFCLElBQU1DLHlCQUF5QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUUxQixTQUFTRiwrQkFBK0JHLDRCQUE0QixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsZ0JBQWdCO0lBQ3pILElBQUlDLG1DQUFtQztJQUV2QyxJQUFNQyxvQkFBb0JQLHVCQUF1QkUsK0JBQzNDTSxpQ0FBaUNILGlCQUFpQkksWUFBWSxDQUFDUDtJQUVyRUcsaUJBQWlCSyxLQUFLLENBQUMsQUFBQyxrQkFBZ0QsT0FBL0JGLGdDQUErQixtQ0FBaUNOO0lBRXpHLElBQUlFLFNBQVM7UUFDWCxJQUFNTyx1QkFBdUJOLGlCQUFpQk8sa0JBQWtCLENBQUNMO1FBRWpFRCxtQ0FBbUNLLHNCQUF1QixHQUFHO0lBQy9EO0lBRUEsSUFBSSxDQUFDTCxrQ0FBa0M7UUFDckMsSUFBTU8sd0JBQXdCQyxJQUFBQSxzQkFBbUIsRUFBQ1AsbUJBQW1CSixhQUFhQyxTQUFTQyxrQkFBa0I7WUFDckcsSUFBTVUsZ0JBQWdCO1lBRXRCLE9BQU9BO1FBQ1Q7UUFFTlQsbUNBQW1DTyx1QkFBdUIsR0FBRztJQUMvRDtJQUVBLElBQUlQLGtDQUFrQztRQUNwQ0QsaUJBQWlCVyxLQUFLLENBQUMsQUFBQyxvQkFBa0QsT0FBL0JSLGdDQUErQixpQ0FBK0JOO0lBQzNHO0lBRUEsT0FBT0k7QUFDVCJ9
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyProofStep;
9
+ }
10
+ });
11
+ var _proof = /*#__PURE__*/ _interop_require_default(require("../step/proof"));
12
+ var _subproof = /*#__PURE__*/ _interop_require_default(require("../verify/subproof"));
13
+ var _subDerivation = /*#__PURE__*/ _interop_require_default(require("../verify/subDerivation"));
14
+ var _qualified = /*#__PURE__*/ _interop_require_default(require("../verify/statement/qualified"));
15
+ var _unqualified = /*#__PURE__*/ _interop_require_default(require("../verify/statement/unqualified"));
16
+ var _query = require("../utilities/query");
17
+ var _assignments = require("../utilities/assignments");
18
+ function _interop_require_default(obj) {
19
+ return obj && obj.__esModule ? obj : {
20
+ default: obj
21
+ };
22
+ }
23
+ var subproofNodeQuery = (0, _query.nodeQuery)("/proofStep|lastProofStep/subproof!"), statementNodeQuery = (0, _query.nodeQuery)("/qualifiedStatement|unqualifiedStatement/statement!"), qualifiedStatementNodeQuery = (0, _query.nodeQuery)("/proofStep|lastProofStep/qualifiedStatement!"), unqualifiedStatementNodeQuery = (0, _query.nodeQuery)("/proofStep|lastProofStep/unqualifiedStatement!");
24
+ function verifyProofStep(proofStepNode, localContext) {
25
+ var proofStepVerified = false;
26
+ var subproofNode = subproofNodeQuery(proofStepNode), qualifiedStatementNode = qualifiedStatementNodeQuery(proofStepNode), unqualifiedStatementNode = unqualifiedStatementNodeQuery(proofStepNode);
27
+ if (false) {
28
+ ///
29
+ } else if (subproofNode !== null) {
30
+ var subproofVerified;
31
+ subproofVerified = (0, _subproof.default)(subproofNode, localContext);
32
+ if (subproofVerified) {
33
+ var proofStep = _proof.default.fromSubproofNode(subproofNode);
34
+ localContext.addProofStep(proofStep);
35
+ proofStepVerified = true;
36
+ }
37
+ } else if (qualifiedStatementNode !== null) {
38
+ var qualifiedStatementVerified;
39
+ var assignments = [];
40
+ qualifiedStatementVerified = (0, _qualified.default)(qualifiedStatementNode, assignments, localContext);
41
+ if (qualifiedStatementVerified) {
42
+ var assignmentAssigned = (0, _assignments.assignAssignment)(assignments, localContext);
43
+ qualifiedStatementVerified = assignmentAssigned; ///
44
+ }
45
+ if (qualifiedStatementVerified) {
46
+ var statementNode = statementNodeQuery(qualifiedStatementNode), proofStep1 = _proof.default.fromStatementNode(statementNode);
47
+ localContext.addProofStep(proofStep1);
48
+ proofStepVerified = true;
49
+ }
50
+ } else if (unqualifiedStatementNode !== null) {
51
+ var unqualifiedStatementVerified;
52
+ var derived = true, assignments1 = [];
53
+ unqualifiedStatementVerified = (0, _unqualified.default)(unqualifiedStatementNode, assignments1, derived, localContext);
54
+ if (unqualifiedStatementVerified) {
55
+ var assignmentAssigned1 = (0, _assignments.assignAssignment)(assignments1, localContext);
56
+ unqualifiedStatementVerified = assignmentAssigned1; ///
57
+ }
58
+ if (unqualifiedStatementVerified) {
59
+ var statementNode1 = statementNodeQuery(unqualifiedStatementNode), proofStep2 = _proof.default.fromStatementNode(statementNode1);
60
+ localContext.addProofStep(proofStep2);
61
+ proofStepVerified = true;
62
+ }
63
+ }
64
+ return proofStepVerified;
65
+ }
66
+ Object.assign(_subDerivation.default, {
67
+ verifyProofStep: verifyProofStep
68
+ });
69
+
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJvb2ZTdGVwLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgUHJvb2ZTdGVwIGZyb20gXCIuLi9zdGVwL3Byb29mXCI7XG5pbXBvcnQgdmVyaWZ5U3VicHJvb2YgZnJvbSBcIi4uL3ZlcmlmeS9zdWJwcm9vZlwiO1xuaW1wb3J0IHZlcmlmeVN1YkRlcml2YXRpb24gZnJvbSBcIi4uL3ZlcmlmeS9zdWJEZXJpdmF0aW9uXCI7XG5pbXBvcnQgdmVyaWZ5UXVhbGlmaWVkU3RhdGVtZW50IGZyb20gXCIuLi92ZXJpZnkvc3RhdGVtZW50L3F1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50IGZyb20gXCIuLi92ZXJpZnkvc3RhdGVtZW50L3VucXVhbGlmaWVkXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGFzc2lnbkFzc2lnbm1lbnQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2Fzc2lnbm1lbnRzXCI7XG5cbmNvbnN0IHN1YnByb29mTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb29mU3RlcHxsYXN0UHJvb2ZTdGVwL3N1YnByb29mIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRTdGF0ZW1lbnR8dW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIHF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9wcm9vZlN0ZXB8bGFzdFByb29mU3RlcC9xdWFsaWZpZWRTdGF0ZW1lbnQhXCIpLFxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJvb2ZTdGVwfGxhc3RQcm9vZlN0ZXAvdW5xdWFsaWZpZWRTdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlQcm9vZlN0ZXAocHJvb2ZTdGVwTm9kZSwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBwcm9vZlN0ZXBWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IHN1YnByb29mTm9kZSA9IHN1YnByb29mTm9kZVF1ZXJ5KHByb29mU3RlcE5vZGUpLFxuICAgICAgICBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gcXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5KHByb29mU3RlcE5vZGUpLFxuICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeShwcm9vZlN0ZXBOb2RlKTtcblxuICBpZiAoZmFsc2UpIHtcbiAgICAvLy9cbiAgfSBlbHNlIGlmIChzdWJwcm9vZk5vZGUgIT09IG51bGwpIHtcbiAgICBsZXQgc3VicHJvb2ZWZXJpZmllZDtcblxuICAgIHN1YnByb29mVmVyaWZpZWQgPSB2ZXJpZnlTdWJwcm9vZihzdWJwcm9vZk5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoc3VicHJvb2ZWZXJpZmllZCkge1xuICAgICAgY29uc3QgcHJvb2ZTdGVwID0gUHJvb2ZTdGVwLmZyb21TdWJwcm9vZk5vZGUoc3VicHJvb2ZOb2RlKTtcblxuICAgICAgbG9jYWxDb250ZXh0LmFkZFByb29mU3RlcChwcm9vZlN0ZXApO1xuXG4gICAgICBwcm9vZlN0ZXBWZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9IGVsc2UgaWYgKHF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBsZXQgcXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQ7XG5cbiAgICBjb25zdCBhc3NpZ25tZW50cyA9IFtdO1xuXG4gICAgcXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlRdWFsaWZpZWRTdGF0ZW1lbnQocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAocXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGFzc2lnbm1lbnRBc3NpZ25lZCA9IGFzc2lnbkFzc2lnbm1lbnQoYXNzaWdubWVudHMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gYXNzaWdubWVudEFzc2lnbmVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAocXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICBwcm9vZlN0ZXAgPSBQcm9vZlN0ZXAuZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIGxvY2FsQ29udGV4dC5hZGRQcm9vZlN0ZXAocHJvb2ZTdGVwKTtcblxuICAgICAgcHJvb2ZTdGVwVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfSBlbHNlIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBsZXQgdW5xdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZDtcblxuICAgIGNvbnN0IGRlcml2ZWQgPSB0cnVlLFxuICAgICAgICAgIGFzc2lnbm1lbnRzID0gW107XG5cbiAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBhc3NpZ25tZW50QXNzaWduZWQgPSBhc3NpZ25Bc3NpZ25tZW50KGFzc2lnbm1lbnRzLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gYXNzaWdubWVudEFzc2lnbmVkOyAgLy8vXG4gICAgfVxuXG4gICAgaWYgKHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICAgIHByb29mU3RlcCA9IFByb29mU3RlcC5mcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgbG9jYWxDb250ZXh0LmFkZFByb29mU3RlcChwcm9vZlN0ZXApO1xuXG4gICAgICBwcm9vZlN0ZXBWZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHByb29mU3RlcFZlcmlmaWVkO1xufVxuXG5PYmplY3QuYXNzaWduKHZlcmlmeVN1YkRlcml2YXRpb24sIHtcbiAgdmVyaWZ5UHJvb2ZTdGVwXG59KTtcbiJdLCJuYW1lcyI6WyJ2ZXJpZnlQcm9vZlN0ZXAiLCJzdWJwcm9vZk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInN0YXRlbWVudE5vZGVRdWVyeSIsInF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5IiwicHJvb2ZTdGVwTm9kZSIsImxvY2FsQ29udGV4dCIsInByb29mU3RlcFZlcmlmaWVkIiwic3VicHJvb2ZOb2RlIiwicXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsInN1YnByb29mVmVyaWZpZWQiLCJ2ZXJpZnlTdWJwcm9vZiIsInByb29mU3RlcCIsIlByb29mU3RlcCIsImZyb21TdWJwcm9vZk5vZGUiLCJhZGRQcm9vZlN0ZXAiLCJxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCIsImFzc2lnbm1lbnRzIiwidmVyaWZ5UXVhbGlmaWVkU3RhdGVtZW50IiwiYXNzaWdubWVudEFzc2lnbmVkIiwiYXNzaWduQXNzaWdubWVudCIsInN0YXRlbWVudE5vZGUiLCJmcm9tU3RhdGVtZW50Tm9kZSIsInVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQiLCJkZXJpdmVkIiwidmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJ2ZXJpZnlTdWJEZXJpdmF0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFnQkE7OztlQUF3QkE7Ozs0REFkRjsrREFDSztvRUFDSztnRUFDSztrRUFDRTtxQkFFYjsyQkFDTzs7Ozs7O0FBRWpDLElBQU1DLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyx1Q0FDOUJDLHFCQUFxQkQsSUFBQUEsZ0JBQVMsRUFBQyx3REFDL0JFLDhCQUE4QkYsSUFBQUEsZ0JBQVMsRUFBQyxpREFDeENHLGdDQUFnQ0gsSUFBQUEsZ0JBQVMsRUFBQztBQUVqQyxTQUFTRixnQkFBZ0JNLGFBQWEsRUFBRUMsWUFBWTtJQUNqRSxJQUFJQyxvQkFBb0I7SUFFeEIsSUFBTUMsZUFBZVIsa0JBQWtCSyxnQkFDakNJLHlCQUF5Qk4sNEJBQTRCRSxnQkFDckRLLDJCQUEyQk4sOEJBQThCQztJQUUvRCxJQUFJLE9BQU87SUFDVCxHQUFHO0lBQ0wsT0FBTyxJQUFJRyxpQkFBaUIsTUFBTTtRQUNoQyxJQUFJRztRQUVKQSxtQkFBbUJDLElBQUFBLGlCQUFjLEVBQUNKLGNBQWNGO1FBRWhELElBQUlLLGtCQUFrQjtZQUNwQixJQUFNRSxZQUFZQyxjQUFTLENBQUNDLGdCQUFnQixDQUFDUDtZQUU3Q0YsYUFBYVUsWUFBWSxDQUFDSDtZQUUxQk4sb0JBQW9CO1FBQ3RCO0lBQ0YsT0FBTyxJQUFJRSwyQkFBMkIsTUFBTTtRQUMxQyxJQUFJUTtRQUVKLElBQU1DLGNBQWMsRUFBRTtRQUV0QkQsNkJBQTZCRSxJQUFBQSxrQkFBd0IsRUFBQ1Ysd0JBQXdCUyxhQUFhWjtRQUUzRixJQUFJVyw0QkFBNEI7WUFDOUIsSUFBTUcscUJBQXFCQyxJQUFBQSw2QkFBZ0IsRUFBQ0gsYUFBYVo7WUFFekRXLDZCQUE2Qkcsb0JBQW9CLEdBQUc7UUFDdEQ7UUFFQSxJQUFJSCw0QkFBNEI7WUFDOUIsSUFBTUssZ0JBQWdCcEIsbUJBQW1CTyx5QkFDbkNJLGFBQVlDLGNBQVMsQ0FBQ1MsaUJBQWlCLENBQUNEO1lBRTlDaEIsYUFBYVUsWUFBWSxDQUFDSDtZQUUxQk4sb0JBQW9CO1FBQ3RCO0lBQ0YsT0FBTyxJQUFJRyw2QkFBNkIsTUFBTTtRQUM1QyxJQUFJYztRQUVKLElBQU1DLFVBQVUsTUFDVlAsZUFBYyxFQUFFO1FBRXRCTSwrQkFBK0JFLElBQUFBLG9CQUEwQixFQUFDaEIsMEJBQTBCUSxjQUFhTyxTQUFTbkI7UUFFMUcsSUFBSWtCLDhCQUE4QjtZQUNoQyxJQUFNSixzQkFBcUJDLElBQUFBLDZCQUFnQixFQUFDSCxjQUFhWjtZQUV6RGtCLCtCQUErQkoscUJBQXFCLEdBQUc7UUFDekQ7UUFFQSxJQUFJSSw4QkFBOEI7WUFDaEMsSUFBTUYsaUJBQWdCcEIsbUJBQW1CUSwyQkFDbkNHLGFBQVlDLGNBQVMsQ0FBQ1MsaUJBQWlCLENBQUNEO1lBRTlDaEIsYUFBYVUsWUFBWSxDQUFDSDtZQUUxQk4sb0JBQW9CO1FBQ3RCO0lBQ0Y7SUFFQSxPQUFPQTtBQUNUO0FBRUFvQixPQUFPQyxNQUFNLENBQUNDLHNCQUFtQixFQUFFO0lBQ2pDOUIsaUJBQUFBO0FBQ0YifQ==