occam-verify-cli 0.0.697 → 0.0.700

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 (102) hide show
  1. package/lib/assignment/equality.js +7 -5
  2. package/lib/assignment/metavariable.js +62 -0
  3. package/lib/assignment/variable.js +7 -5
  4. package/lib/constructor.js +3 -10
  5. package/lib/context/file.js +37 -97
  6. package/lib/context/local.js +28 -22
  7. package/lib/context/localMeta.js +21 -21
  8. package/lib/context/release.js +2 -4
  9. package/lib/equality.js +15 -7
  10. package/lib/metaType.js +10 -10
  11. package/lib/metavariable.js +27 -31
  12. package/lib/mixins/context.js +107 -0
  13. package/lib/ruleNames.js +9 -1
  14. package/lib/substitution/metastatementForMetavariable.js +17 -10
  15. package/lib/substitution/statementForMetavariable.js +17 -10
  16. package/lib/substitution/termForVariable.js +17 -11
  17. package/lib/type.js +23 -27
  18. package/lib/utilities/node.js +3 -73
  19. package/lib/utilities/query.js +2 -16
  20. package/lib/utilities/tokens.js +1 -8
  21. package/lib/variable.js +43 -36
  22. package/lib/verifier/node/metastatement.js +2 -3
  23. package/lib/verifier/node/statementAsCombinator.js +1 -1
  24. package/lib/verifier/node.js +2 -2
  25. package/lib/verifier/nodes/metastatementForMetavariable.js +5 -5
  26. package/lib/verifier/nodes/statementForMetavariable.js +5 -5
  27. package/lib/verifier/nodes/termForVariable.js +6 -6
  28. package/lib/verifier/nodes.js +2 -2
  29. package/lib/verify/axiom.js +3 -8
  30. package/lib/verify/conclusion.js +2 -2
  31. package/lib/verify/conjecture.js +4 -9
  32. package/lib/verify/derivation.js +3 -8
  33. package/lib/verify/equality.js +11 -11
  34. package/lib/verify/file.js +2 -2
  35. package/lib/verify/lemma.js +4 -9
  36. package/lib/verify/metavariable.js +8 -6
  37. package/lib/verify/premises.js +28 -0
  38. package/lib/verify/rule.js +3 -8
  39. package/lib/verify/ruleDerivation.js +6 -8
  40. package/lib/verify/standaloneType.js +32 -0
  41. package/lib/verify/statement/unqualified.js +2 -2
  42. package/lib/verify/supposition.js +4 -7
  43. package/lib/verify/suppositions.js +37 -0
  44. package/lib/verify/term.js +3 -4
  45. package/lib/verify/termAndStandaloneType.js +39 -0
  46. package/lib/verify/termAsVariableAndStandaloneType.js +39 -0
  47. package/lib/verify/theorem.js +4 -9
  48. package/lib/verify/type.js +2 -2
  49. package/lib/verify/typeAssertion.js +59 -89
  50. package/lib/verify/variable.js +12 -10
  51. package/package.json +1 -1
  52. package/src/assignment/equality.js +13 -4
  53. package/src/assignment/metavariable.js +30 -0
  54. package/src/assignment/variable.js +15 -4
  55. package/src/constructor.js +2 -7
  56. package/src/context/file.js +50 -41
  57. package/src/context/local.js +40 -27
  58. package/src/context/localMeta.js +26 -22
  59. package/src/context/release.js +6 -9
  60. package/src/equality.js +12 -5
  61. package/src/metaType.js +10 -10
  62. package/src/metavariable.js +24 -22
  63. package/src/mixins/{file.js → context.js} +20 -2
  64. package/src/ruleNames.js +2 -0
  65. package/src/substitution/metastatementForMetavariable.js +13 -7
  66. package/src/substitution/statementForMetavariable.js +13 -7
  67. package/src/substitution/termForVariable.js +13 -9
  68. package/src/type.js +27 -39
  69. package/src/utilities/node.js +3 -81
  70. package/src/utilities/query.js +1 -19
  71. package/src/utilities/tokens.js +0 -8
  72. package/src/variable.js +48 -30
  73. package/src/verifier/node/metastatement.js +1 -3
  74. package/src/verifier/node/statementAsCombinator.js +1 -1
  75. package/src/verifier/nodes/metastatementForMetavariable.js +5 -7
  76. package/src/verifier/nodes/statementForMetavariable.js +5 -7
  77. package/src/verifier/nodes/termForVariable.js +6 -8
  78. package/src/verify/axiom.js +2 -8
  79. package/src/verify/conclusion.js +1 -1
  80. package/src/verify/conjecture.js +3 -9
  81. package/src/verify/derivation.js +2 -8
  82. package/src/verify/equality.js +10 -10
  83. package/src/verify/file.js +1 -1
  84. package/src/verify/lemma.js +3 -9
  85. package/src/verify/metavariable.js +10 -9
  86. package/src/verify/premises.js +17 -0
  87. package/src/verify/rule.js +2 -8
  88. package/src/verify/ruleDerivation.js +5 -7
  89. package/src/verify/standaloneType.js +34 -0
  90. package/src/verify/statement/unqualified.js +1 -1
  91. package/src/verify/supposition.js +2 -7
  92. package/src/verify/suppositions.js +29 -0
  93. package/src/verify/term.js +3 -6
  94. package/src/verify/termAndStandaloneType.js +37 -0
  95. package/src/verify/termAsVariableAndStandaloneType.js +38 -0
  96. package/src/verify/theorem.js +3 -9
  97. package/src/verify/type.js +1 -1
  98. package/src/verify/typeAssertion.js +79 -110
  99. package/src/verify/variable.js +13 -13
  100. package/lib/mixins/file.js +0 -83
  101. package/lib/mixins/logging.js +0 -39
  102. package/src/mixins/logging.js +0 -24
@@ -8,7 +8,8 @@ Object.defineProperty(exports, "default", {
8
8
  return Metavariable;
9
9
  }
10
10
  });
