occam-verify-cli 0.0.455 → 0.0.456

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 (55) hide show
  1. package/lib/axiom.js +26 -46
  2. package/lib/combinator.js +2 -3
  3. package/lib/conclusion.js +2 -3
  4. package/lib/constructor.js +2 -3
  5. package/lib/label.js +2 -3
  6. package/lib/lemma.js +26 -46
  7. package/lib/premise.js +2 -3
  8. package/lib/ruleNames.js +5 -1
  9. package/lib/theorem.js +26 -46
  10. package/lib/utilities/string.js +46 -1
  11. package/lib/verify/assertion/type.js +55 -0
  12. package/lib/verify/axiom.js +10 -15
  13. package/lib/verify/equality.js +7 -1
  14. package/lib/verify/lemma.js +13 -22
  15. package/lib/verify/metastatement/qualified.js +4 -3
  16. package/lib/verify/metastatement/unqualified.js +14 -9
  17. package/lib/verify/metastatement.js +19 -0
  18. package/lib/verify/statement/qualified.js +14 -11
  19. package/lib/verify/statement/unqualified.js +13 -9
  20. package/lib/verify/statement.js +5 -8
  21. package/lib/verify/statementAsCombinator.js +3 -2
  22. package/lib/verify/term.js +6 -1
  23. package/lib/verify/termAsConstructor.js +5 -5
  24. package/lib/verify/theorem.js +10 -15
  25. package/lib/verify/type.js +8 -7
  26. package/lib/verify/variable.js +4 -3
  27. package/package.json +1 -1
  28. package/src/axiom.js +27 -54
  29. package/src/combinator.js +3 -3
  30. package/src/conclusion.js +3 -3
  31. package/src/constructor.js +3 -3
  32. package/src/label.js +3 -3
  33. package/src/lemma.js +28 -55
  34. package/src/premise.js +3 -3
  35. package/src/ruleNames.js +1 -0
  36. package/src/theorem.js +32 -59
  37. package/src/utilities/string.js +67 -0
  38. package/src/verify/assertion/type.js +32 -56
  39. package/src/verify/axiom.js +10 -24
  40. package/src/verify/equality.js +9 -0
  41. package/src/verify/lemma.js +14 -37
  42. package/src/verify/metastatement/qualified.js +5 -3
  43. package/src/verify/metastatement/unqualified.js +17 -10
  44. package/src/verify/metastatement.js +15 -0
  45. package/src/verify/statement/qualified.js +20 -8
  46. package/src/verify/statement/unqualified.js +16 -10
  47. package/src/verify/statement.js +5 -8
  48. package/src/verify/statementAsCombinator.js +4 -2
  49. package/src/verify/term.js +8 -0
  50. package/src/verify/termAsConstructor.js +5 -5
  51. package/src/verify/theorem.js +11 -25
  52. package/src/verify/type.js +9 -7
  53. package/src/verify/variable.js +5 -3
  54. package/lib/utilities/node.js +0 -45
  55. package/src/utilities/node.js +0 -50
