occam-verify-cli 0.0.968 → 0.0.971
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/bin/action/verify.js +6 -8
- package/lib/constants.js +5 -1
- package/lib/context/file.js +48 -53
- package/lib/context/local.js +45 -39
- package/lib/context/release.js +3 -3
- package/lib/declaration.js +9 -7
- package/lib/equivalence.js +23 -21
- package/lib/judgement.js +3 -3
- package/lib/label.js +3 -3
- package/lib/log.js +3 -3
- package/lib/metaType.js +7 -7
- package/lib/metavariable.js +7 -7
- package/lib/node/term/bracketed.js +16 -0
- package/lib/proofStep.js +3 -29
- package/lib/releaseContext/initialise.js +11 -17
- package/lib/resolve/substitutions.js +99 -0
- package/lib/rule.js +10 -6
- package/lib/substitution/statementForMetavariable.js +93 -98
- package/lib/substitution/termForVariable.js +45 -54
- package/lib/substitution.js +51 -9
- package/lib/substitutions.js +165 -12
- package/lib/term.js +8 -1
- package/lib/topLevelAssertion.js +10 -6
- package/lib/type.js +5 -5
- package/lib/unifier/metaLevel.js +10 -3
- package/lib/unifier/statementWithCombinator.js +6 -6
- package/lib/unifier.js +2 -2
- package/lib/unify/metavariableWithStatement.js +13 -48
- package/lib/unify/metavariableWithStatementGivenSubstitution.js +39 -0
- package/lib/unify/premiseWithProofStep.js +3 -3
- package/lib/unify/statement/qualified.js +117 -0
- package/lib/unify/statement/unqualified.js +25 -0
- package/lib/unify/statementWithBracketedCombinator.js +3 -3
- package/lib/unify/statementWithCombinators.js +5 -5
- package/lib/unify/statementWithMetaType.js +3 -3
- package/lib/unify/statementWithSttaemetnGivenEquivalences.js +45 -0
- package/lib/unify/suppositionWithProffStep.js +3 -3
- package/lib/unify/variableWithTerm.js +11 -26
- package/lib/utilities/array.js +5 -14
- package/lib/utilities/assertion.js +24 -0
- package/lib/utilities/brackets.js +60 -0
- package/lib/utilities/message.js +52 -0
- package/lib/utilities/name.js +7 -7
- package/lib/utilities/node.js +10 -17
- package/lib/utilities/string.js +1 -7
- package/lib/utilities/subproof.js +19 -0
- package/lib/utilities/unify.js +30 -11
- package/lib/variable.js +8 -8
- package/lib/verifier/metaLevel.js +6 -6
- package/lib/verifier/statementAsCombinator.js +2 -2
- package/lib/verify/assertion/contained.js +66 -32
- package/lib/verify/assertion/defined.js +51 -46
- package/lib/verify/assertion/subproof.js +9 -9
- package/lib/verify/assertion/type.js +11 -11
- package/lib/verify/conclusion.js +6 -6
- package/lib/verify/consequent.js +6 -6
- package/lib/verify/declaration/metavariable.js +2 -2
- package/lib/verify/declaration.js +34 -20
- package/lib/verify/equality.js +13 -13
- package/lib/verify/frame.js +38 -24
- package/lib/verify/judgement.js +13 -13
- package/lib/verify/metavariable.js +2 -2
- package/lib/verify/premise.js +5 -5
- package/lib/verify/proofStep.js +15 -24
- package/lib/verify/statement/qualified.js +15 -124
- package/lib/verify/statement/unqualified.js +23 -24
- package/lib/verify/statement.js +24 -24
- package/lib/verify/statementGivenMetaType.js +3 -3
- package/lib/verify/supposition.js +5 -5
- package/package.json +2 -2
- package/src/constants.js +1 -0
- package/src/context/file.js +49 -55
- package/src/context/local.js +34 -31
- package/src/context/release.js +2 -2
- package/src/declaration.js +12 -10
- package/src/equivalence.js +27 -26
- package/src/judgement.js +2 -2
- package/src/label.js +2 -2
- package/src/log.js +1 -1
- package/src/metaType.js +7 -7
- package/src/metavariable.js +7 -7
- package/src/node/term/bracketed.js +9 -0
- package/src/proofStep.js +3 -48
- package/src/releaseContext/initialise.js +13 -24
- package/src/resolve/substitutions.js +134 -0
- package/src/rule.js +10 -5
- package/src/substitution/statementForMetavariable.js +99 -85
- package/src/substitution/termForVariable.js +50 -65
- package/src/substitution.js +46 -8
- package/src/substitutions.js +176 -10
- package/src/term.js +6 -0
- package/src/topLevelAssertion.js +10 -5
- package/src/type.js +4 -4
- package/src/unifier/metaLevel.js +11 -3
- package/src/unifier/statementWithCombinator.js +5 -5
- package/src/unifier.js +1 -1
- package/src/unify/metavariableWithStatement.js +17 -71
- package/src/unify/metavariableWithStatementGivenSubstitution.js +39 -0
- package/src/unify/premiseWithProofStep.js +1 -1
- package/src/unify/statement/qualified.js +183 -0
- package/src/unify/statement/unqualified.js +24 -0
- package/src/unify/statementWithBracketedCombinator.js +2 -2
- package/src/unify/statementWithCombinators.js +4 -4
- package/src/unify/statementWithMetaType.js +2 -2
- package/src/unify/statementWithSttaemetnGivenEquivalences.js +51 -0
- package/src/unify/suppositionWithProffStep.js +1 -1
- package/src/unify/variableWithTerm.js +14 -35
- package/src/utilities/array.js +1 -16
- package/src/utilities/assertion.js +19 -0
- package/src/utilities/brackets.js +56 -0
- package/src/utilities/name.js +8 -8
- package/src/utilities/node.js +14 -17
- package/src/utilities/string.js +2 -2
- package/src/utilities/subproof.js +18 -0
- package/src/utilities/unify.js +24 -12
- package/src/variable.js +11 -11
- package/src/verifier/metaLevel.js +5 -5
- package/src/verifier/statementAsCombinator.js +2 -2
- package/src/verify/assertion/contained.js +80 -38
- package/src/verify/assertion/defined.js +64 -55
- package/src/verify/assertion/subproof.js +8 -8
- package/src/verify/assertion/type.js +11 -11
- package/src/verify/conclusion.js +8 -8
- package/src/verify/consequent.js +8 -8
- package/src/verify/declaration/metavariable.js +4 -3
- package/src/verify/declaration.js +46 -23
- package/src/verify/equality.js +13 -13
- package/src/verify/frame.js +48 -28
- package/src/verify/judgement.js +13 -13
- package/src/verify/metavariable.js +3 -3
- package/src/verify/premise.js +6 -6
- package/src/verify/proofStep.js +14 -31
- package/src/verify/statement/qualified.js +18 -199
- package/src/verify/statement/unqualified.js +25 -31
- package/src/verify/statement.js +23 -23
- package/src/verify/statementGivenMetaType.js +2 -2
- package/src/verify/supposition.js +6 -6
- package/lib/unify/statementAtainstStatement.js +0 -49
- package/lib/utilities/lineIndex.js +0 -52
- package/lib/utilities/match.js +0 -59
- package/lib/utilities/verify.js +0 -19
- package/src/unify/statementAtainstStatement.js +0 -56
- package/src/utilities/match.js +0 -53
- package/src/utilities/verify.js +0 -14
- /package/src/utilities/{lineIndex.js → message.js} +0 -0
|
@@ -16,7 +16,7 @@ function verifyMetavariable(metavariableNode, localContext) {
|
|
|
16
16
|
var metavariableVerified = false;
|
|
17
17
|
var metavariableString = localContext.nodeAsString(metavariableNode);
|
|
18
18
|
localContext.trace("Verifying the '".concat(metavariableString, "' metavariable..."), metavariableNode);
|
|
19
|
-
var
|
|
19
|
+
var metavariableName = (0, _name.metavariableNameFromMetavariableNode)(metavariableNode), metavariable = localContext.findMetavariableByMetavariableName(metavariableName);
|
|
20
20
|
if (metavariable === null) {
|
|
21
21
|
localContext.debug("The metavariable '".concat(metavariableString, "' is not present."), metavariableNode);
|
|
22
22
|
} else {
|
|
@@ -48,4 +48,4 @@ function verifyMetavariable(metavariableNode, localContext) {
|
|
|
48
48
|
return metavariableVerified;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB1bmlmeVRlcm1XaXRoVGVybVR5cGUgfSBmcm9tIFwiLi4vbWV0YXZhcmlhYmxlXCI7XG5pbXBvcnQgeyBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL25hbWVcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdmFyaWFibGUvYXJndW1lbnQvdGVybVwiKSxcbiAgICAgIHR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXZhcmlhYmxlL2FyZ3VtZW50L3R5cGVcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeU1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhdmFyaWFibGVOb2RlKTtcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlLi4uYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgbWV0YXZhcmlhYmxlID0gbG9jYWxDb250ZXh0LmZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5hbWUobWV0YXZhcmlhYmxlTmFtZSk7XG5cbiAgaWYgKG1ldGF2YXJpYWJsZSA9PT0gbnVsbCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgVGhlIG1ldGF2YXJpYWJsZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBpcyBub3QgcHJlc2VudC5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICBpZiAodHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHR5cGVTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKHR5cGVOb2RlKTtcblxuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgJyR7dHlwZVN0cmluZ30nIHR5cGUgd2FzIGZvdW5kIHdoZW4gYSB0ZXJtIHNob3VsZCBiZSBwcmVzZW50LmAsIHR5cGVOb2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdGVybVR5cGUgPSBtZXRhdmFyaWFibGUuZ2V0VGVybVR5cGUoKSxcbiAgICAgICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeShtZXRhdmFyaWFibGVOb2RlKTtcblxuICAgICAgaWYgKGZhbHNlKSB7XG4gICAgICAgIC8vL1xuICAgICAgfSBlbHNlIGlmICgodGVybVR5cGUgPT09IG51bGwpICYmICh0ZXJtTm9kZSA9PT0gbnVsbCkpIHtcbiAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfSBlbHNlIGlmICgodGVybVR5cGUgPT09IG51bGwpICYmICh0ZXJtTm9kZSAhPT0gbnVsbCkpIHtcbiAgICAgICAgY29uc3QgdGVybVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcodGVybU5vZGUpO1xuXG4gICAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgVGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIHdhcyBmb3VuZCB3aGVuIG5vbmUgaXMgZXhwZWN0ZWQuYCwgdGVybU5vZGUpO1xuICAgICAgfSBlbHNlIGlmICgodGVybVR5cGUgIT09IG51bGwpICYmICh0ZXJtTm9kZSA9PT0gbnVsbCkpIHtcbiAgICAgICAgY29uc3QgdGVybVR5cGVOYW1lID0gdGVybVR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgTm8gdGVybSB3YXMgZm91bmQgd2hlbiB0aGUgbWV0YXZhcmlhYmxlJ3MgdGVybSB0eXBlIGlzICcke3Rlcm1UeXBlTmFtZX0nLmAsIHRlcm1Ob2RlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHRlcm1VbmlmaWVkV2l0aFRlcm1UeXBlID0gdW5pZnlUZXJtV2l0aFRlcm1UeXBlKHRlcm1Ob2RlLCB0ZXJtVHlwZSwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgICBtZXRhdmFyaWFibGVWZXJpZmllZCA9IHRlcm1VbmlmaWVkV2l0aFRlcm1UeXBlOyAvLy9cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWQpIHtcbiAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUuYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gbWV0YXZhcmlhYmxlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5TWV0YXZhcmlhYmxlIiwidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVOb2RlUXVlcnkiLCJtZXRhdmFyaWFibGVOb2RlIiwibG9jYWxDb250ZXh0IiwibWV0YXZhcmlhYmxlVmVyaWZpZWQiLCJtZXRhdmFyaWFibGVTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsIm1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGUiLCJmaW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOYW1lIiwiZGVidWciLCJ0eXBlTm9kZSIsInR5cGVTdHJpbmciLCJ0ZXJtVHlwZSIsImdldFRlcm1UeXBlIiwidGVybU5vZGUiLCJ0ZXJtU3RyaW5nIiwidGVybVR5cGVOYW1lIiwiZ2V0TmFtZSIsInRlcm1VbmlmaWVkV2l0aFRlcm1UeXBlIiwidW5pZnlUZXJtV2l0aFRlcm1UeXBlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQXdCQTs7O3FCQVBFOzRCQUNZO29CQUNlO0FBRXJELElBQU1DLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxnQ0FDMUJDLGdCQUFnQkQsSUFBQUEsZ0JBQVMsRUFBQztBQUVqQixTQUFTRixtQkFBbUJJLGdCQUFnQixFQUFFQyxZQUFZO0lBQ3ZFLElBQUlDLHVCQUF1QjtJQUUzQixJQUFNQyxxQkFBcUJGLGFBQWFHLFlBQVksQ0FBQ0o7SUFFckRDLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUFvQyxPQUFuQkYsb0JBQW1CLHNCQUFvQkg7SUFFNUUsSUFBTU0sbUJBQW1CQyxJQUFBQSwwQ0FBb0MsRUFBQ1AsbUJBQ3hEUSxlQUFlUCxhQUFhUSxrQ0FBa0MsQ0FBQ0g7SUFFckUsSUFBSUUsaUJBQWlCLE1BQU07UUFDekJQLGFBQWFTLEtBQUssQ0FBQyxBQUFDLHFCQUF1QyxPQUFuQlAsb0JBQW1CLHNCQUFvQkg7SUFDakYsT0FBTztRQUNMLElBQU1XLFdBQVdaLGNBQWNDO1FBRS9CLElBQUlXLGFBQWEsTUFBTTtZQUNyQixJQUFNQyxhQUFhWCxhQUFhRyxZQUFZLENBQUNPO1lBRTdDVixhQUFhUyxLQUFLLENBQUMsQUFBQyxRQUFrQixPQUFYRSxZQUFXLG9EQUFrREQ7UUFDMUYsT0FBTztZQUNMLElBQU1FLFdBQVdMLGFBQWFNLFdBQVcsSUFDbkNDLFdBQVdsQixjQUFjRztZQUUvQixJQUFJLE9BQU87WUFDVCxHQUFHO1lBQ0wsT0FBTyxJQUFJLEFBQUNhLGFBQWEsUUFBVUUsYUFBYSxNQUFPO2dCQUNyRGIsdUJBQXVCO1lBQ3pCLE9BQU8sSUFBSSxBQUFDVyxhQUFhLFFBQVVFLGFBQWEsTUFBTztnQkFDckQsSUFBTUMsYUFBYWYsYUFBYUcsWUFBWSxDQUFDVztnQkFFN0NkLGFBQWFTLEtBQUssQ0FBQyxBQUFDLFFBQWtCLE9BQVhNLFlBQVcsNENBQTBDRDtZQUNsRixPQUFPLElBQUksQUFBQ0YsYUFBYSxRQUFVRSxhQUFhLE1BQU87Z0JBQ3JELElBQU1FLGVBQWVKLFNBQVNLLE9BQU87Z0JBRXJDakIsYUFBYVMsS0FBSyxDQUFDLEFBQUMsMkRBQXVFLE9BQWJPLGNBQWEsT0FBS0Y7WUFDbEcsT0FBTztnQkFDTCxJQUFNSSwwQkFBMEJDLElBQUFBLG1DQUFxQixFQUFDTCxVQUFVRixVQUFVWjtnQkFFMUVDLHVCQUF1QmlCLHlCQUF5QixHQUFHO1lBQ3JEO1FBQ0Y7SUFDRjtJQUVBLElBQUlqQixzQkFBc0I7UUFDeEJELGFBQWFTLEtBQUssQ0FBQyxBQUFDLG9CQUFzQyxPQUFuQlAsb0JBQW1CLG9CQUFrQkg7SUFDOUU7SUFFQSxPQUFPRTtBQUNUIn0=
|
package/lib/verify/premise.js
CHANGED
|
@@ -10,7 +10,7 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
var _premise = /*#__PURE__*/ _interop_require_default(require("../premise"));
|
|
12
12
|
var _proofStep = /*#__PURE__*/ _interop_require_default(require("../proofStep"));
|
|
13
|
-
var
|
|
13
|
+
var _statement = /*#__PURE__*/ _interop_require_default(require("../verify/statement"));
|
|
14
14
|
var _query = require("../utilities/query");
|
|
15
15
|
var _assignments = require("../utilities/assignments");
|
|
16
16
|
function _interop_require_default(obj) {
|
|
@@ -25,11 +25,11 @@ function verifyPremise(premiseNode, premises, localContext) {
|
|
|
25
25
|
localContext.trace("Verifying the '".concat(premiseString, "' premise..."), premiseNode);
|
|
26
26
|
var unqualifiedStatementNode = unqualifiedStatementNodeQuery(premiseNode);
|
|
27
27
|
if (unqualifiedStatementNode !== null) {
|
|
28
|
-
var
|
|
29
|
-
if (
|
|
28
|
+
var stated = true, assignments = [], statementNode = statementNodeQuery(unqualifiedStatementNode), statementVerified = (0, _statement.default)(statementNode, assignments, stated, localContext);
|
|
29
|
+
if (statementVerified) {
|
|
30
30
|
var assignmentsAssigned = (0, _assignments.assignAssignments)(assignments, localContext);
|
|
31
31
|
if (assignmentsAssigned) {
|
|
32
|
-
var
|
|
32
|
+
var metaproofStep = _proofStep.default.fromStatementNode(statementNode), premise = _premise.default.fromStatementNode(statementNode);
|
|
33
33
|
premises.push(premise);
|
|
34
34
|
localContext.addProofStep(metaproofStep);
|
|
35
35
|
premiseVerified = true;
|
|
@@ -42,4 +42,4 @@ function verifyPremise(premiseNode, premises, localContext) {
|
|
|
42
42
|
return premiseVerified;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJlbWlzZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFByZW1pc2UgZnJvbSBcIi4uL3ByZW1pc2VcIjtcbmltcG9ydCBQcm9vZlN0ZXAgZnJvbSBcIi4uL3Byb29mU3RlcFwiO1xuaW1wb3J0IHZlcmlmeVN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBhc3NpZ25Bc3NpZ25tZW50cyB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXNzaWdubWVudHNcIjtcblxuY29uc3Qgc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3VucXVhbGlmaWVkU3RhdGVtZW50L3N0YXRlbWVudCFcIiksXG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9wcmVtaXNlL3VucXVhbGlmaWVkU3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UHJlbWlzZShwcmVtaXNlTm9kZSwgcHJlbWlzZXMsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgcHJlbWlzZVZlcmlmaWVkO1xuXG4gIGNvbnN0IHByZW1pc2VTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKHByZW1pc2VOb2RlKTtcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7cHJlbWlzZVN0cmluZ30nIHByZW1pc2UuLi5gLCBwcmVtaXNlTm9kZSk7XG5cbiAgY29uc3QgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkocHJlbWlzZU5vZGUpO1xuXG4gIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBzdGF0ZWQgPSB0cnVlLFxuICAgICAgICAgIGFzc2lnbm1lbnRzID0gW10sXG4gICAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGFzc2lnbm1lbnRzQXNzaWduZWQgPSBhc3NpZ25Bc3NpZ25tZW50cyhhc3NpZ25tZW50cywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGFzc2lnbm1lbnRzQXNzaWduZWQpIHtcbiAgICAgICAgY29uc3QgbWV0YXByb29mU3RlcCA9IFByb29mU3RlcC5mcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICAgICAgcHJlbWlzZSA9IFByZW1pc2UuZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgICAgcHJlbWlzZXMucHVzaChwcmVtaXNlKTtcblxuICAgICAgICBsb2NhbENvbnRleHQuYWRkUHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgICAgIHByZW1pc2VWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHByZW1pc2VWZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3ByZW1pc2VTdHJpbmd9JyBwcmVtaXNlLmAsIHByZW1pc2VOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBwcmVtaXNlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UHJlbWlzZSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5IiwicHJlbWlzZU5vZGUiLCJwcmVtaXNlcyIsImxvY2FsQ29udGV4dCIsInByZW1pc2VWZXJpZmllZCIsInByZW1pc2VTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsInN0YXRlZCIsImFzc2lnbm1lbnRzIiwic3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5U3RhdGVtZW50IiwiYXNzaWdubWVudHNBc3NpZ25lZCIsImFzc2lnbkFzc2lnbm1lbnRzIiwibWV0YXByb29mU3RlcCIsIlByb29mU3RlcCIsImZyb21TdGF0ZW1lbnROb2RlIiwicHJlbWlzZSIsIlByZW1pc2UiLCJwdXNoIiwiYWRkUHJvb2ZTdGVwIiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBd0JBOzs7OERBVko7Z0VBQ0U7Z0VBQ007cUJBRUY7MkJBQ1E7Ozs7OztBQUVsQyxJQUFNQyxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMscUNBQy9CQyxnQ0FBZ0NELElBQUFBLGdCQUFTLEVBQUM7QUFFakMsU0FBU0YsY0FBY0ksV0FBVyxFQUFFQyxRQUFRLEVBQUVDLFlBQVk7SUFDdkUsSUFBSUM7SUFFSixJQUFNQyxnQkFBZ0JGLGFBQWFHLFlBQVksQ0FBQ0w7SUFFaERFLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUErQixPQUFkRixlQUFjLGlCQUFlSjtJQUVsRSxJQUFNTywyQkFBMkJSLDhCQUE4QkM7SUFFL0QsSUFBSU8sNkJBQTZCLE1BQU07UUFDckMsSUFBTUMsU0FBUyxNQUNUQyxjQUFjLEVBQUUsRUFDaEJDLGdCQUFnQmIsbUJBQW1CVSwyQkFDbkNJLG9CQUFvQkMsSUFBQUEsa0JBQWUsRUFBQ0YsZUFBZUQsYUFBYUQsUUFBUU47UUFFOUUsSUFBSVMsbUJBQW1CO1lBQ3JCLElBQU1FLHNCQUFzQkMsSUFBQUEsOEJBQWlCLEVBQUNMLGFBQWFQO1lBRTNELElBQUlXLHFCQUFxQjtnQkFDdkIsSUFBTUUsZ0JBQWdCQyxrQkFBUyxDQUFDQyxpQkFBaUIsQ0FBQ1AsZ0JBQzVDUSxVQUFVQyxnQkFBTyxDQUFDRixpQkFBaUIsQ0FBQ1A7Z0JBRTFDVCxTQUFTbUIsSUFBSSxDQUFDRjtnQkFFZGhCLGFBQWFtQixZQUFZLENBQUNOO2dCQUUxQlosa0JBQWtCO1lBQ3BCO1FBQ0Y7SUFDRjtJQUVBLElBQUlBLGlCQUFpQjtRQUNuQkQsYUFBYW9CLEtBQUssQ0FBQyxBQUFDLG9CQUFpQyxPQUFkbEIsZUFBYyxlQUFhSjtJQUNwRTtJQUVBLE9BQU9HO0FBQ1QifQ==
|
package/lib/verify/proofStep.js
CHANGED
|
@@ -14,7 +14,6 @@ var _subproof = /*#__PURE__*/ _interop_require_default(require("../verify/subpro
|
|
|
14
14
|
var _qualified = /*#__PURE__*/ _interop_require_default(require("../verify/statement/qualified"));
|
|
15
15
|
var _unqualified = /*#__PURE__*/ _interop_require_default(require("../verify/statement/unqualified"));
|
|
16
16
|
var _query = require("../utilities/query");
|
|
17
|
-
var _assignments = require("../utilities/assignments");
|
|
18
17
|
function _interop_require_default(obj) {
|
|
19
18
|
return obj && obj.__esModule ? obj : {
|
|
20
19
|
default: obj
|
|
@@ -25,32 +24,24 @@ function verifyProofStep(proofStepNode, substitutions, localContext) {
|
|
|
25
24
|
var proofStepVerified = false;
|
|
26
25
|
var subproofNode = subproofNodeQuery(proofStepNode), qualifiedStatementNode = qualifiedStatementNodeQuery(proofStepNode), unqualifiedStatementNode = unqualifiedStatementNodeQuery(proofStepNode);
|
|
27
26
|
var proofStep = null;
|
|
28
|
-
if (
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
if (false) {
|
|
28
|
+
///
|
|
29
|
+
} else if (subproofNode !== null) {
|
|
30
|
+
var subproofVerified = (0, _subproof.default)(subproofNode, substitutions, localContext);
|
|
31
31
|
if (subproofVerified) {
|
|
32
32
|
proofStep = _proofStep.default.fromSubproofNode(subproofNode);
|
|
33
33
|
}
|
|
34
|
-
} else {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
if (assignmentsAssigned) {
|
|
40
|
-
var statementNode = statementNodeQuery(qualifiedStatementNode);
|
|
41
|
-
proofStep = _proofStep.default.fromStatementNode(statementNode);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
34
|
+
} else if (qualifiedStatementNode !== null) {
|
|
35
|
+
var qualifiedStatementVerified = (0, _qualified.default)(qualifiedStatementNode, substitutions, localContext);
|
|
36
|
+
if (qualifiedStatementVerified) {
|
|
37
|
+
var statementNode = statementNodeQuery(qualifiedStatementNode);
|
|
38
|
+
proofStep = _proofStep.default.fromStatementNode(statementNode);
|
|
44
39
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
var statementNode1 = statementNodeQuery(unqualifiedStatementNode);
|
|
51
|
-
proofStep = _proofStep.default.fromStatementNode(statementNode1);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
40
|
+
} else if (unqualifiedStatementNode !== null) {
|
|
41
|
+
var unqualifiedStatementVerified = (0, _unqualified.default)(unqualifiedStatementNode, localContext);
|
|
42
|
+
if (unqualifiedStatementVerified) {
|
|
43
|
+
var statementNode1 = statementNodeQuery(unqualifiedStatementNode);
|
|
44
|
+
proofStep = _proofStep.default.fromStatementNode(statementNode1);
|
|
54
45
|
}
|
|
55
46
|
}
|
|
56
47
|
if (proofStep !== null) {
|
|
@@ -63,4 +54,4 @@ Object.assign(_shim.default, {
|
|
|
63
54
|
verifyProofStep: verifyProofStep
|
|
64
55
|
});
|
|
65
56
|
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJvb2ZTdGVwLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgc2hpbSBmcm9tIFwiLi4vc2hpbVwiO1xuaW1wb3J0IFByb29mU3RlcCBmcm9tIFwiLi4vcHJvb2ZTdGVwXCI7XG5pbXBvcnQgdmVyaWZ5U3VicHJvb2YgZnJvbSBcIi4uL3ZlcmlmeS9zdWJwcm9vZlwiO1xuaW1wb3J0IHZlcmlmeVF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC9xdWFsaWZpZWRcIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHN1YnByb29mTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb29mU3RlcHxsYXN0UHJvb2ZTdGVwL3N1YnByb29mIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRTdGF0ZW1lbnR8dW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIHF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9wcm9vZlN0ZXB8bGFzdFByb29mU3RlcC9xdWFsaWZpZWRTdGF0ZW1lbnQhXCIpLFxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJvb2ZTdGVwfGxhc3RQcm9vZlN0ZXAvdW5xdWFsaWZpZWRTdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlQcm9vZlN0ZXAocHJvb2ZTdGVwTm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBwcm9vZlN0ZXBWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IHN1YnByb29mTm9kZSA9IHN1YnByb29mTm9kZVF1ZXJ5KHByb29mU3RlcE5vZGUpLFxuICAgICAgICBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gcXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5KHByb29mU3RlcE5vZGUpLFxuICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeShwcm9vZlN0ZXBOb2RlKTtcblxuICBsZXQgcHJvb2ZTdGVwID0gbnVsbDtcblxuICBpZiAoZmFsc2UpIHtcbiAgICAvLy9cbiAgfSBlbHNlIGlmIChzdWJwcm9vZk5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBzdWJwcm9vZlZlcmlmaWVkID0gdmVyaWZ5U3VicHJvb2Yoc3VicHJvb2ZOb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKHN1YnByb29mVmVyaWZpZWQpIHtcbiAgICAgIHByb29mU3RlcCA9IFByb29mU3RlcC5mcm9tU3VicHJvb2ZOb2RlKHN1YnByb29mTm9kZSk7XG4gICAgfVxuICB9IGVsc2UgaWYgKHF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVF1YWxpZmllZFN0YXRlbWVudChxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gICAgICBwcm9vZlN0ZXAgPSBQcm9vZlN0ZXAuZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9IGVsc2UgaWYgKHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAodW5xdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gICAgICBwcm9vZlN0ZXAgPSBQcm9vZlN0ZXAuZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHByb29mU3RlcCAhPT0gbnVsbCkge1xuICAgIGxvY2FsQ29udGV4dC5hZGRQcm9vZlN0ZXAocHJvb2ZTdGVwKTtcblxuICAgIHByb29mU3RlcFZlcmlmaWVkID0gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBwcm9vZlN0ZXBWZXJpZmllZDtcbn1cblxuT2JqZWN0LmFzc2lnbihzaGltLCB7XG4gIHZlcmlmeVByb29mU3RlcFxufSk7XG4iXSwibmFtZXMiOlsidmVyaWZ5UHJvb2ZTdGVwIiwic3VicHJvb2ZOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJxdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkiLCJ1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeSIsInByb29mU3RlcE5vZGUiLCJzdWJzdGl0dXRpb25zIiwibG9jYWxDb250ZXh0IiwicHJvb2ZTdGVwVmVyaWZpZWQiLCJzdWJwcm9vZk5vZGUiLCJxdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwicHJvb2ZTdGVwIiwic3VicHJvb2ZWZXJpZmllZCIsInZlcmlmeVN1YnByb29mIiwiUHJvb2ZTdGVwIiwiZnJvbVN1YnByb29mTm9kZSIsInF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5UXVhbGlmaWVkU3RhdGVtZW50Iiwic3RhdGVtZW50Tm9kZSIsImZyb21TdGF0ZW1lbnROb2RlIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50IiwiYWRkUHJvb2ZTdGVwIiwiT2JqZWN0IiwiYXNzaWduIiwic2hpbSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZUE7OztlQUF3QkE7OzsyREFiUDtnRUFDSzsrREFDSztnRUFDVTtrRUFDRTtxQkFFYjs7Ozs7O0FBRTFCLElBQU1DLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyx1Q0FDOUJDLHFCQUFxQkQsSUFBQUEsZ0JBQVMsRUFBQyx3REFDL0JFLDhCQUE4QkYsSUFBQUEsZ0JBQVMsRUFBQyxpREFDeENHLGdDQUFnQ0gsSUFBQUEsZ0JBQVMsRUFBQztBQUVqQyxTQUFTRixnQkFBZ0JNLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxZQUFZO0lBQ2hGLElBQUlDLG9CQUFvQjtJQUV4QixJQUFNQyxlQUFlVCxrQkFBa0JLLGdCQUNqQ0sseUJBQXlCUCw0QkFBNEJFLGdCQUNyRE0sMkJBQTJCUCw4QkFBOEJDO0lBRS9ELElBQUlPLFlBQVk7SUFFaEIsSUFBSSxPQUFPO0lBQ1QsR0FBRztJQUNMLE9BQU8sSUFBSUgsaUJBQWlCLE1BQU07UUFDaEMsSUFBTUksbUJBQW1CQyxJQUFBQSxpQkFBYyxFQUFDTCxjQUFjSCxlQUFlQztRQUVyRSxJQUFJTSxrQkFBa0I7WUFDcEJELFlBQVlHLGtCQUFTLENBQUNDLGdCQUFnQixDQUFDUDtRQUN6QztJQUNGLE9BQU8sSUFBSUMsMkJBQTJCLE1BQU07UUFDMUMsSUFBTU8sNkJBQTZCQyxJQUFBQSxrQkFBd0IsRUFBQ1Isd0JBQXdCSixlQUFlQztRQUVuRyxJQUFJVSw0QkFBNEI7WUFDOUIsSUFBTUUsZ0JBQWdCakIsbUJBQW1CUTtZQUV6Q0UsWUFBWUcsa0JBQVMsQ0FBQ0ssaUJBQWlCLENBQUNEO1FBQzFDO0lBQ0YsT0FBTyxJQUFJUiw2QkFBNkIsTUFBTTtRQUM1QyxJQUFNVSwrQkFBK0JDLElBQUFBLG9CQUEwQixFQUFDWCwwQkFBMEJKO1FBRTFGLElBQUljLDhCQUE4QjtZQUNoQyxJQUFNRixpQkFBZ0JqQixtQkFBbUJTO1lBRXpDQyxZQUFZRyxrQkFBUyxDQUFDSyxpQkFBaUIsQ0FBQ0Q7UUFDMUM7SUFDRjtJQUVBLElBQUlQLGNBQWMsTUFBTTtRQUN0QkwsYUFBYWdCLFlBQVksQ0FBQ1g7UUFFMUJKLG9CQUFvQjtJQUN0QjtJQUVBLE9BQU9BO0FBQ1Q7QUFFQWdCLE9BQU9DLE1BQU0sQ0FBQ0MsYUFBSSxFQUFFO0lBQ2xCM0IsaUJBQUFBO0FBQ0YifQ==
|
|
@@ -9,142 +9,33 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _statement = /*#__PURE__*/ _interop_require_default(require("../../verify/statement"));
|
|
12
|
+
var _qualified = /*#__PURE__*/ _interop_require_default(require("../../unify/statement/qualified"));
|
|
12
13
|
var _query = require("../../utilities/query");
|
|
14
|
+
var _assignments = require("../../utilities/assignments");
|
|
13
15
|
function _interop_require_default(obj) {
|
|
14
16
|
return obj && obj.__esModule ? obj : {
|
|
15
17
|
default: obj
|
|
16
18
|
};
|
|
17
19
|
}
|
|
18
|
-
var statementNodeQuery = (0, _query.nodeQuery)("/qualifiedStatement/statement!")
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
unifyDerivedQualifiedStatementAWithAxiom,
|
|
22
|
-
unifyDerivedQualifiedStatementAWithLemma,
|
|
23
|
-
unifyDerivedQualifiedStatementAWithTheorem,
|
|
24
|
-
unifyDerivedQualifiedStatementAWithConjecture,
|
|
25
|
-
unifyDerivedQualifiedStatementAWithReference
|
|
26
|
-
];
|
|
27
|
-
function verifyQualifiedStatement(qualifiedStatementNode, substitutions, assignments, derived, localContext) {
|
|
28
|
-
var qualifiedStatementVerified;
|
|
20
|
+
var statementNodeQuery = (0, _query.nodeQuery)("/qualifiedStatement/statement!");
|
|
21
|
+
function verifyQualifiedStatement(qualifiedStatementNode, substitutions, localContext) {
|
|
22
|
+
var qualifiedStatementVerified = false;
|
|
29
23
|
var qualifiedStatementString = localContext.nodeAsString(qualifiedStatementNode);
|
|
30
24
|
localContext.trace("Verifying the '".concat(qualifiedStatementString, "' qualified statement..."), qualifiedStatementNode);
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
25
|
+
if (!qualifiedStatementVerified) {
|
|
26
|
+
var stated = true, assignments = [], statementNode = statementNodeQuery(qualifiedStatementNode), statementVerified = (0, _statement.default)(statementNode, assignments, stated, localContext);
|
|
27
|
+
if (statementVerified) {
|
|
28
|
+
var qualifiedStatementUnified = (0, _qualified.default)(qualifiedStatementNode, substitutions, localContext);
|
|
29
|
+
if (qualifiedStatementUnified) {
|
|
30
|
+
var assignmentsAssigned = (0, _assignments.assignAssignments)(assignments, localContext);
|
|
31
|
+
qualifiedStatementVerified = assignmentsAssigned; ///
|
|
32
|
+
}
|
|
33
|
+
}
|
|
35
34
|
}
|
|
36
35
|
if (qualifiedStatementVerified) {
|
|
37
36
|
localContext.debug("...verified the '".concat(qualifiedStatementString, "' qualified statement."), qualifiedStatementNode);
|
|
38
37
|
}
|
|
39
38
|
return qualifiedStatementVerified;
|
|
40
39
|
}
|
|
41
|
-
function unifyDerivedQualifiedStatement(qualifiedStatementNode, substitutions, localContext) {
|
|
42
|
-
var derivedQualifiedStatementUnified;
|
|
43
|
-
var qualifiedStatementString = localContext.nodeAsString(qualifiedStatementNode);
|
|
44
|
-
localContext.trace("Unifying the '".concat(qualifiedStatementString, "' derived qualified statement..."), qualifiedStatementNode);
|
|
45
|
-
derivedQualifiedStatementUnified = unifyDerivedQualifiedStatementFunctions.some(function(unifyDerivedQualifiedStatementFunction) {
|
|
46
|
-
var derivedQualifiedStatementUnified = unifyDerivedQualifiedStatementFunction(qualifiedStatementNode, substitutions, localContext);
|
|
47
|
-
return derivedQualifiedStatementUnified;
|
|
48
|
-
});
|
|
49
|
-
if (derivedQualifiedStatementUnified) {
|
|
50
|
-
localContext.debug("...unified the '".concat(qualifiedStatementString, "' derived qualified statement."), qualifiedStatementNode);
|
|
51
|
-
}
|
|
52
|
-
return derivedQualifiedStatementUnified;
|
|
53
|
-
}
|
|
54
|
-
function unifyDerivedQualifiedStatementAWithRule(qualifiedStatementNode, substitutions, localContext) {
|
|
55
|
-
var derivedQualifiedStatementUnifiedWithRule = false;
|
|
56
|
-
var metavariableNode = metavariableNodeQuery(qualifiedStatementNode), rule = localContext.findRuleByMetavariableNode(metavariableNode);
|
|
57
|
-
if (rule !== null) {
|
|
58
|
-
var statementNode = statementNodeQuery(qualifiedStatementNode), metavariableString = localContext.nodeAsString(metavariableNode), qualifiedStatementString = localContext.nodeAsString(qualifiedStatementNode);
|
|
59
|
-
localContext.trace("Unifying the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' rule..."), qualifiedStatementNode);
|
|
60
|
-
var statementUnified = rule.unifyStatement(statementNode, localContext);
|
|
61
|
-
derivedQualifiedStatementUnifiedWithRule = statementUnified; ///
|
|
62
|
-
if (derivedQualifiedStatementUnifiedWithRule) {
|
|
63
|
-
localContext.debug("...unified the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' rule."), qualifiedStatementNode);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return derivedQualifiedStatementUnifiedWithRule;
|
|
67
|
-
}
|
|
68
|
-
function unifyDerivedQualifiedStatementAWithAxiom(qualifiedStatementNode, substitutions, localContext) {
|
|
69
|
-
var derivedQualifiedStatementUnifiedWithAxiom = false;
|
|
70
|
-
var metavariableNode = metavariableNodeQuery(qualifiedStatementNode), axiom = localContext.findAxiomByMetavariableNode(metavariableNode);
|
|
71
|
-
if (axiom !== null) {
|
|
72
|
-
var statementNode = statementNodeQuery(qualifiedStatementNode), metavariableString = localContext.nodeAsString(metavariableNode), qualifiedStatementString = localContext.nodeAsString(qualifiedStatementNode);
|
|
73
|
-
localContext.trace("Unifying the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' axiom..."), qualifiedStatementNode);
|
|
74
|
-
var statementUnified = axiom.unifyStatement(statementNode, localContext);
|
|
75
|
-
derivedQualifiedStatementUnifiedWithAxiom = statementUnified; ///
|
|
76
|
-
if (derivedQualifiedStatementUnifiedWithAxiom) {
|
|
77
|
-
localContext.debug("...unified the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' axiom."), qualifiedStatementNode);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
return derivedQualifiedStatementUnifiedWithAxiom;
|
|
81
|
-
}
|
|
82
|
-
function unifyDerivedQualifiedStatementAWithLemma(qualifiedStatementNode, substitutions, localContext) {
|
|
83
|
-
var derivedQualifiedStatementUnifiedWithLemma = false;
|
|
84
|
-
var metavariableNode = metavariableNodeQuery(qualifiedStatementNode), lemma = localContext.findLemmaByMetavariableNode(metavariableNode);
|
|
85
|
-
if (lemma !== null) {
|
|
86
|
-
var statementNode = statementNodeQuery(qualifiedStatementNode), metavariableString = localContext.nodeAsString(metavariableNode), qualifiedStatementString = localContext.nodeAsString(qualifiedStatementNode);
|
|
87
|
-
localContext.trace("Unifying the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' lemma..."), qualifiedStatementNode);
|
|
88
|
-
var statementUnified = lemma.unifyStatement(statementNode, localContext);
|
|
89
|
-
derivedQualifiedStatementUnifiedWithLemma = statementUnified; ///
|
|
90
|
-
if (derivedQualifiedStatementUnifiedWithLemma) {
|
|
91
|
-
localContext.debug("...unified the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' lemma."), qualifiedStatementNode);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return derivedQualifiedStatementUnifiedWithLemma;
|
|
95
|
-
}
|
|
96
|
-
function unifyDerivedQualifiedStatementAWithTheorem(qualifiedStatementNode, substitutions, localContext) {
|
|
97
|
-
var derivedQualifiedStatementUnifiedWithTheorem = false;
|
|
98
|
-
var metavariableNode = metavariableNodeQuery(qualifiedStatementNode), theorem = localContext.findTheoremByMetavariableNode(metavariableNode);
|
|
99
|
-
if (theorem !== null) {
|
|
100
|
-
var statementNode = statementNodeQuery(qualifiedStatementNode), metavariableString = localContext.nodeAsString(metavariableNode), qualifiedStatementString = localContext.nodeAsString(qualifiedStatementNode);
|
|
101
|
-
localContext.trace("Unifying the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' theorem..."), qualifiedStatementNode);
|
|
102
|
-
var statementUnified = theorem.unifyStatement(statementNode, localContext);
|
|
103
|
-
derivedQualifiedStatementUnifiedWithTheorem = statementUnified; ///
|
|
104
|
-
if (derivedQualifiedStatementUnifiedWithTheorem) {
|
|
105
|
-
localContext.debug("...unified the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' theorem."), qualifiedStatementNode);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
return derivedQualifiedStatementUnifiedWithTheorem;
|
|
109
|
-
}
|
|
110
|
-
function unifyDerivedQualifiedStatementAWithConjecture(qualifiedStatementNode, substitutions, localContext) {
|
|
111
|
-
var derivedQualifiedStatementUnifiedWithConjecture = false;
|
|
112
|
-
var metavariableNode = metavariableNodeQuery(qualifiedStatementNode), conjecture = localContext.findConjectureByMetavariableNode(metavariableNode);
|
|
113
|
-
if (conjecture !== null) {
|
|
114
|
-
var statementNode = statementNodeQuery(qualifiedStatementNode), metavariableString = localContext.nodeAsString(metavariableNode), qualifiedStatementString = localContext.nodeAsString(qualifiedStatementNode);
|
|
115
|
-
localContext.trace("Unifying the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' conjecture..."), qualifiedStatementNode);
|
|
116
|
-
var statementUnified = conjecture.unifyStatement(statementNode, localContext);
|
|
117
|
-
derivedQualifiedStatementUnifiedWithConjecture = statementUnified; ///
|
|
118
|
-
if (derivedQualifiedStatementUnifiedWithConjecture) {
|
|
119
|
-
localContext.debug("...unified the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' conjecture."), qualifiedStatementNode);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
return derivedQualifiedStatementUnifiedWithConjecture;
|
|
123
|
-
}
|
|
124
|
-
function unifyDerivedQualifiedStatementAWithReference(qualifiedStatementNode, substitutions, localContext) {
|
|
125
|
-
var derivedQualifiedStatementUnifiedWithReference = false;
|
|
126
|
-
var metavariableNode = metavariableNodeQuery(qualifiedStatementNode), metavariableString = localContext.nodeAsString(metavariableNode), metavariablePresent = localContext.isMetavariablePresentByMetavariableNode(metavariableNode), qualifiedStatementString = localContext.nodeAsString(qualifiedStatementNode);
|
|
127
|
-
localContext.trace("Unifying the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' reference..."), qualifiedStatementNode);
|
|
128
|
-
if (metavariablePresent) {
|
|
129
|
-
debugger;
|
|
130
|
-
// const statementNode = statementNodeQuery(qualifiedStatementNode),
|
|
131
|
-
// localContextA = null,
|
|
132
|
-
// localContextB = localContext, ///
|
|
133
|
-
// statementNodeB = statementNode, ///
|
|
134
|
-
// substitutionNodeA = null,
|
|
135
|
-
// metavariableNodeA = metavariableNode, ///
|
|
136
|
-
// metavariableUnifiedWithStatement = unifyMetavariableWithStatement(metavariableNodeA, statementNodeB, substitutionNodeA, substitutions, localContextA, localContextB, () => {
|
|
137
|
-
// const verifiedAhead = true;
|
|
138
|
-
//
|
|
139
|
-
// return verifiedAhead;
|
|
140
|
-
// });
|
|
141
|
-
//
|
|
142
|
-
// derivedQualifiedStatementUnifiedWithReference = metavariableUnifiedWithStatement; ///
|
|
143
|
-
}
|
|
144
|
-
if (derivedQualifiedStatementUnifiedWithReference) {
|
|
145
|
-
localContext.debug("...unified the '".concat(qualifiedStatementString, "' derived qualified statement with the '").concat(metavariableString, "' reference."), qualifiedStatementNode);
|
|
146
|
-
}
|
|
147
|
-
return derivedQualifiedStatementUnifiedWithReference;
|
|
148
|
-
}
|
|
149
40
|
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50L3F1YWxpZmllZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVN0YXRlbWVudCBmcm9tIFwiLi4vLi4vdmVyaWZ5L3N0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRTdGF0ZW1lbnQvcmVmZXJlbmNlL21ldGF2YXJpYWJsZSFcIik7XG5cbmNvbnN0IHVuaWZ5RGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudEZ1bmN0aW9ucyA9IFtcbiAgdW5pZnlEZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50QVdpdGhSdWxlLFxuICB1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRBV2l0aEF4aW9tLFxuICB1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRBV2l0aExlbW1hLFxuICB1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRBV2l0aFRoZW9yZW0sXG4gIHVuaWZ5RGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudEFXaXRoQ29uamVjdHVyZSxcbiAgdW5pZnlEZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50QVdpdGhSZWZlcmVuY2Vcbl07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVF1YWxpZmllZFN0YXRlbWVudChxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZDtcblxuICBjb25zdCBxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmd9JyBxdWFsaWZpZWQgc3RhdGVtZW50Li4uYCwgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgaWYgKHN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3QgZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWQgPSB1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnQocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgIHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWQ7IC8vL1xuICB9XG5cbiAgaWYgKHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7cXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIHN0YXRlbWVudC5gLCBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdW5pZnlEZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50KHF1YWxpZmllZFN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWQ7XG5cbiAgY29uc3QgcXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFVuaWZ5aW5nIHRoZSAnJHtxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmd9JyBkZXJpdmVkIHF1YWxpZmllZCBzdGF0ZW1lbnQuLi5gLCBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICBkZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZCA9IHVuaWZ5RGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudEZ1bmN0aW9ucy5zb21lKCh1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRGdW5jdGlvbikgPT4ge1xuICAgIGNvbnN0IGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkID0gdW5pZnlEZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50RnVuY3Rpb24ocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgIHJldHVybiBkZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZDtcbiAgfSk7XG5cbiAgaWYgKGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi51bmlmaWVkIHRoZSAnJHtxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmd9JyBkZXJpdmVkIHF1YWxpZmllZCBzdGF0ZW1lbnQuYCwgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHVuaWZ5RGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudEFXaXRoUnVsZShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aFJ1bGUgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KHF1YWxpZmllZFN0YXRlbWVudE5vZGUpLFxuICAgICAgICBydWxlID0gbG9jYWxDb250ZXh0LmZpbmRSdWxlQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGlmIChydWxlICE9PSBudWxsKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIHF1YWxpZmllZFN0YXRlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFVuaWZ5aW5nIHRoZSAnJHtxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmd9JyBkZXJpdmVkIHF1YWxpZmllZCBzdGF0ZW1lbnQgd2l0aCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgcnVsZS4uLmAsIHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50VW5pZmllZCA9IHJ1bGUudW5pZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgbG9jYWxDb250ZXh0KTtcblxuICAgIGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aFJ1bGUgPSBzdGF0ZW1lbnRVbmlmaWVkOyAgLy8vXG5cbiAgICBpZiAoZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoUnVsZSkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi51bmlmaWVkIHRoZSAnJHtxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmd9JyBkZXJpdmVkIHF1YWxpZmllZCBzdGF0ZW1lbnQgd2l0aCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgcnVsZS5gLCBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoUnVsZTtcbn1cblxuZnVuY3Rpb24gdW5pZnlEZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50QVdpdGhBeGlvbShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aEF4aW9tID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgYXhpb20gPSBsb2NhbENvbnRleHQuZmluZEF4aW9tQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGlmIChheGlvbSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICBxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBVbmlmeWluZyB0aGUgJyR7cXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgZGVyaXZlZCBxdWFsaWZpZWQgc3RhdGVtZW50IHdpdGggdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIGF4aW9tLi4uYCwgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBzdGF0ZW1lbnRVbmlmaWVkID0gYXhpb20udW5pZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgbG9jYWxDb250ZXh0KTtcblxuICAgIGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aEF4aW9tID0gc3RhdGVtZW50VW5pZmllZDsgLy8vXG5cbiAgICBpZiAoZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoQXhpb20pIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udW5pZmllZCB0aGUgJyR7cXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgZGVyaXZlZCBxdWFsaWZpZWQgc3RhdGVtZW50IHdpdGggdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIGF4aW9tLmAsIHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZFdpdGhBeGlvbTtcbn1cblxuZnVuY3Rpb24gdW5pZnlEZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50QVdpdGhMZW1tYShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aExlbW1hID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgbGVtbWEgPSBsb2NhbENvbnRleHQuZmluZExlbW1hQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGlmIChsZW1tYSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICBxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBVbmlmeWluZyB0aGUgJyR7cXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgZGVyaXZlZCBxdWFsaWZpZWQgc3RhdGVtZW50IHdpdGggdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIGxlbW1hLi4uYCwgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBzdGF0ZW1lbnRVbmlmaWVkID0gbGVtbWEudW5pZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgbG9jYWxDb250ZXh0KTtcblxuICAgIGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aExlbW1hID0gc3RhdGVtZW50VW5pZmllZDsgLy8vXG5cbiAgICBpZiAoZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoTGVtbWEpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udW5pZmllZCB0aGUgJyR7cXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgZGVyaXZlZCBxdWFsaWZpZWQgc3RhdGVtZW50IHdpdGggdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIGxlbW1hLmAsIHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZFdpdGhMZW1tYTtcbn1cblxuZnVuY3Rpb24gdW5pZnlEZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50QVdpdGhUaGVvcmVtKHF1YWxpZmllZFN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoVGhlb3JlbSA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgIHRoZW9yZW0gPSBsb2NhbENvbnRleHQuZmluZFRoZW9yZW1CeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgaWYgKHRoZW9yZW0gIT09IG51bGwpIHtcbiAgICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHF1YWxpZmllZFN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgcXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVW5pZnlpbmcgdGhlICcke3F1YWxpZmllZFN0YXRlbWVudFN0cmluZ30nIGRlcml2ZWQgcXVhbGlmaWVkIHN0YXRlbWVudCB3aXRoIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyB0aGVvcmVtLi4uYCwgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBzdGF0ZW1lbnRVbmlmaWVkID0gdGhlb3JlbS51bmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoVGhlb3JlbSA9IHN0YXRlbWVudFVuaWZpZWQ7IC8vL1xuXG4gICAgaWYgKGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aFRoZW9yZW0pIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udW5pZmllZCB0aGUgJyR7cXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgZGVyaXZlZCBxdWFsaWZpZWQgc3RhdGVtZW50IHdpdGggdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIHRoZW9yZW0uYCwgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aFRoZW9yZW07XG59XG5cbmZ1bmN0aW9uIHVuaWZ5RGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudEFXaXRoQ29uamVjdHVyZShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aENvbmplY3R1cmUgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KHF1YWxpZmllZFN0YXRlbWVudE5vZGUpLFxuICAgICAgICBjb25qZWN0dXJlID0gbG9jYWxDb250ZXh0LmZpbmRDb25qZWN0dXJlQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGlmIChjb25qZWN0dXJlICE9PSBudWxsKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIHF1YWxpZmllZFN0YXRlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFVuaWZ5aW5nIHRoZSAnJHtxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmd9JyBkZXJpdmVkIHF1YWxpZmllZCBzdGF0ZW1lbnQgd2l0aCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgY29uamVjdHVyZS4uLmAsIHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50VW5pZmllZCA9IGNvbmplY3R1cmUudW5pZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgbG9jYWxDb250ZXh0KTtcblxuICAgIGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aENvbmplY3R1cmUgPSBzdGF0ZW1lbnRVbmlmaWVkOyAvLy9cblxuICAgIGlmIChkZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZFdpdGhDb25qZWN0dXJlKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnVuaWZpZWQgdGhlICcke3F1YWxpZmllZFN0YXRlbWVudFN0cmluZ30nIGRlcml2ZWQgcXVhbGlmaWVkIHN0YXRlbWVudCB3aXRoIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBjb25qZWN0dXJlLmAsIHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZFdpdGhDb25qZWN0dXJlO1xufVxuXG5mdW5jdGlvbiB1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRBV2l0aFJlZmVyZW5jZShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aFJlZmVyZW5jZSA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgICAgIG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgIG1ldGF2YXJpYWJsZVByZXNlbnQgPSBsb2NhbENvbnRleHQuaXNNZXRhdmFyaWFibGVQcmVzZW50QnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICBxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVW5pZnlpbmcgdGhlICcke3F1YWxpZmllZFN0YXRlbWVudFN0cmluZ30nIGRlcml2ZWQgcXVhbGlmaWVkIHN0YXRlbWVudCB3aXRoIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyByZWZlcmVuY2UuLi5gLCBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICBpZiAobWV0YXZhcmlhYmxlUHJlc2VudCkge1xuXG4gICAgZGVidWdnZXJcblxuICAgIC8vIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSksXG4gICAgLy8gICAgICAgbG9jYWxDb250ZXh0QSA9IG51bGwsXG4gICAgLy8gICAgICAgbG9jYWxDb250ZXh0QiA9IGxvY2FsQ29udGV4dCwgLy8vXG4gICAgLy8gICAgICAgc3RhdGVtZW50Tm9kZUIgPSBzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAvLyAgICAgICBzdWJzdGl0dXRpb25Ob2RlQSA9IG51bGwsXG4gICAgLy8gICAgICAgbWV0YXZhcmlhYmxlTm9kZUEgPSBtZXRhdmFyaWFibGVOb2RlLCAvLy9cbiAgICAvLyAgICAgICBtZXRhdmFyaWFibGVVbmlmaWVkV2l0aFN0YXRlbWVudCA9IHVuaWZ5TWV0YXZhcmlhYmxlV2l0aFN0YXRlbWVudChtZXRhdmFyaWFibGVOb2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbk5vZGVBLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCAoKSA9PiB7XG4gICAgLy8gICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcbiAgICAvL1xuICAgIC8vICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgLy8gICAgICAgfSk7XG4gICAgLy9cbiAgICAvLyBkZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZFdpdGhSZWZlcmVuY2UgPSBtZXRhdmFyaWFibGVVbmlmaWVkV2l0aFN0YXRlbWVudDsgLy8vXG4gIH1cblxuICBpZiAoZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoUmVmZXJlbmNlKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi51bmlmaWVkIHRoZSAnJHtxdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmd9JyBkZXJpdmVkIHF1YWxpZmllZCBzdGF0ZW1lbnQgd2l0aCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgcmVmZXJlbmNlLmAsIHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aFJlZmVyZW5jZTtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlRdWFsaWZpZWRTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJ1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRGdW5jdGlvbnMiLCJ1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRBV2l0aFJ1bGUiLCJ1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRBV2l0aEF4aW9tIiwidW5pZnlEZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50QVdpdGhMZW1tYSIsInVuaWZ5RGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudEFXaXRoVGhlb3JlbSIsInVuaWZ5RGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudEFXaXRoQ29uamVjdHVyZSIsInVuaWZ5RGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudEFXaXRoUmVmZXJlbmNlIiwicXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsInN1YnN0aXR1dGlvbnMiLCJhc3NpZ25tZW50cyIsImRlcml2ZWQiLCJsb2NhbENvbnRleHQiLCJxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCIsInF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwic3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5U3RhdGVtZW50IiwiZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWQiLCJ1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnQiLCJkZWJ1ZyIsInNvbWUiLCJ1bmlmeURlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRGdW5jdGlvbiIsImRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aFJ1bGUiLCJtZXRhdmFyaWFibGVOb2RlIiwicnVsZSIsImZpbmRSdWxlQnlNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlU3RyaW5nIiwic3RhdGVtZW50VW5pZmllZCIsInVuaWZ5U3RhdGVtZW50IiwiZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoQXhpb20iLCJheGlvbSIsImZpbmRBeGlvbUJ5TWV0YXZhcmlhYmxlTm9kZSIsImRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aExlbW1hIiwibGVtbWEiLCJmaW5kTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUiLCJkZXJpdmVkUXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZFdpdGhUaGVvcmVtIiwidGhlb3JlbSIsImZpbmRUaGVvcmVtQnlNZXRhdmFyaWFibGVOb2RlIiwiZGVyaXZlZFF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWRXaXRoQ29uamVjdHVyZSIsImNvbmplY3R1cmUiLCJmaW5kQ29uamVjdHVyZUJ5TWV0YXZhcmlhYmxlTm9kZSIsImRlcml2ZWRRdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkV2l0aFJlZmVyZW5jZSIsIm1ldGF2YXJpYWJsZVByZXNlbnQiLCJpc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWtCQTs7O2VBQXdCQTs7O2dFQWhCSTtxQkFFRjs7Ozs7O0FBRTFCLElBQU1DLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQyxtQ0FDL0JDLHdCQUF3QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUV4QyxJQUFNRSwwQ0FBMEM7SUFDOUNDO0lBQ0FDO0lBQ0FDO0lBQ0FDO0lBQ0FDO0lBQ0FDO0NBQ0Q7QUFFYyxTQUFTVix5QkFBeUJXLHNCQUFzQixFQUFFQyxhQUFhLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQ3hILElBQUlDO0lBRUosSUFBTUMsMkJBQTJCRixhQUFhRyxZQUFZLENBQUNQO0lBRTNESSxhQUFhSSxLQUFLLENBQUMsQUFBQyxrQkFBMEMsT0FBekJGLDBCQUF5Qiw2QkFBMkJOO0lBRXpGLElBQU1TLGdCQUFnQm5CLG1CQUFtQlUseUJBQ25DVSxvQkFBb0JDLElBQUFBLGtCQUFlLEVBQUNGLGVBQWVQLGFBQWFDLFNBQVNDO0lBRS9FLElBQUlNLG1CQUFtQjtRQUNyQixJQUFNRSxtQ0FBbUNDLCtCQUErQmIsd0JBQXdCQyxlQUFlRztRQUUvR0MsNkJBQTZCTyxrQ0FBa0MsR0FBRztJQUNwRTtJQUVBLElBQUlQLDRCQUE0QjtRQUM5QkQsYUFBYVUsS0FBSyxDQUFDLEFBQUMsb0JBQTRDLE9BQXpCUiwwQkFBeUIsMkJBQXlCTjtJQUMzRjtJQUVBLE9BQU9LO0FBQ1Q7QUFFQSxTQUFTUSwrQkFBK0JiLHNCQUFzQixFQUFFQyxhQUFhLEVBQUVHLFlBQVk7SUFDekYsSUFBSVE7SUFFSixJQUFNTiwyQkFBMkJGLGFBQWFHLFlBQVksQ0FBQ1A7SUFFM0RJLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGlCQUF5QyxPQUF6QkYsMEJBQXlCLHFDQUFtQ047SUFFaEdZLG1DQUFtQ25CLHdDQUF3Q3NCLElBQUksQ0FBQyxT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
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50L3F1YWxpZmllZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVN0YXRlbWVudCBmcm9tIFwiLi4vLi4vdmVyaWZ5L3N0YXRlbWVudFwiO1xuaW1wb3J0IHVuaWZ5UXVhbGlmaWVkU3RhdGVtZW50IGZyb20gXCIuLi8uLi91bmlmeS9zdGF0ZW1lbnQvcXVhbGlmaWVkXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGFzc2lnbkFzc2lnbm1lbnRzIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9hc3NpZ25tZW50c1wiO1xuXG5jb25zdCBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkU3RhdGVtZW50L3N0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVF1YWxpZmllZFN0YXRlbWVudChxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgcXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7cXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIHN0YXRlbWVudC4uLmAsIHF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gIGlmICghcXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBjb25zdCBzdGF0ZWQgPSB0cnVlLFxuICAgICAgICAgIGFzc2lnbm1lbnRzID0gW10sXG4gICAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKHN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBxdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkID0gdW5pZnlRdWFsaWZpZWRTdGF0ZW1lbnQocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKHF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWQpIHtcbiAgICAgICAgY29uc3QgYXNzaWdubWVudHNBc3NpZ25lZCA9IGFzc2lnbkFzc2lnbm1lbnRzKGFzc2lnbm1lbnRzLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gYXNzaWdubWVudHNBc3NpZ25lZDsgLy8vXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7cXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIHN0YXRlbWVudC5gLCBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlRdWFsaWZpZWRTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJxdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwic3Vic3RpdHV0aW9ucyIsImxvY2FsQ29udGV4dCIsInF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIiwicXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJzdGF0ZWQiLCJhc3NpZ25tZW50cyIsInN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVN0YXRlbWVudCIsInF1YWxpZmllZFN0YXRlbWVudFVuaWZpZWQiLCJ1bmlmeVF1YWxpZmllZFN0YXRlbWVudCIsImFzc2lnbm1lbnRzQXNzaWduZWQiLCJhc3NpZ25Bc3NpZ25tZW50cyIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7O2dFQVJJO2dFQUNRO3FCQUVWOzJCQUNROzs7Ozs7QUFFbEMsSUFBTUMscUJBQXFCQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXRCLFNBQVNGLHlCQUF5Qkcsc0JBQXNCLEVBQUVDLGFBQWEsRUFBRUMsWUFBWTtJQUNsRyxJQUFJQyw2QkFBNkI7SUFFakMsSUFBTUMsMkJBQTJCRixhQUFhRyxZQUFZLENBQUNMO0lBRTNERSxhQUFhSSxLQUFLLENBQUMsQUFBQyxrQkFBMEMsT0FBekJGLDBCQUF5Qiw2QkFBMkJKO0lBRXpGLElBQUksQ0FBQ0csNEJBQTRCO1FBQy9CLElBQU1JLFNBQVMsTUFDVEMsY0FBYyxFQUFFLEVBQ2hCQyxnQkFBZ0JYLG1CQUFtQkUseUJBQ25DVSxvQkFBb0JDLElBQUFBLGtCQUFlLEVBQUNGLGVBQWVELGFBQWFELFFBQVFMO1FBRTlFLElBQUlRLG1CQUFtQjtZQUNyQixJQUFNRSw0QkFBNEJDLElBQUFBLGtCQUF1QixFQUFDYix3QkFBd0JDLGVBQWVDO1lBRWpHLElBQUlVLDJCQUEyQjtnQkFDN0IsSUFBTUUsc0JBQXNCQyxJQUFBQSw4QkFBaUIsRUFBQ1AsYUFBYU47Z0JBRTNEQyw2QkFBNkJXLHFCQUFxQixHQUFHO1lBQ3ZEO1FBQ0Y7SUFDRjtJQUVBLElBQUlYLDRCQUE0QjtRQUM5QkQsYUFBYWMsS0FBSyxDQUFDLEFBQUMsb0JBQTRDLE9BQXpCWiwwQkFBeUIsMkJBQXlCSjtJQUMzRjtJQUVBLE9BQU9HO0FBQ1QifQ==
|
|
@@ -9,7 +9,14 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _statement = /*#__PURE__*/ _interop_require_wildcard(require("../../verify/statement"));
|
|
12
|
+
var _unqualified = /*#__PURE__*/ _interop_require_default(require("../../unify/statement/unqualified"));
|
|
12
13
|
var _query = require("../../utilities/query");
|
|
14
|
+
var _assignments = require("../../utilities/assignments");
|
|
15
|
+
function _interop_require_default(obj) {
|
|
16
|
+
return obj && obj.__esModule ? obj : {
|
|
17
|
+
default: obj
|
|
18
|
+
};
|
|
19
|
+
}
|
|
13
20
|
function _getRequireWildcardCache(nodeInterop) {
|
|
14
21
|
if (typeof WeakMap !== "function") return null;
|
|
15
22
|
var cacheBabelInterop = new WeakMap();
|
|
@@ -52,22 +59,25 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
52
59
|
return newObj;
|
|
53
60
|
}
|
|
54
61
|
var statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!");
|
|
55
|
-
function verifyUnqualifiedStatement(unqualifiedStatementNode,
|
|
56
|
-
var unqualifiedStatementVerified;
|
|
62
|
+
function verifyUnqualifiedStatement(unqualifiedStatementNode, localContext) {
|
|
63
|
+
var unqualifiedStatementVerified = false;
|
|
57
64
|
var unqualifiedStatementString = localContext.nodeAsString(unqualifiedStatementNode);
|
|
58
65
|
localContext.trace("Verifying the '".concat(unqualifiedStatementString, "' unqualified statement..."), unqualifiedStatementNode);
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
if (
|
|
62
|
-
var
|
|
66
|
+
if (!unqualifiedStatementVerified) {
|
|
67
|
+
var stated = true, assignments = [], statementNode = statementNodeQuery(unqualifiedStatementNode), statementVerified = (0, _statement.default)(statementNode, assignments, stated, localContext);
|
|
68
|
+
if (statementVerified) {
|
|
69
|
+
var unqualifiedStatementUnified = (0, _unqualified.default)(unqualifiedStatementNode, localContext);
|
|
70
|
+
unqualifiedStatementVerified = unqualifiedStatementUnified; ///
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (!unqualifiedStatementVerified) {
|
|
74
|
+
var stated1 = false, assignments1 = [], statementNode1 = statementNodeQuery(unqualifiedStatementNode), statementVerified1 = (0, _statement.default)(statementNode1, assignments1, stated1, localContext);
|
|
75
|
+
if (statementVerified1) {
|
|
76
|
+
var statementVerifiedTrivially = (0, _statement.verifyStatementTrivially)(statementNode1, localContext);
|
|
63
77
|
if (statementVerifiedTrivially) {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
var derivedUnqualifiedStatementUnified = unifyDerivedUnqualifiedStatement(unqualifiedStatementNode, localContext);
|
|
67
|
-
unqualifiedStatementVerified = derivedUnqualifiedStatementUnified; ///
|
|
78
|
+
var assignmentsAssigned = (0, _assignments.assignAssignments)(assignments1, localContext);
|
|
79
|
+
unqualifiedStatementVerified = assignmentsAssigned; ///
|
|
68
80
|
}
|
|
69
|
-
} else {
|
|
70
|
-
unqualifiedStatementVerified = true;
|
|
71
81
|
}
|
|
72
82
|
}
|
|
73
83
|
if (unqualifiedStatementVerified) {
|
|
@@ -75,16 +85,5 @@ function verifyUnqualifiedStatement(unqualifiedStatementNode, assignments, deriv
|
|
|
75
85
|
}
|
|
76
86
|
return unqualifiedStatementVerified;
|
|
77
87
|
}
|
|
78
|
-
function unifyDerivedUnqualifiedStatement(unqualifiedStatementNode, localContext) {
|
|
79
|
-
var derivedUnqualifiedStatementUnified;
|
|
80
|
-
var unqualifiedStatementString = localContext.nodeAsString(unqualifiedStatementNode);
|
|
81
|
-
localContext.trace("Unifying the '".concat(unqualifiedStatementString, "' derived unqualified statement..."), unqualifiedStatementNode);
|
|
82
|
-
var statementNode = statementNodeQuery(unqualifiedStatementNode), statementUnified = localContext.unifyStatement(statementNode, localContext);
|
|
83
|
-
derivedUnqualifiedStatementUnified = statementUnified; ///
|
|
84
|
-
if (derivedUnqualifiedStatementUnified) {
|
|
85
|
-
localContext.debug("...unified the '".concat(unqualifiedStatementString, "' derived unqualified statement."), unqualifiedStatementNode);
|
|
86
|
-
}
|
|
87
|
-
return derivedUnqualifiedStatementUnified;
|
|
88
|
-
}
|
|
89
88
|
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50L3VucXVhbGlmaWVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5U3RhdGVtZW50IGZyb20gXCIuLi8uLi92ZXJpZnkvc3RhdGVtZW50XCI7XG5pbXBvcnQgdW5pZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vLi4vdW5pZnkvc3RhdGVtZW50L3VucXVhbGlmaWVkXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGFzc2lnbkFzc2lnbm1lbnRzIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9hc3NpZ25tZW50c1wiO1xuaW1wb3J0IHsgdmVyaWZ5U3RhdGVtZW50VHJpdmlhbGx5IH0gZnJvbSBcIi4uLy4uL3ZlcmlmeS9zdGF0ZW1lbnRcIjtcblxuY29uc3Qgc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3VucXVhbGlmaWVkU3RhdGVtZW50L3N0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgdW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3VucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nfScgdW5xdWFsaWZpZWQgc3RhdGVtZW50Li4uYCwgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICBpZiAoIXVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBjb25zdCBzdGF0ZWQgPSB0cnVlLFxuICAgICAgICAgIGFzc2lnbm1lbnRzID0gW10sXG4gICAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IHVucXVhbGlmaWVkU3RhdGVtZW50VW5pZmllZCA9IHVuaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gdW5xdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkOyAvLy9cbiAgICB9XG4gIH1cblxuICBpZiAoIXVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBjb25zdCBzdGF0ZWQgPSBmYWxzZSxcbiAgICAgICAgICBhc3NpZ25tZW50cyA9IFtdLFxuICAgICAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKHN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnRWZXJpZmllZFRyaXZpYWxseSA9IHZlcmlmeVN0YXRlbWVudFRyaXZpYWxseShzdGF0ZW1lbnROb2RlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWRUcml2aWFsbHkpIHtcbiAgICAgICAgY29uc3QgYXNzaWdubWVudHNBc3NpZ25lZCA9IGFzc2lnbkFzc2lnbm1lbnRzKGFzc2lnbm1lbnRzLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSBhc3NpZ25tZW50c0Fzc2lnbmVkOyAgLy8vXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZ30nIHVucXVhbGlmaWVkIHN0YXRlbWVudC5gLCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUiLCJsb2NhbENvbnRleHQiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInN0YXRlZCIsImFzc2lnbm1lbnRzIiwic3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5U3RhdGVtZW50IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnRVbmlmaWVkIiwidW5pZnlVbnF1YWxpZmllZFN0YXRlbWVudCIsInN0YXRlbWVudFZlcmlmaWVkVHJpdmlhbGx5IiwidmVyaWZ5U3RhdGVtZW50VHJpdmlhbGx5IiwiYXNzaWdubWVudHNBc3NpZ25lZCIsImFzc2lnbkFzc2lnbm1lbnRzIiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVdBOzs7ZUFBd0JBOzs7aUVBVEk7a0VBQ1U7cUJBRVo7MkJBQ1E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR2xDLElBQU1DLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQztBQUV0QixTQUFTRiwyQkFBMkJHLHdCQUF3QixFQUFFQyxZQUFZO0lBQ3ZGLElBQUlDLCtCQUErQjtJQUVuQyxJQUFNQyw2QkFBNkJGLGFBQWFHLFlBQVksQ0FBQ0o7SUFFN0RDLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUE0QyxPQUEzQkYsNEJBQTJCLCtCQUE2Qkg7SUFFN0YsSUFBSSxDQUFDRSw4QkFBOEI7UUFDakMsSUFBTUksU0FBUyxNQUNUQyxjQUFjLEVBQUUsRUFDaEJDLGdCQUFnQlYsbUJBQW1CRSwyQkFDbkNTLG9CQUFvQkMsSUFBQUEsa0JBQWUsRUFBQ0YsZUFBZUQsYUFBYUQsUUFBUUw7UUFFOUUsSUFBSVEsbUJBQW1CO1lBQ3JCLElBQU1FLDhCQUE4QkMsSUFBQUEsb0JBQXlCLEVBQUNaLDBCQUEwQkM7WUFFeEZDLCtCQUErQlMsNkJBQTZCLEdBQUc7UUFDakU7SUFDRjtJQUVBLElBQUksQ0FBQ1QsOEJBQThCO1FBQ2pDLElBQU1JLFVBQVMsT0FDVEMsZUFBYyxFQUFFLEVBQ2hCQyxpQkFBZ0JWLG1CQUFtQkUsMkJBQ25DUyxxQkFBb0JDLElBQUFBLGtCQUFlLEVBQUNGLGdCQUFlRCxjQUFhRCxTQUFRTDtRQUU5RSxJQUFJUSxvQkFBbUI7WUFDckIsSUFBTUksNkJBQTZCQyxJQUFBQSxtQ0FBd0IsRUFBQ04sZ0JBQWVQO1lBRTNFLElBQUlZLDRCQUE0QjtnQkFDOUIsSUFBTUUsc0JBQXNCQyxJQUFBQSw4QkFBaUIsRUFBQ1QsY0FBYU47Z0JBRTNEQywrQkFBK0JhLHFCQUFzQixHQUFHO1lBQzFEO1FBQ0Y7SUFDRjtJQUVBLElBQUliLDhCQUE4QjtRQUNoQ0QsYUFBYWdCLEtBQUssQ0FBQyxBQUFDLG9CQUE4QyxPQUEzQmQsNEJBQTJCLDZCQUEyQkg7SUFDL0Y7SUFFQSxPQUFPRTtBQUNUIn0=
|