occam-verify-cli 0.0.470 → 0.0.472
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/constants.js +4 -8
- package/lib/context/file.js +9 -9
- package/lib/context/metaproof.js +38 -32
- package/lib/context/proof.js +35 -29
- package/lib/equality.js +22 -0
- package/lib/metaSubstitution.js +12 -52
- package/lib/rule.js +15 -19
- package/lib/step/metaproof.js +114 -0
- package/lib/step/proof.js +68 -0
- package/lib/substitution.js +16 -56
- package/lib/utilities/array.js +2 -5
- package/lib/utilities/node.js +105 -0
- package/lib/verify/antecedent.js +4 -4
- package/lib/verify/derivation.js +16 -18
- package/lib/verify/equality.js +18 -5
- package/lib/verify/metaDerivation.js +16 -18
- package/lib/verify/metaproof.js +10 -51
- package/lib/verify/metastatement/qualified.js +1 -7
- package/lib/verify/metastatement/unqualified.js +2 -9
- package/lib/verify/premiseOrPremises.js +4 -4
- package/lib/verify/proof.js +11 -52
- package/lib/verify/statement/qualified.js +1 -7
- package/lib/verify/statement/unqualified.js +2 -9
- package/package.json +1 -1
- package/src/constants.js +1 -2
- package/src/context/file.js +6 -6
- package/src/context/metaproof.js +32 -31
- package/src/context/proof.js +30 -29
- package/src/equality.js +8 -0
- package/src/metaSubstitution.js +16 -87
- package/src/rule.js +19 -26
- package/src/step/metaproof.js +99 -0
- package/src/step/proof.js +30 -0
- package/src/substitution.js +19 -90
- package/src/utilities/array.js +1 -1
- package/src/utilities/node.js +149 -0
- package/src/verify/antecedent.js +3 -3
- package/src/verify/derivation.js +17 -18
- package/src/verify/equality.js +29 -11
- package/src/verify/metaDerivation.js +17 -18
- package/src/verify/metaproof.js +20 -91
- package/src/verify/metastatement/qualified.js +0 -9
- package/src/verify/metastatement/unqualified.js +1 -12
- package/src/verify/premiseOrPremises.js +3 -3
- package/src/verify/proof.js +21 -92
- package/src/verify/statement/qualified.js +0 -9
- package/src/verify/statement/unqualified.js +1 -13
- package/lib/assertion.js +0 -147
- package/lib/metaAssertion.js +0 -200
- package/lib/utilities/metastatement.js +0 -45
- package/lib/utilities/statement.js +0 -45
- package/src/assertion.js +0 -150
- package/src/metaAssertion.js +0 -245
- package/src/utilities/metastatement.js +0 -50
- package/src/utilities/statement.js +0 -50
package/lib/metaSubstitution.js
CHANGED
|
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return MetaSubstitution;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var
|
|
11
|
+
var _node = require("./utilities/node");
|
|
12
12
|
function _classCallCheck(instance, Constructor) {
|
|
13
13
|
if (!(instance instanceof Constructor)) {
|
|
14
14
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -51,14 +51,14 @@ var MetaSubstitution = /*#__PURE__*/ function() {
|
|
|
51
51
|
key: "matchNodes",
|
|
52
52
|
value: function matchNodes(nodes) {
|
|
53
53
|
var matches;
|
|
54
|
-
var
|
|
55
|
-
matches =
|
|
54
|
+
var nodesA = this.nodes, nodesB = nodes, metaSubstitutionNodesMatch = (0, _node.matchNodes)(nodesA, nodesB);
|
|
55
|
+
matches = metaSubstitutionNodesMatch; ///
|
|
56
56
|
if (!matches) {
|
|
57
|
-
var childNodes = nodes,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
57
|
+
var childNodes = nodes, bracketedChildNode = (0, _node.bracketedChildNodeFromChildNodes)(childNodes);
|
|
58
|
+
if (bracketedChildNode !== null) {
|
|
59
|
+
var nonTerminalNode = bracketedChildNode, childNodes1 = nonTerminalNode.getChildNodes(), nodesB1 = childNodes1, nodesMatch = (0, _node.matchNodes)(nodesA, nodesB1);
|
|
60
|
+
matches = nodesMatch; ///
|
|
61
|
+
}
|
|
62
62
|
}
|
|
63
63
|
return matches;
|
|
64
64
|
}
|
|
@@ -67,9 +67,9 @@ var MetaSubstitution = /*#__PURE__*/ function() {
|
|
|
67
67
|
{
|
|
68
68
|
key: "fromMetavariableNameAndNodes",
|
|
69
69
|
value: function fromMetavariableNameAndNodes(metavariableName, nodes) {
|
|
70
|
-
var
|
|
71
|
-
if (
|
|
72
|
-
var nonTerminalNode =
|
|
70
|
+
var bracketedChildNode = (0, _node.bracketedChildNodeFromChildNodes)(nodes);
|
|
71
|
+
if (bracketedChildNode !== null) {
|
|
72
|
+
var nonTerminalNode = bracketedChildNode, childNodes = nonTerminalNode.getChildNodes();
|
|
73
73
|
nodes = childNodes; ///
|
|
74
74
|
}
|
|
75
75
|
var metaSubstitution = new MetaSubstitution(metavariableName, nodes);
|
|
@@ -79,45 +79,5 @@ var MetaSubstitution = /*#__PURE__*/ function() {
|
|
|
79
79
|
]);
|
|
80
80
|
return MetaSubstitution;
|
|
81
81
|
}();
|
|
82
|
-
function matchMetaSubstitutionNode(metaSubstitutionNode, node) {
|
|
83
|
-
var metaSubstitutionNodeMatches = false;
|
|
84
|
-
var nodeTerminalNode = node.isTerminalNode(), ruleNodeTerminalNode = metaSubstitutionNode.isTerminalNode();
|
|
85
|
-
if (nodeTerminalNode === ruleNodeTerminalNode) {
|
|
86
|
-
if (nodeTerminalNode) {
|
|
87
|
-
var terminalNode = node, metaSubstitutionTerminalNode = metaSubstitutionNode, metaSubstitutionTerminalNodeMatches = matchMetaSubstitutionTerminalNode(metaSubstitutionTerminalNode, terminalNode);
|
|
88
|
-
metaSubstitutionNodeMatches = metaSubstitutionTerminalNodeMatches; ///
|
|
89
|
-
} else {
|
|
90
|
-
var nonTerminalNode = node, metaSubstitutionNonTerminalNode = metaSubstitutionNode, metaSubstitutionNonTerminalNodeMatches = matchMetaSubstitutionNonTerminalNode(metaSubstitutionNonTerminalNode, nonTerminalNode);
|
|
91
|
-
metaSubstitutionNodeMatches = metaSubstitutionNonTerminalNodeMatches; ///
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return metaSubstitutionNodeMatches;
|
|
95
|
-
}
|
|
96
|
-
function matchMetaSubstitutionNodes(metaSubstitutionNodes, nodes) {
|
|
97
|
-
var metaSubstitutionNodesMatches = false;
|
|
98
|
-
var nodesLength = nodes.length, metaSubstitutionNodesLength = metaSubstitutionNodes.length;
|
|
99
|
-
if (nodesLength === metaSubstitutionNodesLength) {
|
|
100
|
-
metaSubstitutionNodesMatches = nodes.every(function(node, index) {
|
|
101
|
-
var metaSubstitutionNode = metaSubstitutionNodes[index], metaSubstitutionNodeMatches = matchMetaSubstitutionNode(metaSubstitutionNode, node);
|
|
102
|
-
if (metaSubstitutionNodeMatches) {
|
|
103
|
-
return true;
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
return metaSubstitutionNodesMatches;
|
|
108
|
-
}
|
|
109
|
-
function matchMetaSubstitutionTerminalNode(metaSubstitutionTerminalNode, terminalNode) {
|
|
110
|
-
var matches = metaSubstitutionTerminalNode.match(terminalNode), metaSubstitutionTerminalNodeMatches = matches; ///
|
|
111
|
-
return metaSubstitutionTerminalNodeMatches;
|
|
112
|
-
}
|
|
113
|
-
function matchMetaSubstitutionNonTerminalNode(metaSubstitutionNonTerminalNode, nonTerminalNode) {
|
|
114
|
-
var metaSubstitutionNonTerminalNodeMatches = false;
|
|
115
|
-
var ruleName = nonTerminalNode.getRuleName(), metaSubstitutionRuleName = metaSubstitutionNonTerminalNode.getRuleName(); ///
|
|
116
|
-
if (ruleName === metaSubstitutionRuleName) {
|
|
117
|
-
var childNodes = nonTerminalNode.getChildNodes(), metaSubstitutionChildNodes = metaSubstitutionNonTerminalNode.getChildNodes(), nodes = childNodes, metaSubstitutionNodes = metaSubstitutionChildNodes, metaSubstitutionNodesMatches = matchMetaSubstitutionNodes(metaSubstitutionNodes, nodes);
|
|
118
|
-
metaSubstitutionNonTerminalNodeMatches = metaSubstitutionNodesMatches; ///
|
|
119
|
-
}
|
|
120
|
-
return metaSubstitutionNonTerminalNodeMatches;
|
|
121
|
-
}
|
|
122
82
|
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhU3Vic3RpdHV0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBtYXRjaEJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUsIGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVGcm9tQ2hpbGROb2RlcyB9IGZyb20gXCIuL3V0aWxpdGllcy9tZXRhc3RhdGVtZW50XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3RvcihtZXRhdmFyaWFibGVOYW1lLCBub2Rlcykge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy5ub2RlcyA9IG5vZGVzO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOYW1lO1xuICB9XG5cbiAgZ2V0Tm9kZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZXM7XG4gIH1cblxuICBtYXRjaE5vZGVzKG5vZGVzKSB7XG4gICAgbGV0IG1hdGNoZXM7XG5cbiAgICBjb25zdCBtZXRhU3Vic3RpdHV0aW9uTm9kZXMgPSB0aGlzLm5vZGVzLCAgLy8vXG4gICAgICAgICAgbWV0YVN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob2RlcyhtZXRhU3Vic3RpdHV0aW9uTm9kZXMsIG5vZGVzKTtcblxuICAgIG1hdGNoZXMgPSBtZXRhU3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgIC8vL1xuXG4gICAgaWYgKCFtYXRjaGVzKSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9kZXMsIC8vL1xuICAgICAgICAgICAgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZU1hdGNoZXMgPSBtYXRjaEJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUoY2hpbGROb2RlcywgKGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgbWV0YUFzc2VydGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob2RlcyhtZXRhU3Vic3RpdHV0aW9uTm9kZXMsIG5vZGVzKSxcbiAgICAgICAgICAgICAgICAgICAgYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZU1hdGNoZXMgPSBtZXRhQXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG5cbiAgICAgICAgICAgICAgcmV0dXJuIGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGVNYXRjaGVzO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgIG1hdGNoZXMgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlTWF0Y2hlczsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIG1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmROb2RlcyhtZXRhdmFyaWFibGVOYW1lLCBub2Rlcykge1xuICAgIGNvbnN0IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgPSBicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlRnJvbUNoaWxkTm9kZXMobm9kZXMpO1xuXG4gICAgaWYgKGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IGJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpO1xuXG4gICAgICBub2RlcyA9IGNoaWxkTm9kZXM7IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IG1ldGFTdWJzdGl0dXRpb24gPSBuZXcgTWV0YVN1YnN0aXR1dGlvbihtZXRhdmFyaWFibGVOYW1lLCBub2Rlcyk7XG5cbiAgICByZXR1cm4gbWV0YVN1YnN0aXR1dGlvbjtcbiAgfVxufVxuXG5mdW5jdGlvbiBtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob2RlKG1ldGFTdWJzdGl0dXRpb25Ob2RlLCBub2RlKSB7XG4gIGxldCBtZXRhU3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICBydWxlTm9kZVRlcm1pbmFsTm9kZSA9IG1ldGFTdWJzdGl0dXRpb25Ob2RlLmlzVGVybWluYWxOb2RlKCk7XG5cbiAgaWYgKG5vZGVUZXJtaW5hbE5vZGUgPT09IHJ1bGVOb2RlVGVybWluYWxOb2RlKSB7XG4gICAgaWYgKG5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICAgIG1ldGFTdWJzdGl0dXRpb25UZXJtaW5hbE5vZGUgPSBtZXRhU3Vic3RpdHV0aW9uTm9kZSwgIC8vL1xuICAgICAgICAgICAgbWV0YVN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaE1ldGFTdWJzdGl0dXRpb25UZXJtaW5hbE5vZGUobWV0YVN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKTtcblxuICAgICAgbWV0YVN1YnN0aXR1dGlvbk5vZGVNYXRjaGVzID0gbWV0YVN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZU1hdGNoZXM7ICAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbm9kZSwgLy8vXG4gICAgICAgICAgICBtZXRhU3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlID0gbWV0YVN1YnN0aXR1dGlvbk5vZGUsICAvLy9cbiAgICAgICAgICAgIG1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hNZXRhU3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlKG1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSk7XG5cbiAgICAgIG1ldGFTdWJzdGl0dXRpb25Ob2RlTWF0Y2hlcyA9IG1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YVN1YnN0aXR1dGlvbk5vZGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob2RlcyhtZXRhU3Vic3RpdHV0aW9uTm9kZXMsIG5vZGVzKSB7XG4gIGxldCBtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaGVzID0gZmFsc2U7XG5cbiAgY29uc3Qgbm9kZXNMZW5ndGggPSBub2Rlcy5sZW5ndGgsXG4gICAgICAgIG1ldGFTdWJzdGl0dXRpb25Ob2Rlc0xlbmd0aCA9IG1ldGFTdWJzdGl0dXRpb25Ob2Rlcy5sZW5ndGg7XG5cbiAgaWYgKG5vZGVzTGVuZ3RoID09PSBtZXRhU3Vic3RpdHV0aW9uTm9kZXNMZW5ndGgpIHtcbiAgICBtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaGVzID0gbm9kZXMuZXZlcnkoKG5vZGUsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBtZXRhU3Vic3RpdHV0aW9uTm9kZSA9IG1ldGFTdWJzdGl0dXRpb25Ob2Rlc1tpbmRleF0sXG4gICAgICAgICAgICBtZXRhU3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMgPSBtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob2RlKG1ldGFTdWJzdGl0dXRpb25Ob2RlLCBub2RlKTtcblxuICAgICAgaWYgKG1ldGFTdWJzdGl0dXRpb25Ob2RlTWF0Y2hlcykge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIG1ldGFTdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoTWV0YVN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZShtZXRhU3Vic3RpdHV0aW9uVGVybWluYWxOb2RlLCB0ZXJtaW5hbE5vZGUpIHtcbiAgY29uc3QgbWF0Y2hlcyA9IG1ldGFTdWJzdGl0dXRpb25UZXJtaW5hbE5vZGUubWF0Y2godGVybWluYWxOb2RlKSxcbiAgICAgICAgbWV0YVN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaGVzOyAgLy8vXG5cbiAgcmV0dXJuIG1ldGFTdWJzdGl0dXRpb25UZXJtaW5hbE5vZGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUobWV0YVN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlKSB7XG4gIGxldCBtZXRhU3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCksXG4gICAgICAgIG1ldGFTdWJzdGl0dXRpb25SdWxlTmFtZSA9IG1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgaWYgKHJ1bGVOYW1lID09PSBtZXRhU3Vic3RpdHV0aW9uUnVsZU5hbWUpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBtZXRhU3Vic3RpdHV0aW9uQ2hpbGROb2RlcyA9IG1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIG5vZGVzID0gY2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgbWV0YVN1YnN0aXR1dGlvbk5vZGVzID0gbWV0YVN1YnN0aXR1dGlvbkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIG1ldGFTdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXMgPSBtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob2RlcyhtZXRhU3Vic3RpdHV0aW9uTm9kZXMsIG5vZGVzKTtcblxuICAgIG1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2hlczsgLy8vXG4gIH1cblxuICByZXR1cm4gbWV0YVN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXM7XG59XG4iXSwibmFtZXMiOlsiTWV0YVN1YnN0aXR1dGlvbiIsIm1ldGF2YXJpYWJsZU5hbWUiLCJub2RlcyIsImdldE1ldGF2YXJpYWJsZU5hbWUiLCJnZXROb2RlcyIsIm1hdGNoTm9kZXMiLCJtYXRjaGVzIiwibWV0YVN1YnN0aXR1dGlvbk5vZGVzIiwibWV0YVN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMiLCJtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob2RlcyIsImNoaWxkTm9kZXMiLCJicmFja2V0ZWRNZXRhc3RhdGVtZW50Q2hpbGROb2RlTWF0Y2hlcyIsIm1hdGNoQnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZSIsImJyYWNrZXRlZE1ldGFzdGF0ZW1lbnRDaGlsZE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJnZXRDaGlsZE5vZGVzIiwibWV0YUFzc2VydGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMiLCJmcm9tTWV0YXZhcmlhYmxlTmFtZUFuZE5vZGVzIiwiYnJhY2tldGVkTWV0YXN0YXRlbWVudENoaWxkTm9kZUZyb21DaGlsZE5vZGVzIiwibWV0YVN1YnN0aXR1dGlvbiIsIm1hdGNoTWV0YVN1YnN0aXR1dGlvbk5vZGUiLCJtZXRhU3Vic3RpdHV0aW9uTm9kZSIsIm5vZGUiLCJtZXRhU3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMiLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJydWxlTm9kZVRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsIm1ldGFTdWJzdGl0dXRpb25UZXJtaW5hbE5vZGUiLCJtZXRhU3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcyIsIm1hdGNoTWV0YVN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZSIsIm1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUiLCJtYXRjaE1ldGFTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUiLCJtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaGVzIiwibm9kZXNMZW5ndGgiLCJsZW5ndGgiLCJtZXRhU3Vic3RpdHV0aW9uTm9kZXNMZW5ndGgiLCJldmVyeSIsImluZGV4IiwibWF0Y2giLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwibWV0YVN1YnN0aXR1dGlvblJ1bGVOYW1lIiwibWV0YVN1YnN0aXR1dGlvbkNoaWxkTm9kZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7OzZCQUYrRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFckYsSUFBQSxBQUFNQSxpQ0F3RGxCLEFBeERZO2FBQU1BLGlCQUNQQyxnQkFBZ0IsRUFBRUMsS0FBSzs4QkFEaEJGO1FBRWpCLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTs7aUJBSElGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQjtnQkFDcEIsT0FBTyxJQUFJLENBQUNGLGdCQUFnQjtZQUM5Qjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXO2dCQUNULE9BQU8sSUFBSSxDQUFDRixLQUFLO1lBQ25COzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVdILEtBQUssRUFBRTtnQkFDaEIsSUFBSUk7Z0JBRUos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
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhU3Vic3RpdHV0aW9uLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBtYXRjaE5vZGVzLCBicmFja2V0ZWRDaGlsZE5vZGVGcm9tQ2hpbGROb2RlcyB9IGZyb20gXCIuL3V0aWxpdGllcy9ub2RlXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFTdWJzdGl0dXRpb24ge1xuICBjb25zdHJ1Y3RvcihtZXRhdmFyaWFibGVOYW1lLCBub2Rlcykge1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWU7XG4gICAgdGhpcy5ub2RlcyA9IG5vZGVzO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOYW1lO1xuICB9XG5cbiAgZ2V0Tm9kZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZXM7XG4gIH1cblxuICBtYXRjaE5vZGVzKG5vZGVzKSB7XG4gICAgbGV0IG1hdGNoZXM7XG5cbiAgICBjb25zdCBub2Rlc0EgPSB0aGlzLm5vZGVzLCAgLy8vXG4gICAgICAgICAgbm9kZXNCID0gbm9kZXMsXG4gICAgICAgICAgbWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2ggPSBtYXRjaE5vZGVzKG5vZGVzQSwgbm9kZXNCKTtcblxuICAgIG1hdGNoZXMgPSBtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaDsgIC8vL1xuXG4gICAgaWYgKCFtYXRjaGVzKSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9kZXMsIC8vL1xuICAgICAgICAgICAgYnJhY2tldGVkQ2hpbGROb2RlID0gYnJhY2tldGVkQ2hpbGROb2RlRnJvbUNoaWxkTm9kZXMoY2hpbGROb2Rlcyk7XG5cbiAgICAgIGlmIChicmFja2V0ZWRDaGlsZE5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gYnJhY2tldGVkQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgICBub2Rlc0IgPSBjaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgICAgbm9kZXNNYXRjaCA9IG1hdGNoTm9kZXMobm9kZXNBLCBub2Rlc0IpO1xuXG4gICAgICAgIG1hdGNoZXMgPSBub2Rlc01hdGNoOyAvLy9cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWF0Y2hlcztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTWV0YXZhcmlhYmxlTmFtZUFuZE5vZGVzKG1ldGF2YXJpYWJsZU5hbWUsIG5vZGVzKSB7XG4gICAgY29uc3QgYnJhY2tldGVkQ2hpbGROb2RlID0gYnJhY2tldGVkQ2hpbGROb2RlRnJvbUNoaWxkTm9kZXMobm9kZXMpO1xuXG4gICAgaWYgKGJyYWNrZXRlZENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gYnJhY2tldGVkQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKTtcblxuICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBtZXRhU3Vic3RpdHV0aW9uID0gbmV3IE1ldGFTdWJzdGl0dXRpb24obWV0YXZhcmlhYmxlTmFtZSwgbm9kZXMpO1xuXG4gICAgcmV0dXJuIG1ldGFTdWJzdGl0dXRpb247XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiTWV0YVN1YnN0aXR1dGlvbiIsIm1ldGF2YXJpYWJsZU5hbWUiLCJub2RlcyIsImdldE1ldGF2YXJpYWJsZU5hbWUiLCJnZXROb2RlcyIsIm1hdGNoTm9kZXMiLCJtYXRjaGVzIiwibm9kZXNBIiwibm9kZXNCIiwibWV0YVN1YnN0aXR1dGlvbk5vZGVzTWF0Y2giLCJjaGlsZE5vZGVzIiwiYnJhY2tldGVkQ2hpbGROb2RlIiwiYnJhY2tldGVkQ2hpbGROb2RlRnJvbUNoaWxkTm9kZXMiLCJub25UZXJtaW5hbE5vZGUiLCJnZXRDaGlsZE5vZGVzIiwibm9kZXNNYXRjaCIsImZyb21NZXRhdmFyaWFibGVOYW1lQW5kTm9kZXMiLCJtZXRhU3Vic3RpdHV0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUlxQkE7OztvQkFGd0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTlDLElBQUEsQUFBTUEsaUNBQU47YUFBTUEsaUJBQ1BDLGdCQUFnQixFQUFFQyxLQUFLOzhCQURoQkY7UUFFakIsSUFBSSxDQUFDQyxnQkFBZ0IsR0FBR0E7UUFDeEIsSUFBSSxDQUFDQyxLQUFLLEdBQUdBOztpQkFISUY7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCO2dCQUNwQixPQUFPLElBQUksQ0FBQ0YsZ0JBQWdCO1lBQzlCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVc7Z0JBQ1QsT0FBTyxJQUFJLENBQUNGLEtBQUs7WUFDbkI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsV0FBV0gsS0FBSyxFQUFFO2dCQUNoQixJQUFJSTtnQkFFSixJQUFNQyxTQUFTLElBQUksQ0FBQ0wsS0FBSyxFQUNuQk0sU0FBU04sT0FDVE8sNkJBQTZCSixJQUFBQSxnQkFBVSxFQUFDRSxRQUFRQztnQkFFdERGLFVBQVVHLDRCQUE2QixHQUFHO2dCQUUxQyxJQUFJLENBQUNILFNBQVM7b0JBQ1osSUFBTUksYUFBYVIsT0FDYlMscUJBQXFCQyxJQUFBQSxzQ0FBZ0MsRUFBQ0Y7b0JBRTVELElBQUlDLHVCQUF1QixJQUFJLEVBQUU7d0JBQy9CLElBQU1FLGtCQUFrQkYsb0JBQ2xCRCxjQUFhRyxnQkFBZ0JDLGFBQWEsSUFDMUNOLFVBQVNFLGFBQ1RLLGFBQWFWLElBQUFBLGdCQUFVLEVBQUNFLFFBQVFDO3dCQUV0Q0YsVUFBVVMsWUFBWSxHQUFHO29CQUMzQixDQUFDO2dCQUNILENBQUM7Z0JBRUQsT0FBT1Q7WUFDVDs7OztZQUVPVSxLQUFBQTttQkFBUCxTQUFPQSw2QkFBNkJmLGdCQUFnQixFQUFFQyxLQUFLLEVBQUU7Z0JBQzNELElBQU1TLHFCQUFxQkMsSUFBQUEsc0NBQWdDLEVBQUNWO2dCQUU1RCxJQUFJUyx1QkFBdUIsSUFBSSxFQUFFO29CQUMvQixJQUFNRSxrQkFBa0JGLG9CQUNsQkQsYUFBYUcsZ0JBQWdCQyxhQUFhO29CQUVoRFosUUFBUVEsWUFBWSxHQUFHO2dCQUN6QixDQUFDO2dCQUVELElBQU1PLG1CQUFtQixJQWxEUmpCLGlCQWtENkJDLGtCQUFrQkM7Z0JBRWhFLE9BQU9lO1lBQ1Q7OztXQXJEbUJqQiJ9
|
package/lib/rule.js
CHANGED
|
@@ -85,9 +85,14 @@ var Rule = /*#__PURE__*/ function() {
|
|
|
85
85
|
var metaSubstitutions = [], conclusionMatches = matchConclusion(this.conclusion, metastatementNode, metaSubstitutions);
|
|
86
86
|
metastatementNatches = conclusionMatches; ///
|
|
87
87
|
} else {
|
|
88
|
-
var
|
|
89
|
-
metastatementNatches = (0, _array.someSubArray)(
|
|
90
|
-
var premisesMatchConclusion =
|
|
88
|
+
var metaproofSteps = metaproofContext.getMetaproofSteps();
|
|
89
|
+
metastatementNatches = (0, _array.someSubArray)(metaproofSteps, premisesLength, function(metaproofSteps) {
|
|
90
|
+
var premisesMatchConclusion = false;
|
|
91
|
+
var metaSubstitutions = [], premisesMatches = matchPremises(_this.premises, metaproofSteps, metaSubstitutions);
|
|
92
|
+
if (premisesMatches) {
|
|
93
|
+
var conclusionMatches = matchConclusion(_this.conclusion, metastatementNode, metaSubstitutions);
|
|
94
|
+
premisesMatchConclusion = conclusionMatches; ///
|
|
95
|
+
}
|
|
91
96
|
if (premisesMatchConclusion) {
|
|
92
97
|
return true;
|
|
93
98
|
}
|
|
@@ -149,9 +154,9 @@ var Rule = /*#__PURE__*/ function() {
|
|
|
149
154
|
]);
|
|
150
155
|
return Rule;
|
|
151
156
|
}();
|
|
152
|
-
function matchPremise(premise,
|
|
153
|
-
var
|
|
154
|
-
var metaSubproofNode =
|
|
157
|
+
function matchPremise(premise, metaproofSteps, metaSubstitutions) {
|
|
158
|
+
var metaproofStep = (0, _array.prune)(metaproofSteps, function(metaproofStep) {
|
|
159
|
+
var metaSubproofNode = metaproofStep.getMetaSubproofNode(), metastatementNode = metaproofStep.getMetastatementNode();
|
|
155
160
|
if (metaSubproofNode !== null) {
|
|
156
161
|
var metaSubProofMatches = premise.matchMetaSubproofNode(metaSubproofNode, metaSubstitutions);
|
|
157
162
|
if (!metaSubProofMatches) {
|
|
@@ -165,12 +170,12 @@ function matchPremise(premise, metaAssertions, metaSubstitutions) {
|
|
|
165
170
|
}
|
|
166
171
|
}
|
|
167
172
|
}) || null;
|
|
168
|
-
var premiseMatches =
|
|
173
|
+
var premiseMatches = metaproofStep !== null;
|
|
169
174
|
return premiseMatches;
|
|
170
175
|
}
|
|
171
|
-
function matchPremises(premise,
|
|
176
|
+
function matchPremises(premise, metaproofSteps, metaSubstitutions) {
|
|
172
177
|
var premisesMatches = premise.every(function(premise) {
|
|
173
|
-
var premiseMatches = matchPremise(premise,
|
|
178
|
+
var premiseMatches = matchPremise(premise, metaproofSteps, metaSubstitutions);
|
|
174
179
|
if (premiseMatches) {
|
|
175
180
|
return true;
|
|
176
181
|
}
|
|
@@ -181,14 +186,5 @@ function matchConclusion(conclusion, metastatementNode, metaSubstitutions) {
|
|
|
181
186
|
var nonTerminalNodeMatches = conclusion.matchMetastatementNode(metastatementNode, metaSubstitutions), conclusionMatches = nonTerminalNodeMatches; ///
|
|
182
187
|
return conclusionMatches;
|
|
183
188
|
}
|
|
184
|
-
function matchPremisesAndConclusion(premises, conclusion, metaAssertions, metastatementNode) {
|
|
185
|
-
var premisesMatchConclusion = false;
|
|
186
|
-
var metaSubstitutions = [], premisesMatches = matchPremises(premises, metaAssertions, metaSubstitutions);
|
|
187
|
-
if (premisesMatches) {
|
|
188
|
-
var conclusionMatches = matchConclusion(conclusion, metastatementNode, metaSubstitutions);
|
|
189
|
-
premisesMatchConclusion = conclusionMatches; ///
|
|
190
|
-
}
|
|
191
|
-
return premisesMatchConclusion;
|
|
192
|
-
}
|
|
193
189
|
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTGFiZWwgZnJvbSBcIi4vbGFiZWxcIjtcbmltcG9ydCBQcmVtaXNlIGZyb20gXCIuL3ByZW1pc2VcIjtcbmltcG9ydCBDb25jbHVzaW9uIGZyb20gXCIuL2NvbmNsdXNpb25cIjtcblxuaW1wb3J0IHsgcHJ1bmUgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IFJVTEVfS0lORCB9IGZyb20gXCIuL2tpbmRzXCI7XG5pbXBvcnQgeyBzb21lU3ViQXJyYXkgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUnVsZSB7XG4gIGNvbnN0cnVjdG9yKGxhYmVscywgcHJlbWlzZXMsIGNvbmNsdXNpb24pIHtcbiAgICB0aGlzLmxhYmVscyA9IGxhYmVscztcbiAgICB0aGlzLnByZW1pc2VzID0gcHJlbWlzZXM7XG4gICAgdGhpcy5jb25jbHVzaW9uID0gY29uY2x1c2lvbjtcbiAgfVxuXG4gIGdldExhYmVscygpIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbHM7XG4gIH1cblxuICBnZXRQcmVtaXNlcygpIHtcbiAgICByZXR1cm4gdGhpcy5wcmVtaXNlcztcbiAgfVxuXG4gIGdldENvbmNsdXNpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uY2x1c2lvbjtcbiAgfVxuXG4gIG1hdGNoTGFiZWxOYW1lKGxhYmVsTmFtZSkge1xuICAgIGNvbnN0IG1hdGNoZXNMYWJlbE5hbWUgPSB0aGlzLmxhYmVscy5zb21lKChsYWJlbCkgPT4ge1xuICAgICAgY29uc3QgbmFtZSA9IGxhYmVsTmFtZSwgLy8vXG4gICAgICAgICAgICBsYWJlbE1hdGNoZXNOYW1lID0gbGFiZWwubWF0Y2hOYW1lKG5hbWUpO1xuXG4gICAgICBpZiAobGFiZWxNYXRjaGVzTmFtZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBtYXRjaGVzTGFiZWxOYW1lO1xuICB9XG5cbiAgbWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhcHJvb2ZDb250ZXh0KSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnROYXRjaGVzO1xuXG4gICAgY29uc3QgcHJlbWlzZXNMZW5ndGggPSB0aGlzLnByZW1pc2VzLmxlbmd0aDtcblxuICAgIGlmIChwcmVtaXNlc0xlbmd0aCA9PT0gMCkge1xuICAgICAgY29uc3QgbWV0YVN1YnN0aXR1dGlvbnMgPSBbXSxcbiAgICAgICAgICAgIGNvbmNsdXNpb25NYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uKHRoaXMuY29uY2x1c2lvbiwgbWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgbWV0YXN0YXRlbWVudE5hdGNoZXMgPSBjb25jbHVzaW9uTWF0Y2hlczsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG1ldGFBc3NlcnRpb25zID0gbWV0YXByb29mQ29udGV4dC5nZXRNZXRhQXNzZXJ0aW9ucygpO1xuXG4gICAgICBtZXRhc3RhdGVtZW50TmF0Y2hlcyA9IHNvbWVTdWJBcnJheShtZXRhQXNzZXJ0aW9ucywgcHJlbWlzZXNMZW5ndGgsIChtZXRhQXNzZXJ0aW9ucykgPT4ge1xuICAgICAgICBjb25zdCBwcmVtaXNlc01hdGNoQ29uY2x1c2lvbiA9IG1hdGNoUHJlbWlzZXNBbmRDb25jbHVzaW9uKHRoaXMucHJlbWlzZXMsIHRoaXMuY29uY2x1c2lvbiwgbWV0YUFzc2VydGlvbnMsIG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBpZiAocHJlbWlzZXNNYXRjaENvbmNsdXNpb24pIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1ldGFzdGF0ZW1lbnROYXRjaGVzO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGNvbnN0IGxhYmVsc0pTT04gPSB0aGlzLmxhYmVscy5tYXAoKGxhYmVsKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBsYWJlbEpTT04gPSBsYWJlbC50b0pTT04oKTtcblxuICAgICAgICAgICAgcmV0dXJuIGxhYmVsSlNPTjtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBwcmVtaXNlc0pTT04gPSB0aGlzLnByZW1pc2VzLm1hcCgocHJlbWlzZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJlbWlzZUpTT04gPSBwcmVtaXNlLnRvSlNPTigpO1xuXG4gICAgICAgICAgICByZXR1cm4gcHJlbWlzZUpTT047XG4gICAgICAgICAgfSksXG4gICAgICAgICAgY29uY2x1c2lvbkpTT04gPSB0aGlzLmNvbmNsdXNpb24udG9KU09OKCksXG4gICAgICAgICAga2luZCA9IFJVTEVfS0lORCxcbiAgICAgICAgICBsYWJlbHMgPSBsYWJlbHNKU09OLCAgLy8vXG4gICAgICAgICAgcHJlbWlzZXMgPSBwcmVtaXNlc0pTT04sICAvLy9cbiAgICAgICAgICBjb25jbHVzaW9uID0gY29uY2x1c2lvbkpTT04sICAvLy9cbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAga2luZCxcbiAgICAgICAgICAgIGxhYmVscyxcbiAgICAgICAgICAgIHByZW1pc2VzLFxuICAgICAgICAgICAgY29uY2x1c2lvblxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCByZWxlYXNlQ29udGV4dCkge1xuICAgIGxldCBydWxlO1xuXG4gICAgbGV0IHsgbGFiZWxzIH0gPSBqc29uO1xuXG4gICAgY29uc3QgbGFiZWxzSlNPTiA9IGxhYmVsczsgIC8vL1xuXG4gICAgbGFiZWxzID0gbGFiZWxzSlNPTi5tYXAoKGxhYmVsSlNPTikgPT4ge1xuICAgICAgY29uc3QganNvbiA9IGxhYmVsSlNPTiwgLy8vXG4gICAgICAgICAgICBsYWJlbCA9IExhYmVsLmZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KTtcblxuICAgICAgcmV0dXJuIGxhYmVsO1xuICAgIH0pO1xuXG4gICAgbGV0IHsgcHJlbWlzZXMgfSA9IGpzb247XG5cbiAgICBjb25zdCBwcmVtaXNlc0pTT04gPSBwcmVtaXNlczsgIC8vL1xuXG4gICAgcHJlbWlzZXMgPSBwcmVtaXNlc0pTT04ubWFwKChwcmVtaXNlSlNPTikgPT4ge1xuICAgICAgY29uc3QganNvbiA9IHByZW1pc2VKU09OLCAvLy9cbiAgICAgICAgICAgIHByZW1pc2UgPSBQcmVtaXNlLmZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KTtcblxuICAgICAgcmV0dXJuIHByZW1pc2U7XG4gICAgfSk7XG5cbiAgICBsZXQgeyBjb25jbHVzaW9uIH0gPSBqc29uO1xuXG4gICAgY29uc3QgY29uY2x1c2lvbkpTT04gPSBjb25jbHVzaW9uOyAgLy8vXG5cbiAgICBqc29uID0gY29uY2x1c2lvbkpTT047ICAvLy9cblxuICAgIGNvbmNsdXNpb24gPSBDb25jbHVzaW9uLmZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KTtcblxuICAgIHJ1bGUgPSBuZXcgUnVsZShsYWJlbHMsIHByZW1pc2VzLCBjb25jbHVzaW9uKTtcblxuICAgIHJldHVybiBydWxlO1xuICB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNQcmVtaXNlc0FuZENvbmNsdXNpb24obGFiZWxzLCBwcmVtaXNlcywgY29uY2x1c2lvbikge1xuICAgIGNvbnN0IHJ1bGUgPSBuZXcgUnVsZShsYWJlbHMsIHByZW1pc2VzLCBjb25jbHVzaW9uKTtcblxuICAgIHJldHVybiBydWxlO1xuICB9XG59XG5cbmZ1bmN0aW9uIG1hdGNoUHJlbWlzZShwcmVtaXNlLCBtZXRhQXNzZXJ0aW9ucywgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgY29uc3QgbWV0YUFzc2VydGlvbiA9IHBydW5lKG1ldGFBc3NlcnRpb25zLCAobWV0YUFzc2VydGlvbikgPT4ge1xuICAgIGNvbnN0IG1ldGFTdWJwcm9vZk5vZGUgPSBtZXRhQXNzZXJ0aW9uLmdldE1ldGFTdWJwcm9vZk5vZGUoKSxcbiAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFBc3NlcnRpb24uZ2V0TWV0YXN0YXRlbWVudE5vZGUoKVxuXG4gICAgaWYgKG1ldGFTdWJwcm9vZk5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFTdWJQcm9vZk1hdGNoZXMgPSBwcmVtaXNlLm1hdGNoTWV0YVN1YnByb29mTm9kZShtZXRhU3VicHJvb2ZOb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgIGlmICghbWV0YVN1YlByb29mTWF0Y2hlcykgeyAgLy8vXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChtZXRhc3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgbWV0YXN0YXRlbWVudE1hdGNoZXMgPSBwcmVtaXNlLm1hdGNoTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlcykgeyAgLy8vXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICB9KSB8fCBudWxsO1xuXG4gIGNvbnN0IHByZW1pc2VNYXRjaGVzID0gKG1ldGFBc3NlcnRpb24gIT09IG51bGwpO1xuXG4gIHJldHVybiBwcmVtaXNlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlcyhwcmVtaXNlLCBtZXRhQXNzZXJ0aW9ucywgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgY29uc3QgcHJlbWlzZXNNYXRjaGVzID0gcHJlbWlzZS5ldmVyeSgocHJlbWlzZSkgPT4ge1xuICAgIGNvbnN0IHByZW1pc2VNYXRjaGVzID0gbWF0Y2hQcmVtaXNlKHByZW1pc2UsIG1ldGFBc3NlcnRpb25zLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICBpZiAocHJlbWlzZU1hdGNoZXMpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHByZW1pc2VzTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hDb25jbHVzaW9uKGNvbmNsdXNpb24sIG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBjb25zdCBub25UZXJtaW5hbE5vZGVNYXRjaGVzID0gY29uY2x1c2lvbi5tYXRjaE1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyksXG4gICAgICAgIGNvbmNsdXNpb25NYXRjaGVzID0gbm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG5cbiAgcmV0dXJuIGNvbmNsdXNpb25NYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaFByZW1pc2VzQW5kQ29uY2x1c2lvbihwcmVtaXNlcywgY29uY2x1c2lvbiwgbWV0YUFzc2VydGlvbnMsIG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gIGxldCBwcmVtaXNlc01hdGNoQ29uY2x1c2lvbiA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFTdWJzdGl0dXRpb25zID0gW10sXG4gICAgICAgIHByZW1pc2VzTWF0Y2hlcyA9IG1hdGNoUHJlbWlzZXMocHJlbWlzZXMsIG1ldGFBc3NlcnRpb25zLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgaWYgKHByZW1pc2VzTWF0Y2hlcykge1xuICAgIGNvbnN0IGNvbmNsdXNpb25NYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uKGNvbmNsdXNpb24sIG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICBwcmVtaXNlc01hdGNoQ29uY2x1c2lvbiA9IGNvbmNsdXNpb25NYXRjaGVzOyAgLy8vXG4gIH1cblxuICByZXR1cm4gcHJlbWlzZXNNYXRjaENvbmNsdXNpb247XG59XG4iXSwibmFtZXMiOlsiUnVsZSIsImxhYmVscyIsInByZW1pc2VzIiwiY29uY2x1c2lvbiIsImdldExhYmVscyIsImdldFByZW1pc2VzIiwiZ2V0Q29uY2x1c2lvbiIsIm1hdGNoTGFiZWxOYW1lIiwibGFiZWxOYW1lIiwibWF0Y2hlc0xhYmVsTmFtZSIsInNvbWUiLCJsYWJlbCIsIm5hbWUiLCJsYWJlbE1hdGNoZXNOYW1lIiwibWF0Y2hOYW1lIiwibWF0Y2hNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhcHJvb2ZDb250ZXh0IiwibWV0YXN0YXRlbWVudE5hdGNoZXMiLCJwcmVtaXNlc0xlbmd0aCIsImxlbmd0aCIsIm1ldGFTdWJzdGl0dXRpb25zIiwiY29uY2x1c2lvbk1hdGNoZXMiLCJtYXRjaENvbmNsdXNpb24iLCJtZXRhQXNzZXJ0aW9ucyIsImdldE1ldGFBc3NlcnRpb25zIiwic29tZVN1YkFycmF5IiwicHJlbWlzZXNNYXRjaENvbmNsdXNpb24iLCJtYXRjaFByZW1pc2VzQW5kQ29uY2x1c2lvbiIsInRvSlNPTiIsImxhYmVsc0pTT04iLCJtYXAiLCJsYWJlbEpTT04iLCJwcmVtaXNlc0pTT04iLCJwcmVtaXNlIiwicHJlbWlzZUpTT04iLCJjb25jbHVzaW9uSlNPTiIsImtpbmQiLCJSVUxFX0tJTkQiLCJqc29uIiwiZnJvbUpTT04iLCJyZWxlYXNlQ29udGV4dCIsInJ1bGUiLCJMYWJlbCIsIlByZW1pc2UiLCJDb25jbHVzaW9uIiwiZnJvbUxhYmVsc1ByZW1pc2VzQW5kQ29uY2x1c2lvbiIsIm1hdGNoUHJlbWlzZSIsIm1ldGFBc3NlcnRpb24iLCJwcnVuZSIsIm1ldGFTdWJwcm9vZk5vZGUiLCJnZXRNZXRhU3VicHJvb2ZOb2RlIiwiZ2V0TWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhU3ViUHJvb2ZNYXRjaGVzIiwibWF0Y2hNZXRhU3VicHJvb2ZOb2RlIiwibWV0YXN0YXRlbWVudE1hdGNoZXMiLCJtYXRjaE1ldGFzdGF0ZW1lbnROb2RlIiwicHJlbWlzZU1hdGNoZXMiLCJtYXRjaFByZW1pc2VzIiwicHJlbWlzZXNNYXRjaGVzIiwiZXZlcnki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
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTGFiZWwgZnJvbSBcIi4vbGFiZWxcIjtcbmltcG9ydCBQcmVtaXNlIGZyb20gXCIuL3ByZW1pc2VcIjtcbmltcG9ydCBDb25jbHVzaW9uIGZyb20gXCIuL2NvbmNsdXNpb25cIjtcblxuaW1wb3J0IHsgcHJ1bmUgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IFJVTEVfS0lORCB9IGZyb20gXCIuL2tpbmRzXCI7XG5pbXBvcnQgeyBzb21lU3ViQXJyYXkgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUnVsZSB7XG4gIGNvbnN0cnVjdG9yKGxhYmVscywgcHJlbWlzZXMsIGNvbmNsdXNpb24pIHtcbiAgICB0aGlzLmxhYmVscyA9IGxhYmVscztcbiAgICB0aGlzLnByZW1pc2VzID0gcHJlbWlzZXM7XG4gICAgdGhpcy5jb25jbHVzaW9uID0gY29uY2x1c2lvbjtcbiAgfVxuXG4gIGdldExhYmVscygpIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbHM7XG4gIH1cblxuICBnZXRQcmVtaXNlcygpIHtcbiAgICByZXR1cm4gdGhpcy5wcmVtaXNlcztcbiAgfVxuXG4gIGdldENvbmNsdXNpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uY2x1c2lvbjtcbiAgfVxuXG4gIG1hdGNoTGFiZWxOYW1lKGxhYmVsTmFtZSkge1xuICAgIGNvbnN0IG1hdGNoZXNMYWJlbE5hbWUgPSB0aGlzLmxhYmVscy5zb21lKChsYWJlbCkgPT4ge1xuICAgICAgY29uc3QgbmFtZSA9IGxhYmVsTmFtZSwgLy8vXG4gICAgICAgICAgICBsYWJlbE1hdGNoZXNOYW1lID0gbGFiZWwubWF0Y2hOYW1lKG5hbWUpO1xuXG4gICAgICBpZiAobGFiZWxNYXRjaGVzTmFtZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBtYXRjaGVzTGFiZWxOYW1lO1xuICB9XG5cbiAgbWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhcHJvb2ZDb250ZXh0KSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnROYXRjaGVzO1xuXG4gICAgY29uc3QgcHJlbWlzZXNMZW5ndGggPSB0aGlzLnByZW1pc2VzLmxlbmd0aDtcblxuICAgIGlmIChwcmVtaXNlc0xlbmd0aCA9PT0gMCkge1xuICAgICAgY29uc3QgbWV0YVN1YnN0aXR1dGlvbnMgPSBbXSxcbiAgICAgICAgICAgIGNvbmNsdXNpb25NYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uKHRoaXMuY29uY2x1c2lvbiwgbWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgbWV0YXN0YXRlbWVudE5hdGNoZXMgPSBjb25jbHVzaW9uTWF0Y2hlczsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG1ldGFwcm9vZlN0ZXBzID0gbWV0YXByb29mQ29udGV4dC5nZXRNZXRhcHJvb2ZTdGVwcygpO1xuXG4gICAgICBtZXRhc3RhdGVtZW50TmF0Y2hlcyA9IHNvbWVTdWJBcnJheShtZXRhcHJvb2ZTdGVwcywgcHJlbWlzZXNMZW5ndGgsIChtZXRhcHJvb2ZTdGVwcykgPT4ge1xuICAgICAgICBsZXQgcHJlbWlzZXNNYXRjaENvbmNsdXNpb24gPSBmYWxzZTtcblxuICAgICAgICBjb25zdCBtZXRhU3Vic3RpdHV0aW9ucyA9IFtdLFxuICAgICAgICAgICAgICBwcmVtaXNlc01hdGNoZXMgPSBtYXRjaFByZW1pc2VzKHRoaXMucHJlbWlzZXMsIG1ldGFwcm9vZlN0ZXBzLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICAgICAgaWYgKHByZW1pc2VzTWF0Y2hlcykge1xuICAgICAgICAgIGNvbnN0IGNvbmNsdXNpb25NYXRjaGVzID0gbWF0Y2hDb25jbHVzaW9uKHRoaXMuY29uY2x1c2lvbiwgbWV0YXN0YXRlbWVudE5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgICAgIHByZW1pc2VzTWF0Y2hDb25jbHVzaW9uID0gY29uY2x1c2lvbk1hdGNoZXM7ICAvLy9cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwcmVtaXNlc01hdGNoQ29uY2x1c2lvbikge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5hdGNoZXM7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgbGFiZWxzSlNPTiA9IHRoaXMubGFiZWxzLm1hcCgobGFiZWwpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsSlNPTiA9IGxhYmVsLnRvSlNPTigpO1xuXG4gICAgICAgICAgICByZXR1cm4gbGFiZWxKU09OO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIHByZW1pc2VzSlNPTiA9IHRoaXMucHJlbWlzZXMubWFwKChwcmVtaXNlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwcmVtaXNlSlNPTiA9IHByZW1pc2UudG9KU09OKCk7XG5cbiAgICAgICAgICAgIHJldHVybiBwcmVtaXNlSlNPTjtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBjb25jbHVzaW9uSlNPTiA9IHRoaXMuY29uY2x1c2lvbi50b0pTT04oKSxcbiAgICAgICAgICBraW5kID0gUlVMRV9LSU5ELFxuICAgICAgICAgIGxhYmVscyA9IGxhYmVsc0pTT04sICAvLy9cbiAgICAgICAgICBwcmVtaXNlcyA9IHByZW1pc2VzSlNPTiwgIC8vL1xuICAgICAgICAgIGNvbmNsdXNpb24gPSBjb25jbHVzaW9uSlNPTiwgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBraW5kLFxuICAgICAgICAgICAgbGFiZWxzLFxuICAgICAgICAgICAgcHJlbWlzZXMsXG4gICAgICAgICAgICBjb25jbHVzaW9uXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIHJlbGVhc2VDb250ZXh0KSB7XG4gICAgbGV0IHJ1bGU7XG5cbiAgICBsZXQgeyBsYWJlbHMgfSA9IGpzb247XG5cbiAgICBjb25zdCBsYWJlbHNKU09OID0gbGFiZWxzOyAgLy8vXG5cbiAgICBsYWJlbHMgPSBsYWJlbHNKU09OLm1hcCgobGFiZWxKU09OKSA9PiB7XG4gICAgICBjb25zdCBqc29uID0gbGFiZWxKU09OLCAvLy9cbiAgICAgICAgICAgIGxhYmVsID0gTGFiZWwuZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgICByZXR1cm4gbGFiZWw7XG4gICAgfSk7XG5cbiAgICBsZXQgeyBwcmVtaXNlcyB9ID0ganNvbjtcblxuICAgIGNvbnN0IHByZW1pc2VzSlNPTiA9IHByZW1pc2VzOyAgLy8vXG5cbiAgICBwcmVtaXNlcyA9IHByZW1pc2VzSlNPTi5tYXAoKHByZW1pc2VKU09OKSA9PiB7XG4gICAgICBjb25zdCBqc29uID0gcHJlbWlzZUpTT04sIC8vL1xuICAgICAgICAgICAgcHJlbWlzZSA9IFByZW1pc2UuZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgICByZXR1cm4gcHJlbWlzZTtcbiAgICB9KTtcblxuICAgIGxldCB7IGNvbmNsdXNpb24gfSA9IGpzb247XG5cbiAgICBjb25zdCBjb25jbHVzaW9uSlNPTiA9IGNvbmNsdXNpb247ICAvLy9cblxuICAgIGpzb24gPSBjb25jbHVzaW9uSlNPTjsgIC8vL1xuXG4gICAgY29uY2x1c2lvbiA9IENvbmNsdXNpb24uZnJvbUpTT04oanNvbiwgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgcnVsZSA9IG5ldyBSdWxlKGxhYmVscywgcHJlbWlzZXMsIGNvbmNsdXNpb24pO1xuXG4gICAgcmV0dXJuIHJ1bGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbUxhYmVsc1ByZW1pc2VzQW5kQ29uY2x1c2lvbihsYWJlbHMsIHByZW1pc2VzLCBjb25jbHVzaW9uKSB7XG4gICAgY29uc3QgcnVsZSA9IG5ldyBSdWxlKGxhYmVscywgcHJlbWlzZXMsIGNvbmNsdXNpb24pO1xuXG4gICAgcmV0dXJuIHJ1bGU7XG4gIH1cbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlKHByZW1pc2UsIG1ldGFwcm9vZlN0ZXBzLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBjb25zdCBtZXRhcHJvb2ZTdGVwID0gcHJ1bmUobWV0YXByb29mU3RlcHMsIChtZXRhcHJvb2ZTdGVwKSA9PiB7XG4gICAgY29uc3QgbWV0YVN1YnByb29mTm9kZSA9IG1ldGFwcm9vZlN0ZXAuZ2V0TWV0YVN1YnByb29mTm9kZSgpLFxuICAgICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXByb29mU3RlcC5nZXRNZXRhc3RhdGVtZW50Tm9kZSgpXG5cbiAgICBpZiAobWV0YVN1YnByb29mTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgbWV0YVN1YlByb29mTWF0Y2hlcyA9IHByZW1pc2UubWF0Y2hNZXRhU3VicHJvb2ZOb2RlKG1ldGFTdWJwcm9vZk5vZGUsIG1ldGFTdWJzdGl0dXRpb25zKTtcblxuICAgICAgaWYgKCFtZXRhU3ViUHJvb2ZNYXRjaGVzKSB7ICAvLy9cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50TWF0Y2hlcyA9IHByZW1pc2UubWF0Y2hNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSwgbWV0YVN1YnN0aXR1dGlvbnMpO1xuXG4gICAgICBpZiAoIW1ldGFzdGF0ZW1lbnRNYXRjaGVzKSB7ICAvLy9cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9KSB8fCBudWxsO1xuXG4gIGNvbnN0IHByZW1pc2VNYXRjaGVzID0gKG1ldGFwcm9vZlN0ZXAgIT09IG51bGwpO1xuXG4gIHJldHVybiBwcmVtaXNlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcmVtaXNlcyhwcmVtaXNlLCBtZXRhcHJvb2ZTdGVwcywgbWV0YVN1YnN0aXR1dGlvbnMpIHtcbiAgY29uc3QgcHJlbWlzZXNNYXRjaGVzID0gcHJlbWlzZS5ldmVyeSgocHJlbWlzZSkgPT4ge1xuICAgIGNvbnN0IHByZW1pc2VNYXRjaGVzID0gbWF0Y2hQcmVtaXNlKHByZW1pc2UsIG1ldGFwcm9vZlN0ZXBzLCBtZXRhU3Vic3RpdHV0aW9ucyk7XG5cbiAgICBpZiAocHJlbWlzZU1hdGNoZXMpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHByZW1pc2VzTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hDb25jbHVzaW9uKGNvbmNsdXNpb24sIG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhU3Vic3RpdHV0aW9ucykge1xuICBjb25zdCBub25UZXJtaW5hbE5vZGVNYXRjaGVzID0gY29uY2x1c2lvbi5tYXRjaE1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhU3Vic3RpdHV0aW9ucyksXG4gICAgICAgIGNvbmNsdXNpb25NYXRjaGVzID0gbm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG5cbiAgcmV0dXJuIGNvbmNsdXNpb25NYXRjaGVzO1xufVxuIl0sIm5hbWVzIjpbIlJ1bGUiLCJsYWJlbHMiLCJwcmVtaXNlcyIsImNvbmNsdXNpb24iLCJnZXRMYWJlbHMiLCJnZXRQcmVtaXNlcyIsImdldENvbmNsdXNpb24iLCJtYXRjaExhYmVsTmFtZSIsImxhYmVsTmFtZSIsIm1hdGNoZXNMYWJlbE5hbWUiLCJzb21lIiwibGFiZWwiLCJuYW1lIiwibGFiZWxNYXRjaGVzTmFtZSIsIm1hdGNoTmFtZSIsIm1hdGNoTWV0YXN0YXRlbWVudCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXByb29mQ29udGV4dCIsIm1ldGFzdGF0ZW1lbnROYXRjaGVzIiwicHJlbWlzZXNMZW5ndGgiLCJsZW5ndGgiLCJtZXRhU3Vic3RpdHV0aW9ucyIsImNvbmNsdXNpb25NYXRjaGVzIiwibWF0Y2hDb25jbHVzaW9uIiwibWV0YXByb29mU3RlcHMiLCJnZXRNZXRhcHJvb2ZTdGVwcyIsInNvbWVTdWJBcnJheSIsInByZW1pc2VzTWF0Y2hDb25jbHVzaW9uIiwicHJlbWlzZXNNYXRjaGVzIiwibWF0Y2hQcmVtaXNlcyIsInRvSlNPTiIsImxhYmVsc0pTT04iLCJtYXAiLCJsYWJlbEpTT04iLCJwcmVtaXNlc0pTT04iLCJwcmVtaXNlIiwicHJlbWlzZUpTT04iLCJjb25jbHVzaW9uSlNPTiIsImtpbmQiLCJSVUxFX0tJTkQiLCJqc29uIiwiZnJvbUpTT04iLCJyZWxlYXNlQ29udGV4dCIsInJ1bGUiLCJMYWJlbCIsIlByZW1pc2UiLCJDb25jbHVzaW9uIiwiZnJvbUxhYmVsc1ByZW1pc2VzQW5kQ29uY2x1c2lvbiIsIm1hdGNoUHJlbWlzZSIsIm1ldGFwcm9vZlN0ZXAiLCJwcnVuZSIsIm1ldGFTdWJwcm9vZk5vZGUiLCJnZXRNZXRhU3VicHJvb2ZOb2RlIiwiZ2V0TWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhU3ViUHJvb2ZNYXRjaGVzIiwibWF0Y2hNZXRhU3VicHJvb2ZOb2RlIiwibWV0YXN0YXRlbWVudE1hdGNoZXMiLCJtYXRjaE1ldGFzdGF0ZW1lbnROb2RlIiwicHJlbWlzZU1hdGNoZXMiLCJldmVyeSIsIm5vblRlcm1pbmFsTm9kZU1hdGNoZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBVXFCQTs7OzBEQVJIOzREQUNFOytEQUNHO3FCQUVEO3FCQUNJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR1gsSUFBQSxBQUFNQSxxQkF5SWxCLEFBeklZO2FBQU1BLEtBQ1BDLE1BQU0sRUFBRUMsUUFBUSxFQUFFQyxVQUFVOzhCQURyQkg7UUFFakIsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElB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
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return MetaproofStep;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _array = require("../utilities/array");
|
|
12
|
+
var _query = require("../utilities/query");
|
|
13
|
+
var _node = require("../utilities/node");
|
|
14
|
+
function _classCallCheck(instance, Constructor) {
|
|
15
|
+
if (!(instance instanceof Constructor)) {
|
|
16
|
+
throw new TypeError("Cannot call a class as a function");
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
function _defineProperties(target, props) {
|
|
20
|
+
for(var i = 0; i < props.length; i++){
|
|
21
|
+
var descriptor = props[i];
|
|
22
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
23
|
+
descriptor.configurable = true;
|
|
24
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
25
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
function _createClass(Constructor, protoProps, staticProps) {
|
|
29
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
30
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
31
|
+
return Constructor;
|
|
32
|
+
}
|
|
33
|
+
var metastatementNodesQuery = (0, _query.nodesQuery)("/metaSubproofAssertion/metastatement"), metaSubproofAssertionNodeQuery = (0, _query.nodeQuery)("/metastatement/metaSubproofAssertion"), qualifiedOrUnqualifiedMetastatementMetastatementNodesQuery = (0, _query.nodesQuery)("/metaSubproof/qualifiedMetastatement|unqualifiedMetastatement/metastatement!");
|
|
34
|
+
var MetaproofStep = /*#__PURE__*/ function() {
|
|
35
|
+
function MetaproofStep(metaSubproofNode, metastatementNode) {
|
|
36
|
+
_classCallCheck(this, MetaproofStep);
|
|
37
|
+
this.metaSubproofNode = metaSubproofNode;
|
|
38
|
+
this.metastatementNode = metastatementNode;
|
|
39
|
+
}
|
|
40
|
+
_createClass(MetaproofStep, [
|
|
41
|
+
{
|
|
42
|
+
key: "getMetaSubproofNode",
|
|
43
|
+
value: function getMetaSubproofNode() {
|
|
44
|
+
return this.metaSubproofNode;
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
key: "getMetastatementNode",
|
|
49
|
+
value: function getMetastatementNode() {
|
|
50
|
+
return this.metastatementNode;
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
key: "matchMetastatement",
|
|
55
|
+
value: function matchMetastatement(metastatementNode) {
|
|
56
|
+
var metastatementMatches;
|
|
57
|
+
var metaSubproofAssertionNode = metaSubproofAssertionNodeQuery(metastatementNode);
|
|
58
|
+
if (metaSubproofAssertionNode !== null) {
|
|
59
|
+
var metaSubproofAssertionMatches = this.matchMetaSubproofAssertion(metaSubproofAssertionNode);
|
|
60
|
+
metastatementMatches = metaSubproofAssertionMatches; ///
|
|
61
|
+
} else {
|
|
62
|
+
var metastatementsMatch = this.matchMetastatements(metastatementNode);
|
|
63
|
+
metastatementMatches = metastatementsMatch; //
|
|
64
|
+
}
|
|
65
|
+
return metastatementMatches;
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
key: "matchMetastatements",
|
|
70
|
+
value: function matchMetastatements(metastatementNode) {
|
|
71
|
+
var metastatementsMatch = false;
|
|
72
|
+
if (this.metastatementNode !== null) {
|
|
73
|
+
var nonTerminalNodeA = metastatementNode, nonTerminalNodeB = this.metastatementNode, bracketedNodeMatches = (0, _node.matchBracketedNonTerminalNode)(nonTerminalNodeA, nonTerminalNodeB), metastatementNodeMatches = bracketedNodeMatches; ///
|
|
74
|
+
return metastatementNodeMatches;
|
|
75
|
+
}
|
|
76
|
+
return metastatementsMatch;
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
key: "matchMetaSubproofAssertion",
|
|
81
|
+
value: function matchMetaSubproofAssertion(metaSubproofAssertionNode) {
|
|
82
|
+
var metaSubproofAssertionMatches = false;
|
|
83
|
+
if (this.metaSubproofNode !== null) {
|
|
84
|
+
var metaSubproofAssertionMetastatementNodes = metastatementNodesQuery(metaSubproofAssertionNode), firstMetaSubproofAssertionMetastatementNode = (0, _array.first)(metaSubproofAssertionMetastatementNodes), qualifiedOrUnqualifiedMetastatementMetastatementNodes = qualifiedOrUnqualifiedMetastatementMetastatementNodesQuery(this.metaSubproofNode), firstQualifiedOrUnqualifiedMetastatementMetastatementNode = (0, _array.first)(qualifiedOrUnqualifiedMetastatementMetastatementNodes);
|
|
85
|
+
var nonTerminalNodeA = firstMetaSubproofAssertionMetastatementNode, nonTerminalNodeB = firstQualifiedOrUnqualifiedMetastatementMetastatementNode, bracketedNodeMatches = (0, _node.matchBracketedNonTerminalNode)(nonTerminalNodeA, nonTerminalNodeB);
|
|
86
|
+
if (bracketedNodeMatches) {
|
|
87
|
+
var secondMetaSubproofAssertionMetastatementNode = (0, _array.second)(metaSubproofAssertionMetastatementNodes), secondQualifiedOrUnqualifiedMetastatementMetastatementNode = (0, _array.second)(qualifiedOrUnqualifiedMetastatementMetastatementNodes);
|
|
88
|
+
var nonTerminalNodeA1 = secondMetaSubproofAssertionMetastatementNode, nonTerminalNodeB1 = secondQualifiedOrUnqualifiedMetastatementMetastatementNode, bracketedNodeMatches1 = (0, _node.matchBracketedNonTerminalNode)(nonTerminalNodeA1, nonTerminalNodeB1);
|
|
89
|
+
metaSubproofAssertionMatches = bracketedNodeMatches1; ///
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return metaSubproofAssertionMatches;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
], [
|
|
96
|
+
{
|
|
97
|
+
key: "fromMetaSubproofNode",
|
|
98
|
+
value: function fromMetaSubproofNode(metaSubproofNode) {
|
|
99
|
+
var metastatementNode = null, metaProofStep = new MetaproofStep(metaSubproofNode, metastatementNode);
|
|
100
|
+
return metaProofStep;
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
key: "fromMetastatementNode",
|
|
105
|
+
value: function fromMetastatementNode(metastatementNode) {
|
|
106
|
+
var metaSubproofNode = null, metaProofStep = new MetaproofStep(metaSubproofNode, metastatementNode);
|
|
107
|
+
return metaProofStep;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
]);
|
|
111
|
+
return MetaproofStep;
|
|
112
|
+
}();
|
|
113
|
+
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGVwL21ldGFwcm9vZi5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgZmlyc3QsIHNlY29uZCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IG1hdGNoQnJhY2tldGVkTm9uVGVybWluYWxOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9ub2RlXCI7XG5cbmNvbnN0IG1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9tZXRhU3VicHJvb2ZBc3NlcnRpb24vbWV0YXN0YXRlbWVudFwiKSxcbiAgICAgIG1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhc3RhdGVtZW50L21ldGFTdWJwcm9vZkFzc2VydGlvblwiKSxcbiAgICAgIHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL21ldGFTdWJwcm9vZi9xdWFsaWZpZWRNZXRhc3RhdGVtZW50fHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWV0YXByb29mU3RlcCB7XG4gIGNvbnN0cnVjdG9yKG1ldGFTdWJwcm9vZk5vZGUsIG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgdGhpcy5tZXRhU3VicHJvb2ZOb2RlID0gbWV0YVN1YnByb29mTm9kZTtcbiAgICB0aGlzLm1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBnZXRNZXRhU3VicHJvb2ZOb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFTdWJwcm9vZk5vZGU7XG4gIH1cblxuICBnZXRNZXRhc3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoTWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50TWF0Y2hlcztcblxuICAgIGNvbnN0IG1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGUgPSBtZXRhU3VicHJvb2ZBc3NlcnRpb25Ob2RlUXVlcnkobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKG1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFTdWJwcm9vZkFzc2VydGlvbk1hdGNoZXMgPSB0aGlzLm1hdGNoTWV0YVN1YnByb29mQXNzZXJ0aW9uKG1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGUpO1xuXG4gICAgICBtZXRhc3RhdGVtZW50TWF0Y2hlcyA9IG1ldGFTdWJwcm9vZkFzc2VydGlvbk1hdGNoZXM7ICAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgbWV0YXN0YXRlbWVudHNNYXRjaCA9IHRoaXMubWF0Y2hNZXRhc3RhdGVtZW50cyhtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIG1ldGFzdGF0ZW1lbnRNYXRjaGVzID0gbWV0YXN0YXRlbWVudHNNYXRjaDsgLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE1hdGNoZXM7XG4gIH1cblxuICBtYXRjaE1ldGFzdGF0ZW1lbnRzKG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnRzTWF0Y2ggPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLm1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBID0gbWV0YXN0YXRlbWVudE5vZGUsIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQiA9IHRoaXMubWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICAgIGJyYWNrZXRlZE5vZGVNYXRjaGVzID0gbWF0Y2hCcmFja2V0ZWROb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiksXG4gICAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBicmFja2V0ZWROb2RlTWF0Y2hlczsgIC8vL1xuXG4gICAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzO1xuICAgIH1cblxuICAgIHJldHVybiBtZXRhc3RhdGVtZW50c01hdGNoO1xuICB9XG5cbiAgbWF0Y2hNZXRhU3VicHJvb2ZBc3NlcnRpb24obWV0YVN1YnByb29mQXNzZXJ0aW9uTm9kZSkge1xuICAgIGxldCBtZXRhU3VicHJvb2ZBc3NlcnRpb25NYXRjaGVzID0gZmFsc2U7XG5cbiAgICBpZiAodGhpcy5tZXRhU3VicHJvb2ZOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZXMgPSBtZXRhc3RhdGVtZW50Tm9kZXNRdWVyeShtZXRhU3VicHJvb2ZBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICAgIGZpcnN0TWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUgPSBmaXJzdChtZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZXMpLFxuICAgICAgICAgICAgcXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZXMgPSBxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5KHRoaXMubWV0YVN1YnByb29mTm9kZSksXG4gICAgICAgICAgICBmaXJzdFF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGUgPSBmaXJzdChxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2Rlcyk7XG5cbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSBmaXJzdE1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gZmlyc3RRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICAgIGJyYWNrZXRlZE5vZGVNYXRjaGVzID0gbWF0Y2hCcmFja2V0ZWROb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQik7XG5cbiAgICAgIGlmIChicmFja2V0ZWROb2RlTWF0Y2hlcykge1xuICAgICAgICBjb25zdCBzZWNvbmRNZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZSA9IHNlY29uZChtZXRhU3VicHJvb2ZBc3NlcnRpb25NZXRhc3RhdGVtZW50Tm9kZXMpLFxuICAgICAgICAgICAgICBzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlID0gc2Vjb25kKHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzKTtcblxuICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBID0gc2Vjb25kTWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUsIC8vL1xuICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gc2Vjb25kUXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRNZXRhc3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgICAgIGJyYWNrZXRlZE5vZGVNYXRjaGVzID0gbWF0Y2hCcmFja2V0ZWROb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQik7XG5cbiAgICAgICAgbWV0YVN1YnByb29mQXNzZXJ0aW9uTWF0Y2hlcyA9IGJyYWNrZXRlZE5vZGVNYXRjaGVzOyAvLy9cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YVN1YnByb29mQXNzZXJ0aW9uTWF0Y2hlcztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTWV0YVN1YnByb29mTm9kZShtZXRhU3VicHJvb2ZOb2RlKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIG1ldGFQcm9vZlN0ZXAgPSBuZXcgTWV0YXByb29mU3RlcChtZXRhU3VicHJvb2ZOb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gbWV0YVByb29mU3RlcDtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpIHtcbiAgICBjb25zdCBtZXRhU3VicHJvb2ZOb2RlID0gbnVsbCxcbiAgICAgICAgICBtZXRhUHJvb2ZTdGVwID0gbmV3IE1ldGFwcm9vZlN0ZXAobWV0YVN1YnByb29mTm9kZSwgbWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIG1ldGFQcm9vZlN0ZXA7XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiTWV0YXByb29mU3RlcCIsIm1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsIm1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzUXVlcnkiLCJtZXRhU3VicHJvb2ZOb2RlIiwibWV0YXN0YXRlbWVudE5vZGUiLCJnZXRNZXRhU3VicHJvb2ZOb2RlIiwiZ2V0TWV0YXN0YXRlbWVudE5vZGUiLCJtYXRjaE1ldGFzdGF0ZW1lbnQiLCJtZXRhc3RhdGVtZW50TWF0Y2hlcyIsIm1ldGFTdWJwcm9vZkFzc2VydGlvbk5vZGUiLCJtZXRhU3VicHJvb2ZBc3NlcnRpb25NYXRjaGVzIiwibWF0Y2hNZXRhU3VicHJvb2ZBc3NlcnRpb24iLCJtZXRhc3RhdGVtZW50c01hdGNoIiwibWF0Y2hNZXRhc3RhdGVtZW50cyIsIm5vblRlcm1pbmFsTm9kZUEiLCJub25UZXJtaW5hbE5vZGVCIiwiYnJhY2tldGVkTm9kZU1hdGNoZXMiLCJtYXRjaEJyYWNrZXRlZE5vblRlcm1pbmFsTm9kZSIsIm1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1ldGFTdWJwcm9vZkFzc2VydGlvbk1ldGFzdGF0ZW1lbnROb2RlcyIsImZpcnN0TWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUiLCJmaXJzdCIsInF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50TWV0YXN0YXRlbWVudE5vZGVzIiwiZmlyc3RRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlIiwic2Vjb25kTWV0YVN1YnByb29mQXNzZXJ0aW9uTWV0YXN0YXRlbWVudE5vZGUiLCJzZWNvbmQiLCJzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE1ldGFzdGF0ZW1lbnROb2RlIiwiZnJvbU1ldGFTdWJwcm9vZk5vZGUiLCJtZXRhUHJvb2ZTdGVwIiwiZnJvbU1ldGFzdGF0ZW1lbnROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVVxQkE7OztxQkFSUztxQkFDUTtvQkFDUTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsSUFBTUMsMEJBQTBCQyxJQUFBQSxpQkFBVSxFQUFDLHlDQUNyQ0MsaUNBQWlDQyxJQUFBQSxnQkFBUyxFQUFDLHlDQUMzQ0MsNkRBQTZESCxJQUFBQSxpQkFBVSxFQUFDO0FBRS9ELElBQUEsQUFBTUYsOEJBQU47YUFBTUEsY0FDUE0sZ0JBQWdCLEVBQUVDLGlCQUFpQjs4QkFENUJQO1FBRWpCLElBQUksQ0FBQ00sZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUksQ0FBQ0MsaUJBQWlCLEdB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
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return ProofStep;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function _classCallCheck(instance, Constructor) {
|
|
12
|
+
if (!(instance instanceof Constructor)) {
|
|
13
|
+
throw new TypeError("Cannot call a class as a function");
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
function _defineProperties(target, props) {
|
|
17
|
+
for(var i = 0; i < props.length; i++){
|
|
18
|
+
var descriptor = props[i];
|
|
19
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
20
|
+
descriptor.configurable = true;
|
|
21
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
22
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function _createClass(Constructor, protoProps, staticProps) {
|
|
26
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
27
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
28
|
+
return Constructor;
|
|
29
|
+
}
|
|
30
|
+
var ProofStep = /*#__PURE__*/ function() {
|
|
31
|
+
function ProofStep(subproofNode, statementNode) {
|
|
32
|
+
_classCallCheck(this, ProofStep);
|
|
33
|
+
this.subproofNode = subproofNode;
|
|
34
|
+
this.statementNode = statementNode;
|
|
35
|
+
}
|
|
36
|
+
_createClass(ProofStep, [
|
|
37
|
+
{
|
|
38
|
+
key: "getSubproofNode",
|
|
39
|
+
value: function getSubproofNode() {
|
|
40
|
+
return this.subproofNode;
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
key: "getStatementNode",
|
|
45
|
+
value: function getStatementNode() {
|
|
46
|
+
return this.statementNode;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
], [
|
|
50
|
+
{
|
|
51
|
+
key: "fromSubproofNode",
|
|
52
|
+
value: function fromSubproofNode(subproofNode) {
|
|
53
|
+
var statementNode = null, metaProofStep = new ProofStep(subproofNode, statementNode);
|
|
54
|
+
return metaProofStep;
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
key: "fromStatementNode",
|
|
59
|
+
value: function fromStatementNode(statementNode) {
|
|
60
|
+
var subproofNode = null, metaProofStep = new ProofStep(subproofNode, statementNode);
|
|
61
|
+
return metaProofStep;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
]);
|
|
65
|
+
return ProofStep;
|
|
66
|
+
}();
|
|
67
|
+
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGVwL3Byb29mLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQcm9vZlN0ZXAge1xuICBjb25zdHJ1Y3RvcihzdWJwcm9vZk5vZGUsIHN0YXRlbWVudE5vZGUpIHtcbiAgICB0aGlzLnN1YnByb29mTm9kZSA9IHN1YnByb29mTm9kZTtcbiAgICB0aGlzLnN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0U3VicHJvb2ZOb2RlKCkge1xuICAgIHJldHVybiB0aGlzLnN1YnByb29mTm9kZTtcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3VicHJvb2ZOb2RlKHN1YnByb29mTm9kZSkge1xuICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIG1ldGFQcm9vZlN0ZXAgPSBuZXcgUHJvb2ZTdGVwKHN1YnByb29mTm9kZSwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gbWV0YVByb29mU3RlcDtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKSB7XG4gICAgY29uc3Qgc3VicHJvb2ZOb2RlID0gbnVsbCxcbiAgICAgICAgICBtZXRhUHJvb2ZTdGVwID0gbmV3IFByb29mU3RlcChzdWJwcm9vZk5vZGUsIHN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIG1ldGFQcm9vZlN0ZXA7XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiUHJvb2ZTdGVwIiwic3VicHJvb2ZOb2RlIiwic3RhdGVtZW50Tm9kZSIsImdldFN1YnByb29mTm9kZSIsImdldFN0YXRlbWVudE5vZGUiLCJmcm9tU3VicHJvb2ZOb2RlIiwibWV0YVByb29mU3RlcCIsImZyb21TdGF0ZW1lbnROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDBCQUFOO2FBQU1BLFVBQ1BDLFlBQVksRUFBRUMsYUFBYTs4QkFEcEJGO1FBRWpCLElBQUksQ0FBQ0MsWUFBWSxHQUFHQTtRQUNwQixJQUFJLENBQUNDLGFBQWEsR0FBR0E7O2lCQUhKRjs7WUFNbkJHLEtBQUFBO21CQUFBQSxTQUFBQSxrQkFBa0I7Z0JBQ2hCLE9BQU8sSUFBSSxDQUFDRixZQUFZO1lBQzFCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLG1CQUFtQjtnQkFDakIsT0FBTyxJQUFJLENBQUNGLGFBQWE7WUFDM0I7Ozs7WUFFT0csS0FBQUE7bUJBQVAsU0FBT0EsaUJBQWlCSixZQUFZLEVBQUU7Z0JBQ3BDLElBQU1DLGdCQUFnQixJQUFJLEVBQ3BCSSxnQkFBZ0IsSUFoQkxOLFVBZ0JtQkMsY0FBY0M7Z0JBRWxELE9BQU9JO1lBQ1Q7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxrQkFBa0JMLGFBQWEsRUFBRTtnQkFDdEMsSUFBTUQsZUFBZSxJQUFJLEVBQ25CSyxnQkFBZ0IsSUF2QkxOLFVBdUJtQkMsY0FBY0M7Z0JBRWxELE9BQU9JO1lBQ1Q7OztXQTFCbUJOIn0=
|
package/lib/substitution.js
CHANGED
|
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return Substitution;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var
|
|
11
|
+
var _node = require("./utilities/node");
|
|
12
12
|
function _classCallCheck(instance, Constructor) {
|
|
13
13
|
if (!(instance instanceof Constructor)) {
|
|
14
14
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -51,73 +51,33 @@ var Substitution = /*#__PURE__*/ function() {
|
|
|
51
51
|
key: "matchNodes",
|
|
52
52
|
value: function matchNodes(nodes) {
|
|
53
53
|
var matches;
|
|
54
|
-
var
|
|
55
|
-
matches =
|
|
54
|
+
var nodesA = this.nodes, nodesB = nodes, metaSubstitutionNodesMatch = (0, _node.matchNodes)(nodesA, nodesB);
|
|
55
|
+
matches = metaSubstitutionNodesMatch; ///
|
|
56
56
|
if (!matches) {
|
|
57
|
-
var childNodes = nodes,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
57
|
+
var childNodes = nodes, bracketedChildNode = (0, _node.bracketedChildNodeFromChildNodes)(childNodes);
|
|
58
|
+
if (bracketedChildNode !== null) {
|
|
59
|
+
var nonTerminalNode = bracketedChildNode, childNodes1 = nonTerminalNode.getChildNodes(), nodesB1 = childNodes1, nodesMatch = (0, _node.matchNodes)(nodesA, nodesB1);
|
|
60
|
+
matches = nodesMatch; ///
|
|
61
|
+
}
|
|
62
62
|
}
|
|
63
63
|
return matches;
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
], [
|
|
67
67
|
{
|
|
68
|
-
key: "
|
|
69
|
-
value: function
|
|
70
|
-
var
|
|
71
|
-
if (
|
|
72
|
-
var nonTerminalNode =
|
|
68
|
+
key: "fromMetavariableNameAndNodes",
|
|
69
|
+
value: function fromMetavariableNameAndNodes(variableName, nodes) {
|
|
70
|
+
var bracketedChildNode = (0, _node.bracketedChildNodeFromChildNodes)(nodes);
|
|
71
|
+
if (bracketedChildNode !== null) {
|
|
72
|
+
var nonTerminalNode = bracketedChildNode, childNodes = nonTerminalNode.getChildNodes();
|
|
73
73
|
nodes = childNodes; ///
|
|
74
74
|
}
|
|
75
|
-
var
|
|
76
|
-
return
|
|
75
|
+
var metaSubstitution = new Substitution(variableName, nodes);
|
|
76
|
+
return metaSubstitution;
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
]);
|
|
80
80
|
return Substitution;
|
|
81
81
|
}();
|
|
82
|
-
function matchSubstitutionNode(substitutionNode, node) {
|
|
83
|
-
var substitutionNodeMatches = false;
|
|
84
|
-
var nodeTerminalNode = node.isTerminalNode(), ruleNodeTerminalNode = substitutionNode.isTerminalNode();
|
|
85
|
-
if (nodeTerminalNode === ruleNodeTerminalNode) {
|
|
86
|
-
if (nodeTerminalNode) {
|
|
87
|
-
var terminalNode = node, substitutionTerminalNode = substitutionNode, substitutionTerminalNodeMatches = matchSubstitutionTerminalNode(substitutionTerminalNode, terminalNode);
|
|
88
|
-
substitutionNodeMatches = substitutionTerminalNodeMatches; ///
|
|
89
|
-
} else {
|
|
90
|
-
var nonTerminalNode = node, substitutionNonTerminalNode = substitutionNode, substitutionNonTerminalNodeMatches = matchSubstitutionNonTerminalNode(substitutionNonTerminalNode, nonTerminalNode);
|
|
91
|
-
substitutionNodeMatches = substitutionNonTerminalNodeMatches; ///
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return substitutionNodeMatches;
|
|
95
|
-
}
|
|
96
|
-
function matchSubstitutionNodes(substitutionNodes, nodes) {
|
|
97
|
-
var substitutionNodesMatches = false;
|
|
98
|
-
var nodesLength = nodes.length, substitutionNodesLength = substitutionNodes.length;
|
|
99
|
-
if (nodesLength === substitutionNodesLength) {
|
|
100
|
-
substitutionNodesMatches = nodes.every(function(node, index) {
|
|
101
|
-
var substitutionNode = substitutionNodes[index], substitutionNodeMatches = matchSubstitutionNode(substitutionNode, node);
|
|
102
|
-
if (substitutionNodeMatches) {
|
|
103
|
-
return true;
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
return substitutionNodesMatches;
|
|
108
|
-
}
|
|
109
|
-
function matchSubstitutionTerminalNode(substitutionTerminalNode, terminalNode) {
|
|
110
|
-
var matches = substitutionTerminalNode.match(terminalNode), substitutionTerminalNodeMatches = matches; ///
|
|
111
|
-
return substitutionTerminalNodeMatches;
|
|
112
|
-
}
|
|
113
|
-
function matchSubstitutionNonTerminalNode(substitutionNonTerminalNode, nonTerminalNode) {
|
|
114
|
-
var substitutionNonTerminalNodeMatches = false;
|
|
115
|
-
var ruleName = nonTerminalNode.getRuleName(), substitutionRuleName = substitutionNonTerminalNode.getRuleName(); ///
|
|
116
|
-
if (ruleName === substitutionRuleName) {
|
|
117
|
-
var childNodes = nonTerminalNode.getChildNodes(), substitutionChildNodes = substitutionNonTerminalNode.getChildNodes(), nodes = childNodes, substitutionNodes = substitutionChildNodes, substitutionNodesMatches = matchSubstitutionNodes(substitutionNodes, nodes);
|
|
118
|
-
substitutionNonTerminalNodeMatches = substitutionNodesMatches; ///
|
|
119
|
-
}
|
|
120
|
-
return substitutionNonTerminalNodeMatches;
|
|
121
|
-
}
|
|
122
82
|
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdWJzdGl0dXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG1hdGNoQnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlLCBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVGcm9tQ2hpbGROb2RlcyB9IGZyb20gXCIuL3V0aWxpdGllcy9zdGF0ZW1lbnRcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3IodmFyaWFibGVOYW1lLCBub2Rlcykge1xuICAgIHRoaXMudmFyaWFibGVOYW1lID0gdmFyaWFibGVOYW1lO1xuICAgIHRoaXMubm9kZXMgPSBub2RlcztcbiAgfVxuXG4gIGdldFZhcmlhYmxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZU5hbWU7XG4gIH1cblxuICBnZXROb2RlcygpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlcztcbiAgfVxuXG4gIG1hdGNoTm9kZXMobm9kZXMpIHtcbiAgICBsZXQgbWF0Y2hlcztcblxuICAgIGNvbnN0IHN1YnN0aXR1dGlvbk5vZGVzID0gdGhpcy5ub2RlcywgIC8vL1xuICAgICAgICAgIHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFN1YnN0aXR1dGlvbk5vZGVzKHN1YnN0aXR1dGlvbk5vZGVzLCBub2Rlcyk7XG5cbiAgICBtYXRjaGVzID0gc3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgIC8vL1xuXG4gICAgaWYgKCFtYXRjaGVzKSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9kZXMsIC8vL1xuICAgICAgICAgICAgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlTWF0Y2hlcyA9IG1hdGNoQnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlKGNoaWxkTm9kZXMsIChicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgICAgICAgICBub2RlcyA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICAgICAgICBhc3NlcnRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hTdWJzdGl0dXRpb25Ob2RlcyhzdWJzdGl0dXRpb25Ob2Rlcywgbm9kZXMpLFxuICAgICAgICAgICAgICAgICAgICBicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVNYXRjaGVzID0gYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG5cbiAgICAgICAgICAgICAgcmV0dXJuIGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZU1hdGNoZXM7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgbWF0Y2hlcyA9IGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZU1hdGNoZXM7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21WYXJpYWJsZU5hbWVBbmROb2Rlcyh2YXJpYWJsZU5hbWUsIG5vZGVzKSB7XG4gICAgY29uc3QgYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlRnJvbUNoaWxkTm9kZXMobm9kZXMpO1xuXG4gICAgaWYgKGJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gYnJhY2tldGVkU3RhdGVtZW50Q2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKTtcblxuICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBzdWJzdGl0dXRpb24gPSBuZXcgU3Vic3RpdHV0aW9uKHZhcmlhYmxlTmFtZSwgbm9kZXMpO1xuXG4gICAgcmV0dXJuIHN1YnN0aXR1dGlvbjtcbiAgfVxufVxuXG5mdW5jdGlvbiBtYXRjaFN1YnN0aXR1dGlvbk5vZGUoc3Vic3RpdHV0aW9uTm9kZSwgbm9kZSkge1xuICBsZXQgc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICBydWxlTm9kZVRlcm1pbmFsTm9kZSA9IHN1YnN0aXR1dGlvbk5vZGUuaXNUZXJtaW5hbE5vZGUoKTtcblxuICBpZiAobm9kZVRlcm1pbmFsTm9kZSA9PT0gcnVsZU5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICBpZiAobm9kZVRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybWluYWxOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uVGVybWluYWxOb2RlID0gc3Vic3RpdHV0aW9uTm9kZSwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoU3Vic3RpdHV0aW9uVGVybWluYWxOb2RlKHN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKTtcblxuICAgICAgc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb25UZXJtaW5hbE5vZGVNYXRjaGVzOyAgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlID0gc3Vic3RpdHV0aW9uTm9kZSwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoU3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlKHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlKTtcblxuICAgICAgc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoU3Vic3RpdHV0aW9uTm9kZXMoc3Vic3RpdHV0aW9uTm9kZXMsIG5vZGVzKSB7XG4gIGxldCBzdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2Rlc0xlbmd0aCA9IG5vZGVzLmxlbmd0aCxcbiAgICAgICAgc3Vic3RpdHV0aW9uTm9kZXNMZW5ndGggPSBzdWJzdGl0dXRpb25Ob2Rlcy5sZW5ndGg7XG5cbiAgaWYgKG5vZGVzTGVuZ3RoID09PSBzdWJzdGl0dXRpb25Ob2Rlc0xlbmd0aCkge1xuICAgIHN1YnN0aXR1dGlvbk5vZGVzTWF0Y2hlcyA9IG5vZGVzLmV2ZXJ5KChub2RlLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3Qgc3Vic3RpdHV0aW9uTm9kZSA9IHN1YnN0aXR1dGlvbk5vZGVzW2luZGV4XSxcbiAgICAgICAgICAgIHN1YnN0aXR1dGlvbk5vZGVNYXRjaGVzID0gbWF0Y2hTdWJzdGl0dXRpb25Ob2RlKHN1YnN0aXR1dGlvbk5vZGUsIG5vZGUpO1xuXG4gICAgICBpZiAoc3Vic3RpdHV0aW9uTm9kZU1hdGNoZXMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBzdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoU3Vic3RpdHV0aW9uVGVybWluYWxOb2RlKHN1YnN0aXR1dGlvblRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKSB7XG4gIGNvbnN0IG1hdGNoZXMgPSBzdWJzdGl0dXRpb25UZXJtaW5hbE5vZGUubWF0Y2godGVybWluYWxOb2RlKSxcbiAgICAgICAgc3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoZXM7ICAvLy9cblxuICByZXR1cm4gc3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUoc3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlLCBub25UZXJtaW5hbE5vZGUpIHtcbiAgbGV0IHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICBzdWJzdGl0dXRpb25SdWxlTmFtZSA9IHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpOyAvLy9cblxuICBpZiAocnVsZU5hbWUgPT09IHN1YnN0aXR1dGlvblJ1bGVOYW1lKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgc3Vic3RpdHV0aW9uQ2hpbGROb2RlcyA9IHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICBzdWJzdGl0dXRpb25Ob2RlcyA9IHN1YnN0aXR1dGlvbkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIHN1YnN0aXR1dGlvbk5vZGVzTWF0Y2hlcyA9IG1hdGNoU3Vic3RpdHV0aW9uTm9kZXMoc3Vic3RpdHV0aW9uTm9kZXMsIG5vZGVzKTtcblxuICAgIHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBzdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXM7IC8vL1xuICB9XG5cbiAgcmV0dXJuIHN1YnN0aXR1dGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXM7XG59XG4iXSwibmFtZXMiOlsiU3Vic3RpdHV0aW9uIiwidmFyaWFibGVOYW1lIiwibm9kZXMiLCJnZXRWYXJpYWJsZU5hbWUiLCJnZXROb2RlcyIsIm1hdGNoTm9kZXMiLCJtYXRjaGVzIiwic3Vic3RpdHV0aW9uTm9kZXMiLCJzdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hTdWJzdGl0dXRpb25Ob2RlcyIsImNoaWxkTm9kZXMiLCJicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGVNYXRjaGVzIiwibWF0Y2hCcmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUiLCJicmFja2V0ZWRTdGF0ZW1lbnRDaGlsZE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJnZXRDaGlsZE5vZGVzIiwiYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyIsImZyb21WYXJpYWJsZU5hbWVBbmROb2RlcyIsImJyYWNrZXRlZFN0YXRlbWVudENoaWxkTm9kZUZyb21DaGlsZE5vZGVzIiwic3Vic3RpdHV0aW9uIiwibWF0Y2hTdWJzdGl0dXRpb25Ob2RlIiwic3Vic3RpdHV0aW9uTm9kZSIsIm5vZGUiLCJzdWJzdGl0dXRpb25Ob2RlTWF0Y2hlcyIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInJ1bGVOb2RlVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwic3Vic3RpdHV0aW9uVGVybWluYWxOb2RlIiwic3Vic3RpdHV0aW9uVGVybWluYWxOb2RlTWF0Y2hlcyIsIm1hdGNoU3Vic3RpdHV0aW9uVGVybWluYWxOb2RlIiwic3Vic3RpdHV0aW9uTm9uVGVybWluYWxOb2RlIiwibWF0Y2hTdWJzdGl0dXRpb25Ob25UZXJtaW5hbE5vZGUiLCJzdWJzdGl0dXRpb25Ob2Rlc01hdGNoZXMiLCJub2Rlc0xlbmd0aCIsImxlbmd0aCIsInN1YnN0aXR1dGlvbk5vZGVzTGVuZ3RoIiwiZXZlcnkiLCJpbmRleCIsIm1hdGNoIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIs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
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdWJzdGl0dXRpb24uanMiLCI8PGpzeC1jb25maWctcHJhZ21hLmpzPj4iXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG1hdGNoTm9kZXMsIGJyYWNrZXRlZENoaWxkTm9kZUZyb21DaGlsZE5vZGVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3IodmFyaWFibGVOYW1lLCBub2Rlcykge1xuICAgIHRoaXMudmFyaWFibGVOYW1lID0gdmFyaWFibGVOYW1lO1xuICAgIHRoaXMubm9kZXMgPSBub2RlcztcbiAgfVxuXG4gIGdldFZhcmlhYmxlTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZU5hbWU7XG4gIH1cblxuICBnZXROb2RlcygpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlcztcbiAgfVxuXG4gIG1hdGNoTm9kZXMobm9kZXMpIHtcbiAgICBsZXQgbWF0Y2hlcztcblxuICAgIGNvbnN0IG5vZGVzQSA9IHRoaXMubm9kZXMsICAvLy9cbiAgICAgICAgICBub2Rlc0IgPSBub2RlcyxcbiAgICAgICAgICBtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaCA9IG1hdGNoTm9kZXMobm9kZXNBLCBub2Rlc0IpO1xuXG4gICAgbWF0Y2hlcyA9IG1ldGFTdWJzdGl0dXRpb25Ob2Rlc01hdGNoOyAgLy8vXG5cbiAgICBpZiAoIW1hdGNoZXMpIHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBub2RlcywgLy8vXG4gICAgICAgICAgICBicmFja2V0ZWRDaGlsZE5vZGUgPSBicmFja2V0ZWRDaGlsZE5vZGVGcm9tQ2hpbGROb2RlcyhjaGlsZE5vZGVzKTtcblxuICAgICAgaWYgKGJyYWNrZXRlZENoaWxkTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBicmFja2V0ZWRDaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICAgIG5vZGVzQiA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICBub2Rlc01hdGNoID0gbWF0Y2hOb2Rlcyhub2Rlc0EsIG5vZGVzQik7XG5cbiAgICAgICAgbWF0Y2hlcyA9IG5vZGVzTWF0Y2g7IC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21NZXRhdmFyaWFibGVOYW1lQW5kTm9kZXModmFyaWFibGVOYW1lLCBub2Rlcykge1xuICAgIGNvbnN0IGJyYWNrZXRlZENoaWxkTm9kZSA9IGJyYWNrZXRlZENoaWxkTm9kZUZyb21DaGlsZE5vZGVzKG5vZGVzKTtcblxuICAgIGlmIChicmFja2V0ZWRDaGlsZE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IGJyYWNrZXRlZENoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgICAgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCk7XG5cbiAgICAgIG5vZGVzID0gY2hpbGROb2RlczsgLy8vXG4gICAgfVxuXG4gICAgY29uc3QgbWV0YVN1YnN0aXR1dGlvbiA9IG5ldyBTdWJzdGl0dXRpb24odmFyaWFibGVOYW1lLCBub2Rlcyk7XG5cbiAgICByZXR1cm4gbWV0YVN1YnN0aXR1dGlvbjtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJTdWJzdGl0dXRpb24iLCJ2YXJpYWJsZU5hbWUiLCJub2RlcyIsImdldFZhcmlhYmxlTmFtZSIsImdldE5vZGVzIiwibWF0Y2hOb2RlcyIsIm1hdGNoZXMiLCJub2Rlc0EiLCJub2Rlc0IiLCJtZXRhU3Vic3RpdHV0aW9uTm9kZXNNYXRjaCIsImNoaWxkTm9kZXMiLCJicmFja2V0ZWRDaGlsZE5vZGUiLCJicmFja2V0ZWRDaGlsZE5vZGVGcm9tQ2hpbGROb2RlcyIsIm5vblRlcm1pbmFsTm9kZSIsImdldENoaWxkTm9kZXMiLCJub2Rlc01hdGNoIiwiZnJvbU1ldGF2YXJpYWJsZU5hbWVBbmROb2RlcyIsIm1ldGFTdWJzdGl0dXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O29CQUZ3Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsSUFBQSxBQUFNQSw2QkFBTjthQUFNQSxhQUNQQyxZQUFZLEVBQUVDLEtBQUs7OEJBRFpGO1FBRWpCLElBQUksQ0FBQ0MsWUFBWSxHQUFHQTtRQUNwQixJQUFJLENBQUNDLEtBQUssR0FBR0E7O2lCQUhJRjs7WUFNbkJHLEtBQUFBO21CQUFBQSxTQUFBQSxrQkFBa0I7Z0JBQ2hCLE9BQU8sSUFBSSxDQUFDRixZQUFZO1lBQzFCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVc7Z0JBQ1QsT0FBTyxJQUFJLENBQUNGLEtBQUs7WUFDbkI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsV0FBV0gsS0FBSyxFQUFFO2dCQUNoQixJQUFJSTtnQkFFSixJQUFNQyxTQUFTLElBQUksQ0FBQ0wsS0FBSyxFQUNuQk0sU0FBU04sT0FDVE8sNkJBQTZCSixJQUFBQSxnQkFBVSxFQUFDRSxRQUFRQztnQkFFdERGLFVBQVVHLDRCQUE2QixHQUFHO2dCQUUxQyxJQUFJLENBQUNILFNBQVM7b0JBQ1osSUFBTUksYUFBYVIsT0FDYlMscUJBQXFCQyxJQUFBQSxzQ0FBZ0MsRUFBQ0Y7b0JBRTVELElBQUlDLHVCQUF1QixJQUFJLEVBQUU7d0JBQy9CLElBQU1FLGtCQUFrQkYsb0JBQ2xCRCxjQUFhRyxnQkFBZ0JDLGFBQWEsSUFDMUNOLFVBQVNFLGFBQ1RLLGFBQWFWLElBQUFBLGdCQUFVLEVBQUNFLFFBQVFDO3dCQUV0Q0YsVUFBVVMsWUFBWSxHQUFHO29CQUMzQixDQUFDO2dCQUNILENBQUM7Z0JBRUQsT0FBT1Q7WUFDVDs7OztZQUVPVSxLQUFBQTttQkFBUCxTQUFPQSw2QkFBNkJmLFlBQVksRUFBRUMsS0FBSyxFQUFFO2dCQUN2RCxJQUFNUyxxQkFBcUJDLElBQUFBLHNDQUFnQyxFQUFDVjtnQkFFNUQsSUFBSVMsdUJBQXVCLElBQUksRUFBRTtvQkFDL0IsSUFBTUUsa0JBQWtCRixvQkFDbEJELGFBQWFHLGdCQUFnQkMsYUFBYTtvQkFFaERaLFFBQVFRLFlBQVksR0FBRztnQkFDekIsQ0FBQztnQkFFRCxJQUFNTyxtQkFBbUIsSUFsRFJqQixhQWtEeUJDLGNBQWNDO2dCQUV4RCxPQUFPZTtZQUNUOzs7V0FyRG1CakIifQ==
|
package/lib/utilities/array.js
CHANGED
|
@@ -9,9 +9,6 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
front: function() {
|
|
13
|
-
return front;
|
|
14
|
-
},
|
|
15
12
|
first: function() {
|
|
16
13
|
return first;
|
|
17
14
|
},
|
|
@@ -51,7 +48,7 @@ function _interopRequireDefault(obj) {
|
|
|
51
48
|
default: obj
|
|
52
49
|
};
|
|
53
50
|
}
|
|
54
|
-
var
|
|
51
|
+
var first = _necessary.arrayUtilities.first, second = _necessary.arrayUtilities.second, third = _necessary.arrayUtilities.third, last = _necessary.arrayUtilities.last, push = _necessary.arrayUtilities.push, prune = _necessary.arrayUtilities.prune, filter = _necessary.arrayUtilities.filter;
|
|
55
52
|
function someSubArray(array, subArrayLength, callback) {
|
|
56
53
|
var found = false;
|
|
57
54
|
var arrayLength = array.length, indexesLength = arrayLength, permutationLength = subArrayLength; ///
|
|
@@ -99,4 +96,4 @@ function rightDifference(arrayA, arrayB) {
|
|
|
99
96
|
});
|
|
100
97
|
}
|
|
101
98
|
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvYXJyYXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgcGVybXV0YXRpb25zTWF0cml4IGZyb20gXCIuLi9wZXJtdXRhdGlvbnNNYXRyaXhcIjtcblxuaW1wb3J0IHsgTUFYSU1VTV9JTkRFWEVTX0xFTkdUSCwgTUFYSU1VTV9QRVJNVVRBVElPTl9MRU5HVEggfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBjb25zdCB7IGZpcnN0LCBzZWNvbmQsIHRoaXJkLCBsYXN0LCBwdXNoLCBwcnVuZSwgZmlsdGVyIH0gPSBhcnJheVV0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIHNvbWVTdWJBcnJheShhcnJheSwgc3ViQXJyYXlMZW5ndGgsIGNhbGxiYWNrKSB7XG4gIGxldCBmb3VuZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGFycmF5TGVuZ3RoID0gYXJyYXkubGVuZ3RoLFxuICAgICAgICBpbmRleGVzTGVuZ3RoID0gYXJyYXlMZW5ndGgsIC8vL1xuICAgICAgICBwZXJtdXRhdGlvbkxlbmd0aCA9IHN1YkFycmF5TGVuZ3RoOyAvLy9cblxuICBpZiAocGVybXV0YXRpb25MZW5ndGggPD0gTUFYSU1VTV9QRVJNVVRBVElPTl9MRU5HVEgpIHtcbiAgICBsZXQgb2Zmc2V0LFxuICAgICAgICBwZXJtdXRhdGlvbnM7XG5cbiAgICBpZiAoaW5kZXhlc0xlbmd0aCA+IE1BWElNVU1fSU5ERVhFU19MRU5HVEgpIHtcbiAgICAgIG9mZnNldCA9IGluZGV4ZXNMZW5ndGggLSBNQVhJTVVNX0lOREVYRVNfTEVOR1RIO1xuXG4gICAgICBwZXJtdXRhdGlvbnMgPSBwZXJtdXRhdGlvbnNNYXRyaXhbTUFYSU1VTV9JTkRFWEVTX0xFTkdUSF1bcGVybXV0YXRpb25MZW5ndGhdO1xuICAgIH0gZWxzZSB7XG4gICAgICBvZmZzZXQgPSAwO1xuXG4gICAgICBwZXJtdXRhdGlvbnMgPSBwZXJtdXRhdGlvbnNNYXRyaXhbaW5kZXhlc0xlbmd0aF1bcGVybXV0YXRpb25MZW5ndGhdO1xuICAgIH1cblxuICAgIGlmIChwZXJtdXRhdGlvbnMgIT09IG51bGwpIHtcbiAgICAgIGZvdW5kID0gcGVybXV0YXRpb25zLnNvbWUoKHBlcm11dGF0aW9uKSA9PiB7XG4gICAgICAgIGlmIChwZXJtdXRhdGlvbiAhPT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IHN1YkFycmF5ID0gW107XG5cbiAgICAgICAgICBmb3IgKGxldCBwb3NpdGlvbiA9IDA7IHBvc2l0aW9uIDwgcGVybXV0YXRpb25MZW5ndGg7IHBvc2l0aW9uKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gcGVybXV0YXRpb25bcG9zaXRpb25dICsgb2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgZWxlbWVudCA9IGFycmF5W2luZGV4XTtcblxuICAgICAgICAgICAgc3ViQXJyYXkucHVzaChlbGVtZW50KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBwYXNzZWQgPSBjYWxsYmFjayhzdWJBcnJheSk7XG5cbiAgICAgICAgICBpZiAocGFzc2VkKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmb3VuZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxlZnREaWZmZXJlbmNlKGFycmF5QSwgYXJyYXlCKSB7XG4gIGZpbHRlcihhcnJheUEsIChlbGVtZW50QSkgPT4ge1xuICAgIGNvbnN0IGFycmF5QkluY2x1ZGVzRWxlbWVudEEgPSBhcnJheUIuaW5jbHVkZXMoZWxlbWVudEEpO1xuXG4gICAgaWYgKCFhcnJheUJJbmNsdWRlc0VsZW1lbnRBKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmlnaHREaWZmZXJlbmNlKGFycmF5QSwgYXJyYXlCKSB7XG4gIGZpbHRlcihhcnJheUIsIChlbGVtZW50QikgPT4ge1xuICAgIGNvbnN0IGFycmF5QUluY2x1ZGVzRWxlbWVudEIgPSBhcnJheUEuaW5jbHVkZXMoZWxlbWVudEIpO1xuXG4gICAgaWYgKCFhcnJheUFJbmNsdWRlc0VsZW1lbnRCKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xufVxuIl0sIm5hbWVzIjpbImZpcnN0Iiwic2Vjb25kIiwidGhpcmQiLCJsYXN0IiwicHVzaCIsInBydW5lIiwiZmlsdGVyIiwic29tZVN1YkFycmF5IiwibGVmdERpZmZlcmVuY2UiLCJyaWdodERpZmZlcmVuY2UiLCJhcnJheVV0aWxpdGllcyIsImFycmF5Iiwic3ViQXJyYXlMZW5ndGgiLCJjYWxsYmFjayIsImZvdW5kIiwiYXJyYXlMZW5ndGgiLCJsZW5ndGgiLCJpbmRleGVzTGVuZ3RoIiwicGVybXV0YXRpb25MZW5ndGgiLCJNQVhJTVVNX1BFUk1VVEFUSU9OX0xFTkdUSCIsIm9mZnNldCIsInBlcm11dGF0aW9ucyIsIk1BWElNVU1fSU5ERVhFU19MRU5HVEgiLCJwZXJtdXRhdGlvbnNNYXRyaXgiLCJzb21lIiwicGVybXV0YXRpb24iLCJzdWJBcnJheSIsInBvc2l0aW9uIiwiaW5kZXgiLCJlbGVtZW50IiwicGFzc2VkIiwiYXJyYXlBIiwiYXJyYXlCIiwiZWxlbWVudEEiLCJhcnJheUJJbmNsdWRlc0VsZW1lbnRBIiwiaW5jbHVkZXMiLCJlbGVtZW50QiIsImFycmF5QUluY2x1ZGVzRWxlbWVudEIiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQVFlQSxLQUFLO2VBQUxBOztJQUFPQyxNQUFNO2VBQU5BOztJQUFRQyxLQUFLO2VBQUxBOztJQUFPQyxJQUFJO2VBQUpBOztJQUFNQyxJQUFJO2VBQUpBOztJQUFNQyxLQUFLO2VBQUxBOztJQUFPQyxNQUFNO2VBQU5BOztJQUV4Q0MsWUFBWTtlQUFaQTs7SUE4Q0FDLGNBQWM7ZUFBZEE7O0lBVUFDLGVBQWU7ZUFBZkE7Ozt5QkFoRWU7dUVBRUE7eUJBRW9DOzs7Ozs7QUFFNUQsSUFBUVQsUUFBb0RVLHlCQUFjLENBQWxFVixPQUFPQyxTQUE2Q1MseUJBQWMsQ0FBM0RULFFBQVFDLFFBQXFDUSx5QkFBYyxDQUFuRFIsT0FBT0MsT0FBOEJPLHlCQUFjLENBQTVDUCxNQUFNQyxPQUF3Qk0seUJBQWMsQ0FBdENOLE1BQU1DLFFBQWtCSyx5QkFBYyxDQUFoQ0wsT0FBT0MsU0FBV0kseUJBQWMsQ0FBekJKO0FBRWpELFNBQVNDLGFBQWFJLEtBQUssRUFBRUMsY0FBYyxFQUFFQyxRQUFRLEVBQUU7SUFDNUQsSUFBSUMsUUFBUSxLQUFLO0lBRWpCLElBQU1DLGNBQWNKLE1BQU1LLE1BQU0sRUFDMUJDLGdCQUFnQkYsYUFDaEJHLG9CQUFvQk4sZ0JBQWdCLEdBQUc7SUFFN0MsSUFBSU0scUJBQXFCQyxxQ0FBMEIsRUFBRTtRQUNuRCxJQUFJQyxRQUNBQztRQUVKLElBQUlKLGdCQUFnQkssaUNBQXNCLEVBQUU7WUFDMUNGLFNBQVNILGdCQUFnQkssaUNBQXNCO1lBRS9DRCxlQUFlRSwyQkFBa0IsQ0FBQ0QsaUNBQXNCLENBQUMsQ0FBQ0osa0JBQWtCO1FBQzlFLE9BQU87WUFDTEUsU0FBUztZQUVUQyxlQUFlRSwyQkFBa0IsQ0FBQ04sY0FBYyxDQUFDQyxrQkFBa0I7UUFDckUsQ0FBQztRQUVELElBQUlHLGlCQUFpQixJQUFJLEVBQUU7WUFDekJQLFFBQVFPLGFBQWFHLElBQUksQ0FBQyxTQUFDQyxhQUFnQjtnQkFDekMsSUFBSUEsZ0JBQWdCLElBQUksRUFBRTtvQkFDeEIsSUFBTUMsV0FBVyxFQUFFO29CQUVuQixJQUFLLElBQUlDLFdBQVcsR0FBR0EsV0FBV1QsbUJBQW1CUyxXQUFZO3dCQUMvRCxJQUFNQyxRQUFRSCxXQUFXLENBQUNFLFNBQVMsR0FBR1AsUUFDaENTLFVBQVVsQixLQUFLLENBQUNpQixNQUFNO3dCQUU1QkYsU0FBU3RCLElBQUksQ0FBQ3lCO29CQUNoQjtvQkFFQSxJQUFNQyxTQUFTakIsU0FBU2E7b0JBRXhCLElBQUlJLFFBQVE7d0JBQ1YsT0FBTyxJQUFJO29CQUNiLENBQUM7Z0JBQ0gsQ0FBQztZQUNIO1FBQ0YsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPaEI7QUFDVDtBQUVPLFNBQVNOLGVBQWV1QixNQUFNLEVBQUVDLE1BQU0sRUFBRTtJQUM3QzFCLE9BQU95QixRQUFRLFNBQUNFLFVBQWE7UUFDM0IsSUFBTUMseUJBQXlCRixPQUFPRyxRQUFRLENBQUNGO1FBRS9DLElBQUksQ0FBQ0Msd0JBQXdCO1lBQzNCLE9BQU8sSUFBSTtRQUNiLENBQUM7SUFDSDtBQUNGO0FBRU8sU0FBU3pCLGdCQUFnQnNCLE1BQU0sRUFBRUMsTUFBTSxFQUFFO0lBQzlDMUIsT0FBTzBCLFFBQVEsU0FBQ0ksVUFBYTtRQUMzQixJQUFNQyx5QkFBeUJOLE9BQU9JLFFBQVEsQ0FBQ0M7UUFFL0MsSUFBSSxDQUFDQyx3QkFBd0I7WUFDM0IsT0FBTyxJQUFJO1FBQ2IsQ0FBQztJQUNIO0FBQ0YifQ==
|