11
- var _metaType = /*#__PURE__*/ _interop_require_default(require("./metaType"));
11
+ var _string = require("./utilities/string");
12
+ var _metaType = require("./metaType");
12
13
  function _class_call_check(instance, Constructor) {
13
14
  if (!(instance instanceof Constructor)) {
14
15
  throw new TypeError("Cannot call a class as a function");
@@ -28,22 +29,17 @@ function _create_class(Constructor, protoProps, staticProps) {
28
29
  if (staticProps) _defineProperties(Constructor, staticProps);
29
30
  return Constructor;
30
31
  }
31
- function _interop_require_default(obj) {
32
- return obj && obj.__esModule ? obj : {
33
- default: obj
34
- };
35
- }
36
32
  var Metavariable = /*#__PURE__*/ function() {
37
- function Metavariable(name, metaType) {
33
+ function Metavariable(node, metaType) {
38
34
  _class_call_check(this, Metavariable);
39
- this.name = name;
35
+ this.node = node;
40
36
  this.metaType = metaType;
41
37
  }
42
38
  _create_class(Metavariable, [
43
39
  {
44
- key: "getName",
45
- value: function getName() {
46
- return this.name;
40
+ key: "getNode",
41
+ value: function getNode() {
42
+ return this.node;
47
43
  }
48
44
  },
49
45
  {
@@ -53,17 +49,17 @@ var Metavariable = /*#__PURE__*/ function() {
53
49
  }
54
50
  },
55
51
  {
56
- key: "matchName",
57
- value: function matchName(name) {
58
- var nameMatches = this.name === name;
59
- return nameMatches;
52
+ key: "matchNode",
53
+ value: function matchNode(node) {
54
+ var nodeMatches = this.node.match(node);
55
+ return nodeMatches;
60
56
  }
61
57
  },
62
58
  {
63
59
  key: "toJSON",
64
60
  value: function toJSON(tokens) {
65
- var metaTypeJSON = this.metaType.toJSON(tokens), name = this.name, metaType = metaTypeJSON, json = {
66
- name: name,
61
+ var metaTypeJSON = this.metaType.toJSON(tokens), metaType = metaTypeJSON, string = (0, _string.nodeAsString)(this.node, tokens), node = string, json = {
62
+ node: node,
67
63
  metaType: metaType
68
64
  };
69
65
  return json;
@@ -72,28 +68,28 @@ var Metavariable = /*#__PURE__*/ function() {
72
68
  {
73
69
  key: "asString",
74
70
  value: function asString(tokens) {
75
- var metaTypeName = this.metaType.getName(), string = "".concat(this.name, ":").concat(metaTypeName);
71
+ var metaTypeName = this.metaType.getName();
72
+ var string = (0, _string.nodeAsString)(this.node, tokens);
73
+ string = "".concat(string, ":").concat(metaTypeName);
76
74
  return string;
77
75
  }
78
76
  }
79
77
  ], [
80
- {
81
- key: "fromNameAndMetaType",
82
- value: function fromNameAndMetaType(name, metaType) {
83
- var metavariable = new Metavariable(name, metaType);
84
- return metavariable;
85
- }
86
- },
87
78
  {
88
79
  key: "fromJSONAndFileContext",
89
80
  value: function fromJSONAndFileContext(json, fileContext) {
90
- var name = json.name;
81
+ var node = json.node;
91
82
  var metaType = json.metaType;
92
83
  json = metaType; ///
93
- metaType = _metaType.default.fromJSONAndFileContext(json, fileContext);
94
- var metaTypeName = metaType.getName();
95
- metaType = fileContext.findMetaTypeByMetaTypeName(metaTypeName); ///
96
- var metavariable = new Metavariable(name, metaType);
84
+ metaType = (0, _metaType.metaTypeFromJSONAndFileContext)(json, fileContext);
85
+ var metavariable = new Metavariable(node, metaType);
86
+ return metavariable;
87
+ }
88
+ },
89
+ {
90
+ key: "fromMetavariableNodeAndMetaType",
91
+ value: function fromMetavariableNodeAndMetaType(metavariableNode, metaType) {
92
+ var node = metavariableNode, metavariable = new Metavariable(node, metaType);
97
93
  return metavariable;
98
94
  }
99
95
  }
@@ -101,4 +97,4 @@ var Metavariable = /*#__PURE__*/ function() {
101
97
  return Metavariable;
102
98
  }();
103
99
 
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhdmFyaWFibGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhVHlwZSBmcm9tIFwiLi9tZXRhVHlwZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNZXRhdmFyaWFibGUge1xuICBjb25zdHJ1Y3RvcihuYW1lLCBtZXRhVHlwZSkge1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5tZXRhVHlwZSA9IG1ldGFUeXBlO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0TWV0YVR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YVR5cGU7XG4gIH1cblxuICBtYXRjaE5hbWUobmFtZSkge1xuICAgIGNvbnN0IG5hbWVNYXRjaGVzID0gKHRoaXMubmFtZSA9PT0gbmFtZSk7XG5cbiAgICByZXR1cm4gbmFtZU1hdGNoZXM7XG4gIH1cblxuICB0b0pTT04odG9rZW5zKSB7XG4gICAgY29uc3QgbWV0YVR5cGVKU09OID0gdGhpcy5tZXRhVHlwZS50b0pTT04odG9rZW5zKSxcbiAgICAgICAgICBuYW1lID0gdGhpcy5uYW1lLCAvLy9cbiAgICAgICAgICBtZXRhVHlwZSA9IG1ldGFUeXBlSlNPTiwgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgbWV0YVR5cGVcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBhc1N0cmluZyh0b2tlbnMpIHtcbiAgICBjb25zdCBtZXRhVHlwZU5hbWUgPSB0aGlzLm1ldGFUeXBlLmdldE5hbWUoKSxcbiAgICAgICAgICBzdHJpbmcgPSBgJHt0aGlzLm5hbWV9OiR7bWV0YVR5cGVOYW1lfWA7XG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgc3RhdGljIGZyb21OYW1lQW5kTWV0YVR5cGUobmFtZSwgbWV0YVR5cGUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGUgPSBuZXcgTWV0YXZhcmlhYmxlKG5hbWUsIG1ldGFUeXBlKTtcblxuICAgIHJldHVybiBtZXRhdmFyaWFibGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT05BbmRGaWxlQ29udGV4dChqc29uLCBmaWxlQ29udGV4dCkge1xuICAgIGNvbnN0IHsgbmFtZSB9ID0ganNvbjtcblxuICAgIGxldCB7IG1ldGFUeXBlIH0gPSBqc29uO1xuXG4gICAganNvbiA9IG1ldGFUeXBlOyAgLy8vXG5cbiAgICBtZXRhVHlwZSA9IE1ldGFUeXBlLmZyb21KU09OQW5kRmlsZUNvbnRleHQoanNvbiwgZmlsZUNvbnRleHQpO1xuXG4gICAgY29uc3QgbWV0YVR5cGVOYW1lID0gbWV0YVR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgbWV0YVR5cGUgPSBmaWxlQ29udGV4dC5maW5kTWV0YVR5cGVCeU1ldGFUeXBlTmFtZShtZXRhVHlwZU5hbWUpOyAvLy9cblxuICAgIGNvbnN0IG1ldGF2YXJpYWJsZSA9IG5ldyBNZXRhdmFyaWFibGUobmFtZSwgbWV0YVR5cGUpO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIk1ldGF2YXJpYWJsZSIsIm5hbWUiLCJtZXRhVHlwZSIsImdldE5hbWUiLCJnZXRNZXRhVHlwZSIsIm1hdGNoTmFtZSIsIm5hbWVNYXRjaGVzIiwidG9KU09OIiwidG9rZW5zIiwibWV0YVR5cGVKU09OIiwianNvbiIsImFzU3RyaW5nIiwibWV0YVR5cGVOYW1lIiwic3RyaW5nIiwiZnJvbU5hbWVBbmRNZXRhVHlwZSIsIm1ldGF2YXJpYWJsZSIsImZyb21KU09OQW5kRmlsZUNvbnRleHQiLCJmaWxlQ29udGV4dCIsIk1ldGFUeXBlIiwiZmluZE1ldGFUeXBlQnlNZXRhVHlwZU5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7OytEQUZBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRU4sSUFBQSxBQUFNQSw2QkFBRCxBQUFMO2FBQU1BLGFBQ1BDLElBQUksRUFBRUMsUUFBUTtnQ0FEUEY7UUFFakIsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxRQUFRLEdBQUdBOztrQkFIQ0Y7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLElBQUk7WUFDbEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFFBQVE7WUFDdEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVUosSUFBSTtnQkFDWixJQUFNSyxjQUFlLElBQUksQ0FBQ0wsSUFBSSxLQUFLQTtnQkFFbkMsT0FBT0s7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxPQUFPQyxNQUFNO2dCQUNYLElBQU1DLGVBQWUsSUFBSSxDQUFDUCxRQUFRLENBQUNLLE1BQU0sQ0FBQ0MsU0FDcENQLE9BQU8sSUFBSSxDQUFDQSxJQUFJLEVBQ2hCQyxXQUFXTyxjQUNYQyxPQUFPO29CQUNMVCxNQUFBQTtvQkFDQUMsVUFBQUE7Z0JBQ0Y7Z0JBRU4sT0FBT1E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTSCxNQUFNO2dCQUNiLElBQU1JLGVBQWUsSUFBSSxDQUFDVixRQUFRLENBQUNDLE9BQU8sSUFDcENVLFNBQVMsQUFBQyxHQUFlRCxPQUFiLElBQUksQ0FBQ1gsSUFBSSxFQUFDLEtBQWdCLE9BQWJXO2dCQUUvQixPQUFPQztZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLG9CQUFvQmIsSUFBSSxFQUFFQyxRQUFRO2dCQUN2QyxJQUFNYSxlQUFlLElBeENKZixhQXdDcUJDLE1BQU1DO2dCQUU1QyxPQUFPYTtZQUNUOzs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsdUJBQXVCTixJQUFJLEVBQUVPLFdBQVc7Z0JBQzdDLElBQU0sQUFBRWhCLE9BQVNTLEtBQVRUO2dCQUVSLElBQUksQUFBRUMsV0FBYVEsS0FBYlI7Z0JBRU5RLE9BQU9SLFVBQVcsR0FBRztnQkFFckJBLFdBQVdnQixpQkFBUSxDQUFDRixzQkFBc0IsQ0FBQ04sTUFBTU87Z0JBRWpELElBQU1MLGVBQWVWLFNBQVNDLE9BQU87Z0JBRXJDRCxXQUFXZSxZQUFZRSwwQkFBMEIsQ0FBQ1AsZUFBZSxHQUFHO2dCQUVwRSxJQUFNRyxlQUFlLElBMURKZixhQTBEcUJDLE1BQU1DO2dCQUU1QyxPQUFPYTtZQUNUOzs7V0E3RG1CZiJ9
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhdmFyaWFibGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IG1ldGFUeXBlRnJvbUpTT05BbmRGaWxlQ29udGV4dCB9IGZyb20gXCIuL21ldGFUeXBlXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGF2YXJpYWJsZSB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIG1ldGFUeXBlKSB7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgICB0aGlzLm1ldGFUeXBlID0gbWV0YVR5cGU7XG4gIH1cblxuICBnZXROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGU7XG4gIH1cblxuICBnZXRNZXRhVHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhVHlwZTtcbiAgfVxuXG4gIG1hdGNoTm9kZShub2RlKSB7XG4gICAgY29uc3Qgbm9kZU1hdGNoZXMgPSB0aGlzLm5vZGUubWF0Y2gobm9kZSk7XG5cbiAgICByZXR1cm4gbm9kZU1hdGNoZXM7XG4gIH1cblxuICB0b0pTT04odG9rZW5zKSB7XG4gICAgY29uc3QgbWV0YVR5cGVKU09OID0gdGhpcy5tZXRhVHlwZS50b0pTT04odG9rZW5zKSxcbiAgICAgICAgICBtZXRhVHlwZSA9IG1ldGFUeXBlSlNPTiwgIC8vL1xuICAgICAgICAgIHN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLm5vZGUsIHRva2VucyksXG4gICAgICAgICAgbm9kZSA9IHN0cmluZywgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgbWV0YVR5cGVcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBhc1N0cmluZyh0b2tlbnMpIHtcbiAgICBjb25zdCBtZXRhVHlwZU5hbWUgPSB0aGlzLm1ldGFUeXBlLmdldE5hbWUoKTtcblxuICAgIGxldCBzdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5ub2RlLCB0b2tlbnMpO1xuXG4gICAgc3RyaW5nID0gYCR7c3RyaW5nfToke21ldGFUeXBlTmFtZX1gO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KSB7XG4gICAgY29uc3QgeyBub2RlIH0gPSBqc29uO1xuXG4gICAgbGV0IHsgbWV0YVR5cGUgfSA9IGpzb247XG5cbiAgICBqc29uID0gbWV0YVR5cGU7ICAvLy9cblxuICAgIG1ldGFUeXBlID0gbWV0YVR5cGVGcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KTtcblxuICAgIGNvbnN0IG1ldGF2YXJpYWJsZSA9IG5ldyBNZXRhdmFyaWFibGUobm9kZSwgbWV0YVR5cGUpO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTWV0YXZhcmlhYmxlTm9kZUFuZE1ldGFUeXBlKG1ldGF2YXJpYWJsZU5vZGUsIG1ldGFUeXBlKSB7XG4gICAgY29uc3Qgbm9kZSA9IG1ldGF2YXJpYWJsZU5vZGUsICAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGUgPSBuZXcgTWV0YXZhcmlhYmxlKG5vZGUsIG1ldGFUeXBlKTtcblxuICAgIHJldHVybiBtZXRhdmFyaWFibGU7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJNZXRhdmFyaWFibGUiLCJub2RlIiwibWV0YVR5cGUiLCJnZXROb2RlIiwiZ2V0TWV0YVR5cGUiLCJtYXRjaE5vZGUiLCJub2RlTWF0Y2hlcyIsIm1hdGNoIiwidG9KU09OIiwidG9rZW5zIiwibWV0YVR5cGVKU09OIiwic3RyaW5nIiwibm9kZUFzU3RyaW5nIiwianNvbiIsImFzU3RyaW5nIiwibWV0YVR5cGVOYW1lIiwiZ2V0TmFtZSIsImZyb21KU09OQW5kRmlsZUNvbnRleHQiLCJmaWxlQ29udGV4dCIsIm1ldGFUeXBlRnJvbUpTT05BbmRGaWxlQ29udGV4dCIsIm1ldGF2YXJpYWJsZSIsImZyb21NZXRhdmFyaWFibGVOb2RlQW5kTWV0YVR5cGUiLCJtZXRhdmFyaWFibGVOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUtxQkE7OztzQkFIUTt3QkFDa0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWhDLElBQUEsQUFBTUEsNkJBQUQsQUFBTDthQUFNQSxhQUNQQyxJQUFJLEVBQUVDLFFBQVE7Z0NBRFBGO1FBRWpCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTs7a0JBSENGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixJQUFJO1lBQ2xCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixRQUFRO1lBQ3RCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVVKLElBQUk7Z0JBQ1osSUFBTUssY0FBYyxJQUFJLENBQUNMLElBQUksQ0FBQ00sS0FBSyxDQUFDTjtnQkFFcEMsT0FBT0s7WUFDVDs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxPQUFPQyxNQUFNO2dCQUNYLElBQU1DLGVBQWUsSUFBSSxDQUFDUixRQUFRLENBQUNNLE1BQU0sQ0FBQ0MsU0FDcENQLFdBQVdRLGNBQ1hDLFNBQVNDLElBQUFBLG9CQUFZLEVBQUMsSUFBSSxDQUFDWCxJQUFJLEVBQUVRLFNBQ2pDUixPQUFPVSxRQUNQRSxPQUFPO29CQUNMWixNQUFBQTtvQkFDQUMsVUFBQUE7Z0JBQ0Y7Z0JBRU4sT0FBT1c7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTTCxNQUFNO2dCQUNiLElBQU1NLGVBQWUsSUFBSSxDQUFDYixRQUFRLENBQUNjLE9BQU87Z0JBRTFDLElBQUlMLFNBQVNDLElBQUFBLG9CQUFZLEVBQUMsSUFBSSxDQUFDWCxJQUFJLEVBQUVRO2dCQUVyQ0UsU0FBUyxBQUFDLEdBQVlJLE9BQVZKLFFBQU8sS0FBZ0IsT0FBYkk7Z0JBRXRCLE9BQU9KO1lBQ1Q7Ozs7WUFFT00sS0FBQUE7bUJBQVAsU0FBT0EsdUJBQXVCSixJQUFJLEVBQUVLLFdBQVc7Z0JBQzdDLElBQU0sQUFBRWpCLE9BQVNZLEtBQVRaO2dCQUVSLElBQUksQUFBRUMsV0FBYVcsS0FBYlg7Z0JBRU5XLE9BQU9YLFVBQVcsR0FBRztnQkFFckJBLFdBQVdpQixJQUFBQSx3Q0FBOEIsRUFBQ04sTUFBTUs7Z0JBRWhELElBQU1FLGVBQWUsSUFwREpwQixhQW9EcUJDLE1BQU1DO2dCQUU1QyxPQUFPa0I7WUFDVDs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLGdDQUFnQ0MsZ0JBQWdCLEVBQUVwQixRQUFRO2dCQUMvRCxJQUFNRCxPQUFPcUIsa0JBQ1BGLGVBQWUsSUEzREpwQixhQTJEcUJDLE1BQU1DO2dCQUU1QyxPQUFPa0I7WUFDVDs7O1dBOURtQnBCIn0=
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ function trace(node, message) {
12
+ this.context.trace(node, message);
13
+ }
14
+ function debug(node, message) {
15
+ this.context.debug(node, message);
16
+ }
17
+ function info(node, message) {
18
+ this.context.info(node, message);
19
+ }
20
+ function warning(node, message) {
21
+ this.context.warning(node, message);
22
+ }
23
+ function error(node, message) {
24
+ this.context.error(node, message);
25
+ }
26
+ function fatal(node, message) {
27
+ this.context.fatal(node, message);
28
+ }
29
+ function getAxioms() {
30
+ return this.context.getAxioms();
31
+ }
32
+ function getLemmas() {
33
+ return this.context.getLemmas();
34
+ }
35
+ function getTheorems() {
36
+ return this.context.getTheorems();
37
+ }
38
+ function getConjectures() {
39
+ return this.context.getConjectures();
40
+ }
41
+ function getCombinators() {
42
+ return this.context.getCombinators();
43
+ }
44
+ function getConstructors() {
45
+ return this.context.getConstructors();
46
+ }
47
+ function findTypeByTypeName(typeName) {
48
+ return this.context.findTypeByTypeName(typeName);
49
+ }
50
+ function findLabelByTypeName(labelName) {
51
+ return this.context.findLabelByTypeName(labelName);
52
+ }
53
+ function findRuleByReferenceName(referenceName) {
54
+ return this.context.findRuleByReferenceName(referenceName);
55
+ }
56
+ function findAxiomByReferenceName(referenceName) {
57
+ return this.context.findAxiomByReferenceName(referenceName);
58
+ }
59
+ function findLemmaByReferenceName(referenceName) {
60
+ return this.context.findLemmaByReferenceName(referenceName);
61
+ }
62
+ function findTheoremByReferenceName(referenceName) {
63
+ return this.context.findTheoremByReferenceName(referenceName);
64
+ }
65
+ function findConjectureByReferenceName(referenceName) {
66
+ return this.context.findConjectureByReferenceName(referenceName);
67
+ }
68
+ function isLabelPresentByLabelName(labelName) {
69
+ return this.context.isLabelPresentByLabelName(labelName);
70
+ }
71
+ function isTypePresentByTypeName(typeName) {
72
+ return this.context.isTypePresentByTypeName(typeName);
73
+ }
74
+ function nodeAsString(node) {
75
+ return this.context.nodeAsString(node);
76
+ }
77
+ function nodesAsString(node) {
78
+ return this.context.nodesAsString(node);
79
+ }
80
+ var contextMixins = {
81
+ trace: trace,
82
+ debug: debug,
83
+ info: info,
84
+ warning: warning,
85
+ error: error,
86
+ fatal: fatal,
87
+ getAxioms: getAxioms,
88
+ getLemmas: getLemmas,
89
+ getTheorems: getTheorems,
90
+ getConjectures: getConjectures,
91
+ getCombinators: getCombinators,
92
+ getConstructors: getConstructors,
93
+ findTypeByTypeName: findTypeByTypeName,
94
+ findLabelByTypeName: findLabelByTypeName,
95
+ findRuleByReferenceName: findRuleByReferenceName,
96
+ findAxiomByReferenceName: findAxiomByReferenceName,
97
+ findLemmaByReferenceName: findLemmaByReferenceName,
98
+ findTheoremByReferenceName: findTheoremByReferenceName,
99
+ findConjectureByReferenceName: findConjectureByReferenceName,
100
+ isLabelPresentByLabelName: isLabelPresentByLabelName,
101
+ isTypePresentByTypeName: isTypePresentByTypeName,
102
+ nodeAsString: nodeAsString,
103
+ nodesAsString: nodesAsString
104
+ };
105
+ var _default = contextMixins;
106
+
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvY29udGV4dC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZnVuY3Rpb24gdHJhY2Uobm9kZSwgbWVzc2FnZSkgeyB0aGlzLmNvbnRleHQudHJhY2Uobm9kZSwgbWVzc2FnZSk7IH1cblxuZnVuY3Rpb24gZGVidWcobm9kZSwgbWVzc2FnZSkgeyB0aGlzLmNvbnRleHQuZGVidWcobm9kZSwgbWVzc2FnZSk7IH1cblxuZnVuY3Rpb24gaW5mbyhub2RlLCBtZXNzYWdlKSB7IHRoaXMuY29udGV4dC5pbmZvKG5vZGUsIG1lc3NhZ2UpOyB9XG5cbmZ1bmN0aW9uIHdhcm5pbmcobm9kZSwgbWVzc2FnZSkgeyB0aGlzLmNvbnRleHQud2FybmluZyhub2RlLCBtZXNzYWdlKTsgfVxuXG5mdW5jdGlvbiBlcnJvcihub2RlLCBtZXNzYWdlKSB7IHRoaXMuY29udGV4dC5lcnJvcihub2RlLCBtZXNzYWdlKTsgfVxuXG5mdW5jdGlvbiBmYXRhbChub2RlLCBtZXNzYWdlKSB7IHRoaXMuY29udGV4dC5mYXRhbChub2RlLCBtZXNzYWdlKTsgfVxuXG5mdW5jdGlvbiBnZXRBeGlvbXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0QXhpb21zKCk7IH1cblxuZnVuY3Rpb24gZ2V0TGVtbWFzKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldExlbW1hcygpOyB9XG5cbmZ1bmN0aW9uIGdldFRoZW9yZW1zKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldFRoZW9yZW1zKCk7IH1cblxuZnVuY3Rpb24gZ2V0Q29uamVjdHVyZXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0Q29uamVjdHVyZXMoKTsgfVxuXG5mdW5jdGlvbiBnZXRDb21iaW5hdG9ycygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRDb21iaW5hdG9ycygpOyB9XG5cbmZ1bmN0aW9uIGdldENvbnN0cnVjdG9ycygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRDb25zdHJ1Y3RvcnMoKTsgfVxuXG5mdW5jdGlvbiBmaW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpOyB9XG5cbmZ1bmN0aW9uIGZpbmRMYWJlbEJ5VHlwZU5hbWUobGFiZWxOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZExhYmVsQnlUeXBlTmFtZShsYWJlbE5hbWUpOyB9XG5cbmZ1bmN0aW9uIGZpbmRSdWxlQnlSZWZlcmVuY2VOYW1lKHJlZmVyZW5jZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kUnVsZUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKTsgfVxuXG5mdW5jdGlvbiBmaW5kQXhpb21CeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRBeGlvbUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKTsgfVxuXG5mdW5jdGlvbiBmaW5kTGVtbWFCeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRMZW1tYUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKTsgfVxuXG5mdW5jdGlvbiBmaW5kVGhlb3JlbUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZFRoZW9yZW1CeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSk7IH1cblxuZnVuY3Rpb24gZmluZENvbmplY3R1cmVCeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRDb25qZWN0dXJlQnlSZWZlcmVuY2VOYW1lKHJlZmVyZW5jZU5hbWUpOyB9XG5cbmZ1bmN0aW9uIGlzTGFiZWxQcmVzZW50QnlMYWJlbE5hbWUobGFiZWxOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuaXNMYWJlbFByZXNlbnRCeUxhYmVsTmFtZShsYWJlbE5hbWUpOyB9XG5cbmZ1bmN0aW9uIGlzVHlwZVByZXNlbnRCeVR5cGVOYW1lKHR5cGVOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpOyB9XG5cbmZ1bmN0aW9uIG5vZGVBc1N0cmluZyhub2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpOyB9XG5cbmZ1bmN0aW9uIG5vZGVzQXNTdHJpbmcobm9kZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0Lm5vZGVzQXNTdHJpbmcobm9kZSk7IH1cblxuY29uc3QgY29udGV4dE1peGlucyA9IHtcbiAgdHJhY2UsXG4gIGRlYnVnLFxuICBpbmZvLFxuICB3YXJuaW5nLFxuICBlcnJvcixcbiAgZmF0YWwsXG4gIGdldEF4aW9tcyxcbiAgZ2V0TGVtbWFzLFxuICBnZXRUaGVvcmVtcyxcbiAgZ2V0Q29uamVjdHVyZXMsXG4gIGdldENvbWJpbmF0b3JzLFxuICBnZXRDb25zdHJ1Y3RvcnMsXG4gIGZpbmRUeXBlQnlUeXBlTmFtZSxcbiAgZmluZExhYmVsQnlUeXBlTmFtZSxcbiAgZmluZFJ1bGVCeVJlZmVyZW5jZU5hbWUsXG4gIGZpbmRBeGlvbUJ5UmVmZXJlbmNlTmFtZSxcbiAgZmluZExlbW1hQnlSZWZlcmVuY2VOYW1lLFxuICBmaW5kVGhlb3JlbUJ5UmVmZXJlbmNlTmFtZSxcbiAgZmluZENvbmplY3R1cmVCeVJlZmVyZW5jZU5hbWUsXG4gIGlzTGFiZWxQcmVzZW50QnlMYWJlbE5hbWUsXG4gIGlzVHlwZVByZXNlbnRCeVR5cGVOYW1lLFxuICBub2RlQXNTdHJpbmcsXG4gIG5vZGVzQXNTdHJpbmdcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNvbnRleHRNaXhpbnM7XG4iXSwibmFtZXMiOlsidHJhY2UiLCJub2RlIiwibWVzc2FnZSIsImNvbnRleHQiLCJkZWJ1ZyIsImluZm8iLCJ3YXJuaW5nIiwiZXJyb3IiLCJmYXRhbCIsImdldEF4aW9tcyIsImdldExlbW1hcyIsImdldFRoZW9yZW1zIiwiZ2V0Q29uamVjdHVyZXMiLCJnZXRDb21iaW5hdG9ycyIsImdldENvbnN0cnVjdG9ycyIsImZpbmRUeXBlQnlUeXBlTmFtZSIsInR5cGVOYW1lIiwiZmluZExhYmVsQnlUeXBlTmFtZSIsImxhYmVsTmFtZSIsImZpbmRSdWxlQnlSZWZlcmVuY2VOYW1lIiwicmVmZXJlbmNlTmFtZSIsImZpbmRBeGlvbUJ5UmVmZXJlbmNlTmFtZSIsImZpbmRMZW1tYUJ5UmVmZXJlbmNlTmFtZSIsImZpbmRUaGVvcmVtQnlSZWZlcmVuY2VOYW1lIiwiZmluZENvbmplY3R1cmVCeVJlZmVyZW5jZU5hbWUiLCJpc0xhYmVsUHJlc2VudEJ5TGFiZWxOYW1lIiwiaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUiLCJub2RlQXNTdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwiY29udGV4dE1peGlucyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMEVBOzs7ZUFBQTs7O0FBeEVBLFNBQVNBLE1BQU1DLElBQUksRUFBRUMsT0FBTztJQUFJLElBQUksQ0FBQ0MsT0FBTyxDQUFDSCxLQUFLLENBQUNDLE1BQU1DO0FBQVU7QUFFbkUsU0FBU0UsTUFBTUgsSUFBSSxFQUFFQyxPQUFPO0lBQUksSUFBSSxDQUFDQyxPQUFPLENBQUNDLEtBQUssQ0FBQ0gsTUFBTUM7QUFBVTtBQUVuRSxTQUFTRyxLQUFLSixJQUFJLEVBQUVDLE9BQU87SUFBSSxJQUFJLENBQUNDLE9BQU8sQ0FBQ0UsSUFBSSxDQUFDSixNQUFNQztBQUFVO0FBRWpFLFNBQVNJLFFBQVFMLElBQUksRUFBRUMsT0FBTztJQUFJLElBQUksQ0FBQ0MsT0FBTyxDQUFDRyxPQUFPLENBQUNMLE1BQU1DO0FBQVU7QUFFdkUsU0FBU0ssTUFBTU4sSUFBSSxFQUFFQyxPQUFPO0lBQUksSUFBSSxDQUFDQyxPQUFPLENBQUNJLEtBQUssQ0FBQ04sTUFBTUM7QUFBVTtBQUVuRSxTQUFTTSxNQUFNUCxJQUFJLEVBQUVDLE9BQU87SUFBSSxJQUFJLENBQUNDLE9BQU8sQ0FBQ0ssS0FBSyxDQUFDUCxNQUFNQztBQUFVO0FBRW5FLFNBQVNPO0lBQWMsT0FBTyxJQUFJLENBQUNOLE9BQU8sQ0FBQ00sU0FBUztBQUFJO0FBRXhELFNBQVNDO0lBQWMsT0FBTyxJQUFJLENBQUNQLE9BQU8sQ0FBQ08sU0FBUztBQUFJO0FBRXhELFNBQVNDO0lBQWdCLE9BQU8sSUFBSSxDQUFDUixPQUFPLENBQUNRLFdBQVc7QUFBSTtBQUU1RCxTQUFTQztJQUFtQixPQUFPLElBQUksQ0FBQ1QsT0FBTyxDQUFDUyxjQUFjO0FBQUk7QUFFbEUsU0FBU0M7SUFBbUIsT0FBTyxJQUFJLENBQUNWLE9BQU8sQ0FBQ1UsY0FBYztBQUFJO0FBRWxFLFNBQVNDO0lBQW9CLE9BQU8sSUFBSSxDQUFDWCxPQUFPLENBQUNXLGVBQWU7QUFBSTtBQUVwRSxTQUFTQyxtQkFBbUJDLFFBQVE7SUFBSSxPQUFPLElBQUksQ0FBQ2IsT0FBTyxDQUFDWSxrQkFBa0IsQ0FBQ0M7QUFBVztBQUUxRixTQUFTQyxvQkFBb0JDLFNBQVM7SUFBSSxPQUFPLElBQUksQ0FBQ2YsT0FBTyxDQUFDYyxtQkFBbUIsQ0FBQ0M7QUFBWTtBQUU5RixTQUFTQyx3QkFBd0JDLGFBQWE7SUFBSSxPQUFPLElBQUksQ0FBQ2pCLE9BQU8sQ0FBQ2dCLHVCQUF1QixDQUFDQztBQUFnQjtBQUU5RyxTQUFTQyx5QkFBeUJELGFBQWE7SUFBSSxPQUFPLElBQUksQ0FBQ2pCLE9BQU8sQ0FBQ2tCLHdCQUF3QixDQUFDRDtBQUFnQjtBQUVoSCxTQUFTRSx5QkFBeUJGLGFBQWE7SUFBSSxPQUFPLElBQUksQ0FBQ2pCLE9BQU8sQ0FBQ21CLHdCQUF3QixDQUFDRjtBQUFnQjtBQUVoSCxTQUFTRywyQkFBMkJILGFBQWE7SUFBSSxPQUFPLElBQUksQ0FBQ2pCLE9BQU8sQ0FBQ29CLDBCQUEwQixDQUFDSDtBQUFnQjtBQUVwSCxTQUFTSSw4QkFBOEJKLGFBQWE7SUFBSSxPQUFPLElBQUksQ0FBQ2pCLE9BQU8sQ0FBQ3FCLDZCQUE2QixDQUFDSjtBQUFnQjtBQUUxSCxTQUFTSywwQkFBMEJQLFNBQVM7SUFBSSxPQUFPLElBQUksQ0FBQ2YsT0FBTyxDQUFDc0IseUJBQXlCLENBQUNQO0FBQVk7QUFFMUcsU0FBU1Esd0JBQXdCVixRQUFRO0lBQUksT0FBTyxJQUFJLENBQUNiLE9BQU8sQ0FBQ3VCLHVCQUF1QixDQUFDVjtBQUFXO0FBRXBHLFNBQVNXLGFBQWExQixJQUFJO0lBQUksT0FBTyxJQUFJLENBQUNFLE9BQU8sQ0FBQ3dCLFlBQVksQ0FBQzFCO0FBQU87QUFFdEUsU0FBUzJCLGNBQWMzQixJQUFJO0lBQUksT0FBTyxJQUFJLENBQUNFLE9BQU8sQ0FBQ3lCLGFBQWEsQ0FBQzNCO0FBQU87QUFFeEUsSUFBTTRCLGdCQUFnQjtJQUNwQjdCLE9BQUFBO0lBQ0FJLE9BQUFBO0lBQ0FDLE1BQUFBO0lBQ0FDLFNBQUFBO0lBQ0FDLE9BQUFBO0lBQ0FDLE9BQUFBO0lBQ0FDLFdBQUFBO0lBQ0FDLFdBQUFBO0lBQ0FDLGFBQUFBO0lBQ0FDLGdCQUFBQTtJQUNBQyxnQkFBQUE7SUFDQUMsaUJBQUFBO0lBQ0FDLG9CQUFBQTtJQUNBRSxxQkFBQUE7SUFDQUUseUJBQUFBO0lBQ0FFLDBCQUFBQTtJQUNBQywwQkFBQUE7SUFDQUMsNEJBQUFBO0lBQ0FDLCtCQUFBQTtJQUNBQywyQkFBQUE7SUFDQUMseUJBQUFBO0lBQ0FDLGNBQUFBO0lBQ0FDLGVBQUFBO0FBQ0Y7SUFFQSxXQUFlQyJ9
package/lib/ruleNames.js CHANGED
@@ -21,6 +21,9 @@ _export(exports, {
21
21
  METASTATEMENT_RULE_NAME: function() {
22
22
  return METASTATEMENT_RULE_NAME;
23
23
  },
24
+ METAVARIABLE_DECLARATION_RULE_NAME: function() {
25
+ return METAVARIABLE_DECLARATION_RULE_NAME;
26
+ },
24
27
  METAVARIABLE_RULE_NAME: function() {
25
28
  return METAVARIABLE_RULE_NAME;
26
29
  },
@@ -57,6 +60,9 @@ _export(exports, {
57
60
  UNQUALIFIED_STATEMENT_RULE_NAME: function() {
58
61
  return UNQUALIFIED_STATEMENT_RULE_NAME;
59
62
  },
63
+ VARIABLE_DECLARATION_RULE_NAME: function() {
64
+ return VARIABLE_DECLARATION_RULE_NAME;
65
+ },
60
66
  VARIABLE_RULE_NAME: function() {
61
67
  return VARIABLE_RULE_NAME;
62
68
  }
@@ -74,9 +80,11 @@ var METASTATEMENT_RULE_NAME = "metastatement";
74
80
  var RULE_SUBPROOF_RULE_NAME = "ruleSubproof";
75
81
  var META_ARGUMENT_RULE_NAME = "metaArgument";
76
82
  var QUALIFIED_STATEMENT_RULE_NAME = "qualifiedStatement";
83
+ var VARIABLE_DECLARATION_RULE_NAME = "variableDeclaration";
77
84
  var UNQUALIFIED_STATEMENT_RULE_NAME = "unqualifiedStatement";
78
85
  var CONSTRUCTOR_DECLARATION_RULE_NAME = "constructorDeclaration";
79
86
  var QUALIFIED_METASTATEMENT_RULE_NAME = "qualifiedMetastatement";
87
+ var METAVARIABLE_DECLARATION_RULE_NAME = "metavariableDeclaration";
80
88
  var UNQUALIFIED_METASTATEMENT_RULE_NAME = "unqualifiedMetastatement";
81
89
 
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlTmFtZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBURVJNX1JVTEVfTkFNRSA9IFwidGVybVwiO1xuZXhwb3J0IGNvbnN0IFRZUEVfUlVMRV9OQU1FID0gXCJ0eXBlXCI7XG5leHBvcnQgY29uc3QgTEFCRUxfUlVMRV9OQU1FID0gXCJsYWJlbFwiO1xuZXhwb3J0IGNvbnN0IFZBUklBQkxFX1JVTEVfTkFNRSA9IFwidmFyaWFibGVcIjtcbmV4cG9ydCBjb25zdCBBUkdVTUVOVF9SVUxFX05BTUUgPSBcImFyZ3VtZW50XCI7XG5leHBvcnQgY29uc3QgU1VCUFJPT0ZfUlVMRV9OQU1FID0gXCJzdWJwcm9vZlwiO1xuZXhwb3J0IGNvbnN0IFNUQVRFTUVOVF9SVUxFX05BTUUgPSBcInN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfVFlQRV9SVUxFX05BTUUgPSBcIm1ldGEtdHlwZVwiO1xuZXhwb3J0IGNvbnN0IE1FVEFWQVJJQUJMRV9SVUxFX05BTUUgPSBcIm1ldGF2YXJpYWJsZVwiO1xuZXhwb3J0IGNvbnN0IE1FVEFTVEFURU1FTlRfUlVMRV9OQU1FID0gXCJtZXRhc3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgUlVMRV9TVUJQUk9PRl9SVUxFX05BTUUgPSBcInJ1bGVTdWJwcm9vZlwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfQVJHVU1FTlRfUlVMRV9OQU1FID0gXCJtZXRhQXJndW1lbnRcIjtcbmV4cG9ydCBjb25zdCBRVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwicXVhbGlmaWVkU3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwidW5xdWFsaWZpZWRTdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBDT05TVFJVQ1RPUl9ERUNMQVJBVElPTl9SVUxFX05BTUUgPSBcImNvbnN0cnVjdG9yRGVjbGFyYXRpb25cIjtcbmV4cG9ydCBjb25zdCBRVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgPSBcInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50XCI7XG4iXSwibmFtZXMiOlsiQVJHVU1FTlRfUlVMRV9OQU1FIiwiQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FIiwiTEFCRUxfUlVMRV9OQU1FIiwiTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwiTUVUQV9BUkdVTUVOVF9SVUxFX05BTUUiLCJNRVRBX1RZUEVfUlVMRV9OQU1FIiwiUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwiUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUiLCJSVUxFX1NVQlBST09GX1JVTEVfTkFNRSIsIlNUQVRFTUVOVF9SVUxFX05BTUUiLCJTVUJQUk9PRl9SVUxFX05BTUUiLCJURVJNX1JVTEVfTkFNRSIsIlRZUEVfUlVMRV9OQU1FIiwiVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiLCJVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FIiwiVkFSSUFCTEVfUlVMRV9OQU1FIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFNYUEsa0JBQWtCO2VBQWxCQTs7SUFVQUMsaUNBQWlDO2VBQWpDQTs7SUFaQUMsZUFBZTtlQUFmQTs7SUFPQUMsdUJBQXVCO2VBQXZCQTs7SUFEQUMsc0JBQXNCO2VBQXRCQTs7SUFHQUMsdUJBQXVCO2VBQXZCQTs7SUFKQUMsbUJBQW1CO2VBQW5CQTs7SUFRQUMsaUNBQWlDO2VBQWpDQTs7SUFIQUMsNkJBQTZCO2VBQTdCQTs7SUFGQUMsdUJBQXVCO2VBQXZCQTs7SUFKQUMsbUJBQW1CO2VBQW5CQTs7SUFEQUMsa0JBQWtCO2VBQWxCQTs7SUFMQUMsY0FBYztlQUFkQTs7SUFDQUMsY0FBYztlQUFkQTs7SUFlQUMsbUNBQW1DO2VBQW5DQTs7SUFIQUMsK0JBQStCO2VBQS9CQTs7SUFWQUMsa0JBQWtCO2VBQWxCQTs7O0FBSE4sSUFBTUosaUJBQWlCO0FBQ3ZCLElBQU1DLGlCQUFpQjtBQUN2QixJQUFNWCxrQkFBa0I7QUFDeEIsSUFBTWMscUJBQXFCO0FBQzNCLElBQU1oQixxQkFBcUI7QUFDM0IsSUFBTVcscUJBQXFCO0FBQzNCLElBQU1ELHNCQUFzQjtBQUM1QixJQUFNSixzQkFBc0I7QUFDNUIsSUFBTUYseUJBQXlCO0FBQy9CLElBQU1ELDBCQUEwQjtBQUNoQyxJQUFNTSwwQkFBMEI7QUFDaEMsSUFBTUosMEJBQTBCO0FBQ2hDLElBQU1HLGdDQUFnQztBQUN0QyxJQUFNTyxrQ0FBa0M7QUFDeEMsSUFBTWQsb0NBQW9DO0FBQzFDLElBQU1NLG9DQUFvQztBQUMxQyxJQUFNTyxzQ0FBc0MifQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlTmFtZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBURVJNX1JVTEVfTkFNRSA9IFwidGVybVwiO1xuZXhwb3J0IGNvbnN0IFRZUEVfUlVMRV9OQU1FID0gXCJ0eXBlXCI7XG5leHBvcnQgY29uc3QgTEFCRUxfUlVMRV9OQU1FID0gXCJsYWJlbFwiO1xuZXhwb3J0IGNvbnN0IFZBUklBQkxFX1JVTEVfTkFNRSA9IFwidmFyaWFibGVcIjtcbmV4cG9ydCBjb25zdCBBUkdVTUVOVF9SVUxFX05BTUUgPSBcImFyZ3VtZW50XCI7XG5leHBvcnQgY29uc3QgU1VCUFJPT0ZfUlVMRV9OQU1FID0gXCJzdWJwcm9vZlwiO1xuZXhwb3J0IGNvbnN0IFNUQVRFTUVOVF9SVUxFX05BTUUgPSBcInN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfVFlQRV9SVUxFX05BTUUgPSBcIm1ldGEtdHlwZVwiO1xuZXhwb3J0IGNvbnN0IE1FVEFWQVJJQUJMRV9SVUxFX05BTUUgPSBcIm1ldGF2YXJpYWJsZVwiO1xuZXhwb3J0IGNvbnN0IE1FVEFTVEFURU1FTlRfUlVMRV9OQU1FID0gXCJtZXRhc3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgUlVMRV9TVUJQUk9PRl9SVUxFX05BTUUgPSBcInJ1bGVTdWJwcm9vZlwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfQVJHVU1FTlRfUlVMRV9OQU1FID0gXCJtZXRhQXJndW1lbnRcIjtcbmV4cG9ydCBjb25zdCBRVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwicXVhbGlmaWVkU3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgVkFSSUFCTEVfREVDTEFSQVRJT05fUlVMRV9OQU1FID0gXCJ2YXJpYWJsZURlY2xhcmF0aW9uXCI7XG5leHBvcnQgY29uc3QgVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwidW5xdWFsaWZpZWRTdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBDT05TVFJVQ1RPUl9ERUNMQVJBVElPTl9SVUxFX05BTUUgPSBcImNvbnN0cnVjdG9yRGVjbGFyYXRpb25cIjtcbmV4cG9ydCBjb25zdCBRVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgPSBcInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBNRVRBVkFSSUFCTEVfREVDTEFSQVRJT05fUlVMRV9OQU1FID0gXCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvblwiO1xuZXhwb3J0IGNvbnN0IFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FID0gXCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRcIjtcbiJdLCJuYW1lcyI6WyJBUkdVTUVOVF9SVUxFX05BTUUiLCJDT05TVFJVQ1RPUl9ERUNMQVJBVElPTl9SVUxFX05BTUUiLCJMQUJFTF9SVUxFX05BTUUiLCJNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsIk1FVEFWQVJJQUJMRV9ERUNMQVJBVElPTl9SVUxFX05BTUUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwiTUVUQV9BUkdVTUVOVF9SVUxFX05BTUUiLCJNRVRBX1RZUEVfUlVMRV9OQU1FIiwiUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwiUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUiLCJSVUxFX1NVQlBST09GX1JVTEVfTkFNRSIsIlNUQVRFTUVOVF9SVUxFX05BTUUiLCJTVUJQUk9PRl9SVUxFX05BTUUiLCJURVJNX1JVTEVfTkFNRSIsIlRZUEVfUlVMRV9OQU1FIiwiVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiLCJVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FIiwiVkFSSUFCTEVfREVDTEFSQVRJT05fUlVMRV9OQU1FIiwiVkFSSUFCTEVfUlVMRV9OQU1FIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFNYUEsa0JBQWtCO2VBQWxCQTs7SUFXQUMsaUNBQWlDO2VBQWpDQTs7SUFiQUMsZUFBZTtlQUFmQTs7SUFPQUMsdUJBQXVCO2VBQXZCQTs7SUFRQUMsa0NBQWtDO2VBQWxDQTs7SUFUQUMsc0JBQXNCO2VBQXRCQTs7SUFHQUMsdUJBQXVCO2VBQXZCQTs7SUFKQUMsbUJBQW1CO2VBQW5CQTs7SUFTQUMsaUNBQWlDO2VBQWpDQTs7SUFKQUMsNkJBQTZCO2VBQTdCQTs7SUFGQUMsdUJBQXVCO2VBQXZCQTs7SUFKQUMsbUJBQW1CO2VBQW5CQTs7SUFEQUMsa0JBQWtCO2VBQWxCQTs7SUFMQUMsY0FBYztlQUFkQTs7SUFDQUMsY0FBYztlQUFkQTs7SUFpQkFDLG1DQUFtQztlQUFuQ0E7O0lBSkFDLCtCQUErQjtlQUEvQkE7O0lBREFDLDhCQUE4QjtlQUE5QkE7O0lBVkFDLGtCQUFrQjtlQUFsQkE7OztBQUhOLElBQU1MLGlCQUFpQjtBQUN2QixJQUFNQyxpQkFBaUI7QUFDdkIsSUFBTVosa0JBQWtCO0FBQ3hCLElBQU1nQixxQkFBcUI7QUFDM0IsSUFBTWxCLHFCQUFxQjtBQUMzQixJQUFNWSxxQkFBcUI7QUFDM0IsSUFBTUQsc0JBQXNCO0FBQzVCLElBQU1KLHNCQUFzQjtBQUM1QixJQUFNRix5QkFBeUI7QUFDL0IsSUFBTUYsMEJBQTBCO0FBQ2hDLElBQU1PLDBCQUEwQjtBQUNoQyxJQUFNSiwwQkFBMEI7QUFDaEMsSUFBTUcsZ0NBQWdDO0FBQ3RDLElBQU1RLGlDQUFpQztBQUN2QyxJQUFNRCxrQ0FBa0M7QUFDeEMsSUFBTWYsb0NBQW9DO0FBQzFDLElBQU1PLG9DQUFvQztBQUMxQyxJQUFNSixxQ0FBcUM7QUFDM0MsSUFBTVcsc0NBQXNDIn0=
@@ -29,16 +29,16 @@ function _create_class(Constructor, protoProps, staticProps) {
29
29
  return Constructor;
30
30
  }
31
31
  var MetastatementForMetavariableSubstitution = /*#__PURE__*/ function() {
32
- function MetastatementForMetavariableSubstitution(metavariableName, metastatementNode) {
32
+ function MetastatementForMetavariableSubstitution(metavariableNode, metastatementNode) {
33
33
  _class_call_check(this, MetastatementForMetavariableSubstitution);
34
- this.metavariableName = metavariableName;
34
+ this.metavariableNode = metavariableNode;
35
35
  this.metastatementNode = metastatementNode;
36
36
  }
37
37
  _create_class(MetastatementForMetavariableSubstitution, [
38
38
  {
39
- key: "getMetavariableName",
40
- value: function getMetavariableName() {
41
- return this.metavariableName;
39
+ key: "getMetavariableNode",
40
+ value: function getMetavariableNode() {
41
+ return this.metavariableNode;
42
42
  }
43
43
  },
44
44
  {
@@ -47,6 +47,13 @@ var MetastatementForMetavariableSubstitution = /*#__PURE__*/ function() {
47
47
  return this.metastatementNode;
48
48
  }
49
49
  },
50
+ {
51
+ key: "matchMetavariableNode",
52
+ value: function matchMetavariableNode(metavariableNode) {
53
+ var metavariableNodeMatches = this.metavariableNode.match(metavariableNode);
54
+ return metavariableNodeMatches;
55
+ }
56
+ },
50
57
  {
51
58
  key: "matchMetastatementNode",
52
59
  value: function matchMetastatementNode(metastatementNode) {
@@ -64,13 +71,13 @@ var MetastatementForMetavariableSubstitution = /*#__PURE__*/ function() {
64
71
  }
65
72
  ], [
66
73
  {
67
- key: "fromMetavariableNameAndMetastatementNode",
68
- value: function fromMetavariableNameAndMetastatementNode(metavariableName, metastatementNode) {
69
- var metastatementForMetavariableSubstitution = new MetastatementForMetavariableSubstitution(metavariableName, metastatementNode);
74
+ key: "fromMetavariableNodeAndMetastatementNode",
75
+ value: function fromMetavariableNodeAndMetastatementNode(metavariableNode, metastatementNode) {
76
+ var metastatementForMetavariableSubstitution = new MetastatementForMetavariableSubstitution(metavariableNode, metastatementNode);
70
77
  var bracketedMetastatementChildNode = (0, _metaproof.bracketedMetastatementChildNodeFromMetastatementNode)(metastatementNode);
71
78
  if (bracketedMetastatementChildNode !== null) {
72
79
  var _$metastatementNode = bracketedMetastatementChildNode; ///
73
- metastatementForMetavariableSubstitution = new MetastatementForMetavariableSubstitution(metavariableName, _$metastatementNode);
80
+ metastatementForMetavariableSubstitution = new MetastatementForMetavariableSubstitution(metavariableNode, _$metastatementNode);
74
81
  }
75
82
  return metastatementForMetavariableSubstitution;
76
83
  }
@@ -79,4 +86,4 @@ var MetastatementForMetavariableSubstitution = /*#__PURE__*/ function() {
79
86
  return MetastatementForMetavariableSubstitution;
80
87
  }();
81
88
 
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21NZXRhc3RhdGVtZW50Tm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvbWV0YXByb29mXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3RvcihtZXRhdmFyaWFibGVOYW1lLCBtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy5tZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOYW1lO1xuICB9XG5cbiAgZ2V0TWV0YXN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBtYXRjaE1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcztcblxuICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMubWV0YXN0YXRlbWVudE5vZGUubWF0Y2gobWV0YXN0YXRlbWVudE5vZGUpXG5cbiAgICBpZiAoIW1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcykge1xuICAgICAgY29uc3QgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgICBpZiAoYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGU7IC8vL1xuXG4gICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMubWV0YXN0YXRlbWVudE5vZGUubWF0Y2gobWV0YXN0YXRlbWVudE5vZGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRNZXRhc3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOYW1lLCBtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gbmV3IE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTmFtZSwgbWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3QgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZTsgLy8vXG5cbiAgICAgIG1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24gPSBuZXcgTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbihtZXRhdmFyaWFibGVOYW1lLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb247XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIiwibWV0YXZhcmlhYmxlTmFtZSIsIm1ldGFzdGF0ZW1lbnROb2RlIiwiZ2V0TWV0YXZhcmlhYmxlTmFtZSIsImdldE1ldGFzdGF0ZW1lbnROb2RlIiwibWF0Y2hNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSIsImJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tTWV0YXN0YXRlbWVudE5vZGUiLCJmcm9tTWV0YXZhcmlhYmxlTmFtZUFuZE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7eUJBRmdEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV0RCxJQUFBLEFBQU1BLHlEQUFELEFBQUw7YUFBTUEseUNBQ1BDLGdCQUFnQixFQUFFQyxpQkFBaUI7Z0NBRDVCRjtRQUVqQixJQUFJLENBQUNDLGdCQUFnQixHQUFHQTtRQUN4QixJQUFJLENBQUNDLGlCQUFpQixHQUFHQTs7a0JBSFJGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixnQkFBZ0I7WUFDOUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLGlCQUFpQjtZQUMvQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSx1QkFBdUJILGlCQUFpQjtnQkFDdEMsSUFBSUk7Z0JBRUpBLDJCQUEyQixJQUFJLENBQUNKLGlCQUFpQixDQUFDSyxLQUFLLENBQUNMO2dCQUV4RCxJQUFJLENBQUNJLDBCQUEwQjtvQkFDN0IsSUFBTUUsa0NBQWtDQyxJQUFBQSwrREFBb0QsRUFBQ1A7b0JBRTdGLElBQUlNLG9DQUFvQyxNQUFNO3dCQUM1QyxJQUFNTixzQkFBb0JNLGlDQUFpQyxHQUFHO3dCQUU5REYsMkJBQTJCLElBQUksQ0FBQ0osaUJBQWlCLENBQUNLLEtBQUssQ0FBQ0w7b0JBQzFEO2dCQUNGO2dCQUVBLE9BQU9JO1lBQ1Q7Ozs7WUFFT0ksS0FBQUE7bUJBQVAsU0FBT0EseUNBQXlDVCxnQkFBZ0IsRUFBRUMsaUJBQWlCO2dCQUNqRixJQUFJUywyQ0FBMkMsSUFqQzlCWCx5Q0FpQzJFQyxrQkFBa0JDO2dCQUU5RyxJQUFNTSxrQ0FBa0NDLElBQUFBLCtEQUFvRCxFQUFDUDtnQkFFN0YsSUFBSU0sb0NBQW9DLE1BQU07b0JBQzVDLElBQU1OLHNCQUFvQk0saUNBQWlDLEdBQUc7b0JBRTlERywyQ0FBMkMsSUF4QzVCWCx5Q0F3Q3lFQyxrQkFBa0JDO2dCQUM1RztnQkFFQSxPQUFPUztZQUNUOzs7V0E1Q21CWCJ9
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21NZXRhc3RhdGVtZW50Tm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvbWV0YXByb29mXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3RvcihtZXRhdmFyaWFibGVOb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGU7XG4gICAgdGhpcy5tZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOb2RlO1xuICB9XG5cbiAgZ2V0TWV0YXN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBtYXRjaE1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzID0gdGhpcy5tZXRhdmFyaWFibGVOb2RlLm1hdGNoKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzO1xuICB9XG5cbiAgbWF0Y2hNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG5cbiAgICBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSB0aGlzLm1ldGFzdGF0ZW1lbnROb2RlLm1hdGNoKG1ldGFzdGF0ZW1lbnROb2RlKVxuXG4gICAgaWYgKCFtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMpIHtcbiAgICAgIGNvbnN0IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgaWYgKGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgbWV0YXN0YXRlbWVudE5vZGUgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlOyAvLy9cblxuICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSB0aGlzLm1ldGFzdGF0ZW1lbnROb2RlLm1hdGNoKG1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21NZXRhdmFyaWFibGVOb2RlQW5kTWV0YXN0YXRlbWVudE5vZGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YXN0YXRlbWVudE5vZGUpIHtcbiAgICBsZXQgbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IG5ldyBNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uKG1ldGF2YXJpYWJsZU5vZGUsIG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmIChicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGU7IC8vL1xuXG4gICAgICBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gbmV3IE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTm9kZSwgbWV0YXN0YXRlbWVudE5vZGUpO1xuICAgIH1cblxuICAgIHJldHVybiBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uO1xuICB9XG59XG4iXSwibmFtZXMiOlsiTWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImdldE1ldGF2YXJpYWJsZU5vZGUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsIm1hdGNoTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzIiwibWF0Y2giLCJtYXRjaE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSIsImJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tTWV0YXN0YXRlbWVudE5vZGUiLCJmcm9tTWV0YXZhcmlhYmxlTm9kZUFuZE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7eUJBRmdEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV0RCxJQUFBLEFBQU1BLHlEQUFELEFBQUw7YUFBTUEseUNBQ1BDLGdCQUFnQixFQUFFQyxpQkFBaUI7Z0NBRDVCRjtRQUVqQixJQUFJLENBQUNDLGdCQUFnQixHQUFHQTtRQUN4QixJQUFJLENBQUNDLGlCQUFpQixHQUFHQTs7a0JBSFJGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixnQkFBZ0I7WUFDOUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLGlCQUFpQjtZQUMvQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JKLGdCQUFnQjtnQkFDcEMsSUFBTUssMEJBQTBCLElBQUksQ0FBQ0wsZ0JBQWdCLENBQUNNLEtBQUssQ0FBQ047Z0JBRTVELE9BQU9LO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsdUJBQXVCTixpQkFBaUI7Z0JBQ3RDLElBQUlPO2dCQUVKQSwyQkFBMkIsSUFBSSxDQUFDUCxpQkFBaUIsQ0FBQ0ssS0FBSyxDQUFDTDtnQkFFeEQsSUFBSSxDQUFDTywwQkFBMEI7b0JBQzdCLElBQU1DLGtDQUFrQ0MsSUFBQUEsK0RBQW9ELEVBQUNUO29CQUU3RixJQUFJUSxvQ0FBb0MsTUFBTTt3QkFDNUMsSUFBTVIsc0JBQW9CUSxpQ0FBaUMsR0FBRzt3QkFFOURELDJCQUEyQixJQUFJLENBQUNQLGlCQUFpQixDQUFDSyxLQUFLLENBQUNMO29CQUMxRDtnQkFDRjtnQkFFQSxPQUFPTztZQUNUOzs7O1lBRU9HLEtBQUFBO21CQUFQLFNBQU9BLHlDQUF5Q1gsZ0JBQWdCLEVBQUVDLGlCQUFpQjtnQkFDakYsSUFBSVcsMkNBQTJDLElBdkM5QmIseUNBdUMyRUMsa0JBQWtCQztnQkFFOUcsSUFBTVEsa0NBQWtDQyxJQUFBQSwrREFBb0QsRUFBQ1Q7Z0JBRTdGLElBQUlRLG9DQUFvQyxNQUFNO29CQUM1QyxJQUFNUixzQkFBb0JRLGlDQUFpQyxHQUFHO29CQUU5REcsMkNBQTJDLElBOUM1QmIseUNBOEN5RUMsa0JBQWtCQztnQkFDNUc7Z0JBRUEsT0FBT1c7WUFDVDs7O1dBbERtQmIifQ==
@@ -29,16 +29,16 @@ function _create_class(Constructor, protoProps, staticProps) {
29
29
  return Constructor;
30
30
  }
31
31
  var StatementForMetavariableSubstitution = /*#__PURE__*/ function() {
32
- function StatementForMetavariableSubstitution(metavariableName, statementNode) {
32
+ function StatementForMetavariableSubstitution(metavariableNode, statementNode) {
33
33
  _class_call_check(this, StatementForMetavariableSubstitution);
34
- this.metavariableName = metavariableName;
34
+ this.metavariableNode = metavariableNode;
35
35
  this.statementNode = statementNode;
36
36
  }
37
37
  _create_class(StatementForMetavariableSubstitution, [
38
38
  {
39
- key: "getMetavariableName",
40
- value: function getMetavariableName() {
41
- return this.metavariableName;
39
+ key: "getMetavariableNode",
40
+ value: function getMetavariableNode() {
41
+ return this.metavariableNode;
42
42
  }
43
43
  },
44
44
  {
@@ -61,16 +61,23 @@ var StatementForMetavariableSubstitution = /*#__PURE__*/ function() {
61
61
  }
62
62
  return statementNodeMatches;
63
63
  }
64
+ },
65
+ {
66
+ key: "matchMetavariableNode",
67
+ value: function matchMetavariableNode(metavariableNode) {
68
+ var metavariableNodeMatches = this.metavariableNode.match(metavariableNode);
69
+ return metavariableNodeMatches;
70
+ }
64
71
  }
65
72
  ], [
66
73
  {
67
- key: "fromMetavariableNameAndStatementNode",
68
- value: function fromMetavariableNameAndStatementNode(metavariableName, statementNode) {
69
- var statementForMetavariableSubstitution = new StatementForMetavariableSubstitution(metavariableName, statementNode);
74
+ key: "fromMetavariableNodeAndStatementNode",
75
+ value: function fromMetavariableNodeAndStatementNode(metavariableNode, statementNode) {
76
+ var statementForMetavariableSubstitution = new StatementForMetavariableSubstitution(metavariableNode, statementNode);
70
77
  var bracketedStatementChildNode = (0, _proof.bracketedStatementChildNodeFromStatementNode)(statementNode);
71
78
  if (bracketedStatementChildNode !== null) {
72
79
  var _$statementNode = bracketedStatementChildNode; ///
73
- statementForMetavariableSubstitution = new StatementForMetavariableSubstitution(metavariableName, _$statementNode);
80
+ statementForMetavariableSubstitution = new StatementForMetavariableSubstitution(metavariableNode, _$statementNode);
74
81
  }
75
82
  return statementForMetavariableSubstitution;
76
83
  }
@@ -79,4 +86,4 @@ var StatementForMetavariableSubstitution = /*#__PURE__*/ function() {
79
86
  return StatementForMetavariableSubstitution;
80
87
  }();
81
88
 
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcHJvb2ZcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3IobWV0YXZhcmlhYmxlTmFtZSwgc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy5zdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldE1ldGF2YXJpYWJsZU5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXZhcmlhYmxlTmFtZTtcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IHN0YXRlbWVudE5vZGVNYXRjaGVzO1xuXG4gICAgc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSB0aGlzLnN0YXRlbWVudE5vZGUubWF0Y2goc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBpZiAoIXN0YXRlbWVudE5vZGVNYXRjaGVzKSB7XG4gICAgICBjb25zdCBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBzdGF0ZW1lbnROb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlOyAvLy9cblxuICAgICAgICBzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMuc3RhdGVtZW50Tm9kZS5tYXRjaChzdGF0ZW1lbnROb2RlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmRTdGF0ZW1lbnROb2RlKG1ldGF2YXJpYWJsZU5hbWUsIHN0YXRlbWVudE5vZGUpIHtcbiAgICBsZXQgc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gbmV3IFN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbihtZXRhdmFyaWFibGVOYW1lLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZTsgLy8vXG5cbiAgICAgIHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IG5ldyBTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTmFtZSwgc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsIm1ldGF2YXJpYWJsZU5hbWUiLCJzdGF0ZW1lbnROb2RlIiwiZ2V0TWV0YXZhcmlhYmxlTmFtZSIsImdldFN0YXRlbWVudE5vZGUiLCJtYXRjaFN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoIiwiYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlIiwiYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlRnJvbVN0YXRlbWVudE5vZGUiLCJmcm9tTWV0YXZhcmlhYmxlTmFtZUFuZFN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O3FCQUZ3Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsSUFBQSxBQUFNQSxxREFBRCxBQUFMO2FBQU1BLHFDQUNQQyxnQkFBZ0IsRUFBRUMsYUFBYTtnQ0FEeEJGO1FBRWpCLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTs7a0JBSEpGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixnQkFBZ0I7WUFDOUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLGFBQWE7WUFDM0I7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsbUJBQW1CSCxhQUFhO2dCQUM5QixJQUFJSTtnQkFFSkEsdUJBQXVCLElBQUksQ0FBQ0osYUFBYSxDQUFDSyxLQUFLLENBQUNMO2dCQUVoRCxJQUFJLENBQUNJLHNCQUFzQjtvQkFDekIsSUFBTUUsOEJBQThCQyxJQUFBQSxtREFBNEMsRUFBQ1A7b0JBRWpGLElBQUlNLGdDQUFnQyxNQUFNO3dCQUN4QyxJQUFNTixrQkFBZ0JNLDZCQUE2QixHQUFHO3dCQUV0REYsdUJBQXVCLElBQUksQ0FBQ0osYUFBYSxDQUFDSyxLQUFLLENBQUNMO29CQUNsRDtnQkFDRjtnQkFFQSxPQUFPSTtZQUNUOzs7O1lBRU9JLEtBQUFBO21CQUFQLFNBQU9BLHFDQUFxQ1QsZ0JBQWdCLEVBQUVDLGFBQWE7Z0JBQ3pFLElBQUlTLHVDQUF1QyxJQWpDMUJYLHFDQWlDbUVDLGtCQUFrQkM7Z0JBRXRHLElBQU1NLDhCQUE4QkMsSUFBQUEsbURBQTRDLEVBQUNQO2dCQUVqRixJQUFJTSxnQ0FBZ0MsTUFBTTtvQkFDeEMsSUFBTU4sa0JBQWdCTSw2QkFBNkIsR0FBRztvQkFFdERHLHVDQUF1QyxJQXhDeEJYLHFDQXdDaUVDLGtCQUFrQkM7Z0JBQ3BHO2dCQUVBLE9BQU9TO1lBQ1Q7OztXQTVDbUJYIn0=
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcHJvb2ZcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3IobWV0YXZhcmlhYmxlTm9kZSwgc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGU7XG4gICAgdGhpcy5zdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldE1ldGF2YXJpYWJsZU5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXZhcmlhYmxlTm9kZTtcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IHN0YXRlbWVudE5vZGVNYXRjaGVzO1xuXG4gICAgc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSB0aGlzLnN0YXRlbWVudE5vZGUubWF0Y2goc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBpZiAoIXN0YXRlbWVudE5vZGVNYXRjaGVzKSB7XG4gICAgICBjb25zdCBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBzdGF0ZW1lbnROb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlOyAvLy9cblxuICAgICAgICBzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMuc3RhdGVtZW50Tm9kZS5tYXRjaChzdGF0ZW1lbnROb2RlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG4gIH1cblxuICBtYXRjaE1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzID0gdGhpcy5tZXRhdmFyaWFibGVOb2RlLm1hdGNoKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21NZXRhdmFyaWFibGVOb2RlQW5kU3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOb2RlLCBzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IG5ldyBTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTm9kZSwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmIChicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGU7IC8vL1xuXG4gICAgICBzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24gPSBuZXcgU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uKG1ldGF2YXJpYWJsZU5vZGUsIHN0YXRlbWVudE5vZGUpO1xuICAgIH1cblxuICAgIHJldHVybiBzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb247XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJtZXRhdmFyaWFibGVOb2RlIiwic3RhdGVtZW50Tm9kZSIsImdldE1ldGF2YXJpYWJsZU5vZGUiLCJnZXRTdGF0ZW1lbnROb2RlIiwibWF0Y2hTdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJtYXRjaCIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21TdGF0ZW1lbnROb2RlIiwibWF0Y2hNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZU1hdGNoZXMiLCJmcm9tTWV0YXZhcmlhYmxlTm9kZUFuZFN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O3FCQUZ3Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsSUFBQSxBQUFNQSxxREFBRCxBQUFMO2FBQU1BLHFDQUNQQyxnQkFBZ0IsRUFBRUMsYUFBYTtnQ0FEeEJGO1FBRWpCLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTs7a0JBSEpGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixnQkFBZ0I7WUFDOUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLGFBQWE7WUFDM0I7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsbUJBQW1CSCxhQUFhO2dCQUM5QixJQUFJSTtnQkFFSkEsdUJBQXVCLElBQUksQ0FBQ0osYUFBYSxDQUFDSyxLQUFLLENBQUNMO2dCQUVoRCxJQUFJLENBQUNJLHNCQUFzQjtvQkFDekIsSUFBTUUsOEJBQThCQyxJQUFBQSxtREFBNEMsRUFBQ1A7b0JBRWpGLElBQUlNLGdDQUFnQyxNQUFNO3dCQUN4QyxJQUFNTixrQkFBZ0JNLDZCQUE2QixHQUFHO3dCQUV0REYsdUJBQXVCLElBQUksQ0FBQ0osYUFBYSxDQUFDSyxLQUFLLENBQUNMO29CQUNsRDtnQkFDRjtnQkFFQSxPQUFPSTtZQUNUOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQlQsZ0JBQWdCO2dCQUNwQyxJQUFNVSwwQkFBMEIsSUFBSSxDQUFDVixnQkFBZ0IsQ0FBQ00sS0FBSyxDQUFDTjtnQkFFNUQsT0FBT1U7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxxQ0FBcUNYLGdCQUFnQixFQUFFQyxhQUFhO2dCQUN6RSxJQUFJVyx1Q0FBdUMsSUF2QzFCYixxQ0F1Q21FQyxrQkFBa0JDO2dCQUV0RyxJQUFNTSw4QkFBOEJDLElBQUFBLG1EQUE0QyxFQUFDUDtnQkFFakYsSUFBSU0sZ0NBQWdDLE1BQU07b0JBQ3hDLElBQU1OLGtCQUFnQk0sNkJBQTZCLEdBQUc7b0JBRXRESyx1Q0FBdUMsSUE5Q3hCYixxQ0E4Q2lFQyxrQkFBa0JDO2dCQUNwRztnQkFFQSxPQUFPVztZQUNUOzs7V0FsRG1CYiJ9
@@ -28,16 +28,16 @@ function _create_class(Constructor, protoProps, staticProps) {
28
28
  return Constructor;
29
29
  }
30
30
  var TermForVariableSubstitution = /*#__PURE__*/ function() {
31
- function TermForVariableSubstitution(variableName, termNode) {
31
+ function TermForVariableSubstitution(variableNode, termNode) {
32
32
  _class_call_check(this, TermForVariableSubstitution);
33
- this.variableName = variableName;
33
+ this.variableNode = variableNode;
34
34
  this.termNode = termNode;
35
35
  }
36
36
  _create_class(TermForVariableSubstitution, [
37
37
  {
38
- key: "getVariableName",
39
- value: function getVariableName() {
40
- return this.variableName;
38
+ key: "getVariableNode",
39
+ value: function getVariableNode() {
40
+ return this.variableNode;
41
41
  }
42
42
  },
43
43
  {
@@ -49,16 +49,22 @@ var TermForVariableSubstitution = /*#__PURE__*/ function() {
49
49
  {
50
50
  key: "matchTermNode",
51
51
  value: function matchTermNode(termNode) {
52
- var termNodeMatches;
53
- termNodeMatches = this.termNode.match(termNode);
52
+ var termNodeMatches = this.termNode.match(termNode);
54
53
  return termNodeMatches;
55
54
  }
55
+ },
56
+ {
57
+ key: "matchVariableNode",
58
+ value: function matchVariableNode(variableNode) {
59
+ var variableNodeMatches = this.variableNode.match(variableNode);
60
+ return variableNodeMatches;
61
+ }
56
62
  }
57
63
  ], [
58
64
  {
59
- key: "fromVariableNameAndTermNode",
60
- value: function fromVariableNameAndTermNode(variableName, termNode) {
61
- var termForVariableSubstitution = new TermForVariableSubstitution(variableName, termNode);
65
+ key: "fromVariableNodeAndTermNode",
66
+ value: function fromVariableNodeAndTermNode(variableNode, termNode) {
67
+ var termForVariableSubstitution = new TermForVariableSubstitution(variableNode, termNode);
62
68
  return termForVariableSubstitution;
63
69
  }
64
70
  }
@@ -66,4 +72,4 @@ var TermForVariableSubstitution = /*#__PURE__*/ function() {
66
72
  return TermForVariableSubstitution;
67
73
  }();
68
74
 
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vdGVybUZvclZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3Rvcih2YXJpYWJsZU5hbWUsIHRlcm1Ob2RlKSB7XG4gICAgdGhpcy52YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy50ZXJtTm9kZSA9IHRlcm1Ob2RlO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlTmFtZTtcbiAgfVxuXG4gIGdldFRlcm1Ob2RlKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm1Ob2RlO1xuICB9XG5cbiAgbWF0Y2hUZXJtTm9kZSh0ZXJtTm9kZSkge1xuICAgIGxldCB0ZXJtTm9kZU1hdGNoZXM7XG5cbiAgICB0ZXJtTm9kZU1hdGNoZXMgPSB0aGlzLnRlcm1Ob2RlLm1hdGNoKHRlcm1Ob2RlKTtcblxuICAgIHJldHVybiB0ZXJtTm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlTmFtZUFuZFRlcm1Ob2RlKHZhcmlhYmxlTmFtZSwgdGVybU5vZGUpIHtcbiAgICBjb25zdCB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24gPSBuZXcgVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uKHZhcmlhYmxlTmFtZSwgdGVybU5vZGUpO1xuXG4gICAgcmV0dXJuIHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiIsInZhcmlhYmxlTmFtZSIsInRlcm1Ob2RlIiwiZ2V0VmFyaWFibGVOYW1lIiwiZ2V0VGVybU5vZGUiLCJtYXRjaFRlcm1Ob2RlIiwidGVybU5vZGVNYXRjaGVzIiwibWF0Y2giLCJmcm9tVmFyaWFibGVOYW1lQW5kVGVybU5vZGUiLCJ0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBRXFCQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFOLElBQUEsQUFBTUEsNENBQUQsQUFBTDthQUFNQSw0QkFDUEMsWUFBWSxFQUFFQyxRQUFRO2dDQURmRjtRQUVqQixJQUFJLENBQUNDLFlBQVksR0FBR0E7UUFDcEIsSUFBSSxDQUFDQyxRQUFRLEdBQUdBOztrQkFIQ0Y7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFlBQVk7WUFDMUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFFBQVE7WUFDdEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBY0gsUUFBUTtnQkFDcEIsSUFBSUk7Z0JBRUpBLGtCQUFrQixJQUFJLENBQUNKLFFBQVEsQ0FBQ0ssS0FBSyxDQUFDTDtnQkFFdEMsT0FBT0k7WUFDVDs7OztZQUVPRSxLQUFBQTttQkFBUCxTQUFPQSw0QkFBNEJQLFlBQVksRUFBRUMsUUFBUTtnQkFDdkQsSUFBTU8sOEJBQThCLElBdkJuQlQsNEJBdUJtREMsY0FBY0M7Z0JBRWxGLE9BQU9PO1lBQ1Q7OztXQTFCbUJUIn0=
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vdGVybUZvclZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3Rvcih2YXJpYWJsZU5vZGUsIHRlcm1Ob2RlKSB7XG4gICAgdGhpcy52YXJpYWJsZU5vZGUgPSB2YXJpYWJsZU5vZGU7XG4gICAgdGhpcy50ZXJtTm9kZSA9IHRlcm1Ob2RlO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVOb2RlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlTm9kZTtcbiAgfVxuXG4gIGdldFRlcm1Ob2RlKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm1Ob2RlO1xuICB9XG5cbiAgbWF0Y2hUZXJtTm9kZSh0ZXJtTm9kZSkge1xuICAgIGNvbnN0IHRlcm1Ob2RlTWF0Y2hlcyA9IHRoaXMudGVybU5vZGUubWF0Y2godGVybU5vZGUpO1xuXG4gICAgcmV0dXJuIHRlcm1Ob2RlTWF0Y2hlcztcbiAgfVxuXG4gIG1hdGNoVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSkge1xuICAgIGNvbnN0IHZhcmlhYmxlTm9kZU1hdGNoZXMgPSB0aGlzLnZhcmlhYmxlTm9kZS5tYXRjaCh2YXJpYWJsZU5vZGUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlTm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlTm9kZUFuZFRlcm1Ob2RlKHZhcmlhYmxlTm9kZSwgdGVybU5vZGUpIHtcbiAgICBjb25zdCB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24gPSBuZXcgVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uKHZhcmlhYmxlTm9kZSwgdGVybU5vZGUpO1xuXG4gICAgcmV0dXJuIHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiIsInZhcmlhYmxlTm9kZSIsInRlcm1Ob2RlIiwiZ2V0VmFyaWFibGVOb2RlIiwiZ2V0VGVybU5vZGUiLCJtYXRjaFRlcm1Ob2RlIiwidGVybU5vZGVNYXRjaGVzIiwibWF0Y2giLCJtYXRjaFZhcmlhYmxlTm9kZSIsInZhcmlhYmxlTm9kZU1hdGNoZXMiLCJmcm9tVmFyaWFibGVOb2RlQW5kVGVybU5vZGUiLCJ0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBRXFCQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFOLElBQUEsQUFBTUEsNENBQUQsQUFBTDthQUFNQSw0QkFDUEMsWUFBWSxFQUFFQyxRQUFRO2dDQURmRjtRQUVqQixJQUFJLENBQUNDLFlBQVksR0FBR0E7UUFDcEIsSUFBSSxDQUFDQyxRQUFRLEdBQUdBOztrQkFIQ0Y7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFlBQVk7WUFDMUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFFBQVE7WUFDdEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBY0gsUUFBUTtnQkFDcEIsSUFBTUksa0JBQWtCLElBQUksQ0FBQ0osUUFBUSxDQUFDSyxLQUFLLENBQUNMO2dCQUU1QyxPQUFPSTtZQUNUOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQlAsWUFBWTtnQkFDNUIsSUFBTVEsc0JBQXNCLElBQUksQ0FBQ1IsWUFBWSxDQUFDTSxLQUFLLENBQUNOO2dCQUVwRCxPQUFPUTtZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLDRCQUE0QlQsWUFBWSxFQUFFQyxRQUFRO2dCQUN2RCxJQUFNUyw4QkFBOEIsSUEzQm5CWCw0QkEyQm1EQyxjQUFjQztnQkFFbEYsT0FBT1M7WUFDVDs7O1dBOUJtQlgifQ==