occam-verify-cli 0.0.455 → 0.0.457
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.
- package/lib/axiom.js +26 -46
- package/lib/combinator.js +2 -3
- package/lib/conclusion.js +2 -3
- package/lib/constructor.js +2 -3
- package/lib/context/file.js +5 -1
- package/lib/context/release/file.js +17 -4
- package/lib/label.js +2 -3
- package/lib/lemma.js +26 -46
- package/lib/premise.js +2 -3
- package/lib/ruleNames.js +5 -1
- package/lib/theorem.js +26 -46
- package/lib/utilities/string.js +46 -1
- package/lib/verify/assertion/type.js +55 -0
- package/lib/verify/axiom.js +10 -15
- package/lib/verify/equality.js +7 -1
- package/lib/verify/lemma.js +13 -22
- package/lib/verify/metastatement/qualified.js +4 -3
- package/lib/verify/metastatement/unqualified.js +14 -9
- package/lib/verify/metastatement.js +19 -0
- package/lib/verify/statement/qualified.js +14 -11
- package/lib/verify/statement/unqualified.js +13 -9
- package/lib/verify/statement.js +5 -8
- package/lib/verify/statementAsCombinator.js +3 -2
- package/lib/verify/term.js +6 -1
- package/lib/verify/termAsConstructor.js +5 -5
- package/lib/verify/theorem.js +10 -15
- package/lib/verify/type.js +8 -7
- package/lib/verify/variable.js +4 -3
- package/package.json +3 -3
- package/src/axiom.js +27 -54
- package/src/combinator.js +3 -3
- package/src/conclusion.js +3 -3
- package/src/constructor.js +3 -3
- package/src/context/file.js +6 -0
- package/src/context/release/file.js +17 -4
- package/src/label.js +3 -3
- package/src/lemma.js +28 -55
- package/src/premise.js +3 -3
- package/src/ruleNames.js +1 -0
- package/src/theorem.js +32 -59
- package/src/utilities/string.js +67 -0
- package/src/verify/assertion/type.js +32 -56
- package/src/verify/axiom.js +10 -24
- package/src/verify/equality.js +9 -0
- package/src/verify/lemma.js +14 -37
- package/src/verify/metastatement/qualified.js +5 -3
- package/src/verify/metastatement/unqualified.js +17 -10
- package/src/verify/metastatement.js +15 -0
- package/src/verify/statement/qualified.js +20 -8
- package/src/verify/statement/unqualified.js +16 -10
- package/src/verify/statement.js +5 -8
- package/src/verify/statementAsCombinator.js +4 -2
- package/src/verify/term.js +8 -0
- package/src/verify/termAsConstructor.js +5 -5
- package/src/verify/theorem.js +11 -25
- package/src/verify/type.js +9 -7
- package/src/verify/variable.js +5 -3
- package/lib/utilities/node.js +0 -45
- package/src/utilities/node.js +0 -50
package/lib/theorem.js
CHANGED
|
@@ -11,7 +11,6 @@ Object.defineProperty(exports, "default", {
|
|
|
11
11
|
var _label = /*#__PURE__*/ _interopRequireDefault(require("./label"));
|
|
12
12
|
var _kinds = require("./kinds");
|
|
13
13
|
var _string = require("./utilities/string");
|
|
14
|
-
var _node = require("./utilities/node");
|
|
15
14
|
function _classCallCheck(instance, Constructor) {
|
|
16
15
|
if (!(instance instanceof Constructor)) {
|
|
17
16
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -37,12 +36,11 @@ function _interopRequireDefault(obj) {
|
|
|
37
36
|
};
|
|
38
37
|
}
|
|
39
38
|
var Theorem = /*#__PURE__*/ function() {
|
|
40
|
-
function Theorem(labels,
|
|
39
|
+
function Theorem(labels, unqualifiedStatementNode, indicativeConditionalNode) {
|
|
41
40
|
_classCallCheck(this, Theorem);
|
|
42
41
|
this.labels = labels;
|
|
43
|
-
this.
|
|
44
|
-
this.
|
|
45
|
-
this.consequentStatementNode = consequentStatementNode;
|
|
42
|
+
this.unqualifiedStatementNode = unqualifiedStatementNode;
|
|
43
|
+
this.indicativeConditionalNode = indicativeConditionalNode;
|
|
46
44
|
}
|
|
47
45
|
_createClass(Theorem, [
|
|
48
46
|
{
|
|
@@ -52,21 +50,15 @@ var Theorem = /*#__PURE__*/ function() {
|
|
|
52
50
|
}
|
|
53
51
|
},
|
|
54
52
|
{
|
|
55
|
-
key: "
|
|
56
|
-
value: function
|
|
57
|
-
return this.
|
|
53
|
+
key: "getUnqualifiedStatementNode",
|
|
54
|
+
value: function getUnqualifiedStatementNode() {
|
|
55
|
+
return this.unqualifiedStatementNode;
|
|
58
56
|
}
|
|
59
57
|
},
|
|
60
58
|
{
|
|
61
|
-
key: "
|
|
62
|
-
value: function
|
|
63
|
-
return this.
|
|
64
|
-
}
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
key: "getConsequentStatementNode",
|
|
68
|
-
value: function getConsequentStatementNode() {
|
|
69
|
-
return this.consequentStatementNode;
|
|
59
|
+
key: "getIndicativeConditionalNode",
|
|
60
|
+
value: function getIndicativeConditionalNode() {
|
|
61
|
+
return this.indicativeConditionalNode;
|
|
70
62
|
}
|
|
71
63
|
},
|
|
72
64
|
{
|
|
@@ -87,15 +79,11 @@ var Theorem = /*#__PURE__*/ function() {
|
|
|
87
79
|
var labelsJSON = this.labels.map(function(label) {
|
|
88
80
|
var labelJSON = label.toJSON();
|
|
89
81
|
return labelJSON;
|
|
90
|
-
}),
|
|
91
|
-
var suppositionStatementString = (0, _string.nodeAsString)(suppositionStatementNode);
|
|
92
|
-
return suppositionStatementString;
|
|
93
|
-
}), kind = _kinds.THEOREM_KIND, labels = labelsJSON, statement = statementString, consequent = consequentStatementString, suppositions = suppositionStatementStrings, json = {
|
|
82
|
+
}), unqualifiedStatementString = (0, _string.nodeAsString)(this.unqalifiedStatementNode), indicativeConditionalString = (0, _string.nodeAsString)(this.indicativeConditionalNode), kind = _kinds.THEOREM_KIND, labels = labelsJSON, unqualifiedStatement = unqualifiedStatementString, indicativeConditional = indicativeConditionalString, json = {
|
|
94
83
|
kind: kind,
|
|
95
84
|
labels: labels,
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
suppositions: suppositions
|
|
85
|
+
unqualifiedStatement: unqualifiedStatement,
|
|
86
|
+
indicativeConditional: indicativeConditional
|
|
99
87
|
};
|
|
100
88
|
return json;
|
|
101
89
|
}
|
|
@@ -110,32 +98,24 @@ var Theorem = /*#__PURE__*/ function() {
|
|
|
110
98
|
var _$json = labelJSON, label = _label.default.fromJSON(_$json, releaseContext);
|
|
111
99
|
return label;
|
|
112
100
|
});
|
|
113
|
-
var
|
|
114
|
-
var
|
|
115
|
-
if (
|
|
116
|
-
var
|
|
117
|
-
|
|
118
|
-
} else {
|
|
119
|
-
var statementNode1 = null, suppositionStatementsJSON = suppositions, suppositionStatementNodes1 = suppositionStatementsJSON.map(function(suppositionStatementJSON) {
|
|
120
|
-
var suppositionStatementNode = (0, _node.statementNodeFromStatementJSON)(suppositionStatementJSON, releaseContext);
|
|
121
|
-
return suppositionStatementNode;
|
|
122
|
-
}), consequentStatementJSON = consequent, consequentStatementNode1 = (0, _node.statementNodeFromStatementJSON)(consequentStatementJSON, releaseContext);
|
|
123
|
-
theorem = new Theorem(labels, statementNode1, suppositionStatementNodes1, consequentStatementNode1);
|
|
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);
|
|
124
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);
|
|
125
112
|
return theorem;
|
|
126
113
|
}
|
|
127
114
|
},
|
|
128
115
|
{
|
|
129
|
-
key: "
|
|
130
|
-
value: function
|
|
131
|
-
var
|
|
132
|
-
return theorem;
|
|
133
|
-
}
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
key: "fromLabelsSuppositionStatementNodesAndConsequentStatementNode",
|
|
137
|
-
value: function fromLabelsSuppositionStatementNodesAndConsequentStatementNode(labels, suppositionStatementNodes, consequentStatementNode) {
|
|
138
|
-
var statementNode = null, theorem = new Theorem(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
|
|
116
|
+
key: "fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode",
|
|
117
|
+
value: function fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode(labels, unqualifiedStatementNode, indicativeConditionalNode) {
|
|
118
|
+
var theorem = new Theorem(labels, unqualifiedStatementNode, indicativeConditionalNode);
|
|
139
119
|
return theorem;
|
|
140
120
|
}
|
|
141
121
|
}
|
|
@@ -143,4 +123,4 @@ var Theorem = /*#__PURE__*/ function() {
|
|
|
143
123
|
return Theorem;
|
|
144
124
|
}();
|
|
145
125
|
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90aGVvcmVtLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTGFiZWwgZnJvbSBcIi4vbGFiZWxcIjtcblxuaW1wb3J0IHsgVEhFT1JFTV9LSU5EIH0gZnJvbSBcIi4va2luZHNcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuaW1wb3J0IHsgc3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRKU09OIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGhlb3JlbSB7XG4gIGNvbnN0cnVjdG9yKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpIHtcbiAgICB0aGlzLmxhYmVscyA9IGxhYmVscztcbiAgICB0aGlzLnN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlO1xuICAgIHRoaXMuc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcyA9IHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXM7XG4gICAgdGhpcy5jb25zZXF1ZW50U3RhdGVtZW50Tm9kZSA9IGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0TGFiZWxzKCkge1xuICAgIHJldHVybiB0aGlzLmxhYmVscztcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldFN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcztcbiAgfVxuXG4gIGdldENvbnNlcXVlbnRTdGF0ZW1lbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgbWF0Y2hMYWJlbE5hbWUobGFiZWxOYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc0xhYmVsTmFtZSA9IHRoaXMubGFiZWxzLnNvbWUoKGxhYmVsKSA9PiB7XG4gICAgICBjb25zdCBuYW1lID0gbGFiZWxOYW1lLCAvLy9cbiAgICAgICAgICAgIGxhYmVsTWF0Y2hlc05hbWUgPSBsYWJlbC5tYXRjaE5hbWUobmFtZSk7XG5cbiAgICAgIGlmIChsYWJlbE1hdGNoZXNOYW1lKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNMYWJlbE5hbWU7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgbGFiZWxzSlNPTiA9IHRoaXMubGFiZWxzLm1hcCgobGFiZWwpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsSlNPTiA9IGxhYmVsLnRvSlNPTigpO1xuXG4gICAgICAgICAgICByZXR1cm4gbGFiZWxKU09OO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLnN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIGNvbnNlcXVlbnRTdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5jb25zZXF1ZW50U3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgc3VwcG9zaXRpb25TdGF0ZW1lbnRTdHJpbmdzID0gdGhpcy5zdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzLm1hcCgoc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdXBwb3NpdGlvblN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhzdXBwb3NpdGlvblN0YXRlbWVudE5vZGUpO1xuXG4gICAgICAgICAgICByZXR1cm4gc3VwcG9zaXRpb25TdGF0ZW1lbnRTdHJpbmc7XG4gICAgICAgICAgfSksXG4gICAgICAgICAga2luZCA9IFRIRU9SRU1fS0lORCxcbiAgICAgICAgICBsYWJlbHMgPSBsYWJlbHNKU09OLCAgLy8vXG4gICAgICAgICAgc3RhdGVtZW50ID0gc3RhdGVtZW50U3RyaW5nLCAgLy8vXG4gICAgICAgICAgY29uc2VxdWVudCA9IGNvbnNlcXVlbnRTdGF0ZW1lbnRTdHJpbmcsIC8vL1xuICAgICAgICAgIHN1cHBvc2l0aW9ucyA9IHN1cHBvc2l0aW9uU3RhdGVtZW50U3RyaW5ncywgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGtpbmQsXG4gICAgICAgICAgICBsYWJlbHMsXG4gICAgICAgICAgICBzdGF0ZW1lbnQsXG4gICAgICAgICAgICBjb25zZXF1ZW50LFxuICAgICAgICAgICAgc3VwcG9zaXRpb25zXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KSB7XG4gICAgbGV0IHsgbGFiZWxzIH0gPSBqc29uO1xuXG4gICAgY29uc3QgbGFiZWxzSlNPTiA9IGxhYmVsczsgIC8vL1xuXG4gICAgbGFiZWxzID0gbGFiZWxzSlNPTi5tYXAoKGxhYmVsSlNPTikgPT4ge1xuICAgICAgY29uc3QganNvbiA9IGxhYmVsSlNPTiwgLy8vXG4gICAgICAgICAgICBsYWJlbCA9IExhYmVsLmZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KTtcblxuICAgICAgcmV0dXJuIGxhYmVsO1xuICAgIH0pO1xuXG4gICAgY29uc3QgeyBzdGF0ZW1lbnQsIHN1cHBvc2l0aW9ucywgY29uc2VxdWVudCB9ID0ganNvbjtcblxuICAgIGxldCB0aGVvcmVtO1xuXG4gICAgaWYgKHN0YXRlbWVudCAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50SlNPTiA9IHN0YXRlbWVudCwgIC8vL1xuICAgICAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVGcm9tU3RhdGVtZW50SlNPTihzdGF0ZW1lbnRKU09OLCByZWxlYXNlQ29udGV4dCksXG4gICAgICAgICAgICBzdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzID0gbnVsbCxcbiAgICAgICAgICAgIGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlID0gbnVsbDtcblxuICAgICAgdGhlb3JlbSA9IG5ldyBUaGVvcmVtKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnROb2RlID0gbnVsbCxcbiAgICAgICAgICAgIHN1cHBvc2l0aW9uU3RhdGVtZW50c0pTT04gPSBzdXBwb3NpdGlvbnMsICAvLy9cbiAgICAgICAgICAgIHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMgPSBzdXBwb3NpdGlvblN0YXRlbWVudHNKU09OLm1hcCgoc3VwcG9zaXRpb25TdGF0ZW1lbnRKU09OKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVGcm9tU3RhdGVtZW50SlNPTihzdXBwb3NpdGlvblN0YXRlbWVudEpTT04sIHJlbGVhc2VDb250ZXh0KTtcblxuICAgICAgICAgICAgICByZXR1cm4gc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBjb25zZXF1ZW50U3RhdGVtZW50SlNPTiA9IGNvbnNlcXVlbnQsIC8vL1xuICAgICAgICAgICAgY29uc2VxdWVudFN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudEpTT04oY29uc2VxdWVudFN0YXRlbWVudEpTT04sIHJlbGVhc2VDb250ZXh0KTtcblxuICAgICAgdGhlb3JlbSA9IG5ldyBUaGVvcmVtKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGVvcmVtO1xuICB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNBbmRTdGF0ZW1lbnROb2RlKGxhYmVscywgc3RhdGVtZW50Tm9kZSkge1xuICAgIGNvbnN0IHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMgPSBbXSxcbiAgICAgICAgICBjb25zZXF1ZW50U3RhdGVtZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgdGhlb3JlbSA9IG5ldyBUaGVvcmVtKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIHRoZW9yZW07XG4gIH1cblxuICBzdGF0aWMgZnJvbUxhYmVsc1N1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXNBbmRDb25zZXF1ZW50U3RhdGVtZW50Tm9kZShsYWJlbHMsIHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMsIGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgdGhlb3JlbSA9IG5ldyBUaGVvcmVtKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIHRoZW9yZW07XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiVGhlb3JlbSIsImxhYmVscyIsInN0YXRlbWVudE5vZGUiLCJzdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzIiwiY29uc2VxdWVudFN0YXRlbWVudE5vZGUiLCJnZXRMYWJlbHMiLCJnZXRTdGF0ZW1lbnROb2RlIiwiZ2V0U3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcyIsImdldENvbnNlcXVlbnRTdGF0ZW1lbnROb2RlIiwibWF0Y2hMYWJlbE5hbWUiLCJsYWJlbE5hbWUiLCJtYXRjaGVzTGFiZWxOYW1lIiwic29tZSIsImxhYmVsIiwibmFtZSIsImxhYmVsTWF0Y2hlc05hbWUiLCJtYXRjaE5hbWUiLCJ0b0pTT04iLCJsYWJlbHNKU09OIiwibWFwIiwibGFiZWxKU09OIiwic3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiY29uc2VxdWVudFN0YXRlbWVudFN0cmluZyIsInN1cHBvc2l0aW9uU3RhdGVtZW50U3RyaW5ncyIsInN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZSIsInN1cHBvc2l0aW9uU3RhdGVtZW50U3RyaW5nIiwia2luZCIsIlRIRU9SRU1fS0lORCIsInN0YXRlbWVudCIsImNvbnNlcXVlbnQiLCJzdXBwb3NpdGlvbnMiLCJqc29uIiwiZnJvbUpTT04iLCJyZWxlYXNlQ29udGV4dCIsIkxhYmVsIiwidGhlb3JlbSIsInN0YXRlbWVudEpTT04iLCJzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudEpTT04iLCJzdXBwb3NpdGlvblN0YXRlbWVudHNKU09OIiwic3VwcG9zaXRpb25TdGF0ZW1lbnRKU09OIiwiY29uc2VxdWVudFN0YXRlbWVudEpTT04iLCJmcm9tTGFiZWxzQW5kU3RhdGVtZW50Tm9kZSIsImZyb21MYWJlbHNTdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzQW5kQ29uc2VxdWVudFN0YXRlbWVudE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBU3FCQTs7OzBEQVBIO3FCQUVXO3NCQUNBO29CQUVrQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVoQyxJQUFBLEFBQU1BLHdCQUFOO2FBQU1BLFFBQ1BDLE1BQU0sRUFBRUMsYUFBYSxFQUFFQyx5QkFBeUIsRUFBRUMsdUJBQXVCOzhCQURsRUo7UUFFakIsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyxhQUFhLEdBQUdBO1FBQ3JCLElBQUksQ0FBQ0MseUJBQXlCLEdBQUdBO1FBQ2pDLElBQUksQ0FBQ0MsdUJBQXVCLEdBQUdBOztpQkFMZEo7O1lBUW5CSyxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWTtnQkFDVixPQUFPLElBQUksQ0FBQ0osTUFBTTtZQUNwQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxtQkFBbUI7Z0JBQ2pCLE9BQU8sSUFBSSxDQUFDSixhQUFhO1lBQzNCOzs7WUFFQUssS0FBQUE7bUJBQUFBLFNBQUFBLCtCQUErQjtnQkFDN0IsT0FBTyxJQUFJLENBQUNKLHlCQUF5QjtZQUN2Qzs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSw2QkFBNkI7Z0JBQzNCLE9BQU8sSUFBSSxDQUFDSix1QkFBdUI7WUFDckM7OztZQUVBSyxLQUFBQTttQkFBQUEsU0FBQUEsZUFBZUMsU0FBUyxFQUFFO2dCQUN4QixJQUFNQyxtQkFBbUIsSUFBSSxDQUFDVixNQUFNLENBQUNXLElBQUksQ0FBQyxTQUFDQyxPQUFVO29CQUNuRCxJQUFNQyxPQUFPSixXQUNQSyxtQkFBbUJGLE1BQU1HLFNBQVMsQ0FBQ0Y7b0JBRXpDLElBQUlDLGtCQUFrQjt3QkFDcEIsT0FBTyxJQUFJO29CQUNiLENBQUM7Z0JBQ0g7Z0JBRUEsT0FBT0o7WUFDVDs7O1lBRUFNLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTO2dCQUNQLElBQU1DLGFBQWEsSUFBSSxDQUFDakIsTUFBTSxDQUFDa0IsR0FBRyxDQUFDLFNBQUNOLE9BQVU7b0JBQ3RDLElBQU1PLFlBQVlQLE1BQU1JLE1BQU07b0JBRTlCLE9BQU9HO2dCQUNULElBQ0FDLGtCQUFrQkMsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNwQixhQUFhLEdBQ2pEcUIsNEJBQTRCRCxJQUFBQSxvQkFBWSxFQUFDLElBQUksQ0FBQ2xCLHVCQUF1QixHQUNyRW9CLDhCQUE4QixJQUFJLENBQUNyQix5QkFBeUIsQ0FBQ2dCLEdBQUcsQ0FBQyxTQUFDTSwwQkFBNkI7b0JBQzdGLElBQU1DLDZCQUE2QkosSUFBQUEsb0JBQVksRUFBQ0c7b0JBRWhELE9BQU9DO2dCQUNULElBQ0FDLE9BQU9DLG1CQUFZLEVBQ25CM0IsU0FBU2lCLFlBQ1RXLFlBQVlSLGlCQUNaUyxhQUFhUCwyQkFDYlEsZUFBZVAsNkJBQ2ZRLE9BQU87b0JBQ0xMLE1BQUFBO29CQUNBMUIsUUFBQUE7b0JBQ0E0QixXQUFBQTtvQkFDQUMsWUFBQUE7b0JBQ0FDLGNBQUFBO2dCQUNGO2dCQUVOLE9BQU9DO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsU0FBU0QsSUFBSSxFQUFFRSxjQUFjLEVBQUU7Z0JBQ3BDLElBQUksQUFBRWpDLFNBQVcrQixLQUFYL0I7Z0JBRU4sSUFBTWlCLGFBQWFqQixRQUFTLEdBQUc7Z0JBRS9CQSxTQUFTaUIsV0FBV0MsR0FBRyxDQUFDLFNBQUNDLFdBQWM7b0JBQ3JDLElBQU1ZLFNBQU9aLFdBQ1BQLFFBQVFzQixjQUFLLENBQUNGLFFBQVEsQ0FBQ0QsUUFBTUU7b0JBRW5DLE9BQU9yQjtnQkFDVDtnQkFFQSxJQUFRZ0IsWUFBd0NHLEtBQXhDSCxXQUFXRSxlQUE2QkMsS0FBN0JELGNBQWNELGFBQWVFLEtBQWZGO2dCQUVqQyxJQUFJTTtnQkFFSixJQUFJUCxjQUFjLElBQUksRUFBRTtvQkFDdEIsSUFBTVEsZ0JBQWdCUixXQUNoQjNCLGdCQUFnQm9DLElBQUFBLG9DQUE4QixFQUFDRCxlQUFlSCxpQkFDOUQvQiw0QkFBNEIsSUFBSSxFQUNoQ0MsMEJBQTBCLElBQUk7b0JBRXBDZ0MsVUFBVSxJQXhGS3BDLFFBd0ZPQyxRQUFRQyxlQUFlQywyQkFBMkJDO2dCQUMxRSxPQUFPO29CQUNMLElBQU1GLGlCQUFnQixJQUFJLEVBQ3BCcUMsNEJBQTRCUixjQUM1QjVCLDZCQUE0Qm9DLDBCQUEwQnBCLEdBQUcsQ0FBQyxTQUFDcUIsMEJBQTZCO3dCQUN0RixJQUFNZiwyQkFBMkJhLElBQUFBLG9DQUE4QixFQUFDRSwwQkFBMEJOO3dCQUUxRixPQUFPVDtvQkFDVCxJQUNBZ0IsMEJBQTBCWCxZQUMxQjFCLDJCQUEwQmtDLElBQUFBLG9DQUE4QixFQUFDRyx5QkFBeUJQO29CQUV4RkUsVUFBVSxJQXBHS3BDLFFBb0dPQyxRQUFRQyxnQkFBZUMsNEJBQTJCQztnQkFDMUUsQ0FBQztnQkFFRCxPQUFPZ0M7WUFDVDs7O1lBRU9NLEtBQUFBO21CQUFQLFNBQU9BLDJCQUEyQnpDLE1BQU0sRUFBRUMsYUFBYSxFQUFFO2dCQUN2RCxJQUFNQyw0QkFBNEIsRUFBRSxFQUM5QkMsMEJBQTBCLElBQUksRUFDOUJnQyxVQUFVLElBN0dDcEMsUUE2R1dDLFFBQVFDLGVBQWVDLDJCQUEyQkM7Z0JBRTlFLE9BQU9nQztZQUNUOzs7WUFFT08sS0FBQUE7bUJBQVAsU0FBT0EsOERBQThEMUMsTUFBTSxFQUFFRSx5QkFBeUIsRUFBRUMsdUJBQXVCLEVBQUU7Z0JBQy9ILElBQU1GLGdCQUFnQixJQUFJLEVBQ3BCa0MsVUFBVSxJQXBIQ3BDLFFBb0hXQyxRQUFRQyxlQUFlQywyQkFBMkJDO2dCQUU5RSxPQUFPZ0M7WUFDVDs7O1dBdkhtQnBDIn0=
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90aGVvcmVtLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTGFiZWwgZnJvbSBcIi4vbGFiZWxcIjtcblxuaW1wb3J0IHsgVEhFT1JFTV9LSU5EIH0gZnJvbSBcIi4va2luZHNcIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuaW1wb3J0IHsgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nLCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlRnJvbUluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGhlb3JlbSB7XG4gIGNvbnN0cnVjdG9yKGxhYmVscywgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlKSB7XG4gICAgdGhpcy5sYWJlbHMgPSBsYWJlbHM7XG4gICAgdGhpcy51bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGU7XG4gICAgdGhpcy5pbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlID0gaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZTtcbiAgfVxuXG4gIGdldExhYmVscygpIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbHM7XG4gIH1cblxuICBnZXRVbnF1YWxpZmllZFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0SW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5pbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlO1xuICB9XG5cbiAgbWF0Y2hMYWJlbE5hbWUobGFiZWxOYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc0xhYmVsTmFtZSA9IHRoaXMubGFiZWxzLnNvbWUoKGxhYmVsKSA9PiB7XG4gICAgICBjb25zdCBuYW1lID0gbGFiZWxOYW1lLCAvLy9cbiAgICAgICAgbGFiZWxNYXRjaGVzTmFtZSA9IGxhYmVsLm1hdGNoTmFtZShuYW1lKTtcblxuICAgICAgaWYgKGxhYmVsTWF0Y2hlc05hbWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbWF0Y2hlc0xhYmVsTmFtZTtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBsYWJlbHNKU09OID0gdGhpcy5sYWJlbHMubWFwKChsYWJlbCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbGFiZWxKU09OID0gbGFiZWwudG9KU09OKCk7XG5cbiAgICAgICAgICAgIHJldHVybiBsYWJlbEpTT047XG4gICAgICAgICAgfSksXG4gICAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy51bnFhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMuaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSksXG4gICAgICAgICAga2luZCA9IFRIRU9SRU1fS0lORCxcbiAgICAgICAgICBsYWJlbHMgPSBsYWJlbHNKU09OLCAgLy8vXG4gICAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnQgPSB1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZywgIC8vL1xuICAgICAgICAgIGluZGljYXRpdmVDb25kaXRpb25hbCA9IGluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZywgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBraW5kLFxuICAgICAgICAgICAgbGFiZWxzLFxuICAgICAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnQsXG4gICAgICAgICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpIHtcbiAgICBsZXQgeyBsYWJlbHMgfSA9IGpzb247XG5cbiAgICBjb25zdCBsYWJlbHNKU09OID0gbGFiZWxzOyAgLy8vXG5cbiAgICBsYWJlbHMgPSBsYWJlbHNKU09OLm1hcCgobGFiZWxKU09OKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QganNvbiA9IGxhYmVsSlNPTiwgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgbGFiZWwgPSBMYWJlbC5mcm9tSlNPTihqc29uLCByZWxlYXNlQ29udGV4dCk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gbGFiZWw7XG4gICAgICAgICAgICAgIH0pO1xuXG4gICAgbGV0IHsgdW5xdWFsaWZpZWRTdGF0ZW1lbnQsIGluZGljYXRpdmVDb25kaXRpb25hbCB9ID0ganNvbjtcblxuICAgIGxldCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlID0gbnVsbDtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudCAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSB1bnF1YWxpZmllZFN0YXRlbWVudDsgIC8vL1xuXG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcodW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcsIHJlbGVhc2VDb250ZXh0KTtcbiAgICB9XG5cbiAgICBpZiAoaW5kaWNhdGl2ZUNvbmRpdGlvbmFsICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBpbmRpY2F0aXZlQ29uZGl0aW9uYWxTdHJpbmcgPSBpbmRpY2F0aXZlQ29uZGl0aW9uYWw7ICAvLy9cblxuICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSA9IGluZGljYXRpdmVDb25kaXRpb25hbE5vZGVGcm9tSW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nKGluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZywgcmVsZWFzZUNvbnRleHQpO1xuICAgIH1cblxuICAgIGNvbnN0IHRoZW9yZW0gPSBuZXcgVGhlb3JlbShsYWJlbHMsIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSk7XG5cbiAgICByZXR1cm4gdGhlb3JlbTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTGFiZWxzVW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlQW5kSW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZShsYWJlbHMsIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSkge1xuICAgIGNvbnN0IHRoZW9yZW0gPSBuZXcgVGhlb3JlbShsYWJlbHMsIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSk7XG5cbiAgICByZXR1cm4gdGhlb3JlbTtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJUaGVvcmVtIiwibGFiZWxzIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSIsImdldExhYmVscyIsImdldFVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImdldEluZGljYXRpdmVDb25kaXRpb25hbE5vZGUiLCJtYXRjaExhYmVsTmFtZSIsImxhYmVsTmFtZSIsIm1hdGNoZXNMYWJlbE5hbWUiLCJzb21lIiwibGFiZWwiLCJuYW1lIiwibGFiZWxNYXRjaGVzTmFtZSIsIm1hdGNoTmFtZSIsInRvSlNPTiIsImxhYmVsc0pTT04iLCJtYXAiLCJsYWJlbEpTT04iLCJ1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInVucWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nIiwia2luZCIsIlRIRU9SRU1fS0lORCIsInVucXVhbGlmaWVkU3RhdGVtZW50IiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsIiwianNvbiIsImZyb21KU09OIiwicmVsZWFzZUNvbnRleHQiLCJMYWJlbCIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsImluZGljYXRpdmVDb25kaXRpb25hbE5vZGVGcm9tSW5kaWNhdGl2ZUNvbmRpdGlvbmFsU3RyaW5nIiwidGhlb3JlbSIsImZyb21MYWJlbHNVbnF1YWxpZmllZFN0YXRlbWVudE5vZGVBbmRJbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVNxQkE7OzswREFQSDtxQkFFVztzQkFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlkLElBQUEsQUFBTUEsd0JBQU47YUFBTUEsUUFDUEMsTUFBTSxFQUFFQyx3QkFBd0IsRUFBRUMseUJBQXlCOzhCQURwREg7UUFFakIsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyx3QkFBd0IsR0FBR0E7UUFDaEMsSUFBSSxDQUFDQyx5QkFBeUIsR0FBR0E7O2lCQUpoQkg7O1lBT25CSSxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWTtnQkFDVixPQUFPLElBQUksQ0FBQ0gsTUFBTTtZQUNwQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQSw4QkFBOEI7Z0JBQzVCLE9BQU8sSUFBSSxDQUFDSCx3QkFBd0I7WUFDdEM7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUEsK0JBQStCO2dCQUM3QixPQUFPLElBQUksQ0FBQ0gseUJBQXlCO1lBQ3ZDOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVDLFNBQVMsRUFBRTtnQkFDeEIsSUFBTUMsbUJBQW1CLElBQUksQ0FBQ1IsTUFBTSxDQUFDUyxJQUFJLENBQUMsU0FBQ0MsT0FBVTtvQkFDbkQsSUFBTUMsT0FBT0osV0FDWEssbUJBQW1CRixNQUFNRyxTQUFTLENBQUNGO29CQUVyQyxJQUFJQyxrQkFBa0I7d0JBQ3BCLE9BQU8sSUFBSTtvQkFDYixDQUFDO2dCQUNIO2dCQUVBLE9BQU9KO1lBQ1Q7OztZQUVBTSxLQUFBQTttQkFBQUEsU0FBQUEsU0FBUztnQkFDUCxJQUFNQyxhQUFhLElBQUksQ0FBQ2YsTUFBTSxDQUFDZ0IsR0FBRyxDQUFDLFNBQUNOLE9BQVU7b0JBQ3RDLElBQU1PLFlBQVlQLE1BQU1JLE1BQU07b0JBRTlCLE9BQU9HO2dCQUNULElBQ0FDLDZCQUE2QkMsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNDLHVCQUF1QixHQUN0RUMsOEJBQThCRixJQUFBQSxvQkFBWSxFQUFDLElBQUksQ0FBQ2pCLHlCQUF5QixHQUN6RW9CLE9BQU9DLG1CQUFZLEVBQ25CdkIsU0FBU2UsWUFDVFMsdUJBQXVCTiw0QkFDdkJPLHdCQUF3QkosNkJBQ3hCSyxPQUFPO29CQUNMSixNQUFBQTtvQkFDQXRCLFFBQUFBO29CQUNBd0Isc0JBQUFBO29CQUNBQyx1QkFBQUE7Z0JBQ0Y7Z0JBRU4sT0FBT0M7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTRCxJQUFJLEVBQUVFLGNBQWMsRUFBRTtnQkFDcEMsSUFBSSxBQUFFNUIsU0FBVzBCLEtBQVgxQjtnQkFFTixJQUFNZSxhQUFhZixRQUFTLEdBQUc7Z0JBRS9CQSxTQUFTZSxXQUFXQyxHQUFHLENBQUMsU0FBQ0MsV0FBYztvQkFDM0IsSUFBTVMsU0FBT1QsV0FDUFAsUUFBUW1CLGNBQUssQ0FBQ0YsUUFBUSxDQUFDRCxRQUFNRTtvQkFFbkMsT0FBT2xCO2dCQUNUO2dCQUVWLElBQU1jLHVCQUFnREUsS0FBaERGLHNCQUFzQkMsd0JBQTBCQyxLQUExQkQ7Z0JBRTVCLElBQUl4QiwyQkFBMkIsSUFBSSxFQUMvQkMsNEJBQTRCLElBQUk7Z0JBRXBDLElBQUlzQix5QkFBeUIsSUFBSSxFQUFFO29CQUNqQyxJQUFNTiw2QkFBNkJNLHNCQUF1QixHQUFHO29CQUU3RHZCLDJCQUEyQjZCLElBQUFBLDhEQUFzRCxFQUFDWiw0QkFBNEJVO2dCQUNoSCxDQUFDO2dCQUVELElBQUlILDBCQUEwQixJQUFJLEVBQUU7b0JBQ2xDLElBQU1KLDhCQUE4QkksdUJBQXdCLEdBQUc7b0JBRS9EdkIsNEJBQTRCNkIsSUFBQUEsZ0VBQXdELEVBQUNWLDZCQUE2Qk87Z0JBQ3BILENBQUM7Z0JBRUQsSUFBTUksVUFBVSxJQW5GQ2pDLFFBbUZXQyxRQUFRQywwQkFBMEJDO2dCQUU5RCxPQUFPOEI7WUFDVDs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLCtEQUErRGpDLE1BQU0sRUFBRUMsd0JBQXdCLEVBQUVDLHlCQUF5QixFQUFFO2dCQUNqSSxJQUFNOEIsVUFBVSxJQXpGQ2pDLFFBeUZXQyxRQUFRQywwQkFBMEJDO2dCQUU5RCxPQUFPOEI7WUFDVDs7O1dBNUZtQmpDIn0=
|
package/lib/utilities/string.js
CHANGED
|
@@ -14,9 +14,30 @@ _export(exports, {
|
|
|
14
14
|
},
|
|
15
15
|
nodesAsString: function() {
|
|
16
16
|
return nodesAsString;
|
|
17
|
+
},
|
|
18
|
+
termNodeFromTermString: function() {
|
|
19
|
+
return termNodeFromTermString;
|
|
20
|
+
},
|
|
21
|
+
labelNodeFromLabelString: function() {
|
|
22
|
+
return labelNodeFromLabelString;
|
|
23
|
+
},
|
|
24
|
+
statementNodeFromStatementString: function() {
|
|
25
|
+
return statementNodeFromStatementString;
|
|
26
|
+
},
|
|
27
|
+
metastatementNodeFromMetastatementString: function() {
|
|
28
|
+
return metastatementNodeFromMetastatementString;
|
|
29
|
+
},
|
|
30
|
+
unqualifiedStatementNodeFromUnqualifiedStatementString: function() {
|
|
31
|
+
return unqualifiedStatementNodeFromUnqualifiedStatementString;
|
|
32
|
+
},
|
|
33
|
+
indicativeConditionalNodeFromIndicativeConditionalString: function() {
|
|
34
|
+
return indicativeConditionalNodeFromIndicativeConditionalString;
|
|
17
35
|
}
|
|
18
36
|
});
|
|
19
37
|
var _constants = require("../constants");
|
|
38
|
+
var _query = require("../utilities/query");
|
|
39
|
+
var _ruleNames = require("../ruleNames");
|
|
40
|
+
var statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement"), metastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement/metastatement");
|
|
20
41
|
function nodeAsString(node) {
|
|
21
42
|
var string = null;
|
|
22
43
|
if (node !== null) {
|
|
@@ -46,5 +67,29 @@ function nodesAsString(nodes) {
|
|
|
46
67
|
}, null);
|
|
47
68
|
return string;
|
|
48
69
|
}
|
|
70
|
+
function termNodeFromTermString(termString, releaseContext) {
|
|
71
|
+
var ruleName = _ruleNames.TERM_RULE_NAME, content = termString, node = releaseContext.nodeFromContentAndRuleName(content, ruleName), termNode = node; ///
|
|
72
|
+
return termNode;
|
|
73
|
+
}
|
|
74
|
+
function labelNodeFromLabelString(labelString, releaseContext) {
|
|
75
|
+
var content = labelString, ruleName = _ruleNames.LABEL_RULE_NAME, node = releaseContext.nodeFromContentAndRuleName(content, ruleName), labelNode = node; ///
|
|
76
|
+
return labelNode;
|
|
77
|
+
}
|
|
78
|
+
function statementNodeFromStatementString(statementString, releaseContext) {
|
|
79
|
+
var ruleName = _ruleNames.UNQUALIFIED_STATEMENT_RULE_NAME, content = "".concat(statementString, "\n"), node = releaseContext.nodeFromContentAndRuleName(content, ruleName), unqualifiedStatementNode = node, statementNode = statementNodeQuery(unqualifiedStatementNode);
|
|
80
|
+
return statementNode;
|
|
81
|
+
}
|
|
82
|
+
function metastatementNodeFromMetastatementString(metastatementString, releaseContext) {
|
|
83
|
+
var ruleName = _ruleNames.UNQUALIFIED_METASTATEMENT_RULE_NAME, content = "".concat(metastatementString, "\n"), node = releaseContext.nodeFromContentAndRuleName(content, ruleName), unqualifiedMetastatementNode = node, metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode);
|
|
84
|
+
return metastatementNode;
|
|
85
|
+
}
|
|
86
|
+
function unqualifiedStatementNodeFromUnqualifiedStatementString(unqualifiedStatementString, releaseContext) {
|
|
87
|
+
var ruleName = _ruleNames.UNQUALIFIED_STATEMENT_RULE_NAME, content = unqualifiedStatementString, node = releaseContext.nodeFromContentAndRuleName(content, ruleName), unqualifiedStatementNode = node; ///
|
|
88
|
+
return unqualifiedStatementNode;
|
|
89
|
+
}
|
|
90
|
+
function indicativeConditionalNodeFromIndicativeConditionalString(indicativeConditionalString, releaseContext) {
|
|
91
|
+
var ruleName = _ruleNames.INDICATIVE_CONDITIONAL_RULE_NAME, content = indicativeConditionalString, node = releaseContext.nodeFromContentAndRuleName(content, ruleName), indicativeConditionalNode = node; ///
|
|
92
|
+
return indicativeConditionalNode;
|
|
93
|
+
}
|
|
49
94
|
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvc3RyaW5nLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBDT01NQSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FLFxuICAgICAgICAgTEFCRUxfUlVMRV9OQU1FLFxuICAgICAgICAgVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgIElORElDQVRJVkVfQ09ORElUSU9OQUxfUlVMRV9OQU1FLFxuICAgICAgICAgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUV9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuY29uc3Qgc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3VucXVhbGlmaWVkU3RhdGVtZW50L3N0YXRlbWVudFwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50L21ldGFzdGF0ZW1lbnRcIik7XG5cbmV4cG9ydCBmdW5jdGlvbiBub2RlQXNTdHJpbmcobm9kZSkge1xuICBsZXQgc3RyaW5nID0gbnVsbDtcblxuICBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG5vZGVUZXJtaW5hbE5vZGUgPSBub2RlLmlzVGVybWluYWxOb2RlKCk7XG5cbiAgICBpZiAobm9kZVRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybWluYWxOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgICAgY29udGVudCA9IHRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCk7XG5cbiAgICAgIHN0cmluZyA9IGNvbnRlbnQ7IC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpO1xuXG4gICAgICBjaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgICBjb25zdCBub2RlU3RyaW5nID0gbm9kZUFzU3RyaW5nKGNoaWxkTm9kZSk7XG5cbiAgICAgICAgc3RyaW5nID0gKHN0cmluZyA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgIG5vZGVTdHJpbmcgOiAvLy9cbiAgICAgICAgICAgICAgICAgICAgYCR7c3RyaW5nfSR7bm9kZVN0cmluZ31gO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vZGVzQXNTdHJpbmcobm9kZXMpIHtcbiAgY29uc3Qgc3RyaW5nID0gbm9kZXMucmVkdWNlKChzdHJpbmcsIG5vZGUpID0+IHtcbiAgICBjb25zdCBub2RlU3RyaW5nID0gbm9kZUFzU3RyaW5nKG5vZGUpO1xuXG4gICAgaWYgKHN0cmluZyA9PT0gbnVsbCkge1xuICAgICAgc3RyaW5nID0gbm9kZVN0cmluZzsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBzdHJpbmcgPSBgJHtzdHJpbmd9JHtDT01NQX0ke25vZGVTdHJpbmd9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9LCBudWxsKTtcblxuICByZXR1cm4gc3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGVybU5vZGVGcm9tVGVybVN0cmluZyh0ZXJtU3RyaW5nLCByZWxlYXNlQ29udGV4dCkge1xuICBjb25zdCBydWxlTmFtZSA9IFRFUk1fUlVMRV9OQU1FLFxuICAgICAgICBjb250ZW50ID0gdGVybVN0cmluZywgLy8vXG4gICAgICAgIG5vZGUgPSByZWxlYXNlQ29udGV4dC5ub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSksXG4gICAgICAgIHRlcm1Ob2RlID0gbm9kZTsgIC8vL1xuXG4gIHJldHVybiB0ZXJtTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxhYmVsTm9kZUZyb21MYWJlbFN0cmluZyhsYWJlbFN0cmluZywgcmVsZWFzZUNvbnRleHQpIHtcbiAgY29uc3QgY29udGVudCA9IGxhYmVsU3RyaW5nLCAvLy9cbiAgICAgICAgcnVsZU5hbWUgPSBMQUJFTF9SVUxFX05BTUUsXG4gICAgICAgIG5vZGUgPSByZWxlYXNlQ29udGV4dC5ub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSksXG4gICAgICAgIGxhYmVsTm9kZSA9IG5vZGU7IC8vL1xuXG4gIHJldHVybiBsYWJlbE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudFN0cmluZyhzdGF0ZW1lbnRTdHJpbmcsIHJlbGVhc2VDb250ZXh0KSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgY29udGVudCA9IGAke3N0YXRlbWVudFN0cmluZ31cbmAsXG4gICAgICAgIG5vZGUgPSByZWxlYXNlQ29udGV4dC5ub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSksXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiBzdGF0ZW1lbnROb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YXN0YXRlbWVudE5vZGVGcm9tTWV0YXN0YXRlbWVudFN0cmluZyhtZXRhc3RhdGVtZW50U3RyaW5nLCByZWxlYXNlQ29udGV4dCkge1xuICBjb25zdCBydWxlTmFtZSA9IFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FLFxuICAgICAgICBjb250ZW50ID0gYCR7bWV0YXN0YXRlbWVudFN0cmluZ31cbmAsXG4gICAgICAgIG5vZGUgPSByZWxlYXNlQ29udGV4dC5ub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSksXG4gICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcodW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcsIHJlbGVhc2VDb250ZXh0KSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgY29udGVudCA9IHVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nLCAvLy9cbiAgICAgICAgbm9kZSA9IHJlbGVhc2VDb250ZXh0Lm5vZGVGcm9tQ29udGVudEFuZFJ1bGVOYW1lKGNvbnRlbnQsIHJ1bGVOYW1lKSxcbiAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gbm9kZTsgIC8vL1xuXG4gIHJldHVybiB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlRnJvbUluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZyhpbmRpY2F0aXZlQ29uZGl0aW9uYWxTdHJpbmcsIHJlbGVhc2VDb250ZXh0KSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gSU5ESUNBVElWRV9DT05ESVRJT05BTF9SVUxFX05BTUUsXG4gICAgICAgIGNvbnRlbnQgPSBpbmRpY2F0aXZlQ29uZGl0aW9uYWxTdHJpbmcsIC8vL1xuICAgICAgICBub2RlID0gcmVsZWFzZUNvbnRleHQubm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUoY29udGVudCwgcnVsZU5hbWUpLFxuICAgICAgICBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlID0gbm9kZTsgIC8vL1xuXG4gIHJldHVybiBpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlO1xufVxuIl0sIm5hbWVzIjpbIm5vZGVBc1N0cmluZyIsIm5vZGVzQXNTdHJpbmciLCJ0ZXJtTm9kZUZyb21UZXJtU3RyaW5nIiwibGFiZWxOb2RlRnJvbUxhYmVsU3RyaW5nIiwic3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRTdHJpbmciLCJtZXRhc3RhdGVtZW50Tm9kZUZyb21NZXRhc3RhdGVtZW50U3RyaW5nIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZUZyb21JbmRpY2F0aXZlQ29uZGl0aW9uYWxTdHJpbmciLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9kZSIsInN0cmluZyIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsImNvbnRlbnQiLCJnZXRDb250ZW50Iiwibm9uVGVybWluYWxOb2RlIiwiY2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJmb3JFYWNoIiwiY2hpbGROb2RlIiwibm9kZVN0cmluZyIsIm5vZGVzIiwicmVkdWNlIiwiQ09NTUEiLCJ0ZXJtU3RyaW5nIiwicmVsZWFzZUNvbnRleHQiLCJydWxlTmFtZSIsIlRFUk1fUlVMRV9OQU1FIiwibm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUiLCJ0ZXJtTm9kZSIsImxhYmVsU3RyaW5nIiwiTEFCRUxfUlVMRV9OQU1FIiwibGFiZWxOb2RlIiwic3RhdGVtZW50U3RyaW5nIiwiVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50U3RyaW5nIiwiVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE5vZGUiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsImluZGljYXRpdmVDb25kaXRpb25hbFN0cmluZyIsIklORElDQVRJVkVfQ09ORElUSU9OQUxfUlVMRV9OQU1FIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBYWdCQSxZQUFZO2VBQVpBOztJQTRCQUMsYUFBYTtlQUFiQTs7SUFnQkFDLHNCQUFzQjtlQUF0QkE7O0lBU0FDLHdCQUF3QjtlQUF4QkE7O0lBU0FDLGdDQUFnQztlQUFoQ0E7O0lBV0FDLHdDQUF3QztlQUF4Q0E7O0lBV0FDLHNEQUFzRDtlQUF0REE7O0lBU0FDLHdEQUF3RDtlQUF4REE7Ozt5QkF4R007cUJBQ0k7eUJBS3lCO0FBRW5ELElBQU1DLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQyxvQ0FDL0JDLHlCQUF5QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUVsQyxTQUFTVCxhQUFhVyxJQUFJLEVBQUU7SUFDakMsSUFBSUMsU0FBUyxJQUFJO0lBRWpCLElBQUlELFNBQVMsSUFBSSxFQUFFO1FBQ2pCLElBQU1FLG1CQUFtQkYsS0FBS0csY0FBYztRQUU1QyxJQUFJRCxrQkFBa0I7WUFDcEIsSUFBTUUsZUFBZUosTUFDZkssVUFBVUQsYUFBYUUsVUFBVTtZQUV2Q0wsU0FBU0ksU0FBUyxHQUFHO1FBQ3ZCLE9BQU87WUFDTCxJQUFNRSxrQkFBa0JQLE1BQ2xCUSxhQUFhRCxnQkFBZ0JFLGFBQWE7WUFFaERELFdBQVdFLE9BQU8sQ0FBQyxTQUFDQyxXQUFjO2dCQUNoQyxJQUFNQyxhQUFhdkIsYUFBYXNCO2dCQUVoQ1YsU0FBUyxBQUFDQSxXQUFXLElBQUksR0FDZFcsYUFDQyxBQUFDLEdBQVdBLE9BQVRYLFFBQW9CLE9BQVhXLFdBQVk7WUFDdEM7UUFDRixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU9YO0FBQ1Q7QUFFTyxTQUFTWCxjQUFjdUIsS0FBSyxFQUFFO0lBQ25DLElBQU1aLFNBQVNZLE1BQU1DLE1BQU0sQ0FBQyxTQUFDYixRQUFRRCxNQUFTO1FBQzVDLElBQU1ZLGFBQWF2QixhQUFhVztRQUVoQyxJQUFJQyxXQUFXLElBQUksRUFBRTtZQUNuQkEsU0FBU1csWUFBYSxHQUFHO1FBQzNCLE9BQU87WUFDTFgsU0FBUyxBQUFDLEdBQVdjLE9BQVRkLFFBQWlCVyxPQUFSRyxnQkFBSyxFQUFjLE9BQVhIO1FBQy9CLENBQUM7UUFFRCxPQUFPWDtJQUNULEdBQUcsSUFBSTtJQUVQLE9BQU9BO0FBQ1Q7QUFFTyxTQUFTVix1QkFBdUJ5QixVQUFVLEVBQUVDLGNBQWMsRUFBRTtJQUNqRSxJQUFNQyxXQUFXQyx5QkFBYyxFQUN6QmQsVUFBVVcsWUFDVmhCLE9BQU9pQixlQUFlRywwQkFBMEIsQ0FBQ2YsU0FBU2EsV0FDMURHLFdBQVdyQixNQUFPLEdBQUc7SUFFM0IsT0FBT3FCO0FBQ1Q7QUFFTyxTQUFTN0IseUJBQXlCOEIsV0FBVyxFQUFFTCxjQUFjLEVBQUU7SUFDcEUsSUFBTVosVUFBVWlCLGFBQ1ZKLFdBQVdLLDBCQUFlLEVBQzFCdkIsT0FBT2lCLGVBQWVHLDBCQUEwQixDQUFDZixTQUFTYSxXQUMxRE0sWUFBWXhCLE1BQU0sR0FBRztJQUUzQixPQUFPd0I7QUFDVDtBQUVPLFNBQVMvQixpQ0FBaUNnQyxlQUFlLEVBQUVSLGNBQWMsRUFBRTtJQUNoRixJQUFNQyxXQUFXUSwwQ0FBK0IsRUFDMUNyQixVQUFVLEFBQUMsR0FBa0IsT0FBaEJvQixpQkFBZ0IsT0FFN0J6QixPQUFPaUIsZUFBZUcsMEJBQTBCLENBQUNmLFNBQVNhLFdBQzFEUywyQkFBMkIzQixNQUMzQjRCLGdCQUFnQi9CLG1CQUFtQjhCO0lBRXpDLE9BQU9DO0FBQ1Q7QUFFTyxTQUFTbEMseUNBQXlDbUMsbUJBQW1CLEVBQUVaLGNBQWMsRUFBRTtJQUM1RixJQUFNQyxXQUFXWSw4Q0FBbUMsRUFDOUN6QixVQUFVLEFBQUMsR0FBc0IsT0FBcEJ3QixxQkFBb0IsT0FFakM3QixPQUFPaUIsZUFBZUcsMEJBQTBCLENBQUNmLFNBQVNhLFdBQzFEYSwrQkFBK0IvQixNQUMvQmdDLG9CQUFvQmpDLHVCQUF1QmdDO0lBRWpELE9BQU9DO0FBQ1Q7QUFFTyxTQUFTckMsdURBQXVEc0MsMEJBQTBCLEVBQUVoQixjQUFjLEVBQUU7SUFDakgsSUFBTUMsV0FBV1EsMENBQStCLEVBQzFDckIsVUFBVTRCLDRCQUNWakMsT0FBT2lCLGVBQWVHLDBCQUEwQixDQUFDZixTQUFTYSxXQUMxRFMsMkJBQTJCM0IsTUFBTyxHQUFHO0lBRTNDLE9BQU8yQjtBQUNUO0FBRU8sU0FBUy9CLHlEQUF5RHNDLDJCQUEyQixFQUFFakIsY0FBYyxFQUFFO0lBQ3BILElBQU1DLFdBQVdpQiwyQ0FBZ0MsRUFDM0M5QixVQUFVNkIsNkJBQ1ZsQyxPQUFPaUIsZUFBZUcsMEJBQTBCLENBQUNmLFNBQVNhLFdBQzFEa0IsNEJBQTRCcEMsTUFBTyxHQUFHO0lBRTVDLE9BQU9vQztBQUNUIn0=
|
|
@@ -0,0 +1,55 @@
|
|
|
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 verifyTypeAssertion;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _array = require("../../utilities/array");
|
|
12
|
+
var _string = require("../../utilities/string");
|
|
13
|
+
var _query = require("../../utilities/query");
|
|
14
|
+
var _term = require("../../verify/term");
|
|
15
|
+
var termNodeQuery = (0, _query.nodeQuery)("/typeAssertion/term"), typeNodeQuery = (0, _query.nodeQuery)("/typeAssertion/type");
|
|
16
|
+
function verifyTypeAssertion(typeAssertionNode, proofContext) {
|
|
17
|
+
var typeAssertionVerified = false;
|
|
18
|
+
proofContext.begin(typeAssertionNode);
|
|
19
|
+
var typeAssertionString = (0, _string.nodeAsString)(typeAssertionNode);
|
|
20
|
+
proofContext.debug("Verifying the '".concat(typeAssertionString, "' type assertion..."));
|
|
21
|
+
var typeNode = typeNodeQuery(typeAssertionNode), typeName = (0, _query.typeNameFromTypeNode)(typeNode), typePresent = proofContext.isTypePresentByTypeName(typeName);
|
|
22
|
+
if (!typePresent) {
|
|
23
|
+
proofContext.error("The ".concat(typeName, " type is not present."));
|
|
24
|
+
} else {
|
|
25
|
+
var assertedType = null;
|
|
26
|
+
var type = proofContext.findTypeByTypeName(typeName), context = proofContext, termNode = termNodeQuery(typeAssertionNode);
|
|
27
|
+
var variables = [], termVerifiedAsVariable = (0, _term.verifyTermAsVariable)(termNode, variables, context);
|
|
28
|
+
if (termVerifiedAsVariable) {
|
|
29
|
+
var firstVariable = (0, _array.first)(variables), variable = firstVariable, variableType = variable.getType();
|
|
30
|
+
assertedType = variableType; ///
|
|
31
|
+
} else {
|
|
32
|
+
var types = [], termVerifiedAgainstConstructors = (0, _term.verifyTermAgainstConstructors)(termNode, types, context);
|
|
33
|
+
if (termVerifiedAgainstConstructors) {
|
|
34
|
+
var firstType = (0, _array.first)(types), termType = firstType; ///
|
|
35
|
+
assertedType = termType; ///
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (assertedType !== null) {
|
|
39
|
+
var typeEqualToOrSubTypeOfAssertedType = type.isEqualToOrSubTypeOf(assertedType);
|
|
40
|
+
if (!typeEqualToOrSubTypeOfAssertedType) {
|
|
41
|
+
var termString = (0, _string.nodeAsString)(termNode);
|
|
42
|
+
proofContext.error("The type of the '".concat(termString, "' term or variable is not equal to or a sub-type of the asserted type."));
|
|
43
|
+
} else {
|
|
44
|
+
typeAssertionVerified = true;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (typeAssertionVerified) {
|
|
49
|
+
proofContext.info("Verified the '".concat(typeAssertionString, "' type assertion."));
|
|
50
|
+
}
|
|
51
|
+
typeAssertionVerified ? proofContext.complete(typeAssertionNode) : proofContext.halt(typeAssertionNode);
|
|
52
|
+
return typeAssertionVerified;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL3R5cGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgdHlwZU5hbWVGcm9tVHlwZU5vZGUgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB2ZXJpZnlUZXJtQXNWYXJpYWJsZSwgdmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3RvcnMgfSBmcm9tIFwiLi4vLi4vdmVyaWZ5L3Rlcm1cIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90eXBlQXNzZXJ0aW9uL3Rlcm1cIiksXG4gICAgICB0eXBlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3R5cGVBc3NlcnRpb24vdHlwZVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5VHlwZUFzc2VydGlvbih0eXBlQXNzZXJ0aW9uTm9kZSwgcHJvb2ZDb250ZXh0KSB7XG4gIGxldCB0eXBlQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBwcm9vZkNvbnRleHQuYmVnaW4odHlwZUFzc2VydGlvbk5vZGUpO1xuXG4gIGNvbnN0IHR5cGVBc3NlcnRpb25TdHJpbmcgPSBub2RlQXNTdHJpbmcodHlwZUFzc2VydGlvbk5vZGUpO1xuXG4gIHByb29mQ29udGV4dC5kZWJ1ZyhgVmVyaWZ5aW5nIHRoZSAnJHt0eXBlQXNzZXJ0aW9uU3RyaW5nfScgdHlwZSBhc3NlcnRpb24uLi5gKTtcblxuICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkodHlwZUFzc2VydGlvbk5vZGUpLFxuICAgICAgICB0eXBlTmFtZSA9IHR5cGVOYW1lRnJvbVR5cGVOb2RlKHR5cGVOb2RlKSxcbiAgICAgICAgdHlwZVByZXNlbnQgPSBwcm9vZkNvbnRleHQuaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gIGlmICghdHlwZVByZXNlbnQpIHtcbiAgICBwcm9vZkNvbnRleHQuZXJyb3IoYFRoZSAke3R5cGVOYW1lfSB0eXBlIGlzIG5vdCBwcmVzZW50LmApO1xuICB9IGVsc2Uge1xuICAgIGxldCBhc3NlcnRlZFR5cGUgPSBudWxsO1xuXG4gICAgY29uc3QgdHlwZSA9IHByb29mQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpLFxuICAgICAgICAgIGNvbnRleHQgPSBwcm9vZkNvbnRleHQsIC8vL1xuICAgICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeSh0eXBlQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXSxcbiAgICAgICAgICB0ZXJtVmVyaWZpZWRBc1ZhcmlhYmxlID0gdmVyaWZ5VGVybUFzVmFyaWFibGUodGVybU5vZGUsIHZhcmlhYmxlcywgY29udGV4dCk7XG5cbiAgICBpZiAodGVybVZlcmlmaWVkQXNWYXJpYWJsZSkge1xuICAgICAgY29uc3QgZmlyc3RWYXJpYWJsZSA9IGZpcnN0KHZhcmlhYmxlcyksXG4gICAgICAgICAgICB2YXJpYWJsZSA9IGZpcnN0VmFyaWFibGUsIC8vL1xuICAgICAgICAgICAgdmFyaWFibGVUeXBlID0gdmFyaWFibGUuZ2V0VHlwZSgpO1xuXG4gICAgICBhc3NlcnRlZFR5cGUgPSB2YXJpYWJsZVR5cGU7ICAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdHlwZXMgPSBbXSxcbiAgICAgICAgICAgIHRlcm1WZXJpZmllZEFnYWluc3RDb25zdHJ1Y3RvcnMgPSB2ZXJpZnlUZXJtQWdhaW5zdENvbnN0cnVjdG9ycyh0ZXJtTm9kZSwgdHlwZXMsIGNvbnRleHQpO1xuXG4gICAgICBpZiAodGVybVZlcmlmaWVkQWdhaW5zdENvbnN0cnVjdG9ycykge1xuICAgICAgICBjb25zdCBmaXJzdFR5cGUgPSBmaXJzdCh0eXBlcyksXG4gICAgICAgICAgICAgIHRlcm1UeXBlID0gZmlyc3RUeXBlOyAvLy9cblxuICAgICAgICBhc3NlcnRlZFR5cGUgPSB0ZXJtVHlwZTsgIC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChhc3NlcnRlZFR5cGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZBc3NlcnRlZFR5cGUgPSB0eXBlLmlzRXF1YWxUb09yU3ViVHlwZU9mKGFzc2VydGVkVHlwZSk7XG5cbiAgICAgIGlmICghdHlwZUVxdWFsVG9PclN1YlR5cGVPZkFzc2VydGVkVHlwZSkge1xuICAgICAgICBjb25zdCB0ZXJtU3RyaW5nID0gbm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgICAgICBwcm9vZkNvbnRleHQuZXJyb3IoYFRoZSB0eXBlIG9mIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSBvciB2YXJpYWJsZSBpcyBub3QgZXF1YWwgdG8gb3IgYSBzdWItdHlwZSBvZiB0aGUgYXNzZXJ0ZWQgdHlwZS5gKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHR5cGVBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHR5cGVBc3NlcnRpb25WZXJpZmllZCkge1xuICAgIHByb29mQ29udGV4dC5pbmZvKGBWZXJpZmllZCB0aGUgJyR7dHlwZUFzc2VydGlvblN0cmluZ30nIHR5cGUgYXNzZXJ0aW9uLmApO1xuICB9XG5cbiAgdHlwZUFzc2VydGlvblZlcmlmaWVkID9cbiAgICBwcm9vZkNvbnRleHQuY29tcGxldGUodHlwZUFzc2VydGlvbk5vZGUpIDpcbiAgICAgIHByb29mQ29udGV4dC5oYWx0KHR5cGVBc3NlcnRpb25Ob2RlKTtcblxuICByZXR1cm4gdHlwZUFzc2VydGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVR5cGVBc3NlcnRpb24iLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidHlwZU5vZGVRdWVyeSIsInR5cGVBc3NlcnRpb25Ob2RlIiwicHJvb2ZDb250ZXh0IiwidHlwZUFzc2VydGlvblZlcmlmaWVkIiwiYmVnaW4iLCJ0eXBlQXNzZXJ0aW9uU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiZGVidWciLCJ0eXBlTm9kZSIsInR5cGVOYW1lIiwidHlwZU5hbWVGcm9tVHlwZU5vZGUiLCJ0eXBlUHJlc2VudCIsImlzVHlwZVByZXNlbnRCeVR5cGVOYW1lIiwiZXJyb3IiLCJhc3NlcnRlZFR5cGUiLCJ0eXBlIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwiY29udGV4dCIsInRlcm1Ob2RlIiwidmFyaWFibGVzIiwidGVybVZlcmlmaWVkQXNWYXJpYWJsZSIsInZlcmlmeVRlcm1Bc1ZhcmlhYmxlIiwiZmlyc3RWYXJpYWJsZSIsImZpcnN0IiwidmFyaWFibGUiLCJ2YXJpYWJsZVR5cGUiLCJnZXRUeXBlIiwidHlwZXMiLCJ0ZXJtVmVyaWZpZWRBZ2FpbnN0Q29uc3RydWN0b3JzIiwidmVyaWZ5VGVybUFnYWluc3RDb25zdHJ1Y3RvcnMiLCJmaXJzdFR5cGUiLCJ0ZXJtVHlwZSIsInR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZBc3NlcnRlZFR5cGUiLCJpc0VxdWFsVG9PclN1YlR5cGVPZiIsInRlcm1TdHJpbmciLCJpbmZvIiwiY29tcGxldGUiLCJoYWx0Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7O3FCQVJGO3NCQUNPO3FCQUNtQjtvQkFDb0I7QUFFcEUsSUFBTUMsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLHdCQUMxQkMsZ0JBQWdCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRWpCLFNBQVNGLG9CQUFvQkksaUJBQWlCLEVBQUVDLFlBQVksRUFBRTtJQUMzRSxJQUFJQyx3QkFBd0IsS0FBSztJQUVqQ0QsYUFBYUUsS0FBSyxDQUFDSDtJQUVuQixJQUFNSSxzQkFBc0JDLElBQUFBLG9CQUFZLEVBQUNMO0lBRXpDQyxhQUFhSyxLQUFLLENBQUMsQUFBQyxrQkFBcUMsT0FBcEJGLHFCQUFvQjtJQUV6RCxJQUFNRyxXQUFXUixjQUFjQyxvQkFDekJRLFdBQVdDLElBQUFBLDJCQUFvQixFQUFDRixXQUNoQ0csY0FBY1QsYUFBYVUsdUJBQXVCLENBQUNIO0lBRXpELElBQUksQ0FBQ0UsYUFBYTtRQUNoQlQsYUFBYVcsS0FBSyxDQUFDLEFBQUMsT0FBZSxPQUFUSixVQUFTO0lBQ3JDLE9BQU87UUFDTCxJQUFJSyxlQUFlLElBQUk7UUFFdkIsSUFBTUMsT0FBT2IsYUFBYWMsa0JBQWtCLENBQUNQLFdBQ3ZDUSxVQUFVZixjQUNWZ0IsV0FBV3BCLGNBQWNHO1FBRS9CLElBQU1rQixZQUFZLEVBQUUsRUFDZEMseUJBQXlCQyxJQUFBQSwwQkFBb0IsRUFBQ0gsVUFBVUMsV0FBV0Y7UUFFekUsSUFBSUcsd0JBQXdCO1lBQzFCLElBQU1FLGdCQUFnQkMsSUFBQUEsWUFBSyxFQUFDSixZQUN0QkssV0FBV0YsZUFDWEcsZUFBZUQsU0FBU0UsT0FBTztZQUVyQ1osZUFBZVcsY0FBZSxHQUFHO1FBQ25DLE9BQU87WUFDTCxJQUFNRSxRQUFRLEVBQUUsRUFDVkMsa0NBQWtDQyxJQUFBQSxtQ0FBNkIsRUFBQ1gsVUFBVVMsT0FBT1Y7WUFFdkYsSUFBSVcsaUNBQWlDO2dCQUNuQyxJQUFNRSxZQUFZUCxJQUFBQSxZQUFLLEVBQUNJLFFBQ2xCSSxXQUFXRCxXQUFXLEdBQUc7Z0JBRS9CaEIsZUFBZWlCLFVBQVcsR0FBRztZQUMvQixDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUlqQixpQkFBaUIsSUFBSSxFQUFFO1lBQ3pCLElBQU1rQixxQ0FBcUNqQixLQUFLa0Isb0JBQW9CLENBQUNuQjtZQUVyRSxJQUFJLENBQUNrQixvQ0FBb0M7Z0JBQ3ZDLElBQU1FLGFBQWE1QixJQUFBQSxvQkFBWSxFQUFDWTtnQkFFaENoQixhQUFhVyxLQUFLLENBQUMsQUFBQyxvQkFBOEIsT0FBWHFCLFlBQVc7WUFDcEQsT0FBTztnQkFDTC9CLHdCQUF3QixJQUFJO1lBQzlCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUlBLHVCQUF1QjtRQUN6QkQsYUFBYWlDLElBQUksQ0FBQyxBQUFDLGlCQUFvQyxPQUFwQjlCLHFCQUFvQjtJQUN6RCxDQUFDO0lBRURGLHdCQUNFRCxhQUFha0MsUUFBUSxDQUFDbkMscUJBQ3BCQyxhQUFhbUMsSUFBSSxDQUFDcEMsa0JBQWtCO0lBRXhDLE9BQU9FO0FBQ1QifQ==
|
package/lib/verify/axiom.js
CHANGED
|
@@ -13,7 +13,6 @@ var _labels = /*#__PURE__*/ _interopRequireDefault(require("../verify/labels"));
|
|
|
13
13
|
var _proof = /*#__PURE__*/ _interopRequireDefault(require("../context/proof"));
|
|
14
14
|
var _unqualified = /*#__PURE__*/ _interopRequireDefault(require("../verify/statement/unqualified"));
|
|
15
15
|
var _indicativeConditional = /*#__PURE__*/ _interopRequireDefault(require("../verify/indicativeConditional"));
|
|
16
|
-
var _array = require("../utilities/array");
|
|
17
16
|
var _string = require("../utilities/string");
|
|
18
17
|
var _query = require("../utilities/query");
|
|
19
18
|
function _interopRequireDefault(obj) {
|
|
@@ -21,7 +20,7 @@ function _interopRequireDefault(obj) {
|
|
|
21
20
|
default: obj
|
|
22
21
|
};
|
|
23
22
|
}
|
|
24
|
-
var labelNodesQuery = (0, _query.nodesQuery)("/axiom/label"),
|
|
23
|
+
var labelNodesQuery = (0, _query.nodesQuery)("/axiom/label"), unqualifiedStatementNodeQuery = (0, _query.nodeQuery)("/axiom/unqualifiedStatement!"), indicativeConditionalNodeQuery = (0, _query.nodeQuery)("/axiom/indicativeConditional!");
|
|
25
24
|
function verifyAxiom(axiomNode, fileContext) {
|
|
26
25
|
var axiomVerified = false;
|
|
27
26
|
fileContext.begin(axiomNode);
|
|
@@ -30,21 +29,17 @@ function verifyAxiom(axiomNode, fileContext) {
|
|
|
30
29
|
var labels = [], labelsVerified = (0, _labels.default)(labelNodes, labels, fileContext);
|
|
31
30
|
if (labelsVerified) {
|
|
32
31
|
var unqualifiedStatementNode = unqualifiedStatementNodeQuery(axiomNode), indicativeConditionalNode = indicativeConditionalNodeQuery(axiomNode);
|
|
32
|
+
var unqualifiedStatementVerified = false, indicativeConditionalVerified = false;
|
|
33
33
|
if (unqualifiedStatementNode !== null) {
|
|
34
|
-
|
|
35
|
-
if (unqualifiedStatementVerified) {
|
|
36
|
-
var statementNode = statementNodeQuery(unqualifiedStatementNode), axiom = _axiom.default.fromLabelsAndStatementNode(labels, statementNode);
|
|
37
|
-
fileContext.addAxiom(axiom);
|
|
38
|
-
axiomVerified = true;
|
|
39
|
-
}
|
|
34
|
+
unqualifiedStatementVerified = (0, _unqualified.default)(unqualifiedStatementNode, proofContext);
|
|
40
35
|
}
|
|
41
36
|
if (indicativeConditionalNode !== null) {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
37
|
+
indicativeConditionalVerified = (0, _indicativeConditional.default)(indicativeConditionalNode, proofContext);
|
|
38
|
+
}
|
|
39
|
+
if (unqualifiedStatementVerified || indicativeConditionalVerified) {
|
|
40
|
+
var axiom = _axiom.default.fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode(labels, unqualifiedStatementNode, indicativeConditionalNode);
|
|
41
|
+
fileContext.addAxiom(axiom);
|
|
42
|
+
axiomVerified = true;
|
|
48
43
|
}
|
|
49
44
|
}
|
|
50
45
|
if (axiomVerified) {
|
|
@@ -54,4 +49,4 @@ function verifyAxiom(axiomNode, fileContext) {
|
|
|
54
49
|
return axiomVerified;
|
|
55
50
|
}
|
|
56
51
|
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvYXhpb20uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBBeGlvbSBmcm9tIFwiLi4vYXhpb21cIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCBQcm9vZkNvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeUluZGljYXRpdmVDb25kaXRpb25hbCBmcm9tIFwiLi4vdmVyaWZ5L2luZGljYXRpdmVDb25kaXRpb25hbFwiO1xuXG5pbXBvcnQgeyBub2Rlc0FzU3RyaW5nIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbGFiZWxOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9heGlvbS9sYWJlbFwiKSxcbiAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2F4aW9tL3VucXVhbGlmaWVkU3RhdGVtZW50IVwiKSxcbiAgICAgIGluZGljYXRpdmVDb25kaXRpb25hbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9heGlvbS9pbmRpY2F0aXZlQ29uZGl0aW9uYWwhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlBeGlvbShheGlvbU5vZGUsIGZpbGVDb250ZXh0KSB7XG4gIGxldCBheGlvbVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgZmlsZUNvbnRleHQuYmVnaW4oYXhpb21Ob2RlKTtcblxuICBjb25zdCBsYWJlbE5vZGVzID0gbGFiZWxOb2Rlc1F1ZXJ5KGF4aW9tTm9kZSksXG4gICAgICAgIGxhYmVsc1N0cmluZyA9IG5vZGVzQXNTdHJpbmcobGFiZWxOb2RlcyksXG4gICAgICAgIHByb29mQ29udGV4dCA9IFByb29mQ29udGV4dC5mcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpO1xuXG4gIGZpbGVDb250ZXh0LmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke2xhYmVsc1N0cmluZ30nIGF4aW9tLi4uYCk7XG5cbiAgY29uc3QgbGFiZWxzID0gW10sXG4gICAgICAgIGxhYmVsc1ZlcmlmaWVkID0gdmVyaWZ5TGFiZWxzKGxhYmVsTm9kZXMsIGxhYmVscywgZmlsZUNvbnRleHQpO1xuXG4gIGlmIChsYWJlbHNWZXJpZmllZCkge1xuICAgIGNvbnN0IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5KGF4aW9tTm9kZSksXG4gICAgICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSA9IGluZGljYXRpdmVDb25kaXRpb25hbE5vZGVRdWVyeShheGlvbU5vZGUpO1xuXG4gICAgbGV0IHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZSxcbiAgICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUsIHByb29mQ29udGV4dCk7XG4gICAgfVxuXG4gICAgaWYgKGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGluZGljYXRpdmVDb25kaXRpb25hbFZlcmlmaWVkID0gdmVyaWZ5SW5kaWNhdGl2ZUNvbmRpdGlvbmFsKGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUsIHByb29mQ29udGV4dCk7XG4gICAgfVxuXG4gICAgaWYgKHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgfHwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGF4aW9tID0gQXhpb20uZnJvbUxhYmVsc1VucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUFuZEluZGljYXRpdmVDb25kaXRpb25hbE5vZGUobGFiZWxzLCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUsIGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUpO1xuXG4gICAgICBmaWxlQ29udGV4dC5hZGRBeGlvbShheGlvbSk7XG5cbiAgICAgIGF4aW9tVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGlmIChheGlvbVZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuaW5mbyhgVmVyaWZpZWQgdGhlICcke2xhYmVsc1N0cmluZ30nIGF4aW9tLmApO1xuICB9XG5cbiAgYXhpb21WZXJpZmllZCA/XG4gICAgZmlsZUNvbnRleHQuY29tcGxldGUoYXhpb21Ob2RlKSA6XG4gICAgICBmaWxlQ29udGV4dC5oYWx0KGF4aW9tTm9kZSk7XG5cbiAgcmV0dXJuIGF4aW9tVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5QXhpb20iLCJsYWJlbE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlUXVlcnkiLCJheGlvbU5vZGUiLCJmaWxlQ29udGV4dCIsImF4aW9tVmVyaWZpZWQiLCJiZWdpbiIsImxhYmVsTm9kZXMiLCJsYWJlbHNTdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwicHJvb2ZDb250ZXh0IiwiUHJvb2ZDb250ZXh0IiwiZnJvbUZpbGVDb250ZXh0IiwiZGVidWciLCJsYWJlbHMiLCJsYWJlbHNWZXJpZmllZCIsInZlcmlmeUxhYmVscyIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImluZGljYXRpdmVDb25kaXRpb25hbE5vZGUiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsVmVyaWZpZWQiLCJ2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCIsInZlcmlmeUluZGljYXRpdmVDb25kaXRpb25hbCIsImF4aW9tIiwiQXhpb20iLCJmcm9tTGFiZWxzVW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlQW5kSW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSIsImFkZEF4aW9tIiwiaW5mbyIsImNvbXBsZXRlIiwiaGFsdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZUE7OztlQUF3QkE7OzswREFiTjsyREFDTzswREFDQTtnRUFDYzswRUFDQztzQkFFVjtxQkFDUTs7Ozs7O0FBRXRDLElBQU1DLGtCQUFrQkMsSUFBQUEsaUJBQVUsRUFBQyxpQkFDN0JDLGdDQUFnQ0MsSUFBQUEsZ0JBQVMsRUFBQyxpQ0FDMUNDLGlDQUFpQ0QsSUFBQUEsZ0JBQVMsRUFBQztBQUVsQyxTQUFTSixZQUFZTSxTQUFTLEVBQUVDLFdBQVcsRUFBRTtJQUMxRCxJQUFJQyxnQkFBZ0IsS0FBSztJQUV6QkQsWUFBWUUsS0FBSyxDQUFDSDtJQUVsQixJQUFNSSxhQUFhVCxnQkFBZ0JLLFlBQzdCSyxlQUFlQyxJQUFBQSxxQkFBYSxFQUFDRixhQUM3QkcsZUFBZUMsY0FBWSxDQUFDQyxlQUFlLENBQUNSO0lBRWxEQSxZQUFZUyxLQUFLLENBQUMsQUFBQyxrQkFBOEIsT0FBYkwsY0FBYTtJQUVqRCxJQUFNTSxTQUFTLEVBQUUsRUFDWEMsaUJBQWlCQyxJQUFBQSxlQUFZLEVBQUNULFlBQVlPLFFBQVFWO0lBRXhELElBQUlXLGdCQUFnQjtRQUNsQixJQUFNRSwyQkFBMkJqQiw4QkFBOEJHLFlBQ3pEZSw0QkFBNEJoQiwrQkFBK0JDO1FBRWpFLElBQUlnQiwrQkFBK0IsS0FBSyxFQUNwQ0MsZ0NBQWdDLEtBQUs7UUFFekMsSUFBSUgsNkJBQTZCLElBQUksRUFBRTtZQUNyQ0UsK0JBQStCRSxJQUFBQSxvQkFBMEIsRUFBQ0osMEJBQTBCUDtRQUN0RixDQUFDO1FBRUQsSUFBSVEsOEJBQThCLElBQUksRUFBRTtZQUN0Q0UsZ0NBQWdDRSxJQUFBQSw4QkFBMkIsRUFBQ0osMkJBQTJCUjtRQUN6RixDQUFDO1FBRUQsSUFBSVMsZ0NBQWdDQywrQkFBK0I7WUFDakUsSUFBTUcsUUFBUUMsY0FBSyxDQUFDQyw4REFBOEQsQ0FBQ1gsUUFBUUcsMEJBQTBCQztZQUVySGQsWUFBWXNCLFFBQVEsQ0FBQ0g7WUFFckJsQixnQkFBZ0IsSUFBSTtRQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUlBLGVBQWU7UUFDakJELFlBQVl1QixJQUFJLENBQUMsQUFBQyxpQkFBNkIsT0FBYm5CLGNBQWE7SUFDakQsQ0FBQztJQUVESCxnQkFDRUQsWUFBWXdCLFFBQVEsQ0FBQ3pCLGFBQ25CQyxZQUFZeUIsSUFBSSxDQUFDMUIsVUFBVTtJQUUvQixPQUFPRTtBQUNUIn0=
|
package/lib/verify/equality.js
CHANGED
|
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
var _term = /*#__PURE__*/ _interopRequireDefault(require("../verify/term"));
|
|
12
12
|
var _query = require("../utilities/query");
|
|
13
|
+
var _string = require("../utilities/string");
|
|
13
14
|
var _array = require("../utilities/array");
|
|
14
15
|
function _interopRequireDefault(obj) {
|
|
15
16
|
return obj && obj.__esModule ? obj : {
|
|
@@ -20,6 +21,8 @@ var firstTermNodeQuery = (0, _query.nodeQuery)("/equality/term[0]"), secondTermN
|
|
|
20
21
|
function verifyEquality(equalityNode, proofContext) {
|
|
21
22
|
var equalityVerified = false;
|
|
22
23
|
proofContext.begin(equalityNode);
|
|
24
|
+
var equalityString = (0, _string.nodeAsString)(equalityNode);
|
|
25
|
+
proofContext.debug("Verifying the '".concat(equalityString, "' equality..."));
|
|
23
26
|
var types = [], context = proofContext, firstTermNode = firstTermNodeQuery(equalityNode), secondTermNode = secondTermNodeQuery(equalityNode), firstTermVerified = (0, _term.default)(firstTermNode, types, context), secondTermVerified = (0, _term.default)(secondTermNode, types, context);
|
|
24
27
|
if (firstTermVerified && secondTermVerified) {
|
|
25
28
|
var firstType = (0, _array.first)(types), secondType = (0, _array.second)(types), firstTypeEqualToSubTypeOfOrSuperTypeOfSecondType = firstType.isEqualToSubTypeOfOrSuperTypeOf(secondType);
|
|
@@ -27,8 +30,11 @@ function verifyEquality(equalityNode, proofContext) {
|
|
|
27
30
|
equalityVerified = true;
|
|
28
31
|
}
|
|
29
32
|
}
|
|
33
|
+
if (equalityVerified) {
|
|
34
|
+
proofContext.info("Verified the '".concat(equalityString, "' equality."));
|
|
35
|
+
}
|
|
30
36
|
equalityVerified ? proofContext.complete(equalityNode) : proofContext.halt(equalityNode);
|
|
31
37
|
return equalityVerified;
|
|
32
38
|
}
|
|
33
39
|
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZXF1YWxpdHkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlUZXJtIGZyb20gXCIuLi92ZXJpZnkvdGVybVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgZmlyc3QsIHNlY29uZCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcblxuY29uc3QgZmlyc3RUZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2VxdWFsaXR5L3Rlcm1bMF1cIiksXG4gICAgICBzZWNvbmRUZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2VxdWFsaXR5L3Rlcm1bMV1cIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeUVxdWFsaXR5KGVxdWFsaXR5Tm9kZSwgcHJvb2ZDb250ZXh0KSB7XG4gIGxldCBlcXVhbGl0eVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgcHJvb2ZDb250ZXh0LmJlZ2luKGVxdWFsaXR5Tm9kZSk7XG5cbiAgY29uc3QgZXF1YWxpdHlTdHJpbmcgPSBub2RlQXNTdHJpbmcoZXF1YWxpdHlOb2RlKTtcblxuICBwcm9vZkNvbnRleHQuZGVidWcoYFZlcmlmeWluZyB0aGUgJyR7ZXF1YWxpdHlTdHJpbmd9JyBlcXVhbGl0eS4uLmApO1xuXG4gIGNvbnN0IHR5cGVzID0gW10sXG4gICAgICAgIGNvbnRleHQgPSBwcm9vZkNvbnRleHQsXG4gICAgICAgIGZpcnN0VGVybU5vZGUgPSBmaXJzdFRlcm1Ob2RlUXVlcnkoZXF1YWxpdHlOb2RlKSxcbiAgICAgICAgc2Vjb25kVGVybU5vZGUgPSBzZWNvbmRUZXJtTm9kZVF1ZXJ5KGVxdWFsaXR5Tm9kZSksXG4gICAgICAgIGZpcnN0VGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybShmaXJzdFRlcm1Ob2RlLCB0eXBlcywgY29udGV4dCksXG4gICAgICAgIHNlY29uZFRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm0oc2Vjb25kVGVybU5vZGUsIHR5cGVzLCBjb250ZXh0KTtcblxuICBpZiAoZmlyc3RUZXJtVmVyaWZpZWQgJiYgc2Vjb25kVGVybVZlcmlmaWVkKSB7XG4gICAgY29uc3QgZmlyc3RUeXBlID0gZmlyc3QodHlwZXMpLFxuICAgICAgICAgIHNlY29uZFR5cGUgPSBzZWNvbmQodHlwZXMpLFxuICAgICAgICAgIGZpcnN0VHlwZUVxdWFsVG9TdWJUeXBlT2ZPclN1cGVyVHlwZU9mU2Vjb25kVHlwZSA9IGZpcnN0VHlwZS5pc0VxdWFsVG9TdWJUeXBlT2ZPclN1cGVyVHlwZU9mKHNlY29uZFR5cGUpO1xuXG4gICAgaWYgKGZpcnN0VHlwZUVxdWFsVG9TdWJUeXBlT2ZPclN1cGVyVHlwZU9mU2Vjb25kVHlwZSkge1xuICAgICAgZXF1YWxpdHlWZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgaWYgKGVxdWFsaXR5VmVyaWZpZWQpIHtcbiAgICBwcm9vZkNvbnRleHQuaW5mbyhgVmVyaWZpZWQgdGhlICcke2VxdWFsaXR5U3RyaW5nfScgZXF1YWxpdHkuYCk7XG4gIH1cblxuICBlcXVhbGl0eVZlcmlmaWVkID9cbiAgICBwcm9vZkNvbnRleHQuY29tcGxldGUoZXF1YWxpdHlOb2RlKSA6XG4gICAgICBwcm9vZkNvbnRleHQuaGFsdChlcXVhbGl0eU5vZGUpO1xuXG4gIHJldHVybiBlcXVhbGl0eVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUVxdWFsaXR5IiwiZmlyc3RUZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic2Vjb25kVGVybU5vZGVRdWVyeSIsImVxdWFsaXR5Tm9kZSIsInByb29mQ29udGV4dCIsImVxdWFsaXR5VmVyaWZpZWQiLCJiZWdpbiIsImVxdWFsaXR5U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiZGVidWciLCJ0eXBlcyIsImNvbnRleHQiLCJmaXJzdFRlcm1Ob2RlIiwic2Vjb25kVGVybU5vZGUiLCJmaXJzdFRlcm1WZXJpZmllZCIsInZlcmlmeVRlcm0iLCJzZWNvbmRUZXJtVmVyaWZpZWQiLCJmaXJzdFR5cGUiLCJmaXJzdCIsInNlY29uZFR5cGUiLCJzZWNvbmQiLCJmaXJzdFR5cGVFcXVhbFRvU3ViVHlwZU9mT3JTdXBlclR5cGVPZlNlY29uZFR5cGUiLCJpc0VxdWFsVG9TdWJUeXBlT2ZPclN1cGVyVHlwZU9mIiwiaW5mbyIsImNvbXBsZXRlIiwiaGFsdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBV0E7OztlQUF3QkE7Ozt5REFURDtxQkFFRztzQkFDRztxQkFDQzs7Ozs7O0FBRTlCLElBQU1DLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQyxzQkFDL0JDLHNCQUFzQkQsSUFBQUEsZ0JBQVMsRUFBQztBQUV2QixTQUFTRixlQUFlSSxZQUFZLEVBQUVDLFlBQVksRUFBRTtJQUNqRSxJQUFJQyxtQkFBbUIsS0FBSztJQUU1QkQsYUFBYUUsS0FBSyxDQUFDSDtJQUVuQixJQUFNSSxpQkFBaUJDLElBQUFBLG9CQUFZLEVBQUNMO0lBRXBDQyxhQUFhSyxLQUFLLENBQUMsQUFBQyxrQkFBZ0MsT0FBZkYsZ0JBQWU7SUFFcEQsSUFBTUcsUUFBUSxFQUFFLEVBQ1ZDLFVBQVVQLGNBQ1ZRLGdCQUFnQlosbUJBQW1CRyxlQUNuQ1UsaUJBQWlCWCxvQkFBb0JDLGVBQ3JDVyxvQkFBb0JDLElBQUFBLGFBQVUsRUFBQ0gsZUFBZUYsT0FBT0MsVUFDckRLLHFCQUFxQkQsSUFBQUEsYUFBVSxFQUFDRixnQkFBZ0JILE9BQU9DO0lBRTdELElBQUlHLHFCQUFxQkUsb0JBQW9CO1FBQzNDLElBQU1DLFlBQVlDLElBQUFBLFlBQUssRUFBQ1IsUUFDbEJTLGFBQWFDLElBQUFBLGFBQU0sRUFBQ1YsUUFDcEJXLG1EQUFtREosVUFBVUssK0JBQStCLENBQUNIO1FBRW5HLElBQUlFLGtEQUFrRDtZQUNwRGhCLG1CQUFtQixJQUFJO1FBQ3pCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSUEsa0JBQWtCO1FBQ3BCRCxhQUFhbUIsSUFBSSxDQUFDLEFBQUMsaUJBQStCLE9BQWZoQixnQkFBZTtJQUNwRCxDQUFDO0lBRURGLG1CQUNFRCxhQUFhb0IsUUFBUSxDQUFDckIsZ0JBQ3BCQyxhQUFhcUIsSUFBSSxDQUFDdEIsYUFBYTtJQUVuQyxPQUFPRTtBQUNUIn0=
|
package/lib/verify/lemma.js
CHANGED
|
@@ -13,7 +13,6 @@ var _labels = /*#__PURE__*/ _interopRequireDefault(require("../verify/labels"));
|
|
|
13
13
|
var _proof = /*#__PURE__*/ _interopRequireDefault(require("../context/proof"));
|
|
14
14
|
var _unqualified = /*#__PURE__*/ _interopRequireDefault(require("../verify/statement/unqualified"));
|
|
15
15
|
var _indicativeConditional = /*#__PURE__*/ _interopRequireDefault(require("../verify/indicativeConditional"));
|
|
16
|
-
var _array = require("../utilities/array");
|
|
17
16
|
var _string = require("../utilities/string");
|
|
18
17
|
var _query = require("../utilities/query");
|
|
19
18
|
function _interopRequireDefault(obj) {
|
|
@@ -21,41 +20,33 @@ function _interopRequireDefault(obj) {
|
|
|
21
20
|
default: obj
|
|
22
21
|
};
|
|
23
22
|
}
|
|
24
|
-
var labelNodesQuery = (0, _query.nodesQuery)("/lemma/label"),
|
|
23
|
+
var labelNodesQuery = (0, _query.nodesQuery)("/lemma/label"), unqualifiedStatementNodeQuery = (0, _query.nodeQuery)("/lemma/unqualifiedStatement!"), indicativeConditionalNodeQuery = (0, _query.nodeQuery)("/lemma/indicativeConditional!");
|
|
25
24
|
function verifyLemma(lemmaNode, fileContext) {
|
|
26
25
|
var lemmaVerified = false;
|
|
27
26
|
fileContext.begin(lemmaNode);
|
|
28
27
|
var labelNodes = labelNodesQuery(lemmaNode), labelsString = (0, _string.nodesAsString)(labelNodes), proofContext = _proof.default.fromFileContext(fileContext);
|
|
29
|
-
|
|
30
|
-
var labels = [],
|
|
28
|
+
fileContext.debug("Verifying the '".concat(labelsString, "' lemma..."));
|
|
29
|
+
var labels = [], labelsVerified = (0, _labels.default)(labelNodes, labels, fileContext);
|
|
31
30
|
if (labelsVerified) {
|
|
32
31
|
var unqualifiedStatementNode = unqualifiedStatementNodeQuery(lemmaNode), indicativeConditionalNode = indicativeConditionalNodeQuery(lemmaNode);
|
|
32
|
+
var unqualifiedStatementVerified = false, indicativeConditionalVerified = false;
|
|
33
33
|
if (unqualifiedStatementNode !== null) {
|
|
34
|
-
|
|
35
|
-
if (unqualifiedStatementVerified) {
|
|
36
|
-
if (labelsLength > 0) {
|
|
37
|
-
var statementNode = statementNodeQuery(unqualifiedStatementNode), lemma = _lemma.default.fromLabelsAndStatementNode(labels, statementNode);
|
|
38
|
-
fileContext.addLemma(lemma);
|
|
39
|
-
}
|
|
40
|
-
lemmaVerified = true;
|
|
41
|
-
}
|
|
34
|
+
unqualifiedStatementVerified = (0, _unqualified.default)(unqualifiedStatementNode, proofContext);
|
|
42
35
|
}
|
|
43
36
|
if (indicativeConditionalNode !== null) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
lemmaVerified = true;
|
|
51
|
-
}
|
|
37
|
+
indicativeConditionalVerified = (0, _indicativeConditional.default)(indicativeConditionalNode, proofContext);
|
|
38
|
+
}
|
|
39
|
+
if (unqualifiedStatementVerified || indicativeConditionalVerified) {
|
|
40
|
+
var lemma = _lemma.default.fromLabelsUnqualifiedStatementNodeAndIndicativeConditionalNode(labels, unqualifiedStatementNode, indicativeConditionalNode);
|
|
41
|
+
fileContext.addLemma(lemma);
|
|
42
|
+
lemmaVerified = true;
|
|
52
43
|
}
|
|
53
44
|
}
|
|
54
45
|
if (lemmaVerified) {
|
|
55
|
-
|
|
46
|
+
fileContext.info("Verified the '".concat(labelsString, "' lemma."));
|
|
56
47
|
}
|
|
57
48
|
lemmaVerified ? fileContext.complete(lemmaNode) : fileContext.halt(lemmaNode);
|
|
58
49
|
return lemmaVerified;
|
|
59
50
|
}
|
|
60
51
|
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbGVtbWEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBMZW1tYSBmcm9tIFwiLi4vbGVtbWFcIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCBQcm9vZkNvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeUluZGljYXRpdmVDb25kaXRpb25hbCBmcm9tIFwiLi4vdmVyaWZ5L2luZGljYXRpdmVDb25kaXRpb25hbFwiO1xuXG5pbXBvcnQgeyBub2Rlc0FzU3RyaW5nIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbGFiZWxOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9sZW1tYS9sYWJlbFwiKSxcbiAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2xlbW1hL3VucXVhbGlmaWVkU3RhdGVtZW50IVwiKSxcbiAgICAgIGluZGljYXRpdmVDb25kaXRpb25hbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9sZW1tYS9pbmRpY2F0aXZlQ29uZGl0aW9uYWwhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlMZW1tYShsZW1tYU5vZGUsIGZpbGVDb250ZXh0KSB7XG4gIGxldCBsZW1tYVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgZmlsZUNvbnRleHQuYmVnaW4obGVtbWFOb2RlKTtcblxuICBjb25zdCBsYWJlbE5vZGVzID0gbGFiZWxOb2Rlc1F1ZXJ5KGxlbW1hTm9kZSksXG4gICAgICAgIGxhYmVsc1N0cmluZyA9IG5vZGVzQXNTdHJpbmcobGFiZWxOb2RlcyksXG4gICAgICAgIHByb29mQ29udGV4dCA9IFByb29mQ29udGV4dC5mcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpO1xuXG4gIGZpbGVDb250ZXh0LmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke2xhYmVsc1N0cmluZ30nIGxlbW1hLi4uYCk7XG5cbiAgY29uc3QgbGFiZWxzID0gW10sXG4gICAgICAgIGxhYmVsc1ZlcmlmaWVkID0gdmVyaWZ5TGFiZWxzKGxhYmVsTm9kZXMsIGxhYmVscywgZmlsZUNvbnRleHQpO1xuXG4gIGlmIChsYWJlbHNWZXJpZmllZCkge1xuICAgIGNvbnN0IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5KGxlbW1hTm9kZSksXG4gICAgICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSA9IGluZGljYXRpdmVDb25kaXRpb25hbE5vZGVRdWVyeShsZW1tYU5vZGUpO1xuXG4gICAgbGV0IHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZSxcbiAgICAgICAgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUsIHByb29mQ29udGV4dCk7XG4gICAgfVxuXG4gICAgaWYgKGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGluZGljYXRpdmVDb25kaXRpb25hbFZlcmlmaWVkID0gdmVyaWZ5SW5kaWNhdGl2ZUNvbmRpdGlvbmFsKGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUsIHByb29mQ29udGV4dCk7XG4gICAgfVxuXG4gICAgaWYgKHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgfHwgaW5kaWNhdGl2ZUNvbmRpdGlvbmFsVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGxlbW1hID0gTGVtbWEuZnJvbUxhYmVsc1VucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUFuZEluZGljYXRpdmVDb25kaXRpb25hbE5vZGUobGFiZWxzLCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUsIGluZGljYXRpdmVDb25kaXRpb25hbE5vZGUpO1xuXG4gICAgICBmaWxlQ29udGV4dC5hZGRMZW1tYShsZW1tYSk7XG5cbiAgICAgIGxlbW1hVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGlmIChsZW1tYVZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuaW5mbyhgVmVyaWZpZWQgdGhlICcke2xhYmVsc1N0cmluZ30nIGxlbW1hLmApO1xuICB9XG5cbiAgbGVtbWFWZXJpZmllZCA/XG4gICAgZmlsZUNvbnRleHQuY29tcGxldGUobGVtbWFOb2RlKSA6XG4gICAgICBmaWxlQ29udGV4dC5oYWx0KGxlbW1hTm9kZSk7XG5cbiAgcmV0dXJuIGxlbW1hVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5TGVtbWEiLCJsYWJlbE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJpbmRpY2F0aXZlQ29uZGl0aW9uYWxOb2RlUXVlcnkiLCJsZW1tYU5vZGUiLCJmaWxlQ29udGV4dCIsImxlbW1hVmVyaWZpZWQiLCJiZWdpbiIsImxhYmVsTm9kZXMiLCJsYWJlbHNTdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwicHJvb2ZDb250ZXh0IiwiUHJvb2ZDb250ZXh0IiwiZnJvbUZpbGVDb250ZXh0IiwiZGVidWciLCJsYWJlbHMiLCJsYWJlbHNWZXJpZmllZCIsInZlcmlmeUxhYmVscyIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImluZGljYXRpdmVDb25kaXRpb25hbE5vZGUiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIiwiaW5kaWNhdGl2ZUNvbmRpdGlvbmFsVmVyaWZpZWQiLCJ2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCIsInZlcmlmeUluZGljYXRpdmVDb25kaXRpb25hbCIsImxlbW1hIiwiTGVtbWEiLCJmcm9tTGFiZWxzVW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlQW5kSW5kaWNhdGl2ZUNvbmRpdGlvbmFsTm9kZSIsImFkZExlbW1hIiwiaW5mbyIsImNvbXBsZXRlIiwiaGFsdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZUE7OztlQUF3QkE7OzswREFiTjsyREFDTzswREFDQTtnRUFDYzswRUFDQztzQkFFVjtxQkFDUTs7Ozs7O0FBRXRDLElBQU1DLGtCQUFrQkMsSUFBQUEsaUJBQVUsRUFBQyxpQkFDN0JDLGdDQUFnQ0MsSUFBQUEsZ0JBQVMsRUFBQyxpQ0FDMUNDLGlDQUFpQ0QsSUFBQUEsZ0JBQVMsRUFBQztBQUVsQyxTQUFTSixZQUFZTSxTQUFTLEVBQUVDLFdBQVcsRUFBRTtJQUMxRCxJQUFJQyxnQkFBZ0IsS0FBSztJQUV6QkQsWUFBWUUsS0FBSyxDQUFDSDtJQUVsQixJQUFNSSxhQUFhVCxnQkFBZ0JLLFlBQzdCSyxlQUFlQyxJQUFBQSxxQkFBYSxFQUFDRixhQUM3QkcsZUFBZUMsY0FBWSxDQUFDQyxlQUFlLENBQUNSO0lBRWxEQSxZQUFZUyxLQUFLLENBQUMsQUFBQyxrQkFBOEIsT0FBYkwsY0FBYTtJQUVqRCxJQUFNTSxTQUFTLEVBQUUsRUFDWEMsaUJBQWlCQyxJQUFBQSxlQUFZLEVBQUNULFlBQVlPLFFBQVFWO0lBRXhELElBQUlXLGdCQUFnQjtRQUNsQixJQUFNRSwyQkFBMkJqQiw4QkFBOEJHLFlBQ3pEZSw0QkFBNEJoQiwrQkFBK0JDO1FBRWpFLElBQUlnQiwrQkFBK0IsS0FBSyxFQUNwQ0MsZ0NBQWdDLEtBQUs7UUFFekMsSUFBSUgsNkJBQTZCLElBQUksRUFBRTtZQUNyQ0UsK0JBQStCRSxJQUFBQSxvQkFBMEIsRUFBQ0osMEJBQTBCUDtRQUN0RixDQUFDO1FBRUQsSUFBSVEsOEJBQThCLElBQUksRUFBRTtZQUN0Q0UsZ0NBQWdDRSxJQUFBQSw4QkFBMkIsRUFBQ0osMkJBQTJCUjtRQUN6RixDQUFDO1FBRUQsSUFBSVMsZ0NBQWdDQywrQkFBK0I7WUFDakUsSUFBTUcsUUFBUUMsY0FBSyxDQUFDQyw4REFBOEQsQ0FBQ1gsUUFBUUcsMEJBQTBCQztZQUVySGQsWUFBWXNCLFFBQVEsQ0FBQ0g7WUFFckJsQixnQkFBZ0IsSUFBSTtRQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUlBLGVBQWU7UUFDakJELFlBQVl1QixJQUFJLENBQUMsQUFBQyxpQkFBNkIsT0FBYm5CLGNBQWE7SUFDakQsQ0FBQztJQUVESCxnQkFDRUQsWUFBWXdCLFFBQVEsQ0FBQ3pCLGFBQ25CQyxZQUFZeUIsSUFBSSxDQUFDMUIsVUFBVTtJQUUvQixPQUFPRTtBQUNUIn0=
|
|
@@ -14,6 +14,8 @@ var referenceNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/qualific
|
|
|
14
14
|
function verifyQualifiedMetastatement(qualifiedMetastatementNode, metaproofContext) {
|
|
15
15
|
var qualifiedMetastatementVerified = false;
|
|
16
16
|
metaproofContext.begin(qualifiedMetastatementNode);
|
|
17
|
+
var qualifiedMetastatementString = (0, _string.nodeAsString)(qualifiedMetastatementNode);
|
|
18
|
+
metaproofContext.debug("Verifying the '".concat(qualifiedMetastatementString, "' qualified metastatement..."));
|
|
17
19
|
var metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode);
|
|
18
20
|
if (metastatementNode !== null) {
|
|
19
21
|
var referenceNode = referenceNodeQuery(qualifiedMetastatementNode), referenceName = (0, _query.referenceNameFromReferenceNode)(referenceNode), rule = metaproofContext.findRuleByReferenceName(referenceName);
|
|
@@ -23,11 +25,10 @@ function verifyQualifiedMetastatement(qualifiedMetastatementNode, metaproofConte
|
|
|
23
25
|
}
|
|
24
26
|
}
|
|
25
27
|
if (qualifiedMetastatementVerified) {
|
|
26
|
-
|
|
27
|
-
metaproofContext.debug("Verified the '".concat(metastatementString, "' qualified metastatement."));
|
|
28
|
+
metaproofContext.info("Verified the '".concat(qualifiedMetastatementString, "' qualified metastatement."));
|
|
28
29
|
}
|
|
29
30
|
qualifiedMetastatementVerified ? metaproofContext.complete(qualifiedMetastatementNode) : metaproofContext.halt(qualifiedMetastatementNode);
|
|
30
31
|
return qualifiedMetastatementVerified;
|
|
31
32
|
}
|
|
32
33
|
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC9xdWFsaWZpZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHJlZmVyZW5jZU5hbWVGcm9tUmVmZXJlbmNlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgcmVmZXJlbmNlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3F1YWxpZmllZE1ldGFzdGF0ZW1lbnQvcXVhbGlmaWNhdGlvbiEvcmVmZXJlbmNlIVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgbWV0YXByb29mQ29udGV4dCkge1xuICBsZXQgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgbWV0YXByb29mQ29udGV4dC5iZWdpbihxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgY29uc3QgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgbWV0YXByb29mQ29udGV4dC5kZWJ1ZyhgVmVyaWZ5aW5nIHRoZSAnJHtxdWFsaWZpZWRNZXRhc3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQuLi5gKTtcblxuICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gIGlmIChtZXRhc3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHJlZmVyZW5jZU5vZGUgPSByZWZlcmVuY2VOb2RlUXVlcnkocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHJlZmVyZW5jZU5hbWUgPSByZWZlcmVuY2VOYW1lRnJvbVJlZmVyZW5jZU5vZGUocmVmZXJlbmNlTm9kZSksXG4gICAgICAgICAgcnVsZSA9IG1ldGFwcm9vZkNvbnRleHQuZmluZFJ1bGVCeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSk7XG5cbiAgICBpZiAocnVsZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50ID0gcnVsZS5tYXRjaE1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIG1ldGFwcm9vZkNvbnRleHQpO1xuXG4gICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBydWxlTWF0Y2hlc01ldGFzdGF0ZW1lbnQ7ICAvLy9cbiAgICB9XG4gIH1cblxuICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgbWV0YXByb29mQ29udGV4dC5pbmZvKGBWZXJpZmllZCB0aGUgJyR7cXVhbGlmaWVkTWV0YXN0YXRlbWVudFN0cmluZ30nIHF1YWxpZmllZCBtZXRhc3RhdGVtZW50LmApO1xuICB9XG5cbiAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID9cbiAgICBtZXRhcHJvb2ZDb250ZXh0LmNvbXBsZXRlKHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKSA6XG4gICAgICBtZXRhcHJvb2ZDb250ZXh0LmhhbHQocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsInJlZmVyZW5jZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFwcm9vZkNvbnRleHQiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJiZWdpbiIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJkZWJ1ZyIsIm1ldGFzdGF0ZW1lbnROb2RlIiwicmVmZXJlbmNlTm9kZSIsInJlZmVyZW5jZU5hbWUiLCJyZWZlcmVuY2VOYW1lRnJvbVJlZmVyZW5jZU5vZGUiLCJydWxlIiwiZmluZFJ1bGVCeVJlZmVyZW5jZU5hbWUiLCJydWxlTWF0Y2hlc01ldGFzdGF0ZW1lbnQiLCJtYXRjaE1ldGFzdGF0ZW1lbnQiLCJpbmZvIiwiY29tcGxldGUiLCJoYWx0Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFRQTs7O2VBQXdCQTs7O3NCQU5LO3FCQUM2QjtBQUUxRCxJQUFNQyxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMsc0RBQy9CQyx5QkFBeUJELElBQUFBLGdCQUFTLEVBQUM7QUFFMUIsU0FBU0YsNkJBQTZCSSwwQkFBMEIsRUFBRUMsZ0JBQWdCLEVBQUU7SUFDakcsSUFBSUMsaUNBQWlDLEtBQUs7SUFFMUNELGlCQUFpQkUsS0FBSyxDQUFDSDtJQUV2QixJQUFNSSwrQkFBK0JDLElBQUFBLG9CQUFZLEVBQUNMO0lBRWxEQyxpQkFBaUJLLEtBQUssQ0FBQyxBQUFDLGtCQUE4QyxPQUE3QkYsOEJBQTZCO0lBRXRFLElBQU1HLG9CQUFvQlIsdUJBQXVCQztJQUVqRCxJQUFJTyxzQkFBc0IsSUFBSSxFQUFFO1FBQzlCLElBQU1DLGdCQUFnQlgsbUJBQW1CRyw2QkFDbkNTLGdCQUFnQkMsSUFBQUEscUNBQThCLEVBQUNGLGdCQUMvQ0csT0FBT1YsaUJBQWlCVyx1QkFBdUIsQ0FBQ0g7UUFFdEQsSUFBSUUsU0FBUyxJQUFJLEVBQUU7WUFDakIsSUFBTUUsMkJBQTJCRixLQUFLRyxrQkFBa0IsQ0FBQ1AsbUJBQW1CTjtZQUU1RUMsaUNBQWlDVywwQkFBMkIsR0FBRztRQUNqRSxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUlYLGdDQUFnQztRQUNsQ0QsaUJBQWlCYyxJQUFJLENBQUMsQUFBQyxpQkFBNkMsT0FBN0JYLDhCQUE2QjtJQUN0RSxDQUFDO0lBRURGLGlDQUNFRCxpQkFBaUJlLFFBQVEsQ0FBQ2hCLDhCQUN4QkMsaUJBQWlCZ0IsSUFBSSxDQUFDakIsMkJBQTJCO0lBRXJELE9BQU9FO0FBQ1QifQ==
|