occam-verify-cli 0.0.464 → 0.0.466

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 (46) hide show
  1. package/lib/antecedent.js +214 -0
  2. package/lib/axiom.js +93 -78
  3. package/lib/axiomLemmaTheorem.js +190 -0
  4. package/lib/consequent.js +157 -0
  5. package/lib/constants.js +9 -1
  6. package/lib/lemma.js +93 -78
  7. package/lib/ruleNames.js +4 -4
  8. package/lib/substitution.js +123 -0
  9. package/lib/theorem.js +93 -78
  10. package/lib/utilities/statement.js +45 -0
  11. package/lib/utilities/string.js +6 -6
  12. package/lib/verify/antecedentOrAntecedents.js +38 -0
  13. package/lib/verify/axiom.js +15 -14
  14. package/lib/verify/conditinalIndicative.js +32 -0
  15. package/lib/verify/{indicativeConditional.js → conditionalIndicative.js} +10 -10
  16. package/lib/verify/consequent.js +36 -0
  17. package/lib/verify/derivation.js +1 -1
  18. package/lib/verify/lemma.js +25 -19
  19. package/lib/verify/proof.js +26 -11
  20. package/lib/verify/statement/qualified.js +16 -4
  21. package/lib/verify/theorem.js +22 -17
  22. package/lib/verify/unconditionalIndicative.js +28 -0
  23. package/package.json +3 -3
  24. package/src/antecedent.js +235 -0
  25. package/src/axiom.js +5 -95
  26. package/src/axiomLemmaTheorem.js +190 -0
  27. package/src/consequent.js +187 -0
  28. package/src/constants.js +2 -0
  29. package/src/lemma.js +5 -95
  30. package/src/ruleNames.js +1 -1
  31. package/src/substitution.js +130 -0
  32. package/src/theorem.js +5 -95
  33. package/src/utilities/statement.js +50 -0
  34. package/src/utilities/string.js +6 -6
  35. package/src/verify/antecedentOrAntecedents.js +40 -0
  36. package/src/verify/axiom.js +21 -16
  37. package/src/verify/conditinalIndicative.js +31 -0
  38. package/src/verify/conditionalIndicative.js +29 -0
  39. package/src/verify/consequent.js +36 -0
  40. package/src/verify/derivation.js +1 -1
  41. package/src/verify/lemma.js +38 -21
  42. package/src/verify/proof.js +32 -14
  43. package/src/verify/statement/qualified.js +15 -6
  44. package/src/verify/theorem.js +32 -20
  45. package/src/verify/unconditionalIndicative.js +24 -0
  46. package/src/verify/indicativeConditional.js +0 -29
package/lib/lemma.js CHANGED
@@ -8,9 +8,14 @@ Object.defineProperty(exports, "default", {
8
8
  return Lemma;
9
9
  }
10
10
  });
11
- var _label = /*#__PURE__*/ _interopRequireDefault(require("./label"));
11
+ var _axiomLemmaTheorem = /*#__PURE__*/ _interopRequireDefault(require("./axiomLemmaTheorem"));
12
12
  var _kinds = require("./kinds");
13
- var _string = require("./utilities/string");
13
+ function _assertThisInitialized(self) {
14
+ if (self === void 0) {
15
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
16
+ }
17
+ return self;
18
+ }
14
19
  function _classCallCheck(instance, Constructor) {
15
20
  if (!(instance instanceof Constructor)) {
16
21
  throw new TypeError("Cannot call a class as a function");
@@ -30,97 +35,107 @@ function _createClass(Constructor, protoProps, staticProps) {
30
35
  if (staticProps) _defineProperties(Constructor, staticProps);
31
36
  return Constructor;
32
37
  }
38
+ function _defineProperty(obj, key, value) {
39
+ if (key in obj) {
40
+ Object.defineProperty(obj, key, {
41
+ value: value,
42
+ enumerable: true,
43
+ configurable: true,
44
+ writable: true
45
+ });
46
+ } else {
47
+ obj[key] = value;
48
+ }
49
+ return obj;
50
+ }
51
+ function _getPrototypeOf(o) {
52
+ _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
53
+ return o.__proto__ || Object.getPrototypeOf(o);
54
+ };
55
+ return _getPrototypeOf(o);
56
+ }
57
+ function _inherits(subClass, superClass) {
58
+ if (typeof superClass !== "function" && superClass !== null) {
59
+ throw new TypeError("Super expression must either be null or a function");
60
+ }
61
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
62
+ constructor: {
63
+ value: subClass,
64
+ writable: true,
65
+ configurable: true
66
+ }
67
+ });
68
+ if (superClass) _setPrototypeOf(subClass, superClass);
69
+ }
33
70
  function _interopRequireDefault(obj) {
34
71
  return obj && obj.__esModule ? obj : {
35
72
  default: obj
36
73
  };
37
74
  }
