occam-verify-cli 0.0.958 → 0.0.960
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 +16 -5
- package/bin/utilities/releaseContext.js +5 -8
- package/lib/axiom.js +1 -7
- package/lib/combinator.js +1 -19
- package/lib/conclusion.js +1 -19
- package/lib/conjecture.js +1 -7
- package/lib/consequent.js +1 -19
- package/lib/constructor.js +1 -28
- package/lib/context/file.js +38 -14
- package/lib/context/local.js +1 -14
- package/lib/context/release.js +82 -52
- package/lib/frame.js +3 -3
- package/lib/index.js +5 -5
- package/lib/label.js +1 -16
- package/lib/lemma.js +1 -7
- package/lib/metaLemma.js +1 -7
- package/lib/metaType.js +1 -10
- package/lib/metatheorem.js +1 -7
- package/lib/metavariable.js +9 -34
- package/lib/premise.js +1 -18
- package/lib/proofStep.js +15 -15
- package/lib/releaseContext/create.js +8 -9
- package/lib/releaseContext/initialise.js +67 -0
- package/lib/rule.js +5 -49
- package/lib/ruleNames.js +1 -9
- package/lib/substitution/statementForMetavariable.js +8 -16
- package/lib/substitution/termForVariable.js +6 -6
- package/lib/substitution.js +7 -7
- package/lib/substitutions.js +7 -33
- package/lib/supposition.js +1 -18
- package/lib/theorem.js +1 -7
- package/lib/topLevelAssertion.js +5 -50
- package/lib/type.js +2 -38
- package/lib/unifier/equality.js +7 -7
- package/lib/unifier/intrinsicLevel.js +4 -4
- package/lib/unifier/metaLevel.js +10 -10
- package/lib/unifier/statementWithCombinator.js +147 -0
- package/lib/unifier/{termAgainstConstructor.js → termWithConstructor.js} +17 -17
- package/lib/unify/conclusionWithStatement.js +34 -0
- package/lib/unify/consequentWithStatement.js +34 -0
- package/lib/unify/metavariableWithStatement.js +74 -0
- package/lib/unify/premiseWithProofStep.js +41 -0
- package/lib/unify/premisesWithProofSteps.js +31 -0
- package/lib/unify/statementAtainstStatement.js +6 -6
- package/lib/unify/statementWithMetaType.js +48 -0
- package/lib/unify/suppositionWithProffStep.js +41 -0
- package/lib/unify/suppositionsWithProofSteps.js +31 -0
- package/lib/unify/termWithTerm.js +21 -0
- package/lib/unify/termWithType.js +32 -0
- package/lib/unify/variableWithTerm.js +54 -0
- package/lib/utilities/node.js +3 -42
- package/lib/utilities/tokens.js +1 -15
- package/lib/variable.js +1 -26
- package/lib/verify/error.js +2 -2
- package/lib/verify/judgement.js +3 -3
- package/lib/verify/metavariable.js +4 -4
- package/lib/verify/statement/qualified.js +51 -51
- package/lib/verify/statement.js +18 -18
- package/lib/verify/statementAsCombinator.js +2 -2
- package/lib/verify/term.js +25 -25
- package/package.json +1 -1
- package/src/axiom.js +0 -2
- package/src/combinator.js +0 -26
- package/src/conclusion.js +0 -24
- package/src/conjecture.js +0 -2
- package/src/consequent.js +0 -24
- package/src/constructor.js +0 -43
- package/src/context/file.js +42 -17
- package/src/context/local.js +0 -22
- package/src/context/release.js +84 -45
- package/src/frame.js +2 -2
- package/src/index.js +1 -1
- package/src/label.js +0 -18
- package/src/lemma.js +0 -2
- package/src/metaLemma.js +0 -2
- package/src/metaType.js +0 -9
- package/src/metatheorem.js +0 -2
- package/src/metavariable.js +6 -44
- package/src/premise.js +0 -22
- package/src/proofStep.js +14 -14
- package/src/releaseContext/create.js +8 -16
- package/src/releaseContext/{verify.js → initialise.js} +32 -23
- package/src/rule.js +4 -69
- package/src/ruleNames.js +0 -2
- package/src/substitution/statementForMetavariable.js +7 -21
- package/src/substitution/termForVariable.js +4 -4
- package/src/substitution.js +5 -5
- package/src/substitutions.js +5 -32
- package/src/supposition.js +0 -22
- package/src/theorem.js +0 -2
- package/src/topLevelAssertion.js +4 -72
- package/src/type.js +0 -44
- package/src/unifier/equality.js +6 -6
- package/src/unifier/intrinsicLevel.js +3 -3
- package/src/unifier/metaLevel.js +9 -9
- package/src/unifier/{statementAgainstCombinator.js → statementWithCombinator.js} +12 -12
- package/src/unifier/{termAgainstConstructor.js → termWithConstructor.js} +9 -9
- package/src/unify/{conclusionAgainstStatement.js → conclusionWithStatement.js} +3 -3
- package/src/unify/{consequentAgainstStatement.js → consequentWithStatement.js} +3 -3
- package/src/unify/{metavariableAgainstStatement.js → metavariableWithStatement.js} +12 -12
- package/src/unify/{premiseAgainstProofStep.js → premiseWithProofStep.js} +5 -5
- package/src/unify/{premisesAgainstProofSteps.js → premisesWithProofSteps.js} +3 -3
- package/src/unify/statementAtainstStatement.js +4 -4
- package/src/unify/{statementAgainstMetaType.js → statementWithMetaType.js} +5 -5
- package/src/unify/{suppositionAgainstProofStep.js → suppositionWithProffStep.js} +5 -5
- package/src/unify/{suppositionsAgainstProofSteps.js → suppositionsWithProofSteps.js} +3 -3
- package/src/unify/{termAgainstTerm.js → termWithTerm.js} +4 -4
- package/src/unify/{termAgainstType.js → termWithType.js} +4 -4
- package/src/unify/{variableAgainstTerm.js → variableWithTerm.js} +5 -5
- package/src/utilities/node.js +2 -48
- package/src/utilities/tokens.js +0 -15
- package/src/variable.js +0 -36
- package/src/verify/error.js +1 -1
- package/src/verify/judgement.js +3 -3
- package/src/verify/metavariable.js +3 -3
- package/src/verify/statement/qualified.js +50 -50
- package/src/verify/statement.js +17 -17
- package/src/verify/statementAsCombinator.js +1 -1
- package/src/verify/term.js +24 -24
- package/lib/releaseContext/verify.js +0 -66
- package/lib/unifier/statementAgainstCombinator.js +0 -147
- package/lib/unify/conclusionAgainstStatement.js +0 -34
- package/lib/unify/consequentAgainstStatement.js +0 -34
- package/lib/unify/metavariableAgainstStatement.js +0 -74
- package/lib/unify/premiseAgainstProofStep.js +0 -41
- package/lib/unify/premisesAgainstProofSteps.js +0 -31
- package/lib/unify/statementAgainstMetaType.js +0 -48
- package/lib/unify/suppositionAgainstProofStep.js +0 -41
- package/lib/unify/suppositionsAgainstProofSteps.js +0 -31
- package/lib/unify/termAgainstTerm.js +0 -21
- package/lib/unify/termAgainstType.js +0 -32
- package/lib/unify/variableAgainstTerm.js +0 -54
package/bin/action/verify.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
const { Dependency } = require("occam-entities"),
|
|
4
|
-
{ verifyRelease, createReleaseContext,
|
|
4
|
+
{ verifyRelease, createReleaseContext, initialiseReleaseContext } = require("../../lib/index"); ///
|
|
5
5
|
|
|
6
6
|
const { trimTrailingSlash } = require("../utilities/string"),
|
|
7
7
|
{ releaseContextFromDependency } = require("../utilities/releaseContext");
|
|
@@ -31,7 +31,7 @@ function verifyAction(argument, log) {
|
|
|
31
31
|
releaseContext = releaseContextMap[releaseName] || null;
|
|
32
32
|
|
|
33
33
|
if (releaseContext === null) {
|
|
34
|
-
log.warning(`The '${name}' project or package
|
|
34
|
+
log.warning(`The '${name}' project or package context cannot be created.`);
|
|
35
35
|
|
|
36
36
|
return;
|
|
37
37
|
}
|
|
@@ -44,15 +44,26 @@ function verifyAction(argument, log) {
|
|
|
44
44
|
return;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
const dependentReleased = released
|
|
47
|
+
const dependentReleased = released, ///
|
|
48
|
+
releaseContextInitialised = initialiseReleaseContext(dependency, dependentName, dependentReleased, context);
|
|
48
49
|
|
|
49
|
-
|
|
50
|
+
if (!releaseContextInitialised) {
|
|
51
|
+
log.warning(`The '${name}' project or package context cannot be initialised.`);
|
|
52
|
+
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
50
55
|
|
|
51
56
|
let now;
|
|
52
57
|
|
|
53
58
|
now = Date.now();
|
|
54
59
|
|
|
55
|
-
verifyRelease(releaseName, releaseContextMap);
|
|
60
|
+
const releaseVerified = verifyRelease(releaseName, releaseContextMap);
|
|
61
|
+
|
|
62
|
+
if (!releaseVerified) {
|
|
63
|
+
log.warning(`The '${name}' project or package context cannot be verified.`);
|
|
64
|
+
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
56
67
|
|
|
57
68
|
const then = now; ///
|
|
58
69
|
|
|
@@ -64,17 +64,14 @@ function releaseContextFromJSON(json, context) {
|
|
|
64
64
|
const { log } = context,
|
|
65
65
|
{ name } = json;
|
|
66
66
|
|
|
67
|
-
({ context } = json);
|
|
68
|
-
|
|
69
67
|
let { entries } = json;
|
|
70
68
|
|
|
71
69
|
json = entries; ///
|
|
72
70
|
|
|
73
71
|
entries = Entries.fromJSON(json);
|
|
74
72
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
const releaseContext = ReleaseContext.fromLogJSONNameAndEntries(log, json, name, entries);
|
|
73
|
+
const released = true,
|
|
74
|
+
releaseContext = ReleaseContext.fromLogNameEntriesAndReleased(log, name, entries, released);
|
|
78
75
|
|
|
79
76
|
return releaseContext;
|
|
80
77
|
}
|
|
@@ -89,11 +86,11 @@ function releaseContextFromProject(project, context) {
|
|
|
89
86
|
|
|
90
87
|
if (metaJSONFileValid) {
|
|
91
88
|
const { log } = context,
|
|
92
|
-
json = null,
|
|
93
89
|
name = project.getName(),
|
|
94
|
-
entries = project.getEntries()
|
|
90
|
+
entries = project.getEntries(),
|
|
91
|
+
released = false;
|
|
95
92
|
|
|
96
|
-
releaseContext = ReleaseContext.
|
|
93
|
+
releaseContext = ReleaseContext.fromLogNameEntriesAndReleased(log, name, entries, released);
|
|
97
94
|
}
|
|
98
95
|
}
|
|
99
96
|
|
package/lib/axiom.js
CHANGED
|
@@ -94,12 +94,6 @@ var Axiom = /*#__PURE__*/ function(TopLevelAssertion) {
|
|
|
94
94
|
return _call_super(this, Axiom, arguments);
|
|
95
95
|
}
|
|
96
96
|
_create_class(Axiom, null, [
|
|
97
|
-
{
|
|
98
|
-
key: "fromJSONAndFileContext",
|
|
99
|
-
value: function fromJSONAndFileContext(json, fileContext) {
|
|
100
|
-
return _topLevelAssertion.default.fromJSONAndFileContext(Axiom, json, fileContext);
|
|
101
|
-
}
|
|
102
|
-
},
|
|
103
97
|
{
|
|
104
98
|
key: "fromLabelsSuppositionsConsequentSubstitutionsAndFileContext",
|
|
105
99
|
value: function fromLabelsSuppositionsConsequentSubstitutionsAndFileContext(labels, suppositions, consequent, substitutions, fileContext) {
|
|
@@ -110,4 +104,4 @@ var Axiom = /*#__PURE__*/ function(TopLevelAssertion) {
|
|
|
110
104
|
return Axiom;
|
|
111
105
|
}(_topLevelAssertion.default);
|
|
112
106
|
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9heGlvbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFRvcExldmVsQXNzZXJ0aW9uIGZyb20gXCIuL3RvcExldmVsQXNzZXJ0aW9uXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEF4aW9tIGV4dGVuZHMgVG9wTGV2ZWxBc3NlcnRpb24ge1xuICBzdGF0aWMgZnJvbUxhYmVsc1N1cHBvc2l0aW9uc0NvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQobGFiZWxzLCBzdXBwb3NpdGlvbnMsIGNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0KSB7IHJldHVybiBUb3BMZXZlbEFzc2VydGlvbi5mcm9tTGFiZWxzU3VwcG9zaXRpb25zQ29uc2VxdWVudFN1YnN0aXR1dGlvbnNBbmRGaWxlQ29udGV4dChBeGlvbSwgbGFiZWxzLCBzdXBwb3NpdGlvbnMsIGNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0KTsgfVxufVxuIl0sIm5hbWVzIjpbIkF4aW9tIiwiZnJvbUxhYmVsc1N1cHBvc2l0aW9uc0NvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQiLCJsYWJlbHMiLCJzdXBwb3NpdGlvbnMiLCJjb25zZXF1ZW50Iiwic3Vic3RpdHV0aW9ucyIsImZpbGVDb250ZXh0IiwiVG9wTGV2ZWxBc3NlcnRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O3dFQUZTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWYsSUFBQSxBQUFNQSxzQkFBTjtjQUFNQTthQUFBQTtnQ0FBQUE7aUNBQUFBOztrQkFBQUE7O1lBQ1pDLEtBQUFBO21CQUFQLFNBQU9BLDREQUE0REMsTUFBTSxFQUFFQyxZQUFZLEVBQUVDLFVBQVUsRUFBRUMsYUFBYSxFQUFFQyxXQUFXO2dCQUFJLE9BQU9DLDBCQUFpQixDQUFDTiwyREFBMkQsQ0FEcE1ELE9BQzRNRSxRQUFRQyxjQUFjQyxZQUFZQyxlQUFlQztZQUFjOzs7V0FEM1FOO0VBQWNPLDBCQUFpQiJ9
|
package/lib/combinator.js
CHANGED
|
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _string = require("./utilities/string");
|
|
12
|
-
var _node = require("./utilities/node");
|
|
13
|
-
var _tokens = require("./utilities/tokens");
|
|
14
12
|
function _class_call_check(instance, Constructor) {
|
|
15
13
|
if (!(instance instanceof Constructor)) {
|
|
16
14
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -48,15 +46,6 @@ var Combinator = /*#__PURE__*/ function() {
|
|
|
48
46
|
value: function getString() {
|
|
49
47
|
return this.string;
|
|
50
48
|
}
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
key: "toJSON",
|
|
54
|
-
value: function toJSON(tokens) {
|
|
55
|
-
var statementString = (0, _string.nodeAsString)(this.statementNode, tokens), statement = statementString, json = {
|
|
56
|
-
statement: statement
|
|
57
|
-
};
|
|
58
|
-
return json;
|
|
59
|
-
}
|
|
60
49
|
}
|
|
61
50
|
], [
|
|
62
51
|
{
|
|
@@ -65,13 +54,6 @@ var Combinator = /*#__PURE__*/ function() {
|
|
|
65
54
|
var string = stringFromStatementNodeAndTokens(statementNode, tokens), combinator = new Combinator(statementNode, string);
|
|
66
55
|
return combinator;
|
|
67
56
|
}
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
key: "fromJSONAndFileContext",
|
|
71
|
-
value: function fromJSONAndFileContext(json, fileContext) {
|
|
72
|
-
var statement = json.statement, statementString = statement, lexer = fileContext.getLexer(), parser = fileContext.getParser(), unqualifiedStatementTokens = (0, _tokens.unqualifiedStatementTokensFromStatementString)(statementString, lexer), statementNode = (0, _node.statementNodeFromUnqualifiedStatementTokens)(unqualifiedStatementTokens, parser), tokens = unqualifiedStatementTokens, string = stringFromStatementNodeAndTokens(statementNode, tokens), combinator = new Combinator(statementNode, string);
|
|
73
|
-
return combinator;
|
|
74
|
-
}
|
|
75
57
|
}
|
|
76
58
|
]);
|
|
77
59
|
return Combinator;
|
|
@@ -81,4 +63,4 @@ function stringFromStatementNodeAndTokens(statementNode, tokens) {
|
|
|
81
63
|
return string;
|
|
82
64
|
}
|
|
83
65
|
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21iaW5hdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvbWJpbmF0b3Ige1xuICBjb25zdHJ1Y3RvcihzdGF0ZW1lbnROb2RlLCBzdHJpbmcpIHtcbiAgICB0aGlzLnN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlO1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICB9XG5cbiAgZ2V0U3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3RhdGVtZW50Tm9kZUFuZFRva2VucyhzdGF0ZW1lbnROb2RlLCB0b2tlbnMpIHtcbiAgICBjb25zdCBzdHJpbmcgPSBzdHJpbmdGcm9tU3RhdGVtZW50Tm9kZUFuZFRva2VucyhzdGF0ZW1lbnROb2RlLCB0b2tlbnMpLFxuICAgICAgICAgIGNvbWJpbmF0b3IgPSBuZXcgQ29tYmluYXRvcihzdGF0ZW1lbnROb2RlLCBzdHJpbmcpO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3I7XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RyaW5nRnJvbVN0YXRlbWVudE5vZGVBbmRUb2tlbnMoc3RhdGVtZW50Tm9kZSwgdG9rZW5zKSB7XG4gIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhzdGF0ZW1lbnROb2RlLCB0b2tlbnMpLFxuICAgICAgICBzdHJpbmcgPSBzdGF0ZW1lbnRTdHJpbmc7IC8vL1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG4iXSwibmFtZXMiOlsiQ29tYmluYXRvciIsInN0YXRlbWVudE5vZGUiLCJzdHJpbmciLCJnZXRTdGF0ZW1lbnROb2RlIiwiZ2V0U3RyaW5nIiwiZnJvbVN0YXRlbWVudE5vZGVBbmRUb2tlbnMiLCJ0b2tlbnMiLCJzdHJpbmdGcm9tU3RhdGVtZW50Tm9kZUFuZFRva2VucyIsImNvbWJpbmF0b3IiLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O3NCQUZROzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVkLElBQUEsQUFBTUEsMkJBQU47YUFBTUEsV0FDUEMsYUFBYSxFQUFFQyxNQUFNO2dDQURkRjtRQUVqQixJQUFJLENBQUNDLGFBQWEsR0FBR0E7UUFDckIsSUFBSSxDQUFDQyxNQUFNLEdBQUdBOztrQkFIR0Y7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLGFBQWE7WUFDM0I7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLE1BQU07WUFDcEI7Ozs7WUFFT0csS0FBQUE7bUJBQVAsU0FBT0EsMkJBQTJCSixhQUFhLEVBQUVLLE1BQU07Z0JBQ3JELElBQU1KLFNBQVNLLGlDQUFpQ04sZUFBZUssU0FDekRFLGFBQWEsSUFoQkZSLFdBZ0JpQkMsZUFBZUM7Z0JBRWpELE9BQU9NO1lBQ1Q7OztXQW5CbUJSOztBQXNCckIsU0FBU08saUNBQWlDTixhQUFhLEVBQUVLLE1BQU07SUFDN0QsSUFBTUcsa0JBQWtCQyxJQUFBQSxvQkFBWSxFQUFDVCxlQUFlSyxTQUM5Q0osU0FBU08saUJBQWlCLEdBQUc7SUFFbkMsT0FBT1A7QUFDVCJ9
|
package/lib/conclusion.js
CHANGED
|
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("./unifier/metaLevel"));
|
|
12
|
-
var _string = require("./utilities/string");
|
|
13
|
-
var _node = require("./utilities/node");
|
|
14
12
|
function _class_call_check(instance, Constructor) {
|
|
15
13
|
if (!(instance instanceof Constructor)) {
|
|
16
14
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -57,15 +55,6 @@ var Conclusion = /*#__PURE__*/ function() {
|
|
|
57
55
|
}
|
|
58
56
|
return statementUnified;
|
|
59
57
|
}
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
key: "toJSON",
|
|
63
|
-
value: function toJSON(tokens) {
|
|
64
|
-
var statementString = (0, _string.nodeAsString)(this.statementNode, tokens), statement = statementString, json = {
|
|
65
|
-
statement: statement
|
|
66
|
-
};
|
|
67
|
-
return json;
|
|
68
|
-
}
|
|
69
58
|
}
|
|
70
59
|
], [
|
|
71
60
|
{
|
|
@@ -74,16 +63,9 @@ var Conclusion = /*#__PURE__*/ function() {
|
|
|
74
63
|
var conclusion = new Conclusion(statementNode);
|
|
75
64
|
return conclusion;
|
|
76
65
|
}
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
key: "fromJSONAndFileContext",
|
|
80
|
-
value: function fromJSONAndFileContext(json, fileContext) {
|
|
81
|
-
var statement = json.statement, statementString = statement, lexer = fileContext.getLexer(), parser = fileContext.getParser(), statementNode = (0, _node.statementNodeFromStatementString)(statementString, lexer, parser), conclusion = new Conclusion(statementNode);
|
|
82
|
-
return conclusion;
|
|
83
|
-
}
|
|
84
66
|
}
|
|
85
67
|
]);
|
|
86
68
|
return Conclusion;
|
|
87
69
|
}();
|
|
88
70
|
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25jbHVzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWV0YUxldmVsVW5pZmllciBmcm9tIFwiLi91bmlmaWVyL21ldGFMZXZlbFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb25jbHVzaW9uIHtcbiAgY29uc3RydWN0b3Ioc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMuc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBnZXRTdGF0ZW1lbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXRlbWVudE5vZGU7XG4gIH1cblxuICB1bmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0Qikge1xuICAgIGxldCBzdGF0ZW1lbnRVbmlmaWVkID0gZmFsc2U7XG5cbiAgICBpZiAodGhpcy5zdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBub2RlQSA9IHRoaXMuc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgICAgbm9kZUIgPSBzdGF0ZW1lbnROb2RlQiwgIC8vL1xuICAgICAgICAgICAgdW5pZmllZCA9IG1ldGFMZXZlbFVuaWZpZXIudW5pZnkobm9kZUEsIG5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCKTtcblxuICAgICAgc3RhdGVtZW50VW5pZmllZCA9IHVuaWZpZWQ7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBzdGF0ZW1lbnRVbmlmaWVkO1xuICB9XG5cbiAgc3RhdGljIGZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUpIHtcbiAgICBjb25zdCBjb25jbHVzaW9uID0gbmV3IENvbmNsdXNpb24oc3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gY29uY2x1c2lvbjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkNvbmNsdXNpb24iLCJzdGF0ZW1lbnROb2RlIiwiZ2V0U3RhdGVtZW50Tm9kZSIsInVuaWZ5U3RhdGVtZW50Iiwic3RhdGVtZW50Tm9kZUIiLCJzdWJzdGl0dXRpb25zIiwibG9jYWxDb250ZXh0QSIsImxvY2FsQ29udGV4dEIiLCJzdGF0ZW1lbnRVbmlmaWVkIiwibm9kZUEiLCJub2RlQiIsInVuaWZpZWQiLCJtZXRhTGV2ZWxVbmlmaWVyIiwidW5pZnkiLCJmcm9tU3RhdGVtZW50Tm9kZSIsImNvbmNsdXNpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O2dFQUZROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWQsSUFBQSxBQUFNQSwyQkFBTjthQUFNQSxXQUNQQyxhQUFhO2dDQURORDtRQUVqQixJQUFJLENBQUNDLGFBQWEsR0FBR0E7O2tCQUZKRDs7WUFLbkJFLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0QsYUFBYTtZQUMzQjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlQyxjQUFjLEVBQUVDLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxhQUFhO2dCQUN4RSxJQUFJQyxtQkFBbUI7Z0JBRXZCLElBQUksSUFBSSxDQUFDUCxhQUFhLEtBQUssTUFBTTtvQkFDL0IsSUFBTVEsUUFBUSxJQUFJLENBQUNSLGFBQWEsRUFDMUJTLFFBQVFOLGdCQUNSTyxVQUFVQyxrQkFBZ0IsQ0FBQ0MsS0FBSyxDQUFDSixPQUFPQyxPQUFPTCxlQUFlQyxlQUFlQztvQkFFbkZDLG1CQUFtQkcsU0FBUyxHQUFHO2dCQUNqQztnQkFFQSxPQUFPSDtZQUNUOzs7O1lBRU9NLEtBQUFBO21CQUFQLFNBQU9BLGtCQUFrQmIsYUFBYTtnQkFDcEMsSUFBTWMsYUFBYSxJQXhCRmYsV0F3QmlCQztnQkFFbEMsT0FBT2M7WUFDVDs7O1dBM0JtQmYifQ==
|
package/lib/conjecture.js
CHANGED
|
@@ -94,12 +94,6 @@ var Conjecture = /*#__PURE__*/ function(TopLevelAssertion) {
|
|
|
94
94
|
return _call_super(this, Conjecture, arguments);
|
|
95
95
|
}
|
|
96
96
|
_create_class(Conjecture, null, [
|
|
97
|
-
{
|
|
98
|
-
key: "fromJSONAndFileContext",
|
|
99
|
-
value: function fromJSONAndFileContext(json, fileContext) {
|
|
100
|
-
return _topLevelAssertion.default.fromJSONAndFileContext(Conjecture, json, fileContext);
|
|
101
|
-
}
|
|
102
|
-
},
|
|
103
97
|
{
|
|
104
98
|
key: "fromLabelsSuppositionsConsequentSubstitutionsAndFileContext",
|
|
105
99
|
value: function fromLabelsSuppositionsConsequentSubstitutionsAndFileContext(labels, suppositions, consequent, substitutions, fileContext) {
|
|
@@ -110,4 +104,4 @@ var Conjecture = /*#__PURE__*/ function(TopLevelAssertion) {
|
|
|
110
104
|
return Conjecture;
|
|
111
105
|
}(_topLevelAssertion.default);
|
|
112
106
|
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25qZWN0dXJlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgVG9wTGV2ZWxBc3NlcnRpb24gZnJvbSBcIi4vdG9wTGV2ZWxBc3NlcnRpb25cIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29uamVjdHVyZSBleHRlbmRzIFRvcExldmVsQXNzZXJ0aW9uIHtcbiAgc3RhdGljIGZyb21MYWJlbHNTdXBwb3NpdGlvbnNDb25zZXF1ZW50U3Vic3RpdHV0aW9uc0FuZEZpbGVDb250ZXh0KGxhYmVscywgc3VwcG9zaXRpb25zLCBjb25zZXF1ZW50LCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dCkgeyByZXR1cm4gVG9wTGV2ZWxBc3NlcnRpb24uZnJvbUxhYmVsc1N1cHBvc2l0aW9uc0NvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQoQ29uamVjdHVyZSwgbGFiZWxzLCBzdXBwb3NpdGlvbnMsIGNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0KTsgfVxufVxuIl0sIm5hbWVzIjpbIkNvbmplY3R1cmUiLCJmcm9tTGFiZWxzU3VwcG9zaXRpb25zQ29uc2VxdWVudFN1YnN0aXR1dGlvbnNBbmRGaWxlQ29udGV4dCIsImxhYmVscyIsInN1cHBvc2l0aW9ucyIsImNvbnNlcXVlbnQiLCJzdWJzdGl0dXRpb25zIiwiZmlsZUNvbnRleHQiLCJUb3BMZXZlbEFzc2VydGlvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7d0VBRlM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFZixJQUFBLEFBQU1BLDJCQUFOO2NBQU1BO2FBQUFBO2dDQUFBQTtpQ0FBQUE7O2tCQUFBQTs7WUFDWkMsS0FBQUE7bUJBQVAsU0FBT0EsNERBQTREQyxNQUFNLEVBQUVDLFlBQVksRUFBRUMsVUFBVSxFQUFFQyxhQUFhLEVBQUVDLFdBQVc7Z0JBQUksT0FBT0MsMEJBQWlCLENBQUNOLDJEQUEyRCxDQURwTUQsWUFDaU5FLFFBQVFDLGNBQWNDLFlBQVlDLGVBQWVDO1lBQWM7OztXQURoUk47RUFBbUJPLDBCQUFpQiJ9
|
package/lib/consequent.js
CHANGED
|
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("./unifier/metaLevel"));
|
|
12
|
-
var _string = require("./utilities/string");
|
|
13
|
-
var _node = require("./utilities/node");
|
|
14
12
|
function _class_call_check(instance, Constructor) {
|
|
15
13
|
if (!(instance instanceof Constructor)) {
|
|
16
14
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -57,15 +55,6 @@ var Consequent = /*#__PURE__*/ function() {
|
|
|
57
55
|
}
|
|
58
56
|
return statementUnified;
|
|
59
57
|
}
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
key: "toJSON",
|
|
63
|
-
value: function toJSON(tokens) {
|
|
64
|
-
var statementString = (0, _string.nodeAsString)(this.statementNode, tokens), statement = statementString, json = {
|
|
65
|
-
statement: statement
|
|
66
|
-
};
|
|
67
|
-
return json;
|
|
68
|
-
}
|
|
69
58
|
}
|
|
70
59
|
], [
|
|
71
60
|
{
|
|
@@ -74,16 +63,9 @@ var Consequent = /*#__PURE__*/ function() {
|
|
|
74
63
|
var consequent = new Consequent(statementNode);
|
|
75
64
|
return consequent;
|
|
76
65
|
}
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
key: "fromJSONAndFileContext",
|
|
80
|
-
value: function fromJSONAndFileContext(json, fileContext) {
|
|
81
|
-
var statement = json.statement, statementString = statement, lexer = fileContext.getLexer(), parser = fileContext.getParser(), statementNode = (0, _node.statementNodeFromStatementString)(statementString, lexer, parser), consequent = new Consequent(statementNode);
|
|
82
|
-
return consequent;
|
|
83
|
-
}
|
|
84
66
|
}
|
|
85
67
|
]);
|
|
86
68
|
return Consequent;
|
|
87
69
|
}();
|
|
88
70
|
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zZXF1ZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWV0YUxldmVsVW5pZmllciBmcm9tIFwiLi91bmlmaWVyL21ldGFMZXZlbFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb25zZXF1ZW50IHtcbiAgY29uc3RydWN0b3Ioc3RhdGVtZW50Tm9kZSkge1xuICAgIHRoaXMuc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBnZXRTdGF0ZW1lbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXRlbWVudE5vZGU7XG4gIH1cblxuICB1bmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0Qikge1xuICAgIGxldCBzdGF0ZW1lbnRVbmlmaWVkID0gZmFsc2U7XG5cbiAgICBpZiAodGhpcy5zdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBub2RlQSA9IHRoaXMuc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgICAgbm9kZUIgPSBzdGF0ZW1lbnROb2RlQiwgIC8vL1xuICAgICAgICAgICAgdW5pZmllZCA9IG1ldGFMZXZlbFVuaWZpZXIudW5pZnkobm9kZUEsIG5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCKTtcblxuICAgICAgc3RhdGVtZW50VW5pZmllZCA9IHVuaWZpZWQ7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBzdGF0ZW1lbnRVbmlmaWVkO1xuICB9XG5cbiAgc3RhdGljIGZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUpIHtcbiAgICBjb25zdCBjb25zZXF1ZW50ID0gbmV3IENvbnNlcXVlbnQoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gY29uc2VxdWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkNvbnNlcXVlbnQiLCJzdGF0ZW1lbnROb2RlIiwiZ2V0U3RhdGVtZW50Tm9kZSIsInVuaWZ5U3RhdGVtZW50Iiwic3RhdGVtZW50Tm9kZUIiLCJzdWJzdGl0dXRpb25zIiwibG9jYWxDb250ZXh0QSIsImxvY2FsQ29udGV4dEIiLCJzdGF0ZW1lbnRVbmlmaWVkIiwibm9kZUEiLCJub2RlQiIsInVuaWZpZWQiLCJtZXRhTGV2ZWxVbmlmaWVyIiwidW5pZnkiLCJmcm9tU3RhdGVtZW50Tm9kZSIsImNvbnNlcXVlbnQiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O2dFQUZROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWQsSUFBQSxBQUFNQSwyQkFBTjthQUFNQSxXQUNQQyxhQUFhO2dDQURORDtRQUVqQixJQUFJLENBQUNDLGFBQWEsR0FBR0E7O2tCQUZKRDs7WUFLbkJFLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0QsYUFBYTtZQUMzQjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlQyxjQUFjLEVBQUVDLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxhQUFhO2dCQUN4RSxJQUFJQyxtQkFBbUI7Z0JBRXZCLElBQUksSUFBSSxDQUFDUCxhQUFhLEtBQUssTUFBTTtvQkFDL0IsSUFBTVEsUUFBUSxJQUFJLENBQUNSLGFBQWEsRUFDMUJTLFFBQVFOLGdCQUNSTyxVQUFVQyxrQkFBZ0IsQ0FBQ0MsS0FBSyxDQUFDSixPQUFPQyxPQUFPTCxlQUFlQyxlQUFlQztvQkFFbkZDLG1CQUFtQkcsU0FBUyxHQUFHO2dCQUNqQztnQkFFQSxPQUFPSDtZQUNUOzs7O1lBRU9NLEtBQUFBO21CQUFQLFNBQU9BLGtCQUFrQmIsYUFBYTtnQkFDcEMsSUFBTWMsYUFBYSxJQXhCRmYsV0F3QmlCQztnQkFFbEMsT0FBT2M7WUFDVDs7O1dBM0JtQmYifQ==
|
package/lib/constructor.js
CHANGED
|
@@ -9,9 +9,6 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _string = require("./utilities/string");
|
|
12
|
-
var _type = require("./type");
|
|
13
|
-
var _node = require("./utilities/node");
|
|
14
|
-
var _tokens = require("./utilities/tokens");
|
|
15
12
|
function _class_call_check(instance, Constructor) {
|
|
16
13
|
if (!(instance instanceof Constructor)) {
|
|
17
14
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -56,16 +53,6 @@ var Constructor = /*#__PURE__*/ function() {
|
|
|
56
53
|
value: function getType() {
|
|
57
54
|
return this.type;
|
|
58
55
|
}
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
key: "toJSON",
|
|
62
|
-
value: function toJSON(tokens) {
|
|
63
|
-
var termString = (0, _string.nodeAsString)(this.termNode, tokens), typeJSON = this.type === null ? null : this.type.toJSON(tokens), term = termString, type = typeJSON, json = {
|
|
64
|
-
term: term,
|
|
65
|
-
type: type
|
|
66
|
-
};
|
|
67
|
-
return json;
|
|
68
|
-
}
|
|
69
56
|
}
|
|
70
57
|
], [
|
|
71
58
|
{
|
|
@@ -74,20 +61,6 @@ var Constructor = /*#__PURE__*/ function() {
|
|
|
74
61
|
var string = stringFromTermNodeTypeAndTokens(termNode, type, tokens), constructor = new Constructor(termNode, string, type);
|
|
75
62
|
return constructor;
|
|
76
63
|
}
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
key: "fromJSONAndFileContext",
|
|
80
|
-
value: function fromJSONAndFileContext(json, fileContext) {
|
|
81
|
-
var term = json.term, termString = term, lexer = fileContext.getLexer(), parser = fileContext.getParser(), constructorDeclarationTokens = (0, _tokens.constructorDeclarationTokensFromTermString)(termString, lexer), termNode = (0, _node.termNodeFromConstructorDeclarationTokens)(constructorDeclarationTokens, parser);
|
|
82
|
-
var type = json.type;
|
|
83
|
-
if (type !== null) {
|
|
84
|
-
var typeJSON = type; ///
|
|
85
|
-
json = typeJSON; ///
|
|
86
|
-
type = (0, _type.typeFromJSONAndFileContext)(json, fileContext);
|
|
87
|
-
}
|
|
88
|
-
var tokens = constructorDeclarationTokens, string = stringFromTermNodeTypeAndTokens(termNode, type, tokens), constructor = new Constructor(termNode, string, type);
|
|
89
|
-
return constructor;
|
|
90
|
-
}
|
|
91
64
|
}
|
|
92
65
|
]);
|
|
93
66
|
return Constructor;
|
|
@@ -104,4 +77,4 @@ function stringFromTermNodeTypeAndTokens(termNode, type, tokens) {
|
|
|
104
77
|
return string;
|
|
105
78
|
}
|
|
106
79
|
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdHJ1Y3Rvci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb25zdHJ1Y3RvciB7XG4gIGNvbnN0cnVjdG9yKHRlcm1Ob2RlLCBzdHJpbmcsIHR5cGUpIHtcbiAgICB0aGlzLnRlcm1Ob2RlID0gdGVybU5vZGU7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgfVxuXG4gIGdldFRlcm1Ob2RlKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm1Ob2RlO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVGVybU5vZGVUeXBlQW5kVG9rZW5zKHRlcm1Ob2RlLCB0eXBlLCB0b2tlbnMpIHtcbiAgICBjb25zdCBzdHJpbmcgPSBzdHJpbmdGcm9tVGVybU5vZGVUeXBlQW5kVG9rZW5zKHRlcm1Ob2RlLCB0eXBlLCB0b2tlbnMpLFxuICAgICAgICAgIGNvbnN0cnVjdG9yID0gbmV3IENvbnN0cnVjdG9yKHRlcm1Ob2RlLCBzdHJpbmcsIHR5cGUpO1xuXG4gICAgcmV0dXJuIGNvbnN0cnVjdG9yO1xuICB9XG59XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21UZXJtTm9kZVR5cGVBbmRUb2tlbnModGVybU5vZGUsIHR5cGUsIHRva2Vucykge1xuICBsZXQgc3RyaW5nO1xuXG4gIGNvbnN0IHRlcm1TdHJpbmcgPSBub2RlQXNTdHJpbmcodGVybU5vZGUsIHRva2Vucyk7XG5cbiAgaWYgKHR5cGUgPT09IG51bGwpIHtcbiAgICBzdHJpbmcgPSBgJHt0ZXJtU3RyaW5nfWA7XG4gIH0gZWxzZSB7XG4gICAgY29uc3Qgbm9TdXBlclR5cGUgPSB0cnVlLFxuICAgICAgICAgIHR5cGVTdHJpbmcgPSB0eXBlLmFzU3RyaW5nKHRva2Vucywgbm9TdXBlclR5cGUpO1xuXG4gICAgc3RyaW5nID0gYCR7dGVybVN0cmluZ306JHt0eXBlU3RyaW5nfWA7XG4gIH1cblxuICByZXR1cm4gc3RyaW5nO1xufVxuIl0sIm5hbWVzIjpbIkNvbnN0cnVjdG9yIiwidGVybU5vZGUiLCJzdHJpbmciLCJ0eXBlIiwiZ2V0VGVybU5vZGUiLCJnZXRTdHJpbmciLCJnZXRUeXBlIiwiZnJvbVRlcm1Ob2RlVHlwZUFuZFRva2VucyIsInRva2VucyIsInN0cmluZ0Zyb21UZXJtTm9kZVR5cGVBbmRUb2tlbnMiLCJjb25zdHJ1Y3RvciIsInRlcm1TdHJpbmciLCJub2RlQXNTdHJpbmciLCJub1N1cGVyVHlwZSIsInR5cGVTdHJpbmciLCJhc1N0cmluZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7c0JBRlE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWQsSUFBQSxBQUFNQSw0QkFBTjthQUFNQSxZQUNQQyxRQUFRLEVBQUVDLE1BQU0sRUFBRUMsSUFBSTtnQ0FEZkg7UUFFakIsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTs7a0JBSktIOztZQU9uQkksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxRQUFRO1lBQ3RCOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxNQUFNO1lBQ3BCOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxJQUFJO1lBQ2xCOzs7O1lBRU9JLEtBQUFBO21CQUFQLFNBQU9BLDBCQUEwQk4sUUFBUSxFQUFFRSxJQUFJLEVBQUVLLE1BQU07Z0JBQ3JELElBQU1OLFNBQVNPLGdDQUFnQ1IsVUFBVUUsTUFBTUssU0FDekRFLGNBQWMsSUFyQkhWLFlBcUJtQkMsVUFBVUMsUUFBUUM7Z0JBRXRELE9BQU9PO1lBQ1Q7OztXQXhCbUJWOztBQTJCckIsU0FBU1MsZ0NBQWdDUixRQUFRLEVBQUVFLElBQUksRUFBRUssTUFBTTtJQUM3RCxJQUFJTjtJQUVKLElBQU1TLGFBQWFDLElBQUFBLG9CQUFZLEVBQUNYLFVBQVVPO0lBRTFDLElBQUlMLFNBQVMsTUFBTTtRQUNqQkQsU0FBUyxBQUFDLEdBQWEsT0FBWFM7SUFDZCxPQUFPO1FBQ0wsSUFBTUUsY0FBYyxNQUNkQyxhQUFhWCxLQUFLWSxRQUFRLENBQUNQLFFBQVFLO1FBRXpDWCxTQUFTLEFBQUMsR0FBZ0JZLE9BQWRILFlBQVcsS0FBYyxPQUFYRztJQUM1QjtJQUVBLE9BQU9aO0FBQ1QifQ==
|