occam-verify-cli 0.0.698 → 0.0.702
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/assignment/equality.js +4 -4
- package/lib/assignment/metavariable.js +4 -4
- package/lib/assignment/variable.js +4 -4
- package/lib/collection.js +44 -6
- package/lib/conclusion.js +6 -6
- package/lib/consequent.js +4 -4
- package/lib/constructor.js +3 -10
- package/lib/context/file.js +12 -73
- package/lib/context/local.js +31 -70
- package/lib/context/localMeta.js +12 -9
- package/lib/context/release.js +2 -4
- package/lib/equality.js +22 -6
- package/lib/metaType.js +10 -10
- package/lib/metavariable.js +3 -10
- package/lib/mixins/context.js +107 -0
- package/lib/premise.js +9 -9
- package/lib/ruleNames.js +9 -1
- package/lib/supposition.js +4 -4
- package/lib/type.js +23 -27
- package/lib/utilities/collection.js +27 -13
- package/lib/utilities/node.js +3 -73
- package/lib/utilities/tokens.js +1 -8
- package/lib/variable.js +11 -10
- package/lib/verifier/node/statementAsCombinator.js +4 -1
- package/lib/verifier/node/termAsConstructor.js +4 -20
- package/lib/verifier/nodes/equality.js +169 -0
- package/lib/verifier/nodes/metastatementForMetavariable.js +6 -7
- package/lib/verifier/nodes/statement.js +12 -4
- package/lib/verifier/nodes/statementForMetavariable.js +6 -7
- package/lib/verifier/nodes/termForVariable.js +19 -20
- package/lib/verify/axiom.js +3 -8
- package/lib/verify/conclusion.js +2 -2
- package/lib/verify/conjecture.js +4 -9
- package/lib/verify/consequent.js +3 -3
- package/lib/verify/derivation.js +30 -13
- package/lib/verify/equality.js +17 -12
- package/lib/verify/givenType.js +32 -0
- package/lib/verify/lemma.js +4 -9
- package/lib/verify/metastatement.js +3 -3
- package/lib/verify/premises.js +28 -0
- package/lib/verify/rule.js +3 -8
- package/lib/verify/ruleDerivation.js +6 -8
- package/lib/verify/statement/qualified.js +135 -37
- package/lib/verify/statement.js +34 -42
- package/lib/verify/supposition.js +6 -7
- package/lib/verify/suppositions.js +28 -0
- package/lib/verify/term.js +25 -60
- package/lib/verify/termAndGivenType.js +39 -0
- package/lib/verify/termAsGivenVariable.js +36 -0
- package/lib/verify/theorem.js +3 -8
- package/lib/verify/typeAssertion.js +44 -27
- package/package.json +1 -1
- package/src/assignment/equality.js +5 -5
- package/src/assignment/metavariable.js +5 -5
- package/src/assignment/variable.js +7 -5
- package/src/collection.js +55 -5
- package/src/conclusion.js +6 -6
- package/src/consequent.js +4 -4
- package/src/constructor.js +2 -7
- package/src/context/file.js +16 -13
- package/src/context/local.js +39 -86
- package/src/context/localMeta.js +11 -7
- package/src/context/release.js +6 -9
- package/src/equality.js +25 -4
- package/src/metaType.js +10 -10
- package/src/metavariable.js +2 -7
- package/src/mixins/{file.js → context.js} +20 -2
- package/src/premise.js +10 -10
- package/src/ruleNames.js +2 -0
- package/src/supposition.js +3 -3
- package/src/type.js +27 -39
- package/src/utilities/collection.js +31 -11
- package/src/utilities/node.js +3 -81
- package/src/utilities/tokens.js +0 -8
- package/src/variable.js +9 -6
- package/src/verifier/node/statementAsCombinator.js +7 -1
- package/src/verifier/node/termAsConstructor.js +5 -26
- package/src/verifier/nodes/equality.js +47 -0
- package/src/verifier/nodes/metastatementForMetavariable.js +10 -10
- package/src/verifier/nodes/statement.js +1 -1
- package/src/verifier/nodes/statementForMetavariable.js +10 -10
- package/src/verifier/nodes/termForVariable.js +30 -30
- package/src/verify/axiom.js +2 -8
- package/src/verify/conclusion.js +1 -1
- package/src/verify/conjecture.js +3 -9
- package/src/verify/consequent.js +4 -4
- package/src/verify/derivation.js +39 -16
- package/src/verify/equality.js +20 -11
- package/src/verify/{standaloneType.js → givenType.js} +7 -7
- package/src/verify/lemma.js +3 -9
- package/src/verify/metastatement.js +2 -2
- package/src/verify/premises.js +17 -0
- package/src/verify/rule.js +2 -8
- package/src/verify/ruleDerivation.js +5 -7
- package/src/verify/statement/qualified.js +194 -39
- package/src/verify/statement.js +47 -47
- package/src/verify/supposition.js +10 -12
- package/src/verify/suppositions.js +17 -0
- package/src/verify/term.js +26 -64
- package/src/verify/termAndGivenType.js +37 -0
- package/src/verify/termAsGivenVariable.js +39 -0
- package/src/verify/theorem.js +2 -8
- package/src/verify/typeAssertion.js +59 -32
- package/lib/mixins/file.js +0 -83
- package/lib/mixins/logging.js +0 -39
- package/lib/verifier/nodes/metastatementForMetavariable/conclusion.js +0 -114
- package/lib/verifier/nodes/metastatementForMetavariable/premise.js +0 -114
- package/lib/verifier/nodes/statementForMetavariable/conclusion.js +0 -114
- package/lib/verifier/nodes/statementForMetavariable/premise.js +0 -114
- package/lib/verifier/nodes/termForVariable/consequent.js +0 -114
- package/lib/verifier/nodes/termForVariable/supposition.js +0 -114
- package/lib/verify/standaloneType.js +0 -32
- package/lib/verify/termAndStandaloneType.js +0 -39
- package/lib/verify/termAsVariableAndStandaloneType.js +0 -39
- package/src/mixins/logging.js +0 -24
- package/src/verifier/nodes/metastatementForMetavariable/conclusion.js +0 -11
- package/src/verifier/nodes/metastatementForMetavariable/premise.js +0 -11
- package/src/verifier/nodes/statementForMetavariable/conclusion.js +0 -11
- package/src/verifier/nodes/statementForMetavariable/premise.js +0 -11
- package/src/verifier/nodes/termForVariable/consequent.js +0 -11
- package/src/verifier/nodes/termForVariable/supposition.js +0 -11
- package/src/verify/termAndStandaloneType.js +0 -37
- package/src/verify/termAsVariableAndStandaloneType.js +0 -38
package/lib/utilities/node.js
CHANGED
|
@@ -18,30 +18,12 @@ _export(exports, {
|
|
|
18
18
|
labelNodeFromLabelTokens: function() {
|
|
19
19
|
return labelNodeFromLabelTokens;
|
|
20
20
|
},
|
|
21
|
-
metaTypeDeclarationNodeFromMetavariableDeclarationTokens: function() {
|
|
22
|
-
return metaTypeDeclarationNodeFromMetavariableDeclarationTokens;
|
|
23
|
-
},
|
|
24
|
-
metaTypeNodeFromMetavariableDeclarationTokens: function() {
|
|
25
|
-
return metaTypeNodeFromMetavariableDeclarationTokens;
|
|
26
|
-
},
|
|
27
|
-
metaTypeNodeFromMetavariableString: function() {
|
|
28
|
-
return metaTypeNodeFromMetavariableString;
|
|
29
|
-
},
|
|
30
21
|
metastatementNodeFromMetastatementString: function() {
|
|
31
22
|
return metastatementNodeFromMetastatementString;
|
|
32
23
|
},
|
|
33
24
|
metastatementNodeFromUnqualifiedMetastatementTokens: function() {
|
|
34
25
|
return metastatementNodeFromUnqualifiedMetastatementTokens;
|
|
35
26
|
},
|
|
36
|
-
metavariableDeclarationNodeFromMetavariableDeclarationTokens: function() {
|
|
37
|
-
return metavariableDeclarationNodeFromMetavariableDeclarationTokens;
|
|
38
|
-
},
|
|
39
|
-
metavariableNodeFromMetavariableDeclarationTokens: function() {
|
|
40
|
-
return metavariableNodeFromMetavariableDeclarationTokens;
|
|
41
|
-
},
|
|
42
|
-
metavariableNodeFromMetavariableString: function() {
|
|
43
|
-
return metavariableNodeFromMetavariableString;
|
|
44
|
-
},
|
|
45
27
|
statementNodeFromStatementString: function() {
|
|
46
28
|
return statementNodeFromStatementString;
|
|
47
29
|
},
|
|
@@ -51,18 +33,6 @@ _export(exports, {
|
|
|
51
33
|
termNodeFromConstructorDeclarationTokens: function() {
|
|
52
34
|
return termNodeFromConstructorDeclarationTokens;
|
|
53
35
|
},
|
|
54
|
-
termNodeFromTermString: function() {
|
|
55
|
-
return termNodeFromTermString;
|
|
56
|
-
},
|
|
57
|
-
typeDeclarationNodeFromVariableDeclarationTokens: function() {
|
|
58
|
-
return typeDeclarationNodeFromVariableDeclarationTokens;
|
|
59
|
-
},
|
|
60
|
-
typeNodeFromVariableString: function() {
|
|
61
|
-
return typeNodeFromVariableString;
|
|
62
|
-
},
|
|
63
|
-
typeNodeFromVariableVariableDeclarationTokens: function() {
|
|
64
|
-
return typeNodeFromVariableVariableDeclarationTokens;
|
|
65
|
-
},
|
|
66
36
|
unqualifiedMetastatementNodeFromUnqualifiedMetastatementTokens: function() {
|
|
67
37
|
return unqualifiedMetastatementNodeFromUnqualifiedMetastatementTokens;
|
|
68
38
|
},
|
|
@@ -86,19 +56,11 @@ var _ruleNames = require("../ruleNames");
|
|
|
86
56
|
var _tokens = require("../utilities/tokens");
|
|
87
57
|
var florenceParserFromCombinedCustomGrammar = _occamcustomgrammars.parsersUtilities.florenceParserFromCombinedCustomGrammar;
|
|
88
58
|
var combinedCustomGrammar = (0, _customGrammar.combinedCustomGrammarFromNothing)(), florenceParser = florenceParserFromCombinedCustomGrammar(combinedCustomGrammar);
|
|
89
|
-
var termNodeQuery = (0, _query.nodeQuery)("/constructorDeclaration/term!"),
|
|
90
|
-
function termNodeFromTermString(termString, lexer, parser) {
|
|
91
|
-
var constructorDeclarationTokens = (0, _tokens.constructorDeclarationTokensFromTermString)(termString, parser), termNode = termNodeFromConstructorDeclarationTokens(constructorDeclarationTokens, parser);
|
|
92
|
-
return termNode;
|
|
93
|
-
}
|
|
59
|
+
var termNodeQuery = (0, _query.nodeQuery)("/constructorDeclaration/term!"), variableNodeQuery = (0, _query.nodeQuery)("/variableDeclaration/variable!"), statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!"), metastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement/metastatement!");
|
|
94
60
|
function labelNodeFromLabelString(labelString, lexer, parser) {
|
|
95
61
|
var labelTokens = (0, _tokens.labelTokensFromLabelString)(labelString, lexer), labelNode = labelNodeFromLabelTokens(labelTokens, parser);
|
|
96
62
|
return labelNode;
|
|
97
63
|
}
|
|
98
|
-
function typeNodeFromVariableString(variableString, lexer, parser) {
|
|
99
|
-
var variableDeclarationTokens = (0, _tokens.variableDeclarationTokensFromVariableString)(variableString, lexer), typeNode = typeNodeFromVariableVariableDeclarationTokens(variableDeclarationTokens, parser);
|
|
100
|
-
return typeNode;
|
|
101
|
-
}
|
|
102
64
|
function variableNodeFromVariableString(variableString, lexer, parser) {
|
|
103
65
|
var variableTDeclarationTokens = (0, _tokens.variableDeclarationTokensFromVariableString)(variableString, lexer), variableNode = variableNodeFromVariableVariableTDeclarationTokens(variableTDeclarationTokens, parser);
|
|
104
66
|
return variableNode;
|
|
@@ -107,14 +69,6 @@ function statementNodeFromStatementString(statementString, lexer, parser) {
|
|
|
107
69
|
var unqualifiedStatementTokens = (0, _tokens.unqualifiedStatementTokensFromStatementString)(statementString, lexer), statementNode = statementNodeFromUnqualifiedStatementTokens(unqualifiedStatementTokens, parser);
|
|
108
70
|
return statementNode;
|
|
109
71
|
}
|
|
110
|
-
function metaTypeNodeFromMetavariableString(metavariableString, lexer, parser) {
|
|
111
|
-
var metavariableDeclarationTokens = (0, _tokens.metavariableDeclarationTokensFromMetavariableString)(metavariableString, lexer), metaTypeNode = metaTypeNodeFromMetavariableDeclarationTokens(metavariableDeclarationTokens, parser);
|
|
112
|
-
return metaTypeNode;
|
|
113
|
-
}
|
|
114
|
-
function metavariableNodeFromMetavariableString(metavariableString, lexer, parser) {
|
|
115
|
-
var metavariableDeclarationTokens = (0, _tokens.metavariableDeclarationTokensFromMetavariableString)(metavariableString, lexer), metavariableNode = metavariableNodeFromMetavariableDeclarationTokens(metavariableDeclarationTokens, parser);
|
|
116
|
-
return metavariableNode;
|
|
117
|
-
}
|
|
118
72
|
function metastatementNodeFromMetastatementString(metastatementString, lexer, parser) {
|
|
119
73
|
var unqualifiedMetastatementTokens = (0, _tokens.unqualifiedMetastatementTokensFromMetastatementString)(metastatementString, lexer), metastatementNode = metastatementNodeFromUnqualifiedMetastatementTokens(unqualifiedMetastatementTokens, parser);
|
|
120
74
|
return metastatementNode;
|
|
@@ -127,18 +81,6 @@ function statementNodeFromUnqualifiedStatementTokens(unqualifiedStatementTokens,
|
|
|
127
81
|
var unqualifiedStatementNode = unqualifiedStatementNodeFromUnqualifiedStatementTokens(unqualifiedStatementTokens, parser), statementNode = statementNodeQuery(unqualifiedStatementNode);
|
|
128
82
|
return statementNode;
|
|
129
83
|
}
|
|
130
|
-
function typeNodeFromVariableVariableDeclarationTokens(variableDeclarationTokens, parser) {
|
|
131
|
-
var typeDeclarationNode = typeDeclarationNodeFromVariableDeclarationTokens(variableDeclarationTokens, parser), typeNode = typeNodeQuery(typeDeclarationNode);
|
|
132
|
-
return typeNode;
|
|
133
|
-
}
|
|
134
|
-
function metaTypeNodeFromMetavariableDeclarationTokens(metavariableDeclarationTokens, parser) {
|
|
135
|
-
var metaTypeDeclarationNode = metaTypeDeclarationNodeFromMetavariableDeclarationTokens(metavariableDeclarationTokens, parser), metaTypeNode = metaTypeNodeQuery(metaTypeDeclarationNode);
|
|
136
|
-
return metaTypeNode;
|
|
137
|
-
}
|
|
138
|
-
function metavariableNodeFromMetavariableDeclarationTokens(metavariableDeclarationTokens, parser) {
|
|
139
|
-
var metavariableDeclarationNode = metavariableDeclarationNodeFromMetavariableDeclarationTokens(metavariableDeclarationTokens, parser), metavariableNode = metavariableNodeQuery(metavariableDeclarationNode);
|
|
140
|
-
return metavariableNode;
|
|
141
|
-
}
|
|
142
84
|
function variableNodeFromVariableVariableTDeclarationTokens(variableTDeclarationTokens, parser) {
|
|
143
85
|
var variableDeclarationNode = variableDeclarationNodeFromVariableTDeclarationTokens(variableTDeclarationTokens, parser), variableNode = variableNodeQuery(variableDeclarationNode);
|
|
144
86
|
return variableNode;
|
|
@@ -151,30 +93,18 @@ function labelNodeFromLabelTokens(labelTokens, parser) {
|
|
|
151
93
|
var ruleName = _ruleNames.LABEL_RULE_NAME, labelNode = nodeFromTokensRuleNameAndParser(labelTokens, ruleName, parser);
|
|
152
94
|
return labelNode;
|
|
153
95
|
}
|
|
154
|
-
function typeDeclarationNodeFromVariableDeclarationTokens(variableDeclarationTokens, parser) {
|
|
155
|
-
var ruleName = _ruleNames.TYPE_RULE_NAME, typeDeclarationNode = nodeFromTokensRuleNameAndParser(variableDeclarationTokens, ruleName, parser);
|
|
156
|
-
return typeDeclarationNode;
|
|
157
|
-
}
|
|
158
96
|
function variableDeclarationNodeFromVariableTDeclarationTokens(variableTDeclarationTokens, parser) {
|
|
159
|
-
var ruleName = _ruleNames.
|
|
97
|
+
var ruleName = _ruleNames.VARIABLE_DECLARATION_RULE_NAME, variableDeclarationNode = nodeFromTokensRuleNameAndParser(variableTDeclarationTokens, ruleName, parser);
|
|
160
98
|
return variableDeclarationNode;
|
|
161
99
|
}
|
|
162
100
|
function unqualifiedStatementNodeFromUnqualifiedStatementTokens(unqualifiedStatementTokens, parser) {
|
|
163
101
|
var ruleName = _ruleNames.UNQUALIFIED_STATEMENT_RULE_NAME, unqualifiedStatementNode = nodeFromTokensRuleNameAndParser(unqualifiedStatementTokens, ruleName, parser);
|
|
164
102
|
return unqualifiedStatementNode;
|
|
165
103
|
}
|
|
166
|
-
function metaTypeDeclarationNodeFromMetavariableDeclarationTokens(metavariableDeclarationTokens, parser) {
|
|
167
|
-
var ruleName = _ruleNames.META_TYPE_RULE_NAME, metaTypeDeclarationNode = nodeFromTokensRuleNameAndParser(metavariableDeclarationTokens, ruleName, parser);
|
|
168
|
-
return metaTypeDeclarationNode;
|
|
169
|
-
}
|
|
170
104
|
function constructorDeclarationNodeFromConstructorDeclarationTokens(constructorDeclarationTokens, parser) {
|
|
171
105
|
var ruleName = _ruleNames.CONSTRUCTOR_DECLARATION_RULE_NAME, constructorDeclarationNode = nodeFromTokensRuleNameAndParser(constructorDeclarationTokens, ruleName, parser);
|
|
172
106
|
return constructorDeclarationNode;
|
|
173
107
|
}
|
|
174
|
-
function metavariableDeclarationNodeFromMetavariableDeclarationTokens(metavariableDeclarationTokens, parser) {
|
|
175
|
-
var ruleName = _ruleNames.METAVARIABLE_RULE_NAME, metavariableDeclarationNode = nodeFromTokensRuleNameAndParser(metavariableDeclarationTokens, ruleName, parser);
|
|
176
|
-
return metavariableDeclarationNode;
|
|
177
|
-
}
|
|
178
108
|
function unqualifiedMetastatementNodeFromUnqualifiedMetastatementTokens(unqualifiedMetastatementTokens, parser) {
|
|
179
109
|
var ruleName = _ruleNames.UNQUALIFIED_METASTATEMENT_RULE_NAME, unqualifiedMetastatementNode = nodeFromTokensRuleNameAndParser(unqualifiedMetastatementTokens, ruleName, parser);
|
|
180
110
|
return unqualifiedMetastatementNode;
|
|
@@ -185,4 +115,4 @@ function nodeFromTokensRuleNameAndParser(tokens, ruleName) {
|
|
|
185
115
|
return node;
|
|
186
116
|
}
|
|
187
117
|
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcGFyc2Vyc1V0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1jdXN0b20tZ3JhbW1hcnNcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmcgfSBmcm9tIFwiLi9jdXN0b21HcmFtbWFyXCI7XG5pbXBvcnQgeyBUWVBFX1JVTEVfTkFNRSxcbiAgICAgICAgIExBQkVMX1JVTEVfTkFNRSxcbiAgICAgICAgIFZBUklBQkxFX1JVTEVfTkFNRSxcbiAgICAgICAgIE1FVEFfVFlQRV9SVUxFX05BTUUsXG4gICAgICAgICBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FLFxuICAgICAgICAgVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgIENPTlNUUlVDVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgIFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuaW1wb3J0IHsgbGFiZWxUb2tlbnNGcm9tTGFiZWxTdHJpbmcsXG4gICAgICAgICBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zRnJvbVRlcm1TdHJpbmcsXG4gICAgICAgICB2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zRnJvbVZhcmlhYmxlU3RyaW5nLFxuICAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnNGcm9tU3RhdGVtZW50U3RyaW5nLFxuICAgICAgICAgbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnNGcm9tTWV0YXZhcmlhYmxlU3RyaW5nLFxuICAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zRnJvbU1ldGFzdGF0ZW1lbnRTdHJpbmcgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3Rva2Vuc1wiO1xuXG5jb25zdCB7IGZsb3JlbmNlUGFyc2VyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciB9ID0gcGFyc2Vyc1V0aWxpdGllcztcblxuY29uc3QgY29tYmluZWRDdXN0b21HcmFtbWFyID0gY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmcoKSxcbiAgICAgIGZsb3JlbmNlUGFyc2VyID0gZmxvcmVuY2VQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyKGNvbWJpbmVkQ3VzdG9tR3JhbW1hcik7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29uc3RydWN0b3JEZWNsYXJhdGlvbi90ZXJtIVwiKSxcbiAgICAgIHR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdmFyaWFibGVEZWNsYXJhdGlvbi90eXBlIVwiKSxcbiAgICAgIHZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3ZhcmlhYmxlRGVjbGFyYXRpb24vdmFyaWFibGUhXCIpLFxuICAgICAgbWV0YVR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXZhcmlhYmxlRGVjbGFyYXRpb24vbWV0YVR5cGUhXCIpLFxuICAgICAgc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3VucXVhbGlmaWVkU3RhdGVtZW50L3N0YXRlbWVudCFcIiksXG4gICAgICBtZXRhdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXZhcmlhYmxlRGVjbGFyYXRpb24vbWV0YXZhcmlhYmxlIVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50L21ldGFzdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZnVuY3Rpb24gdGVybU5vZGVGcm9tVGVybVN0cmluZyh0ZXJtU3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMgPSBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zRnJvbVRlcm1TdHJpbmcodGVybVN0cmluZywgcGFyc2VyKSxcbiAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZUZyb21Db25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zKGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMsIHBhcnNlcik7XG5cbiAgcmV0dXJuIHRlcm1Ob2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbGFiZWxOb2RlRnJvbUxhYmVsU3RyaW5nKGxhYmVsU3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IGxhYmVsVG9rZW5zID0gbGFiZWxUb2tlbnNGcm9tTGFiZWxTdHJpbmcobGFiZWxTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgbGFiZWxOb2RlID0gbGFiZWxOb2RlRnJvbUxhYmVsVG9rZW5zKGxhYmVsVG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiBsYWJlbE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0eXBlTm9kZUZyb21WYXJpYWJsZVN0cmluZyh2YXJpYWJsZVN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCB2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zID0gdmFyaWFibGVEZWNsYXJhdGlvblRva2Vuc0Zyb21WYXJpYWJsZVN0cmluZyh2YXJpYWJsZVN0cmluZywgbGV4ZXIpLFxuICAgICAgICB0eXBlTm9kZSA9IHR5cGVOb2RlRnJvbVZhcmlhYmxlVmFyaWFibGVEZWNsYXJhdGlvblRva2Vucyh2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiB0eXBlTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhcmlhYmxlTm9kZUZyb21WYXJpYWJsZVN0cmluZyh2YXJpYWJsZVN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCB2YXJpYWJsZVREZWNsYXJhdGlvblRva2VucyA9IHZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnNGcm9tVmFyaWFibGVTdHJpbmcodmFyaWFibGVTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlRnJvbVZhcmlhYmxlVmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnModmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnMsIHBhcnNlcik7XG5cbiAgcmV0dXJuIHZhcmlhYmxlTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0YXRlbWVudE5vZGVGcm9tU3RhdGVtZW50U3RyaW5nKHN0YXRlbWVudFN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCB1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucyA9IHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zRnJvbVN0YXRlbWVudFN0cmluZyhzdGF0ZW1lbnRTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMsIHBhcnNlcik7XG5cbiAgcmV0dXJuIHN0YXRlbWVudE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhVHlwZU5vZGVGcm9tTWV0YXZhcmlhYmxlU3RyaW5nKG1ldGF2YXJpYWJsZVN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCBtZXRhdmFyaWFibGVEZWNsYXJhdGlvblRva2VucyA9IG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zRnJvbU1ldGF2YXJpYWJsZVN0cmluZyhtZXRhdmFyaWFibGVTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgbWV0YVR5cGVOb2RlID0gbWV0YVR5cGVOb2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiBtZXRhVHlwZU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhdmFyaWFibGVOb2RlRnJvbU1ldGF2YXJpYWJsZVN0cmluZyhtZXRhdmFyaWFibGVTdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnMgPSBtZXRhdmFyaWFibGVEZWNsYXJhdGlvblRva2Vuc0Zyb21NZXRhdmFyaWFibGVTdHJpbmcobWV0YXZhcmlhYmxlU3RyaW5nLCBsZXhlciksXG4gICAgICAgIG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiBtZXRhdmFyaWFibGVOb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YXN0YXRlbWVudE5vZGVGcm9tTWV0YXN0YXRlbWVudFN0cmluZyhtZXRhc3RhdGVtZW50U3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2VucyA9IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2Vuc0Zyb21NZXRhc3RhdGVtZW50U3RyaW5nKG1ldGFzdGF0ZW1lbnRTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50Tm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm1Ob2RlRnJvbUNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMoY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlID0gY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGVGcm9tQ29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vucyhjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpLFxuICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUpO1xuXG4gIHJldHVybiB0ZXJtTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMsIHBhcnNlcikge1xuICBjb25zdCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMsIHBhcnNlciksXG4gICAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICByZXR1cm4gc3RhdGVtZW50Tm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR5cGVOb2RlRnJvbVZhcmlhYmxlVmFyaWFibGVEZWNsYXJhdGlvblRva2Vucyh2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgdHlwZURlY2xhcmF0aW9uTm9kZSA9IHR5cGVEZWNsYXJhdGlvbk5vZGVGcm9tVmFyaWFibGVEZWNsYXJhdGlvblRva2Vucyh2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpLFxuICAgICAgICB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkodHlwZURlY2xhcmF0aW9uTm9kZSk7XG5cbiAgcmV0dXJuIHR5cGVOb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YVR5cGVOb2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgbWV0YVR5cGVEZWNsYXJhdGlvbk5vZGUgPSBtZXRhVHlwZURlY2xhcmF0aW9uTm9kZUZyb21NZXRhdmFyaWFibGVEZWNsYXJhdGlvblRva2VucyhtZXRhdmFyaWFibGVEZWNsYXJhdGlvblRva2VucywgcGFyc2VyKSxcbiAgICAgICAgbWV0YVR5cGVOb2RlID0gbWV0YVR5cGVOb2RlUXVlcnkobWV0YVR5cGVEZWNsYXJhdGlvbk5vZGUpO1xuXG4gIHJldHVybiBtZXRhVHlwZU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhdmFyaWFibGVOb2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlID0gbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpLFxuICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSk7XG5cbiAgcmV0dXJuIG1ldGF2YXJpYWJsZU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YXJpYWJsZU5vZGVGcm9tVmFyaWFibGVWYXJpYWJsZVREZWNsYXJhdGlvblRva2Vucyh2YXJpYWJsZVREZWNsYXJhdGlvblRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlID0gdmFyaWFibGVEZWNsYXJhdGlvbk5vZGVGcm9tVmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnModmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnMsIHBhcnNlciksXG4gICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlKTtcblxuICByZXR1cm4gdmFyaWFibGVOb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YXN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2Vucyh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnMsIHBhcnNlciksXG4gICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsYWJlbE5vZGVGcm9tTGFiZWxUb2tlbnMobGFiZWxUb2tlbnMsIHBhcnNlcikge1xuICBjb25zdCBydWxlTmFtZSA9IExBQkVMX1JVTEVfTkFNRSxcbiAgICAgICAgbGFiZWxOb2RlID0gbm9kZUZyb21Ub2tlbnNSdWxlTmFtZUFuZFBhcnNlcihsYWJlbFRva2VucywgcnVsZU5hbWUsIHBhcnNlcik7XG5cbiAgcmV0dXJuIGxhYmVsTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR5cGVEZWNsYXJhdGlvbk5vZGVGcm9tVmFyaWFibGVEZWNsYXJhdGlvblRva2Vucyh2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgcnVsZU5hbWUgPSBUWVBFX1JVTEVfTkFNRSxcbiAgICAgICAgdHlwZURlY2xhcmF0aW9uTm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodmFyaWFibGVEZWNsYXJhdGlvblRva2VucywgcnVsZU5hbWUsIHBhcnNlcik7XG5cbiAgcmV0dXJuIHR5cGVEZWNsYXJhdGlvbk5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YXJpYWJsZURlY2xhcmF0aW9uTm9kZUZyb21WYXJpYWJsZVREZWNsYXJhdGlvblRva2Vucyh2YXJpYWJsZVREZWNsYXJhdGlvblRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gVkFSSUFCTEVfUlVMRV9OQU1FLFxuICAgICAgICB2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnMsIHJ1bGVOYW1lLCBwYXJzZXIpO1xuXG4gIHJldHVybiB2YXJpYWJsZURlY2xhcmF0aW9uTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZFN0YXRlbWVudFRva2Vucyh1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gbm9kZUZyb21Ub2tlbnNSdWxlTmFtZUFuZFBhcnNlcih1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucywgcnVsZU5hbWUsIHBhcnNlcik7XG5cbiAgcmV0dXJuIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ldGFUeXBlRGVjbGFyYXRpb25Ob2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgcnVsZU5hbWUgPSBNRVRBX1RZUEVfUlVMRV9OQU1FLFxuICAgICAgICBtZXRhVHlwZURlY2xhcmF0aW9uTm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIobWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnMsIHJ1bGVOYW1lLCBwYXJzZXIpO1xuXG4gIHJldHVybiBtZXRhVHlwZURlY2xhcmF0aW9uTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlRnJvbUNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMoY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FLFxuICAgICAgICBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIoY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucywgcnVsZU5hbWUsIHBhcnNlcik7XG5cbiAgcmV0dXJuIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgcnVsZU5hbWUgPSBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FLFxuICAgICAgICBtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUgPSBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyKTtcblxuICByZXR1cm4gbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgcnVsZU5hbWUgPSBVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyKTtcblxuICByZXR1cm4gdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZTtcbn1cblxuZnVuY3Rpb24gbm9kZUZyb21Ub2tlbnNSdWxlTmFtZUFuZFBhcnNlcih0b2tlbnMsIHJ1bGVOYW1lLCBwYXJzZXIgPSBmbG9yZW5jZVBhcnNlcikge1xuICBjb25zdCBydWxlTWFwID0gcGFyc2VyLmdldFJ1bGVNYXAoKSxcbiAgICAgICAgcnVsZSA9IHJ1bGVNYXBbcnVsZU5hbWVdLFxuICAgICAgICBub2RlID0gcGFyc2VyLnBhcnNlKHRva2VucywgcnVsZSk7XG5cbiAgcmV0dXJuIG5vZGU7XG59XG4iXSwibmFtZXMiOlsiY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGVGcm9tQ29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucyIsImxhYmVsTm9kZUZyb21MYWJlbFN0cmluZyIsImxhYmVsTm9kZUZyb21MYWJlbFRva2VucyIsIm1ldGFUeXBlRGVjbGFyYXRpb25Ob2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zIiwibWV0YVR5cGVOb2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zIiwibWV0YVR5cGVOb2RlRnJvbU1ldGF2YXJpYWJsZVN0cmluZyIsIm1ldGFzdGF0ZW1lbnROb2RlRnJvbU1ldGFzdGF0ZW1lbnRTdHJpbmciLCJtZXRhc3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnMiLCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGVGcm9tTWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnMiLCJtZXRhdmFyaWFibGVOb2RlRnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zIiwibWV0YXZhcmlhYmxlTm9kZUZyb21NZXRhdmFyaWFibGVTdHJpbmciLCJzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudFN0cmluZyIsInN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMiLCJ0ZXJtTm9kZUZyb21Db25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zIiwidGVybU5vZGVGcm9tVGVybVN0cmluZyIsInR5cGVEZWNsYXJhdGlvbk5vZGVGcm9tVmFyaWFibGVEZWNsYXJhdGlvblRva2VucyIsInR5cGVOb2RlRnJvbVZhcmlhYmxlU3RyaW5nIiwidHlwZU5vZGVGcm9tVmFyaWFibGVWYXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnMiLCJ1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMiLCJ2YXJpYWJsZURlY2xhcmF0aW9uTm9kZUZyb21WYXJpYWJsZVREZWNsYXJhdGlvblRva2VucyIsInZhcmlhYmxlTm9kZUZyb21WYXJpYWJsZVN0cmluZyIsInZhcmlhYmxlTm9kZUZyb21WYXJpYWJsZVZhcmlhYmxlVERlY2xhcmF0aW9uVG9rZW5zIiwiZmxvcmVuY2VQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwicGFyc2Vyc1V0aWxpdGllcyIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nIiwiZmxvcmVuY2VQYXJzZXIiLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidHlwZU5vZGVRdWVyeSIsInZhcmlhYmxlTm9kZVF1ZXJ5IiwibWV0YVR5cGVOb2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJtZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwidGVybVN0cmluZyIsImxleGVyIiwicGFyc2VyIiwiY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucyIsImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnNGcm9tVGVybVN0cmluZyIsInRlcm1Ob2RlIiwibGFiZWxTdHJpbmciLCJsYWJlbFRva2VucyIsImxhYmVsVG9rZW5zRnJvbUxhYmVsU3RyaW5nIiwibGFiZWxOb2RlIiwidmFyaWFibGVTdHJpbmciLCJ2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zIiwidmFyaWFibGVEZWNsYXJhdGlvblRva2Vuc0Zyb21WYXJpYWJsZVN0cmluZyIsInR5cGVOb2RlIiwidmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnMiLCJ2YXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnRTdHJpbmciLCJ1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucyIsInVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zRnJvbVN0YXRlbWVudFN0cmluZyIsInN0YXRlbWVudE5vZGUiLCJtZXRhdmFyaWFibGVTdHJpbmciLCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvblRva2VucyIsIm1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zRnJvbU1ldGF2YXJpYWJsZVN0cmluZyIsIm1ldGFUeXBlTm9kZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhc3RhdGVtZW50U3RyaW5nIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zRnJvbU1ldGFzdGF0ZW1lbnRTdHJpbmciLCJtZXRhc3RhdGVtZW50Tm9kZSIsImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwidHlwZURlY2xhcmF0aW9uTm9kZSIsIm1ldGFUeXBlRGVjbGFyYXRpb25Ob2RlIiwibWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlIiwidmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwicnVsZU5hbWUiLCJMQUJFTF9SVUxFX05BTUUiLCJub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyIiwiVFlQRV9SVUxFX05BTUUiLCJWQVJJQUJMRV9SVUxFX05BTUUiLCJVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FIiwiTUVUQV9UWVBFX1JVTEVfTkFNRSIsIkNPTlNUUlVDVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSIsIk1FVEFWQVJJQUJMRV9SVUxFX05BTUUiLCJVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsInRva2VucyIsInJ1bGVNYXAiLCJnZXRSdWxlTWFwIiwicnVsZSIsIm5vZGUiLCJwYXJzZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBOEtnQkEsMERBQTBEO2VBQTFEQTs7SUFySUFDLHdCQUF3QjtlQUF4QkE7O0lBa0dBQyx3QkFBd0I7ZUFBeEJBOztJQTRCQUMsd0RBQXdEO2VBQXhEQTs7SUF4REFDLDZDQUE2QztlQUE3Q0E7O0lBMUNBQyxrQ0FBa0M7ZUFBbENBOztJQWNBQyx3Q0FBd0M7ZUFBeENBOztJQWlEQUMsbURBQW1EO2VBQW5EQTs7SUFpREFDLDREQUE0RDtlQUE1REE7O0lBL0RBQyxpREFBaUQ7ZUFBakRBOztJQTFDQUMsc0NBQXNDO2VBQXRDQTs7SUFkQUMsZ0NBQWdDO2VBQWhDQTs7SUFtQ0FDLDJDQUEyQztlQUEzQ0E7O0lBUEFDLHdDQUF3QztlQUF4Q0E7O0lBeERBQyxzQkFBc0I7ZUFBdEJBOztJQWdIQUMsZ0RBQWdEO2VBQWhEQTs7SUFsR0FDLDBCQUEwQjtlQUExQkE7O0lBd0RBQyw2Q0FBNkM7ZUFBN0NBOztJQW9GQUMsOERBQThEO2VBQTlEQTs7SUE1QkFDLHNEQUFzRDtlQUF0REE7O0lBUEFDLHFEQUFxRDtlQUFyREE7O0lBbEdBQyw4QkFBOEI7ZUFBOUJBOztJQXNFQUMsa0RBQWtEO2VBQWxEQTs7O21DQTNIaUI7cUJBRVA7NkJBQ3VCO3lCQVFHO3NCQU1rQjtBQUV0RSxJQUFNLEFBQUVDLDBDQUE0Q0MscUNBQWdCLENBQTVERDtBQUVSLElBQU1FLHdCQUF3QkMsSUFBQUEsK0NBQWdDLEtBQ3hEQyxpQkFBaUJKLHdDQUF3Q0U7QUFFL0QsSUFBTUcsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLGtDQUMxQkMsZ0JBQWdCRCxJQUFBQSxnQkFBUyxFQUFDLCtCQUMxQkUsb0JBQW9CRixJQUFBQSxnQkFBUyxFQUFDLG1DQUM5Qkcsb0JBQW9CSCxJQUFBQSxnQkFBUyxFQUFDLHVDQUM5QkkscUJBQXFCSixJQUFBQSxnQkFBUyxFQUFDLHFDQUMvQkssd0JBQXdCTCxJQUFBQSxnQkFBUyxFQUFDLDJDQUNsQ00seUJBQXlCTixJQUFBQSxnQkFBUyxFQUFDO0FBRWxDLFNBQVNmLHVCQUF1QnNCLFVBQVUsRUFBRUMsS0FBSyxFQUFFQyxNQUFNO0lBQzlELElBQU1DLCtCQUErQkMsSUFBQUEsa0RBQTBDLEVBQUNKLFlBQVlFLFNBQ3RGRyxXQUFXNUIseUNBQXlDMEIsOEJBQThCRDtJQUV4RixPQUFPRztBQUNUO0FBRU8sU0FBU3hDLHlCQUF5QnlDLFdBQVcsRUFBRUwsS0FBSyxFQUFFQyxNQUFNO0lBQ2pFLElBQU1LLGNBQWNDLElBQUFBLGtDQUEwQixFQUFDRixhQUFhTCxRQUN0RFEsWUFBWTNDLHlCQUF5QnlDLGFBQWFMO0lBRXhELE9BQU9PO0FBQ1Q7QUFFTyxTQUFTN0IsMkJBQTJCOEIsY0FBYyxFQUFFVCxLQUFLLEVBQUVDLE1BQU07SUFDdEUsSUFBTVMsNEJBQTRCQyxJQUFBQSxtREFBMkMsRUFBQ0YsZ0JBQWdCVCxRQUN4RlksV0FBV2hDLDhDQUE4QzhCLDJCQUEyQlQ7SUFFMUYsT0FBT1c7QUFDVDtBQUVPLFNBQVM1QiwrQkFBK0J5QixjQUFjLEVBQUVULEtBQUssRUFBRUMsTUFBTTtJQUMxRSxJQUFNWSw2QkFBNkJGLElBQUFBLG1EQUEyQyxFQUFDRixnQkFBZ0JULFFBQ3pGYyxlQUFlN0IsbURBQW1ENEIsNEJBQTRCWjtJQUVwRyxPQUFPYTtBQUNUO0FBRU8sU0FBU3hDLGlDQUFpQ3lDLGVBQWUsRUFBRWYsS0FBSyxFQUFFQyxNQUFNO0lBQzdFLElBQU1lLDZCQUE2QkMsSUFBQUEscURBQTZDLEVBQUNGLGlCQUFpQmYsUUFDNUZrQixnQkFBZ0IzQyw0Q0FBNEN5Qyw0QkFBNEJmO0lBRTlGLE9BQU9pQjtBQUNUO0FBRU8sU0FBU2xELG1DQUFtQ21ELGtCQUFrQixFQUFFbkIsS0FBSyxFQUFFQyxNQUFNO0lBQ2xGLElBQU1tQixnQ0FBZ0NDLElBQUFBLDJEQUFtRCxFQUFDRixvQkFBb0JuQixRQUN4R3NCLGVBQWV2RCw4Q0FBOENxRCwrQkFBK0JuQjtJQUVsRyxPQUFPcUI7QUFDVDtBQUVPLFNBQVNqRCx1Q0FBdUM4QyxrQkFBa0IsRUFBRW5CLEtBQUssRUFBRUMsTUFBTTtJQUN0RixJQUFNbUIsZ0NBQWdDQyxJQUFBQSwyREFBbUQsRUFBQ0Ysb0JBQW9CbkIsUUFDeEd1QixtQkFBbUJuRCxrREFBa0RnRCwrQkFBK0JuQjtJQUUxRyxPQUFPc0I7QUFDVDtBQUVPLFNBQVN0RCx5Q0FBeUN1RCxtQkFBbUIsRUFBRXhCLEtBQUssRUFBRUMsTUFBTTtJQUN6RixJQUFNd0IsaUNBQWlDQyxJQUFBQSw2REFBcUQsRUFBQ0YscUJBQXFCeEIsUUFDNUcyQixvQkFBb0J6RCxvREFBb0R1RCxnQ0FBZ0N4QjtJQUU5RyxPQUFPMEI7QUFDVDtBQUVPLFNBQVNuRCx5Q0FBeUMwQiw0QkFBNEIsRUFBRUQsTUFBTTtJQUMzRixJQUFNMkIsNkJBQTZCakUsMkRBQTJEdUMsOEJBQThCRCxTQUN0SEcsV0FBV2IsY0FBY3FDO0lBRS9CLE9BQU94QjtBQUNUO0FBRU8sU0FBUzdCLDRDQUE0Q3lDLDBCQUEwQixFQUFFZixNQUFNO0lBQzVGLElBQU00QiwyQkFBMkIvQyx1REFBdURrQyw0QkFBNEJmLFNBQzlHaUIsZ0JBQWdCdEIsbUJBQW1CaUM7SUFFekMsT0FBT1g7QUFDVDtBQUVPLFNBQVN0Qyw4Q0FBOEM4Qix5QkFBeUIsRUFBRVQsTUFBTTtJQUM3RixJQUFNNkIsc0JBQXNCcEQsaURBQWlEZ0MsMkJBQTJCVCxTQUNsR1csV0FBV25CLGNBQWNxQztJQUUvQixPQUFPbEI7QUFDVDtBQUVPLFNBQVM3Qyw4Q0FBOENxRCw2QkFBNkIsRUFBRW5CLE1BQU07SUFDakcsSUFBTThCLDBCQUEwQmpFLHlEQUF5RHNELCtCQUErQm5CLFNBQ2xIcUIsZUFBZTNCLGtCQUFrQm9DO0lBRXZDLE9BQU9UO0FBQ1Q7QUFFTyxTQUFTbEQsa0RBQWtEZ0QsNkJBQTZCLEVBQUVuQixNQUFNO0lBQ3JHLElBQU0rQiw4QkFBOEI3RCw2REFBNkRpRCwrQkFBK0JuQixTQUMxSHNCLG1CQUFtQjFCLHNCQUFzQm1DO0lBRS9DLE9BQU9UO0FBQ1Q7QUFFTyxTQUFTdEMsbURBQW1ENEIsMEJBQTBCLEVBQUVaLE1BQU07SUFDbkcsSUFBTWdDLDBCQUEwQmxELHNEQUFzRDhCLDRCQUE0QlosU0FDNUdhLGVBQWVwQixrQkFBa0J1QztJQUV2QyxPQUFPbkI7QUFDVDtBQUVPLFNBQVM1QyxvREFBb0R1RCw4QkFBOEIsRUFBRXhCLE1BQU07SUFDeEcsSUFBTWlDLCtCQUErQnJELCtEQUErRDRDLGdDQUFnQ3hCLFNBQzlIMEIsb0JBQW9CN0IsdUJBQXVCb0M7SUFFakQsT0FBT1A7QUFDVDtBQUVPLFNBQVM5RCx5QkFBeUJ5QyxXQUFXLEVBQUVMLE1BQU07SUFDMUQsSUFBTWtDLFdBQVdDLDBCQUFlLEVBQzFCNUIsWUFBWTZCLGdDQUFnQy9CLGFBQWE2QixVQUFVbEM7SUFFekUsT0FBT087QUFDVDtBQUVPLFNBQVM5QixpREFBaURnQyx5QkFBeUIsRUFBRVQsTUFBTTtJQUNoRyxJQUFNa0MsV0FBV0cseUJBQWMsRUFDekJSLHNCQUFzQk8sZ0NBQWdDM0IsMkJBQTJCeUIsVUFBVWxDO0lBRWpHLE9BQU82QjtBQUNUO0FBRU8sU0FBUy9DLHNEQUFzRDhCLDBCQUEwQixFQUFFWixNQUFNO0lBQ3RHLElBQU1rQyxXQUFXSSw2QkFBa0IsRUFDN0JOLDBCQUEwQkksZ0NBQWdDeEIsNEJBQTRCc0IsVUFBVWxDO0lBRXRHLE9BQU9nQztBQUNUO0FBRU8sU0FBU25ELHVEQUF1RGtDLDBCQUEwQixFQUFFZixNQUFNO0lBQ3ZHLElBQU1rQyxXQUFXSywwQ0FBK0IsRUFDMUNYLDJCQUEyQlEsZ0NBQWdDckIsNEJBQTRCbUIsVUFBVWxDO0lBRXZHLE9BQU80QjtBQUNUO0FBRU8sU0FBUy9ELHlEQUF5RHNELDZCQUE2QixFQUFFbkIsTUFBTTtJQUM1RyxJQUFNa0MsV0FBV00sOEJBQW1CLEVBQzlCViwwQkFBMEJNLGdDQUFnQ2pCLCtCQUErQmUsVUFBVWxDO0lBRXpHLE9BQU84QjtBQUNUO0FBRU8sU0FBU3BFLDJEQUEyRHVDLDRCQUE0QixFQUFFRCxNQUFNO0lBQzdHLElBQU1rQyxXQUFXTyw0Q0FBaUMsRUFDNUNkLDZCQUE2QlMsZ0NBQWdDbkMsOEJBQThCaUMsVUFBVWxDO0lBRTNHLE9BQU8yQjtBQUNUO0FBRU8sU0FBU3pELDZEQUE2RGlELDZCQUE2QixFQUFFbkIsTUFBTTtJQUNoSCxJQUFNa0MsV0FBV1EsaUNBQXNCLEVBQ2pDWCw4QkFBOEJLLGdDQUFnQ2pCLCtCQUErQmUsVUFBVWxDO0lBRTdHLE9BQU8rQjtBQUNUO0FBRU8sU0FBU25ELCtEQUErRDRDLDhCQUE4QixFQUFFeEIsTUFBTTtJQUNuSCxJQUFNa0MsV0FBV1MsOENBQW1DLEVBQzlDViwrQkFBK0JHLGdDQUFnQ1osZ0NBQWdDVSxVQUFVbEM7SUFFL0csT0FBT2lDO0FBQ1Q7QUFFQSxTQUFTRyxnQ0FBZ0NRLE1BQU0sRUFBRVYsUUFBUTtRQUFFbEMsU0FBQUEsaUVBQVNYO0lBQ2xFLElBQU13RCxVQUFVN0MsT0FBTzhDLFVBQVUsSUFDM0JDLE9BQU9GLE9BQU8sQ0FBQ1gsU0FBUyxFQUN4QmMsT0FBT2hELE9BQU9pRCxLQUFLLENBQUNMLFFBQVFHO0lBRWxDLE9BQU9DO0FBQ1QifQ==
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcGFyc2Vyc1V0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1jdXN0b20tZ3JhbW1hcnNcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmcgfSBmcm9tIFwiLi9jdXN0b21HcmFtbWFyXCI7XG5pbXBvcnQgeyBMQUJFTF9SVUxFX05BTUUsXG4gICAgICAgICBWQVJJQUJMRV9ERUNMQVJBVElPTl9SVUxFX05BTUUsXG4gICAgICAgICBVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FLFxuICAgICAgICAgQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FLFxuICAgICAgICAgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBsYWJlbFRva2Vuc0Zyb21MYWJlbFN0cmluZyxcbiAgICAgICAgIHZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnNGcm9tVmFyaWFibGVTdHJpbmcsXG4gICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFRva2Vuc0Zyb21TdGF0ZW1lbnRTdHJpbmcsXG4gICAgICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnNGcm9tTWV0YXN0YXRlbWVudFN0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvdG9rZW5zXCI7XG5cbmNvbnN0IHsgZmxvcmVuY2VQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIH0gPSBwYXJzZXJzVXRpbGl0aWVzO1xuXG5jb25zdCBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tTm90aGluZygpLFxuICAgICAgZmxvcmVuY2VQYXJzZXIgPSBmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKTtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb25zdHJ1Y3RvckRlY2xhcmF0aW9uL3Rlcm0hXCIpLFxuICAgICAgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdmFyaWFibGVEZWNsYXJhdGlvbi92YXJpYWJsZSFcIiksXG4gICAgICBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50L21ldGFzdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZnVuY3Rpb24gbGFiZWxOb2RlRnJvbUxhYmVsU3RyaW5nKGxhYmVsU3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IGxhYmVsVG9rZW5zID0gbGFiZWxUb2tlbnNGcm9tTGFiZWxTdHJpbmcobGFiZWxTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgbGFiZWxOb2RlID0gbGFiZWxOb2RlRnJvbUxhYmVsVG9rZW5zKGxhYmVsVG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiBsYWJlbE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YXJpYWJsZU5vZGVGcm9tVmFyaWFibGVTdHJpbmcodmFyaWFibGVTdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgdmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnMgPSB2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zRnJvbVZhcmlhYmxlU3RyaW5nKHZhcmlhYmxlU3RyaW5nLCBsZXhlciksXG4gICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZUZyb21WYXJpYWJsZVZhcmlhYmxlVERlY2xhcmF0aW9uVG9rZW5zKHZhcmlhYmxlVERlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiB2YXJpYWJsZU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudFN0cmluZyhzdGF0ZW1lbnRTdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgdW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMgPSB1bnF1YWxpZmllZFN0YXRlbWVudFRva2Vuc0Zyb21TdGF0ZW1lbnRTdHJpbmcoc3RhdGVtZW50U3RyaW5nLCBsZXhlciksXG4gICAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zKHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiBzdGF0ZW1lbnROb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YXN0YXRlbWVudE5vZGVGcm9tTWV0YXN0YXRlbWVudFN0cmluZyhtZXRhc3RhdGVtZW50U3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2VucyA9IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2Vuc0Zyb21NZXRhc3RhdGVtZW50U3RyaW5nKG1ldGFzdGF0ZW1lbnRTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50Tm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm1Ob2RlRnJvbUNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMoY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlID0gY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGVGcm9tQ29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vucyhjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpLFxuICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUpO1xuXG4gIHJldHVybiB0ZXJtTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMsIHBhcnNlcikge1xuICBjb25zdCB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMsIHBhcnNlciksXG4gICAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICByZXR1cm4gc3RhdGVtZW50Tm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhcmlhYmxlTm9kZUZyb21WYXJpYWJsZVZhcmlhYmxlVERlY2xhcmF0aW9uVG9rZW5zKHZhcmlhYmxlVERlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUgPSB2YXJpYWJsZURlY2xhcmF0aW9uTm9kZUZyb21WYXJpYWJsZVREZWNsYXJhdGlvblRva2Vucyh2YXJpYWJsZVREZWNsYXJhdGlvblRva2VucywgcGFyc2VyKSxcbiAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkodmFyaWFibGVEZWNsYXJhdGlvbk5vZGUpO1xuXG4gIHJldHVybiB2YXJpYWJsZU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhc3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2VucywgcGFyc2VyKSxcbiAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50Tm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxhYmVsTm9kZUZyb21MYWJlbFRva2VucyhsYWJlbFRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gTEFCRUxfUlVMRV9OQU1FLFxuICAgICAgICBsYWJlbE5vZGUgPSBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKGxhYmVsVG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyKTtcblxuICByZXR1cm4gbGFiZWxOb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFyaWFibGVEZWNsYXJhdGlvbk5vZGVGcm9tVmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnModmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnMsIHBhcnNlcikge1xuICBjb25zdCBydWxlTmFtZSA9IFZBUklBQkxFX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUgPSBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKHZhcmlhYmxlVERlY2xhcmF0aW9uVG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyKTtcblxuICByZXR1cm4gdmFyaWFibGVEZWNsYXJhdGlvbk5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMsIHBhcnNlcikge1xuICBjb25zdCBydWxlTmFtZSA9IFVOUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMsIHJ1bGVOYW1lLCBwYXJzZXIpO1xuXG4gIHJldHVybiB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZUZyb21Db25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zKGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMsIHBhcnNlcikge1xuICBjb25zdCBydWxlTmFtZSA9IENPTlNUUlVDVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUgPSBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMsIHJ1bGVOYW1lLCBwYXJzZXIpO1xuXG4gIHJldHVybiBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2VucywgcnVsZU5hbWUsIHBhcnNlcik7XG5cbiAgcmV0dXJuIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGU7XG59XG5cbmZ1bmN0aW9uIG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyID0gZmxvcmVuY2VQYXJzZXIpIHtcbiAgY29uc3QgcnVsZU1hcCA9IHBhcnNlci5nZXRSdWxlTWFwKCksXG4gICAgICAgIHJ1bGUgPSBydWxlTWFwW3J1bGVOYW1lXSxcbiAgICAgICAgbm9kZSA9IHBhcnNlci5wYXJzZSh0b2tlbnMsIHJ1bGUpO1xuXG4gIHJldHVybiBub2RlO1xufVxuIl0sIm5hbWVzIjpbImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlRnJvbUNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMiLCJsYWJlbE5vZGVGcm9tTGFiZWxTdHJpbmciLCJsYWJlbE5vZGVGcm9tTGFiZWxUb2tlbnMiLCJtZXRhc3RhdGVtZW50Tm9kZUZyb21NZXRhc3RhdGVtZW50U3RyaW5nIiwibWV0YXN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zIiwic3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRTdHJpbmciLCJzdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zIiwidGVybU5vZGVGcm9tQ29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucyIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zIiwidmFyaWFibGVEZWNsYXJhdGlvbk5vZGVGcm9tVmFyaWFibGVURGVjbGFyYXRpb25Ub2tlbnMiLCJ2YXJpYWJsZU5vZGVGcm9tVmFyaWFibGVTdHJpbmciLCJ2YXJpYWJsZU5vZGVGcm9tVmFyaWFibGVWYXJpYWJsZVREZWNsYXJhdGlvblRva2VucyIsImZsb3JlbmNlUGFyc2VyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsInBhcnNlcnNVdGlsaXRpZXMiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tTm90aGluZyIsImZsb3JlbmNlUGFyc2VyIiwidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInZhcmlhYmxlTm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5IiwibWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsImxhYmVsU3RyaW5nIiwibGV4ZXIiLCJwYXJzZXIiLCJsYWJlbFRva2VucyIsImxhYmVsVG9rZW5zRnJvbUxhYmVsU3RyaW5nIiwibGFiZWxOb2RlIiwidmFyaWFibGVTdHJpbmciLCJ2YXJpYWJsZVREZWNsYXJhdGlvblRva2VucyIsInZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnNGcm9tVmFyaWFibGVTdHJpbmciLCJ2YXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnRTdHJpbmciLCJ1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucyIsInVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zRnJvbVN0YXRlbWVudFN0cmluZyIsInN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50U3RyaW5nIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zRnJvbU1ldGFzdGF0ZW1lbnRTdHJpbmciLCJtZXRhc3RhdGVtZW50Tm9kZSIsImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMiLCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSIsInRlcm1Ob2RlIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwidmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwicnVsZU5hbWUiLCJMQUJFTF9SVUxFX05BTUUiLCJub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyIiwiVkFSSUFCTEVfREVDTEFSQVRJT05fUlVMRV9OQU1FIiwiVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSIsIkNPTlNUUlVDVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSIsIlVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwidG9rZW5zIiwicnVsZU1hcCIsImdldFJ1bGVNYXAiLCJydWxlIiwibm9kZSIsInBhcnNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUF1R2dCQSwwREFBMEQ7ZUFBMURBOztJQTdFQUMsd0JBQXdCO2VBQXhCQTs7SUF3REFDLHdCQUF3QjtlQUF4QkE7O0lBbkNBQyx3Q0FBd0M7ZUFBeENBOztJQTRCQUMsbURBQW1EO2VBQW5EQTs7SUFuQ0FDLGdDQUFnQztlQUFoQ0E7O0lBcUJBQywyQ0FBMkM7ZUFBM0NBOztJQVBBQyx3Q0FBd0M7ZUFBeENBOztJQXdEQUMsOERBQThEO2VBQTlEQTs7SUFkQUMsc0RBQXNEO2VBQXREQTs7SUFQQUMscURBQXFEO2VBQXJEQTs7SUF4REFDLDhCQUE4QjtlQUE5QkE7O0lBbUNBQyxrREFBa0Q7ZUFBbERBOzs7bUNBbEVpQjtxQkFFUDs2QkFDdUI7eUJBS0c7c0JBSWtCO0FBRXRFLElBQU0sQUFBRUMsMENBQTRDQyxxQ0FBZ0IsQ0FBNUREO0FBRVIsSUFBTUUsd0JBQXdCQyxJQUFBQSwrQ0FBZ0MsS0FDeERDLGlCQUFpQkosd0NBQXdDRTtBQUUvRCxJQUFNRyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsa0NBQzFCQyxvQkFBb0JELElBQUFBLGdCQUFTLEVBQUMsbUNBQzlCRSxxQkFBcUJGLElBQUFBLGdCQUFTLEVBQUMscUNBQy9CRyx5QkFBeUJILElBQUFBLGdCQUFTLEVBQUM7QUFFbEMsU0FBU2xCLHlCQUF5QnNCLFdBQVcsRUFBRUMsS0FBSyxFQUFFQyxNQUFNO0lBQ2pFLElBQU1DLGNBQWNDLElBQUFBLGtDQUEwQixFQUFDSixhQUFhQyxRQUN0REksWUFBWTFCLHlCQUF5QndCLGFBQWFEO0lBRXhELE9BQU9HO0FB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
|
package/lib/utilities/tokens.js
CHANGED
|
@@ -15,9 +15,6 @@ _export(exports, {
|
|
|
15
15
|
labelTokensFromLabelString: function() {
|
|
16
16
|
return labelTokensFromLabelString;
|
|
17
17
|
},
|
|
18
|
-
metavariableDeclarationTokensFromMetavariableString: function() {
|
|
19
|
-
return metavariableDeclarationTokensFromMetavariableString;
|
|
20
|
-
},
|
|
21
18
|
unqualifiedMetastatementTokensFromMetastatementString: function() {
|
|
22
19
|
return unqualifiedMetastatementTokensFromMetastatementString;
|
|
23
20
|
},
|
|
@@ -48,10 +45,6 @@ function unqualifiedStatementTokensFromStatementString(statementString, lexer) {
|
|
|
48
45
|
var unqualifiedStatementContent = "".concat(statementString, "\n"), unqualifiedStatementTokens = tokensFromContentAndLexer(unqualifiedStatementContent, lexer);
|
|
49
46
|
return unqualifiedStatementTokens;
|
|
50
47
|
}
|
|
51
|
-
function metavariableDeclarationTokensFromMetavariableString(metavariableString, lexer) {
|
|
52
|
-
var metavariableDeclarationContent = "Metavariable ".concat(metavariableString, "\n"), metavariableDeclarationTokens = tokensFromContentAndLexer(metavariableDeclarationContent, lexer);
|
|
53
|
-
return metavariableDeclarationTokens;
|
|
54
|
-
}
|
|
55
48
|
function unqualifiedMetastatementTokensFromMetastatementString(metastatementString, lexer) {
|
|
56
49
|
var unqualifiedMetastatementContent = "".concat(metastatementString, "\n"), unqualifiedMetastatementTokens = tokensFromContentAndLexer(unqualifiedMetastatementContent, lexer);
|
|
57
50
|
return unqualifiedMetastatementTokens;
|
|
@@ -62,4 +55,4 @@ function tokensFromContentAndLexer(content) {
|
|
|
62
55
|
return tokens;
|
|
63
56
|
}
|
|
64
57
|
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdG9rZW5zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBsZXhlcnNVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tY3VzdG9tLWdyYW1tYXJzXCI7XG5cbmltcG9ydCB7IGNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nIH0gZnJvbSBcIi4vY3VzdG9tR3JhbW1hclwiO1xuXG5jb25zdCB7IGZsb3JlbmNlTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIH0gPSBsZXhlcnNVdGlsaXRpZXM7XG5cbmNvbnN0IGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9IGNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nKCksXG4gICAgICBmbG9yZW5jZUxleGVyID0gZmxvcmVuY2VMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKTtcblxuZXhwb3J0IGZ1bmN0aW9uIGxhYmVsVG9rZW5zRnJvbUxhYmVsU3RyaW5nKGxhYmVsU3RyaW5nLCBsZXhlcikge1xuICBjb25zdCBsYWJlbENvbnRlbnQgPSBgJHtsYWJlbFN0cmluZ31gLFxuICAgICAgICBsYWJlbFRva2VucyA9IHRva2Vuc0Zyb21Db250ZW50QW5kTGV4ZXIobGFiZWxDb250ZW50LCBsZXhlcik7XG5cbiAgcmV0dXJuIGxhYmVsVG9rZW5zO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vuc0Zyb21UZXJtU3RyaW5nKHRlcm1TdHJpbmcsIGxleGVyKSB7XG4gIGNvbnN0IGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Db250ZW50ID0gYENvbnN0cnVjdG9yICR7dGVybVN0cmluZ31cbmAsXG4gICAgICAgIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMgPSB0b2tlbnNGcm9tQ29udGVudEFuZExleGVyKGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Db250ZW50LCBsZXhlcik7XG5cbiAgcmV0dXJuIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YXJpYWJsZURlY2xhcmF0aW9uVG9rZW5zRnJvbVZhcmlhYmxlU3RyaW5nKHZhcmlhYmxlU3RyaW5nLCBsZXhlcikge1xuICBjb25zdCB2YXJpYWJsZURlY2xhcmF0aW9uQ29udGVudCA9IGBWYXJpYWJsZSAke3ZhcmlhYmxlU3RyaW5nfVxuYCxcbiAgICAgICAgdmFyaWFibGVEZWNsYXJhdGlvblRva2VucyA9IHRva2Vuc0Zyb21Db250ZW50QW5kTGV4ZXIodmFyaWFibGVEZWNsYXJhdGlvbkNvbnRlbnQsIGxleGVyKTtcblxuICByZXR1cm4gdmFyaWFibGVEZWNsYXJhdGlvblRva2Vucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zRnJvbVN0YXRlbWVudFN0cmluZyhzdGF0ZW1lbnRTdHJpbmcsIGxleGVyKSB7XG4gIGNvbnN0IHVucXVhbGlmaWVkU3RhdGVtZW50Q29udGVudCA9IGAke3N0YXRlbWVudFN0cmluZ31cbmAsXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zID0gdG9rZW5zRnJvbUNvbnRlbnRBbmRMZXhlcih1bnF1YWxpZmllZFN0YXRlbWVudENvbnRlbnQsIGxleGVyKTtcblxuICByZXR1cm4gdW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnNGcm9tTWV0YXN0YXRlbWVudFN0cmluZyhtZXRhc3RhdGVtZW50U3RyaW5nLCBsZXhlcikge1xuICBjb25zdCB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRDb250ZW50ID0gYCR7bWV0YXN0YXRlbWVudFN0cmluZ31cbmAsXG4gICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFRva2VucyA9IHRva2Vuc0Zyb21Db250ZW50QW5kTGV4ZXIodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Q29udGVudCwgbGV4ZXIpO1xuXG4gIHJldHVybiB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnM7XG59XG5cbmZ1bmN0aW9uIHRva2Vuc0Zyb21Db250ZW50QW5kTGV4ZXIoY29udGVudCwgbGV4ZXIgPSBmbG9yZW5jZUxleGVyKSB7XG4gIGNvbnN0IHRva2VucyA9IGxleGVyLnRva2VuaXNlKGNvbnRlbnQpO1xuXG4gIHJldHVybiB0b2tlbnM7XG59XG4iXSwibmFtZXMiOlsiY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vuc0Zyb21UZXJtU3RyaW5nIiwibGFiZWxUb2tlbnNGcm9tTGFiZWxTdHJpbmciLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRUb2tlbnNGcm9tTWV0YXN0YXRlbWVudFN0cmluZyIsInVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zRnJvbVN0YXRlbWVudFN0cmluZyIsInZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnNGcm9tVmFyaWFibGVTdHJpbmciLCJmbG9yZW5jZUxleGVyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsImxleGVyc1V0aWxpdGllcyIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nIiwiZmxvcmVuY2VMZXhlciIsImxhYmVsU3RyaW5nIiwibGV4ZXIiLCJsYWJlbENvbnRlbnQiLCJsYWJlbFRva2VucyIsInRva2Vuc0Zyb21Db250ZW50QW5kTGV4ZXIiLCJ0ZXJtU3RyaW5nIiwiY29uc3RydWN0b3JEZWNsYXJhdGlvbkNvbnRlbnQiLCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zIiwidmFyaWFibGVTdHJpbmciLCJ2YXJpYWJsZURlY2xhcmF0aW9uQ29udGVudCIsInZhcmlhYmxlRGVjbGFyYXRpb25Ub2tlbnMiLCJzdGF0ZW1lbnRTdHJpbmciLCJ1bnF1YWxpZmllZFN0YXRlbWVudENvbnRlbnQiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucyIsIm1ldGFzdGF0ZW1lbnRTdHJpbmciLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRDb250ZW50IiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VG9rZW5zIiwiY29udGVudCIsInRva2VucyIsInRva2VuaXNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFrQmdCQSwwQ0FBMEM7ZUFBMUNBOztJQVBBQywwQkFBMEI7ZUFBMUJBOztJQStCQUMscURBQXFEO2VBQXJEQTs7SUFSQUMsNkNBQTZDO2VBQTdDQTs7SUFSQUMsMkNBQTJDO2VBQTNDQTs7O21DQXhCZ0I7NkJBRWlCO0FBRWpELElBQU0sQUFBRUMseUNBQTJDQyxvQ0FBZSxDQUExREQ7QUFFUixJQUFNRSx3QkFBd0JDLElBQUFBLCtDQUFnQyxLQUN4REMsZ0JBQWdCSix1Q0FBdUNFO0FBRXRELFNBQVNOLDJCQUEyQlMsV0FBVyxFQUFFQyxLQUFLO0lBQzNELElBQU1DLGVBQWUsQUFBQyxHQUFjLE9BQVpGLGNBQ2xCRyxjQUFjQywwQkFBMEJGLGNBQWNEO0lBRTVELE9BQU9FO0FBQ1Q7QUFFTyxTQUFTYiwyQ0FBMkNlLFVBQVUsRUFBRUosS0FBSztJQUMxRSxJQUFNSyxnQ0FBZ0MsQUFBQyxlQUF5QixPQUFYRCxZQUFXLE9BRTFERSwrQkFBK0JILDBCQUEwQkUsK0JBQStCTDtJQUU5RixPQUFPTTtBQUNUO0FBRU8sU0FBU2IsNENBQTRDYyxjQUFjLEVBQUVQLEtBQUs7SUFDL0UsSUFBTVEsNkJBQTZCLEFBQUMsWUFBMEIsT0FBZkQsZ0JBQWUsT0FFeERFLDRCQUE0Qk4sMEJBQTBCSyw0QkFBNEJSO0lBRXhGLE9BQU9TO0FBQ1Q7QUFFTyxTQUFTakIsOENBQThDa0IsZUFBZSxFQUFFVixLQUFLO0lBQ2xGLElBQU1XLDhCQUE4QixBQUFDLEdBQWtCLE9BQWhCRCxpQkFBZ0IsT0FFakRFLDZCQUE2QlQsMEJBQTBCUSw2QkFBNkJYO0lBRTFGLE9BQU9ZO0FBQ1Q7QUFFTyxTQUFTckIsc0RBQXNEc0IsbUJBQW1CLEVBQUViLEtBQUs7SUFDOUYsSUFBTWMsa0NBQWtDLEFBQUMsR0FBc0IsT0FBcEJELHFCQUFvQixPQUV6REUsaUNBQWlDWiwwQkFBMEJXLGlDQUFpQ2Q7SUFFbEcsT0FBT2U7QUFDVDtBQUVBLFNBQVNaLDBCQUEwQmEsT0FBTztRQUFFaEIsUUFBQUEsaUVBQVFGO0lBQ2xELElBQU1tQixTQUFTakIsTUFBTWtCLFFBQVEsQ0FBQ0Y7SUFFOUIsT0FBT0M7QUFDVCJ9
|
package/lib/variable.js
CHANGED
|
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return Variable;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var _type = /*#__PURE__*/ _interop_require_default(require("./type"));
|
|
12
11
|
var _string = require("./utilities/string");
|
|
12
|
+
var _type = require("./type");
|
|
13
13
|
var _node = require("./utilities/node");
|
|
14
14
|
function _class_call_check(instance, Constructor) {
|
|
15
15
|
if (!(instance instanceof Constructor)) {
|
|
@@ -30,11 +30,6 @@ function _create_class(Constructor, protoProps, staticProps) {
|
|
|
30
30
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
31
31
|
return Constructor;
|
|
32
32
|
}
|
|
33
|
-
function _interop_require_default(obj) {
|
|
34
|
-
return obj && obj.__esModule ? obj : {
|
|
35
|
-
default: obj
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
33
|
var Variable = /*#__PURE__*/ function() {
|
|
39
34
|
function Variable(node, type) {
|
|
40
35
|
_class_call_check(this, Variable);
|
|
@@ -110,13 +105,19 @@ var Variable = /*#__PURE__*/ function() {
|
|
|
110
105
|
node = variableNode; ///
|
|
111
106
|
var type = json.type;
|
|
112
107
|
json = type; ///
|
|
113
|
-
type = _type.
|
|
114
|
-
var typeName = type.getName();
|
|
115
|
-
type = fileContext.findTypeByTypeName(typeName); ///
|
|
108
|
+
type = (0, _type.typeFromJSONAndFileContext)(json, fileContext);
|
|
116
109
|
var variable = new Variable(node, type);
|
|
117
110
|
return variable;
|
|
118
111
|
}
|
|
119
112
|
},
|
|
113
|
+
{
|
|
114
|
+
key: "fromVariableAndType",
|
|
115
|
+
value: function fromVariableAndType(variable, type) {
|
|
116
|
+
var node = variable.getNode();
|
|
117
|
+
variable = new Variable(node, type); ///
|
|
118
|
+
return variable;
|
|
119
|
+
}
|
|
120
|
+
},
|
|
120
121
|
{
|
|
121
122
|
key: "fromVariableNodeAndType",
|
|
122
123
|
value: function fromVariableNodeAndType(variableNode, type) {
|
|
@@ -128,4 +129,4 @@ var Variable = /*#__PURE__*/ function() {
|
|
|
128
129
|
return Variable;
|
|
129
130
|
}();
|
|
130
131
|
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92YXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgdHlwZUZyb21KU09OQW5kRmlsZUNvbnRleHQgfSBmcm9tIFwiLi90eXBlXCI7XG5pbXBvcnQgeyB2YXJpYWJsZU5vZGVGcm9tVmFyaWFibGVTdHJpbmcgfSBmcm9tIFwiLi91dGlsaXRpZXMvbm9kZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWYXJpYWJsZSB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIHR5cGUpIHtcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gIH1cblxuICBnZXROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGU7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBtYXRjaCh2YXJpYWJsZSkge1xuICAgIGNvbnN0IHR5cGUgPSB2YXJpYWJsZS5nZXRUeXBlKCksXG4gICAgICAgICAgbm9kZSA9IHZhcmlhYmxlLmdldE5vZGUoKSxcbiAgICAgICAgICB0eXBlTWF0Y2hlcyA9IHRoaXMubWF0Y2hUeXBlKHR5cGUpLFxuICAgICAgICAgIG5vZGVNYXRjaGVzID0gdGhpcy5tYXRjaE5vZGUobm9kZSksXG4gICAgICAgICAgbWF0Y2hlcyA9IG5vZGVNYXRjaGVzICYmIHR5cGVNYXRjaGVzO1xuXG4gICAgcmV0dXJuIG1hdGNoZXM7XG4gIH1cblxuICBtYXRjaE5vZGUobm9kZSkge1xuICAgIGNvbnN0IG5vZGVNYXRjaGVzID0gdGhpcy5ub2RlLm1hdGNoKG5vZGUpO1xuXG4gICAgcmV0dXJuIG5vZGVNYXRjaGVzO1xuICB9XG5cbiAgbWF0Y2hUeXBlKHR5cGUpIHtcbiAgICBjb25zdCB0eXBlTWF0Y2hlcyA9IHRoaXMudHlwZS5tYXRjaCh0eXBlKTtcblxuICAgIHJldHVybiB0eXBlTWF0Y2hlcztcbiAgfVxuXG4gIG1hdGNoTm9kZUFuZFR5cGUobm9kZSwgdHlwZSkge1xuICAgIGNvbnN0IG5vZGVNYXRjaGVzID0gdGhpcy5tYXRjaE5vZGUobm9kZSksXG4gICAgICAgICAgdHlwZU1hdGNoZXMgPSB0aGlzLm1hdGNoVHlwZSh0eXBlKSxcbiAgICAgICAgICBub2RlQW5kVHlwZU1hdGNoID0gbm9kZU1hdGNoZXMgJiYgdHlwZU1hdGNoZXM7XG5cbiAgICByZXR1cm4gbm9kZUFuZFR5cGVNYXRjaDtcbiAgfVxuXG4gIGFzU3RyaW5nKHRva2Vucykge1xuICAgIGNvbnN0IHR5cGVOYW1lID0gdGhpcy50eXBlLmdldE5hbWUoKTtcblxuICAgIGxldCBzdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5ub2RlLCB0b2tlbnMpO1xuXG4gICAgc3RyaW5nID0gYCR7c3RyaW5nfToke3R5cGVOYW1lfWA7IC8vL1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHRvSlNPTih0b2tlbnMpIHtcbiAgICBjb25zdCB0eXBlSlNPTiA9IHRoaXMudHlwZS50b0pTT04odG9rZW5zKSxcbiAgICAgICAgICBzdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5ub2RlLCB0b2tlbnMpLFxuICAgICAgICAgIG5vZGUgPSBzdHJpbmcsICAvL1xuICAgICAgICAgIHR5cGUgPSB0eXBlSlNPTiwgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgdHlwZVxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KSB7XG4gICAgbGV0IHsgbm9kZSB9ID0ganNvbjtcblxuICAgIGNvbnN0IGxleGVyICA9IGZpbGVDb250ZXh0LmdldExleGVyKCksXG4gICAgICAgICAgcGFyc2VyID0gZmlsZUNvbnRleHQuZ2V0UGFyc2VyKCksXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSBub2RlLCAgLy8vXG4gICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlRnJvbVZhcmlhYmxlU3RyaW5nKHZhcmlhYmxlU3RyaW5nLCBsZXhlciwgcGFyc2VyKTtcblxuICAgIG5vZGUgPSB2YXJpYWJsZU5vZGU7ICAvLy9cblxuICAgIGxldCB7IHR5cGUgfSA9IGpzb247XG5cbiAgICBqc29uID0gdHlwZTsgIC8vL1xuXG4gICAgdHlwZSA9IHR5cGVGcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KTtcblxuICAgIGNvbnN0IHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKG5vZGUsIHR5cGUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG5cbiAgc3RhdGljIGZyb21WYXJpYWJsZUFuZFR5cGUodmFyaWFibGUsIHR5cGUpIHtcbiAgICBjb25zdCBub2RlID0gdmFyaWFibGUuZ2V0Tm9kZSgpO1xuXG4gICAgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUobm9kZSwgdHlwZSk7ICAvLy9cblxuICAgIHJldHVybiB2YXJpYWJsZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVmFyaWFibGVOb2RlQW5kVHlwZSh2YXJpYWJsZU5vZGUsIHR5cGUpIHtcbiAgICBjb25zdCBub2RlID0gdmFyaWFibGVOb2RlLCAgLy8vXG4gICAgICAgICAgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUobm9kZSwgdHlwZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJWYXJpYWJsZSIsIm5vZGUiLCJ0eXBlIiwiZ2V0Tm9kZSIsImdldFR5cGUiLCJtYXRjaCIsInZhcmlhYmxlIiwidHlwZU1hdGNoZXMiLCJtYXRjaFR5cGUiLCJub2RlTWF0Y2hlcyIsIm1hdGNoTm9kZSIsIm1hdGNoZXMiLCJtYXRjaE5vZGVBbmRUeXBlIiwibm9kZUFuZFR5cGVNYXRjaCIsImFzU3RyaW5nIiwidG9rZW5zIiwidHlwZU5hbWUiLCJnZXROYW1lIiwic3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidG9KU09OIiwidHlwZUpTT04iLCJqc29uIiwiZnJvbUpTT05BbmRGaWxlQ29udGV4dCIsImZpbGVDb250ZXh0IiwibGV4ZXIiLCJnZXRMZXhlciIsInBhcnNlciIsImdldFBhcnNlciIsInZhcmlhYmxlU3RyaW5nIiwidmFyaWFibGVOb2RlIiwidmFyaWFibGVOb2RlRnJvbVZhcmlhYmxlU3RyaW5nIiwidHlwZUZyb21KU09OQW5kRmlsZUNvbnRleHQiLCJmcm9tVmFyaWFibGVBbmRUeXBlIiwiZnJvbVZhcmlhYmxlTm9kZUFuZFR5cGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O3NCQUpRO29CQUNjO29CQUNJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVoQyxJQUFBLEFBQU1BLHlCQUFELEFBQUw7YUFBTUEsU0FDUEMsSUFBSSxFQUFFQyxJQUFJO2dDQURIRjtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLElBQUksR0FBR0E7O2tCQUhLRjs7WUFNbkJHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxNQUFNQyxRQUFRO2dCQUNaLElBQU1KLE9BQU9JLFNBQVNGLE9BQU8sSUFDdkJILE9BQU9LLFNBQVNILE9BQU8sSUFDdkJJLGNBQWMsSUFBSSxDQUFDQyxTQUFTLENBQUNOLE9BQzdCTyxjQUFjLElBQUksQ0FBQ0MsU0FBUyxDQUFDVCxPQUM3QlUsVUFBVUYsZUFBZUY7Z0JBRS9CLE9BQU9JO1lBQ1Q7OztZQUVBRCxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVVQsSUFBSTtnQkFDWixJQUFNUSxjQUFjLElBQUksQ0FBQ1IsSUFBSSxDQUFDSSxLQUFLLENBQUNKO2dCQUVwQyxPQUFPUTtZQUNUOzs7WUFFQUQsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVVOLElBQUk7Z0JBQ1osSUFBTUssY0FBYyxJQUFJLENBQUNMLElBQUksQ0FBQ0csS0FBSyxDQUFDSDtnQkFFcEMsT0FBT0s7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJYLElBQUksRUFBRUMsSUFBSTtnQkFDekIsSUFBTU8sY0FBYyxJQUFJLENBQUNDLFNBQVMsQ0FBQ1QsT0FDN0JNLGNBQWMsSUFBSSxDQUFDQyxTQUFTLENBQUNOLE9BQzdCVyxtQkFBbUJKLGVBQWVGO2dCQUV4QyxPQUFPTTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLFNBQVNDLE1BQU07Z0JBQ2IsSUFBTUMsV0FBVyxJQUFJLENBQUNkLElBQUksQ0FBQ2UsT0FBTztnQkFFbEMsSUFBSUMsU0FBU0MsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNsQixJQUFJLEVBQUVjO2dCQUVyQ0csU0FBUyxBQUFDLEdBQVlGLE9BQVZFLFFBQU8sS0FBWSxPQUFURixXQUFZLEdBQUc7Z0JBRXJDLE9BQU9FO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsT0FBT0wsTUFBTTtnQkFDWCxJQUFNTSxXQUFXLElBQUksQ0FBQ25CLElBQUksQ0FBQ2tCLE1BQU0sQ0FBQ0wsU0FDNUJHLFNBQVNDLElBQUFBLG9CQUFZLEVBQUMsSUFBSSxDQUFDbEIsSUFBSSxFQUFFYyxTQUNqQ2QsT0FBT2lCLFFBQ1BoQixPQUFPbUIsVUFDUEMsT0FBTztvQkFDTHJCLE1BQUFBO29CQUNBQyxNQUFBQTtnQkFDRjtnQkFFTixPQUFPb0I7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSx1QkFBdUJELElBQUksRUFBRUUsV0FBVztnQkFDN0MsSUFBSSxBQUFFdkIsT0FBU3FCLEtBQVRyQjtnQkFFTixJQUFNd0IsUUFBU0QsWUFBWUUsUUFBUSxJQUM3QkMsU0FBU0gsWUFBWUksU0FBUyxJQUM5QkMsaUJBQWlCNUIsTUFDakI2QixlQUFlQyxJQUFBQSxvQ0FBOEIsRUFBQ0YsZ0JBQWdCSixPQUFPRTtnQkFFM0UxQixPQUFPNkIsY0FBZSxHQUFHO2dCQUV6QixJQUFJLEFBQUU1QixPQUFTb0IsS0FBVHBCO2dCQUVOb0IsT0FBT3BCLE1BQU8sR0FBRztnQkFFakJBLE9BQU84QixJQUFBQSxnQ0FBMEIsRUFBQ1YsTUFBTUU7Z0JBRXhDLElBQU1sQixXQUFXLElBbkZBTixTQW1GYUMsTUFBTUM7Z0JBRXBDLE9BQU9JO1lBQ1Q7OztZQUVPMkIsS0FBQUE7bUJBQVAsU0FBT0Esb0JBQW9CM0IsUUFBUSxFQUFFSixJQUFJO2dCQUN2QyxJQUFNRCxPQUFPSyxTQUFTSCxPQUFPO2dCQUU3QkcsV0FBVyxJQTNGTU4sU0EyRk9DLE1BQU1DLE9BQVEsR0FBRztnQkFFekMsT0FBT0k7WUFDVDs7O1lBRU80QixLQUFBQTttQkFBUCxTQUFPQSx3QkFBd0JKLFlBQVksRUFBRTVCLElBQUk7Z0JBQy9DLElBQU1ELE9BQU82QixjQUNQeEIsV0FBVyxJQWxHQU4sU0FrR2FDLE1BQU1DO2dCQUVwQyxPQUFPSTtZQUNUOzs7V0FyR21CTiJ9
|
|
@@ -141,18 +141,21 @@ var StatementAsCombinatorNodeVerifier = /*#__PURE__*/ function(NodeVerifier) {
|
|
|
141
141
|
switch(ruleName){
|
|
142
142
|
case _ruleNames.TYPE_RULE_NAME:
|
|
143
143
|
{
|
|
144
|
+
debugger;
|
|
144
145
|
var typeNode = nonTerminalNode, typeVerified = (0, _termAsConstructor.verifyType)(typeNode, fileContext, verifyAhead), typeNodeVerified = typeVerified; ///
|
|
145
146
|
nonTerminalNodeVerified = typeNodeVerified; ///
|
|
146
147
|
break;
|
|
147
148
|
}
|
|
148
149
|
case _ruleNames.TERM_RULE_NAME:
|
|
149
150
|
{
|
|
151
|
+
debugger;
|
|
150
152
|
var termNode = nonTerminalNode, standaloneTermVerified = (0, _termAsConstructor.verifyStandaloneTerm)(termNode, fileContext, verifyAhead), termNodeVerified = standaloneTermVerified; ///
|
|
151
153
|
nonTerminalNodeVerified = termNodeVerified; ///
|
|
152
154
|
break;
|
|
153
155
|
}
|
|
154
156
|
case _ruleNames.STATEMENT_RULE_NAME:
|
|
155
157
|
{
|
|
158
|
+
debugger;
|
|
156
159
|
var statementNode = nonTerminalNode, standaloneStatementVerified = verifyStandaloneStatement(statementNode, fileContext, verifyAhead), statementNodeVerified = standaloneStatementVerified; ///
|
|
157
160
|
nonTerminalNodeVerified = statementNodeVerified; ///
|
|
158
161
|
break;
|
|
@@ -183,4 +186,4 @@ function verifyStandaloneStatement(statementNode, fileContext, verifyAhead) {
|
|
|
183
186
|
return standaloneStatementVerified;
|
|
184
187
|
}
|
|
185
188
|
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL3N0YXRlbWVudEFzQ29tYmluYXRvci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE5vZGVWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZVwiO1xuaW1wb3J0IHZlcmlmeVN0YXRlbWVudCBmcm9tIFwiLi4vLi4vdmVyaWZ5L3N0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyB2ZXJpZnlUeXBlLCB2ZXJpZnlTdGFuZGFsb25lVGVybSB9IGZyb20gXCIuLy4uLy4uL3ZlcmlmaWVyL25vZGUvdGVybUFzQ29uc3RydWN0b3JcIjtcbmltcG9ydCB7IFRZUEVfUlVMRV9OQU1FLCBURVJNX1JVTEVfTkFNRSwgU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY2xhc3MgU3RhdGVtZW50QXNDb21iaW5hdG9yTm9kZVZlcmlmaWVyIGV4dGVuZHMgTm9kZVZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3QgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTtcblxuICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgIGNhc2UgVFlQRV9SVUxFX05BTUU6IHtcbiAgICAgICAgZGVidWdnZXJcblxuICAgICAgICBjb25zdCB0eXBlTm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHR5cGVWZXJpZmllZCA9IHZlcmlmeVR5cGUodHlwZU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCksXG4gICAgICAgICAgICAgIHR5cGVOb2RlVmVyaWZpZWQgPSB0eXBlVmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHR5cGVOb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIFRFUk1fUlVMRV9OQU1FOiB7XG4gICAgICAgIGRlYnVnZ2VyXG5cbiAgICAgICAgY29uc3QgdGVybU5vZGUgPSBub25UZXJtaW5hbE5vZGUsIC8vL1xuICAgICAgICAgICAgICBzdGFuZGFsb25lVGVybVZlcmlmaWVkID0gdmVyaWZ5U3RhbmRhbG9uZVRlcm0odGVybU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCksXG4gICAgICAgICAgICAgIHRlcm1Ob2RlVmVyaWZpZWQgPSBzdGFuZGFsb25lVGVybVZlcmlmaWVkOyAgLy8vXG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0ZXJtTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgY2FzZSBTVEFURU1FTlRfUlVMRV9OQU1FOiB7XG4gICAgICAgIGRlYnVnZ2VyXG5cbiAgICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIHN0YW5kYWxvbmVTdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YW5kYWxvbmVTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICAgICAgc3RhdGVtZW50Tm9kZVZlcmlmaWVkID0gc3RhbmRhbG9uZVN0YXRlbWVudFZlcmlmaWVkOyAvLy9cblxuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN0YXRlbWVudE5vZGVWZXJpZmllZDsgLy8vXG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBzdXBlci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3Qgc3RhdGVtZW50QXNDb21iaW5hdG9yTm9kZVZlcmlmaWVyID0gbmV3IFN0YXRlbWVudEFzQ29tYmluYXRvck5vZGVWZXJpZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCBzdGF0ZW1lbnRBc0NvbWJpbmF0b3JOb2RlVmVyaWZpZXI7XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YW5kYWxvbmVTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCBzdGFuZGFsb25lU3RhdGVtZW50VmVyaWZpZWQ7XG5cbiAgY29uc3Qgc3RhdGVtZW50U3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKHN0YXRlbWVudE5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3N0YXRlbWVudFN0cmluZ30nIHN0YW5kYWxvbmUgc3RhdGVtZW50Li4uYCwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgY29uc3QgY29udGV4dCA9IGZpbGVDb250ZXh0LCAgLy8vXG4gICAgICAgIGRlcml2ZWQgPSBmYWxzZSxcbiAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICBzdGFuZGFsb25lU3RhdGVtZW50VmVyaWZpZWQgPSBzdGF0ZW1lbnRWZXJpZmllZDsgIC8vL1xuXG4gIGlmIChzdGFuZGFsb25lU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3N0YXRlbWVudFN0cmluZ30nIHN0YW5kYWxvbmUgc3RhdGVtZW50LmAsIHN0YXRlbWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIHN0YW5kYWxvbmVTdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJTdGF0ZW1lbnRBc0NvbWJpbmF0b3JOb2RlVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJmaWxlQ29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiVFlQRV9SVUxFX05BTUUiLCJ0eXBlTm9kZSIsInR5cGVWZXJpZmllZCIsInZlcmlmeVR5cGUiLCJ0eXBlTm9kZVZlcmlmaWVkIiwiVEVSTV9SVUxFX05BTUUiLCJ0ZXJtTm9kZSIsInN0YW5kYWxvbmVUZXJtVmVyaWZpZWQiLCJ2ZXJpZnlTdGFuZGFsb25lVGVybSIsInRlcm1Ob2RlVmVyaWZpZWQiLCJTVEFURU1FTlRfUlVMRV9OQU1FIiwic3RhdGVtZW50Tm9kZSIsInN0YW5kYWxvbmVTdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVN0YW5kYWxvbmVTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlVmVyaWZpZWQiLCJOb2RlVmVyaWZpZXIiLCJzdGF0ZW1lbnRBc0NvbWJpbmF0b3JOb2RlVmVyaWZpZXIiLCJzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsImNvbnRleHQiLCJkZXJpdmVkIiwiYXNzaWdubWVudHMiLCJzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVN0YXRlbWVudCIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFnRUE7OztlQUFBOzs7MkRBOUR5QjtnRUFDRztpQ0FFcUI7eUJBQ21COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFcEUsSUFBQSxBQUFNQSxrREFBRCxBQUFMO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JDLGVBQWUsRUFBRUMsV0FBVyxFQUFFQyxXQUFXO2dCQUM3RCxJQUFJQztnQkFFSixJQUFNQyxXQUFXSixnQkFBZ0JLLFdBQVc7Z0JBRTVDLE9BQVFEO29CQUNOLEtBQUtFLHlCQUFjO3dCQUFFOzRCQUNuQixRQUFROzRCQUVSLElBQU1DLFdBQVdQLGlCQUNYUSxlQUFlQyxJQUFBQSw2QkFBVSxFQUFDRixVQUFVTixhQUFhQyxjQUNqRFEsbUJBQW1CRixjQUFlLEdBQUc7NEJBRTNDTCwwQkFBMEJPLGtCQUFrQixHQUFHOzRCQUUvQzt3QkFDRjtvQkFFQSxLQUFLQyx5QkFBYzt3QkFBRTs0QkFDbkIsUUFBUTs0QkFFUixJQUFNQyxXQUFXWixpQkFDWGEseUJBQXlCQyxJQUFBQSx1Q0FBb0IsRUFBQ0YsVUFBVVgsYUFBYUMsY0FDckVhLG1CQUFtQkYsd0JBQXlCLEdBQUc7NEJBRXJEViwwQkFBMEJZLGtCQUFrQixHQUFHOzRCQUUvQzt3QkFDRjtvQkFFQSxLQUFLQyw4QkFBbUI7d0JBQUU7NEJBQ3hCLFFBQVE7NEJBRVIsSUFBTUMsZ0JBQWdCakIsaUJBQ2hCa0IsOEJBQThCQywwQkFBMEJGLGVBQWVoQixhQUFhQyxjQUNwRmtCLHdCQUF3QkYsNkJBQTZCLEdBQUc7NEJBRTlEZiwwQkFBMEJpQix1QkFBdUIsR0FBRzs0QkFFcEQ7d0JBQ0Y7b0JBRUE7d0JBQVM7NEJBQ1BqQiwwQkFBMEIsdUJBNUM1QkwsOENBNENrQ0MseUJBQU4sSUFBSyxhQUF1QkMsaUJBQWlCQyxhQUFhQyxjQUFjLEdBQUc7NEJBRXJHO3dCQUNGO2dCQUNGO2dCQUVBLE9BQU9DO1lBQ1Q7OztXQW5ESUw7RUFBMEN1QixhQUFZO0FBc0Q1RCxJQUFNQyxvQ0FBb0MsSUFBSXhCO0lBRTlDLFdBQWV3QjtBQUVmLFNBQVNILDBCQUEwQkYsYUFBYSxFQUFFaEIsV0FBVyxFQUFFQyxXQUFXO0lBQ3hFLElBQUlnQjtJQUVKLElBQU1LLGtCQUFrQnRCLFlBQVl1QixZQUFZLENBQUNQO0lBRWpEaEIsWUFBWXdCLEtBQUssQ0FBQyxBQUFDLGtCQUFpQyxPQUFoQkYsaUJBQWdCLDhCQUE0Qk47SUFFaEYsSUFBTVMsVUFBVXpCLGFBQ1YwQixVQUFVLE9BQ1ZDLGNBQWMsRUFBRSxFQUNoQkMsb0JBQW9CQyxJQUFBQSxrQkFBZSxFQUFDYixlQUFlVyxhQUFhRCxTQUFTRCxTQUFTeEI7SUFFeEZnQiw4QkFBOEJXLG1CQUFvQixHQUFHO0lBRXJELElBQUlYLDZCQUE2QjtRQUMvQmpCLFlBQVk4QixLQUFLLENBQUMsQUFBQyxvQkFBbUMsT0FBaEJSLGlCQUFnQiw0QkFBMEJOO0lBQ2xGO0lBRUEsT0FBT0M7QUFDVCJ9
|
|
@@ -14,13 +14,11 @@ _export(exports, {
|
|
|
14
14
|
},
|
|
15
15
|
verifyStandaloneTerm: function() {
|
|
16
16
|
return verifyStandaloneTerm;
|
|
17
|
-
},
|
|
18
|
-
verifyType: function() {
|
|
19
|
-
return verifyType;
|
|
20
17
|
}
|
|
21
18
|
});
|
|
22
19
|
var _term = /*#__PURE__*/ _interop_require_default(require("../../verify/term"));
|
|
23
20
|
var _node = /*#__PURE__*/ _interop_require_default(require("../../verifier/node"));
|
|
21
|
+
var _givenType = /*#__PURE__*/ _interop_require_default(require("../../verify/givenType"));
|
|
24
22
|
var _query = require("../../utilities/query");
|
|
25
23
|
var _ruleNames = require("../../ruleNames");
|
|
26
24
|
function _assert_this_initialized(self) {
|
|
@@ -188,28 +186,14 @@ function verifyStandaloneTerm(termNode, fileContext, verifyAhead) {
|
|
|
188
186
|
}
|
|
189
187
|
return standaloneTermVerified;
|
|
190
188
|
}
|
|
191
|
-
function verifyType(typeNode, fileContext, verifyAhead) {
|
|
192
|
-
var typeVerified = false;
|
|
193
|
-
var typeString = fileContext.nodeAsString(typeNode);
|
|
194
|
-
fileContext.trace("Verifying the '".concat(typeString, "' type..."), typeNode);
|
|
195
|
-
var typeName = (0, _query.typeNameFromTypeNode)(typeNode), typePresent = fileContext.isTypePresentByTypeName(typeName);
|
|
196
|
-
if (!typePresent) {
|
|
197
|
-
fileContext.debug("The type '".concat(typeName, "' is not present."), typeNode);
|
|
198
|
-
} else {
|
|
199
|
-
fileContext.debug("...verified the '".concat(typeString, "' type."), typeNode);
|
|
200
|
-
var verifiedAhead = verifyAhead();
|
|
201
|
-
typeVerified = verifiedAhead; ///
|
|
202
|
-
}
|
|
203
|
-
return typeVerified;
|
|
204
|
-
}
|
|
205
189
|
function verifyArgument(argumentNode, fileContext, verifyAhead) {
|
|
206
190
|
var argumentVerified;
|
|
207
191
|
var argumentString = fileContext.nodeAsString(argumentNode);
|
|
208
192
|
fileContext.trace("Verifying the '".concat(argumentString, "' argument..."), argumentNode);
|
|
209
193
|
var typeNode = typeNodeQuery(argumentNode), termNode = termNodeQuery(argumentNode);
|
|
210
194
|
if (typeNode !== null) {
|
|
211
|
-
var
|
|
212
|
-
argumentVerified =
|
|
195
|
+
var types = [], givenTypeVerified = (0, _givenType.default)(typeNode, types, fileContext, verifyAhead);
|
|
196
|
+
argumentVerified = givenTypeVerified; ///
|
|
213
197
|
}
|
|
214
198
|
if (termNode !== null) {
|
|
215
199
|
var standaloneTermVerified = verifyStandaloneTerm(termNode, fileContext, verifyAhead);
|
|
@@ -221,4 +205,4 @@ function verifyArgument(argumentNode, fileContext, verifyAhead) {
|
|
|
221
205
|
return argumentVerified;
|
|
222
206
|
}
|
|
223
207
|
|
|
224
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
208
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL3Rlcm1Bc0NvbnN0cnVjdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5VGVybSBmcm9tIFwiLi4vLi4vdmVyaWZ5L3Rlcm1cIjtcbmltcG9ydCBOb2RlVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL25vZGVcIjtcbmltcG9ydCB2ZXJpZnlHaXZlblR5cGUgZnJvbSBcIi4uLy4uL3ZlcmlmeS9naXZlblR5cGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgVEVSTV9SVUxFX05BTUUsIEFSR1VNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90eXBlXCIpLFxuICAgICAgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90ZXJtXCIpO1xuXG5jbGFzcyBUZXJtQXNDb25zdHJ1Y3Rvck5vZGVWZXJpZmllciBleHRlbmRzIE5vZGVWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcblxuICAgIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCk7XG5cbiAgICBzd2l0Y2ggKHJ1bGVOYW1lKSB7XG4gICAgICBjYXNlIFRFUk1fUlVMRV9OQU1FOiB7XG4gICAgICAgIGNvbnN0IHRlcm1Ob2RlID0gbm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgc3RhbmRhbG9uZVRlcm1WZXJpZmllZCA9IHZlcmlmeVN0YW5kYWxvbmVUZXJtKHRlcm1Ob2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpLFxuICAgICAgICAgICAgICB0ZXJtTm9kZVZlcmlmaWVkID0gc3RhbmRhbG9uZVRlcm1WZXJpZmllZDsgIC8vL1xuXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGVybU5vZGVWZXJpZmllZDsgLy8vXG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgQVJHVU1FTlRfUlVMRV9OQU1FOiB7XG4gICAgICAgIGNvbnN0IGFyZ3VtZW50Tm9kZSA9IG5vblRlcm1pbmFsTm9kZSwgLy8vXG4gICAgICAgICAgICAgIGFyZ3VtZW50VmVyaWZpZWQgPSB2ZXJpZnlBcmd1bWVudChhcmd1bWVudE5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCksXG4gICAgICAgICAgICAgIGFyZ3VtZW50Tm9kZVZlcmlmaWVkID0gYXJndW1lbnRWZXJpZmllZDsgIC8vL1xuXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gYXJndW1lbnROb2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cblxuY29uc3QgdGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIgPSBuZXcgVGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIoKTtcblxuZXhwb3J0IGRlZmF1bHQgdGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXI7XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCBzdGFuZGFsb25lVGVybVZlcmlmaWVkO1xuXG4gIGNvbnN0IHRlcm1TdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcodGVybU5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3Rlcm1TdHJpbmd9JyBzdGFuZGFsb25lIHRlcm0uLi5gLCB0ZXJtTm9kZSk7XG5cbiAgY29uc3QgdGVybXMgPSBbXSxcbiAgICAgICAgY29udGV4dCA9IGZpbGVDb250ZXh0LCAgLy8vXG4gICAgICAgIHRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm0odGVybU5vZGUsIHRlcm1zLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgc3RhbmRhbG9uZVRlcm1WZXJpZmllZCA9IHRlcm1WZXJpZmllZDsgIC8vL1xuXG4gIGlmIChzdGFuZGFsb25lVGVybVZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0ZXJtU3RyaW5nfScgc3RhbmRhbG9uZSB0ZXJtLmAsIHRlcm1Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBzdGFuZGFsb25lVGVybVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlBcmd1bWVudChhcmd1bWVudE5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgYXJndW1lbnRWZXJpZmllZDtcblxuICBjb25zdCBhcmd1bWVudFN0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVBc1N0cmluZyhhcmd1bWVudE5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2FyZ3VtZW50U3RyaW5nfScgYXJndW1lbnQuLi5gLCBhcmd1bWVudE5vZGUpO1xuXG4gIGNvbnN0IHR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeShhcmd1bWVudE5vZGUpLFxuICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoYXJndW1lbnROb2RlKTtcblxuICBpZiAodHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCB0eXBlcyA9IFtdLCAvLy9cbiAgICAgICAgICBnaXZlblR5cGVWZXJpZmllZCA9IHZlcmlmeUdpdmVuVHlwZSh0eXBlTm9kZSwgdHlwZXMsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICBhcmd1bWVudFZlcmlmaWVkID0gZ2l2ZW5UeXBlVmVyaWZpZWQ7IC8vL1xuICB9XG5cbiAgaWYgKHRlcm1Ob2RlICE9PSBudWxsKSB7XG4gICAgY29uc3Qgc3RhbmRhbG9uZVRlcm1WZXJpZmllZCA9IHZlcmlmeVN0YW5kYWxvbmVUZXJtKHRlcm1Ob2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgYXJndW1lbnRWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cbiAgfVxuXG4gIGlmIChhcmd1bWVudFZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHthcmd1bWVudFN0cmluZ30nIGFyZ3VtZW50LmAsIGFyZ3VtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gYXJndW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGFuZGFsb25lVGVybSIsInR5cGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ0ZXJtTm9kZVF1ZXJ5IiwiVGVybUFzQ29uc3RydWN0b3JOb2RlVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJmaWxlQ29udGV4dCIsInZlcmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiVEVSTV9SVUxFX05BTUUiLCJ0ZXJtTm9kZSIsInN0YW5kYWxvbmVUZXJtVmVyaWZpZWQiLCJ0ZXJtTm9kZVZlcmlmaWVkIiwiQVJHVU1FTlRfUlVMRV9OQU1FIiwiYXJndW1lbnROb2RlIiwiYXJndW1lbnRWZXJpZmllZCIsInZlcmlmeUFyZ3VtZW50IiwiYXJndW1lbnROb2RlVmVyaWZpZWQiLCJOb2RlVmVyaWZpZXIiLCJ0ZXJtQXNDb25zdHJ1Y3Rvck5vZGVWZXJpZmllciIsInRlcm1TdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInRlcm1zIiwiY29udGV4dCIsInRlcm1WZXJpZmllZCIsInZlcmlmeVRlcm0iLCJkZWJ1ZyIsImFyZ3VtZW50U3RyaW5nIiwidHlwZU5vZGUiLCJ0eXBlcyIsImdpdmVuVHlwZVZlcmlmaWVkIiwidmVyaWZ5R2l2ZW5UeXBlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFvREEsT0FBNkM7ZUFBN0M7O0lBRWdCQSxvQkFBb0I7ZUFBcEJBOzs7MkRBcERPOzJEQUNFO2dFQUNHO3FCQUVGO3lCQUN5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRW5ELElBQU1DLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxtQkFDMUJDLGdCQUFnQkQsSUFBQUEsZ0JBQVMsRUFBQztBQUVoQyxJQUFBLEFBQU1FLDhDQUFELEFBQUw7Y0FBTUE7K0JBQUFBO2FBQUFBO2dDQUFBQTs7O2tCQUFBQTs7WUFDSkMsS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQkMsZUFBZSxFQUFFQyxXQUFXLEVBQUVDLFdBQVc7Z0JBQzdELElBQUlDO2dCQUVKLElBQU1DLFdBQVdKLGdCQUFnQkssV0FBVztnQkFFNUMsT0FBUUQ7b0JBQ04sS0FBS0UseUJBQWM7d0JBQUU7NEJBQ25CLElBQU1DLFdBQVdQLGlCQUNYUSx5QkFBeUJkLHFCQUFxQmEsVUFBVU4sYUFBYUMsY0FDckVPLG1CQUFtQkQsd0JBQXlCLEdBQUc7NEJBRXJETCwwQkFBMEJNLGtCQUFrQixHQUFHOzRCQUUvQzt3QkFDRjtvQkFFQSxLQUFLQyw2QkFBa0I7d0JBQUU7NEJBQ3ZCLElBQU1DLGVBQWVYLGlCQUNmWSxtQkFBbUJDLGVBQWVGLGNBQWNWLGFBQWFDLGNBQzdEWSx1QkFBdUJGLGtCQUFtQixHQUFHOzRCQUVuRFQsMEJBQTBCVyxzQkFBc0IsR0FBRzs0QkFFbkQ7d0JBQ0Y7b0JBRUE7d0JBQVM7NEJBQ1BYLDBCQUEwQix1QkE1QjVCTCwwQ0E0QmtDQyx5QkFBTixJQUFLLGFBQXVCQyxpQkFBaUJDLGFBQWFDOzRCQUVwRjt3QkFDRjtnQkFDRjtnQkFFQSxPQUFPQztZQUNUOzs7V0FuQ0lMO0VBQXNDaUIsYUFBWTtBQXNDeEQsSUFBTUMsZ0NBQWdDLElBQUlsQjtJQUUxQyxXQUFla0I7QUFFUixTQUFTdEIscUJBQXFCYSxRQUFRLEVBQUVOLFdBQVcsRUFBRUMsV0FBVztJQUNyRSxJQUFJTTtJQUVKLElBQU1TLGFBQWFoQixZQUFZaUIsWUFBWSxDQUFDWDtJQUU1Q04sWUFBWWtCLEtBQUssQ0FBQyxBQUFDLGtCQUE0QixPQUFYRixZQUFXLHlCQUF1QlY7SUFFdEUsSUFBTWEsUUFBUSxFQUFFLEVBQ1ZDLFVBQVVwQixhQUNWcUIsZUFBZUMsSUFBQUEsYUFBVSxFQUFDaEIsVUFBVWEsT0FBT0MsU0FBU25CO0lBRTFETSx5QkFBeUJjLGNBQWUsR0FBRztJQUUzQyxJQUFJZCx3QkFBd0I7UUFDMUJQLFlBQVl1QixLQUFLLENBQUMsQUFBQyxvQkFBOEIsT0FBWFAsWUFBVyx1QkFBcUJWO0lBQ3hFO0lBRUEsT0FBT0M7QUFDVDtBQUVBLFNBQVNLLGVBQWVGLFlBQVksRUFBRVYsV0FBVyxFQUFFQyxXQUFXO0lBQzVELElBQUlVO0lBRUosSUFBTWEsaUJBQWlCeEIsWUFBWWlCLFlBQVksQ0FBQ1A7SUFFaERWLFlBQVlrQixLQUFLLENBQUMsQUFBQyxrQkFBZ0MsT0FBZk0sZ0JBQWUsa0JBQWdCZDtJQUVuRSxJQUFNZSxXQUFXL0IsY0FBY2dCLGVBQ3pCSixXQUFXVixjQUFjYztJQUUvQixJQUFJZSxhQUFhLE1BQU07UUFDckIsSUFBTUMsUUFBUSxFQUFFLEVBQ1ZDLG9CQUFvQkMsSUFBQUEsa0JBQWUsRUFBQ0gsVUFBVUMsT0FBTzFCLGFBQWFDO1FBRXhFVSxtQkFBbUJnQixtQkFBbUIsR0FBRztJQUMzQztJQUVBLElBQUlyQixhQUFhLE1BQU07UUFDckIsSUFBTUMseUJBQXlCZCxxQkFBcUJhLFVBQVVOLGFBQWFDO1FBRTNFVSxtQkFBbUJKLHdCQUF5QixHQUFHO0lBQ2pEO0lBRUEsSUFBSUksa0JBQWtCO1FBQ3BCWCxZQUFZdUIsS0FBSyxDQUFDLEFBQUMsb0JBQWtDLE9BQWZDLGdCQUFlLGdCQUFjZDtJQUNyRTtJQUVBLE9BQU9DO0FBQ1QifQ==
|