38
- var Lemma = /*#__PURE__*/ function() {
39
- function Lemma(labels, unqualifiedStatementNode, indicativeConditionalNode) {
40
- _classCallCheck(this, Lemma);
41
- this.labels = labels;
42
- this.unqualifiedStatementNode = unqualifiedStatementNode;
43
- this.indicativeConditionalNode = indicativeConditionalNode;
75
+ function _possibleConstructorReturn(self, call) {
76
+ if (call && (_typeof(call) === "object" || typeof call === "function")) {
77
+ return call;
44
78
  }
45
- _createClass(Lemma, [
46
- {
47
- key: "getLabels",
48
- value: function getLabels() {
49
- return this.labels;
50
- }
51
- },
52
- {
53
- key: "getUnqualifiedStatementNode",
54
- value: function getUnqualifiedStatementNode() {
55
- return this.unqualifiedStatementNode;
56
- }
57
- },
58
- {
59
- key: "getIndicativeConditionalNode",
60
- value: function getIndicativeConditionalNode() {
61
- return this.indicativeConditionalNode;
62
- }
63
- },
64
- {
65
- key: "matchLabelName",
66
- value: function matchLabelName(labelName) {
67
- var matchesLabelName = this.labels.some(function(label) {
68
- var name = labelName, labelMatchesName = label.matchName(name);
69
- if (labelMatchesName) {
70
- return true;
71
- }
72
- });
73
- return matchesLabelName;
74
- }
75
- },
76
- {
77
- key: "toJSON",
78
- value: function toJSON() {
79
- var labelsJSON = this.labels.map(function(label) {
80
- var labelJSON = label.toJSON();
81
- return labelJSON;
82
- }), unqualifiedStatementString = (0, _string.nodeAsString)(this.unqalifiedStatementNode), indicativeConditionalString = (0, _string.nodeAsString)(this.indicativeConditionalNode), kind = _kinds.LEMMA_KIND, labels = labelsJSON, unqualifiedStatement = unqualifiedStatementString, indicativeConditional = indicativeConditionalString, json = {
83
- kind: kind,
84
- labels: labels,
85
- unqualifiedStatement: unqualifiedStatement,
86
- indicativeConditional: indicativeConditional
87
- };
88
- return json;
89
- }
79
+ return _assertThisInitialized(self);
80
+ }
81
+ function _setPrototypeOf(o, p) {
82
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
83
+ o.__proto__ = p;
84
+ return o;
85
+ };
86
+ return _setPrototypeOf(o, p);
87
+ }
88
+ var _typeof = function(obj) {
89
+ "@swc/helpers - typeof";
90
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
91
+ };
92
+ function _isNativeReflectConstruct() {
93
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
94
+ if (Reflect.construct.sham) return false;
95
+ if (typeof Proxy === "function") return true;
96
+ try {
97
+ Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
98
+ return true;
99
+ } catch (e) {
100
+ return false;
101
+ }
102
+ }
103
+ function _createSuper(Derived) {
104
+ var hasNativeReflectConstruct = _isNativeReflectConstruct();
105
+ return function _createSuperInternal() {
106
+ var Super = _getPrototypeOf(Derived), result;
107
+ if (hasNativeReflectConstruct) {
108
+ var NewTarget = _getPrototypeOf(this).constructor;
109
+ result = Reflect.construct(Super, arguments, NewTarget);
110
+ } else {
111
+ result = Super.apply(this, arguments);
90
112
  }
91
- ], [
113
+ return _possibleConstructorReturn(this, result);
114
+ };
115
+ }
116
+ var Lemma = /*#__PURE__*/ function(AxiomLemmaTheorem) {
117
+ _inherits(Lemma, AxiomLemmaTheorem);
118
+ var _super = _createSuper(Lemma);
119
+ function Lemma() {
120
+ _classCallCheck(this, Lemma);
121
+ return _super.apply(this, arguments);
122
+ }
123
+ _createClass(Lemma, null, [
92
124
  {
93
125
  key: "fromJSON",
94
126
  value: function fromJSON(json, releaseContext) {
95
- var labels = json.labels;
96
- var labelsJSON = labels; ///
97
- labels = labelsJSON.map(function(labelJSON) {
98
- var _$json = labelJSON, label = _label.default.fromJSON(_$json, releaseContext);
99
- return label;
100
- });
101
- var unqualifiedStatement = json.unqualifiedStatement, indicativeConditional = json.indicativeConditional;
102
- var unqualifiedStatementNode = null, indicativeConditionalNode = null;
103
- if (unqualifiedStatement !== null) {
104
- var unqualifiedStatementString = unqualifiedStatement; ///
105
- unqualifiedStatementNode = (0, _string.unqualifiedStatementNodeFromUnqualifiedStatementString)(unqualifiedStatementString, releaseContext);
106
- }
107
- if (indicativeConditional !== null) {
108
- var indicativeConditionalString = indicativeConditional; ///
109
- indicativeConditionalNode = (0, _string.indicativeConditionalNodeFromIndicativeConditionalString)(indicativeConditionalString, releaseContext);
110
- }
111
- var lemma = new Lemma(labels, unqualifiedStatementNode, indicativeConditionalNode);
112
- return lemma;
127
+ return _axiomLemmaTheorem.default.fromJSON(Lemma, json);
113
128
  }
114
129
  },
115
130
  {
116
- key: "fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode",
117
- value: function fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode(labels, unqualifiedStatementNode, indicativeConditionalNode) {
118
- var lemma = new Lemma(labels, unqualifiedStatementNode, indicativeConditionalNode);
119
- return lemma;
131
+ key: "fromLabelsAntecedentsAndConsequent",
132
+ value: function fromLabelsAntecedentsAndConsequent(labels, antecedents, consequent) {
133
+ return _axiomLemmaTheorem.default.fromLabelsAntecedentsAndConsequent(Lemma, labels, antecedents, consequent);
120
134
  }
121
135
  }
122
136
  ]);
123
137
  return Lemma;
124
- }();
138
+ }(_axiomLemmaTheorem.default);
139
+ _defineProperty(Lemma, "kind", _kinds.LEMMA_KIND);
125
140
 
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sZW1tYS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IExhYmVsIGZyb20gXCIuL2xhYmVsXCI7XG5cbmltcG9ydCB7IExFTU1BX0tJTkQgfSBmcm9tIFwiLi9raW5kc1wiO1xuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5pbXBvcnQgeyB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcsIGluZGljYXRpdmVDb25kaXRpb25hbE5vZGVGcm9tSW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMZW1tYSB7XG4gIGNvbnN0cnVjdG9yKGxhYmVscywgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlKSB7XG4gICAgdGhpcy5sYWJlbHMgPSBsYWJlbHM7XG4gICAgdGhpcy51bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGU7XG4gICAgdGhpcy5pbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlID0gaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZTtcbiAgfVxuXG4gIGdldExhYmVscygpIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbHM7XG4gIH1cblxuICBnZXRVbnF1YWxpZmllZFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0SW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5pbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlO1xuICB9XG5cbiAgbWF0Y2hMYWJlbE5hbWUobGFiZWxOYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc0xhYmVsTmFtZSA9IHRoaXMubGFiZWxzLnNvbWUoKGxhYmVsKSA9PiB7XG4gICAgICBjb25zdCBuYW1lID0gbGFiZWxOYW1lLCAvLy9cbiAgICAgICAgbGFiZWxNYXRjaGVzTmFtZSA9IGxhYmVsLm1hdGNoTmFtZShuYW1lKTtcblxuICAgICAgaWYgKGxhYmVsTWF0Y2hlc05hbWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbWF0Y2hlc0xhYmVsTmFtZTtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBsYWJlbHNKU09OID0gdGhpcy5sYWJlbHMubWFwKChsYWJlbCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbGFiZWxKU09OID0gbGFiZWwudG9KU09OKCk7XG5cbiAgICAgICAgICAgIHJldHVybiBsYWJlbEpTT047XG4gICAgICAgICAgfSksXG4gICAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy51bnFhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMuaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSksXG4gICAgICAgICAga2luZCA9IExFTU1BX0tJTkQsXG4gICAgICAgICAgbGFiZWxzID0gbGFiZWxzSlNPTiwgIC8vL1xuICAgICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50ID0gdW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcsICAvLy9cbiAgICAgICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWwgPSBpbmRpY2F0aXZlQ29uZGl0aW9uYWxTdHJpbmcsICAvLy9cbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAga2luZCxcbiAgICAgICAgICAgIGxhYmVscyxcbiAgICAgICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50LFxuICAgICAgICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KSB7XG4gICAgbGV0IHsgbGFiZWxzIH0gPSBqc29uO1xuXG4gICAgY29uc3QgbGFiZWxzSlNPTiA9IGxhYmVsczsgIC8vL1xuXG4gICAgbGFiZWxzID0gbGFiZWxzSlNPTi5tYXAoKGxhYmVsSlNPTikgPT4ge1xuICAgICAgY29uc3QganNvbiA9IGxhYmVsSlNPTiwgLy8vXG4gICAgICAgICAgICBsYWJlbCA9IExhYmVsLmZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KTtcblxuICAgICAgcmV0dXJuIGxhYmVsO1xuICAgIH0pO1xuXG4gICAgbGV0IHsgdW5xdWFsaWZpZWRTdGF0ZW1lbnQsIGluZGljYXRpdmVDb25kaXRpb25hbCB9ID0ganNvbjtcblxuICAgIGxldCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlID0gbnVsbDtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudCAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSB1bnF1YWxpZmllZFN0YXRlbWVudDsgIC8vL1xuXG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcodW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcsIHJlbGVhc2VDb250ZXh0KTtcbiAgICB9XG5cbiAgICBpZiAoaW5kaWNhdGl2ZUNvbmRpdGlvbmFsICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxTdHJpbmcgPSBpbmRpY2F0aXZlQ29uZGl0aW9uYWw7ICAvLy9cblxuICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSA9IGluZGljYXRpdmVDb25kaXRpb25hbE5vZGVGcm9tSW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nKGluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZywgcmVsZWFzZUNvbnRleHQpO1xuICAgIH1cblxuICAgIGNvbnN0IGxlbW1hID0gbmV3IExlbW1hKGxhYmVscywgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlKTtcblxuICAgIHJldHVybiBsZW1tYTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTGFiZWxzVW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlQW5kSW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZShsYWJlbHMsIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSkge1xuICAgIGNvbnN0IGxlbW1hID0gbmV3IExlbW1hKGxhYmVscywgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlKTtcblxuICAgIHJldHVybiBsZW1tYTtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJMZW1tYSIsImxhYmVscyIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImluZGljYXRpdmVDb25kaXRpb25hbE5vZGUiLCJnZXRMYWJlbHMiLCJnZXRVbnF1YWxpZmllZFN0YXRlbWVudE5vZGUiLCJnZXRJbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlIiwibWF0Y2hMYWJlbE5hbWUiLCJsYWJlbE5hbWUiLCJtYXRjaGVzTGFiZWxOYW1lIiwic29tZSIsImxhYmVsIiwibmFtZSIsImxhYmVsTWF0Y2hlc05hbWUiLCJtYXRjaE5hbWUiLCJ0b0pTT04iLCJsYWJlbHNKU09OIiwibWFwIiwibGFiZWxKU09OIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ1bnFhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZyIsImtpbmQiLCJMRU1NQV9LSU5EIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnQiLCJpbmRpY2F0aXZlQ29uZGl0aW9uYWwiLCJqc29uIiwiZnJvbUpTT04iLCJyZWxlYXNlQ29udGV4dCIsIkxhYmVsIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZUZyb21JbmRpY2F0aXZlQ29uZGl0aW9uYWxTdHJpbmciLCJsZW1tYSIsImZyb21MYWJlbHNVbnF1YWxpZmllZFN0YXRlbWVudE5vZGVBbmRJbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVNxQkE7OzswREFQSDtxQkFFUztzQkFDRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlkLElBQUEsQUFBTUEsc0JBQU47YUFBTUEsTUFDUEMsTUFBTSxFQUFFQyx3QkFBd0IsRUFBRUMseUJBQXlCOzhCQURwREg7UUFFakIsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyx3QkFBd0IsR0FBR0E7UUFDaEMsSUFBSSxDQUFDQyx5QkFBeUIsR0FBR0E7O2lCQUpoQkg7O1lBT25CSSxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWTtnQkFDVixPQUFPLElBQUksQ0FBQ0gsTUFBTTtZQUNwQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQSw4QkFBOEI7Z0JBQzVCLE9BQU8sSUFBSSxDQUFDSCx3QkFBd0I7WUFDdEM7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUEsK0JBQStCO2dCQUM3QixPQUFPLElBQUksQ0FBQ0gseUJBQXlCO1lBQ3ZDOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVDLFNBQVMsRUFBRTtnQkFDeEIsSUFBTUMsbUJBQW1CLElBQUksQ0FBQ1IsTUFBTSxDQUFDUyxJQUFJLENBQUMsU0FBQ0MsT0FBVTtvQkFDbkQsSUFBTUMsT0FBT0osV0FDWEssbUJBQW1CRixNQUFNRyxTQUFTLENBQUNGO29CQUVyQyxJQUFJQyxrQkFBa0I7d0JBQ3BCLE9BQU8sSUFBSTtvQkFDYixDQUFDO2dCQUNIO2dCQUVBLE9BQU9KO1lBQ1Q7OztZQUVBTSxLQUFBQTttQkFBQUEsU0FBQUEsU0FBUztnQkFDUCxJQUFNQyxhQUFhLElBQUksQ0FBQ2YsTUFBTSxDQUFDZ0IsR0FBRyxDQUFDLFNBQUNOLE9BQVU7b0JBQ3RDLElBQU1PLFlBQVlQLE1BQU1JLE1BQU07b0JBRTlCLE9BQU9HO2dCQUNULElBQ0FDLDZCQUE2QkMsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNDLHVCQUF1QixHQUN0RUMsOEJBQThCRixJQUFBQSxvQkFBWSxFQUFDLElBQUksQ0FBQ2pCLHlCQUF5QixHQUN6RW9CLE9BQU9DLGlCQUFVLEVBQ2pCdkIsU0FBU2UsWUFDVFMsdUJBQXVCTiw0QkFDdkJPLHdCQUF3QkosNkJBQ3hCSyxPQUFPO29CQUNMSixNQUFBQTtvQkFDQXRCLFFBQUFBO29CQUNBd0Isc0JBQUFBO29CQUNBQyx1QkFBQUE7Z0JBQ0Y7Z0JBRU4sT0FBT0M7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTRCxJQUFJLEVBQUVFLGNBQWMsRUFBRTtnQkFDcEMsSUFBSSxBQUFFNUIsU0FBVzBCLEtBQVgxQjtnQkFFTixJQUFNZSxhQUFhZixRQUFTLEdBQUc7Z0JBRS9CQSxTQUFTZSxXQUFXQyxHQUFHLENBQUMsU0FBQ0MsV0FBYztvQkFDckMsSUFBTVMsU0FBT1QsV0FDUFAsUUFBUW1CLGNBQUssQ0FBQ0YsUUFBUSxDQUFDRCxRQUFNRTtvQkFFbkMsT0FBT2xCO2dCQUNUO2dCQUVBLElBQU1jLHVCQUFnREUsS0FBaERGLHNCQUFzQkMsd0JBQTBCQyxLQUExQkQ7Z0JBRTVCLElBQUl4QiwyQkFBMkIsSUFBSSxFQUMvQkMsNEJBQTRCLElBQUk7Z0JBRXBDLElBQUlzQix5QkFBeUIsSUFBSSxFQUFFO29CQUNqQyxJQUFNTiw2QkFBNkJNLHNCQUF1QixHQUFHO29CQUU3RHZCLDJCQUEyQjZCLElBQUFBLDhEQUFzRCxFQUFDWiw0QkFBNEJVO2dCQUNoSCxDQUFDO2dCQUVELElBQUlILDBCQUEwQixJQUFJLEVBQUU7b0JBQ2xDLElBQU1KLDhCQUE4QkksdUJBQXdCLEdBQUc7b0JBRS9EdkIsNEJBQTRCNkIsSUFBQUEsZ0VBQXdELEVBQUNWLDZCQUE2Qk87Z0JBQ3BILENBQUM7Z0JBRUQsSUFBTUksUUFBUSxJQW5GR2pDLE1BbUZPQyxRQUFRQywwQkFBMEJDO2dCQUUxRCxPQUFPOEI7WUFDVDs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLCtEQUErRGpDLE1BQU0sRUFBRUMsd0JBQXdCLEVBQUVDLHlCQUF5QixFQUFFO2dCQUNqSSxJQUFNOEIsUUFBUSxJQXpGR2pDLE1BeUZPQyxRQUFRQywwQkFBMEJDO2dCQUUxRCxPQUFPOEI7WUFDVDs7O1dBNUZtQmpDIn0=
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sZW1tYS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEF4aW9tTGVtbWFUaGVvcmVtIGZyb20gXCIuL2F4aW9tTGVtbWFUaGVvcmVtXCI7XG5cbmltcG9ydCB7IExFTU1BX0tJTkQgfSBmcm9tIFwiLi9raW5kc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMZW1tYSBleHRlbmRzIEF4aW9tTGVtbWFUaGVvcmVtIHtcbiAgc3RhdGljIGtpbmQgPSBMRU1NQV9LSU5EO1xuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCByZWxlYXNlQ29udGV4dCkgeyByZXR1cm4gQXhpb21MZW1tYVRoZW9yZW0uZnJvbUpTT04oTGVtbWEsIGpzb24pOyB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNBbnRlY2VkZW50c0FuZENvbnNlcXVlbnQobGFiZWxzLCBhbnRlY2VkZW50cywgY29uc2VxdWVudCkgeyByZXR1cm4gQXhpb21MZW1tYVRoZW9yZW0uZnJvbUxhYmVsc0FudGVjZWRlbnRzQW5kQ29uc2VxdWVudChMZW1tYSwgbGFiZWxzLCBhbnRlY2VkZW50cywgY29uc2VxdWVudCk7IH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiTGVtbWEiLCJmcm9tSlNPTiIsImpzb24iLCJyZWxlYXNlQ29udGV4dCIsIkF4aW9tTGVtbWFUaGVvcmVtIiwiZnJvbUxhYmVsc0FudGVjZWRlbnRzQW5kQ29uc2VxdWVudCIsImxhYmVscyIsImFudGVjZWRlbnRzIiwiY29uc2VxdWVudCIsImtpbmQiLCJMRU1NQV9LSU5EIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7OztzRUFKUztxQkFFSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFWixJQUFBLEFBQU1BLHNCQUFOO2NBQU1BOzhCQUFBQTthQUFBQTs4QkFBQUE7OztpQkFBQUE7O1lBR1pDLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNDLElBQUksRUFBRUMsY0FBYyxFQUFFO2dCQUFFLE9BQU9DLDBCQUFpQixDQUFDSCxRQUFRLENBSHRERCxPQUc4REU7WUFBTzs7O1lBRWpGRyxLQUFBQTttQkFBUCxTQUFPQSxtQ0FBbUNDLE1BQU0sRUFBRUMsV0FBVyxFQUFFQyxVQUFVLEVBQUU7Z0JBQUUsT0FBT0osMEJBQWlCLENBQUNDLGtDQUFrQyxDQUxySEwsT0FLNkhNLFFBQVFDLGFBQWFDO1lBQWE7OztXQUwvSlI7RUFBY0ksMEJBQWlCO0FBQ2xELGdCQURtQkosT0FDWlMsUUFBT0MsaUJBQVUifQ==
package/lib/ruleNames.js CHANGED
@@ -33,8 +33,8 @@ _export(exports, {
33
33
  UNQUALIFIED_STATEMENT_RULE_NAME: function() {
34
34
  return UNQUALIFIED_STATEMENT_RULE_NAME;
35
35
  },
36
- INDICATIVE_CONDITIONAL_RULE_NAME: function() {
37
- return INDICATIVE_CONDITIONAL_RULE_NAME;
36
+ CONDITIONAL_INDICATIVE_RULE_NAME: function() {
37
+ return CONDITIONAL_INDICATIVE_RULE_NAME;
38
38
  },
39
39
  COMBINATOR_DECLARATION_RULE_NAME: function() {
40
40
  return COMBINATOR_DECLARATION_RULE_NAME;
@@ -57,10 +57,10 @@ var METAVARIABLE_RULE_NAME = "metavariable";
57
57
  var METASTATEMENT_RULE_NAME = "metastatement";
58
58
  var META_SUBPROOF_RULE_NAME = "metaSubproof";
59
59
  var UNQUALIFIED_STATEMENT_RULE_NAME = "unqualifiedStatement";
60
- var INDICATIVE_CONDITIONAL_RULE_NAME = "indicativeConditional";
60
+ var CONDITIONAL_INDICATIVE_RULE_NAME = "conditionalIndicative";
61
61
  var COMBINATOR_DECLARATION_RULE_NAME = "combinatorDeclaration";
62
62
  var CONSTRUCTOR_DECLARATION_RULE_NAME = "constructorDeclaration";
63
63
  var QUALIFIED_METASTATEMENT_RULE_NAME = "qualifiedMetastatement";
64
64
  var UNQUALIFIED_METASTATEMENT_RULE_NAME = "unqualifiedMetastatement";
65
65
 
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlTmFtZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBURVJNX1JVTEVfTkFNRSA9IFwidGVybVwiO1xuZXhwb3J0IGNvbnN0IFRZUEVfUlVMRV9OQU1FID0gXCJ0eXBlXCI7XG5leHBvcnQgY29uc3QgTEFCRUxfUlVMRV9OQU1FID0gXCJsYWJlbFwiO1xuZXhwb3J0IGNvbnN0IEFSR1VNRU5UX1JVTEVfTkFNRSA9IFwiYXJndW1lbnRcIjtcbmV4cG9ydCBjb25zdCBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FID0gXCJtZXRhdmFyaWFibGVcIjtcbmV4cG9ydCBjb25zdCBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwibWV0YXN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfU1VCUFJPT0ZfUlVMRV9OQU1FID0gXCJtZXRhU3VicHJvb2ZcIjtcbmV4cG9ydCBjb25zdCBVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FID0gXCJ1bnF1YWxpZmllZFN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IElORElDQVRJVkVfQ09ORElUSU9OQUxfUlVMRV9OQU1FID0gXCJpbmRpY2F0aXZlQ29uZGl0aW9uYWxcIjtcbmV4cG9ydCBjb25zdCBDT01CSU5BVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSA9IFwiY29tYmluYXRvckRlY2xhcmF0aW9uXCI7XG5leHBvcnQgY29uc3QgQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FID0gXCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uXCI7XG5leHBvcnQgY29uc3QgUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FID0gXCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgPSBcInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFwiO1xuIl0sIm5hbWVzIjpbIlRFUk1fUlVMRV9OQU1FIiwiVFlQRV9SVUxFX05BTUUiLCJMQUJFTF9SVUxFX05BTUUiLCJBUkdVTUVOVF9SVUxFX05BTUUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwiTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiLCJNRVRBX1NVQlBST09GX1JVTEVfTkFNRSIsIlVOUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUiLCJJTkRJQ0FUSVZFX0NPTkRJVElPTkFMX1JVTEVfTkFNRSIsIkNPTUJJTkFUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FIiwiQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FIiwiUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwiVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUVhQSxjQUFjO2VBQWRBOztJQUNBQyxjQUFjO2VBQWRBOztJQUNBQyxlQUFlO2VBQWZBOztJQUNBQyxrQkFBa0I7ZUFBbEJBOztJQUNBQyxzQkFBc0I7ZUFBdEJBOztJQUNBQyx1QkFBdUI7ZUFBdkJBOztJQUNBQyx1QkFBdUI7ZUFBdkJBOztJQUNBQywrQkFBK0I7ZUFBL0JBOztJQUNBQyxnQ0FBZ0M7ZUFBaENBOztJQUNBQyxnQ0FBZ0M7ZUFBaENBOztJQUNBQyxpQ0FBaUM7ZUFBakNBOztJQUNBQyxpQ0FBaUM7ZUFBakNBOztJQUNBQyxtQ0FBbUM7ZUFBbkNBOzs7QUFaTixJQUFNWixpQkFBaUI7QUFDdkIsSUFBTUMsaUJBQWlCO0FBQ3ZCLElBQU1DLGtCQUFrQjtBQUN4QixJQUFNQyxxQkFBcUI7QUFDM0IsSUFBTUMseUJBQXlCO0FBQy9CLElBQU1DLDBCQUEwQjtBQUNoQyxJQUFNQywwQkFBMEI7QUFDaEMsSUFBTUMsa0NBQWtDO0FBQ3hDLElBQU1DLG1DQUFtQztBQUN6QyxJQUFNQyxtQ0FBbUM7QUFDekMsSUFBTUMsb0NBQW9DO0FBQzFDLElBQU1DLG9DQUFvQztBQUMxQyxJQUFNQyxzQ0FBc0MifQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlTmFtZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBURVJNX1JVTEVfTkFNRSA9IFwidGVybVwiO1xuZXhwb3J0IGNvbnN0IFRZUEVfUlVMRV9OQU1FID0gXCJ0eXBlXCI7XG5leHBvcnQgY29uc3QgTEFCRUxfUlVMRV9OQU1FID0gXCJsYWJlbFwiO1xuZXhwb3J0IGNvbnN0IEFSR1VNRU5UX1JVTEVfTkFNRSA9IFwiYXJndW1lbnRcIjtcbmV4cG9ydCBjb25zdCBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FID0gXCJtZXRhdmFyaWFibGVcIjtcbmV4cG9ydCBjb25zdCBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSA9IFwibWV0YXN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfU1VCUFJPT0ZfUlVMRV9OQU1FID0gXCJtZXRhU3VicHJvb2ZcIjtcbmV4cG9ydCBjb25zdCBVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FID0gXCJ1bnF1YWxpZmllZFN0YXRlbWVudFwiO1xuZXhwb3J0IGNvbnN0IENPTkRJVElPTkFMX0lORElDQVRJVkVfUlVMRV9OQU1FID0gXCJjb25kaXRpb25hbEluZGljYXRpdmVcIjtcbmV4cG9ydCBjb25zdCBDT01CSU5BVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSA9IFwiY29tYmluYXRvckRlY2xhcmF0aW9uXCI7XG5leHBvcnQgY29uc3QgQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FID0gXCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uXCI7XG5leHBvcnQgY29uc3QgUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FID0gXCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50XCI7XG5leHBvcnQgY29uc3QgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgPSBcInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFwiO1xuIl0sIm5hbWVzIjpbIlRFUk1fUlVMRV9OQU1FIiwiVFlQRV9SVUxFX05BTUUiLCJMQUJFTF9SVUxFX05BTUUiLCJBUkdVTUVOVF9SVUxFX05BTUUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwiTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiLCJNRVRBX1NVQlBST09GX1JVTEVfTkFNRSIsIlVOUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUiLCJDT05ESVRJT05BTF9JTkRJQ0FUSVZFX1JVTEVfTkFNRSIsIkNPTUJJTkFUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FIiwiQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FIiwiUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwiVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUVhQSxjQUFjO2VBQWRBOztJQUNBQyxjQUFjO2VBQWRBOztJQUNBQyxlQUFlO2VBQWZBOztJQUNBQyxrQkFBa0I7ZUFBbEJBOztJQUNBQyxzQkFBc0I7ZUFBdEJBOztJQUNBQyx1QkFBdUI7ZUFBdkJBOztJQUNBQyx1QkFBdUI7ZUFBdkJBOztJQUNBQywrQkFBK0I7ZUFBL0JBOztJQUNBQyxnQ0FBZ0M7ZUFBaENBOztJQUNBQyxnQ0FBZ0M7ZUFBaENBOztJQUNBQyxpQ0FBaUM7ZUFBakNBOztJQUNBQyxpQ0FBaUM7ZUFBakNBOztJQUNBQyxtQ0FBbUM7ZUFBbkNBOzs7QUFaTixJQUFNWixpQkFBaUI7QUFDdkIsSUFBTUMsaUJBQWlCO0FBQ3ZCLElBQU1DLGtCQUFrQjtBQUN4QixJQUFNQyxxQkFBcUI7QUFDM0IsSUFBTUMseUJBQXlCO0FBQy9CLElBQU1DLDBCQUEwQjtBQUNoQyxJQUFNQywwQkFBMEI7QUFDaEMsSUFBTUMsa0NBQWtDO0FBQ3hDLElBQU1DLG1DQUFtQztBQUN6QyxJQUFNQyxtQ0FBbUM7QUFDekMsSUFBTUMsb0NBQW9DO0FBQzFDLElBQU1DLG9DQUFvQztBQUMxQyxJQUFNQyxzQ0FBc0MifQ==
@@ -0,0 +1,123 @@
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 Substitution;
9
+ }
10
+ });
11
+ var _statement = require("./utilities/statement");
12
+ function _classCallCheck(instance, Constructor) {
13
+ if (!(instance instanceof Constructor)) {
14
+ throw new TypeError("Cannot call a class as a function");
15
+ }
16
+ }
17
+ function _defineProperties(target, props) {
18
+ for(var i = 0; i < props.length; i++){
19
+ var descriptor = props[i];
20
+ descriptor.enumerable = descriptor.enumerable || false;
21
+ descriptor.configurable = true;
22
+ if ("value" in descriptor) descriptor.writable = true;
23
+ Object.defineProperty(target, descriptor.key, descriptor);
24
+ }
25
+ }
26
+ function _createClass(Constructor, protoProps, staticProps) {
27
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
28
+ if (staticProps) _defineProperties(Constructor, staticProps);
29
+ return Constructor;
30
+ }
31
+ var Substitution = /*#__PURE__*/ function() {
32
+ function Substitution(variableName, nodes) {
33
+ _classCallCheck(this, Substitution);
34
+ this.variableName = variableName;
35
+ this.nodes = nodes;
36
+ }
37
+ _createClass(Substitution, [
38
+ {
39
+ key: "getVariableName",
40
+ value: function getVariableName() {
41
+ return this.variableName;
42
+ }
43
+ },
44
+ {
45
+ key: "getNodes",
46
+ value: function getNodes() {
47
+ return this.nodes;
48
+ }
49
+ },
50
+ {
51
+ key: "matchNodes",
52
+ value: function matchNodes(nodes) {
53
+ var matches;
54
+ var substitutionNodes = this.nodes, substitutionNonTerminalNodeMatches = matchSubstitutionNodes(substitutionNodes, nodes);
55
+ matches = substitutionNonTerminalNodeMatches; ///
56
+ if (!matches) {
57
+ var childNodes = nodes, bracketedStatementChildNodeMatches = (0, _statement.matchBracketedStatementChildNode)(childNodes, function(bracketedStatementChildNode) {
58
+ var nonTerminalNode = bracketedStatementChildNode, childNodes = nonTerminalNode.getChildNodes(), _$nodes = childNodes, assertionNonTerminalNodeMatches = matchSubstitutionNodes(substitutionNodes, _$nodes), bracketedStatementChildNodeMatches = assertionNonTerminalNodeMatches; ///
59
+ return bracketedStatementChildNodeMatches;
60
+ });
61
+ matches = bracketedStatementChildNodeMatches; ///
62
+ }
63
+ return matches;
64
+ }
65
+ }
66
+ ], [
67
+ {
68
+ key: "fromVariableNameAndNodes",
69
+ value: function fromVariableNameAndNodes(variableName, nodes) {
70
+ var bracketedStatementChildNode = (0, _statement.bracketedStatementChildNodeFromChildNodes)(nodes);
71
+ if (bracketedStatementChildNode !== null) {
72
+ var nonTerminalNode = bracketedStatementChildNode, childNodes = nonTerminalNode.getChildNodes();
73
+ nodes = childNodes; ///
74
+ }
75
+ var substitution = new Substitution(variableName, nodes);
76
+ return substitution;
77
+ }
78
+ }
79
+ ]);
80
+ return Substitution;
81
+ }();
82
+ function matchSubstitutionNode(substitutionNode, node) {
83
+ var substitutionNodeMatches = false;
84
+ var nodeTerminalNode = node.isTerminalNode(), ruleNodeTerminalNode = substitutionNode.isTerminalNode();
85
+ if (nodeTerminalNode === ruleNodeTerminalNode) {
86
+ if (nodeTerminalNode) {
87
+ var terminalNode = node, substitutionTerminalNode = substitutionNode, substitutionTerminalNodeMatches = matchSubstitutionTerminalNode(substitutionTerminalNode, terminalNode);
88
+ substitutionNodeMatches = substitutionTerminalNodeMatches; ///
89
+ } else {
90
+ var nonTerminalNode = node, substitutionNonTerminalNode = substitutionNode, substitutionNonTerminalNodeMatches = matchSubstitutionNonTerminalNode(substitutionNonTerminalNode, nonTerminalNode);
91
+ substitutionNodeMatches = substitutionNonTerminalNodeMatches; ///
92
+ }
93
+ }
94
+ return substitutionNodeMatches;
95
+ }
96
+ function matchSubstitutionNodes(substitutionNodes, nodes) {
97
+ var substitutionNodesMatches = false;
98
+ var nodesLength = nodes.length, substitutionNodesLength = substitutionNodes.length;
99
+ if (nodesLength === substitutionNodesLength) {
100
+ substitutionNodesMatches = nodes.every(function(node, index) {
101
+ var substitutionNode = substitutionNodes[index], substitutionNodeMatches = matchSubstitutionNode(substitutionNode, node);
102
+ if (substitutionNodeMatches) {
103
+ return true;
104
+ }
105
+ });
106
+ }
107
+ return substitutionNodesMatches;
108
+ }
109
+ function matchSubstitutionTerminalNode(substitutionTerminalNode, terminalNode) {
110
+ var matches = substitutionTerminalNode.match(terminalNode), substitutionTerminalNodeMatches = matches; ///
111
+ return substitutionTerminalNodeMatches;
112
+ }
113
+ function matchSubstitutionNonTerminalNode(substitutionNonTerminalNode, nonTerminalNode) {
114
+ var substitutionNonTerminalNodeMatches = false;
115
+ var ruleName = nonTerminalNode.getRuleName(), substitutionRuleName = substitutionNonTerminalNode.getRuleName(); ///
116
+ if (ruleName === substitutionRuleName) {
117
+ var childNodes = nonTerminalNode.getChildNodes(), substitutionChildNodes = substitutionNonTerminalNode.getChildNodes(), nodes = childNodes, substitutionNodes = substitutionChildNodes, substitutionNodesMatches = matchSubstitutionNodes(substitutionNodes, nodes);
118
+ substitutionNonTerminalNodeMatches = substitutionNodesMatches; ///
119
+ }
120
+ return substitutionNonTerminalNodeMatches;
121
+ }
122
+
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdWJzdGl0dXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG1hdGNoQnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlLCBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tQ2hpbGROb2RlcyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdGF0ZW1lbnRcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3IodmFyaWFibGVOYW1lLCBub2Rlcykge1xuICAgIHRoaXMudmFyaWFibGVOYW1lID0gdmFyaWFibGVOYW1lO1xuICAgIHRoaXMubm9kZXMgPSBub2RlcztcbiAgfVxuXG4gIGdldFZhcmlhYmxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZU5hbWU7XG4gIH1cblxuICBnZXROb2RlcygpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlcztcbiAgfVxuXG4gIG1hdGNoTm9kZXMobm9kZXMpIHtcbiAgICBsZXQgbWF0Y2hlcztcblxuICAgIGNvbnN0IHN1YnN0aXR1dGlvbk5vZGVzID0gdGhpcy5ub2RlcywgIC8vL1xuICAgICAgICAgIHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFN1YnN0aXR1dGlvbk5vZGVzKHN1YnN0aXR1dGlvbk5vZGVzLCBub2Rlcyk7XG5cbiAgICBtYXRjaGVzID0gc3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgIC8vL1xuXG4gICAgaWYgKCFtYXRjaGVzKSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9kZXMsIC8vL1xuICAgICAgICAgICAgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlTWF0Y2hlcyA9IG1hdGNoQnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlKGNoaWxkTm9kZXMsIChicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgICAgICAgICBub2RlcyA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICAgICAgICBhc3NlcnRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hTdWJzdGl0dXRpb25Ob2RlcyhzdWJzdGl0dXRpb25Ob2Rlcywgbm9kZXMpLFxuICAgICAgICAgICAgICAgICAgICBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVNYXRjaGVzID0gYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG5cbiAgICAgICAgICAgICAgcmV0dXJuIGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZU1hdGNoZXM7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgbWF0Y2hlcyA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZU1hdGNoZXM7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21WYXJpYWJsZU5hbWVBbmROb2Rlcyh2YXJpYWJsZU5hbWUsIG5vZGVzKSB7XG4gICAgY29uc3QgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlRnJvbUNoaWxkTm9kZXMobm9kZXMpO1xuXG4gICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKTtcblxuICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBzdWJzdGl0dXRpb24gPSBuZXcgU3Vic3RpdHV0aW9uKHZhcmlhYmxlTmFtZSwgbm9kZXMpO1xuXG4gICAgcmV0dXJuIHN1YnN0aXR1dGlvbjtcbiAgfVxufVxuXG5mdW5jdGlvbiBtYXRjaFN1YnN0aXR1dGlvbk5vZGUoc3Vic3RpdHV0aW9uTm9kZSwgbm9kZSkge1xuICBsZXQgc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICBydWxlTm9kZVRlcm1pbmFsTm9kZSA9IHN1YnN0aXR1dGlvbk5vZGUuaXNUZXJtaW5hbE5vZGUoKTtcblxuICBpZiAobm9kZVRlcm1pbmFsTm9kZSA9PT0gcnVsZU5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICBpZiAobm9kZVRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybWluYWxOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uVGVybWluYWxOb2RlID0gc3Vic3RpdHV0aW9uTm9kZSwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoU3Vic3RpdHV0aW9uVGVybWluYWxOb2RlKHN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKTtcblxuICAgICAgc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb25UZXJtaW5hbE5vZGVNYXRjaGVzOyAgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlID0gc3Vic3RpdHV0aW9uTm9kZSwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoU3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlKHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlKTtcblxuICAgICAgc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoU3Vic3RpdHV0aW9uTm9kZXMoc3Vic3RpdHV0aW9uTm9kZXMsIG5vZGVzKSB7XG4gIGxldCBzdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2Rlc0xlbmd0aCA9IG5vZGVzLmxlbmd0aCxcbiAgICAgICAgc3Vic3RpdHV0aW9uTm9kZXNMZW5ndGggPSBzdWJzdGl0dXRpb25Ob2Rlcy5sZW5ndGg7XG5cbiAgaWYgKG5vZGVzTGVuZ3RoID09PSBzdWJzdGl0dXRpb25Ob2Rlc0xlbmd0aCkge1xuICAgIHN1YnN0aXR1dGlvbk5vZGVzTWF0Y2hlcyA9IG5vZGVzLmV2ZXJ5KChub2RlLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3Qgc3Vic3RpdHV0aW9uTm9kZSA9IHN1YnN0aXR1dGlvbk5vZGVzW2luZGV4XSxcbiAgICAgICAgICAgIHN1YnN0aXR1dGlvbk5vZGVNYXRjaGVzID0gbWF0Y2hTdWJzdGl0dXRpb25Ob2RlKHN1YnN0aXR1dGlvbk5vZGUsIG5vZGUpO1xuXG4gICAgICBpZiAoc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBzdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoU3Vic3RpdHV0aW9uVGVybWluYWxOb2RlKHN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKSB7XG4gIGNvbnN0IG1hdGNoZXMgPSBzdWJzdGl0dXRpb25UZXJtaW5hbE5vZGUubWF0Y2godGVybWluYWxOb2RlKSxcbiAgICAgICAgc3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoZXM7ICAvLy9cblxuICByZXR1cm4gc3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUoc3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlLCBub25UZXJtaW5hbE5vZGUpIHtcbiAgbGV0IHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICBzdWJzdGl0dXRpb25SdWxlTmFtZSA9IHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpOyAvLy9cblxuICBpZiAocnVsZU5hbWUgPT09IHN1YnN0aXR1dGlvblJ1bGVOYW1lKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgc3Vic3RpdHV0aW9uQ2hpbGROb2RlcyA9IHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICBzdWJzdGl0dXRpb25Ob2RlcyA9IHN1YnN0aXR1dGlvbkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIHN1YnN0aXR1dGlvbk5vZGVzTWF0Y2hlcyA9IG1hdGNoU3Vic3RpdHV0aW9uTm9kZXMoc3Vic3RpdHV0aW9uTm9kZXMsIG5vZGVzKTtcblxuICAgIHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXM7IC8vL1xuICB9XG5cbiAgcmV0dXJuIHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXM7XG59XG4iXSwibmFtZXMiOlsiU3Vic3RpdHV0aW9uIiwidmFyaWFibGVOYW1lIiwibm9kZXMiLCJnZXRWYXJpYWJsZU5hbWUiLCJnZXROb2RlcyIsIm1hdGNoTm9kZXMiLCJtYXRjaGVzIiwic3Vic3RpdHV0aW9uTm9kZXMiLCJzdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hTdWJzdGl0dXRpb25Ob2RlcyIsImNoaWxkTm9kZXMiLCJicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVNYXRjaGVzIiwibWF0Y2hCcmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUiLCJicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJnZXRDaGlsZE5vZGVzIiwiYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyIsImZyb21WYXJpYWJsZU5hbWVBbmROb2RlcyIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21DaGlsZE5vZGVzIiwic3Vic3RpdHV0aW9uIiwibWF0Y2hTdWJzdGl0dXRpb25Ob2RlIiwic3Vic3RpdHV0aW9uTm9kZSIsIm5vZGUiLCJzdWJzdGl0dXRpb25Ob2RlTWF0Y2hlcyIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInJ1bGVOb2RlVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwic3Vic3RpdHV0aW9uVGVybWluYWxOb2RlIiwic3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcyIsIm1hdGNoU3Vic3RpdHV0aW9uVGVybWluYWxOb2RlIiwic3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlIiwibWF0Y2hTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUiLCJzdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXMiLCJub2Rlc0xlbmd0aCIsImxlbmd0aCIsInN1YnN0aXR1dGlvbk5vZGVzTGVuZ3RoIiwiZXZlcnkiLCJpbmRleCIsIm1hdGNoIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsInN1YnN0aXR1dGlvblJ1bGVOYW1lIiwic3Vic3RpdHV0aW9uQ2hpbGROb2RlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7eUJBRnVFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU3RSxJQUFBLEFBQU1BLDZCQXdEbEIsQUF4RFk7YUFBTUEsYUFDUEMsWUFBWSxFQUFFQyxLQUFLOzhCQURaRjtRQUVqQixJQUFJLENBQUNDLFlBQVksR0FBR0E7UUFDcEIsSUFBSSxDQUFDQyxLQUFLLEdBQUdBOztpQkFISUY7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUEsa0JBQWtCO2dCQUNoQixPQUFPLElBQUksQ0FBQ0YsWUFBWTtZQUMxQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXO2dCQUNULE9BQU8sSUFBSSxDQUFDRixLQUFLO1lBQ25COzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVdILEtBQUssRUFBRTtnQkFDaEIsSUFBSUk7Z0JBRUosSUFBTUMsb0JBQW9CLElBQUksQ0FBQ0wsS0FBSyxFQUM5Qk0scUNBQXFDQyx1QkFBdUJGLG1CQUFtQkw7Z0JBRXJGSSxVQUFVRSxvQ0FBcUMsR0FBRztnQkFFbEQsSUFBSSxDQUFDRixTQUFTO29CQUNaLElBQU1JLGFBQWFSLE9BQ2JTLHFDQUFxQ0MsSUFBQUEsMkNBQWdDLEVBQUNGLFlBQVksU0FBQ0csNkJBQWdDO3dCQUNqSCxJQUFNQyxrQkFBa0JELDZCQUNsQkgsYUFBYUksZ0JBQWdCQyxhQUFhLElBQzFDYixVQUFRUSxZQUNSTSxrQ0FBa0NQLHVCQUF1QkYsbUJBQW1CTCxVQUM1RVMscUNBQXFDSyxpQ0FBaUMsR0FBRzt3QkFFL0UsT0FBT0w7b0JBQ1Q7b0JBRU5MLFVBQVVLLG9DQUFvQyxHQUFHO2dCQUNuRCxDQUFDO2dCQUVELE9BQU9MO1lBQ1Q7Ozs7WUFFT1csS0FBQUE7bUJBQVAsU0FBT0EseUJBQXlCaEIsWUFBWSxFQUFFQyxLQUFLLEVBQUU7Z0JBQ25ELElBQU1XLDhCQUE4QkssSUFBQUEsb0RBQXlDLEVBQUNoQjtnQkFFOUUsSUFBSVcsZ0NBQWdDLElBQUksRUFBRTtvQkFDeEMsSUFBTUMsa0JBQWtCRCw2QkFDbEJILGFBQWFJLGdCQUFnQkMsYUFBYTtvQkFFaERiLFFBQVFRLFlBQVksR0FBRztnQkFDekIsQ0FBQztnQkFFRCxJQUFNUyxlQUFlLElBbERKbkIsYUFrRHFCQyxjQUFjQztnQkFFcEQsT0FBT2lCO1lBQ1Q7OztXQXJEbUJuQjs7QUF3RHJCLFNBQVNvQixzQkFBc0JDLGdCQUFnQixFQUFFQyxJQUFJLEVBQUU7SUFDckQsSUFBSUMsMEJBQTBCLEtBQUs7SUFFbkMsSUFBTUMsbUJBQW1CRixLQUFLRyxjQUFjLElBQ3RDQyx1QkFBdUJMLGlCQUFpQkksY0FBYztJQUU1RCxJQUFJRCxxQkFBcUJFLHNCQUFzQjtRQUM3QyxJQUFJRixrQkFBa0I7WUFDcEIsSUFBTUcsZUFBZUwsTUFDZk0sMkJBQTJCUCxrQkFDM0JRLGtDQUFrQ0MsOEJBQThCRiwwQkFBMEJEO1lBRWhHSiwwQkFBMEJNLGlDQUFrQyxHQUFHO1FBQ2pFLE9BQU87WUFDTCxJQUFNZixrQkFBa0JRLE1BQ2xCUyw4QkFBOEJWLGtCQUM5QmIscUNBQXFDd0IsaUNBQWlDRCw2QkFBNkJqQjtZQUV6R1MsMEJBQTBCZixvQ0FBb0MsR0FBRztRQUNuRSxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU9lO0FBQ1Q7QUFFQSxTQUFTZCx1QkFBdUJGLGlCQUFpQixFQUFFTCxLQUFLLEVBQUU7SUFDeEQsSUFBSStCLDJCQUEyQixLQUFLO0lBRXBDLElBQU1DLGNBQWNoQyxNQUFNaUMsTUFBTSxFQUMxQkMsMEJBQTBCN0Isa0JBQWtCNEIsTUFBTTtJQUV4RCxJQUFJRCxnQkFBZ0JFLHlCQUF5QjtRQUMzQ0gsMkJBQTJCL0IsTUFBTW1DLEtBQUssQ0FBQyxTQUFDZixNQUFNZ0IsT0FBVTtZQUN0RCxJQUFNakIsbUJBQW1CZCxpQkFBaUIsQ0FBQytCLE1BQU0sRUFDM0NmLDBCQUEwQkgsc0JBQXNCQyxrQkFBa0JDO1lBRXhFLElBQUlDLHlCQUF5QjtnQkFDM0IsT0FBTyxJQUFJO1lBQ2IsQ0FBQztRQUNIO0lBQ0YsQ0FBQztJQUVELE9BQU9VO0FBQ1Q7QUFFQSxTQUFTSCw4QkFBOEJGLHdCQUF3QixFQUFFRCxZQUFZLEVBQUU7SUFDN0UsSUFBTXJCLFVBQVVzQix5QkFBeUJXLEtBQUssQ0FBQ1osZUFDekNFLGtDQUFrQ3ZCLFNBQVUsR0FBRztJQUVyRCxPQUFPdUI7QUFDVDtBQUVBLFNBQVNHLGlDQUFpQ0QsMkJBQTJCLEVBQUVqQixlQUFlLEVBQUU7SUFDdEYsSUFBSU4scUNBQXFDLEtBQUs7SUFFOUMsSUFBTWdDLFdBQVcxQixnQkFBZ0IyQixXQUFXLElBQ3RDQyx1QkFBdUJYLDRCQUE0QlUsV0FBVyxJQUFJLEdBQUc7SUFFM0UsSUFBSUQsYUFBYUUsc0JBQXNCO1FBQ3JDLElBQU1oQyxhQUFhSSxnQkFBZ0JDLGFBQWEsSUFDMUM0Qix5QkFBeUJaLDRCQUE0QmhCLGFBQWEsSUFDbEViLFFBQVFRLFlBQ1JILG9CQUFvQm9DLHdCQUNwQlYsMkJBQTJCeEIsdUJBQXVCRixtQkFBbUJMO1FBRTNFTSxxQ0FBcUN5QiwwQkFBMEIsR0FBRztJQUNwRSxDQUFDO0lBRUQsT0FBT3pCO0FBQ1QifQ==
package/lib/theorem.js CHANGED
@@ -8,9 +8,14 @@ Object.defineProperty(exports, "default", {
8
8
  return Theorem;
9
9
  }
10
10
  });
11
- var _label = /*#__PURE__*/ _interopRequireDefault(require("./label"));
11
+ var _axiomLemmaTheorem = /*#__PURE__*/ _interopRequireDefault(require("./axiomLemmaTheorem"));
12
12
  var _kinds = require("./kinds");
13
- var _string = require("./utilities/string");
13
+ function _assertThisInitialized(self) {
14
+ if (self === void 0) {
15
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
16
+ }
17
+ return self;
18
+ }
14
19
  function _classCallCheck(instance, Constructor) {
15
20
  if (!(instance instanceof Constructor)) {
16
21
  throw new TypeError("Cannot call a class as a function");
@@ -30,97 +35,107 @@ function _createClass(Constructor, protoProps, staticProps) {
30
35
  if (staticProps) _defineProperties(Constructor, staticProps);
31
36
  return Constructor;
32
37
  }
38
+ function _defineProperty(obj, key, value) {
39
+ if (key in obj) {
40
+ Object.defineProperty(obj, key, {
41
+ value: value,
42
+ enumerable: true,
43
+ configurable: true,
44
+ writable: true
45
+ });
46
+ } else {
47
+ obj[key] = value;
48
+ }
49
+ return obj;
50
+ }
51
+ function _getPrototypeOf(o) {
52
+ _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
53
+ return o.__proto__ || Object.getPrototypeOf(o);
54
+ };
55
+ return _getPrototypeOf(o);
56
+ }
57
+ function _inherits(subClass, superClass) {
58
+ if (typeof superClass !== "function" && superClass !== null) {
59
+ throw new TypeError("Super expression must either be null or a function");
60
+ }
61
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
62
+ constructor: {
63
+ value: subClass,
64
+ writable: true,
65
+ configurable: true
66
+ }
67
+ });
68
+ if (superClass) _setPrototypeOf(subClass, superClass);
69
+ }
33
70
  function _interopRequireDefault(obj) {
34
71
  return obj && obj.__esModule ? obj : {
35
72
  default: obj
36
73
  };
37
74
  }
38
- var Theorem = /*#__PURE__*/ function() {
39
- function Theorem(labels, unqualifiedStatementNode, indicativeConditionalNode) {
40
- _classCallCheck(this, Theorem);
41
- this.labels = labels;
42
- this.unqualifiedStatementNode = unqualifiedStatementNode;
43
- this.indicativeConditionalNode = indicativeConditionalNode;
75
+ function _possibleConstructorReturn(self, call) {
76
+ if (call && (_typeof(call) === "object" || typeof call === "function")) {
77
+ return call;
44
78
  }
45
- _createClass(Theorem, [
46
- {
47
- key: "getLabels",
48
- value: function getLabels() {
49
- return this.labels;
50
- }
51
- },
52
- {
53
- key: "getUnqualifiedStatementNode",
54
- value: function getUnqualifiedStatementNode() {
55
- return this.unqualifiedStatementNode;
56
- }
57
- },
58
- {
59
- key: "getIndicativeConditionalNode",
60
- value: function getIndicativeConditionalNode() {
61
- return this.indicativeConditionalNode;
62
- }
63
- },
64
- {
65
- key: "matchLabelName",
66
- value: function matchLabelName(labelName) {
67
- var matchesLabelName = this.labels.some(function(label) {
68
- var name = labelName, labelMatchesName = label.matchName(name);
69
- if (labelMatchesName) {
70
- return true;
71
- }
72
- });
73
- return matchesLabelName;
74
- }
75
- },
76
- {
77
- key: "toJSON",
78
- value: function toJSON() {
79
- var labelsJSON = this.labels.map(function(label) {
80
- var labelJSON = label.toJSON();
81
- return labelJSON;
82
- }), unqualifiedStatementString = (0, _string.nodeAsString)(this.unqalifiedStatementNode), indicativeConditionalString = (0, _string.nodeAsString)(this.indicativeConditionalNode), kind = _kinds.THEOREM_KIND, labels = labelsJSON, unqualifiedStatement = unqualifiedStatementString, indicativeConditional = indicativeConditionalString, json = {
83
- kind: kind,
84
- labels: labels,
85
- unqualifiedStatement: unqualifiedStatement,
86
- indicativeConditional: indicativeConditional
87
- };
88
- return json;
89
- }
79
+ return _assertThisInitialized(self);
80
+ }
81
+ function _setPrototypeOf(o, p) {
82
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
83
+ o.__proto__ = p;
84
+ return o;
85
+ };
86
+ return _setPrototypeOf(o, p);
87
+ }
88
+ var _typeof = function(obj) {
89
+ "@swc/helpers - typeof";
90
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
91
+ };
92
+ function _isNativeReflectConstruct() {
93
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
94
+ if (Reflect.construct.sham) return false;
95
+ if (typeof Proxy === "function") return true;
96
+ try {
97
+ Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
98
+ return true;
99
+ } catch (e) {
100
+ return false;
101
+ }
102
+ }
103
+ function _createSuper(Derived) {
104
+ var hasNativeReflectConstruct = _isNativeReflectConstruct();
105
+ return function _createSuperInternal() {
106
+ var Super = _getPrototypeOf(Derived), result;
107
+ if (hasNativeReflectConstruct) {
108
+ var NewTarget = _getPrototypeOf(this).constructor;
109
+ result = Reflect.construct(Super, arguments, NewTarget);
110
+ } else {
111
+ result = Super.apply(this, arguments);
90
112
  }
91
- ], [
113
+ return _possibleConstructorReturn(this, result);
114
+ };
115
+ }
116
+ var Theorem = /*#__PURE__*/ function(AxiomLemmaTheorem) {
117
+ _inherits(Theorem, AxiomLemmaTheorem);
118
+ var _super = _createSuper(Theorem);
119
+ function Theorem() {
120
+ _classCallCheck(this, Theorem);
121
+ return _super.apply(this, arguments);
122
+ }
123
+ _createClass(Theorem, null, [
92
124
  {
93
125
  key: "fromJSON",
94
126
  value: function fromJSON(json, releaseContext) {
95
- var labels = json.labels;
96
- var labelsJSON = labels; ///
97
- labels = labelsJSON.map(function(labelJSON) {
98
- var _$json = labelJSON, label = _label.default.fromJSON(_$json, releaseContext);
99
- return label;
100
- });
101
- var unqualifiedStatement = json.unqualifiedStatement, indicativeConditional = json.indicativeConditional;
102
- var unqualifiedStatementNode = null, indicativeConditionalNode = null;
103
- if (unqualifiedStatement !== null) {
104
- var unqualifiedStatementString = unqualifiedStatement; ///
105
- unqualifiedStatementNode = (0, _string.unqualifiedStatementNodeFromUnqualifiedStatementString)(unqualifiedStatementString, releaseContext);
106
- }
107
- if (indicativeConditional !== null) {
108
- var indicativeConditionalString = indicativeConditional; ///
109
- indicativeConditionalNode = (0, _string.indicativeConditionalNodeFromIndicativeConditionalString)(indicativeConditionalString, releaseContext);
110
- }
111
- var theorem = new Theorem(labels, unqualifiedStatementNode, indicativeConditionalNode);
112
- return theorem;
127
+ return _axiomLemmaTheorem.default.fromJSON(Theorem, json);
113
128
  }
114
129
  },
115
130
  {
116
- key: "fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode",
117
- value: function fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode(labels, unqualifiedStatementNode, indicativeConditionalNode) {
118
- var theorem = new Theorem(labels, unqualifiedStatementNode, indicativeConditionalNode);
119
- return theorem;
131
+ key: "fromLabelsAntecedentsAndConsequent",
132
+ value: function fromLabelsAntecedentsAndConsequent(labels, antecedents, consequent) {
133
+ return _axiomLemmaTheorem.default.fromLabelsAntecedentsAndConsequent(Theorem, labels, antecedents, consequent);
120
134
  }
121
135
  }
122
136
  ]);
123
137
  return Theorem;
124
- }();
138
+ }(_axiomLemmaTheorem.default);
139
+ _defineProperty(Theorem, "kind", _kinds.THEOREM_KIND);
125
140
 
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90aGVvcmVtLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTGFiZWwgZnJvbSBcIi4vbGFiZWxcIjtcblxuaW1wb3J0IHsgVEhFT1JFTV9LSU5EIH0gZnJvbSBcIi4va2luZHNcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuaW1wb3J0IHsgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nLCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlRnJvbUluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGhlb3JlbSB7XG4gIGNvbnN0cnVjdG9yKGxhYmVscywgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlKSB7XG4gICAgdGhpcy5sYWJlbHMgPSBsYWJlbHM7XG4gICAgdGhpcy51bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGU7XG4gICAgdGhpcy5pbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlID0gaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZTtcbiAgfVxuXG4gIGdldExhYmVscygpIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbHM7XG4gIH1cblxuICBnZXRVbnF1YWxpZmllZFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0SW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5pbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlO1xuICB9XG5cbiAgbWF0Y2hMYWJlbE5hbWUobGFiZWxOYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc0xhYmVsTmFtZSA9IHRoaXMubGFiZWxzLnNvbWUoKGxhYmVsKSA9PiB7XG4gICAgICBjb25zdCBuYW1lID0gbGFiZWxOYW1lLCAvLy9cbiAgICAgICAgbGFiZWxNYXRjaGVzTmFtZSA9IGxhYmVsLm1hdGNoTmFtZShuYW1lKTtcblxuICAgICAgaWYgKGxhYmVsTWF0Y2hlc05hbWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbWF0Y2hlc0xhYmVsTmFtZTtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBsYWJlbHNKU09OID0gdGhpcy5sYWJlbHMubWFwKChsYWJlbCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbGFiZWxKU09OID0gbGFiZWwudG9KU09OKCk7XG5cbiAgICAgICAgICAgIHJldHVybiBsYWJlbEpTT047XG4gICAgICAgICAgfSksXG4gICAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy51bnFhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMuaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSksXG4gICAgICAgICAga2luZCA9IFRIRU9SRU1fS0lORCxcbiAgICAgICAgICBsYWJlbHMgPSBsYWJlbHNKU09OLCAgLy8vXG4gICAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnQgPSB1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZywgIC8vL1xuICAgICAgICAgIGluZGljYXRpdmVDb25kaXRpb25hbCA9IGluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZywgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBraW5kLFxuICAgICAgICAgICAgbGFiZWxzLFxuICAgICAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnQsXG4gICAgICAgICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpIHtcbiAgICBsZXQgeyBsYWJlbHMgfSA9IGpzb247XG5cbiAgICBjb25zdCBsYWJlbHNKU09OID0gbGFiZWxzOyAgLy8vXG5cbiAgICBsYWJlbHMgPSBsYWJlbHNKU09OLm1hcCgobGFiZWxKU09OKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QganNvbiA9IGxhYmVsSlNPTiwgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgbGFiZWwgPSBMYWJlbC5mcm9tSlNPTihqc29uLCByZWxlYXNlQ29udGV4dCk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gbGFiZWw7XG4gICAgICAgICAgICAgIH0pO1xuXG4gICAgbGV0IHsgdW5xdWFsaWZpZWRTdGF0ZW1lbnQsIGluZGljYXRpdmVDb25kaXRpb25hbCB9ID0ganNvbjtcblxuICAgIGxldCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlID0gbnVsbDtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudCAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSB1bnF1YWxpZmllZFN0YXRlbWVudDsgIC8vL1xuXG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcodW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcsIHJlbGVhc2VDb250ZXh0KTtcbiAgICB9XG5cbiAgICBpZiAoaW5kaWNhdGl2ZUNvbmRpdGlvbmFsICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxTdHJpbmcgPSBpbmRpY2F0aXZlQ29uZGl0aW9uYWw7ICAvLy9cblxuICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSA9IGluZGljYXRpdmVDb25kaXRpb25hbE5vZGVGcm9tSW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nKGluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZywgcmVsZWFzZUNvbnRleHQpO1xuICAgIH1cblxuICAgIGNvbnN0IHRoZW9yZW0gPSBuZXcgVGhlb3JlbShsYWJlbHMsIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSk7XG5cbiAgICByZXR1cm4gdGhlb3JlbTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTGFiZWxzVW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlQW5kSW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZShsYWJlbHMsIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSkge1xuICAgIGNvbnN0IHRoZW9yZW0gPSBuZXcgVGhlb3JlbShsYWJlbHMsIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSk7XG5cbiAgICByZXR1cm4gdGhlb3JlbTtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJUaGVvcmVtIiwibGFiZWxzIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSIsImdldExhYmVscyIsImdldFVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImdldEluZGljYXRpdmVDb25kaXRpb25hbE5vZGUiLCJtYXRjaExhYmVsTmFtZSIsImxhYmVsTmFtZSIsIm1hdGNoZXNMYWJlbE5hbWUiLCJzb21lIiwibGFiZWwiLCJuYW1lIiwibGFiZWxNYXRjaGVzTmFtZSIsIm1hdGNoTmFtZSIsInRvSlNPTiIsImxhYmVsc0pTT04iLCJtYXAiLCJsYWJlbEpTT04iLCJ1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInVucWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nIiwia2luZCIsIlRIRU9SRU1fS0lORCIsInVucXVhbGlmaWVkU3RhdGVtZW50IiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsIiwianNvbiIsImZyb21KU09OIiwicmVsZWFzZUNvbnRleHQiLCJMYWJlbCIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsImluZGljYXRpdmVDb25kaXRpb25hbE5vZGVGcm9tSW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nIiwidGhlb3JlbSIsImZyb21MYWJlbHNVbnF1YWxpZmllZFN0YXRlbWVudE5vZGVBbmRJbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVNxQkE7OzswREFQSDtxQkFFVztzQkFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlkLElBQUEsQUFBTUEsd0JBQU47YUFBTUEsUUFDUEMsTUFBTSxFQUFFQyx3QkFBd0IsRUFBRUMseUJBQXlCOzhCQURwREg7UUFFakIsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyx3QkFBd0IsR0FBR0E7UUFDaEMsSUFBSSxDQUFDQyx5QkFBeUIsR0FBR0E7O2lCQUpoQkg7O1lBT25CSSxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWTtnQkFDVixPQUFPLElBQUksQ0FBQ0gsTUFBTTtZQUNwQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQSw4QkFBOEI7Z0JBQzVCLE9BQU8sSUFBSSxDQUFDSCx3QkFBd0I7WUFDdEM7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUEsK0JBQStCO2dCQUM3QixPQUFPLElBQUksQ0FBQ0gseUJBQXlCO1lBQ3ZDOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVDLFNBQVMsRUFBRTtnQkFDeEIsSUFBTUMsbUJBQW1CLElBQUksQ0FBQ1IsTUFBTSxDQUFDUyxJQUFJLENBQUMsU0FBQ0MsT0FBVTtvQkFDbkQsSUFBTUMsT0FBT0osV0FDWEssbUJBQW1CRixNQUFNRyxTQUFTLENBQUNGO29CQUVyQyxJQUFJQyxrQkFBa0I7d0JBQ3BCLE9BQU8sSUFBSTtvQkFDYixDQUFDO2dCQUNIO2dCQUVBLE9BQU9KO1lBQ1Q7OztZQUVBTSxLQUFBQTttQkFBQUEsU0FBQUEsU0FBUztnQkFDUCxJQUFNQyxhQUFhLElBQUksQ0FBQ2YsTUFBTSxDQUFDZ0IsR0FBRyxDQUFDLFNBQUNOLE9BQVU7b0JBQ3RDLElBQU1PLFlBQVlQLE1BQU1JLE1BQU07b0JBRTlCLE9BQU9HO2dCQUNULElBQ0FDLDZCQUE2QkMsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNDLHVCQUF1QixHQUN0RUMsOEJBQThCRixJQUFBQSxvQkFBWSxFQUFDLElBQUksQ0FBQ2pCLHlCQUF5QixHQUN6RW9CLE9BQU9DLG1CQUFZLEVBQ25CdkIsU0FBU2UsWUFDVFMsdUJBQXVCTiw0QkFDdkJPLHdCQUF3QkosNkJBQ3hCSyxPQUFPO29CQUNMSixNQUFBQTtvQkFDQXRCLFFBQUFBO29CQUNBd0Isc0JBQUFBO29CQUNBQyx1QkFBQUE7Z0JBQ0Y7Z0JBRU4sT0FBT0M7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTRCxJQUFJLEVBQUVFLGNBQWMsRUFBRTtnQkFDcEMsSUFBSSxBQUFFNUIsU0FBVzBCLEtBQVgxQjtnQkFFTixJQUFNZSxhQUFhZixRQUFTLEdBQUc7Z0JBRS9CQSxTQUFTZSxXQUFXQyxHQUFHLENBQUMsU0FBQ0MsV0FBYztvQkFDM0IsSUFBTVMsU0FBT1QsV0FDUFAsUUFBUW1CLGNBQUssQ0FBQ0YsUUFBUSxDQUFDRCxRQUFNRTtvQkFFbkMsT0FBT2xCO2dCQUNUO2dCQUVWLElBQU1jLHVCQUFnREUsS0FBaERGLHNCQUFzQkMsd0JBQTBCQyxLQUExQkQ7Z0JBRTVCLElBQUl4QiwyQkFBMkIsSUFBSSxFQUMvQkMsNEJBQTRCLElBQUk7Z0JBRXBDLElBQUlzQix5QkFBeUIsSUFBSSxFQUFFO29CQUNqQyxJQUFNTiw2QkFBNkJNLHNCQUF1QixHQUFHO29CQUU3RHZCLDJCQUEyQjZCLElBQUFBLDhEQUFzRCxFQUFDWiw0QkFBNEJVO2dCQUNoSCxDQUFDO2dCQUVELElBQUlILDBCQUEwQixJQUFJLEVBQUU7b0JBQ2xDLElBQU1KLDhCQUE4QkksdUJBQXdCLEdBQUc7b0JBRS9EdkIsNEJBQTRCNkIsSUFBQUEsZ0VBQXdELEVBQUNWLDZCQUE2Qk87Z0JBQ3BILENBQUM7Z0JBRUQsSUFBTUksVUFBVSxJQW5GQ2pDLFFBbUZXQyxRQUFRQywwQkFBMEJDO2dCQUU5RCxPQUFPOEI7WUFDVDs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLCtEQUErRGpDLE1BQU0sRUFBRUMsd0JBQXdCLEVBQUVDLHlCQUF5QixFQUFFO2dCQUNqSSxJQUFNOEIsVUFBVSxJQXpGQ2pDLFFBeUZXQyxRQUFRQywwQkFBMEJDO2dCQUU5RCxPQUFPOEI7WUFDVDs7O1dBNUZtQmpDIn0=
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90aGVvcmVtLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgQXhpb21MZW1tYVRoZW9yZW0gZnJvbSBcIi4vYXhpb21MZW1tYVRoZW9yZW1cIjtcblxuaW1wb3J0IHsgVEhFT1JFTV9LSU5EIH0gZnJvbSBcIi4va2luZHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGhlb3JlbSBleHRlbmRzIEF4aW9tTGVtbWFUaGVvcmVtIHtcbiAgc3RhdGljIGtpbmQgPSBUSEVPUkVNX0tJTkQ7XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KSB7IHJldHVybiBBeGlvbUxlbW1hVGhlb3JlbS5mcm9tSlNPTihUaGVvcmVtLCBqc29uKTsgfVxuXG4gIHN0YXRpYyBmcm9tTGFiZWxzQW50ZWNlZGVudHNBbmRDb25zZXF1ZW50KGxhYmVscywgYW50ZWNlZGVudHMsIGNvbnNlcXVlbnQpIHsgcmV0dXJuIEF4aW9tTGVtbWFUaGVvcmVtLmZyb21MYWJlbHNBbnRlY2VkZW50c0FuZENvbnNlcXVlbnQoVGhlb3JlbSwgbGFiZWxzLCBhbnRlY2VkZW50cywgY29uc2VxdWVudCk7IH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiVGhlb3JlbSIsImZyb21KU09OIiwianNvbiIsInJlbGVhc2VDb250ZXh0IiwiQXhpb21MZW1tYVRoZW9yZW0iLCJmcm9tTGFiZWxzQW50ZWNlZGVudHNBbmRDb25zZXF1ZW50IiwibGFiZWxzIiwiYW50ZWNlZGVudHMiLCJjb25zZXF1ZW50Iiwia2luZCIsIlRIRU9SRU1fS0lORCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7c0VBSlM7cUJBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWQsSUFBQSxBQUFNQSx3QkFBTjtjQUFNQTs4QkFBQUE7YUFBQUE7OEJBQUFBOzs7aUJBQUFBOztZQUdaQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTQyxJQUFJLEVBQUVDLGNBQWMsRUFBRTtnQkFBRSxPQUFPQywwQkFBaUIsQ0FBQ0gsUUFBUSxDQUh0REQsU0FHZ0VFO1lBQU87OztZQUVuRkcsS0FBQUE7bUJBQVAsU0FBT0EsbUNBQW1DQyxNQUFNLEVBQUVDLFdBQVcsRUFBRUMsVUFBVSxFQUFFO2dCQUFFLE9BQU9KLDBCQUFpQixDQUFDQyxrQ0FBa0MsQ0FMckhMLFNBSytITSxRQUFRQyxhQUFhQztZQUFhOzs7V0FMaktSO0VBQWdCSSwwQkFBaUI7QUFDcEQsZ0JBRG1CSixTQUNaUyxRQUFPQyxtQkFBWSJ9