occam-verify-cli 0.0.936 → 0.0.937
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/conclusion.js +3 -6
- package/lib/consequent.js +3 -6
- package/lib/context/local.js +1 -1
- package/lib/equality.js +2 -5
- package/lib/premise.js +5 -11
- package/lib/proofStep.js +3 -6
- package/lib/substitution/statementForMetavariable.js +3 -6
- package/lib/supposition.js +5 -11
- package/lib/unifier/equality.js +37 -107
- package/lib/unifier/metaLevel.js +48 -121
- package/lib/unifier/statementAgainstCombinator.js +41 -123
- package/lib/unifier/termAgainstConstructor.js +29 -103
- package/lib/unifier.js +60 -41
- package/lib/unify/metavariableAgainstStatement.js +5 -5
- package/lib/unify/statementAgainstMetaType.js +10 -4
- package/lib/unify/statementAtainstStatement.js +3 -6
- package/lib/unify/termAgainstTerm.js +1 -1
- package/lib/unify/termAgainstType.js +10 -4
- package/lib/utilities/unifier.js +51 -0
- package/lib/verifier/metaLevel.js +48 -128
- package/lib/verifier/statementAsCombinator.js +48 -128
- package/lib/verifier/termAsConstructor.js +42 -112
- package/lib/verifier.js +50 -33
- package/lib/verify/assertion/contained.js +2 -5
- package/lib/verify/assertion/defined.js +2 -5
- package/lib/verify/statement/qualified.js +2 -2
- package/lib/verify/statement.js +23 -13
- package/lib/verify/statementAsCombinator.js +4 -8
- package/lib/verify/term.js +5 -5
- package/lib/verify/termAsConstructor.js +30 -23
- package/package.json +1 -1
- package/src/conclusion.js +5 -9
- package/src/consequent.js +5 -9
- package/src/context/local.js +7 -7
- package/src/equality.js +2 -8
- package/src/premise.js +10 -18
- package/src/proofStep.js +5 -9
- package/src/substitution/statementForMetavariable.js +4 -8
- package/src/supposition.js +10 -18
- package/src/unifier/equality.js +31 -59
- package/src/unifier/metaLevel.js +50 -83
- package/src/unifier/statementAgainstCombinator.js +33 -83
- package/src/unifier/termAgainstConstructor.js +19 -57
- package/src/unifier.js +57 -31
- package/src/unify/metavariableAgainstStatement.js +5 -3
- package/src/unify/statementAgainstMetaType.js +8 -3
- package/src/unify/statementAtainstStatement.js +4 -8
- package/src/unify/termAgainstTerm.js +1 -1
- package/src/unify/termAgainstType.js +7 -3
- package/src/verifier/metaLevel.js +37 -81
- package/src/verifier/statementAsCombinator.js +39 -82
- package/src/verifier/termAsConstructor.js +33 -62
- package/src/verifier.js +47 -21
- package/src/verify/assertion/contained.js +1 -5
- package/src/verify/assertion/defined.js +1 -5
- package/src/verify/statement/qualified.js +2 -2
- package/src/verify/statement.js +31 -19
- package/src/verify/statementAsCombinator.js +3 -11
- package/src/verify/term.js +8 -8
- package/src/verify/termAsConstructor.js +40 -27
- package/lib/unify/argumentAgainstArgument.js +0 -24
- package/lib/utilities/terminalNodes.js +0 -51
- package/src/unify/argumentAgainstArgument.js +0 -15
- /package/src/utilities/{terminalNodes.js → unifier.js} +0 -0
package/lib/unifier/equality.js
CHANGED
|
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return _default;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var _unifier = /*#__PURE__*/
|
|
11
|
+
var _unifier = /*#__PURE__*/ _interop_require_default(require("../unifier"));
|
|
12
12
|
var _termAgainstTerm = /*#__PURE__*/ _interop_require_default(require("../unify/termAgainstTerm"));
|
|
13
13
|
var _query = require("../utilities/query");
|
|
14
14
|
function _assert_this_initialized(self) {
|
|
@@ -40,21 +40,18 @@ function _create_class(Constructor, protoProps, staticProps) {
|
|
|
40
40
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
41
41
|
return Constructor;
|
|
42
42
|
}
|
|
43
|
-
function
|
|
44
|
-
if (
|
|
45
|
-
|
|
43
|
+
function _define_property(obj, key, value) {
|
|
44
|
+
if (key in obj) {
|
|
45
|
+
Object.defineProperty(obj, key, {
|
|
46
|
+
value: value,
|
|
47
|
+
enumerable: true,
|
|
48
|
+
configurable: true,
|
|
49
|
+
writable: true
|
|
50
|
+
});
|
|
46
51
|
} else {
|
|
47
|
-
|
|
48
|
-
var base = _super_prop_base(target, property);
|
|
49
|
-
if (!base) return;
|
|
50
|
-
var desc = Object.getOwnPropertyDescriptor(base, property);
|
|
51
|
-
if (desc.get) {
|
|
52
|
-
return desc.get.call(receiver || target);
|
|
53
|
-
}
|
|
54
|
-
return desc.value;
|
|
55
|
-
};
|
|
52
|
+
obj[key] = value;
|
|
56
53
|
}
|
|
57
|
-
return
|
|
54
|
+
return obj;
|
|
58
55
|
}
|
|
59
56
|
function _get_prototype_of(o) {
|
|
60
57
|
_get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
|
|
@@ -80,47 +77,6 @@ function _interop_require_default(obj) {
|
|
|
80
77
|
default: obj
|
|
81
78
|
};
|
|
82
79
|
}
|
|
83
|
-
function _getRequireWildcardCache(nodeInterop) {
|
|
84
|
-
if (typeof WeakMap !== "function") return null;
|
|
85
|
-
var cacheBabelInterop = new WeakMap();
|
|
86
|
-
var cacheNodeInterop = new WeakMap();
|
|
87
|
-
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
88
|
-
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
89
|
-
})(nodeInterop);
|
|
90
|
-
}
|
|
91
|
-
function _interop_require_wildcard(obj, nodeInterop) {
|
|
92
|
-
if (!nodeInterop && obj && obj.__esModule) {
|
|
93
|
-
return obj;
|
|
94
|
-
}
|
|
95
|
-
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
96
|
-
return {
|
|
97
|
-
default: obj
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
var cache = _getRequireWildcardCache(nodeInterop);
|
|
101
|
-
if (cache && cache.has(obj)) {
|
|
102
|
-
return cache.get(obj);
|
|
103
|
-
}
|
|
104
|
-
var newObj = {
|
|
105
|
-
__proto__: null
|
|
106
|
-
};
|
|
107
|
-
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
108
|
-
for(var key in obj){
|
|
109
|
-
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
110
|
-
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
111
|
-
if (desc && (desc.get || desc.set)) {
|
|
112
|
-
Object.defineProperty(newObj, key, desc);
|
|
113
|
-
} else {
|
|
114
|
-
newObj[key] = obj[key];
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
newObj.default = obj;
|
|
119
|
-
if (cache) {
|
|
120
|
-
cache.set(obj, newObj);
|
|
121
|
-
}
|
|
122
|
-
return newObj;
|
|
123
|
-
}
|
|
124
80
|
function _possible_constructor_return(self, call) {
|
|
125
81
|
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
126
82
|
return call;
|
|
@@ -134,13 +90,6 @@ function _set_prototype_of(o, p) {
|
|
|
134
90
|
};
|
|
135
91
|
return _set_prototype_of(o, p);
|
|
136
92
|
}
|
|
137
|
-
function _super_prop_base(object, property) {
|
|
138
|
-
while(!Object.prototype.hasOwnProperty.call(object, property)){
|
|
139
|
-
object = _get_prototype_of(object);
|
|
140
|
-
if (object === null) break;
|
|
141
|
-
}
|
|
142
|
-
return object;
|
|
143
|
-
}
|
|
144
93
|
function _type_of(obj) {
|
|
145
94
|
"@swc/helpers - typeof";
|
|
146
95
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
@@ -153,7 +102,7 @@ function _is_native_reflect_construct() {
|
|
|
153
102
|
return !!result;
|
|
154
103
|
})();
|
|
155
104
|
}
|
|
156
|
-
var termNodeQuery = (0, _query.nodeQuery)("/term!")
|
|
105
|
+
var termNodeQuery = (0, _query.nodeQuery)("/term!");
|
|
157
106
|
var EqualityUnifier = /*#__PURE__*/ function(Unifier) {
|
|
158
107
|
_inherits(EqualityUnifier, Unifier);
|
|
159
108
|
function EqualityUnifier() {
|
|
@@ -162,55 +111,36 @@ var EqualityUnifier = /*#__PURE__*/ function(Unifier) {
|
|
|
162
111
|
}
|
|
163
112
|
_create_class(EqualityUnifier, [
|
|
164
113
|
{
|
|
165
|
-
key: "
|
|
166
|
-
value: function
|
|
167
|
-
var
|
|
168
|
-
var
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
var nonTerminalNodUnified;
|
|
175
|
-
var termNodeA = nodeA, termNodeB = nodeB, termNodUnifiedAgainstTermNode = _this.unifyTermNodeAgainstTermNode(termNodeA, termNodeB, localContext, unifyAhead);
|
|
176
|
-
nonTerminalNodUnified = termNodUnifiedAgainstTermNode; ///
|
|
177
|
-
return nonTerminalNodUnified;
|
|
178
|
-
}
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
nodeQueryA: nonTerminalNodeQuery,
|
|
182
|
-
nodeQueryB: nonTerminalNodeQuery,
|
|
183
|
-
unify: function(nodeA, nodeB, localContext, unifyAhead) {
|
|
184
|
-
var nonTerminalNodUnified;
|
|
185
|
-
var _$nonTerminalNodeA = nodeA, _$nonTerminalNodeB = nodeB; ///
|
|
186
|
-
nonTerminalNodUnified = _get(_get_prototype_of(EqualityUnifier.prototype), "unifyNonTerminalNode", _this).call(_this, _$nonTerminalNodeA, _$nonTerminalNodeB, localContext, unifyAhead);
|
|
187
|
-
return nonTerminalNodUnified;
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
];
|
|
191
|
-
var nodesVerified = (0, _unifier.unify)(nodeQueryMaps, nonTerminalNodeA, nonTerminalNodeB, localContext, unifyAhead);
|
|
192
|
-
nonTerminalNodUnified = nodesVerified; ///
|
|
193
|
-
return nonTerminalNodUnified;
|
|
194
|
-
}
|
|
195
|
-
},
|
|
196
|
-
{
|
|
197
|
-
key: "unifyTermNodeAgainstTermNode",
|
|
198
|
-
value: function unifyTermNodeAgainstTermNode(termNodeA, termNodeB, localContext, unifyAhead) {
|
|
199
|
-
var termNodUnifiedAgainstTermNode;
|
|
200
|
-
var termVerifiedAgainstTerm = (0, _termAgainstTerm.default)(termNodeA, termNodeB, localContext, unifyAhead);
|
|
201
|
-
if (termVerifiedAgainstTerm) {
|
|
202
|
-
termNodUnifiedAgainstTermNode = true;
|
|
203
|
-
} else {
|
|
204
|
-
var nonTerminalNodeA = termNodeA, nonTerminalNodeB = termNodeB, nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(), nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(), childNodesA = nonTerminalNodeAChildNodes, childNodesB = nonTerminalNodeBChildNodes, childNodesVerified = this.unifyChildNodes(childNodesA, childNodesB, localContext, unifyAhead);
|
|
205
|
-
termNodUnifiedAgainstTermNode = childNodesVerified; ///
|
|
206
|
-
}
|
|
207
|
-
return termNodUnifiedAgainstTermNode;
|
|
114
|
+
key: "unify",
|
|
115
|
+
value: function unify(leftTermNode, rightTermNode, localContext) {
|
|
116
|
+
var equalityUnified;
|
|
117
|
+
var nonTerminalNodeA = leftTermNode, nonTerminalNodeB = rightTermNode, nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext, function() {
|
|
118
|
+
var unifiedAhead = true;
|
|
119
|
+
return unifiedAhead;
|
|
120
|
+
});
|
|
121
|
+
equalityUnified = nonTerminalNodeUnified; ///
|
|
122
|
+
return equalityUnified;
|
|
208
123
|
}
|
|
209
124
|
}
|
|
210
125
|
]);
|
|
211
126
|
return EqualityUnifier;
|
|
212
127
|
}(_unifier.default);
|
|
128
|
+
_define_property(EqualityUnifier, "maps", [
|
|
129
|
+
{
|
|
130
|
+
nodeQueryA: termNodeQuery,
|
|
131
|
+
nodeQueryB: termNodeQuery,
|
|
132
|
+
unify: function(termNodeA, termNodeB, localContext, unifyAhead) {
|
|
133
|
+
var termVerifiedAgainstTerm;
|
|
134
|
+
termVerifiedAgainstTerm = (0, _termAgainstTerm.default)(termNodeA, termNodeB, localContext, unifyAhead);
|
|
135
|
+
if (!termVerifiedAgainstTerm) {
|
|
136
|
+
var nonTerminalNodeA = termNodeA, nonTerminalNodeB = termNodeB, nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(), nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(), childNodesA = nonTerminalNodeAChildNodes, childNodesB = nonTerminalNodeBChildNodes, childNodesVerified = equalityUnifier.unifyChildNodes(childNodesA, childNodesB, localContext, unifyAhead);
|
|
137
|
+
termVerifiedAgainstTerm = childNodesVerified; ///
|
|
138
|
+
}
|
|
139
|
+
return termVerifiedAgainstTerm;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
]);
|
|
213
143
|
var equalityUnifier = new EqualityUnifier();
|
|
214
144
|
var _default = equalityUnifier;
|
|
215
145
|
|
|
216
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmaWVyL2VxdWFsaXR5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgVW5pZmllciBmcm9tIFwiLi4vdW5pZmllclwiO1xuaW1wb3J0IHVuaWZ5VGVybUFnYWluc3RUZXJtIGZyb20gXCIuLi91bmlmeS90ZXJtQWdhaW5zdFRlcm1cIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm0hXCIpO1xuXG5jbGFzcyBFcXVhbGl0eVVuaWZpZXIgZXh0ZW5kcyBVbmlmaWVyIHtcbiAgdW5pZnkobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCBsb2NhbENvbnRleHQpIHtcbiAgICBsZXQgZXF1YWxpdHlVbmlmaWVkO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IGxlZnRUZXJtTm9kZSwgLy8vXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlQiA9IHJpZ2h0VGVybU5vZGUsIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPSB0aGlzLnVuaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdW5pZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgcmV0dXJuIHVuaWZpZWRBaGVhZDtcbiAgICAgICAgICB9KTtcblxuICAgIGVxdWFsaXR5VW5pZmllZCA9IG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7IC8vL1xuXG4gICAgcmV0dXJuIGVxdWFsaXR5VW5pZmllZDtcbiAgfTtcblxuICBzdGF0aWMgbWFwcyA9IFtcbiAgICB7XG4gICAgICBub2RlUXVlcnlBOiB0ZXJtTm9kZVF1ZXJ5LFxuICAgICAgbm9kZVF1ZXJ5QjogdGVybU5vZGVRdWVyeSxcbiAgICAgIHVuaWZ5OiAodGVybU5vZGVBLCB0ZXJtTm9kZUIsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCkgPT4ge1xuICAgICAgICBsZXQgdGVybVZlcmlmaWVkQWdhaW5zdFRlcm07XG5cbiAgICAgICAgdGVybVZlcmlmaWVkQWdhaW5zdFRlcm0gPSB1bmlmeVRlcm1BZ2FpbnN0VGVybSh0ZXJtTm9kZUEsIHRlcm1Ob2RlQiwgbG9jYWxDb250ZXh0LCB1bmlmeUFoZWFkKTtcblxuICAgICAgICBpZiAoIXRlcm1WZXJpZmllZEFnYWluc3RUZXJtKSB7XG4gICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IHRlcm1Ob2RlQSwgLy8vXG4gICAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQiA9IHRlcm1Ob2RlQiwgLy8vXG4gICAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQUNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGVBLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCQ2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZUIuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNBID0gbm9uVGVybWluYWxOb2RlQUNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNCID0gbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNWZXJpZmllZCA9IGVxdWFsaXR5VW5pZmllci51bmlmeUNoaWxkTm9kZXMoY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCBsb2NhbENvbnRleHQsIHVuaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgdGVybVZlcmlmaWVkQWdhaW5zdFRlcm0gPSBjaGlsZE5vZGVzVmVyaWZpZWQ7IC8vL1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRlcm1WZXJpZmllZEFnYWluc3RUZXJtO1xuICAgICAgfVxuICAgIH1cbiAgXTtcbn1cblxuY29uc3QgZXF1YWxpdHlVbmlmaWVyID0gbmV3IEVxdWFsaXR5VW5pZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCBlcXVhbGl0eVVuaWZpZXI7XG4iXSwibmFtZXMiOlsidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIkVxdWFsaXR5VW5pZmllciIsInVuaWZ5IiwibGVmdFRlcm1Ob2RlIiwicmlnaHRUZXJtTm9kZSIsImxvY2FsQ29udGV4dCIsImVxdWFsaXR5VW5pZmllZCIsIm5vblRlcm1pbmFsTm9kZUEiLCJub25UZXJtaW5hbE5vZGVCIiwibm9uVGVybWluYWxOb2RlVW5pZmllZCIsInVuaWZ5Tm9uVGVybWluYWxOb2RlIiwidW5pZmllZEFoZWFkIiwiVW5pZmllciIsIm1hcHMiLCJub2RlUXVlcnlBIiwibm9kZVF1ZXJ5QiIsInRlcm1Ob2RlQSIsInRlcm1Ob2RlQiIsInVuaWZ5QWhlYWQiLCJ0ZXJtVmVyaWZpZWRBZ2FpbnN0VGVybSIsInVuaWZ5VGVybUFnYWluc3RUZXJtIiwibm9uVGVybWluYWxOb2RlQUNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwibm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMiLCJjaGlsZE5vZGVzQSIsImNoaWxkTm9kZXNCIiwiY2hpbGROb2Rlc1ZlcmlmaWVkIiwiZXF1YWxpdHlVbmlmaWVyIiwidW5pZnlDaGlsZE5vZGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF1REE7OztlQUFBOzs7OERBckRvQjtzRUFDYTtxQkFFUDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFMUIsSUFBTUEsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDO0FBRWhDLElBQUEsQUFBTUMsZ0NBQUQsQUFBTDtjQUFNQTthQUFBQTtnQ0FBQUE7aUNBQUFBOztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxNQUFNQyxZQUFZLEVBQUVDLGFBQWEsRUFBRUMsWUFBWTtnQkFDN0MsSUFBSUM7Z0JBRUosSUFBTUMsbUJBQW1CSixjQUNuQkssbUJBQW1CSixlQUNuQksseUJBQXlCLElBQUksQ0FBQ0Msb0JBQW9CLENBQUNILGtCQUFrQkMsa0JBQWtCSCxjQUFjO29CQUNuRyxJQUFNTSxlQUFlO29CQUVyQixPQUFPQTtnQkFDVDtnQkFFTkwsa0JBQWtCRyx3QkFBd0IsR0FBRztnQkFFN0MsT0FBT0g7WUFDVDs7O1dBZklMO0VBQXdCVyxnQkFBTztBQWlCbkMsaUJBakJJWCxpQkFpQkdZLFFBQU87SUFDWjtRQUNFQyxZQUFZZjtRQUNaZ0IsWUFBWWhCO1FBQ1pHLE9BQU8sU0FBQ2MsV0FBV0MsV0FBV1osY0FBY2E7WUFDMUMsSUFBSUM7WUFFSkEsMEJBQTBCQyxJQUFBQSx3QkFBb0IsRUFBQ0osV0FBV0MsV0FBV1osY0FBY2E7WUFFbkYsSUFBSSxDQUFDQyx5QkFBeUI7Z0JBQzVCLElBQU1aLG1CQUFtQlMsV0FDbkJSLG1CQUFtQlMsV0FDbkJJLDZCQUE2QmQsaUJBQWlCZSxhQUFhLElBQzNEQyw2QkFBNkJmLGlCQUFpQmMsYUFBYSxJQUMzREUsY0FBY0gsNEJBQ2RJLGNBQWNGLDRCQUNkRyxxQkFBcUJDLGdCQUFnQkMsZUFBZSxDQUFDSixhQUFhQyxhQUFhcEIsY0FBY2E7Z0JBRW5HQywwQkFBMEJPLG9CQUFvQixHQUFHO1lBQ25EO1lBRUEsT0FBT1A7UUFDVDtJQUNGO0NBQ0Q7QUFHSCxJQUFNUSxrQkFBa0IsSUFBSTFCO0lBRTVCLFdBQWUwQiJ9
|
package/lib/unifier/metaLevel.js
CHANGED
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _shim = /*#__PURE__*/ _interop_require_default(require("../shim"));
|
|
12
|
-
var _unifier = /*#__PURE__*/
|
|
12
|
+
var _unifier = /*#__PURE__*/ _interop_require_default(require("../unifier"));
|
|
13
13
|
var _variableAgainstTerm = /*#__PURE__*/ _interop_require_default(require("../unify/variableAgainstTerm"));
|
|
14
14
|
var _metavariableAgainstStatement = /*#__PURE__*/ _interop_require_default(require("../unify/metavariableAgainstStatement"));
|
|
15
15
|
var _query = require("../utilities/query");
|
|
@@ -42,21 +42,18 @@ function _create_class(Constructor, protoProps, staticProps) {
|
|
|
42
42
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
43
43
|
return Constructor;
|
|
44
44
|
}
|
|
45
|
-
function
|
|
46
|
-
if (
|
|
47
|
-
|
|
45
|
+
function _define_property(obj, key, value) {
|
|
46
|
+
if (key in obj) {
|
|
47
|
+
Object.defineProperty(obj, key, {
|
|
48
|
+
value: value,
|
|
49
|
+
enumerable: true,
|
|
50
|
+
configurable: true,
|
|
51
|
+
writable: true
|
|
52
|
+
});
|
|
48
53
|
} else {
|
|
49
|
-
|
|
50
|
-
var base = _super_prop_base(target, property);
|
|
51
|
-
if (!base) return;
|
|
52
|
-
var desc = Object.getOwnPropertyDescriptor(base, property);
|
|
53
|
-
if (desc.get) {
|
|
54
|
-
return desc.get.call(receiver || target);
|
|
55
|
-
}
|
|
56
|
-
return desc.value;
|
|
57
|
-
};
|
|
54
|
+
obj[key] = value;
|
|
58
55
|
}
|
|
59
|
-
return
|
|
56
|
+
return obj;
|
|
60
57
|
}
|
|
61
58
|
function _get_prototype_of(o) {
|
|
62
59
|
_get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
|
|
@@ -82,47 +79,6 @@ function _interop_require_default(obj) {
|
|
|
82
79
|
default: obj
|
|
83
80
|
};
|
|
84
81
|
}
|
|
85
|
-
function _getRequireWildcardCache(nodeInterop) {
|
|
86
|
-
if (typeof WeakMap !== "function") return null;
|
|
87
|
-
var cacheBabelInterop = new WeakMap();
|
|
88
|
-
var cacheNodeInterop = new WeakMap();
|
|
89
|
-
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
90
|
-
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
91
|
-
})(nodeInterop);
|
|
92
|
-
}
|
|
93
|
-
function _interop_require_wildcard(obj, nodeInterop) {
|
|
94
|
-
if (!nodeInterop && obj && obj.__esModule) {
|
|
95
|
-
return obj;
|
|
96
|
-
}
|
|
97
|
-
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
98
|
-
return {
|
|
99
|
-
default: obj
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
var cache = _getRequireWildcardCache(nodeInterop);
|
|
103
|
-
if (cache && cache.has(obj)) {
|
|
104
|
-
return cache.get(obj);
|
|
105
|
-
}
|
|
106
|
-
var newObj = {
|
|
107
|
-
__proto__: null
|
|
108
|
-
};
|
|
109
|
-
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
110
|
-
for(var key in obj){
|
|
111
|
-
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
112
|
-
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
113
|
-
if (desc && (desc.get || desc.set)) {
|
|
114
|
-
Object.defineProperty(newObj, key, desc);
|
|
115
|
-
} else {
|
|
116
|
-
newObj[key] = obj[key];
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
newObj.default = obj;
|
|
121
|
-
if (cache) {
|
|
122
|
-
cache.set(obj, newObj);
|
|
123
|
-
}
|
|
124
|
-
return newObj;
|
|
125
|
-
}
|
|
126
82
|
function _possible_constructor_return(self, call) {
|
|
127
83
|
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
128
84
|
return call;
|
|
@@ -136,13 +92,6 @@ function _set_prototype_of(o, p) {
|
|
|
136
92
|
};
|
|
137
93
|
return _set_prototype_of(o, p);
|
|
138
94
|
}
|
|
139
|
-
function _super_prop_base(object, property) {
|
|
140
|
-
while(!Object.prototype.hasOwnProperty.call(object, property)){
|
|
141
|
-
object = _get_prototype_of(object);
|
|
142
|
-
if (object === null) break;
|
|
143
|
-
}
|
|
144
|
-
return object;
|
|
145
|
-
}
|
|
146
95
|
function _type_of(obj) {
|
|
147
96
|
"@swc/helpers - typeof";
|
|
148
97
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
@@ -155,7 +104,7 @@ function _is_native_reflect_construct() {
|
|
|
155
104
|
return !!result;
|
|
156
105
|
})();
|
|
157
106
|
}
|
|
158
|
-
var termNodeQuery = (0, _query.nodeQuery)("/term!"), statementNodeQuery = (0, _query.nodeQuery)("/statement!"),
|
|
107
|
+
var termNodeQuery = (0, _query.nodeQuery)("/term!"), statementNodeQuery = (0, _query.nodeQuery)("/statement!"), termVariableNodeQuery = (0, _query.nodeQuery)("/term/variable!"), substitutionNodeQuery = (0, _query.nodeQuery)("/statement/substitution!"), metavariableNodeQuery = (0, _query.nodeQuery)("/statement/metavariable!");
|
|
159
108
|
var MetaLevelUnifier = /*#__PURE__*/ function(Unifier) {
|
|
160
109
|
_inherits(MetaLevelUnifier, Unifier);
|
|
161
110
|
function MetaLevelUnifier() {
|
|
@@ -164,72 +113,50 @@ var MetaLevelUnifier = /*#__PURE__*/ function(Unifier) {
|
|
|
164
113
|
}
|
|
165
114
|
_create_class(MetaLevelUnifier, [
|
|
166
115
|
{
|
|
167
|
-
key: "
|
|
168
|
-
value: function
|
|
169
|
-
var
|
|
170
|
-
var nonTerminalNodeUnified
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
var nonTerminalNodeUnified;
|
|
177
|
-
var statementNodeA = nonTerminalNodeA, statementNodeB = nodeB, statementMetavariableNodeA = nodeA, statementSubstitutionNodeA = statementSubstitutionNodeQuery(statementNodeA), metavariableNodeUnifiedAgainstStatementNode = _this.unifyStatementMetavariableNodeAgainstStatementNode(statementMetavariableNodeA, statementSubstitutionNodeA, statementNodeB, substitutions, localContextA, localContextB, unifyAhead);
|
|
178
|
-
nonTerminalNodeUnified = metavariableNodeUnifiedAgainstStatementNode; ///
|
|
179
|
-
return nonTerminalNodeUnified;
|
|
180
|
-
}
|
|
181
|
-
},
|
|
182
|
-
{
|
|
183
|
-
nodeQueryA: termVariableNodeQuery,
|
|
184
|
-
nodeQueryB: termNodeQuery,
|
|
185
|
-
unify: function(nodeA, nodeB, substitutions, localContextA, localContextB, unifyAhead) {
|
|
186
|
-
var nonTerminalNodeUnified;
|
|
187
|
-
var termNodeB = nodeB, termVariableNodeA = nodeA, termVariableNodeUnifiedAgainstTermNode = _this.unifyTermVariableNodeAgainstTermNode(termVariableNodeA, termNodeB, substitutions, localContextA, localContextB, unifyAhead);
|
|
188
|
-
nonTerminalNodeUnified = termVariableNodeUnifiedAgainstTermNode; ///
|
|
189
|
-
return nonTerminalNodeUnified;
|
|
190
|
-
}
|
|
191
|
-
},
|
|
192
|
-
{
|
|
193
|
-
nodeQueryA: nonTerminalNodeQuery,
|
|
194
|
-
nodeQueryB: nonTerminalNodeQuery,
|
|
195
|
-
unify: function(nodeA, nodeB, substitutions, localContextA, localContextB, unifyAhead) {
|
|
196
|
-
var nonTerminalNodeUnified;
|
|
197
|
-
var _$nonTerminalNodeA = nodeA, _$nonTerminalNodeB = nodeB; ///
|
|
198
|
-
nonTerminalNodeUnified = _get(_get_prototype_of(MetaLevelUnifier.prototype), "unifyNonTerminalNode", _this).call(_this, _$nonTerminalNodeA, _$nonTerminalNodeB, substitutions, localContextA, localContextB, unifyAhead);
|
|
199
|
-
return nonTerminalNodeUnified;
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
];
|
|
203
|
-
var nodesUnified = (0, _unifier.unify)(nodeQueryMaps, nonTerminalNodeA, nonTerminalNodeB, substitutions, localContextA, localContextB, unifyAhead);
|
|
204
|
-
nonTerminalNodeUnified = nodesUnified; ///
|
|
205
|
-
return nonTerminalNodeUnified;
|
|
206
|
-
}
|
|
207
|
-
},
|
|
208
|
-
{
|
|
209
|
-
key: "unifyStatementMetavariableNodeAgainstStatementNode",
|
|
210
|
-
value: function unifyStatementMetavariableNodeAgainstStatementNode(statementMetavariableNodeA, statementSubstitutionNodeA, statementNodeB, substitutions, localContextA, localContextB, unifyAhead) {
|
|
211
|
-
var metavariableNodeUnifiedAgainstStatementNode;
|
|
212
|
-
var substitutionNode = statementSubstitutionNodeA, metavariableNodeA = statementMetavariableNodeA, metavariableUnifiedAgainstStatement = (0, _metavariableAgainstStatement.default)(metavariableNodeA, statementNodeB, substitutionNode, substitutions, localContextA, localContextB, unifyAhead);
|
|
213
|
-
metavariableNodeUnifiedAgainstStatementNode = metavariableUnifiedAgainstStatement; ///
|
|
214
|
-
return metavariableNodeUnifiedAgainstStatementNode;
|
|
215
|
-
}
|
|
216
|
-
},
|
|
217
|
-
{
|
|
218
|
-
key: "unifyTermVariableNodeAgainstTermNode",
|
|
219
|
-
value: function unifyTermVariableNodeAgainstTermNode(termVariableNodeA, termNodeB, substitutions, localContextA, localContextB, unifyAhead) {
|
|
220
|
-
var termVariableNodeUnifiedAgainstTermNode;
|
|
221
|
-
var variableNodeA = termVariableNodeA, termUnifiedAgainstVariable = (0, _variableAgainstTerm.default)(variableNodeA, termNodeB, substitutions, localContextA, localContextB, unifyAhead);
|
|
222
|
-
termVariableNodeUnifiedAgainstTermNode = termUnifiedAgainstVariable; ///
|
|
223
|
-
return termVariableNodeUnifiedAgainstTermNode;
|
|
116
|
+
key: "unify",
|
|
117
|
+
value: function unify(nodeA, nodeB, substitutions, localContextA, localContextB) {
|
|
118
|
+
var unified;
|
|
119
|
+
var nonTerminalNodeA = nodeA, nonTerminalNodeB = nodeB, nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, substitutions, localContextA, localContextB, function() {
|
|
120
|
+
var unifiedAhead = true;
|
|
121
|
+
return unifiedAhead;
|
|
122
|
+
});
|
|
123
|
+
unified = nonTerminalNodeUnified; ///
|
|
124
|
+
return unified;
|
|
224
125
|
}
|
|
225
126
|
}
|
|
226
127
|
]);
|
|
227
128
|
return MetaLevelUnifier;
|
|
228
129
|
}(_unifier.default);
|
|
130
|
+
_define_property(MetaLevelUnifier, "maps", [
|
|
131
|
+
{
|
|
132
|
+
nodeQueryA: statementNodeQuery,
|
|
133
|
+
nodeQueryB: statementNodeQuery,
|
|
134
|
+
unify: function(statementNodeA, statementNodeB, substitutions, localContextA, localContextB, unifyAhead) {
|
|
135
|
+
var statementVerifiedAgainstStatement;
|
|
136
|
+
var metavariableNodeA = metavariableNodeQuery(statementNodeA);
|
|
137
|
+
if (metavariableNodeA !== null) {
|
|
138
|
+
var substitutionNodeA = substitutionNodeQuery(statementNodeA), metavariableUnifiedAgainstStatement = (0, _metavariableAgainstStatement.default)(metavariableNodeA, statementNodeB, substitutionNodeA, substitutions, localContextA, localContextB, unifyAhead);
|
|
139
|
+
statementVerifiedAgainstStatement = metavariableUnifiedAgainstStatement; ///
|
|
140
|
+
} else {
|
|
141
|
+
var nonTerminalNodeA = statementNodeA, nonTerminalNodeB = statementNodeB, nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(), nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(), childNodesA = nonTerminalNodeAChildNodes, childNodesB = nonTerminalNodeBChildNodes, childNodesVerified = metaLevelUnifier.unifyChildNodes(childNodesA, childNodesB, substitutions, localContextA, localContextB, unifyAhead);
|
|
142
|
+
statementVerifiedAgainstStatement = childNodesVerified; ///
|
|
143
|
+
}
|
|
144
|
+
return statementVerifiedAgainstStatement;
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
nodeQueryA: termVariableNodeQuery,
|
|
149
|
+
nodeQueryB: termNodeQuery,
|
|
150
|
+
unify: function(termVariableNodeA, termNodeB, substitutions, localContextA, localContextB, unifyAhead) {
|
|
151
|
+
var variableNodeA = termVariableNodeA, variableUnifiedAgainstTerm = (0, _variableAgainstTerm.default)(variableNodeA, termNodeB, substitutions, localContextA, localContextB, unifyAhead);
|
|
152
|
+
return variableUnifiedAgainstTerm;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
]);
|
|
229
156
|
var metaLevelUnifier = new MetaLevelUnifier();
|
|
230
157
|
Object.assign(_shim.default, {
|
|
231
158
|
metaLevelUnifier: metaLevelUnifier
|
|
232
159
|
});
|
|
233
160
|
var _default = metaLevelUnifier;
|
|
234
161
|
|
|
235
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmaWVyL21ldGFMZXZlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHNoaW0gZnJvbSBcIi4uL3NoaW1cIjtcbmltcG9ydCBVbmlmaWVyIGZyb20gXCIuLi91bmlmaWVyXCI7XG5pbXBvcnQgdW5pZnlWYXJpYWJsZUFnYWluc3RUZXJtIGZyb20gXCIuLi91bmlmeS92YXJpYWJsZUFnYWluc3RUZXJtXCI7XG5pbXBvcnQgdW5pZnlNZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50IGZyb20gXCIuLi91bmlmeS9tZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50XCI7XG5cbmltcG9ydCB7IHVuaWZ5IH0gZnJvbSBcIi4uL3VuaWZpZXJcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQhXCIpLFxuICAgICAgbm9uVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvKlwiKSxcbiAgICAgIHRlcm1WYXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtL3ZhcmlhYmxlIVwiKSxcbiAgICAgIHN0YXRlbWVudFN1YnN0aXR1dGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvc3Vic3RpdHV0aW9uIVwiKSxcbiAgICAgIHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvbWV0YXZhcmlhYmxlIVwiKTtcblxuY2xhc3MgTWV0YUxldmVsVW5pZmllciBleHRlbmRzIFVuaWZpZXIge1xuICB1bmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG5cbiAgICBjb25zdCBub2RlUXVlcnlNYXBzID0gW1xuICAgICAge1xuICAgICAgICBub2RlUXVlcnlBOiBzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlUXVlcnksXG4gICAgICAgIG5vZGVRdWVyeUI6IHN0YXRlbWVudE5vZGVRdWVyeSxcbiAgICAgICAgdW5pZnk6IChub2RlQSwgbm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpID0+IHtcbiAgICAgICAgICBsZXQgbm9uVGVybWluYWxOb2RlVW5pZmllZDtcblxuICAgICAgICAgIGNvbnN0IHN0YXRlbWVudE5vZGVBID0gbm9uVGVybWluYWxOb2RlQSwgIC8vL1xuICAgICAgICAgICAgICAgIHN0YXRlbWVudE5vZGVCID0gbm9kZUIsIC8vL1xuICAgICAgICAgICAgICAgIHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVBID0gbm9kZUEsIC8vL1xuICAgICAgICAgICAgICAgIHN0YXRlbWVudFN1YnN0aXR1dGlvbk5vZGVBID0gc3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGVBKSxcbiAgICAgICAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RTdGF0ZW1lbnROb2RlID1cblxuICAgICAgICAgICAgICAgICAgdGhpcy51bmlmeVN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVBZ2FpbnN0U3RhdGVtZW50Tm9kZShzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlQSwgc3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZUEsIHN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKTtcblxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPSBtZXRhdmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RTdGF0ZW1lbnROb2RlOyAgLy8vXG5cbiAgICAgICAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVW5pZmllZDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbm9kZVF1ZXJ5QTogdGVybVZhcmlhYmxlTm9kZVF1ZXJ5LFxuICAgICAgICBub2RlUXVlcnlCOiB0ZXJtTm9kZVF1ZXJ5LFxuICAgICAgICB1bmlmeTogKG5vZGVBLCBub2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0QiwgdW5pZnlBaGVhZCkgPT4ge1xuICAgICAgICAgIGxldCBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgICAgICAgY29uc3QgdGVybU5vZGVCID0gbm9kZUIsICAvLy9cbiAgICAgICAgICAgICAgICB0ZXJtVmFyaWFibGVOb2RlQSA9IG5vZGVBLCAgLy8vXG4gICAgICAgICAgICAgICAgdGVybVZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0VGVybU5vZGUgPVxuXG4gICAgICAgICAgICAgICAgICB0aGlzLnVuaWZ5VGVybVZhcmlhYmxlTm9kZUFnYWluc3RUZXJtTm9kZSh0ZXJtVmFyaWFibGVOb2RlQSwgdGVybU5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKTtcblxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPSB0ZXJtVmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RUZXJtTm9kZTsgIC8vL1xuXG4gICAgICAgICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5vZGVRdWVyeUE6IG5vblRlcm1pbmFsTm9kZVF1ZXJ5LFxuICAgICAgICBub2RlUXVlcnlCOiBub25UZXJtaW5hbE5vZGVRdWVyeSxcbiAgICAgICAgdW5pZnk6IChub2RlQSwgbm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpID0+IHtcbiAgICAgICAgICBsZXQgbm9uVGVybWluYWxOb2RlVW5pZmllZDtcblxuICAgICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSBub2RlQSwgLy8vXG4gICAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQiA9IG5vZGVCOyAvLy9cblxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPVxuXG4gICAgICAgICAgICBzdXBlci51bmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKTtcblxuICAgICAgICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgXTtcblxuICAgIGNvbnN0IG5vZGVzVW5pZmllZCA9IHVuaWZ5KG5vZGVRdWVyeU1hcHMsIG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpO1xuXG4gICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9IG5vZGVzVW5pZmllZDsgIC8vL1xuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeVN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVBZ2FpbnN0U3RhdGVtZW50Tm9kZShzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlQSwgc3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZUEsIHN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKSB7XG4gICAgbGV0IG1ldGF2YXJpYWJsZU5vZGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudE5vZGU7XG5cbiAgICBjb25zdCBzdWJzdGl0dXRpb25Ob2RlID0gc3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZUEsICAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlQSA9IHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVBLCAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudCA9IHVuaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdFN0YXRlbWVudChtZXRhdmFyaWFibGVOb2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbk5vZGUsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpO1xuXG4gICAgbWV0YXZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50Tm9kZSA9IG1ldGF2YXJpYWJsZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50OyAgLy8vXG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIHVuaWZ5VGVybVZhcmlhYmxlTm9kZUFnYWluc3RUZXJtTm9kZSh0ZXJtVmFyaWFibGVOb2RlQSwgdGVybU5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKSB7XG4gICAgbGV0IHRlcm1WYXJpYWJsZU5vZGVVbmlmaWVkQWdhaW5zdFRlcm1Ob2RlO1xuXG4gICAgY29uc3QgdmFyaWFibGVOb2RlQSA9IHRlcm1WYXJpYWJsZU5vZGVBLCAvLy9cbiAgICAgICAgICB0ZXJtVW5pZmllZEFnYWluc3RWYXJpYWJsZSA9IHVuaWZ5VmFyaWFibGVBZ2FpbnN0VGVybSh2YXJpYWJsZU5vZGVBLCB0ZXJtTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpO1xuXG4gICAgdGVybVZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0VGVybU5vZGUgPSB0ZXJtVW5pZmllZEFnYWluc3RWYXJpYWJsZTsgIC8vL1xuXG4gICAgcmV0dXJuIHRlcm1WYXJpYWJsZU5vZGVVbmlmaWVkQWdhaW5zdFRlcm1Ob2RlO1xuICB9XG59XG5cbmNvbnN0IG1ldGFMZXZlbFVuaWZpZXIgPSBuZXcgTWV0YUxldmVsVW5pZmllcigpO1xuXG5PYmplY3QuYXNzaWduKHNoaW0sIHtcbiAgbWV0YUxldmVsVW5pZmllclxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG1ldGFMZXZlbFVuaWZpZXI7XG4iXSwibmFtZXMiOlsidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm5vblRlcm1pbmFsTm9kZVF1ZXJ5IiwidGVybVZhcmlhYmxlTm9kZVF1ZXJ5Iiwic3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZVF1ZXJ5Iiwic3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwiTWV0YUxldmVsVW5pZmllciIsInVuaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJzdWJzdGl0dXRpb25zIiwibG9jYWxDb250ZXh0QSIsImxvY2FsQ29udGV4dEIiLCJ1bmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVW5pZmllZCIsIm5vZGVRdWVyeU1hcHMiLCJub2RlUXVlcnlBIiwibm9kZVF1ZXJ5QiIsInVuaWZ5Iiwibm9kZUEiLCJub2RlQiIsInN0YXRlbWVudE5vZGVBIiwic3RhdGVtZW50Tm9kZUIiLCJzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlQSIsInN0YXRlbWVudFN1YnN0aXR1dGlvbk5vZGVBIiwibWV0YXZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50Tm9kZSIsInVuaWZ5U3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZUFnYWluc3RTdGF0ZW1lbnROb2RlIiwidGVybU5vZGVCIiwidGVybVZhcmlhYmxlTm9kZUEiLCJ0ZXJtVmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RUZXJtTm9kZSIsInVuaWZ5VGVybVZhcmlhYmxlTm9kZUFnYWluc3RUZXJtTm9kZSIsIm5vZGVzVW5pZmllZCIsInN1YnN0aXR1dGlvbk5vZGUiLCJtZXRhdmFyaWFibGVOb2RlQSIsIm1ldGF2YXJpYWJsZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50IiwidW5pZnlNZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50IiwidmFyaWFibGVOb2RlQSIsInRlcm1VbmlmaWVkQWdhaW5zdFZhcmlhYmxlIiwidW5pZnlWYXJpYWJsZUFnYWluc3RUZXJtIiwiVW5pZmllciIsIm1ldGFMZXZlbFVuaWZpZXIiLCJPYmplY3QiLCJhc3NpZ24iLCJzaGltIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpSEE7OztlQUFBOzs7MkRBL0dpQjsrREFDRzswRUFDaUI7bUZBQ1M7cUJBR3BCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUxQixJQUFNQSxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsV0FDMUJDLHFCQUFxQkQsSUFBQUEsZ0JBQVMsRUFBQyxnQkFDL0JFLHVCQUF1QkYsSUFBQUEsZ0JBQVMsRUFBQyxPQUNqQ0csd0JBQXdCSCxJQUFBQSxnQkFBUyxFQUFDLG9CQUNsQ0ksaUNBQWlDSixJQUFBQSxnQkFBUyxFQUFDLDZCQUMzQ0ssaUNBQWlDTCxJQUFBQSxnQkFBUyxFQUFDO0FBRWpELElBQUEsQUFBTU0saUNBQUQsQUFBTDtjQUFNQTthQUFBQTtnQ0FBQUE7aUNBQUFBOztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxxQkFBcUJDLGdCQUFnQixFQUFFQyxnQkFBZ0IsRUFBRUMsYUFBYSxF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
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmaWVyL21ldGFMZXZlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHNoaW0gZnJvbSBcIi4uL3NoaW1cIjtcbmltcG9ydCBVbmlmaWVyIGZyb20gXCIuLi91bmlmaWVyXCI7XG5pbXBvcnQgdW5pZnlWYXJpYWJsZUFnYWluc3RUZXJtIGZyb20gXCIuLi91bmlmeS92YXJpYWJsZUFnYWluc3RUZXJtXCI7XG5pbXBvcnQgdW5pZnlNZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50IGZyb20gXCIuLi91bmlmeS9tZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50XCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQhXCIpLFxuICAgICAgdGVybVZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm0vdmFyaWFibGUhXCIpLFxuICAgICAgc3Vic3RpdHV0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC9zdWJzdGl0dXRpb24hXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC9tZXRhdmFyaWFibGUhXCIpO1xuXG5jbGFzcyBNZXRhTGV2ZWxVbmlmaWVyIGV4dGVuZHMgVW5pZmllciB7XG4gIHVuaWZ5KG5vZGVBLCBub2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0Qikge1xuICAgIGxldCB1bmlmaWVkO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IG5vZGVBLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUIsIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPSB0aGlzLnVuaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHVuaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICAgIHJldHVybiB1bmlmaWVkQWhlYWQ7XG4gICAgICAgICAgfSk7XG5cbiAgICB1bmlmaWVkID0gbm9uVGVybWluYWxOb2RlVW5pZmllZDsgLy8vXG5cbiAgICByZXR1cm4gdW5pZmllZDtcbiAgfVxuXG4gIHN0YXRpYyBtYXBzID0gW1xuICAgIHtcbiAgICAgIG5vZGVRdWVyeUE6IHN0YXRlbWVudE5vZGVRdWVyeSxcbiAgICAgIG5vZGVRdWVyeUI6IHN0YXRlbWVudE5vZGVRdWVyeSxcbiAgICAgIHVuaWZ5OiAoc3RhdGVtZW50Tm9kZUEsIHN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKSA9PiB7XG4gICAgICAgIGxldCBzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RTdGF0ZW1lbnQ7XG5cbiAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZUEgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkoc3RhdGVtZW50Tm9kZUEpO1xuXG4gICAgICAgIGlmIChtZXRhdmFyaWFibGVOb2RlQSAhPT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IHN1YnN0aXR1dGlvbk5vZGVBID0gc3Vic3RpdHV0aW9uTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGVBKSxcbiAgICAgICAgICAgICAgICBtZXRhdmFyaWFibGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudCA9IHVuaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdFN0YXRlbWVudChtZXRhdmFyaWFibGVOb2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbk5vZGVBLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKTtcblxuICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdFN0YXRlbWVudCA9IG1ldGF2YXJpYWJsZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50OyAgLy8vXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IHN0YXRlbWVudE5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gc3RhdGVtZW50Tm9kZUIsIC8vL1xuICAgICAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlQS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGVCLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVzQSA9IG5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVzQiA9IG5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZpZWQgPSBtZXRhTGV2ZWxVbmlmaWVyLnVuaWZ5Q2hpbGROb2RlcyhjaGlsZE5vZGVzQSwgY2hpbGROb2Rlc0IsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgc3RhdGVtZW50VmVyaWZpZWRBZ2FpbnN0U3RhdGVtZW50ID0gY2hpbGROb2Rlc1ZlcmlmaWVkOyAvLy9cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RTdGF0ZW1lbnQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlUXVlcnlBOiB0ZXJtVmFyaWFibGVOb2RlUXVlcnksXG4gICAgICBub2RlUXVlcnlCOiB0ZXJtTm9kZVF1ZXJ5LFxuICAgICAgdW5pZnk6ICh0ZXJtVmFyaWFibGVOb2RlQSwgdGVybU5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKSA9PiB7XG4gICAgICAgIGNvbnN0IHZhcmlhYmxlTm9kZUEgPSB0ZXJtVmFyaWFibGVOb2RlQSwgLy8vXG4gICAgICAgICAgICAgIHZhcmlhYmxlVW5pZmllZEFnYWluc3RUZXJtID0gdW5pZnlWYXJpYWJsZUFnYWluc3RUZXJtKHZhcmlhYmxlTm9kZUEsIHRlcm1Ob2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0QiwgdW5pZnlBaGVhZCk7XG5cbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlVW5pZmllZEFnYWluc3RUZXJtO1xuICAgICAgfVxuICAgIH1cbiAgXTtcbn1cblxuY29uc3QgbWV0YUxldmVsVW5pZmllciA9IG5ldyBNZXRhTGV2ZWxVbmlmaWVyKCk7XG5cbk9iamVjdC5hc3NpZ24oc2hpbSwge1xuICBtZXRhTGV2ZWxVbmlmaWVyXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbWV0YUxldmVsVW5pZmllcjtcbiJdLCJuYW1lcyI6WyJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5IiwidGVybVZhcmlhYmxlTm9kZVF1ZXJ5Iiwic3Vic3RpdHV0aW9uTm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwiTWV0YUxldmVsVW5pZmllciIsInVuaWZ5Iiwibm9kZUEiLCJub2RlQiIsInN1YnN0aXR1dGlvbnMiLCJsb2NhbENvbnRleHRBIiwibG9jYWxDb250ZXh0QiIsInVuaWZpZWQiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsIm5vblRlcm1pbmFsTm9kZVVuaWZpZWQiLCJ1bmlmeU5vblRlcm1pbmFsTm9kZSIsInVuaWZpZWRBaGVhZCIsIlVuaWZpZXIiLCJtYXBzIiwibm9kZVF1ZXJ5QSIsIm5vZGVRdWVyeUIiLCJzdGF0ZW1lbnROb2RlQSIsInN0YXRlbWVudE5vZGVCIiwidW5pZnlBaGVhZCIsInN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdFN0YXRlbWVudCIsIm1ldGF2YXJpYWJsZU5vZGVBIiwic3Vic3RpdHV0aW9uTm9kZUEiLCJtZXRhdmFyaWFibGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudCIsInVuaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdFN0YXRlbWVudCIsIm5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsIm5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzIiwiY2hpbGROb2Rlc0EiLCJjaGlsZE5vZGVzQiIsImNoaWxkTm9kZXNWZXJpZmllZCIsIm1ldGFMZXZlbFVuaWZpZXIiLCJ1bmlmeUNoaWxkTm9kZXMiLCJ0ZXJtVmFyaWFibGVOb2RlQSIsInRlcm1Ob2RlQiIsInZhcmlhYmxlTm9kZUEiLCJ2YXJpYWJsZVVuaWZpZWRBZ2FpbnN0VGVybSIsInVuaWZ5VmFyaWFibGVBZ2FpbnN0VGVybSIsIk9iamVjdCIsImFzc2lnbiIsInNoaW0iXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWdGQTs7O2VBQUE7OzsyREE5RWlCOzhEQUNHOzBFQUNpQjttRkFDUztxQkFFcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFCLElBQU1BLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxXQUMxQkMscUJBQXFCRCxJQUFBQSxnQkFBUyxFQUFDLGdCQUMvQkUsd0JBQXdCRixJQUFBQSxnQkFBUyxFQUFDLG9CQUNsQ0csd0JBQXdCSCxJQUFBQSxnQkFBUyxFQUFDLDZCQUNsQ0ksd0JBQXdCSixJQUFBQSxnQkFBUyxFQUFDO0FBRXhDLElBQUEsQUFBTUssaUNBQUQsQUFBTDtjQUFNQTthQUFBQTtnQ0FBQUE7aUNBQUFBOztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxNQUFNQyxLQUFLLEVBQUVDLEtBQUssRUFBRUMsYUFBYSxFQUFFQyxhQUFhLEVBQUVDLGFBQWE7Z0JBQzdELElBQUlDO2dCQUVKLElBQU1DLG1CQUFtQk4sT0FDbkJPLG1CQUFtQk4sT0FDbkJPLHlCQUF5QixJQUFJLENBQUNDLG9CQUFvQixDQUFDSCxrQkFBa0JDLGtCQUFrQkwsZUFBZUMsZUFBZUMsZUFBZTtvQkFDbEksSUFBTU0sZUFBZTtvQkFFckIsT0FBT0E7Z0JBQ1Q7Z0JBRU5MLFVBQVVHLHdCQUF3QixHQUFHO2dCQUVyQyxPQUFPSDtZQUNUOzs7V0FmSVA7RUFBeUJhLGdCQUFPO0FBaUJwQyxpQkFqQkliLGtCQWlCR2MsUUFBTztJQUNaO1FBQ0VDLFlBQVluQjtRQUNab0IsWUFBWXBCO1FBQ1pLLE9BQU8sU0FBQ2dCLGdCQUFnQkMsZ0JBQWdCZCxlQUFlQyxlQUFlQyxlQUFlYTtZQUNuRixJQUFJQztZQUVKLElBQU1DLG9CQUFvQnRCLHNCQUFzQmtCO1lBRWhELElBQUlJLHNCQUFzQixNQUFNO2dCQUM5QixJQUFNQyxvQkFBb0J4QixzQkFBc0JtQixpQkFDMUNNLHNDQUFzQ0MsSUFBQUEscUNBQWlDLEVBQUNILG1CQUFtQkgsZ0JBQWdCSSxtQkFBbUJsQixlQUFlQyxlQUFlQyxlQUFlYTtnQkFFakxDLG9DQUFvQ0cscUNBQXNDLEdBQUc7WUFDL0UsT0FBTztnQkFDTCxJQUFNZixtQkFBbUJTLGdCQUNuQlIsbUJBQW1CUyxnQkFDbkJPLDZCQUE2QmpCLGlCQUFpQmtCLGFBQWEsSUFDM0RDLDZCQUE2QmxCLGlCQUFpQmlCLGFBQWEsSUFDM0RFLGNBQWNILDRCQUNkSSxjQUFjRiw0QkFDZEcscUJBQXFCQyxpQkFBaUJDLGVBQWUsQ0FBQ0osYUFBYUMsYUFBYXpCLGVBQWVDLGVBQWVDLGVBQWVhO2dCQUVuSUMsb0NBQW9DVSxvQkFBb0IsR0FBRztZQUM3RDtZQUVBLE9BQU9WO1FBQ1Q7SUFDRjtJQUNBO1FBQ0VMLFlBQVlsQjtRQUNabUIsWUFBWXRCO1FBQ1pPLE9BQU8sU0FBQ2dDLG1CQUFtQkMsV0FBVzlCLGVBQWVDLGVBQWVDLGVBQWVhO1lBQ2pGLElBQU1nQixnQkFBZ0JGLG1CQUNoQkcsNkJBQTZCQyxJQUFBQSw0QkFBd0IsRUFBQ0YsZUFBZUQsV0FBVzlCLGVBQWVDLGVBQWVDLGVBQWVhO1lBRW5JLE9BQU9pQjtRQUNUO0lBQ0Y7Q0FDRDtBQUdILElBQU1MLG1CQUFtQixJQUFJL0I7QUFFN0JzQyxPQUFPQyxNQUFNLENBQUNDLGFBQUksRUFBRTtJQUNsQlQsa0JBQUFBO0FBQ0Y7SUFFQSxXQUFlQSJ9
|