occam-verify-cli 0.0.446 → 0.0.447
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 -36
- package/lib/combinator.js +3 -5
- package/lib/conclusion.js +4 -4
- package/lib/constructor.js +3 -5
- package/lib/label.js +3 -3
- package/lib/premise.js +11 -9
- package/lib/utilities/array.js +15 -12
- package/lib/utilities/node.js +45 -0
- package/lib/verify/axiom.js +2 -2
- package/lib/verify/metaDerivation.js +16 -9
- package/package.json +1 -1
- package/src/axiom.js +36 -61
- package/src/combinator.js +3 -10
- package/src/conclusion.js +4 -10
- package/src/constructor.js +3 -10
- package/src/label.js +4 -4
- package/src/premise.js +20 -22
- package/src/utilities/array.js +1 -1
- package/src/utilities/node.js +50 -0
- package/src/verify/axiom.js +6 -6
- package/src/verify/metaDerivation.js +17 -9
package/lib/axiom.js
CHANGED
|
@@ -9,10 +9,9 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _label = /*#__PURE__*/ _interopRequireDefault(require("./label"));
|
|
12
|
-
var _query = require("./utilities/query");
|
|
13
12
|
var _kinds = require("./kinds");
|
|
14
13
|
var _string = require("./utilities/string");
|
|
15
|
-
var
|
|
14
|
+
var _node = require("./utilities/node");
|
|
16
15
|
function _classCallCheck(instance, Constructor) {
|
|
17
16
|
if (!(instance instanceof Constructor)) {
|
|
18
17
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -37,13 +36,12 @@ function _interopRequireDefault(obj) {
|
|
|
37
36
|
default: obj
|
|
38
37
|
};
|
|
39
38
|
}
|
|
40
|
-
var statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement");
|
|
41
39
|
var Axiom = /*#__PURE__*/ function() {
|
|
42
|
-
function Axiom(labels, statementNode,
|
|
40
|
+
function Axiom(labels, statementNode, suppositionStatementNodes, consequentStatementNode) {
|
|
43
41
|
_classCallCheck(this, Axiom);
|
|
44
42
|
this.labels = labels;
|
|
45
43
|
this.statementNode = statementNode;
|
|
46
|
-
this.
|
|
44
|
+
this.suppositionStatementNodes = suppositionStatementNodes;
|
|
47
45
|
this.consequentStatementNode = consequentStatementNode;
|
|
48
46
|
}
|
|
49
47
|
_createClass(Axiom, [
|
|
@@ -60,9 +58,9 @@ var Axiom = /*#__PURE__*/ function() {
|
|
|
60
58
|
}
|
|
61
59
|
},
|
|
62
60
|
{
|
|
63
|
-
key: "
|
|
64
|
-
value: function
|
|
65
|
-
return this.
|
|
61
|
+
key: "getSuppositionStatementNodes",
|
|
62
|
+
value: function getSuppositionStatementNodes() {
|
|
63
|
+
return this.suppositionStatementNodes;
|
|
66
64
|
}
|
|
67
65
|
},
|
|
68
66
|
{
|
|
@@ -89,12 +87,15 @@ var Axiom = /*#__PURE__*/ function() {
|
|
|
89
87
|
var labelsJSON = this.labels.map(function(label) {
|
|
90
88
|
var labelJSON = label.toJSON();
|
|
91
89
|
return labelJSON;
|
|
92
|
-
}), statementString = (0, _string.nodeAsString)(this.statementNode), consequentStatementString = (0, _string.nodeAsString)(this.consequentStatementNode),
|
|
90
|
+
}), statementString = (0, _string.nodeAsString)(this.statementNode), consequentStatementString = (0, _string.nodeAsString)(this.consequentStatementNode), suppositionStatementStrings = this.suppositionStatementNodes.map(function(suppositionStatementNode) {
|
|
91
|
+
var suppositionStatementString = (0, _string.nodeAsString)(suppositionStatementNode);
|
|
92
|
+
return suppositionStatementString;
|
|
93
|
+
}), kind = _kinds.AXIOM_KIND, labels = labelsJSON, statement = statementString, consequent = consequentStatementString, suppositions = suppositionStatementStrings, json = {
|
|
93
94
|
kind: kind,
|
|
94
95
|
labels: labels,
|
|
95
96
|
statement: statement,
|
|
96
97
|
consequent: consequent,
|
|
97
|
-
|
|
98
|
+
suppositions: suppositions
|
|
98
99
|
};
|
|
99
100
|
return json;
|
|
100
101
|
}
|
|
@@ -109,28 +110,17 @@ var Axiom = /*#__PURE__*/ function() {
|
|
|
109
110
|
var _$json = labelJSON, label = _label.default.fromJSON(_$json, releaseContext);
|
|
110
111
|
return label;
|
|
111
112
|
});
|
|
112
|
-
var statement = json.statement,
|
|
113
|
+
var statement = json.statement, suppositions = json.suppositions, consequent = json.consequent;
|
|
113
114
|
var axiom;
|
|
114
|
-
if (
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
node1 = releaseContext.nodeFromContentAndRuleName(content1, ruleName1);
|
|
124
|
-
unqualifiedStatementNode1 = node1; ///
|
|
125
|
-
statementNode1 = statementNodeQuery(unqualifiedStatementNode1);
|
|
126
|
-
var consequentNode1 = statementNode1; ///
|
|
127
|
-
content1 = "".concat(supposition, "\n");
|
|
128
|
-
node1 = releaseContext.nodeFromContentAndRuleName(content1, ruleName1);
|
|
129
|
-
unqualifiedStatementNode1 = node1; ///
|
|
130
|
-
statementNode1 = statementNodeQuery(unqualifiedStatementNode1);
|
|
131
|
-
var suppositionNode1 = statementNode1; ///
|
|
132
|
-
statementNode1 = null;
|
|
133
|
-
axiom = new Axiom(labels, statementNode1, consequentNode1, suppositionNode1);
|
|
115
|
+
if (statement !== null) {
|
|
116
|
+
var statementJSON = statement, statementNode = (0, _node.statementNodeFromStatementJSON)(statementJSON, releaseContext), suppositionStatementNodes = null, consequentStatementNode = null;
|
|
117
|
+
axiom = new Axiom(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
|
|
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
|
+
axiom = new Axiom(labels, statementNode1, suppositionStatementNodes1, consequentStatementNode1);
|
|
134
124
|
}
|
|
135
125
|
return axiom;
|
|
136
126
|
}
|
|
@@ -138,14 +128,14 @@ var Axiom = /*#__PURE__*/ function() {
|
|
|
138
128
|
{
|
|
139
129
|
key: "fromLabelsAndStatementNode",
|
|
140
130
|
value: function fromLabelsAndStatementNode(labels, statementNode) {
|
|
141
|
-
var
|
|
131
|
+
var suppositionStatementNodes = [], consequentStatementNode = null, axiom = new Axiom(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
|
|
142
132
|
return axiom;
|
|
143
133
|
}
|
|
144
134
|
},
|
|
145
135
|
{
|
|
146
|
-
key: "
|
|
147
|
-
value: function
|
|
148
|
-
var statementNode = null, axiom = new Axiom(labels, statementNode,
|
|
136
|
+
key: "fromLabelsSuppositionStatementNodesAndConsequentStatementNode",
|
|
137
|
+
value: function fromLabelsSuppositionStatementNodesAndConsequentStatementNode(labels, suppositionStatementNodes, consequentStatementNode) {
|
|
138
|
+
var statementNode = null, axiom = new Axiom(labels, statementNode, suppositionStatementNodes, consequentStatementNode);
|
|
149
139
|
return axiom;
|
|
150
140
|
}
|
|
151
141
|
}
|
|
@@ -153,4 +143,4 @@ var Axiom = /*#__PURE__*/ function() {
|
|
|
153
143
|
return Axiom;
|
|
154
144
|
}();
|
|
155
145
|
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9heGlvbS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IExhYmVsIGZyb20gXCIuL2xhYmVsXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgQVhJT01fS0lORCB9IGZyb20gXCIuL2tpbmRzXCI7XG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FIH0gZnJvbSBcIi4vcnVsZU5hbWVzXCI7XG5cbmNvbnN0IHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZFN0YXRlbWVudC9zdGF0ZW1lbnRcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEF4aW9tIHtcbiAgY29uc3RydWN0b3IobGFiZWxzLCBzdGF0ZW1lbnROb2RlLCBzdXBwb3NpdGlvblN0YXRlbWVudE5vZGUsIGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlKSB7XG4gICAgdGhpcy5sYWJlbHMgPSBsYWJlbHM7XG4gICAgdGhpcy5zdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZTtcbiAgICB0aGlzLnN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZSA9IHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZTtcbiAgICB0aGlzLmNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlID0gY29uc2VxdWVudFN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBnZXRMYWJlbHMoKSB7XG4gICAgcmV0dXJuIHRoaXMubGFiZWxzO1xuICB9XG5cbiAgZ2V0U3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0U3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLnN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldENvbnNlcXVlbnRTdGF0ZW1lbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgbWF0Y2hMYWJlbE5hbWUobGFiZWxOYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc0xhYmVsTmFtZSA9IHRoaXMubGFiZWxzLnNvbWUoKGxhYmVsKSA9PiB7XG4gICAgICBjb25zdCBuYW1lID0gbGFiZWxOYW1lLCAvLy9cbiAgICAgICAgICAgIGxhYmVsTWF0Y2hlc05hbWUgPSBsYWJlbC5tYXRjaE5hbWUobmFtZSk7XG5cbiAgICAgIGlmIChsYWJlbE1hdGNoZXNOYW1lKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNMYWJlbE5hbWU7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgbGFiZWxzSlNPTiA9IHRoaXMubGFiZWxzLm1hcCgobGFiZWwpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsSlNPTiA9IGxhYmVsLnRvSlNPTigpO1xuXG4gICAgICAgICAgICByZXR1cm4gbGFiZWxKU09OO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLnN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIGNvbnNlcXVlbnRTdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5jb25zZXF1ZW50U3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgc3VwcG9zaXRpb25TdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5zdXBwb3NpdGlvblN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIGtpbmQgPSBBWElPTV9LSU5ELFxuICAgICAgICAgIGxhYmVscyA9IGxhYmVsc0pTT04sICAvLy9cbiAgICAgICAgICBzdGF0ZW1lbnQgPSBzdGF0ZW1lbnRTdHJpbmcsICAvLy9cbiAgICAgICAgICBjb25zZXF1ZW50ID0gY29uc2VxdWVudFN0YXRlbWVudFN0cmluZywgLy8vXG4gICAgICAgICAgc3VwcG9zaXRpb24gPSBzdXBwb3NpdGlvblN0YXRlbWVudFN0cmluZywgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGtpbmQsXG4gICAgICAgICAgICBsYWJlbHMsXG4gICAgICAgICAgICBzdGF0ZW1lbnQsXG4gICAgICAgICAgICBjb25zZXF1ZW50LFxuICAgICAgICAgICAgc3VwcG9zaXRpb25cbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpIHtcbiAgICBsZXQgeyBsYWJlbHMgfSA9IGpzb247XG5cbiAgICBjb25zdCBsYWJlbHNKU09OID0gbGFiZWxzOyAgLy8vXG5cbiAgICBsYWJlbHMgPSBsYWJlbHNKU09OLm1hcCgobGFiZWxKU09OKSA9PiB7XG4gICAgICBjb25zdCBqc29uID0gbGFiZWxKU09OLCAvLy9cbiAgICAgICAgICAgIGxhYmVsID0gTGFiZWwuZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgICByZXR1cm4gbGFiZWw7XG4gICAgfSk7XG5cbiAgICBjb25zdCB7IHN0YXRlbWVudCwgY29uc2VxdWVudCwgc3VwcG9zaXRpb24gfSA9IGpzb247XG5cbiAgICBsZXQgYXhpb207XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAoc3RhdGVtZW50ICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBydWxlTmFtZSA9IFVOUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgICAgICBjb250ZW50ID0gYCR7c3RhdGVtZW50fVxuYCxcbiAgICAgICAgICAgIG5vZGUgPSByZWxlYXNlQ29udGV4dC5ub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSksXG4gICAgICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgICBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICBjb25zZXF1ZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgICBzdXBwb3NpdGlvbk5vZGUgPSBudWxsO1xuXG4gICAgICBheGlvbSA9IG5ldyBBeGlvbShsYWJlbHMsIHN0YXRlbWVudE5vZGUsIGNvbnNlcXVlbnROb2RlLCBzdXBwb3NpdGlvbk5vZGUpO1xuICAgIH0gZWxzZSBpZiAoKGNvbnNlcXVlbnQgIT09IG51bGwpICYmIChzdXBwb3NpdGlvbiAhPT0gbnVsbCkpIHtcbiAgICAgIGxldCBub2RlLFxuICAgICAgICAgIGNvbnRlbnQsXG4gICAgICAgICAgc3RhdGVtZW50Tm9kZSxcbiAgICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGU7XG5cbiAgICAgIGNvbnN0IHJ1bGVOYW1lID0gVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRTtcblxuICAgICAgY29udGVudCA9IGAke2NvbnNlcXVlbnR9XG5gO1xuXG4gICAgICBub2RlID0gcmVsZWFzZUNvbnRleHQubm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUoY29udGVudCwgcnVsZU5hbWUpO1xuXG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSBub2RlOyAgLy8vXG5cbiAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICAgICAgY29uc3QgY29uc2VxdWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlOyAvLy9cblxuICAgICAgY29udGVudCA9IGAke3N1cHBvc2l0aW9ufVxuYDtcblxuICAgICAgbm9kZSA9IHJlbGVhc2VDb250ZXh0Lm5vZGVGcm9tQ29udGVudEFuZFJ1bGVOYW1lKGNvbnRlbnQsIHJ1bGVOYW1lKTtcblxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gbm9kZTsgIC8vL1xuXG4gICAgICBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIGNvbnN0IHN1cHBvc2l0aW9uTm9kZSA9IHN0YXRlbWVudE5vZGU7ICAvLy9cblxuICAgICAgc3RhdGVtZW50Tm9kZSA9IG51bGw7XG5cbiAgICAgIGF4aW9tID0gbmV3IEF4aW9tKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgY29uc2VxdWVudE5vZGUsIHN1cHBvc2l0aW9uTm9kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGF4aW9tO1xuICB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNBbmRTdGF0ZW1lbnROb2RlKGxhYmVscywgc3RhdGVtZW50Tm9kZSkge1xuICAgIGNvbnN0IHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgY29uc2VxdWVudFN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIGF4aW9tID0gbmV3IEF4aW9tKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlLCBjb25zZXF1ZW50U3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gYXhpb207XG4gIH1cblxuICBzdGF0aWMgZnJvbUxhYmVsc1N1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZUNvbnNlcXVlbnRBbmRTdGF0ZW1lbnROb2RlKGxhYmVscywgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlLCBjb25zZXF1ZW50U3RhdGVtZW50Tm9kZSkge1xuICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIGF4aW9tID0gbmV3IEF4aW9tKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlLCBjb25zZXF1ZW50U3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gYXhpb207XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiQXhpb20iLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJsYWJlbHMiLCJzdGF0ZW1lbnROb2RlIiwic3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlIiwiY29uc2VxdWVudFN0YXRlbWVudE5vZGUiLCJnZXRMYWJlbHMiLCJnZXRTdGF0ZW1lbnROb2RlIiwiZ2V0U3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlIiwiZ2V0Q29uc2VxdWVudFN0YXRlbWVudE5vZGUiLCJtYXRjaExhYmVsTmFtZSIsImxhYmVsTmFtZSIsIm1hdGNoZXNMYWJlbE5hbWUiLCJzb21lIiwibGFiZWwiLCJuYW1lIiwibGFiZWxNYXRjaGVzTmFtZSIsIm1hdGNoTmFtZSIsInRvSlNPTiIsImxhYmVsc0pTT04iLCJtYXAiLCJsYWJlbEpTT04iLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJjb25zZXF1ZW50U3RhdGVtZW50U3RyaW5nIiwic3VwcG9zaXRpb25TdGF0ZW1lbnRTdHJpbmciLCJraW5kIiwiQVhJT01fS0lORCIsInN0YXRlbWVudCIsImNvbnNlcXVlbnQiLCJzdXBwb3NpdGlvbiIsImpzb24iLCJmcm9tSlNPTiIsInJlbGVhc2VDb250ZXh0IiwiTGFiZWwiLCJheGlvbSIsInJ1bGVOYW1lIiwiVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSIsImNvbnRlbnQiLCJub2RlIiwibm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUiLCJ1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUiLCJjb25zZXF1ZW50Tm9kZSIsInN1cHBvc2l0aW9uTm9kZSIsImZyb21MYWJlbHNBbmRTdGF0ZW1lbnROb2RlIiwiZnJvbUxhYmVsc1N1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZUNvbnNlcXVlbnRBbmRTdGF0ZW1lbnROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVdxQkE7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
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9heGlvbS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IExhYmVsIGZyb20gXCIuL2xhYmVsXCI7XG5cbmltcG9ydCB7IEFYSU9NX0tJTkQgfSBmcm9tIFwiLi9raW5kc1wiO1xuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5pbXBvcnQgeyBzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudEpTT04gfSBmcm9tIFwiLi91dGlsaXRpZXMvbm9kZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBeGlvbSB7XG4gIGNvbnN0cnVjdG9yKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpIHtcbiAgICB0aGlzLmxhYmVscyA9IGxhYmVscztcbiAgICB0aGlzLnN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlO1xuICAgIHRoaXMuc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcyA9IHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXM7XG4gICAgdGhpcy5jb25zZXF1ZW50U3RhdGVtZW50Tm9kZSA9IGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0TGFiZWxzKCkge1xuICAgIHJldHVybiB0aGlzLmxhYmVscztcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldFN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcztcbiAgfVxuXG4gIGdldENvbnNlcXVlbnRTdGF0ZW1lbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgbWF0Y2hMYWJlbE5hbWUobGFiZWxOYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc0xhYmVsTmFtZSA9IHRoaXMubGFiZWxzLnNvbWUoKGxhYmVsKSA9PiB7XG4gICAgICBjb25zdCBuYW1lID0gbGFiZWxOYW1lLCAvLy9cbiAgICAgICAgICAgIGxhYmVsTWF0Y2hlc05hbWUgPSBsYWJlbC5tYXRjaE5hbWUobmFtZSk7XG5cbiAgICAgIGlmIChsYWJlbE1hdGNoZXNOYW1lKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNMYWJlbE5hbWU7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgbGFiZWxzSlNPTiA9IHRoaXMubGFiZWxzLm1hcCgobGFiZWwpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsSlNPTiA9IGxhYmVsLnRvSlNPTigpO1xuXG4gICAgICAgICAgICByZXR1cm4gbGFiZWxKU09OO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLnN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIGNvbnNlcXVlbnRTdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5jb25zZXF1ZW50U3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgc3VwcG9zaXRpb25TdGF0ZW1lbnRTdHJpbmdzID0gdGhpcy5zdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzLm1hcCgoc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdXBwb3NpdGlvblN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhzdXBwb3NpdGlvblN0YXRlbWVudE5vZGUpO1xuXG4gICAgICAgICAgICByZXR1cm4gc3VwcG9zaXRpb25TdGF0ZW1lbnRTdHJpbmc7XG4gICAgICAgICAgfSksXG4gICAgICAgICAga2luZCA9IEFYSU9NX0tJTkQsXG4gICAgICAgICAgbGFiZWxzID0gbGFiZWxzSlNPTiwgIC8vL1xuICAgICAgICAgIHN0YXRlbWVudCA9IHN0YXRlbWVudFN0cmluZywgIC8vL1xuICAgICAgICAgIGNvbnNlcXVlbnQgPSBjb25zZXF1ZW50U3RhdGVtZW50U3RyaW5nLCAvLy9cbiAgICAgICAgICBzdXBwb3NpdGlvbnMgPSBzdXBwb3NpdGlvblN0YXRlbWVudFN0cmluZ3MsIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBraW5kLFxuICAgICAgICAgICAgbGFiZWxzLFxuICAgICAgICAgICAgc3RhdGVtZW50LFxuICAgICAgICAgICAgY29uc2VxdWVudCxcbiAgICAgICAgICAgIHN1cHBvc2l0aW9uc1xuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCByZWxlYXNlQ29udGV4dCkge1xuICAgIGxldCB7IGxhYmVscyB9ID0ganNvbjtcblxuICAgIGNvbnN0IGxhYmVsc0pTT04gPSBsYWJlbHM7ICAvLy9cblxuICAgIGxhYmVscyA9IGxhYmVsc0pTT04ubWFwKChsYWJlbEpTT04pID0+IHtcbiAgICAgIGNvbnN0IGpzb24gPSBsYWJlbEpTT04sIC8vL1xuICAgICAgICAgICAgbGFiZWwgPSBMYWJlbC5mcm9tSlNPTihqc29uLCByZWxlYXNlQ29udGV4dCk7XG5cbiAgICAgIHJldHVybiBsYWJlbDtcbiAgICB9KTtcblxuICAgIGNvbnN0IHsgc3RhdGVtZW50LCBzdXBwb3NpdGlvbnMsIGNvbnNlcXVlbnQgfSA9IGpzb247XG5cbiAgICBsZXQgYXhpb207XG5cbiAgICBpZiAoc3RhdGVtZW50ICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnRKU09OID0gc3RhdGVtZW50LCAgLy8vXG4gICAgICAgICAgICBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRKU09OKHN0YXRlbWVudEpTT04sIHJlbGVhc2VDb250ZXh0KSxcbiAgICAgICAgICAgIHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMgPSBudWxsLFxuICAgICAgICAgICAgY29uc2VxdWVudFN0YXRlbWVudE5vZGUgPSBudWxsO1xuXG4gICAgICBheGlvbSA9IG5ldyBBeGlvbShsYWJlbHMsIHN0YXRlbWVudE5vZGUsIHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMsIGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgICBzdXBwb3NpdGlvblN0YXRlbWVudHNKU09OID0gc3VwcG9zaXRpb25zLCAgLy8vXG4gICAgICAgICAgICBzdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzID0gc3VwcG9zaXRpb25TdGF0ZW1lbnRzSlNPTi5tYXAoKHN1cHBvc2l0aW9uU3RhdGVtZW50SlNPTikgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBzdXBwb3NpdGlvblN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudEpTT04oc3VwcG9zaXRpb25TdGF0ZW1lbnRKU09OLCByZWxlYXNlQ29udGV4dCk7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY29uc2VxdWVudFN0YXRlbWVudEpTT04gPSBjb25zZXF1ZW50LCAvLy9cbiAgICAgICAgICAgIGNvbnNlcXVlbnRTdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRKU09OKGNvbnNlcXVlbnRTdGF0ZW1lbnRKU09OLCByZWxlYXNlQ29udGV4dCk7XG5cbiAgICAgIGF4aW9tID0gbmV3IEF4aW9tKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpO1xuICAgIH1cblxuICAgIHJldHVybiBheGlvbTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTGFiZWxzQW5kU3RhdGVtZW50Tm9kZShsYWJlbHMsIHN0YXRlbWVudE5vZGUpIHtcbiAgICBjb25zdCBzdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzID0gW10sXG4gICAgICAgICAgY29uc2VxdWVudFN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIGF4aW9tID0gbmV3IEF4aW9tKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIGF4aW9tO1xuICB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNTdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzQW5kQ29uc2VxdWVudFN0YXRlbWVudE5vZGUobGFiZWxzLCBzdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzLCBjb25zZXF1ZW50U3RhdGVtZW50Tm9kZSkge1xuICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIGF4aW9tID0gbmV3IEF4aW9tKGxhYmVscywgc3RhdGVtZW50Tm9kZSwgc3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlcywgY29uc2VxdWVudFN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIGF4aW9tO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIkF4aW9tIiwibGFiZWxzIiwic3RhdGVtZW50Tm9kZSIsInN1cHBvc2l0aW9uU3RhdGVtZW50Tm9kZXMiLCJjb25zZXF1ZW50U3RhdGVtZW50Tm9kZSIsImdldExhYmVscyIsImdldFN0YXRlbWVudE5vZGUiLCJnZXRTdXBwb3NpdGlvblN0YXRlbWVudE5vZGVzIiwiZ2V0Q29uc2VxdWVudFN0YXRlbWVudE5vZGUiLCJtYXRjaExhYmVsTmFtZSIsImxhYmVsTmFtZSIsIm1hdGNoZXNMYWJlbE5hbWUiLCJzb21lIiwibGFiZWwiLCJuYW1lIiwibGFiZWxNYXRjaGVzTmFtZSIsIm1hdGNoTmFtZSIsInRvSlNPTiIsImxhYmVsc0pTT04iLCJtYXAiLCJsYWJlbEpTT04iLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJjb25zZXF1ZW50U3RhdGVtZW50U3RyaW5nIiwic3VwcG9zaXRpb25TdGF0ZW1lbnRTdHJpbmdzIiwic3VwcG9zaXRpb25TdGF0ZW1lbnROb2RlIiwic3VwcG9zaXRpb25TdGF0ZW1lbnRTdHJpbmciLCJraW5kIiwiQVhJT01fS0lORCIsInN0YXRlbWVudCIsImNvbnNlcXVlbnQiLCJzdXBwb3NpdGlvbnMiLCJqc29uIiwiZnJvbUpTT04iLCJyZWxlYXNlQ29udGV4dCIsIkxhYmVsIiwiYXhpb20iLCJzdGF0ZW1lbnRKU09OIiwic3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRKU09OIiwic3VwcG9zaXRpb25TdGF0ZW1lbnRzSlNPTiIsInN1cHBvc2l0aW9uU3RhdGVtZW50SlNPTiIsImNvbnNlcXVlbnRTdGF0ZW1lbnRKU09OIiwiZnJvbUxhYmVsc0FuZFN0YXRlbWVudE5vZGUiLCJmcm9tTGFiZWxzU3VwcG9zaXRpb25TdGF0ZW1lbnROb2Rlc0FuZENvbnNlcXVlbnRTdGF0ZW1lbnROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVNxQkE7OzswREFQSDtxQkFFUztzQkFDRTtvQkFFa0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFaEMsSUFBQSxBQUFNQSxzQkFBTjthQUFNQSxNQUNQQyxNQUFNLEVBQUVDLGFBQWEsRUFBRUMseUJBQXlCLEVBQUVDLHVCQUF1Qjs4QkFEbEVKO1FBRWpCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTtRQUNyQixJQUFJLENBQUNDLHlCQUF5QixHQUFHQTtRQUNqQyxJQUFJLENBQUNDLHVCQUF1QixHQUFHQTs7aUJBTGRKOztZQVFuQkssS0FBQUE7bUJBQUFBLFNBQUFBLFlBQVk7Z0JBQ1YsT0FBTyxJQUFJLENBQUNKLE1BQU07WUFDcEI7OztZQUVBSyxLQUFBQTtt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
|
package/lib/combinator.js
CHANGED
|
@@ -8,10 +8,9 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return Combinator;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var _query = require("./utilities/query");
|
|
12
11
|
var _string = require("./utilities/string");
|
|
13
12
|
var _kinds = require("./kinds");
|
|
14
|
-
var
|
|
13
|
+
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");
|
|
@@ -31,7 +30,6 @@ function _createClass(Constructor, protoProps, staticProps) {
|
|
|
31
30
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
32
31
|
return Constructor;
|
|
33
32
|
}
|
|
34
|
-
var statementNodeQuery = (0, _query.nodeQuery)("/combinatorDeclaration/statement");
|
|
35
33
|
var Combinator = /*#__PURE__*/ function() {
|
|
36
34
|
function Combinator(statementNode) {
|
|
37
35
|
_classCallCheck(this, Combinator);
|
|
@@ -61,7 +59,7 @@ var Combinator = /*#__PURE__*/ function() {
|
|
|
61
59
|
{
|
|
62
60
|
key: "fromJSON",
|
|
63
61
|
value: function fromJSON(json, releaseContext) {
|
|
64
|
-
var statement = json.statement,
|
|
62
|
+
var statement = json.statement, statementJSON = statement, statementNode = (0, _node.statementNodeFromStatementJSON)(statementJSON, releaseContext), combinator = new Combinator(statementNode);
|
|
65
63
|
return combinator;
|
|
66
64
|
}
|
|
67
65
|
},
|
|
@@ -76,4 +74,4 @@ var Combinator = /*#__PURE__*/ function() {
|
|
|
76
74
|
return Combinator;
|
|
77
75
|
}();
|
|
78
76
|
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21iaW5hdG9yLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21iaW5hdG9yLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBDT01CSU5BVE9SX0tJTkQgfSBmcm9tIFwiLi9raW5kc1wiO1xuaW1wb3J0IHsgc3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRKU09OIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29tYmluYXRvciB7XG4gIGNvbnN0cnVjdG9yKHN0YXRlbWVudE5vZGUpIHtcbiAgICB0aGlzLnN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgYXNTdHJpbmcoKSB7XG4gICAgbGV0IHN0cmluZztcblxuICAgIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLnN0YXRlbWVudE5vZGUpO1xuXG4gICAgc3RyaW5nID0gYCR7c3RhdGVtZW50U3RyaW5nfWA7XG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLnN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIGtpbmQgPSBDT01CSU5BVE9SX0tJTkQsXG4gICAgICAgICAgc3RhdGVtZW50ID0gc3RhdGVtZW50U3RyaW5nLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGtpbmQsXG4gICAgICAgICAgICBzdGF0ZW1lbnRcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpIHtcbiAgICBjb25zdCB7IHN0YXRlbWVudCB9ID0ganNvbixcbiAgICAgICAgICBzdGF0ZW1lbnRKU09OID0gc3RhdGVtZW50LCAgLy8vXG4gICAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVGcm9tU3RhdGVtZW50SlNPTihzdGF0ZW1lbnRKU09OLCByZWxlYXNlQ29udGV4dCksXG4gICAgICAgICAgY29tYmluYXRvciA9IG5ldyBDb21iaW5hdG9yKHN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3I7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSkge1xuICAgIGNvbnN0IGNvbWJpbmF0b3IgPSBuZXcgQ29tYmluYXRvcihzdGF0ZW1lbnROb2RlKTtcblxuICAgIHJldHVybiBjb21iaW5hdG9yO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIkNvbWJpbmF0b3IiLCJzdGF0ZW1lbnROb2RlIiwiYXNTdHJpbmciLCJzdHJpbmciLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0b0pTT04iLCJraW5kIiwiQ09NQklOQVRPUl9LSU5EIiwic3RhdGVtZW50IiwianNvbiIsImZyb21KU09OIiwicmVsZWFzZUNvbnRleHQiLCJzdGF0ZW1lbnRKU09OIiwic3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRKU09OIiwiY29tYmluYXRvciIsImZyb21TdGF0ZW1lbnROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7OztzQkFKUTtxQkFDRztvQkFDZTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFaEMsSUFBQSxBQUFNQSwyQkFBTjthQUFNQSxXQUNQQyxhQUFhOzhCQURORDtRQUVqQixJQUFJLENBQUNDLGFBQWEsR0FBR0E7O2lCQUZKRDs7WUFLbkJFLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXO2dCQUNULElBQUlDO2dCQUVKLElBQU1DLGtCQUFrQkMsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNKLGFBQWE7Z0JBRXZERSxTQUFTLEFBQUMsR0FBa0IsT0FBaEJDO2dCQUVaLE9BQU9EO1lBQ1Q7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBUztnQkFDUCxJQUFNRixrQkFBa0JDLElBQUFBLG9CQUFZLEVBQUMsSUFBSSxDQUFDSixhQUFhLEdBQ2pETSxPQUFPQyxzQkFBZSxFQUN0QkMsWUFBWUwsaUJBQ1pNLE9BQU87b0JBQ0xILE1BQUFBO29CQUNBRSxXQUFBQTtnQkFDRjtnQkFFTixPQUFPQztZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNELElBQUksRUFBRUUsY0FBYyxFQUFFO2dCQUNwQyxJQUFNLEFBQUVILFlBQWNDLEtBQWRELFdBQ0ZJLGdCQUFnQkosV0FDaEJSLGdCQUFnQmEsSUFBQUEsb0NBQThCLEVBQUNELGVBQWVELGlCQUM5REcsYUFBYSxJQS9CRmYsV0ErQmlCQztnQkFFbEMsT0FBT2M7WUFDVDs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLGtCQUFrQmYsYUFBYSxFQUFFO2dCQUN0QyxJQUFNYyxhQUFhLElBckNGZixXQXFDaUJDO2dCQUVsQyxPQUFPYztZQUNUOzs7V0F4Q21CZiJ9
|
package/lib/conclusion.js
CHANGED
|
@@ -9,8 +9,9 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _array = require("./utilities/array");
|
|
12
|
-
var _query = require("./utilities/query");
|
|
13
12
|
var _string = require("./utilities/string");
|
|
13
|
+
var _query = require("./utilities/query");
|
|
14
|
+
var _node = require("./utilities/node");
|
|
14
15
|
var _ruleNames = require("./ruleNames");
|
|
15
16
|
function _classCallCheck(instance, Constructor) {
|
|
16
17
|
if (!(instance instanceof Constructor)) {
|
|
@@ -31,7 +32,6 @@ function _createClass(Constructor, protoProps, staticProps) {
|
|
|
31
32
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
32
33
|
return Constructor;
|
|
33
34
|
}
|
|
34
|
-
var metastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement/metastatement");
|
|
35
35
|
var Conclusion = /*#__PURE__*/ function() {
|
|
36
36
|
function Conclusion(metastatementNode) {
|
|
37
37
|
_classCallCheck(this, Conclusion);
|
|
@@ -64,7 +64,7 @@ var Conclusion = /*#__PURE__*/ function() {
|
|
|
64
64
|
{
|
|
65
65
|
key: "fromJSON",
|
|
66
66
|
value: function fromJSON(json, releaseContext) {
|
|
67
|
-
var metastatement = json.metastatement,
|
|
67
|
+
var metastatement = json.metastatement, metastatementJSON = metastatement, metastatementNode = (0, _node.metastatementNodeFromMetastatementJSON)(metastatementJSON, releaseContext), conclusion = new Conclusion(metastatementNode);
|
|
68
68
|
return conclusion;
|
|
69
69
|
}
|
|
70
70
|
},
|
|
@@ -155,4 +155,4 @@ function matchConclusionMetastatementNode(conclusionMetastatementNode, metastate
|
|
|
155
155
|
return conclusionMetastatementNodeMatches;
|
|
156
156
|
}
|
|
157
157
|
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25jbHVzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUgfSBmcm9tIFwiLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IE1FVEFWQVJJQUJMRV9SVUxFX05BTUUsIE1FVEFTVEFURU1FTlRfUlVMRV9OQU1FLCBVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuL3J1bGVOYW1lc1wiO1xuXG5jb25zdCBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3VucXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50XCIpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb25jbHVzaW9uIHtcbiAgY29uc3RydWN0b3IobWV0YXN0YXRlbWVudE5vZGUpIHtcbiAgICB0aGlzLm1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBnZXRNZXRhc3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICBjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlID0gdGhpcy5tZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgIGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uTm9uVGVybWluYWxOb2RlKGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpLFxuICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cblxuICAgIHJldHVybiBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLm1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhc3RhdGVtZW50ID0gbWV0YXN0YXRlbWVudFN0cmluZywgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBtZXRhc3RhdGVtZW50XG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KSB7XG4gICAgY29uc3QgeyBtZXRhc3RhdGVtZW50IH0gPSBqc29uLFxuICAgICAgICAgIHJ1bGVOYW1lID0gVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgICAgY29udGVudCA9IGAke21ldGFzdGF0ZW1lbnR9XG5gLFxuICAgICAgICAgIG5vZGUgPSByZWxlYXNlQ29udGV4dC5ub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSksXG4gICAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgY29uY2x1c2lvbiA9IG5ldyBDb25jbHVzaW9uKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIHJldHVybiBjb25jbHVzaW9uO1xuICB9XG5cbiAgc3RhdGljIGZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIGNvbnN0IGNvbmNsdXNpb24gPSBuZXcgQ29uY2x1c2lvbihtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gY29uY2x1c2lvbjtcbiAgfVxufVxuXG5mdW5jdGlvbiBtYXRjaENvbmNsdXNpb25Ob2RlKGNvbmNsdXNpb25Ob2RlLCBub2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBsZXQgY29uY2x1c2lvbk5vZGVNYXRjaGVzID0gZmFsc2U7XG5cbiAgY29uc3Qgbm9kZVRlcm1pbmFsTm9kZSA9IG5vZGUuaXNUZXJtaW5hbE5vZGUoKSxcbiAgICAgICAgcnVsZU5vZGVUZXJtaW5hbE5vZGUgPSBjb25jbHVzaW9uTm9kZS5pc1Rlcm1pbmFsTm9kZSgpO1xuXG4gIGlmIChub2RlVGVybWluYWxOb2RlID09PSBydWxlTm9kZVRlcm1pbmFsTm9kZSkge1xuICAgIGlmIChub2RlVGVybWluYWxOb2RlKSB7XG4gICAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgICBjb25jbHVzaW9uVGVybWluYWxOb2RlID0gY29uY2x1c2lvbk5vZGUsICAvLy9cbiAgICAgICAgICAgIGNvbmNsdXNpb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uVGVybWluYWxOb2RlKGNvbmNsdXNpb25UZXJtaW5hbE5vZGUsIHRlcm1pbmFsTm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgICBjb25jbHVzaW9uTm9kZU1hdGNoZXMgPSBjb25jbHVzaW9uVGVybWluYWxOb2RlTWF0Y2hlczsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICAgIGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUgPSBjb25jbHVzaW9uTm9kZSwgIC8vL1xuICAgICAgICAgICAgY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaENvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUoY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgIGNvbmNsdXNpb25Ob2RlTWF0Y2hlcyA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uY2x1c2lvbk5vZGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaENvbmNsdXNpb25Ob2Rlcyhjb25jbHVzaW9uTm9kZXMsIG5vZGVzLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBsZXQgY29uY2x1c2lvbk5vZGVzTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IG5vZGVzTGVuZ3RoID0gbm9kZXMubGVuZ3RoLFxuICAgICAgICBjb25jbHVzaW9uTm9kZXNMZW5ndGggPSBjb25jbHVzaW9uTm9kZXMubGVuZ3RoO1xuXG4gIGlmIChub2Rlc0xlbmd0aCA9PT0gY29uY2x1c2lvbk5vZGVzTGVuZ3RoKSB7XG4gICAgY29uY2x1c2lvbk5vZGVzTWF0Y2hlcyA9IG5vZGVzLmV2ZXJ5KChub2RlLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgY29uY2x1c2lvbk5vZGUgPSBjb25jbHVzaW9uTm9kZXNbaW5kZXhdLFxuICAgICAgICAgICAgY29uY2x1c2lvbk5vZGVNYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uTm9kZShjb25jbHVzaW9uTm9kZSwgbm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgICBpZiAoY29uY2x1c2lvbk5vZGVNYXRjaGVzKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGNvbmNsdXNpb25Ob2Rlc01hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoQ29uY2x1c2lvbk1ldGF2YXJpYWJsZShjb25jbHVzaW9uTWV0YXZhcmlhYmxlTm9kZSwgbm9kZXMsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gIGxldCBjb25jbHVzaW9uTWV0YXZhcmlhYmxlTWF0Y2hlcyA9IHRydWU7XG5cbiAgY29uc3QgY29uY2x1c2lvbk1ldGF2YXJpYWJsZU5hbWUgPSBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUoY29uY2x1c2lvbk1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICBtZXRhU3Vic3RpdHV0aW9uID0gbWV0YVN1YnN0aXR1dGlvbnMuZmluZCgobWV0YVN1YnN0aXR1dGlvbikgPT4ge1xuICAgICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5hbWUgPSBtZXRhU3Vic3RpdHV0aW9uLmdldE1ldGF2YXJpYWJsZU5hbWUoKTtcblxuICAgICAgICAgIGlmIChtZXRhdmFyaWFibGVOYW1lID09PSBjb25jbHVzaW9uTWV0YXZhcmlhYmxlTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KSB8fCBudWxsO1xuXG4gIGlmIChtZXRhU3Vic3RpdHV0aW9uICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2ggPSBtZXRhU3Vic3RpdHV0aW9uLm1hdGNoTm9kZXMobm9kZXMpO1xuXG4gICAgY29uY2x1c2lvbk1ldGF2YXJpYWJsZU1hdGNoZXMgPSBtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaDsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIGNvbmNsdXNpb25NZXRhdmFyaWFibGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaENvbmNsdXNpb25UZXJtaW5hbE5vZGUoY29uY2x1c2lvblRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBjb25zdCBtYXRjaGVzID0gY29uY2x1c2lvblRlcm1pbmFsTm9kZS5tYXRjaCh0ZXJtaW5hbE5vZGUpLFxuICAgICAgICBjb25jbHVzaW9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoZXM7ICAvLy9cblxuICByZXR1cm4gY29uY2x1c2lvblRlcm1pbmFsTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoQ29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZShjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlLCBub25UZXJtaW5hbE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gIGxldCBjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCksXG4gICAgICAgIGNvbmNsdXNpb25SdWxlTmFtZSA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgaWYgKHJ1bGVOYW1lID09PSBjb25jbHVzaW9uUnVsZU5hbWUpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBjb25jbHVzaW9uQ2hpbGROb2RlcyA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIG5vZGVzID0gY2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgY29uY2x1c2lvbk5vZGVzID0gY29uY2x1c2lvbkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIGNvbmNsdXNpb25DaGlsZE5vZGVzTWF0Y2hlcyA9IG1hdGNoQ29uY2x1c2lvbk5vZGVzKGNvbmNsdXNpb25Ob2Rlcywgbm9kZXMsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgIGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gY29uY2x1c2lvbkNoaWxkTm9kZXNNYXRjaGVzOyAvLy9cblxuICAgIGlmICghY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMpIHtcbiAgICAgIGNvbnN0IHJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lID0gKHJ1bGVOYW1lID09PSBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSk7XG5cbiAgICAgIGlmIChydWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSkge1xuICAgICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgIC8vL1xuICAgICAgICAgICAgICBjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUgPSBjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlLCAgLy8vXG4gICAgICAgICAgICAgIGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBtYXRjaENvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZShjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUsIG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgICAgY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzOyAvLy9cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoQ29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlKGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSwgbWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gIGxldCBjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzID0gZmFsc2U7XG5cbiAgY29uc3QgY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZSA9IGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICBjb25jbHVzaW9uQ2hpbGROb2RlcyA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICBjb25jbHVzaW9uQ2hpbGROb2Rlc0xlbmd0aCA9IGNvbmNsdXNpb25DaGlsZE5vZGVzLmxlbmd0aDtcblxuICBpZiAoY29uY2x1c2lvbkNoaWxkTm9kZXNMZW5ndGggPT09IDEpIHtcbiAgICBjb25zdCBmaXJzdENvbmNsdXNpb25DaGlsZE5vZGUgPSBmaXJzdChjb25jbHVzaW9uQ2hpbGROb2RlcyksXG4gICAgICAgICAgY29uY2x1c2lvbkNoaWxkTm9kZSA9IGZpcnN0Q29uY2x1c2lvbkNoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgIGNvbmNsdXNpb25DaGlsZE5vZGVOb25UZXJtaW5hbE5vZGUgPSBjb25jbHVzaW9uQ2hpbGROb2RlLmlzTm9uVGVybWluYWxOb2RlKCk7XG5cbiAgICBpZiAoY29uY2x1c2lvbkNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgY29uY2x1c2lvbk5vblRlcm1pbmFsQ2hpbGROb2RlID0gY29uY2x1c2lvbkNoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgICAgY29uY2x1c2lvbk5vblRlcm1pbmFsQ2hpbGROb2RlUnVsZU5hbWUgPSBjb25jbHVzaW9uTm9uVGVybWluYWxDaGlsZE5vZGUuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgICAgIGNvbmNsdXNpb25Ob25UZXJtaW5hbENoaWxkTm9kZVJ1bGVOYW1lTWV0YXZhcmlhYmxlUnVsZU5hbWUgPSAoY29uY2x1c2lvbk5vblRlcm1pbmFsQ2hpbGROb2RlUnVsZU5hbWUgPT09IE1FVEFWQVJJQUJMRV9SVUxFX05BTUUpO1xuXG4gICAgICBpZiAoY29uY2x1c2lvbk5vblRlcm1pbmFsQ2hpbGROb2RlUnVsZU5hbWVNZXRhdmFyaWFibGVSdWxlTmFtZSkge1xuICAgICAgICBjb25zdCBjb25jbHVzaW9uTWV0YXZhcmlhYmxlTm9kZSA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbENoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgICAgICBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgICAgY29uY2x1c2lvbk1ldGFWYXJpYWJsZU1hdGNoZXMgPSBtYXRjaENvbmNsdXNpb25NZXRhdmFyaWFibGUoY29uY2x1c2lvbk1ldGF2YXJpYWJsZU5vZGUsIG5vZGVzLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgICAgY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IGNvbmNsdXNpb25NZXRhVmFyaWFibGVNYXRjaGVzOyAvLy9cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcztcbn1cbiJdLCJuYW1lcyI6WyJDb25jbHVzaW9uIiwibWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFzdGF0ZW1lbnROb2RlIiwiZ2V0TWV0YXN0YXRlbWVudE5vZGUiLCJtYXRjaE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YVN1YnN0aXR1dGlvbnMiLCJub25UZXJtaW5hbE5vZGUiLCJjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlIiwiY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMiLCJtYXRjaENvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUiLCJtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJ0b0pTT04iLCJtZXRhc3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwibWV0YXN0YXRlbWVudCIsImpzb24iLCJmcm9tSlNPTiIsInJlbGVhc2VDb250ZXh0IiwicnVsZU5hbWUiLCJVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsImNvbnRlbnQiLCJub2RlIiwibm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwiY29uY2x1c2lvbiIsImZyb21NZXRhc3RhdGVtZW50Tm9kZSIsIm1hdGNoQ29uY2x1c2lvbk5vZGUiLCJjb25jbHVzaW9uTm9kZSIsImNvbmNsdXNpb25Ob2RlTWF0Y2hlcyIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInJ1bGVOb2RlVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwiY29uY2x1c2lvblRlcm1pbmFsTm9kZSIsImNvbmNsdXNpb25UZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hDb25jbHVzaW9uVGVybWluYWxOb2RlIiwibWF0Y2hDb25jbHVzaW9uTm9kZXMiLCJjb25jbHVzaW9uTm9kZXMiLCJub2RlcyIsImNvbmNsdXNpb25Ob2Rlc01hdGNoZXMiLCJub2Rlc0xlbmd0aCIsImxlbmd0aCIsImNvbmNsdXNpb25Ob2Rlc0xlbmd0aCIsImV2ZXJ5IiwiaW5kZXgiLCJtYXRjaENvbmNsdXNpb25NZXRhdmFyaWFibGUiLCJjb25jbHVzaW9uTWV0YXZhcmlhYmxlTm9kZSIsImNvbmNsdXNpb25NZXRhdmFyaWFibGVNYXRjaGVzIiwiY29uY2x1c2lvbk1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhU3Vic3RpdHV0aW9uIiwiZmluZCIsIm1ldGF2YXJpYWJsZU5hbWUiLCJnZXRNZXRhdmFyaWFibGVOYW1lIiwibWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2giLCJtYXRjaE5vZGVzIiwibWF0Y2hlcyIsIm1hdGNoIiwiZ2V0UnVsZU5hbWUiLCJjb25jbHVzaW9uUnVsZU5hbWUiLCJjaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsImNvbmNsdXNpb25DaGlsZE5vZGVzIiwiY29uY2x1c2lvbkNoaWxkTm9kZXNNYXRjaGVzIiwicnVsZU5hbWVNZXRhc3RhdGVtZW50UnVsZU5hbWUiLCJNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsImNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSIsImNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJtYXRjaENvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSIsImNvbmNsdXNpb25DaGlsZE5vZGVzTGVuZ3RoIiwiZmlyc3RDb25jbHVzaW9uQ2hpbGROb2RlIiwiZmlyc3QiLCJjb25jbHVzaW9uQ2hpbGROb2RlIiwiY29uY2x1c2lvbkNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwiY29uY2x1c2lvbk5vblRlcm1pbmFsQ2hpbGROb2RlIiwiY29uY2x1c2lvbk5vblRlcm1pbmFsQ2hpbGROb2RlUnVsZU5hbWUiLCJjb25jbHVzaW9uTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZU1ldGF2YXJpYWJsZVJ1bGVOYW1lIiwiTUVUQVZBUklBQkxFX1JVTEVfTkFNRSIsImNvbmNsdXNpb25NZXRhVmFyaWFibGVNYXRjaGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVVxQkE7OztxQkFSQztxQkFDSTtzQkFDRzt5QkFFd0U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXJHLElBQU1DLHlCQUF5QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUUxQixJQUFBLEFBQU1GLDJCQWdEbEIsQUFoRFk7YUFBTUEsV0FDUEcsaUJBQWlCOzhCQURWSDtRQUVqQixJQUFJLENBQUNHLGlCQUFpQixHQUFHQTs7aUJBRlJIOztZQUtuQkksS0FBQUE7bUJBQUFBLFNBQUFBLHVCQUF1QjtnQkFDckIsT0FBTyxJQUFJLENBQUNELGlCQUFpQjtZQUMvQjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSx1QkFBdUJGLGlCQUFpQixFQUFFRyxpQkFBaUIsRUFBRTtnQkFDM0QsSUFBTUMsa0JBQWtCSixtQkFDbEJLLDRCQUE0QixJQUFJLENBQUNMLGlCQUFpQixFQUNsRE0sbUNBQW1DQywrQkFBK0JGLDJCQUEyQkQsaUJBQWlCRCxvQkFDOUdLLDJCQUEyQkYsa0NBQWtDLEdBQUc7Z0JBRXRFLE9BQU9F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
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25jbHVzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBtZXRhc3RhdGVtZW50Tm9kZUZyb21NZXRhc3RhdGVtZW50SlNPTiB9IGZyb20gXCIuL3V0aWxpdGllcy9ub2RlXCI7XG5pbXBvcnQgeyBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FLCBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuL3J1bGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb25jbHVzaW9uIHtcbiAgY29uc3RydWN0b3IobWV0YXN0YXRlbWVudE5vZGUpIHtcbiAgICB0aGlzLm1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBnZXRNZXRhc3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICBjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlID0gdGhpcy5tZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgIGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uTm9uVGVybWluYWxOb2RlKGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpLFxuICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cblxuICAgIHJldHVybiBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLm1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhc3RhdGVtZW50ID0gbWV0YXN0YXRlbWVudFN0cmluZywgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBtZXRhc3RhdGVtZW50XG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KSB7XG4gICAgY29uc3QgeyBtZXRhc3RhdGVtZW50IH0gPSBqc29uLFxuICAgICAgICAgIG1ldGFzdGF0ZW1lbnRKU09OID0gbWV0YXN0YXRlbWVudCwgIC8vL1xuICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVGcm9tTWV0YXN0YXRlbWVudEpTT04obWV0YXN0YXRlbWVudEpTT04sIHJlbGVhc2VDb250ZXh0KSxcbiAgICAgICAgICBjb25jbHVzaW9uID0gbmV3IENvbmNsdXNpb24obWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIGNvbmNsdXNpb247XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgY29uc3QgY29uY2x1c2lvbiA9IG5ldyBDb25jbHVzaW9uKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIHJldHVybiBjb25jbHVzaW9uO1xuICB9XG59XG5cbmZ1bmN0aW9uIG1hdGNoQ29uY2x1c2lvbk5vZGUoY29uY2x1c2lvbk5vZGUsIG5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gIGxldCBjb25jbHVzaW9uTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICBydWxlTm9kZVRlcm1pbmFsTm9kZSA9IGNvbmNsdXNpb25Ob2RlLmlzVGVybWluYWxOb2RlKCk7XG5cbiAgaWYgKG5vZGVUZXJtaW5hbE5vZGUgPT09IHJ1bGVOb2RlVGVybWluYWxOb2RlKSB7XG4gICAgaWYgKG5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICAgIGNvbmNsdXNpb25UZXJtaW5hbE5vZGUgPSBjb25jbHVzaW9uTm9kZSwgIC8vL1xuICAgICAgICAgICAgY29uY2x1c2lvblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaENvbmNsdXNpb25UZXJtaW5hbE5vZGUoY29uY2x1c2lvblRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgIGNvbmNsdXNpb25Ob2RlTWF0Y2hlcyA9IGNvbmNsdXNpb25UZXJtaW5hbE5vZGVNYXRjaGVzOyAgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgICAgY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZSA9IGNvbmNsdXNpb25Ob2RlLCAgLy8vXG4gICAgICAgICAgICBjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoQ29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZShjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlLCBub25UZXJtaW5hbE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgY29uY2x1c2lvbk5vZGVNYXRjaGVzID0gY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXM7IC8vL1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjb25jbHVzaW9uTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoQ29uY2x1c2lvbk5vZGVzKGNvbmNsdXNpb25Ob2Rlcywgbm9kZXMsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gIGxldCBjb25jbHVzaW9uTm9kZXNNYXRjaGVzID0gZmFsc2U7XG5cbiAgY29uc3Qgbm9kZXNMZW5ndGggPSBub2Rlcy5sZW5ndGgsXG4gICAgICAgIGNvbmNsdXNpb25Ob2Rlc0xlbmd0aCA9IGNvbmNsdXNpb25Ob2Rlcy5sZW5ndGg7XG5cbiAgaWYgKG5vZGVzTGVuZ3RoID09PSBjb25jbHVzaW9uTm9kZXNMZW5ndGgpIHtcbiAgICBjb25jbHVzaW9uTm9kZXNNYXRjaGVzID0gbm9kZXMuZXZlcnkoKG5vZGUsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBjb25jbHVzaW9uTm9kZSA9IGNvbmNsdXNpb25Ob2Rlc1tpbmRleF0sXG4gICAgICAgICAgICBjb25jbHVzaW9uTm9kZU1hdGNoZXMgPSBtYXRjaENvbmNsdXNpb25Ob2RlKGNvbmNsdXNpb25Ob2RlLCBub2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgIGlmIChjb25jbHVzaW9uTm9kZU1hdGNoZXMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gY29uY2x1c2lvbk5vZGVzTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hDb25jbHVzaW9uTWV0YXZhcmlhYmxlKGNvbmNsdXNpb25NZXRhdmFyaWFibGVOb2RlLCBub2RlcywgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgbGV0IGNvbmNsdXNpb25NZXRhdmFyaWFibGVNYXRjaGVzID0gdHJ1ZTtcblxuICBjb25zdCBjb25jbHVzaW9uTWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZShjb25jbHVzaW9uTWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgIG1ldGFTdWJzdGl0dXRpb24gPSBtZXRhU3Vic3RpdHV0aW9ucy5maW5kKChtZXRhU3Vic3RpdHV0aW9uKSA9PiB7XG4gICAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTmFtZSA9IG1ldGFTdWJzdGl0dXRpb24uZ2V0TWV0YXZhcmlhYmxlTmFtZSgpO1xuXG4gICAgICAgICAgaWYgKG1ldGF2YXJpYWJsZU5hbWUgPT09IGNvbmNsdXNpb25NZXRhdmFyaWFibGVOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pIHx8IG51bGw7XG5cbiAgaWYgKG1ldGFTdWJzdGl0dXRpb24gIT09IG51bGwpIHtcbiAgICBjb25zdCBtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaCA9IG1ldGFTdWJzdGl0dXRpb24ubWF0Y2hOb2Rlcyhub2Rlcyk7XG5cbiAgICBjb25jbHVzaW9uTWV0YXZhcmlhYmxlTWF0Y2hlcyA9IG1ldGFTdWJzdGl0dXRpb25Ob2Rlc01hdGNoOyAgLy8vXG4gIH1cblxuICByZXR1cm4gY29uY2x1c2lvbk1ldGF2YXJpYWJsZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoQ29uY2x1c2lvblRlcm1pbmFsTm9kZShjb25jbHVzaW9uVGVybWluYWxOb2RlLCB0ZXJtaW5hbE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gIGNvbnN0IG1hdGNoZXMgPSBjb25jbHVzaW9uVGVybWluYWxOb2RlLm1hdGNoKHRlcm1pbmFsTm9kZSksXG4gICAgICAgIGNvbmNsdXNpb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hlczsgIC8vL1xuXG4gIHJldHVybiBjb25jbHVzaW9uVGVybWluYWxOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hDb25jbHVzaW9uTm9uVGVybWluYWxOb2RlKGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgbGV0IGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gZmFsc2U7XG5cbiAgY29uc3QgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgY29uY2x1c2lvblJ1bGVOYW1lID0gY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpOyAvLy9cblxuICBpZiAocnVsZU5hbWUgPT09IGNvbmNsdXNpb25SdWxlTmFtZSkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIGNvbmNsdXNpb25DaGlsZE5vZGVzID0gY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICBjb25jbHVzaW9uTm9kZXMgPSBjb25jbHVzaW9uQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgY29uY2x1c2lvbkNoaWxkTm9kZXNNYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uTm9kZXMoY29uY2x1c2lvbk5vZGVzLCBub2RlcywgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBjb25jbHVzaW9uQ2hpbGROb2Rlc01hdGNoZXM7IC8vL1xuXG4gICAgaWYgKCFjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcykge1xuICAgICAgY29uc3QgcnVsZU5hbWVNZXRhc3RhdGVtZW50UnVsZU5hbWUgPSAocnVsZU5hbWUgPT09IE1FVEFTVEFURU1FTlRfUlVMRV9OQU1FKTtcblxuICAgICAgaWYgKHJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lKSB7XG4gICAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbm9uVGVybWluYWxOb2RlLCAgLy8vXG4gICAgICAgICAgICAgIGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IG1hdGNoQ29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlKGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZSwgbWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgICBjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7IC8vL1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hDb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGUoY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgbGV0IGNvbmNsdXNpb25NZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBjb25jbHVzaW9uTm9uVGVybWluYWxOb2RlID0gY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgIGNvbmNsdXNpb25DaGlsZE5vZGVzID0gY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgIGNvbmNsdXNpb25DaGlsZE5vZGVzTGVuZ3RoID0gY29uY2x1c2lvbkNoaWxkTm9kZXMubGVuZ3RoO1xuXG4gIGlmIChjb25jbHVzaW9uQ2hpbGROb2Rlc0xlbmd0aCA9PT0gMSkge1xuICAgIGNvbnN0IGZpcnN0Q29uY2x1c2lvbkNoaWxkTm9kZSA9IGZpcnN0KGNvbmNsdXNpb25DaGlsZE5vZGVzKSxcbiAgICAgICAgICBjb25jbHVzaW9uQ2hpbGROb2RlID0gZmlyc3RDb25jbHVzaW9uQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgY29uY2x1c2lvbkNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSA9IGNvbmNsdXNpb25DaGlsZE5vZGUuaXNOb25UZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmIChjb25jbHVzaW9uQ2hpbGROb2RlTm9uVGVybWluYWxOb2RlKSB7XG4gICAgICBjb25zdCBjb25jbHVzaW9uTm9uVGVybWluYWxDaGlsZE5vZGUgPSBjb25jbHVzaW9uQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICBjb25jbHVzaW9uTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZSA9IGNvbmNsdXNpb25Ob25UZXJtaW5hbENoaWxkTm9kZS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICAgICAgY29uY2x1c2lvbk5vblRlcm1pbmFsQ2hpbGROb2RlUnVsZU5hbWVNZXRhdmFyaWFibGVSdWxlTmFtZSA9IChjb25jbHVzaW9uTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZSA9PT0gTUVUQVZBUklBQkxFX1JVTEVfTkFNRSk7XG5cbiAgICAgIGlmIChjb25jbHVzaW9uTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZU1ldGF2YXJpYWJsZVJ1bGVOYW1lKSB7XG4gICAgICAgIGNvbnN0IGNvbmNsdXNpb25NZXRhdmFyaWFibGVOb2RlID0gY29uY2x1c2lvbk5vblRlcm1pbmFsQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgICBub2RlcyA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICBjb25jbHVzaW9uTWV0YVZhcmlhYmxlTWF0Y2hlcyA9IG1hdGNoQ29uY2x1c2lvbk1ldGF2YXJpYWJsZShjb25jbHVzaW9uTWV0YXZhcmlhYmxlTm9kZSwgbm9kZXMsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgICBjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzID0gY29uY2x1c2lvbk1ldGFWYXJpYWJsZU1hdGNoZXM7IC8vL1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjb25jbHVzaW9uTWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzO1xufVxuIl0sIm5hbWVzIjpbIkNvbmNsdXNpb24iLCJtZXRhc3RhdGVtZW50Tm9kZSIsImdldE1ldGFzdGF0ZW1lbnROb2RlIiwibWF0Y2hNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFTdWJzdGl0dXRpb25zIiwibm9uVGVybWluYWxOb2RlIiwiY29uY2x1c2lvbk5vblRlcm1pbmFsTm9kZSIsImNvbmNsdXNpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hDb25jbHVzaW9uTm9uVGVybWluYWxOb2RlIiwibWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzIiwidG9KU09OIiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsIm1ldGFzdGF0ZW1lbnQiLCJqc29uIiwiZnJvbUpTT04iLCJyZWxlYXNlQ29udGV4dCIsIm1ldGFzdGF0ZW1lbnRKU09OIiwibWV0YXN0YXRlbWVudE5vZGVGcm9tTWV0YXN0YXRlbWVudEpTT04iLCJjb25jbHVzaW9uIiwiZnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwibWF0Y2hDb25jbHVzaW9uTm9kZSIsImNvbmNsdXNpb25Ob2RlIiwibm9kZSIsImNvbmNsdXNpb25Ob2RlTWF0Y2hlcyIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInJ1bGVOb2RlVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwiY29uY2x1c2lvblRlcm1pbmFsTm9kZSIsImNvbmNsdXNpb25UZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hDb25jbHVzaW9uVGVybWluYWxOb2RlIiwibWF0Y2hDb25jbHVzaW9uTm9kZXMiLCJjb25jbHVzaW9uTm9kZXMiLCJub2RlcyIsImNvbmNsdXNpb25Ob2Rlc01hdGNoZXMiLCJub2Rlc0xlbmd0aCIsImxlbmd0aCIsImNvbmNsdXNpb25Ob2Rlc0xlbmd0aCIsImV2ZXJ5IiwiaW5kZXgiLCJtYXRjaENvbmNsdXNpb25NZXRhdmFyaWFibGUiLCJjb25jbHVzaW9uTWV0YXZhcmlhYmxlTm9kZSIsImNvbmNsdXNpb25NZXRhdmFyaWFibGVNYXRjaGVzIiwiY29uY2x1c2lvbk1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhU3Vic3RpdHV0aW9uIiwiZmluZCIsIm1ldGF2YXJpYWJsZU5hbWUiLCJnZXRNZXRhdmFyaWFibGVOYW1lIiwibWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2giLCJtYXRjaE5vZGVzIiwibWF0Y2hlcyIsIm1hdGNoIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsImNvbmNsdXNpb25SdWxlTmFtZSIsImNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwiY29uY2x1c2lvbkNoaWxkTm9kZXMiLCJjb25jbHVzaW9uQ2hpbGROb2Rlc01hdGNoZXMiLCJydWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSIsIk1FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwiY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlIiwiY29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoQ29uY2x1c2lvbk1ldGFzdGF0ZW1lbnROb2RlIiwiY29uY2x1c2lvbkNoaWxkTm9kZXNMZW5ndGgiLCJmaXJzdENvbmNsdXNpb25DaGlsZE5vZGUiLCJmaXJzdCIsImNvbmNsdXNpb25DaGlsZE5vZGUiLCJjb25jbHVzaW9uQ2hpbGROb2RlTm9uVGVybWluYWxOb2RlIiwiaXNOb25UZXJtaW5hbE5vZGUiLCJjb25jbHVzaW9uTm9uVGVybWluYWxDaGlsZE5vZGUiLCJjb25jbHVzaW9uTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZSIsImNvbmNsdXNpb25Ob25UZXJtaW5hbENoaWxkTm9kZVJ1bGVOYW1lTWV0YXZhcmlhYmxlUnVsZU5hbWUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwiY29uY2x1c2lvbk1ldGFWYXJpYWJsZU1hdGNoZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBUXFCQTs7O3FCQU5DO3NCQUNPO3FCQUN3QjtvQkFDRTt5QkFDUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFakQsSUFBQSxBQUFNQSwyQkE0Q2xCLEFBNUNZO2FBQU1BLFdBQ1BDLGlCQUFpQjs4QkFEVkQ7UUFFakIsSUFBSSxDQUFDQyxpQkFBaUIsR0FBR0E7O2lCQUZSRDs7WUFLbkJFLEtBQUFBO21CQUFBQSxTQUFBQSx1QkFBdUI7Z0JBQ3JCLE9BQU8sSUFBSSxDQUFDRCxpQkFBaUI7WUFDL0I7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsdUJBQXVCRixpQkFBaUIsRUFBRUcsaUJBQWlCLEVBQUU7Z0JBQzNELElBQU1DLGtCQUFrQkosbUJBQ2xCSyw0QkFBNEIsSUFBSSxDQUFDTCxpQkFBaUIsRUFDbERNLG1DQUFtQ0MsK0JBQStCRiwyQkFBMkJELGlCQUFpQkQsb0JBQzlHSywyQkFBMkJGLGtDQUFrQyxHQUFHO2dCQUV0RSxPQUFPRTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLFNBQVM7Z0JBQ1AsSUFBTUMsc0JBQXNCQyxJQUFBQSxvQkFBWSxFQUFDLElBQUksQ0FBQ1gsaUJBQWlCLEdBQ3pEWSxnQkFBZ0JGLHFCQUNoQkcsT0FBTztvQkFDTEQsZUFBQUE7Z0JBQ0Y7Z0JBRU4sT0FBT0M7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTRCxJQUFJLEVBQUVFLGNBQWMsRUFBRTtnQkFDcEMsSUFBTSxBQUFFSCxnQkFBa0JDLEtBQWxCRCxlQUNGSSxvQkFBb0JKLGVBQ3BCWixvQkFBb0JpQixJQUFBQSw0Q0FBc0MsRUFBQ0QsbUJBQW1CRCxpQkFDOUVHLGFBQWEsSUFoQ0ZuQixXQWdDaUJDO2dCQUVsQyxPQUFPa0I7WUFDVDs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLHNCQUFzQm5CLGlCQUFpQixFQUFFO2dCQUM5QyxJQUFNa0IsYUFBYSxJQXRDRm5CLFdBc0NpQkM7Z0JBRWxDLE9BQU9rQjtZQUNUOzs7V0F6Q21CbkI7O0FBNENyQixTQUFTcUIsb0JBQW9CQyxjQUFjLEVBQUVDLElBQUksRUFBRW5CLGlCQUFpQixFQUFFO0lBQ3BFLElBQUlvQix3QkFBd0IsS0FBSztJQUVqQyxJQUFNQyxtQkFBbUJGLEtBQUtHLGNBQWMsSUFDdENDLHVCQUF1QkwsZUFBZUksY0FBYztJQUUxRCxJQUFJRCxxQkFBcUJFLHNCQUFzQjtRQUM3QyxJQUFJRixrQkFBa0I7WUFDcEIsSUFBTUcsZUFBZUwsTUFDZk0seUJBQXlCUCxnQkFDekJRLGdDQUFnQ0MsNEJBQTRCRix3QkFBd0JELGNBQWN4QjtZQUV4R29CLHdCQUF3Qk0sK0JBQWdDLEdBQUc7UUFDN0QsT0FBTztZQUNMLElBQU16QixrQkFBa0JrQixNQUNsQmpCLDRCQUE0QmdCLGdCQUM1QmYsbUNBQW1DQywrQkFBK0JGLDJCQUEyQkQsaUJBQWlCRDtZQUVwSG9CLHdCQUF3QmpCLGtDQUFrQyxHQUFHO1FBQy9ELENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBT2lCO0FBQ1Q7QUFFQSxTQUFTUSxxQkFBcUJDLGVBQWUsRUFBRUMsS0FBSyxFQUFFOUIsaUJBQWlCLEVBQUU7SUFDdkUsSUFBSStCLHlCQUF5QixLQUFLO0lBRWxDLElBQU1DLGNBQWNGLE1BQU1HLE1BQU0sRUFDMUJDLHdCQUF3QkwsZ0JBQWdCSSxNQUFNO0lBRXBELElBQUlELGdCQUFnQkUsdUJBQXVCO1FBQ3pDSCx5QkFBeUJELE1BQU1LLEtBQUssQ0FBQyxTQUFDaEIsTUFBTWlCLE9BQVU7WUFDcEQsSUFBTWxCLGlCQUFpQlcsZUFBZSxDQUFDTyxNQUFNLEVBQ3ZDaEIsd0JBQXdCSCxvQkFBb0JDLGdCQUFnQkMsTUFBTW5CO1lBRXhFLElBQUlvQix1QkFBdUI7Z0JBQ3pCLE9BQU8sSUFBSTtZQUNiLENBQUM7UUFDSDtJQUNGLENBQUM7SUFFRCxPQUFPVztBQUNUO0FBRUEsU0FBU00sNEJBQTRCQywwQkFBMEIsRUFBRVIsS0FBSyxFQUFFOUIsaUJBQWlCLEVBQUU7SUFDekYsSUFBSXVDLGdDQUFnQyxJQUFJO0lBRXhDLElBQU1DLDZCQUE2QkMsSUFBQUEsMkNBQW9DLEVBQUNILDZCQUNsRUksbUJBQW1CMUMsa0JBQWtCMkMsSUFBSSxDQUFDLFNBQUNELGtCQUFxQjtRQUM5RCxJQUFNRSxtQkFBbUJGLGlCQUFpQkcsbUJBQW1CO1FBRTdELElBQUlELHFCQUFxQkosNEJBQTRCO1lBQ25ELE9BQU8sSUFBSTtRQUNiLENBQUM7SUFDSCxNQUFNLElBQUk7SUFFaEIsSUFBSUUscUJBQXFCLElBQUksRUFBRTtRQUM3QixJQUFNSSw2QkFBNkJKLGlCQUFpQkssVUFBVSxDQUFDakI7UUFFL0RTLGdDQUFnQ08sNEJBQTZCLEdBQUc7SUFDbEUsQ0FBQztJQUVELE9BQU9QO0FBQ1Q7QUFFQSxTQUFTWiw0QkFBNEJGLHNCQUFzQixFQUFFRCxZQUFZLEVBQUV4QixpQkFBaUIsRUFBRTtJQUM1RixJQUFNZ0QsVUFBVXZCLHVCQUF1QndCLEtBQUssQ0FBQ3pCLGVBQ3ZDRSxnQ0FBZ0NzQixTQUFVLEdBQUc7SUFFbkQsT0FBT3RCO0FBQ1Q7QUFFQSxTQUFTdEIsK0JBQStCRix5QkFBeUIsRUFBRUQsZUFBZSxFQUFFRCxpQkFBaUIsRUFBRTtJQUNyRyxJQUFJRyxtQ0FBbUMsS0FBSztJQUU1QyxJQUFNK0MsV0FBV2pELGdCQUFnQmtELFdBQVcsSUFDdENDLHFCQUFxQmxELDBCQUEwQmlELFdBQVcsSUFBSSxHQUFHO0lBRXZFLElBQUlELGFBQWFFLG9CQUFvQjtRQUNuQyxJQUFNQyxhQUFhcEQsZ0JBQWdCcUQsYUFBYSxJQUMxQ0MsdUJBQXVCckQsMEJBQTBCb0QsYUFBYSxJQUM5RHhCLFFBQVF1QixZQUNSeEIsa0JBQWtCMEIsc0JBQ2xCQyw4QkFBOEI1QixxQkFBcUJDLGlCQUFpQkMsT0FBTzlCO1FBRWpGRyxtQ0FBbUNxRCw2QkFBNkIsR0FBRztRQUVuRSxJQUFJLENBQUNyRCxrQ0FBa0M7WUFDckMsSUFBTXNELGdDQUFpQ1AsYUFBYVEsa0NBQXVCO1lBRTNFLElBQUlELCtCQUErQjtnQkFDakMsSUFBTTVELG9CQUFvQkksaUJBQ3BCMEQsOEJBQThCekQsMkJBQzlCMEQscUNBQXFDQyxpQ0FBaUNGLDZCQUE2QjlELG1CQUFtQkc7Z0JBRTVIRyxtQ0FBbUN5RCxvQ0FBb0MsR0FBRztZQUM1RSxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPekQ7QUFDVDtBQUVBLFNBQVMwRCxpQ0FBaUNGLDJCQUEyQixFQUFFOUQsaUJBQWlCLEVBQUVHLGlCQUFpQixFQUFFO0lBQzNHLElBQUk0RCxxQ0FBcUMsS0FBSztJQUU5QyxJQUFNMUQsNEJBQTRCeUQsNkJBQzVCSix1QkFBdUJyRCwwQkFBMEJvRCxhQUFhLElBQzlEUSw2QkFBNkJQLHFCQUFxQnRCLE1BQU07SUFFOUQsSUFBSTZCLCtCQUErQixHQUFHO1FBQ3BDLElBQU1DLDJCQUEyQkMsSUFBQUEsWUFBSyxFQUFDVCx1QkFDakNVLHNCQUFzQkYsMEJBQ3RCRyxxQ0FBcUNELG9CQUFvQkUsaUJBQWlCO1FBRWhGLElBQUlELG9DQUFvQztZQUN0QyxJQUFNRSxpQ0FBaUNILHFCQUNqQ0kseUNBQXlDRCwrQkFBK0JqQixXQUFXLElBQ25GbUIsNkRBQThERCwyQ0FBMkNFLGlDQUFzQjtZQUVySSxJQUFJRCw0REFBNEQ7Z0JBQzlELElBQU1oQyw2QkFBNkI4QixnQ0FDN0JuRSxrQkFBa0JKLG1CQUNsQndELGFBQWFwRCxnQkFBZ0JxRCxhQUFhLElBQzFDeEIsUUFBUXVCLFlBQ1JtQixnQ0FBZ0NuQyw0QkFBNEJDLDRCQUE0QlIsT0FBTzlCO2dCQUVyRzRELHFDQUFxQ1ksK0JBQStCLEdBQUc7WUFDekUsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBT1o7QUFDVCJ9
|
package/lib/constructor.js
CHANGED
|
@@ -9,10 +9,9 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _type = /*#__PURE__*/ _interopRequireDefault(require("./type"));
|
|
12
|
-
var _query = require("./utilities/query");
|
|
13
12
|
var _string = require("./utilities/string");
|
|
14
13
|
var _kinds = require("./kinds");
|
|
15
|
-
var
|
|
14
|
+
var _node = require("./utilities/node");
|
|
16
15
|
function _classCallCheck(instance, Constructor) {
|
|
17
16
|
if (!(instance instanceof Constructor)) {
|
|
18
17
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -37,7 +36,6 @@ function _interopRequireDefault(obj) {
|
|
|
37
36
|
default: obj
|
|
38
37
|
};
|
|
39
38
|
}
|
|
40
|
-
var statementNodeQuery = (0, _query.nodeQuery)("/constructorDeclaration/term");
|
|
41
39
|
var Constructor = /*#__PURE__*/ function() {
|
|
42
40
|
function Constructor(termNode, type) {
|
|
43
41
|
_classCallCheck(this, Constructor);
|
|
@@ -86,7 +84,7 @@ var Constructor = /*#__PURE__*/ function() {
|
|
|
86
84
|
{
|
|
87
85
|
key: "fromJSON",
|
|
88
86
|
value: function fromJSON(json, releaseContext) {
|
|
89
|
-
var term = json.term,
|
|
87
|
+
var term = json.term, termJSON = term, termNode = (0, _node.termNodeFromTermJSON)(termJSON, releaseContext);
|
|
90
88
|
var type = json.type;
|
|
91
89
|
var typeJSON = type; ///
|
|
92
90
|
json = typeJSON; ///
|
|
@@ -108,4 +106,4 @@ var Constructor = /*#__PURE__*/ function() {
|
|
|
108
106
|
return Constructor;
|
|
109
107
|
}();
|
|
110
108
|
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdHJ1Y3Rvci5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdHJ1Y3Rvci5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFR5cGUgZnJvbSBcIi4vdHlwZVwiO1xuXG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBDT05TVFJVQ1RPUl9LSU5EIH0gZnJvbSBcIi4va2luZHNcIjtcbmltcG9ydCB7IHRlcm1Ob2RlRnJvbVRlcm1KU09OIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29uc3RydWN0b3Ige1xuICBjb25zdHJ1Y3Rvcih0ZXJtTm9kZSwgdHlwZSkge1xuICAgIHRoaXMudGVybU5vZGUgPSB0ZXJtTm9kZTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICB9XG5cbiAgZ2V0VGVybU5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudGVybU5vZGU7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBhc1N0cmluZygpIHtcbiAgICBsZXQgc3RyaW5nO1xuXG4gICAgY29uc3QgdGVybVN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLnRlcm1Ob2RlKTtcblxuICAgIGlmICh0aGlzLnR5cGUgPT09IG51bGwpIHtcbiAgICAgIHN0cmluZyA9IGAke3Rlcm1TdHJpbmd9YDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgbm9TdXBlclR5cGUgPSB0cnVlLFxuICAgICAgICAgICAgdHlwZVN0cmluZyA9IHRoaXMudHlwZS5hc1N0cmluZyhub1N1cGVyVHlwZSk7XG5cbiAgICAgIHN0cmluZyA9IGAke3Rlcm1TdHJpbmd9OiR7dHlwZVN0cmluZ31gO1xuICAgIH1cblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgdGVybVN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLnRlcm1Ob2RlKSxcbiAgICAgICAgICB0eXBlSlNPTiA9ICh0aGlzLnR5cGUgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnR5cGUudG9KU09OKCksXG4gICAgICAgICAga2luZCA9IENPTlNUUlVDVE9SX0tJTkQsXG4gICAgICAgICAgdGVybSA9IHRlcm1TdHJpbmcsICAvLy9cbiAgICAgICAgICB0eXBlID0gdHlwZUpTT04sICAvLy9cbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAga2luZCxcbiAgICAgICAgICAgIHRlcm0sXG4gICAgICAgICAgICB0eXBlXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KSB7XG4gICAgY29uc3QgeyB0ZXJtIH0gPSBqc29uLFxuICAgICAgICAgIHRlcm1KU09OID0gdGVybSwgIC8vL1xuICAgICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVGcm9tVGVybUpTT04odGVybUpTT04sIHJlbGVhc2VDb250ZXh0KTtcblxuICAgIGxldCB7IHR5cGUgfSA9IGpzb247XG5cbiAgICBjb25zdCB0eXBlSlNPTiA9IHR5cGU7ICAvLy9cblxuICAgIGpzb24gPSB0eXBlSlNPTjsgIC8vL1xuXG4gICAgdHlwZSA9IFR5cGUuZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgY29uc3QgdHlwZU5hbWUgPSB0eXBlLmdldE5hbWUoKTtcblxuICAgIHR5cGUgPSByZWxlYXNlQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpOyAvLy9cblxuICAgIGNvbnN0IGNvbnN0cnVjdG9yID0gbmV3IENvbnN0cnVjdG9yKHRlcm1Ob2RlLCB0eXBlKTtcblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVGVybU5vZGVBbmRUeXBlKHRlcm1Ob2RlLCB0eXBlKSB7XG4gICAgY29uc3QgY29uc3RydWN0b3IgPSBuZXcgQ29uc3RydWN0b3IodGVybU5vZGUsIHR5cGUpO1xuXG4gICAgcmV0dXJuIGNvbnN0cnVjdG9yO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIkNvbnN0cnVjdG9yIiwidGVybU5vZGUiLCJ0eXBlIiwiZ2V0VGVybU5vZGUiLCJnZXRUeXBlIiwiYXNTdHJpbmciLCJzdHJpbmciLCJ0ZXJtU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwibm9TdXBlclR5cGUiLCJ0eXBlU3RyaW5nIiwidG9KU09OIiwidHlwZUpTT04iLCJraW5kIiwiQ09OU1RSVUNUT1JfS0lORCIsInRlcm0iLCJqc29uIiwiZnJvbUpTT04iLCJyZWxlYXNlQ29udGV4dCIsInRlcm1KU09OIiwidGVybU5vZGVGcm9tVGVybUpTT04iLCJUeXBlIiwidHlwZU5hbWUiLCJnZXROYW1lIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwiY29uc3RydWN0b3IiLCJmcm9tVGVybU5vZGVBbmRUeXBlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVFxQkE7Ozt5REFOSjtzQkFFWTtxQkFDSTtvQkFDSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV0QixJQUFBLEFBQU1BLDRCQUFOO2FBQU1BLFlBQ1BDLFFBQVEsRUFBRUMsSUFBSTs4QkFEUEY7UUFFakIsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTs7aUJBSEtGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWM7Z0JBQ1osT0FBTyxJQUFJLENBQUNGLFFBQVE7WUFDdEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVTtnQkFDUixPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXO2dCQUNULElBQUlDO2dCQUVKLElBQU1DLGFBQWFDLElBQUFBLG9CQUFZLEVBQUMsSUFBSSxDQUFDUCxRQUFRO2dCQUU3QyxJQUFJLElBQUksQ0FBQ0MsSUFBSSxLQUFLLElBQUksRUFBRTtvQkFDdEJJLFNBQVMsQUFBQyxHQUFhLE9BQVhDO2dCQUNkLE9BQU87b0JBQ0wsSUFBTUUsY0FBYyxJQUFJLEVBQ2xCQyxhQUFhLElBQUksQ0FBQ1IsSUFBSSxDQUFDRyxRQUFRLENBQUNJO29CQUV0Q0gsU0FBUyxBQUFDLEdBQWdCSSxPQUFkSCxZQUFXLEtBQWMsT0FBWEc7Z0JBQzVCLENBQUM7Z0JBRUQsT0FBT0o7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTO2dCQUNQLElBQU1KLGFBQWFDLElBQUFBLG9CQUFZLEVBQUMsSUFBSSxDQUFDUCxRQUFRLEdBQ3ZDVyxXQUFXLEFBQUMsSUFBSSxDQUFDVixJQUFJLEtBQUssSUFBSSxHQUNoQixJQUFJLEdBQ0YsSUFBSSxDQUFDQSxJQUFJLENBQUNTLE1BQU0sRUFBRSxFQUNsQ0UsT0FBT0MsdUJBQWdCLEVBQ3ZCQyxPQUFPUixZQUNQTCxPQUFPVSxVQUNQSSxPQUFPO29CQUNMSCxNQUFBQTtvQkFDQUUsTUFBQUE7b0JBQ0FiLE1BQUFBO2dCQUNGO2dCQUVOLE9BQU9jO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsU0FBU0QsSUFBSSxFQUFFRSxjQUFjLEVBQUU7Z0JBQ3BDLElBQU0sQUFBRUgsT0FBU0MsS0FBVEQsTUFDRkksV0FBV0osTUFDWGQsV0FBV21CLElBQUFBLDBCQUFvQixFQUFDRCxVQUFVRDtnQkFFaEQsSUFBSSxBQUFFaEIsT0FBU2MsS0FBVGQ7Z0JBRU4sSUFBTVUsV0FBV1YsTUFBTyxHQUFHO2dCQUUzQmMsT0FBT0osVUFBVyxHQUFHO2dCQUVyQlYsT0FBT21CLGFBQUksQ0FBQ0osUUFBUSxDQUFDRCxNQUFNRTtnQkFFM0IsSUFBTUksV0FBV3BCLEtBQUtxQixPQUFPO2dCQUU3QnJCLE9BQU9nQixlQUFlTSxrQkFBa0IsQ0FBQ0YsV0FBVyxHQUFHO2dCQUV2RCxJQUFNRyxjQUFjLElBakVIekIsWUFpRW1CQyxVQUFVQztnQkFFOUMsT0FBT3VCO1lBQ1Q7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxvQkFBb0J6QixRQUFRLEVBQUVDLElBQUksRUFBRTtnQkFDekMsSUFBTXVCLGNBQWMsSUF2RUh6QixZQXVFbUJDLFVBQVVDO2dCQUU5QyxPQUFPdUI7WUFDVDs7O1dBMUVtQnpCIn0=
|
package/lib/label.js
CHANGED
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _string = require("./utilities/string");
|
|
12
|
-
var
|
|
12
|
+
var _node = require("./utilities/node");
|
|
13
13
|
var _query = require("./utilities/query");
|
|
14
14
|
function _classCallCheck(instance, Constructor) {
|
|
15
15
|
if (!(instance instanceof Constructor)) {
|
|
@@ -67,7 +67,7 @@ var Label = /*#__PURE__*/ function() {
|
|
|
67
67
|
{
|
|
68
68
|
key: "fromJSON",
|
|
69
69
|
value: function fromJSON(json, releaseContext) {
|
|
70
|
-
var
|
|
70
|
+
var labelJSON = json, labelNode = (0, _node.labelNodeFromLabelJSON)(labelJSON, releaseContext), node = labelNode, label = new Label(node);
|
|
71
71
|
return label;
|
|
72
72
|
}
|
|
73
73
|
},
|
|
@@ -82,4 +82,4 @@ var Label = /*#__PURE__*/ function() {
|
|
|
82
82
|
return Label;
|
|
83
83
|
}();
|
|
84
84
|
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sYWJlbC5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sYWJlbC5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgbGFiZWxOb2RlRnJvbUxhYmVsSlNPTiB9IGZyb20gXCIuL3V0aWxpdGllcy9ub2RlXCI7XG5pbXBvcnQgeyBsYWJlbE5hbWVGcm9tTGFiZWxOb2RlIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIExhYmVsIHtcbiAgY29uc3RydWN0b3Iobm9kZSkge1xuICAgIHRoaXMubm9kZSA9IG5vZGU7XG4gIH1cblxuICBnZXROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGU7XG4gIH1cblxuICBtYXRjaE5hbWUobmFtZSkge1xuICAgIGNvbnN0IGxhYmVsTm9kZSA9IHRoaXMubm9kZSxcbiAgICAgICAgICBsYWJlbE5hbWUgPSBsYWJlbE5hbWVGcm9tTGFiZWxOb2RlKGxhYmVsTm9kZSksXG4gICAgICAgICAgbWF0Y2hlc05hbWUgPSAobGFiZWxOYW1lID09PSBuYW1lKTtcblxuICAgIHJldHVybiBtYXRjaGVzTmFtZTtcbiAgfVxuXG4gIGFzU3RyaW5nKCkge1xuICAgIGNvbnN0IHN0cmluZyA9IG5vZGVBc1N0cmluZyh0aGlzLm5vZGUpO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBzdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5ub2RlKSxcbiAgICAgICAgICBqc29uID0gc3RyaW5nOyAgLy8vXG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCByZWxlYXNlQ29udGV4dCkge1xuICAgIGNvbnN0IGxhYmVsSlNPTiA9IGpzb24sIC8vL1xuICAgICAgICAgIGxhYmVsTm9kZSA9IGxhYmVsTm9kZUZyb21MYWJlbEpTT04obGFiZWxKU09OLCByZWxlYXNlQ29udGV4dCksXG4gICAgICAgICAgbm9kZSA9IGxhYmVsTm9kZSwgLy8vXG4gICAgICAgICAgbGFiZWwgPSBuZXcgTGFiZWwobm9kZSk7XG5cbiAgICByZXR1cm4gbGFiZWw7XG4gIH1cblxuICBzdGF0aWMgZnJvbUxhYmVsTm9kZShsYWJlbE5vZGUpIHtcbiAgICBjb25zdCBub2RlID0gbGFiZWxOb2RlLCAvLy9cbiAgICAgICAgICB2YXJpYWJsZSA9IG5ldyBMYWJlbChub2RlKTtcblxuICAgIHJldHVybiB2YXJpYWJsZTtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJMYWJlbCIsIm5vZGUiLCJnZXROb2RlIiwibWF0Y2hOYW1lIiwibmFtZSIsImxhYmVsTm9kZSIsImxhYmVsTmFtZSIsImxhYmVsTmFtZUZyb21MYWJlbE5vZGUiLCJtYXRjaGVzTmFtZSIsImFzU3RyaW5nIiwic3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidG9KU09OIiwianNvbiIsImZyb21KU09OIiwicmVsZWFzZUNvbnRleHQiLCJsYWJlbEpTT04iLCJsYWJlbE5vZGVGcm9tTGFiZWxKU09OIiwibGFiZWwiLCJmcm9tTGFiZWxOb2RlIiwidmFyaWFibGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O3NCQUpRO29CQUNVO3FCQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV4QixJQUFBLEFBQU1BLHNCQUFOO2FBQU1BLE1BQ1BDLElBQUk7OEJBREdEO1FBRWpCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTs7aUJBRktEOztZQUtuQkUsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVU7Z0JBQ1IsT0FBTyxJQUFJLENBQUNELElBQUk7WUFDbEI7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVUMsSUFBSSxFQUFFO2dCQUNkLElBQU1DLFlBQVksSUFBSSxDQUFDSixJQUFJLEVBQ3JCSyxZQUFZQyxJQUFBQSw2QkFBc0IsRUFBQ0YsWUFDbkNHLGNBQWVGLGNBQWNGO2dCQUVuQyxPQUFPSTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVc7Z0JBQ1QsSUFBTUMsU0FBU0MsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNWLElBQUk7Z0JBRXJDLE9BQU9TO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsU0FBUztnQkFDUCxJQUFNRixTQUFTQyxJQUFBQSxvQkFBWSxFQUFDLElBQUksQ0FBQ1YsSUFBSSxHQUMvQlksT0FBT0gsUUFBUyxHQUFHO2dCQUV6QixPQUFPRztZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNELElBQUksRUFBRUUsY0FBYyxFQUFFO2dCQUNwQyxJQUFNQyxZQUFZSCxNQUNaUixZQUFZWSxJQUFBQSw0QkFBc0IsRUFBQ0QsV0FBV0QsaUJBQzlDZCxPQUFPSSxXQUNQYSxRQUFRLElBbENHbEIsTUFrQ09DO2dCQUV4QixPQUFPaUI7WUFDVDs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLGNBQWNkLFNBQVMsRUFBRTtnQkFDOUIsSUFBTUosT0FBT0ksV0FDUGUsV0FBVyxJQXpDQXBCLE1BeUNVQztnQkFFM0IsT0FBT21CO1lBQ1Q7OztXQTVDbUJwQiJ9
|
package/lib/premise.js
CHANGED
|
@@ -12,6 +12,7 @@ var _metaSubstitution = /*#__PURE__*/ _interopRequireDefault(require("./metaSubs
|
|
|
12
12
|
var _string = require("./utilities/string");
|
|
13
13
|
var _array = require("./utilities/array");
|
|
14
14
|
var _query = require("./utilities/query");
|
|
15
|
+
var _node = require("./utilities/node");
|
|
15
16
|
var _ruleNames = require("./ruleNames");
|
|
16
17
|
function _classCallCheck(instance, Constructor) {
|
|
17
18
|
if (!(instance instanceof Constructor)) {
|
|
@@ -37,7 +38,7 @@ function _interopRequireDefault(obj) {
|
|
|
37
38
|
default: obj
|
|
38
39
|
};
|
|
39
40
|
}
|
|
40
|
-
var
|
|
41
|
+
var metastatementNodesQuery = (0, _query.nodesQuery)("/metaSubproofAssertion/metastatement"), metaSubproofAssertionNodeQuery = (0, _query.nodeQuery)("/metastatement/metaSubproofAssertion!"), qualifiedOrUnqualifiedMetastatementMetastatementNodesQuery = (0, _query.nodesQuery)("/metaSubproof/qualifiedMetastatement|unqualifiedMetastatement/metastatement!");
|
|
41
42
|
var Premise = /*#__PURE__*/ function() {
|
|
42
43
|
function Premise(metastatementNode) {
|
|
43
44
|
_classCallCheck(this, Premise);
|
|
@@ -56,12 +57,13 @@ var Premise = /*#__PURE__*/ function() {
|
|
|
56
57
|
var metaSubproofNodeMatches = false;
|
|
57
58
|
var metaSubproofAssertionNode = metaSubproofAssertionNodeQuery(this.metastatementNode);
|
|
58
59
|
if (metaSubproofAssertionNode !== null) {
|
|
59
|
-
var metaSubproofAssertionMetastatementNodes = metastatementNodesQuery(metaSubproofAssertionNode),
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
60
|
+
var metaSubproofAssertionMetastatementNodes = metastatementNodesQuery(metaSubproofAssertionNode), qualifiedOrUnqualifiedMetastatementMetastatementNodes = qualifiedOrUnqualifiedMetastatementMetastatementNodesQuery(metaSubproofNode), qualifiedOrUnqualifiedMetastatementMetastatementNodesLength = qualifiedOrUnqualifiedMetastatementMetastatementNodes.length;
|
|
61
|
+
if (qualifiedOrUnqualifiedMetastatementMetastatementNodesLength === 2) {
|
|
62
|
+
var firstMetaSubproofAssertionMetastatementNode = (0, _array.first)(metaSubproofAssertionMetastatementNodes), firstQualifiedOrUnqualifiedMetastatementMetastatementNode = (0, _array.first)(qualifiedOrUnqualifiedMetastatementMetastatementNodes), nonTerminalNode = firstQualifiedOrUnqualifiedMetastatementMetastatementNode, premiseNonTerminalNode = firstMetaSubproofAssertionMetastatementNode, premiseNonTerminalNodeMatches = matchPremiseNonTerminalNode(premiseNonTerminalNode, nonTerminalNode, metaSubstitutions);
|
|
63
|
+
if (premiseNonTerminalNodeMatches) {
|
|
64
|
+
var secondMetaSubproofAssertionMetastatementNode = (0, _array.second)(metaSubproofAssertionMetastatementNodes), secondQualifiedOrUnqualifiedMetastatementMetastatementNode = (0, _array.second)(qualifiedOrUnqualifiedMetastatementMetastatementNodes), nonTerminalNode1 = secondQualifiedOrUnqualifiedMetastatementMetastatementNode, premiseNonTerminalNode1 = secondMetaSubproofAssertionMetastatementNode, premiseNonTerminalNodeMatches1 = matchPremiseNonTerminalNode(premiseNonTerminalNode1, nonTerminalNode1, metaSubstitutions);
|
|
65
|
+
metaSubproofNodeMatches = premiseNonTerminalNodeMatches1; ///
|
|
66
|
+
}
|
|
65
67
|
}
|
|
66
68
|
}
|
|
67
69
|
return metaSubproofNodeMatches;
|
|
@@ -87,7 +89,7 @@ var Premise = /*#__PURE__*/ function() {
|
|
|
87
89
|
{
|
|
88
90
|
key: "fromJSON",
|
|
89
91
|
value: function fromJSON(json, releaseContext) {
|
|
90
|
-
var metastatement = json.metastatement,
|
|
92
|
+
var metastatement = json.metastatement, metastatementJSON = metastatement, metastatementNode = (0, _node.metastatementNodeFromMetastatementJSON)(metastatementJSON, releaseContext), premise = new Premise(metastatementNode);
|
|
91
93
|
return premise;
|
|
92
94
|
}
|
|
93
95
|
},
|
|
@@ -182,4 +184,4 @@ function matchPremiseMetastatementNode(premiseMetastatementNode, metastatementNo
|
|
|
182
184
|
return premiseMetastatementNodeMatches;
|
|
183
185
|
}
|
|
184
186
|
|
|
185
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wcmVtaXNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWV0YVN1YnN0aXR1dGlvbiBmcm9tIFwiLi9tZXRhU3Vic3RpdHV0aW9uXCI7XG5cbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IGZpcnN0LCBzZWNvbmQgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FLCBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSwgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgbWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudFwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9tZXRhU3VicHJvb2ZBc3NlcnRpb24vbWV0YXN0YXRlbWVudFwiKSxcbiAgICAgIG1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhc3RhdGVtZW50L21ldGFTdWJwcm9vZkFzc2VydGlvbiFcIiksXG4gICAgICBxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9tZXRhU3VicHJvb2YvcXVhbGlmaWVkTWV0YXN0YXRlbWVudHx1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFByZW1pc2Uge1xuICBjb25zdHJ1Y3RvcihtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMubWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldE1ldGFzdGF0ZW1lbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgbWF0Y2hNZXRhU3VicHJvb2ZOb2RlKG1ldGFTdWJwcm9vZk5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gICAgbGV0IG1ldGFTdWJwcm9vZk5vZGVNYXRjaGVzID0gZmFsc2U7XG5cbiAgICBjb25zdCBtZXRhU3VicHJvb2ZBc3NlcnRpb25Ob2RlID0gbWV0YVN1YnByb29mQXNzZXJ0aW9uTm9kZVF1ZXJ5KHRoaXMubWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKG1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlcyA9IG1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5KG1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgICAgZmlyc3RNZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZSA9IGZpcnN0KG1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlcyksXG4gICAgICAgICAgICBxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlcyA9IHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzUXVlcnkobWV0YVN1YnByb29mTm9kZSksXG4gICAgICAgICAgICBmaXJzdFF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGUgPSBmaXJzdChxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2Rlcyk7XG5cbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IGZpcnN0UXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgICBwcmVtaXNlTm9uVGVybWluYWxOb2RlID0gZmlyc3RNZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFByZW1pc2VOb25UZXJtaW5hbE5vZGUocHJlbWlzZU5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgIGlmIChwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlcykge1xuICAgICAgICBjb25zdCBzZWNvbmRNZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZSA9IHNlY29uZChtZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZXMpLFxuICAgICAgICAgICAgICBzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlID0gc2Vjb25kKHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzKTtcblxuICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZSA9IHNlY29uZE1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFByZW1pc2VOb25UZXJtaW5hbE5vZGUocHJlbWlzZU5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgICAgbWV0YVN1YnByb29mTm9kZU1hdGNoZXMgPSBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1ldGFTdWJwcm9vZk5vZGVNYXRjaGVzO1xuICB9XG5cbiAgbWF0Y2hNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgIHByZW1pc2VOb25UZXJtaW5hbE5vZGUgPSB0aGlzLm1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFByZW1pc2VOb25UZXJtaW5hbE5vZGUocHJlbWlzZU5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyksXG4gICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzID0gcHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXM7IC8vL1xuXG4gICAgcmV0dXJuIG1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcztcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBtZXRhc3RhdGVtZW50U3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMubWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIG1ldGFzdGF0ZW1lbnQgPSBtZXRhc3RhdGVtZW50U3RyaW5nLCAvLy9cbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAgbWV0YXN0YXRlbWVudFxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCByZWxlYXNlQ29udGV4dCkge1xuICAgIGNvbnN0IHsgbWV0YXN0YXRlbWVudCB9ID0ganNvbixcbiAgICAgICAgICBydWxlTmFtZSA9IFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FLFxuICAgICAgICAgIGNvbnRlbnQgPSBgJHttZXRhc3RhdGVtZW50fVxuYCxcbiAgICAgICAgICBub2RlID0gcmVsZWFzZUNvbnRleHQubm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUoY29udGVudCwgcnVsZU5hbWUpLFxuICAgICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHByZW1pc2UgPSBuZXcgUHJlbWlzZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gcHJlbWlzZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpIHtcbiAgICBjb25zdCBwcmVtaXNlID0gbmV3IFByZW1pc2UobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIHByZW1pc2U7XG4gIH1cbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlTm9kZShwcmVtaXNlTm9kZSwgbm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgbGV0IHByZW1pc2VOb2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IG5vZGVUZXJtaW5hbE5vZGUgPSBub2RlLmlzVGVybWluYWxOb2RlKCksXG4gICAgICAgIHJ1bGVOb2RlVGVybWluYWxOb2RlID0gcHJlbWlzZU5vZGUuaXNUZXJtaW5hbE5vZGUoKTtcblxuICBpZiAobm9kZVRlcm1pbmFsTm9kZSA9PT0gcnVsZU5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICBpZiAobm9kZVRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybWluYWxOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgICAgcHJlbWlzZVRlcm1pbmFsTm9kZSA9IHByZW1pc2VOb2RlLCAgLy8vXG4gICAgICAgICAgICBwcmVtaXNlVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoUHJlbWlzZVRlcm1pbmFsTm9kZShwcmVtaXNlVGVybWluYWxOb2RlLCB0ZXJtaW5hbE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgcHJlbWlzZU5vZGVNYXRjaGVzID0gcHJlbWlzZVRlcm1pbmFsTm9kZU1hdGNoZXM7ICAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbm9kZSwgLy8vXG4gICAgICAgICAgICBwcmVtaXNlTm9uVGVybWluYWxOb2RlID0gcHJlbWlzZU5vZGUsICAvLy9cbiAgICAgICAgICAgIHByZW1pc2VOb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hQcmVtaXNlTm9uVGVybWluYWxOb2RlKHByZW1pc2VOb25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgICBwcmVtaXNlTm9kZU1hdGNoZXMgPSBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHByZW1pc2VOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlTm9kZXMocHJlbWlzZU5vZGVzLCBub2RlcywgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgbGV0IHByZW1pc2VOb2Rlc01hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2Rlc0xlbmd0aCA9IG5vZGVzLmxlbmd0aCxcbiAgICAgICAgcHJlbWlzZU5vZGVzTGVuZ3RoID0gcHJlbWlzZU5vZGVzLmxlbmd0aDtcblxuICBpZiAobm9kZXNMZW5ndGggPT09IHByZW1pc2VOb2Rlc0xlbmd0aCkge1xuICAgIHByZW1pc2VOb2Rlc01hdGNoZXMgPSBub2Rlcy5ldmVyeSgobm9kZSwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IHByZW1pc2VOb2RlID0gcHJlbWlzZU5vZGVzW2luZGV4XSxcbiAgICAgICAgICAgIHByZW1pc2VOb2RlTWF0Y2hlcyA9IG1hdGNoUHJlbWlzZU5vZGUocHJlbWlzZU5vZGUsIG5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgaWYgKHByZW1pc2VOb2RlTWF0Y2hlcykge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBwcmVtaXNlTm9kZXNNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaFByZW1pc2VNZXRhdmFyaWFibGUocHJlbWlzZU1ldGF2YXJpYWJsZU5vZGUsIG5vZGVzLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBsZXQgcHJlbWlzZU1ldGF2YXJpYWJsZU1hdGNoZXM7XG5cbiAgY29uc3QgcHJlbWlzZU1ldGF2YXJpYWJsZU5hbWUgPSBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUocHJlbWlzZU1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICBtZXRhU3Vic3RpdHV0aW9uID0gbWV0YVN1YnN0aXR1dGlvbnMuZmluZCgobWV0YVN1YnN0aXR1dGlvbikgPT4ge1xuICAgICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5hbWUgPSBtZXRhU3Vic3RpdHV0aW9uLmdldE1ldGF2YXJpYWJsZU5hbWUoKTtcblxuICAgICAgICAgIGlmIChtZXRhdmFyaWFibGVOYW1lID09PSBwcmVtaXNlTWV0YXZhcmlhYmxlTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KSB8fCBudWxsO1xuXG4gIGlmIChtZXRhU3Vic3RpdHV0aW9uICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2ggPSBtZXRhU3Vic3RpdHV0aW9uLm1hdGNoTm9kZXMobm9kZXMpO1xuXG4gICAgcHJlbWlzZU1ldGF2YXJpYWJsZU1hdGNoZXMgPSBtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaDsgIC8vL1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5hbWUgPSBwcmVtaXNlTWV0YXZhcmlhYmxlTmFtZSwgLy8vXG4gICAgICAgICAgbWV0YVN1YnN0aXR1dGlvbiA9IE1ldGFTdWJzdGl0dXRpb24uZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmROb2RlcyhtZXRhdmFyaWFibGVOYW1lLCBub2Rlcyk7XG5cbiAgICBtZXRhU3Vic3RpdHV0aW9ucy5wdXNoKG1ldGFTdWJzdGl0dXRpb24pO1xuXG4gICAgcHJlbWlzZU1ldGF2YXJpYWJsZU1hdGNoZXMgPSB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIHByZW1pc2VNZXRhdmFyaWFibGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaFByZW1pc2VUZXJtaW5hbE5vZGUocHJlbWlzZVRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBjb25zdCBtYXRjaGVzID0gcHJlbWlzZVRlcm1pbmFsTm9kZS5tYXRjaCh0ZXJtaW5hbE5vZGUpLFxuICAgICAgICBwcmVtaXNlVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoZXM7XG5cbiAgcmV0dXJuIHByZW1pc2VUZXJtaW5hbE5vZGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaFByZW1pc2VOb25UZXJtaW5hbE5vZGUocHJlbWlzZU5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBsZXQgcHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICBwcmVtaXNlUnVsZU5hbWUgPSBwcmVtaXNlTm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gIGlmIChydWxlTmFtZSA9PT0gcHJlbWlzZVJ1bGVOYW1lKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgcHJlbWlzZUNoaWxkTm9kZXMgPSBwcmVtaXNlTm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBub2RlcyA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIHByZW1pc2VOb2RlcyA9IHByZW1pc2VDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICBwcmVtaXNlQ2hpbGROb2Rlc01hdGNoZXMgPSBtYXRjaFByZW1pc2VOb2RlcyhwcmVtaXNlTm9kZXMsIG5vZGVzLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IHByZW1pc2VDaGlsZE5vZGVzTWF0Y2hlczsgLy8vXG5cbiAgICBpZiAoIXByZW1pc2VOb25UZXJtaW5hbE5vZGVNYXRjaGVzKSB7XG4gICAgICBjb25zdCBydWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSA9IChydWxlTmFtZSA9PT0gTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUpO1xuXG4gICAgICBpZiAocnVsZU5hbWVNZXRhc3RhdGVtZW50UnVsZU5hbWUpIHtcbiAgICAgICAgY29uc3QgbWV0YXN0YXRlbWVudE5vZGUgPSBub25UZXJtaW5hbE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgcHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlID0gcHJlbWlzZU5vblRlcm1pbmFsTm9kZSwgIC8vL1xuICAgICAgICAgICAgICBwcmVtaXNlTWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzID0gbWF0Y2hQcmVtaXNlTWV0YXN0YXRlbWVudE5vZGUocHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgICAgIHByZW1pc2VOb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gcHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlczsgLy8vXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHByZW1pc2VOb25UZXJtaW5hbE5vZGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaFByZW1pc2VNZXRhc3RhdGVtZW50Tm9kZShwcmVtaXNlTWV0YXN0YXRlbWVudE5vZGUsIG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBsZXQgcHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IHByZW1pc2VOb25UZXJtaW5hbE5vZGUgPSBwcmVtaXNlTWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgcHJlbWlzZUNoaWxkTm9kZXMgPSBwcmVtaXNlTm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgcHJlbWlzZUNoaWxkTm9kZXNMZW5ndGggPSBwcmVtaXNlQ2hpbGROb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKHByZW1pc2VDaGlsZE5vZGVzTGVuZ3RoID09PSAxKSB7XG4gICAgY29uc3QgZmlyc3RQcmVtaXNlQ2hpbGROb2RlID0gZmlyc3QocHJlbWlzZUNoaWxkTm9kZXMpLFxuICAgICAgICAgIHByZW1pc2VDaGlsZE5vZGUgPSBmaXJzdFByZW1pc2VDaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICBwcmVtaXNlQ2hpbGROb2RlTm9uVGVybWluYWxOb2RlID0gcHJlbWlzZUNoaWxkTm9kZS5pc05vblRlcm1pbmFsTm9kZSgpO1xuXG4gICAgaWYgKHByZW1pc2VDaGlsZE5vZGVOb25UZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHByZW1pc2VOb25UZXJtaW5hbENoaWxkTm9kZSA9IHByZW1pc2VDaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgIHByZW1pc2VOb25UZXJtaW5hbENoaWxkTm9kZVJ1bGVOYW1lID0gcHJlbWlzZU5vblRlcm1pbmFsQ2hpbGROb2RlLmdldFJ1bGVOYW1lKCksXG4gICAgICAgICAgICBwcmVtaXNlTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZU1ldGF2YXJpYWJsZVJ1bGVOYW1lID0gKHByZW1pc2VOb25UZXJtaW5hbENoaWxkTm9kZVJ1bGVOYW1lID09PSBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FKTtcblxuICAgICAgaWYgKHByZW1pc2VOb25UZXJtaW5hbENoaWxkTm9kZVJ1bGVOYW1lTWV0YXZhcmlhYmxlUnVsZU5hbWUpIHtcbiAgICAgICAgY29uc3QgcHJlbWlzZU1ldGF2YXJpYWJsZU5vZGUgPSBwcmVtaXNlTm9uVGVybWluYWxDaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlID0gbWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICAgIG5vZGVzID0gY2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgICAgIHByZW1pc2VNZXRhVmFyaWFibGVNYXRjaGVzID0gbWF0Y2hQcmVtaXNlTWV0YXZhcmlhYmxlKHByZW1pc2VNZXRhdmFyaWFibGVOb2RlLCBub2RlcywgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgICAgIHByZW1pc2VNZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBwcmVtaXNlTWV0YVZhcmlhYmxlTWF0Y2hlczsgLy8vXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHByZW1pc2VNZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7XG59XG4iXSwibmFtZXMiOlsiUHJlbWlzZSIsIm1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJtZXRhU3VicHJvb2ZBc3NlcnRpb25Ob2RlUXVlcnkiLCJxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5IiwibWV0YXN0YXRlbWVudE5vZGUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsIm1hdGNoTWV0YVN1YnByb29mTm9kZSIsIm1ldGFTdWJwcm9vZk5vZGUiLCJtZXRhU3Vic3RpdHV0aW9ucyIsIm1ldGFTdWJwcm9vZk5vZGVNYXRjaGVzIiwibWV0YVN1YnByb29mQXNzZXJ0aW9uTm9kZSIsIm1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlcyIsImZpcnN0TWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUiLCJmaXJzdCIsInF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzIiwiZmlyc3RRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlIiwibm9uVGVybWluYWxOb2RlIiwicHJlbWlzZU5vblRlcm1pbmFsTm9kZSIsInByZW1pc2VOb25UZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hQcmVtaXNlTm9uVGVybWluYWxOb2RlIiwic2Vjb25kTWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUiLCJzZWNvbmQiLCJzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlIiwibWF0Y2hNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsInRvSlNPTiIsIm1ldGFzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJtZXRhc3RhdGVtZW50IiwianNvbiIsImZyb21KU09OIiwicmVsZWFzZUNvbnRleHQiLCJydWxlTmFtZSIsIlVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwiY29udGVudCIsIm5vZGUiLCJub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJwcmVtaXNlIiwiZnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwibWF0Y2hQcmVtaXNlTm9kZSIsInByZW1pc2VOb2RlIiwicHJlbWlzZU5vZGVNYXRjaGVzIiwibm9kZVRlcm1pbmFsTm9kZSIsImlzVGVybWluYWxOb2RlIiwicnVsZU5vZGVUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJwcmVtaXNlVGVybWluYWxOb2RlIiwicHJlbWlzZVRlcm1pbmFsTm9kZU1hdGNoZXMiLCJtYXRjaFByZW1pc2VUZXJtaW5hbE5vZGUiLCJtYXRjaFByZW1pc2VOb2RlcyIsInByZW1pc2VOb2RlcyIsIm5vZGVzIiwicHJlbWlzZU5vZGVzTWF0Y2hlcyIsIm5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwicHJlbWlzZU5vZGVzTGVuZ3RoIiwiZXZlcnkiLCJpbmRleCIsIm1hdGNoUHJlbWlzZU1ldGF2YXJpYWJsZSIsInByZW1pc2VNZXRhdmFyaWFibGVOb2RlIiwicHJlbWlzZU1ldGF2YXJpYWJsZU1hdGNoZXMiLCJwcmVtaXNlTWV0YXZhcmlhYmxlTmFtZSIsIm1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFTdWJzdGl0dXRpb24iLCJmaW5kIiwibWV0YXZhcmlhYmxlTmFtZSIsImdldE1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaCIsIm1hdGNoTm9kZXMiLCJNZXRhU3Vic3RpdHV0aW9uIiwiZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmROb2RlcyIsInB1c2giLCJtYXRjaGVzIiwibWF0Y2giLCJnZXRSdWxlTmFtZSIsInByZW1pc2VSdWxlTmFtZSIsImNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwicHJlbWlzZUNoaWxkTm9kZXMiLCJwcmVtaXNlQ2hpbGROb2Rlc01hdGNoZXMiLCJydWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSIsIk1FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwicHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlIiwicHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoUHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlIiwicHJlbWlzZUNoaWxkTm9kZXNMZW5ndGgiLCJmaXJzdFByZW1pc2VDaGlsZE5vZGUiLCJwcmVtaXNlQ2hpbGROb2RlIiwicHJlbWlzZUNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwicHJlbWlzZU5vblRlcm1pbmFsQ2hpbGROb2RlIiwicHJlbWlzZU5vblRlcm1pbmFsQ2hpbGROb2RlUnVsZU5hbWUiLCJwcmVtaXNlTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZU1ldGF2YXJpYWJsZVJ1bGVOYW1lIiwiTUVUQVZBUklBQkxFX1JVTEVfTkFNRSIsInByZW1pc2VNZXRhVmFyaWFibGVNYXRjaGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQWVxQkE7OztxRUFiUTtzQkFFQTtxQkFDQztxQkFDUTt5QkFFK0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFckcsSUFBTUMseUJBQXlCQyxJQUFBQSxnQkFBUyxFQUFDLDRDQUNuQ0MsMEJBQTBCQyxJQUFBQSxpQkFBVSxFQUFDLHlDQUNyQ0MsaUNBQWlDSCxJQUFBQSxnQkFBUyxFQUFDLDBDQUMzQ0ksNkRBQTZERixJQUFBQSxpQkFBVSxFQUFDO0FBRS9ELElBQUEsQUFBTUosd0JBOEVsQixBQTlFWTthQUFNQSxRQUNQTyxpQkFBaUI7OEJBRFZQO1FBRWpCLElBQUksQ0FBQ08saUJBQWlCLEdBQUdBOztpQkFGUlA7O1lBS25CUSxLQUFBQTttQkFBQUEsU0FBQUEsdUJBQXVCO2dCQUNyQixPQUFPLElBQUksQ0FBQ0QsaUJBQWlCO1lBQy9COzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQkMsZ0JBQWdCLEVBQUVDLGlCQUFpQixFQUFFO2dCQUN6RCxJQUFJQywwQkFBMEIsS0FBSztnQkFFbkMsSUFBTUMsNEJBQTRCUiwrQkFBK0IsSUFBSSxDQUFDRSxpQkFB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
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wcmVtaXNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWV0YVN1YnN0aXR1dGlvbiBmcm9tIFwiLi9tZXRhU3Vic3RpdHV0aW9uXCI7XG5cbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IGZpcnN0LCBzZWNvbmQgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBtZXRhc3RhdGVtZW50Tm9kZUZyb21NZXRhc3RhdGVtZW50SlNPTiB9IGZyb20gXCIuL3V0aWxpdGllcy9ub2RlXCI7XG5pbXBvcnQgeyBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FLCBNRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuL3J1bGVOYW1lc1wiO1xuXG5jb25zdCBtZXRhc3RhdGVtZW50Tm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvbWV0YVN1YnByb29mQXNzZXJ0aW9uL21ldGFzdGF0ZW1lbnRcIiksXG4gICAgICBtZXRhU3VicHJvb2ZBc3NlcnRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXN0YXRlbWVudC9tZXRhU3VicHJvb2ZBc3NlcnRpb24hXCIpLFxuICAgICAgcXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvbWV0YVN1YnByb29mL3F1YWxpZmllZE1ldGFzdGF0ZW1lbnR8dW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50L21ldGFzdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQcmVtaXNlIHtcbiAgY29uc3RydWN0b3IobWV0YXN0YXRlbWVudE5vZGUpIHtcbiAgICB0aGlzLm1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBnZXRNZXRhc3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoTWV0YVN1YnByb29mTm9kZShtZXRhU3VicHJvb2ZOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICAgIGxldCBtZXRhU3VicHJvb2ZOb2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gICAgY29uc3QgbWV0YVN1YnByb29mQXNzZXJ0aW9uTm9kZSA9IG1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGVRdWVyeSh0aGlzLm1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmIChtZXRhU3VicHJvb2ZBc3NlcnRpb25Ob2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZXMgPSBtZXRhc3RhdGVtZW50Tm9kZXNRdWVyeShtZXRhU3VicHJvb2ZBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICAgIHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzID0gcXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZXNRdWVyeShtZXRhU3VicHJvb2ZOb2RlKSxcbiAgICAgICAgICAgIHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzTGVuZ3RoID0gcXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZXMubGVuZ3RoO1xuXG4gICAgICBpZiAocXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZXNMZW5ndGggPT09IDIpIHtcbiAgICAgICAgY29uc3QgZmlyc3RNZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZSA9IGZpcnN0KG1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlcyksXG4gICAgICAgICAgICAgIGZpcnN0UXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZSA9IGZpcnN0KHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzKSxcbiAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlID0gZmlyc3RRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZSA9IGZpcnN0TWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFByZW1pc2VOb25UZXJtaW5hbE5vZGUocHJlbWlzZU5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgICAgaWYgKHByZW1pc2VOb25UZXJtaW5hbE5vZGVNYXRjaGVzKSB7XG4gICAgICAgICAgY29uc3Qgc2Vjb25kTWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUgPSBzZWNvbmQobWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGVzKSxcbiAgICAgICAgICAgICAgICBzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlID0gc2Vjb25kKHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzKSxcbiAgICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGUgPSBzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICAgICAgICBwcmVtaXNlTm9uVGVybWluYWxOb2RlID0gc2Vjb25kTWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIHByZW1pc2VOb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hQcmVtaXNlTm9uVGVybWluYWxOb2RlKHByZW1pc2VOb25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgICAgICAgbWV0YVN1YnByb29mTm9kZU1hdGNoZXMgPSBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YVN1YnByb29mTm9kZU1hdGNoZXM7XG4gIH1cblxuICBtYXRjaE1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZSA9IHRoaXMubWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoUHJlbWlzZU5vblRlcm1pbmFsTm9kZShwcmVtaXNlTm9uVGVybWluYWxOb2RlLCBub25UZXJtaW5hbE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSxcbiAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5tZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgbWV0YXN0YXRlbWVudCA9IG1ldGFzdGF0ZW1lbnRTdHJpbmcsIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBtZXRhc3RhdGVtZW50XG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KSB7XG4gICAgY29uc3QgeyBtZXRhc3RhdGVtZW50IH0gPSBqc29uLFxuICAgICAgICAgIG1ldGFzdGF0ZW1lbnRKU09OID0gbWV0YXN0YXRlbWVudCwgIC8vL1xuICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVGcm9tTWV0YXN0YXRlbWVudEpTT04obWV0YXN0YXRlbWVudEpTT04sIHJlbGVhc2VDb250ZXh0KSxcbiAgICAgICAgICBwcmVtaXNlID0gbmV3IFByZW1pc2UobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIHByZW1pc2U7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgY29uc3QgcHJlbWlzZSA9IG5ldyBQcmVtaXNlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIHJldHVybiBwcmVtaXNlO1xuICB9XG59XG5cbmZ1bmN0aW9uIG1hdGNoUHJlbWlzZU5vZGUocHJlbWlzZU5vZGUsIG5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gIGxldCBwcmVtaXNlTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICBydWxlTm9kZVRlcm1pbmFsTm9kZSA9IHByZW1pc2VOb2RlLmlzVGVybWluYWxOb2RlKCk7XG5cbiAgaWYgKG5vZGVUZXJtaW5hbE5vZGUgPT09IHJ1bGVOb2RlVGVybWluYWxOb2RlKSB7XG4gICAgaWYgKG5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICAgIHByZW1pc2VUZXJtaW5hbE5vZGUgPSBwcmVtaXNlTm9kZSwgIC8vL1xuICAgICAgICAgICAgcHJlbWlzZVRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFByZW1pc2VUZXJtaW5hbE5vZGUocHJlbWlzZVRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgIHByZW1pc2VOb2RlTWF0Y2hlcyA9IHByZW1pc2VUZXJtaW5hbE5vZGVNYXRjaGVzOyAgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZSA9IHByZW1pc2VOb2RlLCAgLy8vXG4gICAgICAgICAgICBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoUHJlbWlzZU5vblRlcm1pbmFsTm9kZShwcmVtaXNlTm9uVGVybWluYWxOb2RlLCBub25UZXJtaW5hbE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgcHJlbWlzZU5vZGVNYXRjaGVzID0gcHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXM7IC8vL1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBwcmVtaXNlTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoUHJlbWlzZU5vZGVzKHByZW1pc2VOb2Rlcywgbm9kZXMsIG1ldGFTdWJzdGl0dXRpb25zKSB7XG4gIGxldCBwcmVtaXNlTm9kZXNNYXRjaGVzID0gZmFsc2U7XG5cbiAgY29uc3Qgbm9kZXNMZW5ndGggPSBub2Rlcy5sZW5ndGgsXG4gICAgICAgIHByZW1pc2VOb2Rlc0xlbmd0aCA9IHByZW1pc2VOb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKG5vZGVzTGVuZ3RoID09PSBwcmVtaXNlTm9kZXNMZW5ndGgpIHtcbiAgICBwcmVtaXNlTm9kZXNNYXRjaGVzID0gbm9kZXMuZXZlcnkoKG5vZGUsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBwcmVtaXNlTm9kZSA9IHByZW1pc2VOb2Rlc1tpbmRleF0sXG4gICAgICAgICAgICBwcmVtaXNlTm9kZU1hdGNoZXMgPSBtYXRjaFByZW1pc2VOb2RlKHByZW1pc2VOb2RlLCBub2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgIGlmIChwcmVtaXNlTm9kZU1hdGNoZXMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gcHJlbWlzZU5vZGVzTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlTWV0YXZhcmlhYmxlKHByZW1pc2VNZXRhdmFyaWFibGVOb2RlLCBub2RlcywgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgbGV0IHByZW1pc2VNZXRhdmFyaWFibGVNYXRjaGVzO1xuXG4gIGNvbnN0IHByZW1pc2VNZXRhdmFyaWFibGVOYW1lID0gbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlKHByZW1pc2VNZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgbWV0YVN1YnN0aXR1dGlvbiA9IG1ldGFTdWJzdGl0dXRpb25zLmZpbmQoKG1ldGFTdWJzdGl0dXRpb24pID0+IHtcbiAgICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVOYW1lID0gbWV0YVN1YnN0aXR1dGlvbi5nZXRNZXRhdmFyaWFibGVOYW1lKCk7XG5cbiAgICAgICAgICBpZiAobWV0YXZhcmlhYmxlTmFtZSA9PT0gcHJlbWlzZU1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSkgfHwgbnVsbDtcblxuICBpZiAobWV0YVN1YnN0aXR1dGlvbiAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGFTdWJzdGl0dXRpb25Ob2Rlc01hdGNoID0gbWV0YVN1YnN0aXR1dGlvbi5tYXRjaE5vZGVzKG5vZGVzKTtcblxuICAgIHByZW1pc2VNZXRhdmFyaWFibGVNYXRjaGVzID0gbWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2g7ICAvLy9cbiAgfSBlbHNlIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVOYW1lID0gcHJlbWlzZU1ldGF2YXJpYWJsZU5hbWUsIC8vL1xuICAgICAgICAgIG1ldGFTdWJzdGl0dXRpb24gPSBNZXRhU3Vic3RpdHV0aW9uLmZyb21NZXRhdmFyaWFibGVOYW1lQW5kTm9kZXMobWV0YXZhcmlhYmxlTmFtZSwgbm9kZXMpO1xuXG4gICAgbWV0YVN1YnN0aXR1dGlvbnMucHVzaChtZXRhU3Vic3RpdHV0aW9uKTtcblxuICAgIHByZW1pc2VNZXRhdmFyaWFibGVNYXRjaGVzID0gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBwcmVtaXNlTWV0YXZhcmlhYmxlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlVGVybWluYWxOb2RlKHByZW1pc2VUZXJtaW5hbE5vZGUsIHRlcm1pbmFsTm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgY29uc3QgbWF0Y2hlcyA9IHByZW1pc2VUZXJtaW5hbE5vZGUubWF0Y2godGVybWluYWxOb2RlKSxcbiAgICAgICAgcHJlbWlzZVRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaGVzO1xuXG4gIHJldHVybiBwcmVtaXNlVGVybWluYWxOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlTm9uVGVybWluYWxOb2RlKHByZW1pc2VOb25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgbGV0IHByZW1pc2VOb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gZmFsc2U7XG5cbiAgY29uc3QgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgcHJlbWlzZVJ1bGVOYW1lID0gcHJlbWlzZU5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpOyAvLy9cblxuICBpZiAocnVsZU5hbWUgPT09IHByZW1pc2VSdWxlTmFtZSkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIHByZW1pc2VDaGlsZE5vZGVzID0gcHJlbWlzZU5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICBwcmVtaXNlTm9kZXMgPSBwcmVtaXNlQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgcHJlbWlzZUNoaWxkTm9kZXNNYXRjaGVzID0gbWF0Y2hQcmVtaXNlTm9kZXMocHJlbWlzZU5vZGVzLCBub2RlcywgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgcHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBwcmVtaXNlQ2hpbGROb2Rlc01hdGNoZXM7IC8vL1xuXG4gICAgaWYgKCFwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlcykge1xuICAgICAgY29uc3QgcnVsZU5hbWVNZXRhc3RhdGVtZW50UnVsZU5hbWUgPSAocnVsZU5hbWUgPT09IE1FVEFTVEFURU1FTlRfUlVMRV9OQU1FKTtcblxuICAgICAgaWYgKHJ1bGVOYW1lTWV0YXN0YXRlbWVudFJ1bGVOYW1lKSB7XG4gICAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbm9uVGVybWluYWxOb2RlLCAgLy8vXG4gICAgICAgICAgICAgIHByZW1pc2VNZXRhc3RhdGVtZW50Tm9kZSA9IHByZW1pc2VOb25UZXJtaW5hbE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgcHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IG1hdGNoUHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlKHByZW1pc2VNZXRhc3RhdGVtZW50Tm9kZSwgbWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgICBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IHByZW1pc2VNZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7IC8vL1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBwcmVtaXNlTm9uVGVybWluYWxOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlTWV0YXN0YXRlbWVudE5vZGUocHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgbGV0IHByZW1pc2VNZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBwcmVtaXNlTm9uVGVybWluYWxOb2RlID0gcHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgIHByZW1pc2VDaGlsZE5vZGVzID0gcHJlbWlzZU5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgIHByZW1pc2VDaGlsZE5vZGVzTGVuZ3RoID0gcHJlbWlzZUNoaWxkTm9kZXMubGVuZ3RoO1xuXG4gIGlmIChwcmVtaXNlQ2hpbGROb2Rlc0xlbmd0aCA9PT0gMSkge1xuICAgIGNvbnN0IGZpcnN0UHJlbWlzZUNoaWxkTm9kZSA9IGZpcnN0KHByZW1pc2VDaGlsZE5vZGVzKSxcbiAgICAgICAgICBwcmVtaXNlQ2hpbGROb2RlID0gZmlyc3RQcmVtaXNlQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgcHJlbWlzZUNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSA9IHByZW1pc2VDaGlsZE5vZGUuaXNOb25UZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmIChwcmVtaXNlQ2hpbGROb2RlTm9uVGVybWluYWxOb2RlKSB7XG4gICAgICBjb25zdCBwcmVtaXNlTm9uVGVybWluYWxDaGlsZE5vZGUgPSBwcmVtaXNlQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICBwcmVtaXNlTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZSA9IHByZW1pc2VOb25UZXJtaW5hbENoaWxkTm9kZS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICAgICAgcHJlbWlzZU5vblRlcm1pbmFsQ2hpbGROb2RlUnVsZU5hbWVNZXRhdmFyaWFibGVSdWxlTmFtZSA9IChwcmVtaXNlTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZSA9PT0gTUVUQVZBUklBQkxFX1JVTEVfTkFNRSk7XG5cbiAgICAgIGlmIChwcmVtaXNlTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZU1ldGF2YXJpYWJsZVJ1bGVOYW1lKSB7XG4gICAgICAgIGNvbnN0IHByZW1pc2VNZXRhdmFyaWFibGVOb2RlID0gcHJlbWlzZU5vblRlcm1pbmFsQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgICBub2RlcyA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICBwcmVtaXNlTWV0YVZhcmlhYmxlTWF0Y2hlcyA9IG1hdGNoUHJlbWlzZU1ldGF2YXJpYWJsZShwcmVtaXNlTWV0YXZhcmlhYmxlTm9kZSwgbm9kZXMsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgICBwcmVtaXNlTWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzID0gcHJlbWlzZU1ldGFWYXJpYWJsZU1hdGNoZXM7IC8vL1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBwcmVtaXNlTWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzO1xufVxuIl0sIm5hbWVzIjpbIlByZW1pc2UiLCJtZXRhc3RhdGVtZW50Tm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJtZXRhU3VicHJvb2ZBc3NlcnRpb25Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5IiwibWV0YXN0YXRlbWVudE5vZGUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsIm1hdGNoTWV0YVN1YnByb29mTm9kZSIsIm1ldGFTdWJwcm9vZk5vZGUiLCJtZXRhU3Vic3RpdHV0aW9ucyIsIm1ldGFTdWJwcm9vZk5vZGVNYXRjaGVzIiwibWV0YVN1YnByb29mQXNzZXJ0aW9uTm9kZSIsIm1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlcyIsInF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzIiwicXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZXNMZW5ndGgiLCJsZW5ndGgiLCJmaXJzdE1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlIiwiZmlyc3QiLCJmaXJzdFF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJwcmVtaXNlTm9uVGVybWluYWxOb2RlIiwicHJlbWlzZU5vblRlcm1pbmFsTm9kZU1hdGNoZXMiLCJtYXRjaFByZW1pc2VOb25UZXJtaW5hbE5vZGUiLCJzZWNvbmRNZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZSIsInNlY29uZCIsInNlY29uZFF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGUiLCJtYXRjaE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzIiwidG9KU09OIiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsIm1ldGFzdGF0ZW1lbnQiLCJqc29uIiwiZnJvbUpTT04iLCJyZWxlYXNlQ29udGV4dCIsIm1ldGFzdGF0ZW1lbnRKU09OIiwibWV0YXN0YXRlbWVudE5vZGVGcm9tTWV0YXN0YXRlbWVudEpTT04iLCJwcmVtaXNlIiwiZnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwibWF0Y2hQcmVtaXNlTm9kZSIsInByZW1pc2VOb2RlIiwibm9kZSIsInByZW1pc2VOb2RlTWF0Y2hlcyIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInJ1bGVOb2RlVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwicHJlbWlzZVRlcm1pbmFsTm9kZSIsInByZW1pc2VUZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hQcmVtaXNlVGVybWluYWxOb2RlIiwibWF0Y2hQcmVtaXNlTm9kZXMiLCJwcmVtaXNlTm9kZXMiLCJub2RlcyIsInByZW1pc2VOb2Rlc01hdGNoZXMiLCJub2Rlc0xlbmd0aCIsInByZW1pc2VOb2Rlc0xlbmd0aCIsImV2ZXJ5IiwiaW5kZXgiLCJtYXRjaFByZW1pc2VNZXRhdmFyaWFibGUiLCJwcmVtaXNlTWV0YXZhcmlhYmxlTm9kZSIsInByZW1pc2VNZXRhdmFyaWFibGVNYXRjaGVzIiwicHJlbWlzZU1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhU3Vic3RpdHV0aW9uIiwiZmluZCIsIm1ldGF2YXJpYWJsZU5hbWUiLCJnZXRNZXRhdmFyaWFibGVOYW1lIiwibWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2giLCJtYXRjaE5vZGVzIiwiTWV0YVN1YnN0aXR1dGlvbiIsImZyb21NZXRhdmFyaWFibGVOYW1lQW5kTm9kZXMiLCJwdXNoIiwibWF0Y2hlcyIsIm1hdGNoIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsInByZW1pc2VSdWxlTmFtZSIsImNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwicHJlbWlzZUNoaWxkTm9kZXMiLCJwcmVtaXNlQ2hpbGROb2Rlc01hdGNoZXMiLCJydWxlTmFtZU1ldGFzdGF0ZW1lbnRSdWxlTmFtZSIsIk1FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwicHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlIiwicHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoUHJlbWlzZU1ldGFzdGF0ZW1lbnROb2RlIiwicHJlbWlzZUNoaWxkTm9kZXNMZW5ndGgiLCJmaXJzdFByZW1pc2VDaGlsZE5vZGUiLCJwcmVtaXNlQ2hpbGROb2RlIiwicHJlbWlzZUNoaWxkTm9kZU5vblRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwicHJlbWlzZU5vblRlcm1pbmFsQ2hpbGROb2RlIiwicHJlbWlzZU5vblRlcm1pbmFsQ2hpbGROb2RlUnVsZU5hbWUiLCJwcmVtaXNlTm9uVGVybWluYWxDaGlsZE5vZGVSdWxlTmFtZU1ldGF2YXJpYWJsZVJ1bGVOYW1lIiwiTUVUQVZBUklBQkxFX1JVTEVfTkFNRSIsInByZW1pc2VNZXRhVmFyaWFibGVNYXRjaGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQWVxQkE7OztxRUFiUTtzQkFFQTtxQkFDQztxQkFDUTtvQkFFaUI7eUJBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFaEUsSUFBTUMsMEJBQTBCQyxJQUFBQSxpQkFBVSxFQUFDLHlDQUNyQ0MsaUNBQWlDQyxJQUFBQSxnQkFBUyxFQUFDLDBDQUMzQ0MsNkRBQTZESCxJQUFBQSxpQkFBVSxFQUFDO0FBRS9ELElBQUEsQUFBTUYsd0JBNEVsQixBQTVFWTthQUFNQSxRQUNQTSxpQkFBaUI7OEJBRFZOO1FBRWpCLElBQUksQ0FBQ00saUJBQWlCLEdBQUdBOztpQkFGUk47O1lBS25CTyxLQUFBQTttQkFBQUEsU0FBQUEsdUJBQXVCO2dCQUNyQixPQUFPLElBQUksQ0FBQ0QsaUJBQWlCO1lBQy9COzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQkMsZ0JBQWdCLEVBQUVDLGlCQUFpQixFQUFFO2dCQUN6RCxJQUFJQywwQkFBMEIsS0FBSztnQkFFbkMsSUFBTUMsNEJBQTRCVCwrQkFBK0IsSUFBSSxDQUFDRyxp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
|