@@ -24,7 +24,9 @@ function verifyTermAsConstructor(termNode, typeNode, fileContext) {
24
24
  var termVerifiedAsConstructor = false;
25
25
  fileContext.begin(termNode);
26
26
  var type = null;
27
- var nonTerminalNode = termNode, childNodes = nonTerminalNode.getChildNodes(), childNodesVerified = verifyChildNodes(childNodes, fileContext);
27
+ var nonTerminalNode = termNode, termString = (0, _string.nodeAsString)(termNode);
28
+ fileContext.debug("Verifying the '".concat(termString, "' constructor..."));
29
+ var childNodes = nonTerminalNode.getChildNodes(), childNodesVerified = verifyChildNodes(childNodes, fileContext);
28
30
  if (childNodesVerified) {
29
31
  if (typeNode === null) {
30
32
  termVerifiedAsConstructor = true;
@@ -34,7 +36,6 @@ function verifyTermAsConstructor(termNode, typeNode, fileContext) {
34
36
  if (type !== null) {
35
37
  termVerifiedAsConstructor = true;
36
38
  } else {
37
- var termString = (0, _string.nodeAsString)(termNode);
38
39
  fileContext.error("The '".concat(termString, "' constructor's '").concat(typeName, "' type is missing."));
39
40
  }
40
41
  }
@@ -44,8 +45,7 @@ function verifyTermAsConstructor(termNode, typeNode, fileContext) {
44
45
  fileContext.addConstructor(constructor);
45
46
  }
46
47
  if (termVerifiedAsConstructor) {
47
- var termString1 = (0, _string.nodeAsString)(termNode);
48
- fileContext.info("Verified the '".concat(termString1, "' constructor."));
48
+ fileContext.info("Verified the '".concat(termString, "' constructor."));
49
49
  }
50
50
  termVerifiedAsConstructor ? fileContext.complete(termNode) : fileContext.halt(termNode);
51
51
  return termVerifiedAsConstructor;
@@ -125,4 +125,4 @@ function verifyNonTerminalNode(nonTerminalNode, fileContext) {
125
125
  return nonTerminalNodeVerified;
126
126
  }
127
127
 
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybUFzQ29uc3RydWN0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlUZXJtIGZyb20gXCIuLi92ZXJpZnkvdGVybVwiO1xuaW1wb3J0IENvbnN0cnVjdG9yIGZyb20gXCIuLi9jb25zdHJ1Y3RvclwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgVEVSTV9SVUxFX05BTUUsIEFSR1VNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90eXBlXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlUZXJtQXNDb25zdHJ1Y3Rvcih0ZXJtTm9kZSwgdHlwZU5vZGUsIGZpbGVDb250ZXh0KSB7XG4gIGxldCB0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yID0gZmFsc2U7XG5cbiAgZmlsZUNvbnRleHQuYmVnaW4odGVybU5vZGUpO1xuXG4gIGxldCB0eXBlID0gbnVsbDtcblxuICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSB0ZXJtTm9kZSwgIC8vL1xuICAgICAgICBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgY2hpbGROb2Rlc1ZlcmlmaWVkID0gdmVyaWZ5Q2hpbGROb2RlcyhjaGlsZE5vZGVzLCBmaWxlQ29udGV4dCk7XG5cbiAgaWYgKGNoaWxkTm9kZXNWZXJpZmllZCkge1xuICAgIGlmICh0eXBlTm9kZSA9PT0gbnVsbCkge1xuICAgICAgdGVybVZlcmlmaWVkQXNDb25zdHJ1Y3RvciA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHR5cGVOYW1lID0gdHlwZU5hbWVGcm9tVHlwZU5vZGUodHlwZU5vZGUpO1xuXG4gICAgICB0eXBlID0gZmlsZUNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKTtcblxuICAgICAgaWYgKHR5cGUgIT09IG51bGwpIHtcbiAgICAgICAgdGVybVZlcmlmaWVkQXNDb25zdHJ1Y3RvciA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB0ZXJtU3RyaW5nID0gbm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgICAgICBmaWxlQ29udGV4dC5lcnJvcihgVGhlICcke3Rlcm1TdHJpbmd9JyBjb25zdHJ1Y3RvcidzICcke3R5cGVOYW1lfScgdHlwZSBpcyBtaXNzaW5nLmApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmICh0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yKSB7XG4gICAgY29uc3QgY29uc3RydWN0b3IgPSBDb25zdHJ1Y3Rvci5mcm9tVGVybU5vZGVBbmRUeXBlKHRlcm1Ob2RlLCB0eXBlKTtcblxuICAgIGZpbGVDb250ZXh0LmFkZENvbnN0cnVjdG9yKGNvbnN0cnVjdG9yKTtcbiAgfVxuXG4gIGlmICh0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yKSB7XG4gICAgY29uc3QgdGVybVN0cmluZyA9IG5vZGVBc1N0cmluZyh0ZXJtTm9kZSk7XG5cbiAgICBmaWxlQ29udGV4dC5pbmZvKGBWZXJpZmllZCB0aGUgJyR7dGVybVN0cmluZ30nIGNvbnN0cnVjdG9yLmApO1xuICB9XG5cbiAgdGVybVZlcmlmaWVkQXNDb25zdHJ1Y3RvciA/XG4gICAgZmlsZUNvbnRleHQuY29tcGxldGUodGVybU5vZGUpIDpcbiAgICAgIGZpbGVDb250ZXh0LmhhbHQodGVybU5vZGUpO1xuXG4gIHJldHVybiB0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlOb2RlKG5vZGUsIGZpbGVDb250ZXh0KSB7XG4gIGxldCBub2RlVmVyaWZpZWQ7XG5cbiAgY29uc3Qgbm9kZVRlcm1pbmFsTm9kZSA9IG5vZGUuaXNUZXJtaW5hbE5vZGUoKTtcblxuICBpZiAobm9kZVRlcm1pbmFsTm9kZSkge1xuICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICB0ZXJtaW5hbE5vZGVWZXJpZmllZCA9IHZlcmlmeVRlcm1pbmFsTm9kZSh0ZXJtaW5hbE5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgIG5vZGVWZXJpZmllZCA9IHRlcm1pbmFsTm9kZVZlcmlmaWVkOyAgLy8vXG4gIH0gZWxzZSB7XG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbm9kZSwgLy8vXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICBub2RlVmVyaWZpZWQgPSBub25UZXJtaW5hbE5vZGVWZXJpZmllZDsgLy8vXG4gIH1cblxuICByZXR1cm4gbm9kZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIGZpbGVDb250ZXh0KSB7XG4gIGNvbnN0IGNoaWxkTm9kZXNWZXJpZmllZCA9IGNoaWxkTm9kZXMuZXZlcnkoKGNoaWxkTm9kZSkgPT4ge1xuICAgIGNvbnN0IG5vZGUgPSBjaGlsZE5vZGUsIC8vL1xuICAgICAgICAgIG5vZGVWZXJpZmllZCA9IHZlcmlmeU5vZGUobm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgaWYgKG5vZGVWZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gY2hpbGROb2Rlc1ZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCkge1xuICBjb25zdCB0ZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRydWU7XG5cbiAgcmV0dXJuIHRlcm1pbmFsTm9kZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlBcmd1bWVudE5vZGUoYXJndW1lbnROb2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgdHlwZU5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IHR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeShhcmd1bWVudE5vZGUpO1xuXG4gIGlmICh0eXBlTm9kZSA9PT0gbnVsbCkge1xuICAgIGNvbnN0IGFyZ3VtZW50U3RyaW5nID0gbm9kZUFzU3RyaW5nKGFyZ3VtZW50Tm9kZSk7XG5cbiAgICBmaWxlQ29udGV4dC5lcnJvcihgVGhlICR7YXJndW1lbnRTdHJpbmd9IGFyZ3VtZW50IHNob3VsZCBiZSBhIHR5cGUuYCk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZSh0eXBlTm9kZSksXG4gICAgICAgICAgdHlwZVByZXNlbnQgPSBmaWxlQ29udGV4dC5pc1R5cGVQcmVzZW50QnlUeXBlTmFtZSh0eXBlTmFtZSk7XG5cbiAgICBpZiAoIXR5cGVQcmVzZW50KSB7XG4gICAgICBmaWxlQ29udGV4dC5lcnJvcihgVGhlIHR5cGUgJyR7dHlwZU5hbWV9JyBpcyBtaXNzaW5nLmApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0eXBlTm9kZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHlwZU5vZGVWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuXG4gIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCk7XG5cbiAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgIGNhc2UgQVJHVU1FTlRfUlVMRV9OQU1FOiB7XG4gICAgICBjb25zdCBhcmd1bWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgYXJndW1lbnROb2RlVmVyaWZpZWQgPSB2ZXJpZnlBcmd1bWVudE5vZGUoYXJndW1lbnROb2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gYXJndW1lbnROb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjYXNlIFRFUk1fUlVMRV9OQU1FOiB7XG4gICAgICBjb25zdCB0ZXJtTm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICB0eXBlcyA9IFtdLFxuICAgICAgICAgICAgY29udGV4dCA9IGZpbGVDb250ZXh0LCAgLy8vXG4gICAgICAgICAgICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHRlcm1Ob2RlLCB0eXBlcywgY29udGV4dCk7XG5cbiAgICAgIGlmICh0ZXJtVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgZmlyc3RUeXBlID0gZmlyc3QodHlwZXMpLFxuICAgICAgICAgICAgICB0eXBlID0gZmlyc3RUeXBlOyAvLy9cblxuICAgICAgICBpZiAodHlwZSAhPT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IHRlcm1TdHJpbmcgPSBub2RlQXNTdHJpbmcodGVybU5vZGUpO1xuXG4gICAgICAgICAgZmlsZUNvbnRleHQuZXJyb3IoYFRoZSB0eXBlIG9mIHRoZSBjb25zdHJ1Y3RvcidzIGNvbXBvdW5kICcke3Rlcm1TdHJpbmd9JyB0ZXJtIG5vZGUgaXMgbm90IG51bGwuYCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0cnVlOyAvLy9cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBkZWZhdWx0OiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgIGNoaWxkTm9kZXNWZXJpZmllZCA9IHZlcmlmeUNoaWxkTm9kZXMoY2hpbGROb2RlcywgZmlsZUNvbnRleHQpO1xuXG4gICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGNoaWxkTm9kZXNWZXJpZmllZDsgLy8vXG5cbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbn1cblxuIl0sIm5hbWVzIjpbInZlcmlmeVRlcm1Bc0NvbnN0cnVjdG9yIiwidHlwZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInRlcm1Ob2RlIiwidHlwZU5vZGUiLCJmaWxlQ29udGV4dCIsInRlcm1WZXJpZmllZEFzQ29uc3RydWN0b3IiLCJiZWdpbiIsInR5cGUiLCJub25UZXJtaW5hbE5vZGUiLCJjaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsImNoaWxkTm9kZXNWZXJpZmllZCIsInZlcmlmeUNoaWxkTm9kZXMiLCJ0eXBlTmFtZSIsInR5cGVOYW1lRnJvbVR5cGVOb2RlIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwidGVybVN0cmluZyIsIm5vZGVBc1N0cmluZyIsImVycm9yIiwiY29uc3RydWN0b3IiLCJDb25zdHJ1Y3RvciIsImZyb21UZXJtTm9kZUFuZFR5cGUiLCJhZGRDb25zdHJ1Y3RvciIsImluZm8iLCJjb21wbGV0ZSIsImhhbHQiLCJ2ZXJpZnlOb2RlIiwibm9kZSIsIm5vZGVWZXJpZmllZCIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZVZlcmlmaWVkIiwidmVyaWZ5VGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJldmVyeSIsImNoaWxkTm9kZSIsInZlcmlmeUFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50Tm9kZSIsInR5cGVOb2RlVmVyaWZpZWQiLCJhcmd1bWVudFN0cmluZyIsInR5cGVQcmVzZW50IiwiaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiQVJHVU1FTlRfUlVMRV9OQU1FIiwiYXJndW1lbnROb2RlVmVyaWZpZWQiLCJURVJNX1JVTEVfTkFNRSIsInR5cGVzIiwiY29udGV4dCIsInRlcm1WZXJpZmllZCIsInZlcmlmeVRlcm0iLCJmaXJzdFR5cGUiLCJmaXJzdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBWUE7OztlQUF3QkE7Ozt5REFWRDtnRUFDQztxQkFFRjtzQkFDTztxQkFDbUI7eUJBQ0c7Ozs7OztBQUVuRCxJQUFNQyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUM7QUFFakIsU0FBU0Ysd0JBQXdCRyxRQUFRLEVBQUVDLFFBQVEsRUFBRUMsV0FBVyxFQUFFO0lBQy9FLElBQUlDLDRCQUE0QixLQUFLO0lBRXJDRCxZQUFZRSxLQUFLLENBQUNKO0lBRWxCLElBQUlLLE9BQU8sSUFBSTtJQUVmLElBQU1DLGtCQUFrQk4sVUFDbEJPLGFBQWFELGdCQUFnQkUsYUFBYSxJQUMxQ0MscUJBQXFCQyxpQkFBaUJILFlBQVlMO0lBRXhELElBQUlPLG9CQUFvQjtRQUN0QixJQUFJUixhQUFhLElBQUksRUFBRTtZQUNyQkUsNEJBQTRCLElBQUk7UUFDbEMsT0FBTztZQUNMLElBQU1RLFdBQVdDLElBQUFBLDJCQUFvQixFQUFDWDtZQUV0Q0ksT0FBT0gsWUFBWVcsa0JBQWtCLENBQUNGO1lBRXRDLElBQUlOLFNBQVMsSUFBSSxFQUFFO2dCQUNqQkYsNEJBQTRCLElBQUk7WUFDbEMsT0FBTztnQkFDTCxJQUFNVyxhQUFhQyxJQUFBQSxvQkFBWSxFQUFDZjtnQkFFaENFLFlBQVljLEtBQUssQ0FBQyxBQUFDLFFBQXFDTCxPQUE5QkcsWUFBVyxxQkFBNEIsT0FBVEgsVUFBUztZQUNuRSxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJUiwyQkFBMkI7UUFD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
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybUFzQ29uc3RydWN0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlUZXJtIGZyb20gXCIuLi92ZXJpZnkvdGVybVwiO1xuaW1wb3J0IENvbnN0cnVjdG9yIGZyb20gXCIuLi9jb25zdHJ1Y3RvclwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgVEVSTV9SVUxFX05BTUUsIEFSR1VNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90eXBlXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlUZXJtQXNDb25zdHJ1Y3Rvcih0ZXJtTm9kZSwgdHlwZU5vZGUsIGZpbGVDb250ZXh0KSB7XG4gIGxldCB0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yID0gZmFsc2U7XG5cbiAgZmlsZUNvbnRleHQuYmVnaW4odGVybU5vZGUpO1xuXG4gIGxldCB0eXBlID0gbnVsbDtcblxuICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSB0ZXJtTm9kZSwgIC8vL1xuICAgICAgICB0ZXJtU3RyaW5nID0gbm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICBmaWxlQ29udGV4dC5kZWJ1ZyhgVmVyaWZ5aW5nIHRoZSAnJHt0ZXJtU3RyaW5nfScgY29uc3RydWN0b3IuLi5gKTtcblxuICBjb25zdCBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgY2hpbGROb2Rlc1ZlcmlmaWVkID0gdmVyaWZ5Q2hpbGROb2RlcyhjaGlsZE5vZGVzLCBmaWxlQ29udGV4dCk7XG5cbiAgaWYgKGNoaWxkTm9kZXNWZXJpZmllZCkge1xuICAgIGlmICh0eXBlTm9kZSA9PT0gbnVsbCkge1xuICAgICAgdGVybVZlcmlmaWVkQXNDb25zdHJ1Y3RvciA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHR5cGVOYW1lID0gdHlwZU5hbWVGcm9tVHlwZU5vZGUodHlwZU5vZGUpO1xuXG4gICAgICB0eXBlID0gZmlsZUNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKTtcblxuICAgICAgaWYgKHR5cGUgIT09IG51bGwpIHtcbiAgICAgICAgdGVybVZlcmlmaWVkQXNDb25zdHJ1Y3RvciA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBmaWxlQ29udGV4dC5lcnJvcihgVGhlICcke3Rlcm1TdHJpbmd9JyBjb25zdHJ1Y3RvcidzICcke3R5cGVOYW1lfScgdHlwZSBpcyBtaXNzaW5nLmApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmICh0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yKSB7XG4gICAgY29uc3QgY29uc3RydWN0b3IgPSBDb25zdHJ1Y3Rvci5mcm9tVGVybU5vZGVBbmRUeXBlKHRlcm1Ob2RlLCB0eXBlKTtcblxuICAgIGZpbGVDb250ZXh0LmFkZENvbnN0cnVjdG9yKGNvbnN0cnVjdG9yKTtcbiAgfVxuXG4gIGlmICh0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yKSB7XG4gICAgZmlsZUNvbnRleHQuaW5mbyhgVmVyaWZpZWQgdGhlICcke3Rlcm1TdHJpbmd9JyBjb25zdHJ1Y3Rvci5gKTtcbiAgfVxuXG4gIHRlcm1WZXJpZmllZEFzQ29uc3RydWN0b3IgP1xuICAgIGZpbGVDb250ZXh0LmNvbXBsZXRlKHRlcm1Ob2RlKSA6XG4gICAgICBmaWxlQ29udGV4dC5oYWx0KHRlcm1Ob2RlKTtcblxuICByZXR1cm4gdGVybVZlcmlmaWVkQXNDb25zdHJ1Y3Rvcjtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5Tm9kZShub2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgbm9kZVZlcmlmaWVkO1xuXG4gIGNvbnN0IG5vZGVUZXJtaW5hbE5vZGUgPSBub2RlLmlzVGVybWluYWxOb2RlKCk7XG5cbiAgaWYgKG5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgdGVybWluYWxOb2RlVmVyaWZpZWQgPSB2ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICBub2RlVmVyaWZpZWQgPSB0ZXJtaW5hbE5vZGVWZXJpZmllZDsgIC8vL1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgbm9kZVZlcmlmaWVkID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICB9XG5cbiAgcmV0dXJuIG5vZGVWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5Q2hpbGROb2RlcyhjaGlsZE5vZGVzLCBmaWxlQ29udGV4dCkge1xuICBjb25zdCBjaGlsZE5vZGVzVmVyaWZpZWQgPSBjaGlsZE5vZGVzLmV2ZXJ5KChjaGlsZE5vZGUpID0+IHtcbiAgICBjb25zdCBub2RlID0gY2hpbGROb2RlLCAvLy9cbiAgICAgICAgICBub2RlVmVyaWZpZWQgPSB2ZXJpZnlOb2RlKG5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgIGlmIChub2RlVmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGNoaWxkTm9kZXNWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5VGVybWluYWxOb2RlKHRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgY29uc3QgdGVybWluYWxOb2RlVmVyaWZpZWQgPSB0cnVlO1xuXG4gIHJldHVybiB0ZXJtaW5hbE5vZGVWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5QXJndW1lbnROb2RlKGFyZ3VtZW50Tm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IHR5cGVOb2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkoYXJndW1lbnROb2RlKTtcblxuICBpZiAodHlwZU5vZGUgPT09IG51bGwpIHtcbiAgICBjb25zdCBhcmd1bWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhhcmd1bWVudE5vZGUpO1xuXG4gICAgZmlsZUNvbnRleHQuZXJyb3IoYFRoZSAke2FyZ3VtZW50U3RyaW5nfSBhcmd1bWVudCBzaG91bGQgYmUgYSB0eXBlLmApO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHR5cGVOYW1lID0gdHlwZU5hbWVGcm9tVHlwZU5vZGUodHlwZU5vZGUpLFxuICAgICAgICAgIHR5cGVQcmVzZW50ID0gZmlsZUNvbnRleHQuaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gICAgaWYgKCF0eXBlUHJlc2VudCkge1xuICAgICAgZmlsZUNvbnRleHQuZXJyb3IoYFRoZSB0eXBlICcke3R5cGVOYW1lfScgaXMgbWlzc2luZy5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdHlwZU5vZGVWZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHR5cGVOb2RlVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGZpbGVDb250ZXh0KSB7XG4gIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcblxuICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpO1xuXG4gIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICBjYXNlIEFSR1VNRU5UX1JVTEVfTkFNRToge1xuICAgICAgY29uc3QgYXJndW1lbnROb2RlID0gbm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgIGFyZ3VtZW50Tm9kZVZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnROb2RlKGFyZ3VtZW50Tm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGFyZ3VtZW50Tm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgY2FzZSBURVJNX1JVTEVfTkFNRToge1xuICAgICAgY29uc3QgdGVybU5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgdHlwZXMgPSBbXSxcbiAgICAgICAgICAgIGNvbnRleHQgPSBmaWxlQ29udGV4dCwgIC8vL1xuICAgICAgICAgICAgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpO1xuXG4gICAgICBpZiAodGVybVZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IGZpcnN0VHlwZSA9IGZpcnN0KHR5cGVzKSxcbiAgICAgICAgICAgICAgdHlwZSA9IGZpcnN0VHlwZTsgLy8vXG5cbiAgICAgICAgaWYgKHR5cGUgIT09IG51bGwpIHtcbiAgICAgICAgICBjb25zdCB0ZXJtU3RyaW5nID0gbm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgICAgICAgIGZpbGVDb250ZXh0LmVycm9yKGBUaGUgdHlwZSBvZiB0aGUgY29uc3RydWN0b3IncyBjb21wb3VuZCAnJHt0ZXJtU3RyaW5nfScgdGVybSBub2RlIGlzIG5vdCBudWxsLmApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdHJ1ZTsgLy8vXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgZGVmYXVsdDoge1xuICAgICAgY29uc3QgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZpZWQgPSB2ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIGZpbGVDb250ZXh0KTtcblxuICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBjaGlsZE5vZGVzVmVyaWZpZWQ7IC8vL1xuXG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG59XG5cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlUZXJtQXNDb25zdHJ1Y3RvciIsInR5cGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ0ZXJtTm9kZSIsInR5cGVOb2RlIiwiZmlsZUNvbnRleHQiLCJ0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yIiwiYmVnaW4iLCJ0eXBlIiwibm9uVGVybWluYWxOb2RlIiwidGVybVN0cmluZyIsIm5vZGVBc1N0cmluZyIsImRlYnVnIiwiY2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJjaGlsZE5vZGVzVmVyaWZpZWQiLCJ2ZXJpZnlDaGlsZE5vZGVzIiwidHlwZU5hbWUiLCJ0eXBlTmFtZUZyb21UeXBlTm9kZSIsImZpbmRUeXBlQnlUeXBlTmFtZSIsImVycm9yIiwiY29uc3RydWN0b3IiLCJDb25zdHJ1Y3RvciIsImZyb21UZXJtTm9kZUFuZFR5cGUiLCJhZGRDb25zdHJ1Y3RvciIsImluZm8iLCJjb21wbGV0ZSIsImhhbHQiLCJ2ZXJpZnlOb2RlIiwibm9kZSIsIm5vZGVWZXJpZmllZCIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZVZlcmlmaWVkIiwidmVyaWZ5VGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJldmVyeSIsImNoaWxkTm9kZSIsInZlcmlmeUFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50Tm9kZSIsInR5cGVOb2RlVmVyaWZpZWQiLCJhcmd1bWVudFN0cmluZyIsInR5cGVQcmVzZW50IiwiaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiQVJHVU1FTlRfUlVMRV9OQU1FIiwiYXJndW1lbnROb2RlVmVyaWZpZWQiLCJURVJNX1JVTEVfTkFNRSIsInR5cGVzIiwiY29udGV4dCIsInRlcm1WZXJpZmllZCIsInZlcmlmeVRlcm0iLCJmaXJzdFR5cGUiLCJmaXJzdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBWUE7OztlQUF3QkE7Ozt5REFWRDtnRUFDQztxQkFFRjtzQkFDTztxQkFDbUI7eUJBQ0c7Ozs7OztBQUVuRCxJQUFNQyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUM7QUFFakIsU0FBU0Ysd0JBQXdCRyxRQUFRLEVBQUVDLFFBQVEsRUFBRUMsV0FBVyxFQUFFO0lBQy9FLElBQUlDLDRCQUE0QixLQUFLO0lBRXJDRCxZQUFZRSxLQUFLLENBQUNKO0lBRWxCLElBQUlLLE9BQU8sSUFBSTtJQUVmLElBQU1DLGtCQUFrQk4sVUFDbEJPLGFBQWFDLElBQUFBLG9CQUFZLEVBQUNSO0lBRWhDRSxZQUFZTyxLQUFLLENBQUMsQUFBQyxrQkFBNEIsT0FBWEYsWUFBVztJQUUvQyxJQUFNRyxhQUFhSixnQkFBZ0JLLGFBQWEsSUFDMUNDLHFCQUFxQkMsaUJBQWlCSCxZQUFZUjtJQUV4RCxJQUFJVSxvQkFBb0I7UUFDdEIsSUFBSVgsYUFBYSxJQUFJLEVBQUU7WUFDckJFLDRCQUE0QixJQUFJO1FBQ2xDLE9BQU87WUFDTCxJQUFNVyxXQUFXQyxJQUFBQSwyQkFBb0IsRUFBQ2Q7WUFFdENJLE9BQU9ILFlBQVljLGtCQUFrQixDQUFDRjtZQUV0QyxJQUFJVCxTQUFTLElBQUksRUFBRTtnQkFDakJGLDRCQUE0QixJQUFJO1lBQ2xDLE9BQU87Z0JBQ0xELFlBQVllLEtBQUssQ0FBQyxBQUFDLFFBQXFDSCxPQUE5QlAsWUFBVyxx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
@@ -13,7 +13,6 @@ var _labels = /*#__PURE__*/ _interopRequireDefault(require("../verify/labels"));
13
13
  var _proof = /*#__PURE__*/ _interopRequireDefault(require("../context/proof"));
14
14
  var _unqualified = /*#__PURE__*/ _interopRequireDefault(require("../verify/statement/unqualified"));
15
15
  var _indicativeConditional = /*#__PURE__*/ _interopRequireDefault(require("../verify/indicativeConditional"));
16
- var _array = require("../utilities/array");
17
16
  var _string = require("../utilities/string");
18
17
  var _query = require("../utilities/query");
19
18
  function _interopRequireDefault(obj) {
@@ -21,7 +20,7 @@ function _interopRequireDefault(obj) {
21
20
  default: obj
22
21
  };
23
22
  }
24
- var labelNodesQuery = (0, _query.nodesQuery)("/theorem/label"), statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!"), statementNodesQuery = (0, _query.nodesQuery)("/indicativeConditional/unqualifiedStatement/statement!"), unqualifiedStatementNodeQuery = (0, _query.nodeQuery)("/theorem/unqualifiedStatement!"), indicativeConditionalNodeQuery = (0, _query.nodeQuery)("/theorem/indicativeConditional!");
23
+ var labelNodesQuery = (0, _query.nodesQuery)("/theorem/label"), unqualifiedStatementNodeQuery = (0, _query.nodeQuery)("/theorem/unqualifiedStatement!"), indicativeConditionalNodeQuery = (0, _query.nodeQuery)("/theorem/indicativeConditional!");
25
24
  function verifyTheorem(theoremNode, fileContext) {
26
25
  var theoremVerified = false;
27
26
  fileContext.begin(theoremNode);
@@ -30,21 +29,17 @@ function verifyTheorem(theoremNode, fileContext) {
30
29
  var labels = [], labelsVerified = (0, _labels.default)(labelNodes, labels, fileContext);
31
30
  if (labelsVerified) {
32
31
  var unqualifiedStatementNode = unqualifiedStatementNodeQuery(theoremNode), indicativeConditionalNode = indicativeConditionalNodeQuery(theoremNode);
32
+ var unqualifiedStatementVerified = false, indicativeConditionalVerified = false;
33
33
  if (unqualifiedStatementNode !== null) {
34
- var unqualifiedStatementVerified = (0, _unqualified.default)(unqualifiedStatementNode, proofContext);
35
- if (unqualifiedStatementVerified) {
36
- var statementNode = statementNodeQuery(unqualifiedStatementNode), theorem = _theorem.default.fromLabelsAndStatementNode(labels, statementNode);
37
- fileContext.addTheorem(theorem);
38
- theoremVerified = true;
39
- }
34
+ unqualifiedStatementVerified = (0, _unqualified.default)(unqualifiedStatementNode, proofContext);
40
35
  }
41
36
  if (indicativeConditionalNode !== null) {
42
- var indicativeConditionalVerified = (0, _indicativeConditional.default)(indicativeConditionalNode, proofContext);
43
- if (indicativeConditionalVerified !== null) {
44
- var statementNodes = statementNodesQuery(indicativeConditionalNode), lastStatementNode = (0, _array.last)(statementNodes), frontStatementNodes = (0, _array.front)(statementNodes), consequentStatementNode = lastStatementNode, suppositionStatementNodes = frontStatementNodes, theorem1 = _theorem.default.fromLabelsSuppositionStatementNodesAndConsequentStatementNode(labels, suppositionStatementNodes, consequentStatementNode);
45
- fileContext.addTheorem(theorem1);
46
- theoremVerified = true;
47
- }
37
+ indicativeConditionalVerified = (0, _indicativeConditional.default)(indicativeConditionalNode, proofContext);
38
+ }
39
+ if (unqualifiedStatementVerified || indicativeConditionalVerified) {
40
+ var theorem = _theorem.default.fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode(labels, unqualifiedStatementNode, indicativeConditionalNode);
41
+ fileContext.addTheorem(theorem);
42
+ theoremVerified = true;
48
43
  }
49
44
  }
50
45
  if (theoremVerified) {
@@ -54,4 +49,4 @@ function verifyTheorem(theoremNode, fileContext) {
54
49
  return theoremVerified;
55
50
  }
56
51
 
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGhlb3JlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFRoZW9yZW0gZnJvbSBcIi4uL3RoZW9yZW1cIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCBQcm9vZkNvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeUluZGljYXRpdmVDb25kaXRpb25hbCBmcm9tIFwiLi4vdmVyaWZ5L2luZGljYXRpdmVDb25kaXRpb25hbFwiO1xuXG5pbXBvcnQgeyBmcm9udCwgbGFzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVzQXNTdHJpbmcgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBsYWJlbE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL3RoZW9yZW0vbGFiZWxcIiksXG4gICAgICBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2luZGljYXRpdmVDb25kaXRpb25hbC91bnF1YWxpZmllZFN0YXRlbWVudC9zdGF0ZW1lbnQhXCIpLFxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdGhlb3JlbS91bnF1YWxpZmllZFN0YXRlbWVudCFcIiksXG4gICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdGhlb3JlbS9pbmRpY2F0aXZlQ29uZGl0aW9uYWwhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlUaGVvcmVtKHRoZW9yZW1Ob2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgdGhlb3JlbVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgZmlsZUNvbnRleHQuYmVnaW4odGhlb3JlbU5vZGUpO1xuXG4gIGNvbnN0IGxhYmVsTm9kZXMgPSBsYWJlbE5vZGVzUXVlcnkodGhlb3JlbU5vZGUpLFxuICAgICAgICBsYWJlbHNTdHJpbmcgPSBub2Rlc0FzU3RyaW5nKGxhYmVsTm9kZXMpLFxuICAgICAgICBwcm9vZkNvbnRleHQgPSBQcm9vZkNvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KTtcblxuICBmaWxlQ29udGV4dC5kZWJ1ZyhgVmVyaWZ5aW5nIHRoZSAnJHtsYWJlbHNTdHJpbmd9JyB0aGVvcmVtLi4uYCk7XG5cbiAgY29uc3QgbGFiZWxzID0gW10sXG4gICAgICAgIGxhYmVsc1ZlcmlmaWVkID0gdmVyaWZ5TGFiZWxzKGxhYmVsTm9kZXMsIGxhYmVscywgZmlsZUNvbnRleHQpO1xuXG4gIGlmIChsYWJlbHNWZXJpZmllZCkge1xuICAgIGNvbnN0IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5KHRoZW9yZW1Ob2RlKSxcbiAgICAgICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlID0gaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZVF1ZXJ5KHRoZW9yZW1Ob2RlKTtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUsIHByb29mQ29udGV4dCk7XG5cbiAgICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICAgICAgdGhlb3JlbSA9IFRoZW9yZW0uZnJvbUxhYmVsc0FuZFN0YXRlbWVudE5vZGUobGFiZWxzLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBmaWxlQ29udGV4dC5hZGRUaGVvcmVtKHRoZW9yZW0pO1xuXG4gICAgICAgIHRoZW9yZW1WZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGluZGljYXRpdmVDb25kaXRpb25hbFZlcmlmaWVkID0gdmVyaWZ5SW5kaWNhdGl2ZUNvbmRpdGlvbmFsKGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUsIHByb29mQ29udGV4dCk7XG5cbiAgICAgIGlmIChpbmRpY2F0aXZlQ29uZGl0aW9uYWxWZXJpZmllZCAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBzdGF0ZW1lbnROb2RlcyA9IHN0YXRlbWVudE5vZGVzUXVlcnkoaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSksXG4gICAgICAgICAgICAgIGxhc3RTdGF0ZW1lbnROb2RlID0gbGFzdChzdGF0ZW1lbnROb2RlcyksXG4gICAgICAgICAgICAgIGZyb250U3RhdGVtZW50Tm9kZXMgPSBmcm9udChzdGF0ZW1lbnROb2RlcyksXG4gICAgICAgICAgICAgIGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlID0gbGFzdFN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcyA9IGZyb250U3RhdGVtZW50Tm9kZXMsICAvLy9cbiAgICAgICAgICAgICAgdGhlb3JlbSA9IFRoZW9yZW0uZnJvbUxhYmVsc1N1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXNBbmRDb25zZXF1ZW50U3RhdGVtZW50Tm9kZShsYWJlbHMsIHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMsIGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBmaWxlQ29udGV4dC5hZGRUaGVvcmVtKHRoZW9yZW0pO1xuXG4gICAgICAgIHRoZW9yZW1WZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHRoZW9yZW1WZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHtsYWJlbHNTdHJpbmd9JyB0aGVvcmVtLmApO1xuICB9XG5cbiAgdGhlb3JlbVZlcmlmaWVkID9cbiAgICBmaWxlQ29udGV4dC5jb21wbGV0ZSh0aGVvcmVtTm9kZSkgOlxuICAgICAgZmlsZUNvbnRleHQuaGFsdCh0aGVvcmVtTm9kZSk7XG5cbiAgcmV0dXJuIHRoZW9yZW1WZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlUaGVvcmVtIiwibGFiZWxOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInN0YXRlbWVudE5vZGVzUXVlcnkiLCJ1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeSIsImluZGljYXRpdmVDb25kaXRpb25hbE5vZGVRdWVyeSIsInRoZW9yZW1Ob2RlIiwiZmlsZUNvbnRleHQiLCJ0aGVvcmVtVmVyaWZpZWQiLCJiZWdpbiIsImxhYmVsTm9kZXMiLCJsYWJlbHNTdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwicHJvb2ZDb250ZXh0IiwiUHJvb2ZDb250ZXh0IiwiZnJvbUZpbGVDb250ZXh0IiwiZGVidWciLCJsYWJlbHMiLCJsYWJlbHNWZXJpZmllZCIsInZlcmlmeUxhYmVscyIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImluZGljYXRpdmVDb25kaXRpb25hbE5vZGUiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlIiwidGhlb3JlbSIsIlRoZW9yZW0iLCJmcm9tTGFiZWxzQW5kU3RhdGVtZW50Tm9kZSIsImFkZFRoZW9yZW0iLCJpbmRpY2F0aXZlQ29uZGl0aW9uYWxWZXJpZmllZCIsInZlcmlmeUluZGljYXRpdmVDb25kaXRpb25hbCIsInN0YXRlbWVudE5vZGVzIiwibGFzdFN0YXRlbWVudE5vZGUiLCJsYXN0IiwiZnJvbnRTdGF0ZW1lbnROb2RlcyIsImZyb250IiwiY29uc2VxdWVudFN0YXRlbWVudE5vZGUiLCJzdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzIiwiZnJvbUxhYmVsc1N1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXNBbmRDb25zZXF1ZW50U3RhdGVtZW50Tm9kZSIsImluZm8iLCJjb21wbGV0ZSIsImhhbHQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWtCQTs7O2VBQXdCQTs7OzREQWhCSjsyREFDSzswREFDQTtnRUFDYzswRUFDQztxQkFFWjtzQkFDRTtxQkFDUTs7Ozs7O0FBRXRDLElBQU1DLGtCQUFrQkMsSUFBQUEsaUJBQVUsRUFBQyxtQkFDN0JDLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQyxxQ0FDL0JDLHNCQUFzQkgsSUFBQUEsaUJBQVUsRUFBQywyREFDakNJLGdDQUFnQ0YsSUFBQUEsZ0JBQVMsRUFBQyxtQ0FDMUNHLGlDQUFpQ0gsSUFBQUEsZ0JBQVMsRUFBQztBQUVsQyxTQUFTSixjQUFjUSxXQUFXLEVBQUVDLFdBQVcsRUFBRTtJQUM5RCxJQUFJQyxrQkFBa0IsS0FBSztJQUUzQkQsWUFBWUUsS0FBSyxDQUFDSDtJQUVsQixJQUFNSSxhQUFhWCxnQkFBZ0JPLGNBQzdCSyxlQUFlQyxJQUFBQSxxQkFBYSxFQUFDRixhQUM3QkcsZUFBZUMsY0FBWSxDQUFDQyxlQUFlLENBQUNSO0lBRWxEQSxZQUFZUyxLQUFLLENBQUMsQUFBQyxrQkFBOEIsT0FBYkwsY0FBYTtJQUVqRCxJQUFNTSxTQUFTLEVBQUUsRUFDWEMsaUJBQWlCQyxJQUFBQSxlQUFZLEVBQUNULFlBQVlPLFFBQVFWO0lBRXhELElBQUlXLGdCQUFnQjtRQUNsQixJQUFNRSwyQkFBMkJoQiw4QkFBOEJFLGNBQ3pEZSw0QkFBNEJoQiwrQkFBK0JDO1FBRWpFLElBQUljLDZCQUE2QixJQUFJLEVBQUU7WUFDckMsSUFBTUUsK0JBQStCQyxJQUFBQSxvQkFBMEIsRUFBQ0gsMEJBQTBCUDtZQUUxRixJQUFJUyw4QkFBOEI7Z0JBQ2hDLElBQU1FLGdCQUFnQnZCLG1CQUFtQm1CLDJCQUNuQ0ssVUFBVUMsZ0JBQU8sQ0FBQ0MsMEJBQTBCLENBQUNWLFFBQVFPO2dCQUUzRGpCLFlBQVlxQixVQUFVLENBQUNIO2dCQUV2QmpCLGtCQUFrQixJQUFJO1lBQ3hCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSWEsOEJBQThCLElBQUksRUFBRTtZQUN0QyxJQUFNUSxnQ0FBZ0NDLElBQUFBLDhCQUEyQixFQUFDVCwyQkFBMkJSO1lBRTdGLElBQUlnQixrQ0FBa0MsSUFBSSxFQUFFO2dCQUMxQyxJQUFNRSxpQkFBaUI1QixvQkFBb0JrQiw0QkFDckNXLG9CQUFvQkMsSUFBQUEsV0FBSSxFQUFDRixpQkFDekJHLHNCQUFzQkMsSUFBQUEsWUFBSyxFQUFDSixpQkFDNUJLLDBCQUEwQkosbUJBQzFCSyw0QkFBNEJILHFCQUM1QlQsV0FBVUMsZ0JBQU8sQ0FBQ1ksNkRBQTZELENBQUNyQixRQUFRb0IsMkJBQTJCRDtnQkFFekg3QixZQUFZcUIsVUFBVSxDQUFDSDtnQkFFdkJqQixrQkFBa0IsSUFBSTtZQUN4QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJQSxpQkFBaUI7UUFDbkJELFlBQVlnQyxJQUFJLENBQUMsQUFBQyxpQkFBNkIsT0FBYjVCLGNBQWE7SUFDakQsQ0FBQztJQUVESCxrQkFDRUQsWUFBWWlDLFFBQVEsQ0FBQ2xDLGVBQ25CQyxZQUFZa0MsSUFBSSxDQUFDbkMsWUFBWTtJQUVqQyxPQUFPRTtBQUNUIn0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGhlb3JlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFRoZW9yZW0gZnJvbSBcIi4uL3RoZW9yZW1cIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCBQcm9vZkNvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeUluZGljYXRpdmVDb25kaXRpb25hbCBmcm9tIFwiLi4vdmVyaWZ5L2luZGljYXRpdmVDb25kaXRpb25hbFwiO1xuXG5pbXBvcnQgeyBub2Rlc0FzU3RyaW5nIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbGFiZWxOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi90aGVvcmVtL2xhYmVsXCIpLFxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdGhlb3JlbS91bnF1YWxpZmllZFN0YXRlbWVudCFcIiksXG4gICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdGhlb3JlbS9pbmRpY2F0aXZlQ29uZGl0aW9uYWwhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlUaGVvcmVtKHRoZW9yZW1Ob2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgdGhlb3JlbVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgZmlsZUNvbnRleHQuYmVnaW4odGhlb3JlbU5vZGUpO1xuXG4gIGNvbnN0IGxhYmVsTm9kZXMgPSBsYWJlbE5vZGVzUXVlcnkodGhlb3JlbU5vZGUpLFxuICAgICAgICBsYWJlbHNTdHJpbmcgPSBub2Rlc0FzU3RyaW5nKGxhYmVsTm9kZXMpLFxuICAgICAgICBwcm9vZkNvbnRleHQgPSBQcm9vZkNvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KTtcblxuICBmaWxlQ29udGV4dC5kZWJ1ZyhgVmVyaWZ5aW5nIHRoZSAnJHtsYWJlbHNTdHJpbmd9JyB0aGVvcmVtLi4uYCk7XG5cbiAgY29uc3QgbGFiZWxzID0gW10sXG4gICAgbGFiZWxzVmVyaWZpZWQgPSB2ZXJpZnlMYWJlbHMobGFiZWxOb2RlcywgbGFiZWxzLCBmaWxlQ29udGV4dCk7XG5cbiAgaWYgKGxhYmVsc1ZlcmlmaWVkKSB7XG4gICAgY29uc3QgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkodGhlb3JlbU5vZGUpLFxuICAgICAgICAgIGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUgPSBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlUXVlcnkodGhlb3JlbU5vZGUpO1xuXG4gICAgbGV0IHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZSxcbiAgICAgIGluZGljYXRpdmVDb25kaXRpb25hbFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBpZiAodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBwcm9vZkNvbnRleHQpO1xuICAgIH1cblxuICAgIGlmIChpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlICE9PSBudWxsKSB7XG4gICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxWZXJpZmllZCA9IHZlcmlmeUluZGljYXRpdmVDb25kaXRpb25hbChpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlLCBwcm9vZkNvbnRleHQpO1xuICAgIH1cblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIHx8IGluZGljYXRpdmVDb25kaXRpb25hbFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCB0aGVvcmVtID0gVGhlb3JlbS5mcm9tTGFiZWxzVW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlQW5kSW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZShsYWJlbHMsIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSk7XG5cbiAgICAgIGZpbGVDb250ZXh0LmFkZFRoZW9yZW0odGhlb3JlbSk7XG5cbiAgICAgIHRoZW9yZW1WZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgaWYgKHRoZW9yZW1WZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHtsYWJlbHNTdHJpbmd9JyB0aGVvcmVtLmApO1xuICB9XG5cbiAgdGhlb3JlbVZlcmlmaWVkID9cbiAgICBmaWxlQ29udGV4dC5jb21wbGV0ZSh0aGVvcmVtTm9kZSkgOlxuICAgICAgZmlsZUNvbnRleHQuaGFsdCh0aGVvcmVtTm9kZSk7XG5cbiAgcmV0dXJuIHRoZW9yZW1WZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlUaGVvcmVtIiwibGFiZWxOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZVF1ZXJ5IiwidGhlb3JlbU5vZGUiLCJmaWxlQ29udGV4dCIsInRoZW9yZW1WZXJpZmllZCIsImJlZ2luIiwibGFiZWxOb2RlcyIsImxhYmVsc1N0cmluZyIsIm5vZGVzQXNTdHJpbmciLCJwcm9vZkNvbnRleHQiLCJQcm9vZkNvbnRleHQiLCJmcm9tRmlsZUNvbnRleHQiLCJkZWJ1ZyIsImxhYmVscyIsImxhYmVsc1ZlcmlmaWVkIiwidmVyaWZ5TGFiZWxzIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSIsInVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQiLCJpbmRpY2F0aXZlQ29uZGl0aW9uYWxWZXJpZmllZCIsInZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50IiwidmVyaWZ5SW5kaWNhdGl2ZUNvbmRpdGlvbmFsIiwidGhlb3JlbSIsIlRoZW9yZW0iLCJmcm9tTGFiZWxzVW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlQW5kSW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSIsImFkZFRoZW9yZW0iLCJpbmZvIiwiY29tcGxldGUiLCJoYWx0Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFlQTs7O2VBQXdCQTs7OzREQWJKOzJEQUNLOzBEQUNBO2dFQUNjOzBFQUNDO3NCQUVWO3FCQUNROzs7Ozs7QUFFdEMsSUFBTUMsa0JBQWtCQyxJQUFBQSxpQkFBVSxFQUFDLG1CQUM3QkMsZ0NBQWdDQyxJQUFBQSxnQkFBUyxFQUFDLG1DQUMxQ0MsaUNBQWlDRCxJQUFBQSxnQkFBUyxFQUFDO0FBRWxDLFNBQVNKLGNBQWNNLFdBQVcsRUFBRUMsV0FBVyxFQUFFO0lBQzlELElBQUlDLGtCQUFrQixLQUFLO0lBRTNCRCxZQUFZRSxLQUFLLENBQUNIO0lBRWxCLElBQU1JLGFBQWFULGdCQUFnQkssY0FDN0JLLGVBQWVDLElBQUFBLHFCQUFhLEVBQUNGLGFBQzdCRyxlQUFlQyxjQUFZLENBQUNDLGVBQWUsQ0FBQ1I7SUFFbERBLFlBQVlTLEtBQUssQ0FBQyxBQUFDLGtCQUE4QixPQUFiTCxjQUFhO0lBRWpELElBQU1NLFNBQVMsRUFBRSxFQUNmQyxpQkFBaUJDLElBQUFBLGVBQVksRUFBQ1QsWUFBWU8sUUFBUVY7SUFFcEQsSUFBSVcsZ0JBQWdCO1FBQ2xCLElBQU1FLDJCQUEyQmpCLDhCQUE4QkcsY0FDekRlLDRCQUE0QmhCLCtCQUErQkM7UUFFakUsSUFBSWdCLCtCQUErQixLQUFLLEVBQ3RDQyxnQ0FBZ0MsS0FBSztRQUV2QyxJQUFJSCw2QkFBNkIsSUFBSSxFQUFFO1lBQ3JDRSwrQkFBK0JFLElBQUFBLG9CQUEwQixFQUFDSiwwQkFBMEJQO1FBQ3RGLENBQUM7UUFFRCxJQUFJUSw4QkFBOEIsSUFBSSxFQUFFO1lBQ3RDRSxnQ0FBZ0NFLElBQUFBLDhCQUEyQixFQUFDSiwyQkFBMkJSO1FBQ3pGLENBQUM7UUFFRCxJQUFJUyxnQ0FBZ0NDLCtCQUErQjtZQUNqRSxJQUFNRyxVQUFVQyxnQkFBTyxDQUFDQyw4REFBOEQsQ0FBQ1gsUUFBUUcsMEJBQTBCQztZQUV6SGQsWUFBWXNCLFVBQVUsQ0FBQ0g7WUFFdkJsQixrQkFBa0IsSUFBSTtRQUN4QixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUlBLGlCQUFpQjtRQUNuQkQsWUFBWXVCLElBQUksQ0FBQyxBQUFDLGlCQUE2QixPQUFibkIsY0FBYTtJQUNqRCxDQUFDO0lBRURILGtCQUNFRCxZQUFZd0IsUUFBUSxDQUFDekIsZUFDbkJDLFlBQVl5QixJQUFJLENBQUMxQixZQUFZO0lBRWpDLE9BQU9FO0FBQ1QifQ==
@@ -19,11 +19,13 @@ function _interopRequireDefault(obj) {
19
19
  function verifyType(typeNode, superTypeNode, fileContext) {
20
20
  var typeVerified = false;
21
21
  fileContext.begin(typeNode);
22
- var type = null;
22
+ var typeString = (0, _string.nodeAsString)(typeNode);
23
+ fileContext.debug("Verifying the '".concat(typeString, "' type..."));
23
24
  var typeName = (0, _query.typeNameFromTypeNode)(typeNode), typePresent = fileContext.isTypePresentByTypeName(typeName);
24
25
  if (typePresent) {
25
26
  fileContext.error("The type '".concat(typeName, "' is already present."));
26
27
  } else {
28
+ var type;
27
29
  var superTypeName = (0, _query.typeNameFromTypeNode)(superTypeNode);
28
30
  if (superTypeName === null) {
29
31
  type = _type.default.fromTypeName(typeName);
@@ -35,17 +37,16 @@ function verifyType(typeNode, superTypeNode, fileContext) {
35
37
  type = _type.default.fromTypeNameAndSuperType(typeName, superType);
36
38
  }
37
39
  }
38
- }
39
- if (type !== null) {
40
- fileContext.addType(type);
41
- typeVerified = true;
40
+ if (type !== null) {
41
+ fileContext.addType(type);
42
+ typeVerified = true;
43
+ }
42
44
  }
43
45
  if (typeVerified) {
44
- var typeString = (0, _string.nodeAsString)(typeNode);
45
46
  fileContext.info("Verified the '".concat(typeString, "' type."));
46
47
  }
47
48
  typeVerified ? fileContext.complete(typeNode) : fileContext.halt(typeNode);
48
49
  return typeVerified;
49
50
  }
50
51
 
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdHlwZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFR5cGUgZnJvbSBcIi4uL3R5cGVcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlUeXBlKHR5cGVOb2RlLCBzdXBlclR5cGVOb2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgdHlwZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgZmlsZUNvbnRleHQuYmVnaW4odHlwZU5vZGUpO1xuXG4gIGxldCB0eXBlID0gbnVsbDtcblxuICBjb25zdCB0eXBlTmFtZSA9IHR5cGVOYW1lRnJvbVR5cGVOb2RlKHR5cGVOb2RlKSxcbiAgICAgICAgdHlwZVByZXNlbnQgPSBmaWxlQ29udGV4dC5pc1R5cGVQcmVzZW50QnlUeXBlTmFtZSh0eXBlTmFtZSk7XG5cbiAgaWYgKHR5cGVQcmVzZW50KSB7XG4gICAgZmlsZUNvbnRleHQuZXJyb3IoYFRoZSB0eXBlICcke3R5cGVOYW1lfScgaXMgYWxyZWFkeSBwcmVzZW50LmApO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHN1cGVyVHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZShzdXBlclR5cGVOb2RlKTtcblxuICAgIGlmIChzdXBlclR5cGVOYW1lID09PSBudWxsKSB7XG4gICAgICB0eXBlID0gVHlwZS5mcm9tVHlwZU5hbWUodHlwZU5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzdXBlclR5cGUgPSBmaWxlQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUoc3VwZXJUeXBlTmFtZSk7XG5cbiAgICAgIGlmIChzdXBlclR5cGUgPT09IG51bGwpIHtcbiAgICAgICAgZmlsZUNvbnRleHQuZXJyb3IoYFRoZSBzdXBlci10eXBlICcke3N1cGVyVHlwZU5hbWV9JyBpcyBtaXNzaW5nLmApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHlwZSA9IFR5cGUuZnJvbVR5cGVOYW1lQW5kU3VwZXJUeXBlKHR5cGVOYW1lLCBzdXBlclR5cGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmICh0eXBlICE9PSBudWxsKSB7XG4gICAgZmlsZUNvbnRleHQuYWRkVHlwZSh0eXBlKTtcblxuICAgIHR5cGVWZXJpZmllZCA9IHRydWU7XG4gIH1cblxuICBpZiAodHlwZVZlcmlmaWVkKSB7XG4gICAgY29uc3QgdHlwZVN0cmluZyA9IG5vZGVBc1N0cmluZyh0eXBlTm9kZSk7XG5cbiAgICBmaWxlQ29udGV4dC5pbmZvKGBWZXJpZmllZCB0aGUgJyR7dHlwZVN0cmluZ30nIHR5cGUuYCk7XG4gIH1cblxuICB0eXBlVmVyaWZpZWQgP1xuICAgIGZpbGVDb250ZXh0LmNvbXBsZXRlKHR5cGVOb2RlKTpcbiAgICAgIGZpbGVDb250ZXh0LmhhbHQodHlwZU5vZGUpO1xuXG4gIHJldHVybiB0eXBlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VHlwZSIsInR5cGVOb2RlIiwic3VwZXJUeXBlTm9kZSIsImZpbGVDb250ZXh0IiwidHlwZVZlcmlmaWVkIiwiYmVnaW4iLCJ0eXBlIiwidHlwZU5hbWUiLCJ0eXBlTmFtZUZyb21UeXBlTm9kZSIsInR5cGVQcmVzZW50IiwiaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUiLCJlcnJvciIsInN1cGVyVHlwZU5hbWUiLCJUeXBlIiwiZnJvbVR5cGVOYW1lIiwic3VwZXJUeXBlIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwiZnJvbVR5cGVOYW1lQW5kU3VwZXJUeXBlIiwiYWRkVHlwZSIsInR5cGVTdHJpbmciLCJub2RlQXNTdHJpbmciLCJpbmZvIiwiY29tcGxldGUiLCJoYWx0Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFPQTs7O2VBQXdCQTs7O3lEQUxQO3NCQUVZO3FCQUNROzs7Ozs7QUFFdEIsU0FBU0EsV0FBV0MsUUFBUSxFQUFFQyxhQUFhLEVBQUVDLFdBQVcsRUFBRTtJQUN2RSxJQUFJQyxlQUFlLEtBQUs7SUFFeEJELFlBQVlFLEtBQUssQ0FBQ0o7SUFFbEIsSUFBSUssT0FBTyxJQUFJO0lBRWYsSUFBTUMsV0FBV0MsSUFBQUEsMkJBQW9CLEVBQUNQLFdBQ2hDUSxjQUFjTixZQUFZTyx1QkFBdUIsQ0FBQ0g7SUFFeEQsSUFBSUUsYUFBYTtRQUNmTixZQUFZUSxLQUFLLENBQUMsQUFBQyxhQUFxQixPQUFUSixVQUFTO0lBQzFDLE9BQU87UUFDTCxJQUFNSyxnQkFBZ0JKLElBQUFBLDJCQUFvQixFQUFDTjtRQUUzQyxJQUFJVSxrQkFBa0IsSUFBSSxFQUFFO1lBQzFCTixPQUFPTyxhQUFJLENBQUNDLFlBQVksQ0FBQ1A7UUFDM0IsT0FBTztZQUNMLElBQU1RLFlBQVlaLFlBQVlhLGtCQUFrQixDQUFDSjtZQUVqRCxJQUFJRyxjQUFjLElBQUksRUFBRTtnQkFDdEJaLFlBQVlRLEtBQUssQ0FBQyxBQUFDLG1CQUFnQyxPQUFkQyxlQUFjO1lBQ3JELE9BQU87Z0JBQ0xOLE9BQU9PLGFBQUksQ0FBQ0ksd0JBQXdCLENBQUNWLFVBQVVRO1lBQ2pELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUlULFNBQVMsSUFBSSxFQUFFO1FBQ2pCSCxZQUFZZSxPQUFPLENBQUNaO1FBRXBCRixlQUFlLElBQUk7SUFDckIsQ0FBQztJQUVELElBQUlBLGNBQWM7UUFDaEIsSUFBTWUsYUFBYUMsSUFBQUEsb0JBQVksRUFBQ25CO1FBRWhDRSxZQUFZa0IsSUFBSSxDQUFDLEFBQUMsaUJBQTJCLE9BQVhGLFlBQVc7SUFDL0MsQ0FBQztJQUVEZixlQUNFRCxZQUFZbUIsUUFBUSxDQUFDckIsWUFDbkJFLFlBQVlvQixJQUFJLENBQUN0QixTQUFTO0lBRTlCLE9BQU9HO0FBQ1QifQ==
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdHlwZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFR5cGUgZnJvbSBcIi4uL3R5cGVcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IHR5cGVOYW1lRnJvbVR5cGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlUeXBlKHR5cGVOb2RlLCBzdXBlclR5cGVOb2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgdHlwZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgZmlsZUNvbnRleHQuYmVnaW4odHlwZU5vZGUpO1xuXG4gIGNvbnN0IHR5cGVTdHJpbmcgPSBub2RlQXNTdHJpbmcodHlwZU5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke3R5cGVTdHJpbmd9JyB0eXBlLi4uYCk7XG5cbiAgY29uc3QgdHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZSh0eXBlTm9kZSksXG4gICAgICAgIHR5cGVQcmVzZW50ID0gZmlsZUNvbnRleHQuaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gIGlmICh0eXBlUHJlc2VudCkge1xuICAgIGZpbGVDb250ZXh0LmVycm9yKGBUaGUgdHlwZSAnJHt0eXBlTmFtZX0nIGlzIGFscmVhZHkgcHJlc2VudC5gKTtcbiAgfSBlbHNlIHtcbiAgICBsZXQgdHlwZTtcblxuICAgIGNvbnN0IHN1cGVyVHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZShzdXBlclR5cGVOb2RlKTtcblxuICAgIGlmIChzdXBlclR5cGVOYW1lID09PSBudWxsKSB7XG4gICAgICB0eXBlID0gVHlwZS5mcm9tVHlwZU5hbWUodHlwZU5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzdXBlclR5cGUgPSBmaWxlQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUoc3VwZXJUeXBlTmFtZSk7XG5cbiAgICAgIGlmIChzdXBlclR5cGUgPT09IG51bGwpIHtcbiAgICAgICAgZmlsZUNvbnRleHQuZXJyb3IoYFRoZSBzdXBlci10eXBlICcke3N1cGVyVHlwZU5hbWV9JyBpcyBtaXNzaW5nLmApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHlwZSA9IFR5cGUuZnJvbVR5cGVOYW1lQW5kU3VwZXJUeXBlKHR5cGVOYW1lLCBzdXBlclR5cGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0eXBlICE9PSBudWxsKSB7XG4gICAgICBmaWxlQ29udGV4dC5hZGRUeXBlKHR5cGUpO1xuXG4gICAgICB0eXBlVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGlmICh0eXBlVmVyaWZpZWQpIHtcbiAgICBmaWxlQ29udGV4dC5pbmZvKGBWZXJpZmllZCB0aGUgJyR7dHlwZVN0cmluZ30nIHR5cGUuYCk7XG4gIH1cblxuICB0eXBlVmVyaWZpZWQgP1xuICAgIGZpbGVDb250ZXh0LmNvbXBsZXRlKHR5cGVOb2RlKTpcbiAgICAgIGZpbGVDb250ZXh0LmhhbHQodHlwZU5vZGUpO1xuXG4gIHJldHVybiB0eXBlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VHlwZSIsInR5cGVOb2RlIiwic3VwZXJUeXBlTm9kZSIsImZpbGVDb250ZXh0IiwidHlwZVZlcmlmaWVkIiwiYmVnaW4iLCJ0eXBlU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiZGVidWciLCJ0eXBlTmFtZSIsInR5cGVOYW1lRnJvbVR5cGVOb2RlIiwidHlwZVByZXNlbnQiLCJpc1R5cGVQcmVzZW50QnlUeXBlTmFtZSIsImVycm9yIiwidHlwZSIsInN1cGVyVHlwZU5hbWUiLCJUeXBlIiwiZnJvbVR5cGVOYW1lIiwic3VwZXJUeXBlIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwiZnJvbVR5cGVOYW1lQW5kU3VwZXJUeXBlIiwiYWRkVHlwZSIsImluZm8iLCJjb21wbGV0ZSIsImhhbHQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU9BOzs7ZUFBd0JBOzs7eURBTFA7c0JBRVk7cUJBQ1E7Ozs7OztBQUV0QixTQUFTQSxXQUFXQyxRQUFRLEVBQUVDLGFBQWEsRUFBRUMsV0FBVyxFQUFFO0lBQ3ZFLElBQUlDLGVBQWUsS0FBSztJQUV4QkQsWUFBWUUsS0FBSyxDQUFDSjtJQUVsQixJQUFNSyxhQUFhQyxJQUFBQSxvQkFBWSxFQUFDTjtJQUVoQ0UsWUFBWUssS0FBSyxDQUFDLEFBQUMsa0JBQTRCLE9BQVhGLFlBQVc7SUFFL0MsSUFBTUcsV0FBV0MsSUFBQUEsMkJBQW9CLEVBQUNULFdBQ2hDVSxjQUFjUixZQUFZUyx1QkFBdUIsQ0FBQ0g7SUFFeEQsSUFBSUUsYUFBYTtRQUNmUixZQUFZVSxLQUFLLENBQUMsQUFBQyxhQUFxQixPQUFUSixVQUFTO0lBQzFDLE9BQU87UUFDTCxJQUFJSztRQUVKLElBQU1DLGdCQUFnQkwsSUFBQUEsMkJBQW9CLEVBQUNSO1FBRTNDLElBQUlhLGtCQUFrQixJQUFJLEVBQUU7WUFDMUJELE9BQU9FLGFBQUksQ0FBQ0MsWUFBWSxDQUFDUjtRQUMzQixPQUFPO1lBQ0wsSUFBTVMsWUFBWWYsWUFBWWdCLGtCQUFrQixDQUFDSjtZQUVqRCxJQUFJRyxjQUFjLElBQUksRUFBRTtnQkFDdEJmLFlBQVlVLEtBQUssQ0FBQyxBQUFDLG1CQUFnQyxPQUFkRSxlQUFjO1lBQ3JELE9BQU87Z0JBQ0xELE9BQU9FLGFBQUksQ0FBQ0ksd0JBQXdCLENBQUNYLFVBQVVTO1lBQ2pELENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSUosU0FBUyxJQUFJLEVBQUU7WUFDakJYLFlBQVlrQixPQUFPLENBQUNQO1lBRXBCVixlQUFlLElBQUk7UUFDckIsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJQSxjQUFjO1FBQ2hCRCxZQUFZbUIsSUFBSSxDQUFDLEFBQUMsaUJBQTJCLE9BQVhoQixZQUFXO0lBQy9DLENBQUM7SUFFREYsZUFDRUQsWUFBWW9CLFFBQVEsQ0FBQ3RCLFlBQ25CRSxZQUFZcUIsSUFBSSxDQUFDdkIsU0FBUztJQUU5QixPQUFPRztBQUNUIn0=
@@ -19,11 +19,13 @@ function _interopRequireDefault(obj) {
19
19
  function verifyVariable(variableNode, typeNode, fileContext) {
20
20
  var variableVerified = false;
21
21
  fileContext.begin(variableNode);
22
- var variable = null;
22
+ var variableString = (0, _string.nodeAsString)(variableNode);
23
+ fileContext.debug("Verifying the '".concat(variableString, "' variable..."));
23
24
  var variableName = (0, _query.variableNameFromVariableNode)(variableNode), variablePresent = fileContext.isVariablePresentByVariableName(variableName);
24
25
  if (variablePresent) {
25
26
  fileContext.error("The variable '".concat(variableName, "' is already present."));
26
27
  } else {
28
+ var variable;
27
29
  var typeName = (0, _query.typeNameFromTypeNode)(typeNode);
28
30
  if (typeName === null) {
29
31
  var type = null, name = variableName; ///
@@ -43,11 +45,10 @@ function verifyVariable(variableNode, typeNode, fileContext) {
43
45
  }
44
46
  }
45
47
  if (variableVerified) {
46
- var variableString = (0, _string.nodeAsString)(variableNode);
47
48
  fileContext.info("Verified the '".concat(variableString, "' variable."));
48
49
  }
49
50
  variableVerified ? fileContext.complete(variableNode) : fileContext.halt(variableNode);
50
51
  return variableVerified;
51
52
  }
52
53
 
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdmFyaWFibGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBWYXJpYWJsZSBmcm9tIFwiLi4vdmFyaWFibGVcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IHR5cGVOYW1lRnJvbVR5cGVOb2RlLCB2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlWYXJpYWJsZSh2YXJpYWJsZU5vZGUsIHR5cGVOb2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgdmFyaWFibGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGZpbGVDb250ZXh0LmJlZ2luKHZhcmlhYmxlTm9kZSk7XG5cbiAgbGV0IHZhcmlhYmxlID0gbnVsbDtcblxuICBjb25zdCB2YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSksXG4gICAgICAgIHZhcmlhYmxlUHJlc2VudCA9IGZpbGVDb250ZXh0LmlzVmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5hbWUodmFyaWFibGVOYW1lKTtcblxuICBpZiAodmFyaWFibGVQcmVzZW50KSB7XG4gICAgZmlsZUNvbnRleHQuZXJyb3IoYFRoZSB2YXJpYWJsZSAnJHt2YXJpYWJsZU5hbWV9JyBpcyBhbHJlYWR5IHByZXNlbnQuYCk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdHlwZU5hbWUgPSB0eXBlTmFtZUZyb21UeXBlTm9kZSh0eXBlTm9kZSk7XG4gICAgXG4gICAgaWYgKHR5cGVOYW1lID09PSBudWxsKSB7XG4gICAgICBjb25zdCB0eXBlID0gbnVsbCxcbiAgICAgICAgICAgIG5hbWUgPSB2YXJpYWJsZU5hbWU7ICAvLy9cblxuICAgICAgdmFyaWFibGUgPSBWYXJpYWJsZS5mcm9tVHlwZUFuZE5hbWUodHlwZSwgbmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBmaWxlQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gICAgICBpZiAodHlwZSA9PT0gbnVsbCkge1xuICAgICAgICBmaWxlQ29udGV4dC5lcnJvcihgVGhlICcke3ZhcmlhYmxlTmFtZX0nIHZhcmlhYmxlJ3MgJyR7dHlwZU5hbWV9JyB0eXBlIGlzIG1pc3NpbmcuYCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBuYW1lID0gdmFyaWFibGVOYW1lOyAgLy8vXG5cbiAgICAgICAgdmFyaWFibGUgPSBWYXJpYWJsZS5mcm9tVHlwZUFuZE5hbWUodHlwZSwgbmFtZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICBmaWxlQ29udGV4dC5hZGRWYXJpYWJsZSh2YXJpYWJsZSk7XG5cbiAgICAgIHZhcmlhYmxlVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGlmICh2YXJpYWJsZVZlcmlmaWVkKSB7XG4gICAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSBub2RlQXNTdHJpbmcodmFyaWFibGVOb2RlKTtcblxuICAgIGZpbGVDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLmApO1xuICB9XG5cbiAgdmFyaWFibGVWZXJpZmllZCA/XG4gICAgZmlsZUNvbnRleHQuY29tcGxldGUodmFyaWFibGVOb2RlKSA6XG4gICAgICBmaWxlQ29udGV4dC5oYWx0KHZhcmlhYmxlTm9kZSk7XG5cbiAgcmV0dXJuIHZhcmlhYmxlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VmFyaWFibGUiLCJ2YXJpYWJsZU5vZGUiLCJ0eXBlTm9kZSIsImZpbGVDb250ZXh0IiwidmFyaWFibGVWZXJpZmllZCIsImJlZ2luIiwidmFyaWFibGUiLCJ2YXJpYWJsZU5hbWUiLCJ2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlIiwidmFyaWFibGVQcmVzZW50IiwiaXNWYXJpYWJsZVByZXNlbnRCeVZhcmlhYmxlTmFtZSIsImVycm9yIiwidHlwZU5hbWUiLCJ0eXBlTmFtZUZyb21UeXBlTm9kZSIsInR5cGUiLCJuYW1lIiwiVmFyaWFibGUiLCJmcm9tVHlwZUFuZE5hbWUiLCJmaW5kVHlwZUJ5VHlwZU5hbWUiLCJhZGRWYXJpYWJsZSIsInZhcmlhYmxlU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiaW5mbyIsImNvbXBsZXRlIiwiaGFsdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUF3QkE7Ozs2REFMSDtzQkFFUTtxQkFDc0M7Ozs7OztBQUVwRCxTQUFTQSxlQUFlQyxZQUFZLEVBQUVDLFFBQVEsRUFBRUMsV0FBVyxFQUFFO0lBQzFFLElBQUlDLG1CQUFtQixLQUFLO0lBRTVCRCxZQUFZRSxLQUFLLENBQUNKO0lBRWxCLElBQUlLLFdBQVcsSUFBSTtJQUVuQixJQUFNQyxlQUFlQyxJQUFBQSxtQ0FBNEIsRUFBQ1AsZUFDNUNRLGtCQUFrQk4sWUFBWU8sK0JBQStCLENBQUNIO0lBRXBFLElBQUlFLGlCQUFpQjtRQUNuQk4sWUFBWVEsS0FBSyxDQUFDLEFBQUMsaUJBQTZCLE9BQWJKLGNBQWE7SUFDbEQsT0FBTztRQUNMLElBQU1LLFdBQVdDLElBQUFBLDJCQUFvQixFQUFDWDtRQUV0QyxJQUFJVSxhQUFhLElBQUksRUFBRTtZQUNyQixJQUFNRSxPQUFPLElBQUksRUFDWEMsT0FBT1IsY0FBZSxHQUFHO1lBRS9CRCxXQUFXVSxpQkFBUSxDQUFDQyxlQUFlLENBQUNILE1BQU1DO1FBQzVDLE9BQU87WUFDTCxJQUFNRCxRQUFPWCxZQUFZZSxrQkFBa0IsQ0FBQ047WUFFNUMsSUFBSUUsVUFBUyxJQUFJLEVBQUU7Z0JBQ2pCWCxZQUFZUSxLQUFLLENBQUMsQUFBQyxRQUFvQ0MsT0FBN0JMLGNBQWEsa0JBQXlCLE9BQVRLLFVBQVM7WUFDbEUsT0FBTztnQkFDTCxJQUFNRyxRQUFPUixjQUFlLEdBQUc7Z0JBRS9CRCxXQUFXVSxpQkFBUSxDQUFDQyxlQUFlLENBQUNILE9BQU1DO1lBQzVDLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSVQsYUFBYSxJQUFJLEVBQUU7WUFDckJILFlBQVlnQixXQUFXLENBQUNiO1lBRXhCRixtQkFBbUIsSUFBSTtRQUN6QixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUlBLGtCQUFrQjtRQUNwQixJQUFNZ0IsaUJBQWlCQyxJQUFBQSxvQkFBWSxFQUFDcEI7UUFFcENFLFlBQVltQixJQUFJLENBQUMsQUFBQyxpQkFBK0IsT0FBZkYsZ0JBQWU7SUFDbkQsQ0FBQztJQUVEaEIsbUJBQ0VELFlBQVlvQixRQUFRLENBQUN0QixnQkFDbkJFLFlBQVlxQixJQUFJLENBQUN2QixhQUFhO0lBRWxDLE9BQU9HO0FBQ1QifQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdmFyaWFibGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBWYXJpYWJsZSBmcm9tIFwiLi4vdmFyaWFibGVcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IHR5cGVOYW1lRnJvbVR5cGVOb2RlLCB2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlWYXJpYWJsZSh2YXJpYWJsZU5vZGUsIHR5cGVOb2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgdmFyaWFibGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGZpbGVDb250ZXh0LmJlZ2luKHZhcmlhYmxlTm9kZSk7XG5cbiAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSBub2RlQXNTdHJpbmcodmFyaWFibGVOb2RlKTtcblxuICBmaWxlQ29udGV4dC5kZWJ1ZyhgVmVyaWZ5aW5nIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLi4uYCk7XG5cbiAgY29uc3QgdmFyaWFibGVOYW1lID0gdmFyaWFibGVOYW1lRnJvbVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpLFxuICAgICAgICB2YXJpYWJsZVByZXNlbnQgPSBmaWxlQ29udGV4dC5pc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSk7XG5cbiAgaWYgKHZhcmlhYmxlUHJlc2VudCkge1xuICAgIGZpbGVDb250ZXh0LmVycm9yKGBUaGUgdmFyaWFibGUgJyR7dmFyaWFibGVOYW1lfScgaXMgYWxyZWFkeSBwcmVzZW50LmApO1xuICB9IGVsc2Uge1xuICAgIGxldCB2YXJpYWJsZTtcblxuICAgIGNvbnN0IHR5cGVOYW1lID0gdHlwZU5hbWVGcm9tVHlwZU5vZGUodHlwZU5vZGUpO1xuICAgIFxuICAgIGlmICh0eXBlTmFtZSA9PT0gbnVsbCkge1xuICAgICAgY29uc3QgdHlwZSA9IG51bGwsXG4gICAgICAgICAgICBuYW1lID0gdmFyaWFibGVOYW1lOyAgLy8vXG5cbiAgICAgIHZhcmlhYmxlID0gVmFyaWFibGUuZnJvbVR5cGVBbmROYW1lKHR5cGUsIG5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0eXBlID0gZmlsZUNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKTtcblxuICAgICAgaWYgKHR5cGUgPT09IG51bGwpIHtcbiAgICAgICAgZmlsZUNvbnRleHQuZXJyb3IoYFRoZSAnJHt2YXJpYWJsZU5hbWV9JyB2YXJpYWJsZSdzICcke3R5cGVOYW1lfScgdHlwZSBpcyBtaXNzaW5nLmApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbmFtZSA9IHZhcmlhYmxlTmFtZTsgIC8vL1xuXG4gICAgICAgIHZhcmlhYmxlID0gVmFyaWFibGUuZnJvbVR5cGVBbmROYW1lKHR5cGUsIG5hbWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgZmlsZUNvbnRleHQuYWRkVmFyaWFibGUodmFyaWFibGUpO1xuXG4gICAgICB2YXJpYWJsZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBpZiAodmFyaWFibGVWZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLmApO1xuICB9XG5cbiAgdmFyaWFibGVWZXJpZmllZCA/XG4gICAgZmlsZUNvbnRleHQuY29tcGxldGUodmFyaWFibGVOb2RlKSA6XG4gICAgICBmaWxlQ29udGV4dC5oYWx0KHZhcmlhYmxlTm9kZSk7XG5cbiAgcmV0dXJuIHZhcmlhYmxlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VmFyaWFibGUiLCJ2YXJpYWJsZU5vZGUiLCJ0eXBlTm9kZSIsImZpbGVDb250ZXh0IiwidmFyaWFibGVWZXJpZmllZCIsImJlZ2luIiwidmFyaWFibGVTdHJpbmciLCJub2RlQXNTdHJpbmciLCJkZWJ1ZyIsInZhcmlhYmxlTmFtZSIsInZhcmlhYmxlTmFtZUZyb21WYXJpYWJsZU5vZGUiLCJ2YXJpYWJsZVByZXNlbnQiLCJpc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOYW1lIiwiZXJyb3IiLCJ2YXJpYWJsZSIsInR5cGVOYW1lIiwidHlwZU5hbWVGcm9tVHlwZU5vZGUiLCJ0eXBlIiwibmFtZSIsIlZhcmlhYmxlIiwiZnJvbVR5cGVBbmROYW1lIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwiYWRkVmFyaWFibGUiLCJpbmZvIiwiY29tcGxldGUiLCJoYWx0Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFPQTs7O2VBQXdCQTs7OzZEQUxIO3NCQUVRO3FCQUNzQzs7Ozs7O0FBRXBELFNBQVNBLGVBQWVDLFlBQVksRUFBRUMsUUFBUSxFQUFFQyxXQUFXLEVBQUU7SUFDMUUsSUFBSUMsbUJBQW1CLEtBQUs7SUFFNUJELFlBQVlFLEtBQUssQ0FBQ0o7SUFFbEIsSUFBTUssaUJBQWlCQyxJQUFBQSxvQkFBWSxFQUFDTjtJQUVwQ0UsWUFBWUssS0FBSyxDQUFDLEFBQUMsa0JBQWdDLE9BQWZGLGdCQUFlO0lBRW5ELElBQU1HLGVBQWVDLElBQUFBLG1DQUE0QixFQUFDVCxlQUM1Q1Usa0JBQWtCUixZQUFZUywrQkFBK0IsQ0FBQ0g7SUFFcEUsSUFBSUUsaUJBQWlCO1FBQ25CUixZQUFZVSxLQUFLLENBQUMsQUFBQyxpQkFBNkIsT0FBYkosY0FBYTtJQUNsRCxPQUFPO1FBQ0wsSUFBSUs7UUFFSixJQUFNQyxXQUFXQyxJQUFBQSwyQkFBb0IsRUFBQ2Q7UUFFdEMsSUFBSWEsYUFBYSxJQUFJLEVBQUU7WUFDckIsSUFBTUUsT0FBTyxJQUFJLEVBQ1hDLE9BQU9ULGNBQWUsR0FBRztZQUUvQkssV0FBV0ssaUJBQVEsQ0FBQ0MsZUFBZSxDQUFDSCxNQUFNQztRQUM1QyxPQUFPO1lBQ0wsSUFBTUQsUUFBT2QsWUFBWWtCLGtCQUFrQixDQUFDTjtZQUU1QyxJQUFJRSxVQUFTLElBQUksRUFBRTtnQkFDakJkLFlBQVlVLEtBQUssQ0FBQyxBQUFDLFFBQW9DRSxPQUE3Qk4sY0FBYSxrQkFBeUIsT0FBVE0sVUFBUztZQUNsRSxPQUFPO2dCQUNMLElBQU1HLFFBQU9ULGNBQWUsR0FBRztnQkFFL0JLLFdBQVdLLGlCQUFRLENBQUNDLGVBQWUsQ0FBQ0gsT0FBTUM7WUFDNUMsQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJSixhQUFhLElBQUksRUFBRTtZQUNyQlgsWUFBWW1CLFdBQVcsQ0FBQ1I7WUFFeEJWLG1CQUFtQixJQUFJO1FBQ3pCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSUEsa0JBQWtCO1FBQ3BCRCxZQUFZb0IsSUFBSSxDQUFDLEFBQUMsaUJBQStCLE9BQWZqQixnQkFBZTtJQUNuRCxDQUFDO0lBRURGLG1CQUNFRCxZQUFZcUIsUUFBUSxDQUFDdkIsZ0JBQ25CRSxZQUFZc0IsSUFBSSxDQUFDeEIsYUFBYTtJQUVsQyxPQUFPRztBQUNUIn0=
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.455",
4
+ "version": "0.0.456",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-verify-cli",
7
7
  "description": "Occam's Verifier",
package/src/axiom.js CHANGED
@@ -5,30 +5,25 @@ import Label from "./label";
5
5
  import { AXIOM_KIND } from "./kinds";
6
6
  import { nodeAsString } from "./utilities/string";
7
7
 
8
- import { statementNodeFromStatementJSON } from "./utilities/node";
8
+ import { unqualifiedStatementNodeFromUnqualifiedStatementString, indicativeConditionalNodeFromIndicativeConditionalString } from "./utilities/string";
9
9
 
10
10
  export default class Axiom {
11
- constructor(labels, statementNode, suppositionStatementNodes, consequentStatementNode) {
11
+ constructor(labels, unqualifiedStatementNode, indicativeConditionalNode) {
12
12
  this.labels = labels;
13
- this.statementNode = statementNode;
14
- this.suppositionStatementNodes = suppositionStatementNodes;
15
- this.consequentStatementNode = consequentStatementNode;
13
+ this.unqualifiedStatementNode = unqualifiedStatementNode;
14
+ this.indicativeConditionalNode = indicativeConditionalNode;
16
15
  }
17
16
 
18
17
  getLabels() {
19
18
  return this.labels;
20
19
  }
21
20
 
22
- getStatementNode() {
23
- return this.statementNode;
21
+ getUnqualifiedStatementNode() {
22
+ return this.unqualifiedStatementNode;
24
23
  }
25
24
 
26
- getSuppositionStatementNodes() {
27
- return this.suppositionStatementNodes;
28
- }
29
-
30
- getConsequentStatementNode() {
31
- return this.consequentStatementNode;
25
+ getIndicativeConditionalNode() {
26
+ return this.indicativeConditionalNode;
32
27
  }
33
28
 
34
29
  matchLabelName(labelName) {
@@ -50,24 +45,17 @@ export default class Axiom {
50
45
 
51
46
  return labelJSON;
52
47
  }),
53
- statementString = nodeAsString(this.statementNode),
54
- consequentStatementString = nodeAsString(this.consequentStatementNode),
55
- suppositionStatementStrings = this.suppositionStatementNodes.map((suppositionStatementNode) => {
56
- const suppositionStatementString = nodeAsString(suppositionStatementNode);
57
-
58
- return suppositionStatementString;
59
- }),
48
+ unqualifiedStatementString = nodeAsString(this.unqalifiedStatementNode),
49
+ indicativeConditionalString = nodeAsString(this.indicativeConditionalNode),
60
50
  kind = AXIOM_KIND,
61
51
  labels = labelsJSON, ///
62
- statement = statementString, ///
63
- consequent = consequentStatementString, ///
64
- suppositions = suppositionStatementStrings, ///
52
+ unqualifiedStatement = unqualifiedStatementString, ///
53
+ indicativeConditional = indicativeConditionalString, ///
65
54
  json = {
66
55
  kind,
67
56
  labels,
68
- statement,
69
- consequent,
70
- suppositions
57
+ unqualifiedStatement,
58
+ indicativeConditional
71
59
  };
72
60
 
73
61
  return json;
@@ -85,45 +73,30 @@ export default class Axiom {
85
73
  return label;
86
74
  });
87
75
 
88
- const { statement, suppositions, consequent } = json;
76
+ let { unqualifiedStatement, indicativeConditional } = json;
89
77
 
90
- let axiom;
78
+ let unqualifiedStatementNode = null,
79
+ indicativeConditionalNode = null;
91
80
 
92
- if (statement !== null) {
93
- const statementJSON = statement, ///
94
- statementNode = statementNodeFromStatementJSON(statementJSON, releaseContext),
95
- suppositionStatementNodes = null,
96
- consequentStatementNode = null;
81
+ if (unqualifiedStatement !== null) {
82
+ const unqualifiedStatementString = unqualifiedStatement; ///
97
83
 
98
- axiom = new Axiom(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
99
- } else {
100
- const statementNode = null,
101
- suppositionStatementsJSON = suppositions, ///
102
- suppositionStatementNodes = suppositionStatementsJSON.map((suppositionStatementJSON) => {
103
- const suppositionStatementNode = statementNodeFromStatementJSON(suppositionStatementJSON, releaseContext);
84
+ unqualifiedStatementNode = unqualifiedStatementNodeFromUnqualifiedStatementString(unqualifiedStatementString, releaseContext);
85
+ }
104
86
 
105
- return suppositionStatementNode;
106
- }),
107
- consequentStatementJSON = consequent, ///
108
- consequentStatementNode = statementNodeFromStatementJSON(consequentStatementJSON, releaseContext);
87
+ if (indicativeConditional !== null) {
88
+ const indicativeConditionalString = indicativeConditional; ///
109
89
 
110
- axiom = new Axiom(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
90
+ indicativeConditionalNode = indicativeConditionalNodeFromIndicativeConditionalString(indicativeConditionalString, releaseContext);
111
91
  }
112
92
 
113
- return axiom;
114
- }
115
-
116
- static fromLabelsAndStatementNode(labels, statementNode) {
117
- const suppositionStatementNodes = [],
118
- consequentStatementNode = null,
119
- axiom = new Axiom(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
93
+ const axiom = new Axiom(labels, unqualifiedStatementNode, indicativeConditionalNode);
120
94
 
121
95
  return axiom;
122
96
  }
123
97
 
124
- static fromLabelsSuppositionStatementNodesAndConsequentStatementNode(labels, suppositionStatementNodes, consequentStatementNode) {
125
- const statementNode = null,
126
- axiom = new Axiom(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
98
+ static fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode(labels, unqualifiedStatementNode, indicativeConditionalNode) {
99
+ const axiom = new Axiom(labels, unqualifiedStatementNode, indicativeConditionalNode);
127
100
 
128
101
  return axiom;
129
102
  }
package/src/combinator.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { nodeAsString } from "./utilities/string";
4
4
  import { COMBINATOR_KIND } from "./kinds";
5
- import { statementNodeFromStatementJSON } from "./utilities/node";
5
+ import { statementNodeFromStatementString } from "./utilities/string";
6
6
 
7
7
  export default class Combinator {
8
8
  constructor(statementNode) {
@@ -33,8 +33,8 @@ export default class Combinator {
33
33
 
34
34
  static fromJSON(json, releaseContext) {
35
35
  const { statement } = json,
36
- statementJSON = statement, ///
37
- statementNode = statementNodeFromStatementJSON(statementJSON, releaseContext),
36
+ statementString = statement, ///
37
+ statementNode = statementNodeFromStatementString(statementString, releaseContext),
38
38
  combinator = new Combinator(statementNode);
39
39
 
40
40
  return combinator;
package/src/conclusion.js CHANGED
@@ -3,7 +3,7 @@
3
3
  import { first } from "./utilities/array";
4
4
  import { nodeAsString } from "./utilities/string";
5
5
  import { metavariableNameFromMetavariableNode } from "./utilities/query";
6
- import { metastatementNodeFromMetastatementJSON } from "./utilities/node";
6
+ import { metastatementNodeFromMetastatementString } from "./utilities/string";
7
7
  import { METAVARIABLE_RULE_NAME, METASTATEMENT_RULE_NAME } from "./ruleNames";
8
8
 
9
9
  export default class Conclusion {
@@ -36,8 +36,8 @@ export default class Conclusion {
36
36
 
37
37
  static fromJSON(json, releaseContext) {
38
38
  const { metastatement } = json,
39
- metastatementJSON = metastatement, ///
40
- metastatementNode = metastatementNodeFromMetastatementJSON(metastatementJSON, releaseContext),
39
+ metastatementString = metastatement, ///
40
+ metastatementNode = metastatementNodeFromMetastatementString(metastatementString, releaseContext),
41
41
  conclusion = new Conclusion(metastatementNode);
42
42
 
43
43
  return conclusion;
@@ -4,7 +4,7 @@ import Type from "./type";
4
4
 
5
5
  import { nodeAsString } from "./utilities/string";
6
6
  import { CONSTRUCTOR_KIND } from "./kinds";
7
- import { termNodeFromTermJSON } from "./utilities/node";
7
+ import { termNodeFromTermString } from "./utilities/string";
8
8
 
9
9
  export default class Constructor {
10
10
  constructor(termNode, type) {
@@ -56,8 +56,8 @@ export default class Constructor {
56
56
 
57
57
  static fromJSON(json, releaseContext) {
58
58
  const { term } = json,
59
- termJSON = term, ///
60
- termNode = termNodeFromTermJSON(termJSON, releaseContext);
59
+ termString = term, ///
60
+ termNode = termNodeFromTermString(termString, releaseContext);
61
61
 
62
62
  let { type } = json;
63
63
 
package/src/label.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  import { nodeAsString } from "./utilities/string";
4
- import { labelNodeFromLabelJSON } from "./utilities/node";
5
4
  import { labelNameFromLabelNode } from "./utilities/query";
5
+ import { labelNodeFromLabelString } from "./utilities/string";
6
6
 
7
7
  export default class Label {
8
8
  constructor(node) {
@@ -35,8 +35,8 @@ export default class Label {
35
35
  }
36
36
 
37
37
  static fromJSON(json, releaseContext) {
38
- const labelJSON = json, ///
39
- labelNode = labelNodeFromLabelJSON(labelJSON, releaseContext),
38
+ const labelString = json, ///
39
+ labelNode = labelNodeFromLabelString(labelString, releaseContext),
40
40
  node = labelNode, ///
41
41
  label = new Label(node);
42
42
 
package/src/lemma.js CHANGED
@@ -5,36 +5,31 @@ import Label from "./label";
5
5
  import { LEMMA_KIND } from "./kinds";
6
6
  import { nodeAsString } from "./utilities/string";
7
7
 
8
- import { statementNodeFromStatementJSON } from "./utilities/node";
8
+ import { unqualifiedStatementNodeFromUnqualifiedStatementString, indicativeConditionalNodeFromIndicativeConditionalString } from "./utilities/string";
9
9
 
10
10
  export default class Lemma {
11
- constructor(labels, statementNode, suppositionStatementNodes, consequentStatementNode) {
11
+ constructor(labels, unqualifiedStatementNode, indicativeConditionalNode) {
12
12
  this.labels = labels;
13
- this.statementNode = statementNode;
14
- this.suppositionStatementNodes = suppositionStatementNodes;
15
- this.consequentStatementNode = consequentStatementNode;
13
+ this.unqualifiedStatementNode = unqualifiedStatementNode;
14
+ this.indicativeConditionalNode = indicativeConditionalNode;
16
15
  }
17
16
 
18
17
  getLabels() {
19
18
  return this.labels;
20
19
  }
21
20
 
22
- getStatementNode() {
23
- return this.statementNode;
21
+ getUnqualifiedStatementNode() {
22
+ return this.unqualifiedStatementNode;
24
23
  }
25
24
 
26
- getSuppositionStatementNodes() {
27
- return this.suppositionStatementNodes;
28
- }
29
-
30
- getConsequentStatementNode() {
31
- return this.consequentStatementNode;
25
+ getIndicativeConditionalNode() {
26
+ return this.indicativeConditionalNode;
32
27
  }
33
28
 
34
29
  matchLabelName(labelName) {
35
30
  const matchesLabelName = this.labels.some((label) => {
36
31
  const name = labelName, ///
37
- labelMatchesName = label.matchName(name);
32
+ labelMatchesName = label.matchName(name);
38
33
 
39
34
  if (labelMatchesName) {
40
35
  return true;
@@ -50,24 +45,17 @@ export default class Lemma {
50
45
 
51
46
  return labelJSON;
52
47
  }),
53
- statementString = nodeAsString(this.statementNode),
54
- consequentStatementString = nodeAsString(this.consequentStatementNode),
55
- suppositionStatementStrings = this.suppositionStatementNodes.map((suppositionStatementNode) => {
56
- const suppositionStatementString = nodeAsString(suppositionStatementNode);
57
-
58
- return suppositionStatementString;
59
- }),
48
+ unqualifiedStatementString = nodeAsString(this.unqalifiedStatementNode),
49
+ indicativeConditionalString = nodeAsString(this.indicativeConditionalNode),
60
50
  kind = LEMMA_KIND,
61
51
  labels = labelsJSON, ///
62
- statement = statementString, ///
63
- consequent = consequentStatementString, ///
64
- suppositions = suppositionStatementStrings, ///
52
+ unqualifiedStatement = unqualifiedStatementString, ///
53
+ indicativeConditional = indicativeConditionalString, ///
65
54
  json = {
66
55
  kind,
67
56
  labels,
68
- statement,
69
- consequent,
70
- suppositions
57
+ unqualifiedStatement,
58
+ indicativeConditional
71
59
  };
72
60
 
73
61
  return json;
@@ -85,45 +73,30 @@ export default class Lemma {
85
73
  return label;
86
74
  });
87
75
 
88
- const { statement, suppositions, consequent } = json;
76
+ let { unqualifiedStatement, indicativeConditional } = json;
89
77
 
90
- let lemma;
78
+ let unqualifiedStatementNode = null,
79
+ indicativeConditionalNode = null;
91
80
 
92
- if (statement !== null) {
93
- const statementJSON = statement, ///
94
- statementNode = statementNodeFromStatementJSON(statementJSON, releaseContext),
95
- suppositionStatementNodes = null,
96
- consequentStatementNode = null;
81
+ if (unqualifiedStatement !== null) {
82
+ const unqualifiedStatementString = unqualifiedStatement; ///
97
83
 
98
- lemma = new Lemma(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
99
- } else {
100
- const statementNode = null,
101
- suppositionStatementsJSON = suppositions, ///
102
- suppositionStatementNodes = suppositionStatementsJSON.map((suppositionStatementJSON) => {
103
- const suppositionStatementNode = statementNodeFromStatementJSON(suppositionStatementJSON, releaseContext);
84
+ unqualifiedStatementNode = unqualifiedStatementNodeFromUnqualifiedStatementString(unqualifiedStatementString, releaseContext);
85
+ }
104
86
 
105
- return suppositionStatementNode;
106
- }),
107
- consequentStatementJSON = consequent, ///
108
- consequentStatementNode = statementNodeFromStatementJSON(consequentStatementJSON, releaseContext);
87
+ if (indicativeConditional !== null) {
88
+ const indicativeConditionalString = indicativeConditional; ///
109
89
 
110
- lemma = new Lemma(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
90
+ indicativeConditionalNode = indicativeConditionalNodeFromIndicativeConditionalString(indicativeConditionalString, releaseContext);
111
91
  }
112
92
 
113
- return lemma;
114
- }
115
-
116
- static fromLabelsAndStatementNode(labels, statementNode) {
117
- const suppositionStatementNodes = [],
118
- consequentStatementNode = null,
119
- lemma = new Lemma(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
93
+ const lemma = new Lemma(labels, unqualifiedStatementNode, indicativeConditionalNode);
120
94
 
121
95
  return lemma;
122
96
  }
123
97
 
124
- static fromLabelsSuppositionStatementNodesAndConsequentStatementNode(labels, suppositionStatementNodes, consequentStatementNode) {
125
- const statementNode = null,
126
- lemma = new Lemma(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
98
+ static fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode(labels, unqualifiedStatementNode, indicativeConditionalNode) {
99
+ const lemma = new Lemma(labels, unqualifiedStatementNode, indicativeConditionalNode);
127
100
 
128
101
  return lemma;
129
102
  }